WO2024256976A2 - Systèmes et procédés de commande d'un dispositif prothétique de membre inférieur - Google Patents
Systèmes et procédés de commande d'un dispositif prothétique de membre inférieur Download PDFInfo
- Publication number
- WO2024256976A2 WO2024256976A2 PCT/IB2024/055726 IB2024055726W WO2024256976A2 WO 2024256976 A2 WO2024256976 A2 WO 2024256976A2 IB 2024055726 W IB2024055726 W IB 2024055726W WO 2024256976 A2 WO2024256976 A2 WO 2024256976A2
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- lower limb
- prosthetic device
- limb prosthetic
- vector
- shank
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Classifications
-
- A—HUMAN NECESSITIES
- A61—MEDICAL OR VETERINARY SCIENCE; HYGIENE
- A61F—FILTERS IMPLANTABLE INTO BLOOD VESSELS; PROSTHESES; DEVICES PROVIDING PATENCY TO, OR PREVENTING COLLAPSING OF, TUBULAR STRUCTURES OF THE BODY, e.g. STENTS; ORTHOPAEDIC, NURSING OR CONTRACEPTIVE DEVICES; FOMENTATION; TREATMENT OR PROTECTION OF EYES OR EARS; BANDAGES, DRESSINGS OR ABSORBENT PADS; FIRST-AID KITS
- A61F2/00—Filters implantable into blood vessels; Prostheses, i.e. artificial substitutes or replacements for parts of the body; Appliances for connecting them with the body; Devices providing patency to, or preventing collapsing of, tubular structures of the body, e.g. stents
- A61F2/50—Prostheses not implantable in the body
- A61F2/60—Artificial legs or feet or parts thereof
-
- A—HUMAN NECESSITIES
- A61—MEDICAL OR VETERINARY SCIENCE; HYGIENE
- A61F—FILTERS IMPLANTABLE INTO BLOOD VESSELS; PROSTHESES; DEVICES PROVIDING PATENCY TO, OR PREVENTING COLLAPSING OF, TUBULAR STRUCTURES OF THE BODY, e.g. STENTS; ORTHOPAEDIC, NURSING OR CONTRACEPTIVE DEVICES; FOMENTATION; TREATMENT OR PROTECTION OF EYES OR EARS; BANDAGES, DRESSINGS OR ABSORBENT PADS; FIRST-AID KITS
- A61F2/00—Filters implantable into blood vessels; Prostheses, i.e. artificial substitutes or replacements for parts of the body; Appliances for connecting them with the body; Devices providing patency to, or preventing collapsing of, tubular structures of the body, e.g. stents
- A61F2/50—Prostheses not implantable in the body
- A61F2/68—Operating or control means
-
- A—HUMAN NECESSITIES
- A61—MEDICAL OR VETERINARY SCIENCE; HYGIENE
- A61F—FILTERS IMPLANTABLE INTO BLOOD VESSELS; PROSTHESES; DEVICES PROVIDING PATENCY TO, OR PREVENTING COLLAPSING OF, TUBULAR STRUCTURES OF THE BODY, e.g. STENTS; ORTHOPAEDIC, NURSING OR CONTRACEPTIVE DEVICES; FOMENTATION; TREATMENT OR PROTECTION OF EYES OR EARS; BANDAGES, DRESSINGS OR ABSORBENT PADS; FIRST-AID KITS
- A61F2/00—Filters implantable into blood vessels; Prostheses, i.e. artificial substitutes or replacements for parts of the body; Appliances for connecting them with the body; Devices providing patency to, or preventing collapsing of, tubular structures of the body, e.g. stents
- A61F2/50—Prostheses not implantable in the body
- A61F2/68—Operating or control means
- A61F2/70—Operating or control means electrical
-
- A—HUMAN NECESSITIES
- A61—MEDICAL OR VETERINARY SCIENCE; HYGIENE
- A61F—FILTERS IMPLANTABLE INTO BLOOD VESSELS; PROSTHESES; DEVICES PROVIDING PATENCY TO, OR PREVENTING COLLAPSING OF, TUBULAR STRUCTURES OF THE BODY, e.g. STENTS; ORTHOPAEDIC, NURSING OR CONTRACEPTIVE DEVICES; FOMENTATION; TREATMENT OR PROTECTION OF EYES OR EARS; BANDAGES, DRESSINGS OR ABSORBENT PADS; FIRST-AID KITS
- A61F2/00—Filters implantable into blood vessels; Prostheses, i.e. artificial substitutes or replacements for parts of the body; Appliances for connecting them with the body; Devices providing patency to, or preventing collapsing of, tubular structures of the body, e.g. stents
- A61F2/50—Prostheses not implantable in the body
- A61F2/60—Artificial legs or feet or parts thereof
- A61F2002/607—Lower legs
-
- A—HUMAN NECESSITIES
- A61—MEDICAL OR VETERINARY SCIENCE; HYGIENE
- A61F—FILTERS IMPLANTABLE INTO BLOOD VESSELS; PROSTHESES; DEVICES PROVIDING PATENCY TO, OR PREVENTING COLLAPSING OF, TUBULAR STRUCTURES OF THE BODY, e.g. STENTS; ORTHOPAEDIC, NURSING OR CONTRACEPTIVE DEVICES; FOMENTATION; TREATMENT OR PROTECTION OF EYES OR EARS; BANDAGES, DRESSINGS OR ABSORBENT PADS; FIRST-AID KITS
- A61F2/00—Filters implantable into blood vessels; Prostheses, i.e. artificial substitutes or replacements for parts of the body; Appliances for connecting them with the body; Devices providing patency to, or preventing collapsing of, tubular structures of the body, e.g. stents
- A61F2/50—Prostheses not implantable in the body
- A61F2/68—Operating or control means
- A61F2/70—Operating or control means electrical
- A61F2002/704—Operating or control means electrical computer-controlled, e.g. robotic control
-
- A—HUMAN NECESSITIES
- A61—MEDICAL OR VETERINARY SCIENCE; HYGIENE
- A61F—FILTERS IMPLANTABLE INTO BLOOD VESSELS; PROSTHESES; DEVICES PROVIDING PATENCY TO, OR PREVENTING COLLAPSING OF, TUBULAR STRUCTURES OF THE BODY, e.g. STENTS; ORTHOPAEDIC, NURSING OR CONTRACEPTIVE DEVICES; FOMENTATION; TREATMENT OR PROTECTION OF EYES OR EARS; BANDAGES, DRESSINGS OR ABSORBENT PADS; FIRST-AID KITS
- A61F2/00—Filters implantable into blood vessels; Prostheses, i.e. artificial substitutes or replacements for parts of the body; Appliances for connecting them with the body; Devices providing patency to, or preventing collapsing of, tubular structures of the body, e.g. stents
- A61F2/50—Prostheses not implantable in the body
- A61F2/76—Means for assembling, fitting or testing prostheses, e.g. for measuring or balancing, e.g. alignment means
- A61F2002/7615—Measuring means
- A61F2002/7625—Measuring means for measuring angular position
-
- A—HUMAN NECESSITIES
- A61—MEDICAL OR VETERINARY SCIENCE; HYGIENE
- A61F—FILTERS IMPLANTABLE INTO BLOOD VESSELS; PROSTHESES; DEVICES PROVIDING PATENCY TO, OR PREVENTING COLLAPSING OF, TUBULAR STRUCTURES OF THE BODY, e.g. STENTS; ORTHOPAEDIC, NURSING OR CONTRACEPTIVE DEVICES; FOMENTATION; TREATMENT OR PROTECTION OF EYES OR EARS; BANDAGES, DRESSINGS OR ABSORBENT PADS; FIRST-AID KITS
- A61F2/00—Filters implantable into blood vessels; Prostheses, i.e. artificial substitutes or replacements for parts of the body; Appliances for connecting them with the body; Devices providing patency to, or preventing collapsing of, tubular structures of the body, e.g. stents
- A61F2/50—Prostheses not implantable in the body
- A61F2/76—Means for assembling, fitting or testing prostheses, e.g. for measuring or balancing, e.g. alignment means
- A61F2002/7615—Measuring means
- A61F2002/7635—Measuring means for measuring force, pressure or mechanical tension
-
- A—HUMAN NECESSITIES
- A61—MEDICAL OR VETERINARY SCIENCE; HYGIENE
- A61F—FILTERS IMPLANTABLE INTO BLOOD VESSELS; PROSTHESES; DEVICES PROVIDING PATENCY TO, OR PREVENTING COLLAPSING OF, TUBULAR STRUCTURES OF THE BODY, e.g. STENTS; ORTHOPAEDIC, NURSING OR CONTRACEPTIVE DEVICES; FOMENTATION; TREATMENT OR PROTECTION OF EYES OR EARS; BANDAGES, DRESSINGS OR ABSORBENT PADS; FIRST-AID KITS
- A61F2/00—Filters implantable into blood vessels; Prostheses, i.e. artificial substitutes or replacements for parts of the body; Appliances for connecting them with the body; Devices providing patency to, or preventing collapsing of, tubular structures of the body, e.g. stents
- A61F2/50—Prostheses not implantable in the body
- A61F2/76—Means for assembling, fitting or testing prostheses, e.g. for measuring or balancing, e.g. alignment means
- A61F2002/7615—Measuring means
- A61F2002/764—Measuring means for measuring acceleration
Definitions
- the present application relates to estimating the orientation of a lower limb prosthetic, and more particularly, systems and methods for reducing or minimizing drift in estimations generated with data from inertial measurement units (IMUs).
- IMUs inertial measurement units
- Lower limb prosthetic devices are designed to restore the mobility and functionality of amputees who have lost their lower limbs due to injury, disease, or congenital defects.
- Active prosthetic devices use motors and sensors to adjust the device operation according to the user’s intention and environment.
- Inertial measurement units IMUs are commonly used sensors in prosthetic devices, as they can measure the motion of the device using gyroscopes and accelerometers.
- IMU -based methods suffer from drifts and noise due to measurement errors, which can affect the accuracy and reliability of the motion estimation.
- a control system may improve the functionality and performance of prosthetic devices.
- the control system may estimate an attitude, velocity, and/or a position of a lower limb prosthetic device based on data or information from an IMU.
- the systems and methods may use a Kalman fdter to fuse data from a gyroscope and an accelerometer.
- the control system may estimate an attitude, velocity and/or a position of the lower limb prosthetic device base on a gait state of the lower limb prosthetic device to reduce drift or errors in the estimated attitude, velocity and/or position of the lower limb prosthetic device.
- a method for tracking a shank angle of a lower limb prosthetic device may include receiving an angular velocity vector of a shank of the lower limb prosthetic device from a gyroscope, an acceleration vector of the shank from an accelerometer, and a force applied to the lower limb prosthetic device from a force sensor; determining a gait state of the lower limb prosthetic device based at least in part on the angular velocity vector, the acceleration vector, and the force; generating an external acceleration vector of the shank based on the gait state of the lower limb prosthetic device; and generating a shank angle vector of the shank using a Kalman fdter to fuse the angular velocity vector, the acceleration vector, and the external acceleration vector.
- a method for tracking a shank angle of a lower limb prosthetic device may include generating an acceleration sum vector of a stride, wherein determining the acceleration sum vector includes: receiving a gravity vector of a shank of a lower limb prosthetic device and an acceleration vector of the shank of the lower limb prosthetic device; determining a shank angle of the shank based at least in part on the gravity vector; rotating the acceleration vector to a stride reference frame using the shank angle to generate a rotated acceleration vector; adding the rotated acceleration vector to the acceleration sum vector; generating an average acceleration vector of the stride based on the acceleration sum vector; generating a vector angle of the average acceleration vector; and generating a compensated shank angle by subtracting the vector angle from a shank angle of the shank at an end of the stride.
- a method for tracking a shank angle of a lower limb prosthetic device may include receiving sensor data from an accelerometer, a gyroscope, and force sensors; determining a gait state of the lower limb prosthetic device based at least in part on the sensor data; generating an external acceleration vector of a shank of the lower limb prosthetic based on the gait state of the lower limb prosthetic device; and generating a shank angle vector of the shank based at least in part on the sensor data from the accelerometer and the gyroscope, and the external acceleration vector.
- the sensor data may include an acceleration vector of the shank, an angular velocity vector of the shank, and a force applied to the lower limb prosthetic device.
- a Kalman fdter may be used to generate the shank angle vector.
- the method may include controlling one or more functions of the lower limb prosthetic device based on the shank angle vector.
- the gait state may include a stationary state, a single supported state or an others state.
- the external acceleration vector may be zero, if the gait state is the single supported state, the external acceleration vector may be generated using an inverted pendulum model, and wherein if the gait state is the others state, the external acceleration vector is generated using a low pass filtered model.
- a method for tracking a shank angle of a lower limb prosthetic device may include receiving sensor data from an accelerometer and a gyroscope; determining a shank angle of the shank based at least in part on the sensor data from the gyroscope; generating a vector angle based on average acceleration values of a stride; and generating a compensated shank angle by subtracting the vector angle from the shank angle.
- the method may include generating an acceleration sum vector of the stride.
- the method may include generating average acceleration values of the stride based on the acceleration sum vector.
- average acceleration values of the stride may be a quotient of the acceleration sum vector of the stride and a number of times sensor data is received during the stride.
- the method may include controlling one or more functions of the lower limb prosthetic device based on the shank angle vector.
- a method for tracking a lower limb prosthetic device may include receiving sensor data from an accelerometer, a gyroscope, and force sensors; determining a shank angle of a shank of the lower limb prosthetic; generating a converted external acceleration vector based on an external acceleration of the shank; and generating a velocity of the lower limb prosthetic device based on the converted external acceleration vector and a correction factor.
- the method may include generating a position of the lower limb prosthetic device based on the velocity of the lower limb prosthetic.
- the method may include controlling one or more functions of the lower limb prosthetic device based on the position of the lower limb prosthetic.
- the method may include generating the correction factor based on a gait state of the lower limb prosthetic device.
- the gait state may include a stationary state, a single supported state or an others state.
- the correction factor may be determined based on a correction factor of a previous gait cycle, wherein if the gait state is the others state, the correction factor may be a correction factor determined in a previous single supported state.
- the method may include updating the correction factor when the lower limb prosthetic is in a single supported stance phase.
- the method may include controlling one or more functions of the lower limb prosthetic device based on the velocity of the lower limb prosthetic.
- a method for tracking a shank angle of a lower limb prosthetic device may include receiving sensor data from an accelerometer, a gyroscope, and a knee angle sensor; determining a gait state of the lower limb prosthetic device based at least in part on the sensor data; generating an external acceleration vector of a shank of the lower limb prosthetic based on the gait state of the lower limb prosthetic device; and generating a shank angle vector of the shank based at least in part on the sensor data from the accelerometer and the gyroscope, and the external acceleration vector.
- the sensor data may include an acceleration vector of the shank, an angular velocity vector of the shank, and a joint angle of a knee joint of the lower limb prosthetic device.
- a Kalman fdter may be used to generate the shank angle vector.
- the method may include controlling one or more functions of the lower limb prosthetic device based on the shank angle vector.
- the gait state may include a stationary state, a single supported state or an others state.
- the external acceleration vector may be zero, if the gait state is the single supported state, the external acceleration vector may be generated using an inverted pendulum model, and wherein if the gait state is the others state, the external acceleration vector is generated using a low pass filtered model.
- the gait state may be the single supported state when the acceleration vector is equal to a gravity vector and the joint angle of the knee joint indicates that the knee joint is fully extended.
- a method for tracking a shank angle of a lower limb prosthetic device may include receiving sensor data from an accelerometer, a gyroscope, and at least a third sensor, wherein the third sensor comprises a plurality of force sensors, or a knee angle sensor; determining a gait state of the lower limb prosthetic device based at least in part on the sensor data; generating an external acceleration vector of a shank of the lower limb prosthetic based on the gait state of the lower limb prosthetic device; and generating a shank angle vector of the shank based at least in part on the sensor data from the accelerometer and the gyroscope, and the external acceleration vector.
- the sensor data may include an acceleration vector and an angular velocity vector of the shank.
- the third sensor may include the plurality of force sensors and the sensor data may further include a force applied to the lower limb prosthetic device.
- the third sensor may include the knee angle sensor and the sensor data may further include a knee angle.
- a Kalman fdter may be used to generate the shank angle vector.
- the method may include controlling one or more functions of the lower limb prosthetic device based on the shank angle vector.
- the gait state may include a stationary state, a single supported state, or an others state.
- the external acceleration vector may be zero, if the gait state is the single supported state, the external acceleration vector may be generated using an inverted pendulum model, and wherein if the gait state is the others state, the external acceleration vector is generated using a low pass filtered model.
- the third sensor may include the knee angle sensor, and the single supported state may be assumed based on a knee angle indicative of a fully extended knee and accelerometer data being equal to gravity for a predetermined duration.
- a method for tracking a lower limb prosthetic device may include receiving sensor data from an accelerometer, a gyroscope, and at least a third sensor, wherein the third sensor comprises a plurality of force sensors or a knee angle sensor; determining a shank angle of a shank of the lower limb prosthetic; generating a converted external acceleration vector based on an external acceleration of the shank; and generating a velocity of the lower limb prosthetic device based on the converted external acceleration vector and a correction factor.
- the method may include generating a position of the lower limb prosthetic device based on the velocity of the lower limb prosthetic.
- the method may include controlling one or more functions of the lower limb prosthetic device based on the position of the lower limb prosthetic.
- the method may include generating the correction factor based on a gait state of the lower limb prosthetic device.
- the gait state may include a stationary state, a single supported state or an others state.
- the correction factor may be determined based on a correction factor of a previous gait cycle, wherein if the gait state is the others state, the correction factor may be a correction factor determined in a previous single supported state.
- the method may include updating the correction factor when the lower limb prosthetic is in a single supported stance phase.
- the method may include controlling one or more functions of the lower limb prosthetic device based on the velocity of the lower limb prosthetic.
- the third sensor may include the knee angle sensor, and the single supported state may be assumed based on a knee angle indicative of a fully extended knee and accelerometer data being equal to gravity for a predetermined duration.
- the third sensor may include the plurality of force sensors and the sensor data further comprises a force applied to the lower limb prosthetic device.
- the third sensor may include the knee angle sensor and the sensor data may further include a knee angle.
- Figure 1A illustrates schematically a control system of a lower limb prosthetic device.
- Figure IB illustrates a prosthetic knee component with the control system.
- Figure 1C illustrates example components of an above knee lower limb prosthetic device.
- Figure 2A illustrates a schematic of a gait cycle.
- Figure 2B illustrates a schematic of forces measured by force sensors of the control system of Figure 1A throughout a gait cycle.
- Figure 2C illustrates a schematic of a lower limb prosthetic device in a single support state.
- Figure 3A is a flowchart illustrating an example process for determining a shank angle of a lower limb prosthetic device.
- Figures 3B and 3C are example block diagrams illustrating control systems for determining a shank angle of a lower limb prosthetic device.
- Figure 4A is a flowchart illustrating an example process for determining a velocity and/or position of the lower limb prosthetic device
- Figure 4B is an example block diagram illustrating a control system for determining a velocity and a position of a lower limb prosthetic device.
- Figure 5A is a block diagram illustrating a control system for determining reducing or minimizing drift in a shank angle estimation of a lower limb prosthetic device.
- Figure 5B is a flowchart illustrating a process for generating a compensated shank angle of a lower limb prosthetic device.
- Figure 6 is a flowchart illustrating a process for controlling one or more functions of a lower limb prosthetic device.
- Figures 7A and 7B illustrate schematically control systems of a lower limb prosthetic device.
- Figure 8 illustrates another prosthetic knee component with a knee angle sensor.
- Active prosthetic devices can improve the quality of life of amputees.
- Active prostheses include a control system that can control the prosthesis to approximate motion of a missing limb.
- lower limb prosthetics can use inertial measurement units (IMU) or some form of inertial sensing, such as gyroscopes and accelerometers, to collect information about the gait and the environment in which a user is moving.
- IMU inertial measurement units
- the IMU can include at least an accelerometer and a gyroscope for measuring angular rates and accelerations, which can be used for attitude and position estimation.
- estimations or calculations made based on information or data from IMUs can suffer from drift caused by the accumulated stochastic errors due to noise in signals generated by the IMU.
- the systems and methods described herein advantageously reduce or minimize the drift in estimations or calculation made based on information or data from the IMU on the lower limb prosthetic device.
- FIGs 1A and IB illustrate an example lower limb prosthetic device or prosthesis 10 with a control system 100.
- the lower limb prosthetic device 10 may include one or more actuation systems 20.
- the one or more actuation systems 20 may include one or more actuators and/or one or more dampeners.
- the one or more actuation system 20 may control or modify rotation the lower limb prosthetic device 10 throughout a gait cycle.
- the control system 100 may be positioned in a knee component 12 of the lower limb prosthetic device 10.
- the control system may be positioned in a different component of the lower limb prosthetic device 10.
- a lower limb prosthesis 10A for an above knee amputees can include a knee component 12, a pylon component 18 (i.e., a shin portion or shaft), and/or a prosthetic foot component 19.
- An adapter 17 at a proximal end of the knee component 12 can be coupled to a residual limb of the amputee.
- the control system 100 may include an inertial measurement unit (IMU) 102.
- the IMU 102 may include at least an accelerometer 102A and/or a gyroscope 102B.
- the accelerometer 102A may measure or determine an acceleration (i.e., linear acceleration) with reference to a body-fixed frame F s (i.e., sensor frame) (shown in Figure 2C).
- the body-fixed frame F s may include a shaft x-axis X s (i.e., an axis in a direction into and out of the page), the shaft y-axis Y s (i.e., an axis perpendicular to the length of the lower limb prosthetic device 10) and the shaft z-axis Z s (i.e., an axis along the length of the lower limb prosthetic device 10).
- the IMU 102 may include one (1) accelerometer 102A, two (2) accelerometers 102A, and/or three (3) accelerometers 102A. In some aspects, the accelerometer 102A may determine or measure the acceleration in one direction.
- each accelerometer 102A may determine or measure the acceleration in a different direction. For example, a first accelerometer 102A may determine or measure the acceleration in a direction of the shaft x-axis X s , a second accelerometer 102A may determine or measure the acceleration in a direction of the shaft y-axis Y s , and a third accelerometer 102A may determine or measure the acceleration in a direction of the shaft z-axis Z s .
- the accelerometer 102A may include a 3- axis accelerometer, and the accelerometer 102A may determine or measure the acceleration in the direction of the shaft x-axis X s , the direction of the shaft y-axis Y s , and the direction of the shaft z-axis Z s .
- the accelerometer 120A measures not only the gravity, but also the external acceleration, thus making it difficult to distinguish them from each other. Since the accelerometer readings are relative to the sensor’s reference frame, the distinction between the two becomes difficult as the gravity component changes with sensor orientation.
- IMU-based navigation methods can accumulate errors and rapidly calise significant drifts. This can be due to the IMU-based methods using integration to calculate velocity and position.
- the disclosure herein provides systems and methods for reducing such drifts.
- the gyroscope 102B may measure or determine an angular velocity with reference to the body-fixed frame F s .
- the IMU 102 may include one (1) gyroscope 102B, two (2) gyroscopes 102B, and/or three (3) gyroscopes 102B.
- the gyroscope 102B may determine or measure the angular velocity in one direction.
- each gyroscope 102B may determine or measure the angular velocity in a different direction.
- a first gyroscope 102B may determine or measure the angular velocity in the direction of the shaft x-axis X s
- a second gyroscope 102B may determine or measure the angular velocity in the direction of the shaft y-axis Y s
- a third gyroscope 102B may determine or measure the angular velocity in the direction of the shaft z-axis Z s .
- the gyroscope 102B may include a 3-axis gyroscope, and the gyroscope 102B may determine or measure the angular velocity in the direction of the x-axis X s , the direction of the shaft y-axis Y s , and the direction of the shaft z-axis Z s . Similar to the challenges described herein with reference to the accelerator measurements, when integrating the gyroscope signal, the measurement errors are also integrated, leading to unbounded orientation drift errors. The disclosure herein provides systems and methods for reducing such drifts.
- the control system 100 may include sensors 104 in addition to the IMU 102.
- the control system 100 may include one (1) sensor 104, two (2) sensors 104, three (3) sensors 104, four (4) sensors 104, five (5) sensors 104, and/or six (6) sensors.
- the sensors 104 may include a force sensor for measuring or determining a force F applied to the lower limb prosthetic device 10.
- the force F applied to the lower limb prosthetic device 10 may include a force applied along a longitudinal axis 16 of the lower limb prosthetic device 10.
- the force F may include a force applied to the lower limb prosthetic device 10 when the foot portion of the lower limb prosthetic device 10 contacts a walking surface.
- the sensors 104 may be positioned in the knee component 12, a pylon component, and/or a prosthetic foot component of the lower limb prosthetic device 10.
- a first sensor 104A may be positioned posterior to the longitudinal axis 16 and a second sensor 104B may be positioned anterior to the longitudinal axis 16, as shown in Figure IB.
- control system 100 may include a microcontroller 106.
- the IMU 102 may include the microcontroller 106 so the
- the -lo microcontroller 106 is integrated into (i.e., part of) the IMU 102.
- the microcontroller 106 may be coupled to or connected to the IMU 102 and/or the sensors 104.
- the microcontroller 106 may be coupled to or connected to the IMU 102 and/or the sensors 104 via a wired or wireless connections.
- the IMU 102 and/or the sensors 104 may transmit data or information to the microcontroller 106.
- the microcontroller 106 may receive the data or information from the IMU 102 and/or the sensors 104.
- the microcontroller 106 may transmit data or information from the IMU 102 and/or the sensors 104.
- the IMU 102 may transmit to the microcontroller 106 data or information representative of the acceleration determined or measured by the accelerometer 102 A and/or data or information representative of the angular velocity determined or measured by the gyroscope 102B.
- the sensors 104 may transmit data or information representative of the forces measured or determined by the sensors 104 to the microcontroller 106.
- the microcontroller 106 may calculate or determine information associated with the lower limb prosthetic device 10.
- the information associated with the lower limb prosthetic device 10 may include one or more of a shank angle of the lower limb prosthetic device 10, a velocity of the lower limb prosthetic device 10, a position of the lower limb prosthetic device 10, a type or terrain of the walking surface and/or any other information associated with the lower limb prosthetic device 10 based at least in part on the data or information received by the microcontroller 106 from the IMU 102 and/or the sensors 104.
- the microcontroller 106 may generate instructions based at least in part on the data or information received by the microcontroller 106 from the IMU 102 and/or the sensors 104, and/or the information associated with the lower limb lower limb prosthetic device 10.
- the microcontroller 106 may transmit the instructions to the one or more actuation systems 20 of the lower limb prosthetic device 10 to control the one or more actuation systems 20.
- the one or more actuation systems can affect movements of the lower limb prosthetic device 10 appropriately.
- the location of the actuation system 20, the IMU 102, the microcontroller 106, and/or the sensors 104 on the knee component 12 as illustrated in Figure IB are exemplary and not limiting.
- FIG. 2A illustrates an example gait cycle 200.
- the gait cycle 200 may be defined between when a first foot 202 of a user 201 is in a specific position and the next time the first foot 202 in the same position.
- the gait cycle 200 may be defined between when a heel end of the first foot 202 contacts a walking surface (that is, heel strike) at a first time and when the heel end of the first foot 202 contacts the walking surface a second time.
- the gait cycle 200 may include a stance phase 204 and a swing phase 206.
- the stance phase 204 may include a portion of the gait cycle 200 when at least a portion of the first foot 202 contacts the walking surface.
- the swing phase 206 may include a portion of the gait cycle 200 when the first foot 202 does not contact the walking surface.
- the stance phase 204 may include a double support state 210 and a single support state 212.
- the double support state 210 may include a portion of the stance phase 204 when the first foot 202 and a second foot 203 both contact the walking surface.
- the single support state 212 may include a portion of the stance phase 204 when the first foot 202 contacts the walking surface and the second foot 203 does not contact the walking surface.
- Figure 2B illustrates forces F detected or measured by the sensors 104 throughout a gait cycle 200.
- the forces F may be larger or increase when the first foot 202 of the user 201 is in contact with the walking surface between a loading response and a pre-swing (i.e., the single support state 212).
- the control system 100 and/or the microcontroller 106 may use an increase in the forces F to determine when the user 201 is in a single support state 212.
- FIG. 2C illustrates schematically a lower limb prosthetic device (for example, the lower limb prosthetic device 10 as shown in Figures 1A-1C) in the single support state 212.
- the lower limb prosthetic device may be represented or modeled as an inverse pendulum when the lower limb prosthetic device is in the single support state 212, as described further below.
- rotation of a shaft 18 of the lower limb prosthetic device may be represented or modeled as an inverse pendulum where the IMU 102 is positioned a distance 220 from an ankle j oint 22 of the lower limb prosthetic device .
- the acceleration (a) of the lower limb prosthetic device may be the product of the distance 220 (L) and the derivative of the angular velocity (co) over time (t).
- FIG. 3A illustrates an example method 350 for determining (e.g., tracking) a shank angle of the lower limb prosthetic device.
- the method 350 may reduce, minimize, or eliminate drift in the shank angle determined using measurements from an IMU.
- the control system may determine the gait state of the user.
- the control system may determine the gait state of the lower limb prosthetic based at least in part of measurements from the IMU and/or the force sensors.
- the control system can calculate an external acceleration vector based on the gait state of the user.
- the control system may calculate the shank angle of the lower limb prosthetic.
- the control system may calculate the shank angle using the angular velocity and acceleration data from the IMU and the external acceleration vector.
- the control system may calculate the shank angle using a Kalman fdter.
- the control system may use the angular velocity of the lower limb prosthetic as an input for a prediction step.
- the system may use the external acceleration vector and the acceleration of the lower limb prosthetic as inputs for a correction step of the Kalman fdter.
- the control system may then return to step 352 to repeat method 350.
- Figures 3B and 3C are block diagrams illustrating how the control system disclosed herein can determine the shank angle (see shank angle 250 in Figure 2C) of the lower limb prosthetic device disclosed herein.
- the shank angle is an angle between the shank and a ground frame z-axis Z G (i.e., a vertical axis) .
- the vertical axis may be perpendicular to a ground that the prosthetic foot makes contact with.
- Figure 3C is a more detailed block diagram of Figure 3B illustrating certain non-limiting examples of an attitude estimation block of the control system.
- the blocks in the system diagrams in the present disclosure may include software and/or hardware processing units.
- control system may reduce, minimize or eliminate drift in the shank angle determination using measurements from an IMU 302, which may be the IMU 102 shown in Figures 1A-1B.
- a Kalman filter may be used by a microcontroller 300 for sensor fusion.
- the IMU 302 may collect data or information, which can be fed to various software and/or hardware blocks of the microcontroller 300 (which may be the microcontroller 106 of Figures 1A-1B).
- the IMU 302 may measure or determine the angular velocity and the acceleration of the lower limb prosthetic device.
- the angular velocities and accelerations data from the IMU 302 can be fed into an attitude estimation block 308 of the microcontroller 300.
- force sensors 303 (which may be the sensors 104 of Figures 1A and IB) may measure or determine the force applied to the lower limb prosthetic device.
- the force measurements can be fed into a gait state determination block 305 of the microcontroller 300 as shown in Figure 3B, or a gait partition block 304 of the microcontroller 300 as shown in Figure 3C. Signals from the IMU 302 can also be fed into the gait state determination block 305 or the gait partition block 304.
- the gait state determination block 305 can determine the gait state of the user (for example, using the methods disclosed herein based at least in part on the force sensor measurements or otherwise) and feed the gait state information to the attitude estimation block 308.
- the attitude estimation block 308 can determine the shank angles.
- the attitude estimation block 308 can determine an external acceleration component based on the gait state information, which can improve the accuracy in the shank angle determination.
- the microcontroller 300 can fuse the data from the IMU 302 with the external acceleration component (e.g., by using a Kalman fdter or otherwise) to estimate the shank angles.
- the shank angles may be estimated in pitch and roll.
- the control system disclosed herein can control the actuation systems of the lower limb prosthetic device based on the shank angles.
- the attitude estimation block 308 of the microcontroller 300 can perform an integration 309a of the angular velocities data received from the IMU 302.
- the output of the integration 309a and the acceleration data from the IMU 302 can be fed into a correction block 309b.
- the microcontroller 300 can further determine an external acceleration component (described in more details below), which can also be fed into the correction block 309b.
- the correction block 309b can calculate and output shank angles 310 based at least in part on the inputs disclosed herein.
- the external acceleration component can be determined at least in part based on the gait state of the lower limb prosthetic device.
- the gait partition block 304 of the microcontroller 300 may determine a gait state of the lower limb prosthetic device based on the sensor data from the IMU 302 and the force cells. Alternatively, the microcontroller 300 can determine the gait state using the shank angles.
- the gait partition block 304 may output a stationary state 306a if the lower limb prosthetic device is stationary.
- the gait partition block 304 may output a single supported stance state 306b if the lower limb prosthetic device is in the single support state of a gait cycle.
- the gait partition block 304 may output an “others” state 306c if the lower limb prosthetic device is neither stationary nor in the single support state.
- the lower limb prosthetic device may be stationary if one or more stationary determination conditions are met.
- the attitude estimation block 308 of the microcontroller 300 can estimate an external acceleration (“Ae”) component (e.g., an Ae vector or otherwise) using different assumptions and/or models based on the output 306a, 306b, 306c of the gait partition block 304.
- Ae external acceleration
- the microcontroller 300 can assume there is zero external acceleration 307a.
- the microcontroller 300 can calculate an external acceleration component using an inverted pendulum model 307b disclosed herein.
- an “others” state output 306c the microcontroller 300 can calculate an external acceleration component using a low pass filtered model 307c disclosed herein.
- the one or more stationary determination conditions may include whether a norm value of the acceleration of the lower limb prosthetic device is within an acceleration threshold of gravitational acceleration (i.e., about 9.8 m/s 2 ).
- the norm value of the acceleration may include a magnitude of a vector representation of the acceleration.
- the acceleration threshold may include about .01 m/s 2 , about .02 m/s 2 , about .03 m/s 2 , about .04 m/s 2 , about .05 m/s 2 , about .06 m/s 2 , about .07 m/s 2 , about .08 m/s 2 , about .09 m/s 2 , about .10 m/s 2 , about .11 m/s 2 , about .12 m/s 2 , about .13 m/s 2 , about .14 m/s 2 , about .15 m/s 2 , about .20 m/s 2 , and/or any value between the aforementioned values.
- the one or more stationary determination conditions may include whether the norm value of the acceleration of the lower limb prosthetic device is within the acceleration threshold of gravitational acceleration for a predefined time threshold.
- the time threshold may include about 10 milliseconds (ms), about 20 ms, about 30 ms, about 40 ms, about 50 ms, about 60 ms, about 70 ms, about 80 ms, about 90 ms, about 100 ms, about 110 ms, about 120 ms, about 130 ms, about 140 ms, about 150 ms, about 160 ms, about 170 ms, about 180 ms, about 190 ms, about 200 ms, and/or any value between the aforementioned values.
- the one or more stationary determination conditions may include whether the norm value of the acceleration of the lower limb prosthetic device is within the acceleration threshold of gravitational acceleration for a predefined number of measurements.
- the number of measurements may include 1 measurement, 2 measurements, 3 measurements, 4 measurements, 5 measurements, 6 measurements, 7 measurements, 8 measurements, 9 measurements, 10 measurements, 11 measurements, 12 measurements, 13 measurements, 14 measurements, 15 measurements, 16 measurements, 17 measurements, 18 measurements, 19 measurements, and/or 20 measurements.
- the one or more stationary determination conditions may include whether a change in the angular velocity of the lower limb prosthetic device in the direction of one or more axes of the body-fixed frame F s is less than an angular velocity threshold. In some aspects, the one or more stationary determination conditions may include whether a change in the angular velocity of the lower limb prosthetic device in the direction of every axis of the body-fixed frame F s is less than the angular velocity threshold.
- the angular velocity threshold may include about 0.01 rad/s, about 0.02 rad/s, about 0.03 rad/s, about 0.04 rad/s, about 0.05 rad/s, about 0.06 rad/s, about 0.07 rad/s, about 0.08 rad/s, about 0.09 rad/s, about 0. 10 rad/s, and/or any value between the aforementioned values.
- the one or more stationary determination conditions may include whether the angular velocity of the lower limb prosthetic device is less than the angular velocity threshold for a predefined time threshold. In some aspects, the one or more stationary determination conditions may include whether the angular velocity of the lower limb prosthetic device is less than the angular velocity threshold for a predefined number of measurements.
- the lower limb prosthetic device may be in the single supported stance state when the lower limb prosthetic device is not stationary (i.e., the one or more stationary determination conditions are not met). In some aspects, the lower limb prosthetic device may be in the single supported stance state when the lower limb prosthetic device is not stationary and one or more single support conditions are met.
- the one or more single supported stance state conditions may include whether a sum of the forces applied to each sensor 303 is larger than a single support force threshold.
- the single support force threshold may include a force of about 10 Newtons (N), 50 N, about 100 N, about 150 N, about 200 N, about 250 N, about 300 N, about 350 N, about 400 N, about 450 N, about 500 N, about 550 N, about 600 N, about 650 N, about 700 N, about 750 N, about 800 N, about 850 N, about 900 N, about 950 N, about 1000 N, about 1050 N, about 1100 N, about 1150 N, about 1200 N, about 1250 N, about 1300 N, about 1350 N, about 1400 N, about 1450 N, about 1500 N, and/or any value between the aforementioned values.
- the one or more single supported stance state conditions may include whether a difference between the norm value of the acceleration of the lower limb prosthetic device and gravitational acceleration is less than a first single support acceleration threshold.
- the first single support acceleration threshold may include an acceleration of about 0.5 m/s 2 , about 1 m/s 2 , about 1.5 m/s 2 , about 2 m/s 2 , about 2.5 m/s 2 , about 3 m/s 2 , about 3.5 m/s 2 , about 4 m/s 2 , about 4.5 m/s 2 , about 5 m/s 2 , about 5.5 m/s 2 , about 6 m/s 2 , about 6.5 m/s 2 , about 7 m/s 2 , about 7.5 m/s 2 , about 8 m/s 2 , about 8.5 m/s 2 , about 9 m/s 2 , about 9.5 m/s 2 , and/or any value
- the one or more single supported stance state conditions may include using data from a knee angle sensor 800 and the accelerometer 102A, as shown in Figure 8.
- the locations of the knee angle sensor 800 and/or the accelerometer 102A as shown in Figure 8 are for illustrative purposes and not limiting.
- the knee angle sensor 800 and/or the accelerometer 102A can be placed at any suitable location on the lower limb prosthetic device 10.
- Data from the knee angle sensor 800 and the accelerometer 102A can be used to convert to an inverted pendulum model (described in more details elsewhere in the present disclosure with reference to Figure 2C).
- the one or more single supported stance state conditions can be determined partially based on whether a knee joint of the lower limb prosthetic is fully extended.
- the knee joint of the lower limb prosthetic may include the knee angle sensor 800.
- the knee angle sensor 800 may include a rotational hall sensor.
- the knee angle sensor 800 may measure a joint angle of the knee joint.
- the joint angle may include an angle when the knee joint is bent.
- the knee joint of the lower limb prosthetic may be fully extended when the joint angle of the knee joint is about 0 degrees.
- the knee joint of the lower limb prosthetic may be fully extended when the joint angle of the knee joint is less than a fully extended threshold angle.
- the fully extended threshold angle may include an angle of about 0.5 degrees, about 1 degree, about 1.5 degrees, about 2 degrees, about 2.5 degrees, about 3 degrees, about 3.5 degrees, about 4 degrees, about 4.5 degrees, about 5 degrees, about 6 degrees, about 7 degrees, about 8 degrees, about 9 degrees, about 10 degrees, and/or any value between the aforementioned values.
- the knee joint angle measured by the knee angle sensor 800 indicates that the knee is fully extended, the single supported state can be assumed when the accelerometer data is equal to gravity for a predetermined duration.
- the predetermined duration may include about 5 milliseconds (ms), about 10 ms, about 20 ms, about 30 ms, about 40 ms, about 50 ms, about 60 ms, about 70 ms, and/or any value between the aforementioned values.
- the knee angle sensor 800 can replace the force sensors 104, 303 in the examples disclosed herein.
- the one or more single supported stance state conditions may include whether a number of previous external acceleration estimates are less than a second single support acceleration threshold.
- a previous external acceleration estimate may include an external acceleration estimate generated when the shank angle was estimated at a previous time. For example, if the microcontroller is estimating the shank angle for a third time and the number of previous external acceleration estimates is two (2), the previous external acceleration estimates may include the previous external acceleration estimate generated at the second time and at the first time.
- the number of previous external acceleration estimates may include one (1) previous external acceleration estimate, two (2) previous external acceleration estimates, three (3) previous external acceleration estimates, four (4) previous external acceleration estimates, five (5) previous external acceleration estimates, six (6) previous external acceleration estimates, seven (7) previous external acceleration estimates, eight (8) previous external acceleration estimates, nine (9) previous external acceleration estimates, ten (10) previous external acceleration estimates, twenty (20) previous external acceleration estimates, thirty (30) previous external acceleration estimates, forty (40) previous external acceleration estimates, fifty (50) previous external acceleration estimates, or more, or any value between the aforementioned values.
- the second single support acceleration threshold may include an acceleration of about 0.5 m/s 2 , about 1 m/s 2 , about 1.5 m/s 2 , about 2 m/s 2 , about 2.5 m/s 2 , about 3 m/s 2 , about 3.5 m/s 2 , about 4 m/s 2 , about 4.5 m/s 2 , about 5 m/s 2 , about 5.5 m/s 2 , about 6 m/s 2 , about 6.5 m/s 2 , about 7 m/s 2 , about 7.5 m/s 2 , about 8 m/s 2 , about 8.5 m/s 2 , about 9 m/s 2 , about 9.5 m/s 2 , and/or any value between the aforementioned values.
- the lower limb prosthetic device may be in a portion of the gait cycle 200 other than the single support state when the lower limb prosthetic device is neither stationary nor in the single support state.
- the attitude estimation block 308 of the microcontroller 300 may generate or calculate an external acceleration vector based at least in part on the gait state of the lower limb prosthetic device.
- the external acceleration vector may be about zero (0) m/s s in the direction of the shaft x-axis X s and the direction of the shaft y-axis Y s , and gravitational acceleration in the direction of the shaft z-axis Z s when the microcontroller 300 determines that the lower limb prosthetic device is stationary.
- the attitude estimation block 308 may calculate an external acceleration vector using Equation 1 disclosed herein with reference to Figure 2C (that is the inverted pendulum model), when the microcontroller 300 determines that the lower limb prosthetic device is in the single supported stance state.
- the stationary state and single supported stance phase can be combined as one condition in which the inverted pendulum model is used.
- the atitude estimation block 308 may calculate an external acceleration vector using a low pass filter model when the microcontroller 300 determine that the lower limb prosthetic device is neither stationary nor in the single supported stance state.
- the low pass filter model may include applying Equation 2 below: at ⁇ c a a t-l
- the external acceleration vector (at) may be a product of a constant (c a ) and a filtered acceleration vector determined at a previous time(at-i).
- the constant (c a ) may include a dimensionless constant that may determine a cutoff frequency of the low pass filter.
- the constant (c a ) may include a value between about 0.0 and 1.0.
- the constant (c a ) may include a value of about 0.1, about 0.2, about 0.3, about 0.4, about 0.5, about 0.6, about 0.7, about 0.8, about 0.9, about 0.99, and/or any value between the aforementioned values.
- the atitude estimation block 308 of the microcontroller 300 may determine or calculate the shank angle using the angular velocities and accelerations data from the IMU 302 and the external acceleration vector will now be described.
- the atitude estimation block 308 can determine a last row of a Direction Cosine Matrix (DCM) between the body-fixed frame F s of the lower limb prosthetic device 10 and a ground frame F G (i.e., stride reference frame) (show in Figure 2C).
- the DCM is one way to represent the atitude of a rigid body in a three dimensional space. Any vector V in the ground frame F G (see Figure 2C) generates three angles with the body-fixed frame F s .
- the cosines of the angles between the vector and the base coordinate frame are represented by direction cosines.
- the last row of the DCM may include elements that are dependent on a pitch angle and roll angle. Therefore, the atitude estimation may be determined or calculate based on the last row of the DCM.
- the microcontroller 300 may use a Kalman filter to calculate the last row of the DCM.
- the microcontroller 300 may use the angular velocity of lower limb prosthetic device determined or measured by the IMU 302 as an input for a prediction step of the Kalman filter.
- the microcontroller 300 may use the external acceleration vector and the acceleration as inputs for a correction step of the Kalman Filter.
- the microcontroller 300 may use the angular velocity of lower limb prosthetic device as an input to determine the prediction of the last row of the DCM.
- the microcontroller 300 may integrate the angular velocity of the lower limb prosthetic device to determine the prediction of the last row of the DCM.
- the microcontroller 300 may use the external acceleration vector and the acceleration as inputs to correct the prediction of the last row of the DCM and generate a filtered last row of the DCM.
- the microcontroller 300 may use the filtered last row of the DCM to determine or calculate the shank angle 310. In some aspects, the microcontroller 300 may set the z-axis (yaw angle) shank angle of the lower limb prosthetic device to about zero (0) degrees. In some aspects, the microcontroller 300 may use Euler Angles to determine the x-axis shank angle (i.e., pitch angle) of the lower limb prosthetic device and/or the y-axis (i.e., roll angle) shank angle of the lower limb prosthetic 10.
- the ground frame x-axis X G shank angle (y) may be an inverse tangent of a quotient of a second element in the last row of the DCM ( B Z2) and a third element in the last row of the DCM ( B Z3).
- the ground frame y-axis Y G (i.e., roll angle) shank angle of the lower limb prosthetic device may be calculated using Equation 4 below:
- the ground frame y-axis Y G shank angle ( ) may be an inverse tangent of a quotient of a negation of a first element in the last row of the DCM ( B Zi) and a square root of a sum of a square of the second element in the last row of the DCM ( B Z2) and a square of the third element in the last row of the DCM ( B Z3).
- the microcontroller 300 may determine or calculate a filtered acceleration vector 312.
- the filtered acceleration vector may be calculated using Equation 5 below:
- the filtered acceleration vector ( B a) 312 may be a vector representation of the acceleration determined or measured by the IMU 302 (y a ) minus a product of a gravitational acceleration vector (g) and the last row of the DCM ( B Z).
- the control system of the lower limb prosthetic device disclosed herein may periodically repeat the shank angle determinations as shown in Figures 3A and 3B. The control system may repeat the shank angle determination each time the control system collects data or information from the sensors (e.g., the IMU and/or force sensors, etc.). In some aspects, the control system may periodically collect data or information at a sample rate.
- the sample rate may include a frequency of about 1 Hz, about 5 Hz, about 10 Hz, about 20 Hz, 30 Hz, about 40 Hz, about 50 Hz, about 60 Hz, about 70 Hz, about 80 Hz, about 90 Hz, about 100 Hz, about 110 Hz, about 120 Hz, about 130 Hz, about 140 Hz, about 150 Hz, about 160 Hz, about 170 Hz, about 180 Hz, about 190 Hz, about 200 Hz, about 210 Hz, about 220 Hz, about 230 Hz, about 240 Hz, about 250 Hz, about 260 Hz, about 270 Hz, about 280 Hz, about 290 Hz, about 300 Hz, about 350 Hz, about 400 Hz, about 450 Hz, about 500 Hz, about 550 Hz, about 600 Hz, about 650 Hz, about 700 Hz, about 750 Hz, about 800 Hz, about 850 Hz, about 900 Hz, about 950 Hz, about
- the shank angles determined based on the block diagrams in Figures 3 A and 3B are in pitch and roll. More details of the velocity and/or position determination by the control system after the shank angles in pitch and roll and the external acceleration of the lower limb prosthetic device are obtained will be described below with reference to Figures 4A and 4B.
- the shank angles in sagittal plane (pitch) and frontal plane (roll), and external accelerations of the lower limb prosthetic device may also collectively be referred to as the attitude of the lower limb device.
- the velocity and/or position determination disclosed herein can be based in part on the attitude determination and/or the gait information.
- FIG. 4A illustrates an example method 400 for determining a velocity and/or position of the lower limb prosthetic device.
- the method 400 may reduce, minimize, or eliminate drift in the velocity and/or position determined using measurements from an IMU 102.
- the control system can calculate the shank angles in pitch and roll (for example, by following the block diagrams in Figures 3A or 3B, or otherwise).
- the control system can set the yaw angle to zero and calculate the DCM using the shank angles in pitch, yaw, and roll.
- the yaw angle can be set to zero because the heading direction (i.e., the yaw angle) ’s orientation does not hold significance in the velocity and/or position determination process.
- the control system can convert the external acceleration vector (for example, by following the block diagrams in Figures 3A or 3B, or otherwise) from a sensor frame to a ground frame.
- the control system can calculate the velocities of the lower limb prosthetic device based on the converted external acceleration vector and a velocity correction factor. The determination of the velocity correction factor will be described in greater detail below with reference to Figure 4B.
- the control system can calculate the velocities by integrating the converted external acceleration vector with the velocity correction factor.
- the velocity can be determined through the integration of the acceleration data from the IMU. However, since this process integrates both actual accelerations and errors, it leads to the generation of drifts that progressively escalate without subsequent correction.
- the control system can calculate the velocities of the lower limb prosthetic device in a single supported stance phase, which can be used to update the velocity correction factor.
- the control system can adjust and correct the velocity that includes the drift in the next gait cycle using the updated correction factor.
- the control system can also determine the position of the lower limb prosthetic device by integrating the corrected velocity. The control system can then return to step 420 to repeat the method 400.
- Figure 4B illustrates an example block diagram illustrating how the control system can determine a velocity and/or position of the lower limb prosthetic device.
- the microcontroller 300 of the lower limb prosthetic device may collect data or information from the IMU 302 and/or the force sensors 303.
- the force sensors 303 can be load cells.
- the microcontroller 300 may receive the angular velocities data of the lower limb prosthetic device, the acceleration data of the lower limb prosthetic device, and/or forces applied to the lower limb prosthetic device.
- the IMU 302 may measure or determine the angular velocity and the acceleration of the lower limb prosthetic device.
- the force sensors 303 may measure or determine the forces applied to the lower limb prosthetic device. Additionally, the microcontroller 300 can determine the shank angles in pitch and roll.
- the microcontroller 300 may determine the shank angle of the lower limb prosthetic device. In some aspects, the microcontroller 300 may determine the shank angle of the lower limb prosthetic device by following the block diagrams in Figure 3B or 3C, or otherwise. In some aspects, the microcontroller 300 may set the z-axis shank angle of the shank angle (the yaw angle) to zero (0) degrees. [0119] The microcontroller 300 may determine the DCM based at least in part on the shank angles in pitch, yaw, and roll 402.
- the DCM can convert the external acceleration vector (for example, as determined by following the block diagram in Figures 3B or 3C) from a sensor or body-fixed frame F s of the lower limb prosthetic device to a ground frame F G .
- the DCM may be calculate using Equation 6 below:
- the converter block 406 of the microcontroller 300 may output the acceleration of the lower limb prosthetic device in the ground frame F G .
- the ground frame acceleration may be a product of the DCM and the acceleration of the lower limb prosthetic device as measured by the IMU 302.
- the acceleration may be the filtered acceleration vector determined by removing the external acceleration vector as disclosed herein.
- the IMU 302 can output angular velocities data to a velocity correction block 408 of the microcontroller 300 for calculating a velocity correction factor Ci in a subblock 414.
- the microcontroller 300 may also use gait state information for calculating the velocity correction factor in the subblock 414.
- the microcontroller 300 may determine the gait state of the lower limb prosthetic device as disclosed herein, for example, using the gait partition block 304 as shown in Figure 3C to output a stationary status 306a, a single supported stance status 306b, or an “others” status 306c.
- the ground frame velocity estimate of the lower limb prosthetic device may be zero (0) m/s 2 .
- a body-fixed frame velocity vector may be calculated using Equation 7 below, where co denotes the angular velocity vector and co x , coy are two elements of co representing the angular velocities about X-axis and Y-axis, respectively: Equation 7
- the body-fixed frame velocity estimate ( B v s tance) may be a product of the distance L (see Figure 2C, 220) from the ankle joint of the lower limb prosthetic device to the IMU and the angular velocity vector.
- the body-fixed frame velocity vector ( B v s tance) may be converted to the ground frame velocity estimate by using Equation 8 below:
- the ground frame velocity vector ( G v s tance) may be a product of the DCM (R) and the body-fixed frame velocity vector ( B v s tance).
- the subblock 414 may determine or calculate the correction factor.
- the correction factor may be determined based at least in part on the gait state of the lower limb prosthetic.
- the correction factor may be determined based at least in part on the ground fame velocity vector.
- the correction factor may be calculated using Equation 9 below:
- the correction factor (ci) may be a sum of a correction factor calculated for a previous gait cycle (ci-i) and a product of a constant (k) and a quotient of a velocity difference (Avi) and a sample number (Ni).
- the constant (k) may include a value between about 0 and about 1.
- the constant (k) may include a value of about 0.1, about 0.2, about 0.3, about 0.4, about 0.5, about 0.6, about 0.7, about 0.8, about 0.9, about 0.95, about 0.99, and/or any value between the aforementioned values.
- the sample number (Ni) may include a number of times the microcontroller has determined shank angles in pitch and roll and/or the velocity and position when the lower limb prosthetic device is stationary and/or in a current single supported stance state.
- the velocity difference (Avi) may include a difference between a ground frame velocity vector of the lower limb prosthetic device determined or calculated a previous time by integrating 416 the acceleration data or filtered acceleration data (i.e. using Equation 10, as described below), and the ground frame velocity vector of the lower limb prosthetic device determined or calculated based on the gait state.
- the velocity difference (Avi) may include the velocity difference (Avi) at the start of the single supported stance state 212.
- the velocity difference (Avi) may be updated each time the microcontroller 300 determines the velocity of the lower limb prosthetic device when the lower limb prosthetic device is stationary and/or in single supported stance state.
- the correction factor may be an average every correction factor (ci) calculated using Equation 9 during when the lower limb prosthetic device is stationary and/or in the single supported stance state.
- the correction factor may include the correction factor calculated using Equation 7 at the end of a previous single supported stance state.
- the correction factor may be initially set to zero (0). Therefore, if there is no previous single supported stance state, the correction factor may be zero (0) m/s 2 until the microcontroller 300 calculates a correction factor using Equation 9.
- the microcontroller 300 may determine or calculate the velocity of the lower limb prosthetic device using integration 416.
- the integration 416 can be performed with the external acceleration and the correction factor.
- the velocity (v) of the lower limb prosthetic device may be an integral over time (dt) of the ground frame acceleration (a) minus the correction factor (ci) determined at subblock 414.
- the microcontroller 300 may use the velocity (v) of the lower limb prosthetic device to updated the velocity difference (Avi) at subblock 414 the next time the microcontroller 300 determines the velocity of the lower limb prosthetic device.
- the correction factor can be updated using Equation 9.
- the microcontroller 300 may determine or calculate a position of the lower limb prosthetic device. In some aspects, the microcontroller 300 may determine or calculate the position of the 10 based at least in part on the velocity of the lower limb prosthetic device determined or calculated by integration 416. In some aspects, the position of the lower limb prosthetic device may be an integral over time of the velocity of the lower limb prosthetic device.
- control system may periodically determine the velocity and/or position of the lower limb prosthetic device, for example, by repeating method 400 in Figure 4A or following the block diagram in Figure 4B.
- the control system may repeat data or information collection from the IMU 302 and/or the force sensors 303.
- the control system may periodically collect data or information from the IMU 302 and/or the force sensors 303 at a sample rate.
- the sample rate may include a frequency of about 1 Hz, about 5 Hz, about 10 Hz, about 20 Hz, 30 Hz, about 40 Hz, about 50 Hz, about 60 Hz, about 70 Hz, about 80 Hz, about 90 Hz, about 100 Hz, about 110 Hz, about 120 Hz, about 130 Hz, about 140 Hz, about 150 Hz, about 160 Hz, about 170 Hz, about 180 Hz, about 190 Hz, about 200 Hz, about 210 Hz, about 220 Hz, about 230 Hz, about 240 Hz, about 250 Hz, about 260 Hz, about 270 Hz, about 280 Hz, about 290 Hz, about 300 Hz, about 350 Hz, about 400 Hz, about 450 Hz, about 500 Hz, about 550 Hz, about 600 Hz, about 650 Hz, about 700 Hz, about 750 Hz, about 800 Hz, about 850 Hz, about 900 Hz, about 950 Hz, about
- FIG. 5A illustrates a control system for reducing or minimizing drift in a shank angle estimation of the lower limb prosthetic device disclosed herein.
- the control system can perform orientation estimations (with shank angle being one of the non-limiting examples), for example, by integrating the IMU measurements to get orientation angles.
- the orientation estimations tend to drift as the measured accelerations and angular velocities are noisy signals.
- the noise can be minimized by calibrating the sensor, but the calibration may not remove all the noises in the IMU signals, which are enlarged during integration.
- the drift in shank angle may be into both the positive and negative directions.
- the control system may implement a compensation algorithm, which may include calculating the average acceleration in the stride reference frame and the vector angle.
- control system may reduce, minimize or eliminate drift in the shank angle determined using measurement from an IMU.
- the control system may be the control system 100 illustrated in Figures 1A-1C, and/or the control systems illustrated in Figures 3 A, 3B or 4B. Accordingly, the control system of a lower limb prosthetic device can incorporate any of the drift reduction features disclosed herein.
- the microcontroller 500 of the control system may receive a sample of data or information from the IMU 502.
- the data or information from the IMU 502 can include acceleration data and a gravity vector.
- the acceleration data can be in the sagittal plane.
- the gravity vector may be a vector representation of the acceleration of gravity in the body-fixed frame F s .
- the acceleration data and the gravity vector can be fed into a shank angle calculation block 504 of the microcontroller 500.
- the shank angle calculation block 504 of the microcontroller 500 may determine or calculate the shank angle of the lower limb prosthetic device.
- the microcontroller 500 may determine or calculate the shank angle in a sagittal plane (i.e., the ground frame x-axis X G shank angle).
- the microcontroller 500 may determine or calculate the shank angle as described herein with reference to Figures 3A and 3B or otherwise.
- the microcontroller 500 may use the gravity vector and the acceleration data to determine or calculate the shank angle.
- the shank angle in a sagittal plane (y) may be the 2-argument arctangent of a value of the gravity vector in the direction of the shaft y-axis Y s (G y ) and a value of the gravity vector in the direction of the shaft z-axis Z s (G z ).
- the shank angle determined by the shank angle calculation block 504 and the acceleration data can be fed into a compensation block 506.
- the compensation block 506 may generate a compensated shank angle.
- the compensation block 506 may use method 550, shown in Figure 5B, to determine or calculate the compensated shank angle.
- the shank angle in the sagittal plane and an acceleration measured or determined by the IMU 502 may be used as inputs for the method 550.
- the compensated shank angle can be fed into a terrain or intent detection block 508 of the microcontroller to improve control of the lower limb prosthetic device.
- the microcontroller 500 may implement the compensation algorithm each time the microcontroller 500 collects data or information from the IMU 502. In some aspects, the microcontroller 500 may periodically collect data or information from the IMU 502 at a sample rate. In some aspects, the sample rate may include a frequency of about 1 Hz, about 5 Hz, about 10 Hz, about 20 Hz, 30 Hz, about 40 Hz, about 50 Hz, about 60 Hz, about 70 Hz, about 80 Hz, about 90 Hz, about 100 Hz, about 110 Hz, about 120 Hz, about 130 Hz, about 140 Hz, about 150 Hz, about 160 Hz, about 170 Hz, about 180 Hz, about 190 Hz, about 200 Hz, about 210 Hz, about 220 Hz, about
- FIG. 5B illustrates an example method 550 for generating a compensated shank angle.
- atimer e.g., the systick
- the timer can be started when a microcontroller receives power and/or is turned on.
- the time can be started at step 558 as described further below.
- the control system can sample the IMU measurements.
- the IMU measurements sampled can include the accelerometer data and the gyroscope data.
- all six channels of the IMU i.e., accelerometer axes x, y, z, and gyroscope axes x, y, z, also referred to as Ax, Ay, Az, Gx, Gy, Gz
- the microcontroller can calculate the shank angle (i.e., the uncompensated shank angle), for example, as described above with reference to 504 of Figure 5A.
- the microcontroller can calculate the uncompensated shank angle using data in the gravity axes that form the sagittal plane, for example, Gy and Gz.
- the shaft angle can be calculate using Equation 11.
- Steps 552-564 illustrate a compensation algorithm, which may be performed by the compensation block 506 of Figure 5A.
- the microcontroller may generate a rotated acceleration by the uncompensated shank angles determined at the start 551.
- the rotated acceleration may be the acceleration measured or determined by the IMU rotated from the body-fixed or sensor frame F s to the ground or stride reference frame F G .
- the accelerometer data in the y and z axes may be rotated to the stride reference frame.
- the microcontroller may generate the rotated acceleration using Equations 12 and 13 below:
- the rotated acceleration in the direction of the ground frame y-axis Y G may be a sum of the product of the acceleration in the direction of the shaft z-axis Z s (A z ) and the sine of the shank angle in a sagittal plane (y) and the product of the acceleration in the direction of the shaft y-axis Y s (A y ) and the cosine of the shank angle in a sagittal plane (y).
- the rotated acceleration in the direction of the ground frame z-axis Z G may be a sum of the product of the acceleration in the direction of the shaft z-axis Z s (A z ) and the cosine of the shank angle in a sagittal plane (y) and the product of the acceleration in the direction of the shaft y-axis Y s (A y ) and the sine of the shank angle in a sagittal plane (y).
- the microcontroller may generate a sum of the rotated acceleration signals.
- the sum may include a sum of each rotated acceleration in a particular axis generated each time the microcontroller performs step 552 of the method 550.
- the acceleration sum may be set to zero (0) m/s 2 .
- the microcontroller may increment a sample counter (dCount) by the number of samples used in step 554.
- the sample counter may be set to zero (0) at the start of a new stride.
- the sample counter may include a total number of samples used in calculating the sum. The microcontroller can use the updated number of samples to later calculate an average value.
- the microcontroller may determine whether an end of a stride is detected. In some aspects, the microcontroller may determine an end of a stride when the microcontroller determines that the lower limb prosthetic device is in a mid-stance position, a heel-strike position, and/or any other detectable gait event (such as shown in Figure 2A). In some aspects, the microcontroller may detect a gait event using sensor data from the IMU and/or the other sensors (such as force sensors) as disclosed herein.
- the microcontroller may return to the start 551 and repeat steps 552-556 until an end of a strike is detected.
- a timer e.g., a sy stick
- the microcontroller may return to the start 551 and repeat steps 552-556 each time when the timer has expired.
- the timer can expire every 1 ms to 25 ms, or 10 ms to 20ms, or 10 ms.
- the microcontroller may proceed to step 560.
- the microcontroller may generate average acceleration values.
- the microcontroller may determine or calculate the average acceleration by dividing the acceleration sum in each rotated axis (e.g., the y and z axes) by the sample counter.
- the microcontroller may generate a vector angle for the average accelerations for the stride that has just ended.
- the microcontroller may determine or calculate the vector angle for the average acceleration in the direction of the ground frame y-axis Y G (G y ) and with the average acceleration in the direction of the ground frame z-axis Z G (G z ).
- the vector angle may be converted from radians to degrees with aACC*7i/180.
- the microcontroller may generate the compensated or corrected shank angle.
- the microcontroller may subtract the vector angle aACC from the shank angle to generate the compensated shank angle.
- the counter and/or the sum may be reset to zero.
- the microcontroller may set the sample counter and/or the sum to zero (0).
- the microcontroller may then proceed to step 559 to return to start 551.
- the microcontroller may return to start 551 after a systick timer has expired. With each iteration of the method 550, the microcontroller can compute a new compensated shank angle as the user moves the lower limb prosthetic device through gait cycles.
- the microcontroller may calculate a moving average that spans more than one stride and then use the moving average at one or more gait events (e.g., heel strike, mid-stance, and/or the like) to calculate the vector angle.
- the microcontroller may perform a rolling compensated shank angle.
- the microcontroller may not set the sample counter and/or the acceleration sum to zero (0). The microcontroller may remove an oldest rotated acceleration from the acceleration sum each time the microcontroller performs step 554 and decrement the counter by the number of samples from that oldest rotated acceleration.
- shank angle compensation process is illustrated herein using two axes (the sagittal plane) of the gyroscope and the accelerometer as a non-limiting example, the same process can be performed using all three axes. It is to be appreciated one or more equations or steps of the methods described herein may be performed in one-axis, two-axes, and/or three-axis without departing from the scope of this disclosure. Additionally, any of the equations and the angles, velocities, accelerations, positions, and/or any other measurements or data described herein may include vector representations of the measurements or data in one-axis, two-axes, and/or three-axes without departing from the scope of this disclosure.
- FIG. 6 illustrates a method 600 for controlling one or more functions of a lower limb prosthetic device disclosed herein.
- the control system may generate an attitude measurement of the lower limb prosthetic device.
- the attitude measurement may include the shank angle determine or calculated using systems and methods disclosed herein.
- the attitude measurement may include the filtered acceleration vector determined or calculated using systems and methods disclosed herein.
- the attitude measurement may include the velocity or position of the lower limb prosthetic device determined or calculated using systems and methods disclosed herein.
- the attitude measurement may include the compensated shank angle determined or calculated using systems and methods disclosed herein.
- the control system may perform one or more functions based on the attitude measurement.
- the control system may generate instructions at least in part on the attitude measurement.
- the control system may transmit the instructions to the one or more actuation systems of the lower limb prosthetic device to control the one or more actuation systems.
- the control system may perform terrain detection, intent detection, and/or any other function, detection, or calculation based at least in part on the attitude measurement.
- FIGs 7A and 7B illustrate embodiments of the lower limb prosthetic device 10 with control system 700A and 700B.
- the IMU 102 of the control system 700A may include the microcontroller 706.
- the microcontroller 706 may be integrated in the IMU 102.
- the control system 700B may include a first microcontroller 706A and a second microcontroller 706B.
- the IMU 102 may include the second microcontroller 706B.
- the second microcontroller 706B may be integrated in the IMU 102.
- control system 700A, 700B and/or microcontrollers 706, 706A, and/or 706B may be used to perform the systems and/or methods 350, 400, 550, 600.
- each embodiment of this invention may comprise, additional to its essential features described herein, one or more features as described herein from each other embodiment of the invention disclosed herein.
- a general purpose processor can be a microprocessor, but in the alternative, the processor can be a controller, microcontroller, or state machine, combinations of the same, or the like.
- a processor can include electrical circuitry or digital logic circuitry configured to process computer-executable instructions.
- a processor can include an FPGA or other programmable device that performs logic operations without processing computer-executable instructions.
- a processor can also be implemented as a combination of computing devices, for example, a combination of a DSP and a microprocessor, a plurality of microprocessors, one or more microprocessors in conjunction with a DSP core, or any other such configuration.
- a computing environment can include any type of computer system, including, but not limited to, a computer system based on a microprocessor, a mainframe computer, a digital signal processor, a portable computing device, a device controller, or a computational engine within an appliance, to name a few.
- a software module can reside in RAM memory, flash memory, ROM memory, EPROM memory, EEPROM memory, registers, hard disk, a removable disk, a CD-ROM, or any other form of non-transitory computer-readable storage medium, media, or physical computer storage known in the art.
- An example storage medium can be coupled to the processor such that the processor can read information from, and write information to, the storage medium. In the alternative, the storage medium can be integral to the processor.
- the storage medium can be volatile or nonvolatile.
- conditional language such as “can,” “could,” “might,” or “may,” unless specifically stated otherwise, or otherwise understood within the context as used, is generally intended to convey that certain embodiments include, while other embodiments do not include, certain features, elements, and/or steps. Thus, such conditional language is not generally intended to imply that features, elements, and/or steps are in any way required for one or more embodiments or that one or more embodiments necessarily include logic for deciding, with or without user input or prompting, whether these features, elements, and/or steps are included or are to be performed in any particular embodiment.
- the terms “generally parallel” and “substantially parallel” refer to a value, amount, or characteristic that departs from exactly parallel by less than or equal to 15 degrees, 10 degrees, 5 degrees, 3 degrees, 1 degree, 0. 1 degree, or otherwise. Additionally, as used herein, “gradually” has its ordinary meaning (e.g., differs from a non-continuous, such as a step-like, change).
Landscapes
- Health & Medical Sciences (AREA)
- Transplantation (AREA)
- Heart & Thoracic Surgery (AREA)
- Oral & Maxillofacial Surgery (AREA)
- Engineering & Computer Science (AREA)
- Biomedical Technology (AREA)
- Cardiology (AREA)
- Vascular Medicine (AREA)
- Life Sciences & Earth Sciences (AREA)
- Animal Behavior & Ethology (AREA)
- General Health & Medical Sciences (AREA)
- Public Health (AREA)
- Veterinary Medicine (AREA)
- Orthopedic Medicine & Surgery (AREA)
- Prostheses (AREA)
Abstract
L'invention concerne des systèmes et des procédés pour estimer l'attitude, l'angle de tige, la vitesse et/ou la position d'un dispositif prothétique de membre inférieur sur la base de données ou de mesures provenant d'une IMU. Les systèmes et les procédés peuvent réduire ou minimiser la dérive. L'attitude, l'angle de tige, la vitesse et/ou la position estimés de la prothèse de membre inférieur peuvent être utilisés pour commander une ou plusieurs fonctions du dispositif prothétique de membre inférieur.
Applications Claiming Priority (4)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US202363507927P | 2023-06-13 | 2023-06-13 | |
| US63/507,927 | 2023-06-13 | ||
| US202363583046P | 2023-09-15 | 2023-09-15 | |
| US63/583,046 | 2023-09-15 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| WO2024256976A2 true WO2024256976A2 (fr) | 2024-12-19 |
| WO2024256976A3 WO2024256976A3 (fr) | 2025-01-23 |
Family
ID=91664645
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| PCT/IB2024/055726 Pending WO2024256976A2 (fr) | 2023-06-13 | 2024-06-12 | Systèmes et procédés de commande d'un dispositif prothétique de membre inférieur |
Country Status (1)
| Country | Link |
|---|---|
| WO (1) | WO2024256976A2 (fr) |
Family Cites Families (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US7896927B2 (en) * | 2004-02-12 | 2011-03-01 | össur hf. | Systems and methods for actuating a prosthetic ankle based on a relaxed position |
| US20100174384A1 (en) * | 2008-09-04 | 2010-07-08 | Iwalk, Inc. | Hybrid terrain-adaptive lower-extremity systems |
| US9622884B2 (en) * | 2012-02-17 | 2017-04-18 | Springactive, Inc. | Control systems and methods for gait devices |
| US20140343460A1 (en) * | 2013-05-15 | 2014-11-20 | Ut-Battelle, Llc | Mobile gait force and motion analysis system |
-
2024
- 2024-06-12 WO PCT/IB2024/055726 patent/WO2024256976A2/fr active Pending
Also Published As
| Publication number | Publication date |
|---|---|
| WO2024256976A3 (fr) | 2025-01-23 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US9078774B2 (en) | Systems and methods for processing limb motion | |
| Sabatini et al. | Assessment of walking features from foot inertial sensing | |
| CA3023844C (fr) | Compensation de derive a l'estime a l'aide de la demarche personnelle | |
| US20210369474A1 (en) | Method for controlling an artificial orthotic or prosthetic knee joint | |
| CN106821391B (zh) | 基于惯性传感器信息融合的人体步态采集分析系统及方法 | |
| CN108186021B (zh) | 一种基于多模态信息融合的步态零速检测方法及系统 | |
| Hao et al. | Smoother-based 3-D foot trajectory estimation using inertial sensors | |
| Muller et al. | Experimental evaluation of a novel inertial sensor based realtime gait phase detection algorithm | |
| CN114287890B (zh) | 基于mems传感器的帕金森患者的运动功能评估方法 | |
| JP2008542782A (ja) | 角速度センサの零点補正装置および補正方法 | |
| JP2015217053A (ja) | 運動測定装置ならびに運動測定方法 | |
| Yuan et al. | A fuzzy logic based terrain identification approach to prosthesis control using multi-sensor fusion | |
| JP2016043092A (ja) | 運動測定装置 | |
| JP7070701B2 (ja) | 歩容計測システム、歩容計測方法、およびプログラム | |
| WO2024256976A2 (fr) | Systèmes et procédés de commande d'un dispositif prothétique de membre inférieur | |
| US7292000B2 (en) | Angular velocity measuring device and leg-moving robot | |
| US20240023834A1 (en) | Footwear and method for foot velocity estimation | |
| Liu et al. | Development of wearable sensor combinations for human lower extremity motion analysis | |
| JP5691387B2 (ja) | 歩行計測装置、歩行計測方法およびプログラム | |
| Liu et al. | Measurement of human lower limb orientations and ground reaction forces using wearable sensor systems | |
| JP6887059B2 (ja) | 歩行位相推定装置及びこれを備えた歩行補助装置 | |
| Alonge et al. | Use of accelerometers and gyros for hip and knee angle estimation | |
| Thomas et al. | Inertial thigh angle sensing for a semi-active knee prosthesis | |
| LI et al. | A real-time gait phase detection method for prosthesis control | |
| Roetenberg et al. | 6 DOF Motion Analysis Using Inertial Sensors |