P
US7313463B2ExpiredUtilityPatentIndex 97

Biomimetic motion and balance controllers for use in prosthetics, orthotics and robotics

Assignee: MASSACHUSETTS INST TECHNOLOGYPriority: Mar 31, 2005Filed: Aug 4, 2006Granted: Dec 25, 2007
Est. expiryMar 31, 2025(expired)· nominal 20-yr term from priority
Inventors:HERR HUGH MHOFMANN ANDREAS GPOPOVIC MARKO B
A61F 2/70B62D 57/032
97
PatentIndex Score
207
Cited by
6
References
21
Claims

Abstract

Systems for controlling the motion of multiple articulated elements connected by one or more joints in an artificial appendage system. Four different embodiments includes a controller that reduces the dimension of joint state space by utilizing biomechanically inspired motion primitives; a quadratic proportional-derivative (PD) controller which employs a two-stage linearization method, applies constraints to variables for dynamic stability, and employs a corrective “sliding control” mechanism to account for errors in the linear model used; a non-prioritized balance control approach that employs enforced linear dynamics in which all control variables are truncated to linear terms in joint jerks; and a biomimetic motion and balance controller based on center of mass (CM) energetic and biomimetic zero moment conditions.

Claims

exact text as granted — not AI-modified
1. A method for controlling the motion of a mechanism in an artificial appendage or a humanoid robot, said mechanism consisting of multiple articulated elements connected at one or more joints, said method comprising, in combination, the steps of:
 providing a controller for processing current state input data indicating the current dynamic state of said mechanism and desired state input data indicating the desired dynamic state of said mechanism to produce output element acceleration data indicating the amount by which said elements should be accelerated so that said current dynamic state is altered to more nearly conform to said desired dynamic state, 
 employing a stored linear relationship between the element and joint accelerations of said mechanism to convert said output element acceleration data into computed joint acceleration data indicating the amount by which the movement of said elements about each of said joints should be accelerated, 
 employing a stored linear relationship between joint accelerations and joint torques to compute joint torques that achieve desired joint accelerations. 
 
   
   
     2. A method for controlling the motion of a mechanism in an artificial appendage or a humanoid robot as set forth in  claim 1  wherein said stored linear relationship relating joint accelerations and joint torques is a stored model of the inverse dynamics of said mechanism. 
   
   
     3. A method for controlling the motion of a mechanism in an artificial appendage or a humanoid robot as set forth in  claim 1  wherein said stored linear relationship relating element accelerations and joint accelerations is a stored model of the inverse kinematics of said mechanism. 
   
   
     4. A method for controlling the motion of a mechanism in an artificial appendage or a humanoid robot as set forth in  claim 1  wherein said controller further processes constraint data specifying permitted ranges of values for one or more parameters in a group of parameters consisting of output element accelerations, velocities, and positions; joint element accelerations, velocities, and positions; and joint torques. 
   
   
     5. A method for controlling the motion of a mechanism in an artificial appendage or a humanoid robot as set forth in  claim 4  wherein said constraint data includes specified limits for the angular position for one or more of said joints. 
   
   
     6. A method for controlling the motion of a mechanism in an artificial appendage or a humanoid robot as set forth in  claim 4  wherein said constraint data includes specified limits for the torque applied to one or more of said joints. 
   
   
     7. A method for controlling the motion of a mechanism in an artificial appendage or a humanoid robot as set forth in  claim 4  wherein said constraint data includes the restriction that specified ones of said elements be positioned within predetermined regions relative to other elements. 
   
   
     8. A method for controlling the motion of a mechanism in an artificial appendage or a humanoid robot as set forth in  claim 4  wherein said constraint data includes the restriction that the system's Zero Moment Point be within a restricted region. 
   
   
     9. A method for controlling the motion of a mechanism in an artificial appendage or a humanoid robot as set forth in  claim 1  wherein said controller is a linear quadratic controller. 
   
   
     10. A method for controlling the motion of a mechanism in an artificial appendage or a humanoid robot as set forth in  claim 1  wherein said output element acceleration data indicates the amount by which the center of mass of at least selected ones of said elements should be accelerated, and/or the amount by which the combined center of mass of one of, some of, or all of said elements should be accelerated. 
   
   
     11. A method for controlling the motion of a mechanism in an artificial appendage or a humanoid robot as set forth in  claim 1  wherein said controller processes said current state input data and said desired state input data to control the center of mass position for said mechanism. 
   
   
     12. A method for controlling the motion of a mechanism in an artificial appendage or a humanoid robot as set forth in  claim 11  wherein said controller further processes constraint data specifying permitted ranges of values for one or more parameters in a group of parameters consisting of output element accelerations, velocities, and positions; joint element accelerations, velocities, and positions; and joint torques. 
   
   
     13. A method for controlling the motion of a mechanism in an artificial appendage or a humanoid robot as set forth in  claim 11  wherein said controller further processes said current state input data and said desired state input data to control the roll, pitch and yaw angle for the body supported by said mechanism. 
   
   
     14. A method for A method for controlling the motion of a mechanism in an artificial appendage or a humanoid robot as set forth in  claim 11  wherein one of said articulated elements is a foot element that swings between contact positions on a support surface. 
   
   
     15. A method for controlling the motion of a mechanism in an artificial appendage or a humanoid robot as set forth in  claim 14  wherein said controller further processes said current state input data and said desired state input data to control the roll, pitch and yaw angle of said foot element of said mechanism as it swings between contact positions on said support surface. 
   
   
     16. A method for controlling the motion of a mechanism in an artificial appendage or a humanoid robot as set forth in  claim 11  wherein said controller further processes said current state input data and said desired state input data to control the angular momentum about the center of mass. 
   
   
     17. A method for controlling the motion of a mechanism in an artificial appendage or a humanoid robot as set forth in  claim 11  wherein said controller prioritizes control goals, temporarily sacrificing lower priority goals in favor of higher priority goals. 
   
   
     18. A method for controlling the motion of a mechanism in an artificial appendage or a humanoid robot as set forth in  claim 16  wherein said controller temporarily sacrifices goals of controlling angular momentum about the center of mass in favor of goals of controlling center of mass position. 
   
   
     19. A method for controlling the motion of a mechanism in an artificial appendage or a humanoid robot as set forth in  claim 18  wherein said controller further processes constraint data specifying permitted ranges of values for one or more parameters in a group of parameters consisting of output element accelerations, velocities, and positions; joint element accelerations, velocities, and positions; and joint torques. 
   
   
     20. A method for controlling the motion of a mechanism in an artificial appendage or a humanoid robot as set forth in  claim 1  wherein said controller processes said current state input data and said desired state input data in substeps comprising:
 producing control commands based on said computed joint torque data to control, the operation of said joints in said artificial appendage, 
 producing tracking error data indicative of the difference between the current dynamic state of said artificial appendage as controlled by said control commands and said desired dynamic state, and 
 delivering corrective commands based on said tracking error data directly to said joints to further modify said current dynamic state to compensate for errors in said stored linear relationship. 
 
   
   
     21. A method for controlling the motion of a mechanism in an artificial appendage or a humanoid robot as set forth in  claim 20  wherein said controller incorporates a sliding control technique to compensate for said errors in said stored linear relationship.

Cited by (0)

No later patents cite this yet.

References (0)

No backward citations on record.