Login| Sign Up| Help| Contact|

Patent Searching and Data


Title:
GAIT TRAJECTORY CONTROL METHOD AND GAIT TRAJECTORY SYSTEM
Document Type and Number:
WIPO Patent Application WO/2024/102065
Kind Code:
A1
Abstract:
Disclosed herein is a gait trajectory system and a gait trajectory control method. The gait trajectory system, comprises: a controller configured to: for a step of a user: using a dynamic movement primitives-based trajectory generation module, determine a reference trajectory based on a set of initial joint angles, a goal offset, and a forcing term; update a vector table based on the reference trajectory, wherein the vector table includes multiple sets of joint angles corresponding to at least one leg of the user; determine from the vector table a set of closest joint angles closest to a set of current joint angles; and determine from the vector table a set of target joint angles based on the set of current joint angles and a predetermined angular distance.

Inventors:
LUO LINCONG (SG)
FOO MING JEAT (SG)
RAMANATHAN MANOJ (SG)
CHIAM CHYE HSIA (SG)
YAU WEI YUN (SG)
ANG WEI TECH (SG)
Application Number:
PCT/SG2023/050696
Publication Date:
May 16, 2024
Filing Date:
October 16, 2023
Export Citation:
Click for automatic bibliography generation   Help
Assignee:
UNIV NANYANG TECH (SG)
AGENCY SCIENCE TECH & RES (SG)
International Classes:
B25J9/00; B25J9/16
Foreign References:
CN112207835A2021-01-12
CN109108978A2019-01-01
Other References:
KAMALI KAVEH, AKBARI ALI AKBAR; AKBARZADEH ALIREZA: "Trajectory generation and control of a knee exoskeleton based on dynamic movement primitives for sit-to-stand assistance", ADVANCED ROBOTICS, VSP, ZEIST, NL, vol. 30, no. 13, 2 July 2016 (2016-07-02), NL , pages 846 - 860, XP093172519, ISSN: 0169-1864, DOI: 10.1080/01691864.2016.1154800
CHEN, Q. ET AL.: "Dynamic Balance Gait for Walking Assistance Exoskeleton", APPLIED BIONICS AND BIOMECHANICS, vol. 2018, no. 7847014, 2 July 2018 (2018-07-02), pages 1 - 10, XP055517094, [retrieved on 20240126], DOI: 10.1155/2018/7847014
LUO LINCONG, FOO MING JEAT; RAMANATHAN MANOJ; ER JIE KAI; CHIAM CHYE HSIA; LI LEI; YAU WEI YUN; ANG WEI TECH: "Trajectory Generation and Control of a Lower Limb Exoskeleton for Gait Assistance", JOURNAL OF INTELLIGENT, SPRINGER NETHERLANDS, DORDRECHT, vol. 106, no. 3, 1 November 2022 (2022-11-01), Dordrecht, XP093172521, ISSN: 0921-0296, DOI: 10.1007/s10846-022-01763-5
Attorney, Agent or Firm:
CHINA SINDA INTELLECTUAL PROPERTY PTE. LTD. (SG)
Download PDF:
Claims:
CLAIMS A gait trajectory system, comprising: a controller configured to: for a step of a user: using a dynamic movement primitives-based trajectory generation module, determine a reference trajectory based on a set of initial joint angles, a goal offset, and a forcing term; update a vector table based on the reference traj ectory, wherein the vector table includes multiple sets of joint angles corresponding to at least one leg of the user; determine from the vector table a set of closest joint angles closest to a set of current joint angles; and determine from the vector table a set of target joint angles based on the set of current joint angles and a predetermined angular distance. The system as recited in claim 1, wherein the controller is further configured to: iteratively: determine from the vector table the set of closest joint angles closest to the set of current joint angles; and determine from the vector table a set of target joint angles based on the set of current joint angles and a predetermined angular distance. The system as recited in any of the above claims, wherein the controller is further configured to: beginning from a first index of the vector table towards an end of the vector table, determine from the vector table the set of closest joint angles closest to the set of current joint angles. The system as recited in claim 3, wherein the controller is further configured to: update the first index to an index of the set of closest joint angles for a next iteration. The system as recited in any of the above claims, wherein the controller is further configured to: beginning from a second index of the vector table towards an end of the vector table, determine from the vector table the set of target joint angles based on the set of current joint angles and the predetermined angular distance, wherein the second index is an index of the set of closest joint angles in the vector table. The system as recited in any of the above claims, wherein the controller is further configured to: adjust the set of current joint angles towards the set of target joint angles. The system as recited in any of the above claims, wherein the controller is further configured to: determine an end point of the step responsive to the current joint angles being within a threshold from a last set of joint angles of the vector table; and proceeding to a next step. The system as recited in any of the above claims, wherein the vector table comprises multiple sets of joint angles corresponding to both legs of the user. The system as recited in any of the above claims, wherein the multiple sets of joint angles comprise multiple hip angles and multiple knee angles. The system as recited in any of the above claims, wherein the goal offset corresponds to a difference between an ending point of the reference trajectory and a baseline trajectory. The system as recited in claim 10, wherein the goal offset corresponds to a difference between a hip joint angle of the user and a hip joint angle from a database. The system as recited in any of the above claims, wherein the controller is further configured to: determine the goal offset based on a step length of the user. The system as recited in any of the above claims, wherein the forcing term comprises kernel weights obtained from a pre-trained machine learning model. The system as recited in any of the above claims, wherein the forcing term comprises a scaling coefficient corresponding to an ending hip angle of a previous step. The system as recited in claim 14, wherein the controller is further configured to: determine the scaling coefficient based on an ending hip angle of a previous step of the user. The system as recited in any of the above claims, further comprising a wearable lower limb exoskeleton having at least one joint actuator attached to a swing leg of the user, wherein the controller is further configured to: drive the at least one joint actuator based on the set of target joint angles. The system as recited in claim 16, wherein the controller is further configured to: leave a stance leg of the user unactuated. The system as recited in any of claims 16 to 17, further comprising: a plurality of joint angle sensors for determining a hip joint angle and a knee joint angle of the at least one leg of the user. The system as recited in any of claims 16 to 18, wherein the lower limb exoskeleton includes at least one hip joint actuator and at least one knee joint actuator. A gait trajectory control method, comprising: for a step of a user: using a dynamic movement primitives-based trajectory generation module, determining a reference trajectory based on a set of initial joint angles, a goal offset, and a forcing term; updating a vector table based on the reference trajectory, wherein the vector table includes multiple sets of joint angles corresponding to at least one leg of the user; determining from the vector table a set of closest joint angles closest to a set of current joint angles; and determining from the vector table a set of target joint angles based on the set of current joint angles and a predetermined angular distance.
Description:
GAIT TRAJECTORY CONTROL METHOD AND GAIT TRAJECTORY SYSTEM

CROSS-REFERENCE TO RELATED APPLICATION

[0001] This application claims the benefit of priority to the Singapore application no. 10202260005X filed November 8, 2022, the contents of which are hereby incorporated by reference in their entirety for all purposes.

TECHNICAL FIELD

[0002] This application relates to a gait trajectory control method and a gait trajectory system suitable for gait assistance.

BACKGROUND

[0003] With the development of robotic technology, lower-limb exoskeletons are increasingly used to provide gait assistance to a user during gait rehabilitation and for autonomous walking. The gait trajectory control method for the exoskeleton system influences the interaction between the user and the exoskeleton, and determines the therapy recovery results as well as the gait/walking performance. Conventional lower-limb exoskeleton systems lack flexibility, e.g., they can only provide gait assistance assuming a healthy gait, and are relatively limited in the gait rehabilitation assistance provided.

SUMMARY

[0004] In one aspect, the present application discloses a gait trajectory system. The gait trajectory system comprises a controller configured to: for a step of a user: using a dynamic movement primitives-based trajectory generation module, determine a reference trajectory based on a set of initial joint angles, a goal offset, and a forcing term; update a vector table based on the reference trajectory, wherein the vector table includes multiple sets of joint angles corresponding to at least one leg of the user; determine from the vector table a set of closest joint angles closest to a set of current joint angles; and determine from the vector table a set of target joint angles based on the set of current joint angles and a predetermined angular distance. [0005] According to another aspect, the present application discloses a gait traj ectory control method. The gait trajectory control method comprises: for a step of a user: using a dynamic movement primitives-based trajectory generation module, determining a reference trajectory based on a set of initial joint angles, a goal offset, and a forcing term; updating a vector table based on the reference trajectory, wherein the vector table includes multiple sets of joint angles corresponding to at least one leg of the user; determining from the vector table a set of closest joint angles closest to a set of current joint angles; and determining from the vector table a set of target joint angles based on the set of current joint angles and a predetermined angular distance.

BRIEF DESCRIPTION OF THE DRAWINGS

[0006] Various embodiments of the present disclosure are described below with reference to the following drawings:

[0007] FIG. 1 is a schematic diagram illustrating a gait trajectory system according to embodiments of the present disclosure;

[0008] FIG. 2 is a flowchart of a gait trajectory method according to an embodiment;

[0009] FIG. 3 is a gait trajectory plot of a vector table comprising knee joint angles and hip joint angles at iteration K of a step according to an embodiment;

[0010] FIG. 4 is the vector table of FIG. 3 at iteration K of the step;

[0011] FIG. 5 is the gait trajectory plot of FIG. 3 at iteration K+1 of the step;

[0012] FIG. 6 is the vector table of FIG. 3 at iteration K+1 of the step; [0013] FIG. 7 is the gait trajectory plot of FIG. 3 at the last iteration of the step;

[0014] FIG. 8 is the vector table of FIG. 3 at the last iteration of the step;

[0015] FIG. 9 is a schematic of a lower limb of a user taking a step;

[0016] FIG. 10 is a schematic diagram of a controller according to an embodiment;

[0017] FIG. 11 is an example of a lower limb exoskeleton;

[0018] FIG. 12 a plot of joint angles illustrating gait trajectory learning and imitating results using DMP with different number of kernels;

[0019] FIG. 13(a) to 13(f) are plots of joint angles of a swing leg generated using DMP with different parameters;

[0020] FIG. 14 is a plot showing the mean and standard deviation of a step length with different hip angle scaling values;

[0021] FIG. 15(a) to 15(c) are plots showing respective swing phase gait trajectory under different control conditions;

[0022] FIG. 16 illustrates a comparison of the trajectory RMS errors in subjects with different exoskeleton control conditions;

[0023] FIG. 17(a) to 17 (c) illustrate hip trajectories of swing and stance legs for (a) reference trajectories; (b) actual trajectories in 2D path-based control; and (c) actual trajectories in 4D path-based control; and

[0024] FIG. 18 illustrates phase difference of crossing zero points between swing and stance hip joints.

DETAILED DESCRIPTION

[0025] The following detailed description is made with reference to the accompanying drawings, showing details and embodiments of the present disclosure for the purposes of illustration. Features that are described in the context of an embodiment may correspondingly be applicable to the same or similar features in the other embodiments, even if not explicitly described in these other embodiments. Additions and/or combinations and/or alternatives as described for a feature in the context of an embodiment may correspondingly be applicable to the same or similar feature in the other embodiments.

[0026] In the context of various embodiments, the articles “a”, “an” and “the” as used with regard to a feature or element include a reference to one or more of the features or elements.

[0027] In the context of various embodiments, the term “about” or “approximately” as applied to a numeric value encompasses the exact value and a reasonable variance as generally understood in the relevant technical field, e.g., within 10% of the specified value.

[0028] As used herein, the term “and/or” includes any and all combinations of one or more of the associated listed items.

[0029] For the sake of brevity, the term "joint angle" may be used interchangeably with any one or more of the terms "joint position", "joint displacement ", “knee angle”, "hip angle", "knee joint angle", "hip joint angle", etc., as will be understood from the context. The term “gait” may generally be used in the context of a manner of a user taking one or more steps in the process of walking, running, pacing, etc.

[0030] To aid understanding and not to be limiting, a detailed description of various embodiments of a gait trajectory system 100 and a gait trajectory control method 200 will be described below with reference to the appended figures. The gait trajectory system 100 and gait trajectory control method 200 may also be described as a system and a method that can plan or determine a gait trajectory and through controlling respective actuators, provide respective actuating forces and/or supporting forces to assist a user during gait rehabilitation or walking. For the sake of brevity, the following will describe various examples with respect to the gait trajectory of one step of a single leg of the user, but it will be understood that the system 100/method 200 may be used for multiple sequential or non-sequential steps taken by the user using one or both legs.

[0031] FIG. 1 is a schematic diagram of a gait trajectory system 100 according to embodiments of the present disclosure. The gait trajectory system 100 may include a lower limb exoskeleton 110 which includes a plurality of joint actuators 111/112/113/114. The lower limb exoskeleton 110 may be wearable by a user 80. In some embodiments, the joint actuators 111/112/113/114 may include hip joint actuators 111/112 and knee joint actuators 113/114. The joint actuators 111/112/113/114 may be electrical-based actuators, pneumatic-based actuators, cable/tension-based actuators, hydraulic-based actuators, magnetic-based actuators, etc.

[0032] In some embodiments, sensors may be disposed on or coupled to the exoskeleton 110 to measure a position and/or orientation of one or both lower limbs of the user 80. For examplejoint angle sensors may be provided to sense or measure respective angles of the hip joints 81/82 of the user 80, or the hip joint angles of the user 80. Similarly, sensors may be provided to sense or measure respective angles of the knee joints 83/84 of the user 80 or the knee joint angles of the user 80. In some embodiments, the sensors may be integrated with the join actuators 111/112/113/114, such that the joint actuators 111/112/113/114 may perform both sensing and actuation of the respective joint angles. In some embodiments, the sensors may also be disposed or positioned adjacent to or neighbouring the respective foot 85/86 of the user 80 to measure respective position(s) and/or orientation(s) of the foot 85/86. Further, the sensors may also be configured to measure forces applied to/by the foot 85/86 to determine a contact force between the foot 85/86 and the ground or support surface.

[0033] The gait trajectory system 100 may include a controller 120 in signal communication with the plurality of joint actuators 81/82/83/84. The controller 120 may also be in signal communication with the joint angle sensors. The controller 120 may be configured to determine a set of current joint angles of the user 80, and determine a gait trajectory based on the set of current joint angles. In some examples, the set of joint angles may include a hip angle and a knee angle of one leg of the user 80. In some examples, the set of joint angles may include respective hip angles and knee angles of both legs of the user 80. In some embodiments, the controller 120 may be configured to drive the joint actuators 81/82/83/84 towards a set of target joint angles. In some embodiments, the controller 120 drives the joint actuators 81/82/83/84 based on input from the joint sensors. In some embodiments, the controller 120 may be configured to execute a gait trajectory control method.

[0034] FIG. 2 illustrates a gait trajectory control method 200 according to embodiments of the disclosure. In some embodiments, the gait trajectory control method 200 may be timeinvariant. In some embodiments, the gait trajectory control method 200 may be a method based on dynamic movement primitives (DMP -based method) which is suitable for modelling, planning and control of human-motor behaviours. In some embodiments, the gait trajectory control method 200 may be a path-based control method. The DMP -based method 200 is flexible for imitating or reshaping a target gait trajectory through varying a few parameters and a plurality of Gaussian kernels. Based on training data of healthy human subjects, the Gaussian kernels may be updated or learned using a machine learning method such as an explicit statistical method. Further, the method 200 may support online adjustment of the gait trajectory by exerting a forcing term on the gait trajectory when subjected to a dynamic change from the external environment.

[0035] As an exemplary embodiment, the gait trajectory control method 200 for a step of a user is disclosed. The gait trajectory control method 200 includes, in a stage 210, determining a reference trajectory based on a set of initial joint angles, a goal offset, and a forcing term. In some embodiments, the set of initial joint angles may correspond to a set of current joint angles of the user 80 at the beginning of the step. In some embodiments, the joint angles may correspond to the hip angles and/or knee angles of a user or subject undergoing gait training or gait assistance. Alternatively, in some embodiments, the joint angles may correspond to the hip angles and/or knee angles of the exoskeleton worn by the user. In some embodiments, the goal offset may correspond to a difference between an ending point of the reference trajectory and a baseline trajectory. The baseline trajectory may be a trajectory obtained from a prior healthy subject, including subjects of similar body dimensions. The baseline trajectory may be obtained from previous gait trajectory data. In some embodiments, the goal offset may correspond to a step length. For example, the goal offset may correspond to a step length of the user 80 or a step length of a prior gait trajectory. Therefore, the method 200 may further include determining the goal offset based on a step length of the user. In some embodiments, the goal offset and/or the step length may correspond to a difference between a hip joint angle of the user 80 and a hip joint angle from a database. For example, the hip joint angle from the database may be obtained from the baseline trajectory or from previous gait trajectory data. In some embodiments, the goal offset may “correct” or “modify” the ending point of the reference trajectory in relation to the baseline trajectory, therefore modifying the reference trajectory.

[0036] The forcing term may determine the shape of the reference trajectory. In some embodiments, the forcing term includes kernel weights obtained from a pre-trained machine learning model. The pre-trained machine learning model may be a dynamic movement primitives-based machine learning model which was pre-trained with the gait trajectory from healthy subjects and/or subjects whom require gait assistance. In some embodiments, the pretrained dynamic movement primitives-based machine learning model may also be constrained by the subject's’ (both the healthy subjects and the subjects whom require gait assistance) body dimensions. In some embodiments, the forcing term may include a scaling coefficient corresponding to an ending hip angle of a previous step. In other words, the scaling coefficient may be determined based on the hip angle of one or both legs of the user for a previous step. In other embodiments, the scaling coefficient may be a constant during trajectory generation. For example, the scaling coefficient may be in a range from 1.0 to 1.2.

[0037] The gait trajectory control method 200 may further include, in a stage 220, updating a vector table based on the reference trajectory. The vector table may include multiple sets of joint angles which correspond to at least one leg of the user. The multiple sets of joint angles may include potential target joint angles corresponding to at least one leg of the user. In some embodiments, the multiple sets of joint angles may include multiple hip angles and multiple knee angles. In some embodiments, the vector table includes multiple sets of joint angles which correspond to both legs of the user.

[0038] The gait trajectory control method 200 may further include, in a stage 230, determining from the vector table a set of closest joint angles closest to a set of current joint angles; and, in a stage 240, determining from the vector table a set of target joint angles based on the set of current joint angles and a predetermined angular distance. In some embodiments, determining the set of closest joint angles and determining the set of target joint angles may be performed iteratively 250 within a single step of the user. In other words, multiple sets of current joint angles, multiple sets of closest joint angles, and multiple sets of target joint angles will be determined in a single step of the user. In some embodiments, the gait trajectory control method 200 may further include actuating the exoskeleton 110 such that the set of current joint angles is adjusted towards the set of target joint angles. For example, by controlling and actuating one or more of the joint actuators 111/112/113/114 to adjust or change the set of current joint angles based on the set of target joint angles or towards the set of target joint angles. In some examples, the exoskeleton 110 is actuated to adjust the set of current joint angles to be as close as possible to the set of target joint angles.

[0039] In some embodiments, in determining the set of closest joint angles, the controller is configured to look up the vector table, beginning from a first index of the vector table moving down the vector table and towards an end of the vector table. The controller may then select the set of joint angles from the vector that differ from the current joint angles by a smallest difference. In other words, the sets of joint angles before the first index in the vector table are not considered for determining the set of closest joint angles. For example, only sets of joint angles after the first index in the vector table are used for determining the set of closest joint angles. In some examples, the first index at the beginning of a step may correspond to or is near a start of the vector table. In some examples, the first index at the end of a step may correspond to or is near an end of the vector table.

[0040] In some embodiments, the set of target joint angles may be determined based on the set of current joint angles and a predetermined angular distance, beginning from a second index of the vector table towards the end of the vector table. In some embodiments, the second index may be an index corresponding to the set of closest joint angles in the vector table in the present iteration. In some embodiments, the predetermined angular distance corresponds to a lookahead distance. In some embodiments, the predetermined angular distance may be a fixed angle, for example 7.5°. In some embodiments, the predetermined angular distance may be selected from a range of angles. In some embodiments, the gait trajectory control method 200 further includes updating the first index to an index of the set of closest joint angles for a next iteration. For example, for each iteration, the first index may be updated after determining the set of closest joint angles closest to the set of current joint angles. In some alternative embodiments, the first index may be updated corresponding to an index of the set of target joint angles (instead of the set of closest joint angles) for a next iteration. In other words, the first index for determining the set of closest joint angles for the next iteration begins from the set of target joint angles of the previous iteration.

[0041] In some embodiments, gait trajectory control method 200 may further include determining an end point of the step responsive to the current joint angles being within a threshold from a last set of joint angles of the vector table. The end point of the step may be determined when the current joint angles are at or within a threshold of the last set of joint angles or an end of the vector table. This corresponds to the current joint angles are close to or approaching the end of the step, and hence the end point of the step is determined. When the end point of the step is determined, the method 200 further includes proceeding to determine a next step, where a new reference trajectory is determined and the vector table is updated corresponding to the new reference trajectory.

[0042] FIGS. 3 to 9 illustrate schematically various exemplary embodiments of the gait trajectory control method 200. Referring to FIGS. 3 and 4, an exemplary embodiment of a 2D plot of a vector table and the vector table at iteration k of a step is illustrated. As shown in FIG. 4, the vector table may be represented by T{i, θi , which is a vector of N set of joint angles θi. Each set of joint angles θi ={θi, h , θi, k} includes a hip angle θi, h and a knee angle θi, k. In some examples, depending on the computational resources, the intended application, the amount of assistance required by the user 80 or other conditions, the vector may include 250 rows/sets of joint angles, 500 rows/sets of joint angles, 2000 rows/sets of joint angles, etc.

[0043] At the present iteration K, the first index for determining the set of closest joint angles corresponds to index k-1, which is the index of the set of closest joint angles of a previous iteration K-1. Beginning from the first index k-1, the method 200 determines the set of closest joint angles θi* based on the set of current joint angles θ C . Thereafter, beginning from the second index k, which is the index corresponding to the set of closest joint angles θi* in the vector table in the present iteration, the method 200 determines the set of target join angles θi** based on the set of current joint angles and a predetermined angular distance. With the target joint angles θi**, the controller drives the set of current joint angles θ C towards the target position θ d by driving the joint actuators 111/112/113/114, optionally with positional, orientational or dynamic parameters input from the joint sensors. Further, the first index k-1 is then updated to correspond to the index k of the set of closest joint angles θi* or the second index, for a next iteration.

[0044] Referring now to FIGS. 5 and 6, in a next iteration K+1 of the same step, an exemplary embodiment of a 2D plot of a vector table and the vector table is illustrated. Beginning from the updated first index k, the method 200 determines a new set of closest joint angles θi* based on the set of current joint angles θ C which was actuated and moved by the joint actuators 111/112/113/114 in the previous iteration K. Beginning from the second index k+1, which is the index corresponding to the set of closest joint angles θi* in the vector table in the present iteration K+1, the method 200 determines the set of target join angles θi** based on the set of current joint angles and the predetermined angular distance. With the target joint angles θi**, the controller drives the set of current joint angles θ C towards the target position θ d by driving the joint actuators 111/112/113/114. Further, the first index k is then updated to correspond to the index k+1 of the set of closest joint angles θi* or the second index, for a next iteration K+2.

[0045] Referring now to FIGS. 7 and 8, the method 200 may include determining an end point of the current step. The end point may be determined when the set of current joint angles θ C are at or within a threshold (T) from a last set of joint angles θN ={ θN, h , θN, k } of the vector table. In other words, when the set of current joint angles is near the end of the vector table, indicates an end point to the current step. Responsive to determining the end point of the current step, the method 200 proceeds to a next strap where a new reference trajectory is determined and the vector table is updated corresponding to the new reference trajectory.

[0046] The exemplary embodiments as illustrated in FIGS. 3 to 8 include a vector table corresponding to one leg of a subject/user, and the method may generally be referred to in this disclosure as a 2D path-based control method. It may be appreciated that vector tables which include multiple sets of joint angles which correspond to both legs of the user may also be employed in a similar manner and may generally be referred to in this disclosure as a 4D path- based control method. The 4D path -based control method may include sets of joint angles corresponding to a swing leg (active leg) and a stance leg (passive leg) , as illustrated in the vector table below. In other examples, the vector table for the 4D path-based control method may correspond to a left leg and a right leg. wherein the current set of joint angles 0 C may be represented as:

[0047] In the 4D path-based control method, the joint angles of both legs of the user 80 are taken into consideration during determination of the set of closest joint angles and during determination of the set of target joint angles for each iteration. This advantageously improves the angular synchronisation of the user during gait assistance. In some embodiments, only the swing leg is driven/ actuated for the 4D-path based control method. In other words, the controller is configured to drive the joint actuators coupled to the swing leg based on the set of target joint angles, while leaving the stance leg of the user undriven or unactuated.

DMP-based Gait Trajectory Planning and Generation

[0048] According to various exmplary embodiments, disclosed herein is a gait trajectory system and a gait trajectory control method for the lower limb exoskeleton to provide a user with gait assistance during walking. The gait trajectory system includes a dynamic movement primitives (DMP)-based reference trajectory generation module and a path-based trajectory control module. In the trajectory generation module, DMP method is applied to learn and imitate the baseline gait trajectories collected from healthy subjects. Parameters such as the initial joint angle, scaling coefficient and goal position were used to reshape the reference trajectory. The implementation of DMP module provides a flexible manner to online adjust gait trajectory for matching different initial joint configurations in the pre-swing phase and adapting to the different step length through the settings of the corresponding parameters. In the path- based trajectory control module, the gait path is first created by using the obtained reference trajectories, followed by using a lookahead distance according to the current joint position to search for the target joint position or target joint angles in 4D joint space, in which the target joint position includes hip and knee angles of the swing and stance legs. The obtained target joint position is then used to calculate the assistive torque in the low-level controller. Unlike conventional path-based control, the path-based trajectory control as disclosed herein promotes the synchronization between the swing and stance legs as it considers the movement of both legs. The present method provides sufficient walking assistance to the user or subject with a variable gait, i.e., variation in step length and time. This allows for variance of joint angle configuration at the starting phase of each new gait/step and supporst a variation in steplength throughout the course of gait assistance.

[0049] Disclosed herein are three types/kinds of gait trajectory: baseline trajectory, reference trajectory and target trajectory. The baseline trajectory may be a template obtained from a gait library with data collected from healthy subjects. The reference trajectory may be the reference joint angular profile which the exoskeleton is expected to move along. The reference trajectory matches different initial joint configurations and adapt to different step length. The reference trajectory may be updated based on the baseline trajectory and the realtime joint angles / joint state at the moment of starting a new step or a new swing phase. The target trajectory may be calculated by the trajectory control module, and provides the desired control command for the controller of the assistive exoskeleton.

[0050] The baseline gait trajectory may have the advantage of ensuring the comfort of the exoskeleton control, as it is collected from healthy subjects and has human-like characteristics. In various scenarios, the baseline trajectory is not directly used as the reference trajectory without any adjustment. Such may be the case, for example, when there is a large variance in the foot touchdown location and/or when the users (especially stroke patients) encounter external disturbance(s) and should adapt their gait pattern for balance. Adjustment may be made during the change of the initial joint angle for a next swing phase or next step. To improve the stability and safety of exoskeleton control, the generated trajectory may match the joint configuration in the start of a swing phase. In addition, the reference trajectory generation may include the capability of supporting the step length adjustment to improve the mobility of exoskeletons.

[0051] The DMP approach allows easy and flexible imitation or reshaping of a target trajectory through varying/modifying a few parameters and a group of Gaussian kernels which may be obtained/learned/trained by statistical methods. Additionally, online trajectory adjustment may be enabled by exerting a forcing term in response to dynamic changes of the external environment. A DMP framework is used to model the trajectories of the hip joints and knee joints of a user. The nonlinear dynamic system of DMP may be described as: where ris a time constant, α y and β y are positive constants. In some examples, τ, α y and β y may be respectively set as 1.0, 50.0, 12.5. y, y, y are joint angular position, velocity and acceleration, respectively, g is the goal position which y will converge to over time. fis a forcing term, which determines the shape of the trajectory, f may be expanded as follows: where ψ i are Gaussian basis function kernels, σi and ci are constants that determine the width and centers of the Gaussian basis function, ωi are kernel weights that are learned/trained based on the kinematic data of the baseline gait trajectory, r is a scaling coefficient. The combination of goffset and r is able to affect the generation of the reference trajectory, s is a phase state variable and goes from 1 to 0 for preventing or avoiding the time dependence of the nonlinear system. s may be defined as a first-order linear dynamics: (4)

[0052] The implementation of DMP modeling gait trajectory includes offline learning and online replaying stages. In the offline learning stage, the baseline trajectory is used as the training template to obtain the forcing term of DMP unit. The baseline gait trajectory has the advantage of ensuring the comfort of the exoskeleton control, as it is collected from healthy subjects and has human-like characteristic. The kernel weight ωi may be learned by using locally weighted regression technology, as below. wherein yt(p), yt(p), yt(p) are the sample of joint angular position, joint angular velocity and joint angular acceleration with respective to the baseline trajectory which is collected from healthy subject walking by motion capture system. The procedure of weights learning is conducted offline, with the respective values of the kernel weights embedded for use.

[0053] A reference trajectory is generated or updated when the user is starting a new step. To generate a new reference trajectory, three extra parameters, y(0), goffset, r are provided for computing iteratively during real-time control. wherein y(0) is the initial joint angle of the reference trajectory. y(0) is set as the joint angle in the starting swing phase to match the gap between the current joint position and the baseline trajectory, goffset describes the difference in the ending point between the baseline trajectory and the reference trajectory, and is related to the step length, which will be presented in subsequent section, r in equation (2) may be used to scale the range of joint angles.

[0054] Subjects walking on level ground wearing exoskeletons may have a relatively large variation in foot touchdown location in the ending of the swing phase. The different foot touchdown location causes large changes of starting joint angle in the next step. Thus, if the staring point of the reference trajectory is fixed and does not match the starting joint configuration on the initial swing phase, a jerk may be produced affecting the stability of the exoskeleton control, and may even lead to falling. Therefore, the DMP -based trajectory generator can smooth the gap between the starting joint angle and the reference trajectory.

Step Length Adjustment

[0055] In the present disclosure, while aligning the reference trajectory with the initial joint position, the DMP module provided a flexible manner to plan the reference gait trajectory allowing adjustment to the step length while maintaining the shape of the baseline trajectory. The step length describes the distance between the front and the back feet in the double phase, and is related to the hip and knee joint angles in the ending of the swing phase (the moment of heel strike).

[0056] One of the common joint configuration for lower limb exoskeletons includes two active actuators on hip and knee joints, and provides leg motion in the sagittal plane. With the assumption that the foot is regarded as a point during walking, referring to FIG. 9 based on the kinematics of the exoskeleton, the step length may be expressed as follows: wherein L t , L s are the length of the thigh links and shank links respectively, θ h sw , θ k sw , θ h s t, θ k s t are the ending hip and knee joint angle of the swing leg and the stance leg in a swing phase. [9957] According to equation (13), the step length may be determined by the ending hip and knee angle. It is noted that the knee joint is typically kept straight or substantially straight at the moment of heel strike during walking. Therefore, it is possible to achieve a modulation in step length by adjusting the ending hip angle and fixing the ending knee angle. Referring to FIG. 9, the following kinematic constraints is as follows: wherein H is the vertical distance of hip joint to the ground, and L is the required step length. S3 and S4 are the distance between hip and ankle of the front and back legs. With the inverse kinematics, the target ending hip angle may be obtained as follows: wherein are the ending hip angles of the stance leg and swing leg respectively. L s and L t are the length of shank links and thigh links respectively. With the ending angle, the goal Offset θ h 0 ffset for hip joint trajectory DMP may be calculated and then provided to equation (19) for online generation of the reference trajectory. According to the above embodiments, adjustment to the step length may be a continuous adjustment, i.e the step length may be any possible step length value determined based on the ending hip and knee angle.

[0058] In other embodiments, the step length may be varied by a discrete value, such as a scaling variable p. Therefore, the step length may be adjusted or varied by scaling the ending hip angle and fixing the ending knee joint angle as follows: where p is the scaling variable to adjust step length. are the ending hip and knee angles from the baseline trajectories, respectively. With the ending angle, the goal offset for the hip joint trajectory DMP may be calculated and then provided to equation (10) for the online generation of the reference trajectory.

Path-based Trajectory Control

[0059] With reference to FIGS. 3 and 4, the reference trajectory generated by the DMP module is employed to build a gait path consisting of hip and knee joint angles. Instead of directly configuring the assistive torque based on the path, the method searches the target point in hip-knee joint angle space based on a lookahead distance. As illustrated in FIG. 4, T {i, θi} represents the vector table to store the gait path, with element θi corresponding to the vector including a hip angle θh and a knee angle θk. Further, θ C is the vector corresponding to the current hip angle and current knee angle.

[9969] In examplery embodiments, the target position θd of an interation is presented as follows:

[9961] Step 1 : Update the vector table T {i, θi} using the reference trajectory obtained in the earlier section. The index io = 9 is initialized for a new step.

[9962] Step 2: From the vector table, search and determine the closest point θi* in the gait path which has the smallest distance to the current position. The vector of θi*-θ c may be regarded as the normal vector perpendicular to the gait path: (19) wherein ik-i < i* < M, ik-i is the index of the last closest point, and M is the length of vector table T {i, 0J. Searching the new closest point with starting from the last closest point may reduce the computation time and avoid the issue of the index jumping backward during the search.

[9963] Step 3: From the vector table, search and determine the target point θi** which has a distance D to the current position θ C . (29) wherein i* < i** < M, D is a predefined distance which affects the assistance level and the move speed of target point. In this example, D is set to the value of 7.5°.

[9964] Step 4: Update the target position θd and the searching index, and move again to Step 2 for a next iteration, unless the current gait cycle ends. [0065] The proposed path -based trajectory control method contributes several advantages to exoskeleton assistive control. Apart from providing movement assistance, the control method also guides leg motion to facilitate the inter-joint coordination between hip and knee joint. In contrast to methods which only provide robotic assistance in the normal direction, the method of the present disclosure may also produce the assistive force in the tangential direction. The assistive force along the trajectory has great significance for the subject with severe motor disorders. Moreover, the predefined lookahead distance plays an effective role of modulating the normal forces and tangential forces. When the user or subject’s leg(s) are close to the gait path, more assistive force is exerted in the tangential direction. If the subject’s legs deviate significantly from the reference trajectory, a larger assistive force is exerted in the normal direction to correct leg motion.

[0066] Further, in comparison to time-dependent trajectory tracking control which varies and controls the target joint angle with time, the present method enables users to have variations in step time as the target joint angle is time-independent or time-invariant rather than according to fixed time periods. Therefore, when a sudden external disturbance is present, the user can adapt the time of touchdown to maintain balance.

Stance and Swing Legs Synchronization

[0067] The present method combines the hip and knee angles/trajectories of both the swing legs and the stance legs, creating a four-dimensional vector table for the target point searching. It was found that the present method effectively synchronizes the swing leg movements with the stance leg movements, and offers a significant improvement over conventional exoskeleton controls that either ignore the stance leg or computes the swing and stance leg trajectories separately. Improving the synchronization between the swing and stance legs while allowing for non-identical walking patterns in the two legs enables the patient to train towards a more natural and more stable walking pattern. [0068] According the various embodiments of the present disclosure, the target point searching may be implemented in 4D joint space using the above searching approach. The method of searching with both leg joint angles is referred to herein as 4D path-based trajectory control. 4D path-based trajectory control considers the movement of both the swing and stance legs, and promotes synchronization of both legs. For ease of expression, embodiments of the method which searches for current position or target position in a single leg may be referred to as 2D path-based control. Embodiments of the present method that include searching for a current position or target position in both legs is referred to herein as 4D path-based control.

Low-level control with gravity compensation

[0069] FIG. 10 is a control schematic of a controller 120 of the gait trajectory system 100 according to various embodiments. Referring to FIG. 10, the target joint angles 0d are input into the low-level controller. The task of the low-level control loop of the lower limb exoskeleton is to provide sufficient assistance to guide or support the user’s legs to track the desired angular position. Impedance control may be used to provide compliant interaction between human and robot. To reduce the disturbance brought by the dynamics of the exoskeleton and the user’s legs, a feedforward controller with impedance control and gravity compensation is employed to correct trajectory tracking errors. With gravity compensation, compliance of the exoskeleton control is improved as gravity compensation permits the relatively low stiffness impedance control to provide sufficient assistive force. An examplary control equation is as follows: (23) where T r is a 2 X 1 vector containing the required joint torque. θ and θ are 2 X 1 vectors containing the actual joint angular position and velocity of the hip and knee joints. θd is the desired joint angle vector. K s and Bd are respectively the stiffness and damping of the impedance controller. G( θ) is the gravity compensation term.

Experiments and Results [0070] To verify the feasibility of the present method, a lower limb exoskeleton (PhoeniX) as illustrated in FIG. 11 was used to implement the proposed control. The lower limb exoskeleton includes two active actuators for the hip joints, two active actuators for the knee joints, two passively adjustable ankle joints, as well as an IMU module for measuring torso inclination angle. The lower limb exoskeleton also includes a CAN-bus communication port and robot SDK to obtain exoskeleton status information and send position/torque command to its microcontroller. The developed control method runs on the NVIDIA Jetson Nano board installed with Robot Operating System (ROS). A power regulator was mounted to get the power from the equipped battery, and foot pressure sensors were applied to detect the gait events.

Experimental Protocol

[0071] A focus of the expriment includes studying aspects of gait trajectory generation and assistive control strategies. To evaluate the method, the performance of DMP -based approach was first validated in simulation, thereafter level-ground walking experiments with subjects were conducted to demonstrate the assistive control. Five healthy subjects (two females and three males) who had never suffered from walking ability impairments were involved in the walking experiments, where they were required to walk overground with the exoskeleton in three different control conditions: unassisted control, 2D pathbased control and 4D path-based control. The subjects used a remote button to control the starting of the swing phase, and the ending of the swing phase was detected by kinematics data and foot pressure sensors. In the unassisted control condition, the exoskeleton was kept in zero-torque status, where the participants could move the legs by their own will as the exoskeleton joints were highly backdriven. To simulate the lower limb motor impairment, the passive torque generated by friction, inertial and gravity force was not counteracted by the exoskeleton, which would have the effect of altering the shape of subjects’ gait trajectory in the swing phase from the typical healthy shape. The unassisted control condition was used as the comparison with the other two assistive control conditions. In 2D and 4D path-based control conditions, the exoskeleton provided leg movement assistance by implementing the same control strategy proposed in previous sections, but the only difference between the two conditions was the latter searched the target trajectory in the 4D join space consisting of hip and knee angle of both swing and stance legs. In each session of the above three conditions, subjects walked straight about 50m wearing the exoskeleton with crutch aid at their preferred and comfortable pace. To assess the exoskeleton assistance, the trajectory rootmean-square (RMS) errors, step length, and step time in swing phase were measured during walking experiments.

Gait Trajectory Generation and Step Length Scaling

[0072] As stated previously, DMP was employed to learn and imitate the baseline traj ectory, and thereafter used to generate the reference trajectory for each step of the user based on the parameter setting. To verify the capability of DMP units learning trajectory, the trajectory fitting results of swing hip and knee joints with different number of kernels are shown in FIG. 12, where the starting point of reference trajectories was set as the first point of baseline trajectories, the scaling coefficient was set at 1.0, and the goal offset was set to 0°. Among the trajectories, the raw trajectories are the baseline trajectories of hip and knee, and the others are the corresponding trajectories generated by DMP units. It may be seen from FIG. 12 that the generated trajectories are able to imitate the baseline trajectory for both hip and knee joints. Increasing the number of Gaussian basis function kernels results in generated trajectories which follow the respective baseline trajectories better. This may be associated with a higher computational cost to the controller board, nonetheless, a good balance between the fitting accuracy and computation complexity can be obtained in experiments with the number of kernels set to 150.

[0073] FIG. 13 shows the simulation results of the trajectories generated with different conditions. The kernel weights were used to calculate the hip and knee joint reference trajectories of the swing leg with different trajectory parameters in simulation. FIG. 13(a) and FIG. 13(d) simulated the case where the initial joint angle in the beginning of the swing phase had a relatively large deviation from the first point of the baseline trajectory. In this situation, if the baseline trajectory is directly copied to the reference, the gap between the initial point and the reference trajectory may cause an obvious jerk and lead to unstable exoskeleton control. The DMP provided a smooth transition for the exoskeleton control, where the reference trajectory converged to the baseline trajectory from the starting joint angle. In the case of r setting (see FIG. 13(b) and FIG. 13(e)), there was more obvious change in the peak angle (range of motion) of knee joint rather than in hip joint. This characteristic may be applied to the adjustment of step height. The scaling parameter for both hip and knee joint was set to default 1.0 in the following experiments because adjusting step height was not the focus of this study.

[0074] In FIG. 13 (c) and FIG. 13 (f), the respective ending positions of the hip and knee joints was changed by the goal offset goffset. The DMP module was still able to allow the reference trajectory to successfully converge to the updated ending position while keeping the shape of reference trajectory consistent with the baseline trajectory. In the experiment, the goal offset of hip joint was used to adjust step length, and one of the knee joint was set to 0°.

[0075] Feasibility of using DMP to scale the step length was studied. One subject was asked to walk on level ground with the exoskeleton assistance in different step length. Considering the fact that the experiment did not focus on the continuous adjustment of step length, several discrete values of the scaling variable p were selected, and measured the actual step length in each step. It is noted that a continuous adjustment of step length as disclosed in earlier section may also be implemented according to other examples. The mean and standard deviation of step length over different scaling variable was presented in FIG. 14. The results show that the exoskeleton control with scaling the ending hip angle may indeed achieve the purpose of adjusting the step length. [0076] In summary, the implementation of DMP in combination with the several parameters enables the generated reference trajectory to adapt to the different initial joint configuration and provide a flexible gait pattern adjustment, while keeping the reference trajectory as similar as possible to the baseline trajectory. In the following walking experiments, since the purpose was to validate the exoskeleton control part, the scaling variable μ was fixed at 0.7, and the scaling coefficient r for hip and knee were both set to 1.0.

Evaluation of Exoskeleton Assistance

[0077] FIG. 15 shows the swing phase gait trajectory collected from one subject in different exoskeleton control conditions. The dashed line represents the reference trajectory generated by the DMP module, and the solid line represents the actual gait trajectory. There is slight difference among the reference trajectories, because the DMP module will adjust gait trajectory to match different initial joint position in the starting of the swing phase. In unassisted trials, the subjects’ movement has poor consistency and relatively large deviations from the reference trajectories as the exoskeleton did not provide movement assistance. In the conditions of 2D and 4D path-based control, the assistance provided by the exoskeleton can guide the leg movement toward the desired swing phase path, and make the shape of gait trajectory more consistency.

[0078] To quantitatively evaluate the effectiveness of exoskeleton assistive control, the trajectory root mean square (RMS) errors between the reference and actual movement were calculated, where the swing phase trajectory was normalized, interpolated and averaged over the duration of swing phase by considering the comparability. The mean trajectory RMS errors for all subjects and all control conditions are presented in FIG. 16. Among all subjects, the RMS error has a significant decline in both of path-based control trials. The mean RMS error for all subject was reduced from 16.97° in unassisted trials to 9.61° in 2D path control with p < 0.05, and to 10.17° in 4D path control with p < 0.05. It should be noted that there are no significant differences between 2D and 4D path control conditions. In addition, the altering of step length also indicates the improvement of the walking performance with the exoskeleton assistive control. The step length was relatively limited in the unassisted trials as the subjects’ legs were hindered by the passive torque from the exoskeleton. The movement assistance provided by path control made the mean step length (shown in Table 1) increase from 0.380m to 0.482m (2D path) and 0.460m (4D path).

Table 1: The mean step length for all subjects in different control conditions (unit: m)

Table 2: The mean step time for all subjects in different control conditions (unit: s)

Variance in Step Length and Time

[0079] As mentioned in previous sections, the aim of the proposed exoskeleton control is to provide movement assistance and guidance to reduce trajectory errors while still allowing subjects’ effort to adjust gait pattern (step length and time). To evaluate the capability, the step length and time were measured in the three control conditions, and their variance was used to indicate the freedom which subjects had to control leg movement during walking. The mean and standard deviation of the step length and time for individuals and all subject in different control conditions are respectively shown in Table 1 and Table 2. Compared with the unassisted condition, nearly all subjects (except S4) showed significant increases in the step length in 2D and 4D path control conditions, and the mean step length over all subjects was improved from 0.380m to 0.482m (2D path) and 0.460m (4D path). The standard deviations of the step length in the path control conditions were not obviously declined, compared with the unassisted control condition. It indicates that subjects under the exoskeleton assistance can also adjust gait step length as freely as the condition without assistance. The mean step time has a certain increment in 2D and 4D path control trials. It may be due to the change in individual preferences caused by the intervention of exoskeleton control. In order to reduce the influence brought by the difference in the mean step time, the step time variability using the ratio of standard deviation to mean was assessed. The average ratio over all subjects in 2D path and 4D path control trials are 17.61% and 20.26%, which are not smaller than the value of 11.99% in the unassisted trials. According to the variance in the step length and time, it can be validated that the proposed assistive control does not limit subjects’ control freedom for leg movement, but allows them to change the gait pattern by their own efforts.

Stance and Swing Legs Synchronization

[0080] In this study, the aim of 4D path-based control is to synchronize the movement of swing and stance legs. Different from 2D path-based control it searches the target point in the 4D space consisting of hip and knee angles on two sides of the lower limb. The phase of crossing-zero point of hip joint was used to characterize the synchronization between swing and stance legs. FIG. 17 presents the reference and actual hip trajectories on swing and stance legs in the 2D and 4D path-based control conditions. Hip joint trajectories of swing and stance legs were normalized, interpolated and averaged over the swing phase duration. From the reference trajectories, it may be seen that the swing hip crosses over zero point ahead of the stance hip, and there is a certain phase difference. However, the phases of crossing-zero points of swing and stance hip joints in the case of 2D pathbased control are very closed because the swing and stance legs of the exoskeleton are controlled independently. To quantitatively evaluate the synchronization between swing and stance legs, the phase difference between the crossing-zero point of both legs was measured and shown in FIG. 18. The mean phase difference for all subjects in 4D path control is 46.4%, and closed to the value of 39.2% in the reference trajectory. However, the value in 2D path-based control is -0.6%, which means the stance hip even crossed over zero point earlier than the swing hip in some steps. Therefore, compared with the conventional 2D path control, the trajectory control with searching target point in 4D space is actually able to facilitate the synchronization of legs movement as its target trajectory depends on the movement of the swing and stance legs together.

[0081] All examples described herein, whether of apparatus, methods, materials, or products, are presented for the purpose of illustration and to aid understanding, and are not intended to be limiting or exhaustive. Modifications may be made by one of ordinary skill in the art without departing from the scope of the invention as claimed.