Powered lower extremity orthotics, such as powered leg braces or a powered human exoskeleton, can allow a paraplegic patient to walk, but require a means by which to communicate what action the exoskeleton should make. Because some of the users are completely paralyzed in one or both legs, the exoskeleton control system must determine which leg the user would like to move and how they would like to move it before the exoskeleton can make the proper motion. These functions are achieved through a human machine interface (HMI) which translates motions by the person into actions by the orthotic. The invention is concerned with the structure and operation of HMIs for lower extremity orthotics.
The present invention is directed to a system and method by which a lower extremity orthotic control system determines a movement desired by a user and automatically regulates the sequential operation of powered lower extremity orthotic components, particularly with a user employing gestures of their upper body or other signals to convey or express their intent to the system. This is done in order to enable people with mobility disorders to walk, as well as perform other common mobility tasks which involve leg movements. The invention has particular applicability for use in enabling a paraplegic to walk through the controlled operation of a human exoskeleton.
In accordance with the invention, there are various ways in which a user can convey or input desired motions for their legs. A control system is provided to watch for these inputs, determine the desired motion and then control the movement of the user's legs through actuation of an exoskeleton coupled to the user's lower limbs. Some embodiments of the invention involve monitoring the arms of the user in order to determine the movements desired by the user. For instance, changes in arm movement are measured, such as changes in arm angles, angular velocity, absolute positions, positions relative to the exoskeleton, positions relative to the body of the user, absolute velocities or velocities relative the exoskeleton or the body of the user. In other embodiments, a walking assist or aid device, such as a walker, a forearm crutch, a cane or the like, is used in combination with the exoskeleton to provide balance and assist the user desired movements. The same walking aid is linked to the control system to regulate the operation of the exoskeleton. For instance, in certain preferred embodiments, the position of the walking aid is measured and relayed to the control system in order to operate the exoskeleton according to the desires of the user. For instance, changes in walking aid movement are measured, such as changes in walking aid angles, angular velocity, absolute positions, positions relative to the exoskeleton, positions relative to the body of the user, absolute velocities or velocities relative the exoskeleton or the body of the user.
In general, disclosed here is a system which determines the desired movement and automatically regulates the sequential operation of powered lower extremity orthotic components by keeping track of the current and past states of the system and making decisions about which new state is desired using various rules. However, additional objects, features and advantages of the invention will become more readily apparent from the following detailed description of various preferred embodiments when taken in conjunction with the drawings wherein like reference numerals refer to corresponding parts in the several views.
This invention is concerned with having a lower extremity orthotic control system make decisions on how to control a lower extremity orthotic, such as an exoskeleton, based on inputs by which the user communicates his or her intended motion to the exoskeleton. In particular, input from sensors are interpreted to determine what action the person wants to make. In the preferred embodiment, the sensor inputs are read into a finite state machine which determines allowable transitions and if predetermined conditions for the transition have been met.
With initial reference to
The simplest “sensor” set (215, 216) is a set of buttons, which can be operated by a second person. In the typical case, the second person would be a physical therapist. These buttons may be located on a “control pad” (e.g., switches 230) and used to select desired states. In some embodiments a single button could be used to trigger the next state transition. This could allow the second person to manually regulate the timing of the walking cycle. The allowable states are preferably limited for safety and governed by the current state, as well as the position of the body.
The sensors 215 and 216, at least in accordance with the most preferred embodiments of the invention, involve instrumenting or monitoring either the user's arms (as previously discussed) or a walking aid (i.e., crutches, walker, cane) in order to get a rough idea of the movement of the walking aid and/or the loads on the walking aid in order to determine what the user wants to do. The techniques are applicable to any walking aid. However, to fully illustrate the invention, a detailed description will be made with exemplary reference to the use of forearm crutch 102. Still, one skilled in the art should readily recognize that the techniques can also be applied to other walking aids, such as walkers and canes. Additionally, many of the methods also apply for walking on parallel bars (which does not need a walking aid) by instrumenting the user's arms.
In general, a system is provided that includes hardware which can sense the relative position of a crutch tip with respect to the user's foot. With this arrangement, the crutch's position is roughly determined by a variety of ways such as using accelerometer/gyro packages or using a position measuring system to measure the distance from the orthotic or exoskeleton to the crutch. Such a position measuring system could be one of the following: ultrasonic range finders, optical range finders, and many others, including signals received from an exoskeleton mounted camera 218. The crutch position can also be determined by measuring the absolute and/or relative angles of the user's upper, lower arm, and/or crutch 102. Although one skilled in the art will recognize that there are many other ways to determine the position of the crutch 102 with respect to the exoskeleton, discussed below are arrangements considered to be particularly advantageous.
In one rather simple embodiment, the approximate distance the crutch 102 is in front or behind the exoskeleton (i.e., along forward axis 104 in
Also, most of the techniques disclosed here assume that there is some method of determining whether the user's foot and the crutch is in contact with the ground. This is useful for determining safety, but is not necessary and may slow the gait. Impact sensors, contact sensors, proximity sensors, and optical sensors are all possible methods for detecting when the feet and/or crutches are on the ground. One skilled in the art will note that there are many ways to create such sensors. It is also possible to use an orientation sensor mounted on the crutch to determine when contact with the ground has occurred by observing a sudden discontinuous change in motion due to contact with the ground, or by observing motion or a lack thereof that indicates the crutch tip is constrained to a point in space. In this case two sensors (orientation and ground contact) are combined into one. However, a preferred configuration includes a set of crutches 102 with sensors 215, 216 on the bottoms or tips 101 to determine ground contact. Also included is a method of measuring the distance between crutches 102, such as through an arm angle sensor. Furthermore, it may include foot pressure sensors. These are used to determine the desired state based on the current state and the allowable motions given the configuration as discussed more fully below.
Regardless of the particular types of sensor employed, in accordance with the invention, the inputs from such sensors 215, 216 are read into a controller or central processing unit (CPU) 220 which stores both the present state of the exoskeleton 100 and past states, and uses those to determine the appropriate action for the CPU 220 to take next in controlling the lower extremity orthotic 100. One skilled in the art will note that this type of program is often referred to as a finite state machine, however there are many less formal methods to create such behaviors. Such methods include but are not limited to: case statements, switch statements, look-up tables, cascaded if statements, and the like.
At this point, the control implementation will be discussed in terms of a finite state machine which determines how the system will behave. In the simplest version, the finite state machine has two (2) states. In the first, the left leg is in swing and the right leg is in stance. In the second, the right leg is in swing and the left leg is in stance (
Further embodiments of the state machine allow for walking to be divided into more states. One such arrangement employs adding two double stance states as shown in
For clarity, a typical gait cycle incorporates of the following steps. Starting in state 405, the user moves the right crutch forward and triggers transition 408 when the right crutch touches the ground. Thereafter, state 402 is entered wherein the left leg is swung forward. When the left leg contacts the ground, state 406 is entered. During state 406, the machine may make some motion with both feet on the ground to preserve forward momentum. Then, the user moves the left crutch forward and triggers transition 407 when the left crutch touches the ground. Then the machine enters state 401 and swings the right leg forward. When the right leg contacts the ground, the machine enters state 405. Continuing this pattern results in forward locomotion. Obviously, an analogous state machine may enable backwards locomotion by reversing the direction of the swing leg motions when the crutch motion direction reverses.
At this point, is should be noted that the stance phases may be divided into two or more states, such as a state encompassing heel strike and early stance and a state encompassing late stance and push off. Furthermore, each of these states may have sub-states, such as flexion and extension as part of an overall swing.
Using a program that operates like a state machine has important effects on the safety of the device when used by a paraplegic, because it insures that the device proceeds from one safe state to another by waiting for appropriate input from the user to change the state, and then only transitioning to an appropriate state which is a small subset of all of the states that the machine has or that a user might try to request. This greatly reduces the number of possible state transitions that can be made and makes the behavior more deterministic. For example, if the system has one foot swinging forward (such as in state 401 of
Extensions of the state machine also include additional states that represent a change in the type of activity the user is doing such as: sit down, stand up, turn, stairs, ramps, standing stationary, and any other states the user may need to use the exoskeleton during operation. We refer to these different activities as different “modes” and they represent moving from one part of the state machine to another.
Another such change in modes is beginning to climb stairs. A partial state machine for this activity change is shown in
By this point, the main discussions concern the use of sensor input to regulate state and mode changes. Central Processing Unit 220 can also use sensors, such as sensors 215, 216, to modify the gait parameters which are used by CPU 220 when taking an action. For example, during walking the crutch sensors could modify the system's step length. For example, CPU 220 using the state machine shown in
Instead of just using a proportional function, the desired mapping from crutch move distance 108 to step length can be estimated or learned using a learning algorithm. This allows the mapping to be adjusted for each user using a few training steps. Epsilon greedy and nonlinear regression are two possible learning algorithms that could be used to determine the desired step length indicated by a given crutch move distance. When using such a method, a baseline mapping would be set, and then a user would use the system providing feedback as to whether they felt each successive step were longer than they had desired or shorter than they had desired. This occurs while the resulting step lengths are being varied. With such an arrangement, this process could be employed to enable the software to learn a preferred mapping between crutch move distance 108 and step length. In a related scenario, the sensors can also indicate the step speed by mapping the velocity of the crutch tip or the angular velocity of the arm to the desired step speed in much the same way as the step length is mapped.
Obstacles can be detected by the motion of the crutch and/or sensors located in the crutch tip 101 or foot. These can be avoided by adjusting the step height and length parameter. For example, if the path 107 shown in
In an alternative arrangement, the path of the swing leg is adjusted on each step by observing how high the crutch is moved during the crutch movement before the step. This arrangement is considered to be particularly advantageous in connection with clearing obstacles. For example, if the user moves the crutch abnormally high up during crutch motion, the maximum height of the step trajectory is increased so that the foot also moves higher upward than normal during swing. As a more direct method, sensors could be placed on the exoskeleton to measure distance to obstacles directly. The step height and step distance parameters used in stair climbing mode could be adjusted based on how the crutch is moved as well. For example, if the crutch motion terminates at a vertical position, along axis 106, which was higher than an initial position by, say, 6 inches, the system might conclude that a standard stair step is being ascended and adjust parameters accordingly. The algorithm for this decision is again shown in the flow chart of
The stair can also be detected by determining where the exoskeleton foot lands along axis 106 of
Returning to the transitions between states, the conditions necessary to transition from one state to another can be chosen in a number of manners. First, they can be decided based on observing actions made by the user's arm or crutch. The primary embodiment is looking for the crutch to leave the ground observing how far and/or how fast it is moved, waiting for it to hit the ground, and then taking a step with the opposite leg. However, waiting for the crutch to hit the ground before initiating a step could interfere with a fluid gait and therefore another condition may be used to initiate the step. In an alternative embodiment, the system observes the crutch swinging to determine when it has moved through a threshold. When the crutch passes through this threshold, the step is triggered. A suitable threshold could be a vertical plane passing through the center of the user. Such a plane is indicated by the dotted line 701 in
Foot sensors can also be used to create state transitions that will not require the system to put the crutch down before lifting the foot. With reference to
In accordance with another method exemplified in connection with taking a left step, the right arm swings forward faster than a set threshold and past a specified angle (or past the opposite arm). If the heel of the swing (left) foot is also unloaded, then the step is taken. In accordance with a preferred embodiment, this arrangement is implemented by measuring the right arm's angular velocity and angular position, and comparing both to threshold values.
These methods all can be used to get a more fluid gait, but in order to make it the most fluid possible, a state machine with a “steady walking” mode might be desired. This mode could be entered after the user had indicated a few consistent steps in a row, thereby indicating a desire for steady walking. In a “steady walking” mode the exoskeleton would do a constant gait cycle just as an ordinary person would walk without crutches. The essential difference in this part of the state machine would be that the state transitions would be primarily driven by timing, for instance at time=x+0.25 start swing, at time=x+0.50 start double stance, etc. However, for this to be safe, the state machine also needs transitions which will exit this mode if the user is not keeping up with the timing, for example, if a crutch is not lifted or put down at the proper time.
Another improvement to these control methods is the representation of the state machine transitions as weighted transitions of a feature vector as opposed to the discrete transitions previously discussed. The state machine previously discussed uses discrete state triggers where certain state criteria must be met before the transitions are triggered. The new structure incorporates an arbitrary number of features to estimate when the states should trigger based on the complete set of state information. For example, the state transition from swing to stance was originally represented as just a function of the crutch load and arm angle, but another method can incorporate state information from the entire device. In particular:
Discrete Transition: T=(FCrutch>FThreshold)&(θArm>θThreshold)
Weighted Transition: ATrigger=ωTrigger*FState; ANoTrigger=ωNoTrigger*FState
T=(ATrigger>ANoTrigger)
This method is then used with machine learning techniques to learn the most reliable state transitions. Using machine learning to determine the best weighting vector for the state information will incorporate the probabilistic nature of the state transitions by increasing the weight of the features with the strongest correlation to the specific state transition. The formulation of the problem can provide added robustness to the transition by incorporating sensor information to determine the likelihood that a user wants to transition states at this time. By identifying and utilizing additional sensor information into the transitions, the system will at least match robust as the discrete transitions discussed previously if the learning procedure determines that the other sensor information provides no new information.
Another method for considering safety is using reachability analysis. Hybrid control theory offers another method to ensure that the HMI only allows for safe transitions. Reachability analysis determines if the machine can move the person from an initial state (stored in a first memory) to a safe final state (stored in a second memory) given the limitations on torque and angular velocity. This method takes into account the dynamics of the system and is thus more broadly applicable than the center of mass method. When the person is about to take a step, the controller determines if the person can proceed to another safe state or if the request step length is reachable. If it is not safe or reachable, the controller makes adjustments to the person's pose or adjusts the desired target to make the step safe. This method can also be used during maneuvers, such as standing.
The back angle in the coronal plane can also be used to indicate a desire to turn. When the user leans to the left or right, that action indicates a desire to turn that direction. The lean may be measured in the coronal plane (i.e., that formed by axes 105 and 106). Likewise, the head angle in the transverse plane (that formed by axes 104 and 105) can also be used in a similar manner. Furthermore, since the back angle can be measured, the velocity or angular velocity of the center of mass in the coronal plane can also be measured. This information can also be used to determine the intended turn and can be measured by a variety of sensors, including an inertial measurement unit.
As an alternative to measuring the angle or angular velocity, the torque can also be measured. This also indicates that the body is turning in the coronal plane and can be used to determine intended turn direction. There are a number of sensors which can be used for this measurement, which one skilled in the art can implement. Two such options are a torsional load cell or pressure sensors on the back panel which measure differential force.
Although described with reference to preferred embodiments of the invention, it should be recognized that various changes and/or modifications of the invention can be made without departing from the spirit of the invention. In particular, it should be noted that the various arrangements and methods disclosed for use in determining the desired movement or intent of the person wearing the exoskeleton could also be used in combination with each other such that two or more of the arrangements and methods could be employed simultaneously, with the results being compared to confirm the desired movements to be imparted. In any case, the invention is only intended to be limited by the scope of the following claims.
This application represents a divisional application of Ser. No. 13/877,805 entitled “Human Machine Interfaces for Lower Extremity Orthotics” filed Apr. 4, 2013, pending, which is a National Stage application of PCT/US2011/055126 entitled “Human Machine Interfaces for Lower Extremity Orthotics” filed Oct. 6, 2011, which claims the benefit of U.S. Provisional Application Ser. No. 61/390,438 entitled “Human Machine Interfaces for Lower Extremity Orthotics” filed Oct. 6, 2010, all of which are incorporated herein by reference.
This invention was made with government support under Grant Numbers IIP0712462 and IIP0924037 awarded by the National Science Foundation and Grant Number 70NANB7H7046 awarded by the National Institute of Standards and Technology. The U.S. government has certain rights in the invention.
Number | Date | Country | |
---|---|---|---|
61390438 | Oct 2010 | US |
Number | Date | Country | |
---|---|---|---|
Parent | 13877805 | Apr 2013 | US |
Child | 15797060 | US |