Methods for stable movement of bipedal exoskeletons

The method stabilizes exoskeletons by optimizing leg velocity and center of mass trajectory, addressing instability during deceleration and acceleration, enabling effective rehabilitation without therapist intervention.

JP2025528958APending Publication Date: 2025-09-02WANDERCRAFT SAS
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
JP2025513613
Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
Priority Date
2022-09-06
Filing Date
2023-09-05
Publication Date
2025-09-02

AI Technical Summary

Technical Problem

Existing exoskeletons face instability during deceleration and acceleration phases, leading to tipping over and requiring excessive effort from therapists to maintain balance, limiting their adaptability to patient efforts and hindering effective rehabilitation.

Method used

A method for stable exoskeleton movement involving a control unit that estimates leg velocity, determines a center of mass trajectory through optimization, and generates commands to maintain balance by minimizing speed deviations and ensuring equilibrium during each step.

Benefits of technology

Ensures exoskeleton stability during patient locomotion, allowing therapists to reduce manual support and enabling more effective rehabilitation by accommodating patient efforts without compromising balance.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 2025528958000001_ABST
    Figure 2025528958000001_ABST
Patent Text Reader

Abstract

A method for movement of an exoskeleton (1) that accepts a human operator (2) to perform a step in which a first leg (30) of the exoskeleton (1) moves from a first control point to a second control point and a second leg (31) of the exoskeleton (1) is on the ground, the method comprising, in each iteration of a plurality of iterations performed during the step, the following method steps: - estimating the velocity of the first leg (30); - determining a trajectory of the center of mass of the exoskeleton (1) that ensures balance of the exoskeleton (1) and a movement speed setpoint that is closest to the estimated velocity; - determining a first command to be applied to the first leg (30) based on the setpoint; and - determining a second command to be applied to the second leg (31) based on the trajectory.
Need to check novelty before this filing date? Find Prior Art

Description

[Technical Field]

[0001] The present invention relates to the field of exoskeleton robotics, and more precisely to a method for stable movement of exoskeletons. [Background technology]

[0002] In recent years, walking assist devices called exoskeletons have emerged for people with significant motor disabilities, such as paraplegia. These are external robotic devices worn by an operator (human user) via a fastening system that links the exoskeleton's movements with the operator's own. Lower limb exoskeletons have several joints, usually at least the knees and hips, to replicate walking motion. Actuators move these joints, which in turn move the operator. An interface system allows the operator and / or physical therapist to give commands to the exoskeleton, and a control system translates these commands into commands for the actuators. Sensors are typically added to the device.

[0003] These exoskeletons are an advancement over wheelchairs because they allow the operator to return to their feet and walk. Furthermore, exoskeletons are not limited by wheels and can theoretically be developed to operate in most non-flat environments. Unlike legs, wheels cannot overcome large obstacles such as steps, stairs, or tall obstacles.

[0004] Rehabilitation is generally carried out with the help of a physiotherapist, who carries out a variety of activities to restore the limb muscles and, in particular, to get the brain used to giving electrical signals that correspond to consistent commands.

[0005] In this context, an exoskeleton can be used to make the patient's limbs follow a predetermined trajectory, while the patient, in cooperation with the exoskeleton's actuators, provides part of the mechanical effort, allowing the patient to train lost bodily functions, as described, for example, in International Application WO 2022 / 053761 A1. The degree of effort sharing can be adjusted by the physiotherapist depending on the patient's capabilities and the desired level of training.

[0006] However, unexpected deceleration or acceleration can cause the system to tip over. The patient has difficulty moving at the nominal speed, and the therapist must hold the exoskeleton to prevent it from tipping over. At the nominal speed, the exoskeleton always remains balanced. However, when the system's trajectory accelerates or decelerates, inverse dynamics calculations reveal the exoskeleton's instability.

[0007] This limitation prevents the exoskeleton from adapting freely to the patient's efforts. In addition, if the deceleration is too severe, the physical therapist must exert excessive effort to support the exoskeleton.

[0008] One solution consists in developing a methodology for rapid replanning of trajectories, as described, for example, in S. Caron and A. Kheddar, "Multi-Contact Walking Pattern Generation Based on Model Preview Control of 3D COM Accelerations," Humanoids, pp. 550-557, 2016, Mexico. This is a flexible approach that can deal with various experimental conditions and patient morphologies.

[0009] However, the replanning methodology may not find a balanced trajectory for the specific exoskeleton velocity generated by the patient when exerting effort, and therefore the physical therapist cannot encourage the patient to exert more effort during exercise in order to move faster and with less hesitation.

[0010] The aim of the present invention is to ensure the stability of the exoskeleton while guaranteeing freedom of movement for the patient. [Prior art documents] [Patent documents]

[0011] [Patent Document 1] WO2022 / 053761A1 [Non-patent literature]

[0012] [Non-Patent Document 1] S. Caron and A. Kheddar, Multi-Contact Walking Pattern Generation Based on Model Preview Control of 3D COM Accelerations, Humanoids, pp. 550-557, 2016, Mexico Summary of the Invention

[0013] To this end, the invention provides a method for stable movement of a bipedal exoskeleton, which accommodates a human operator to perform a step in which a first leg of the exoskeleton passes from a first support point on the ground to a second support point on the ground, the first leg being out of contact with the ground between the first and second support points, and the second leg of the exoskeleton remaining in contact with the ground during the step; The method includes, in each iteration of a plurality of iterations performed during the execution of the steps, execution by a control unit mounted on the exoskeleton of the following stages: - estimation of the speed of the first leg by a motion sensor connected to the control unit; - Determination of the locomotion speed setpoint and the trajectory of the exoskeleton center of mass from the estimated speed; The locomotion speed setpoint and the trajectory of the exoskeleton's center of mass are obtained from the solution of an optimization problem with the objective of minimizing the difference between the locomotion speed setpoint and the estimated speed, with the constraint that the trajectory ensures the exoskeleton is in equilibrium until the first leg reaches the second support point on the ground at the speed of the locomotion speed setpoint; - Determination of a first command to be applied to the first leg during the step from the movement speed setpoint; - determining a second command to be applied to the second leg from the determined trajectory; and -Activation of the first leg by a first command and activation of the second leg by a second command.

[0014] Thus, the human operator can set the movement, position and velocity of the first leg while keeping the second leg on the ground to stabilize the exoskeleton on its supporting foot at each moment of the step. The first command is determined so that the movement speed setpoint is as close as possible to the estimated speed without destabilizing the exoskeleton, and the second command is determined so that the exoskeleton can follow a predetermined trajectory of the center of mass.

[0015] Furthermore, the control unit on board the exoskeleton can calculate a stable trajectory of the center of mass over a time period sufficiently short compared to the duration of one step, allowing the control unit's control loop to generate exoskeleton commands in near real time that continuously adjust to the patient's efforts.

[0016] This method makes it possible to accommodate two main constraints: to best follow the speed of the patient's movement at each moment of the step and to respect the stability limits of the exoskeleton.

[0017] The invention therefore allows exoskeletons to be used for therapeutic purposes, more particularly in the context of rehabilitation of a patient's lower limbs, while ensuring the stability of the exoskeleton during the deceleration and acceleration phases of the patient's locomotion, so that the physiotherapist no longer has to hold the exoskeleton to prevent it from falling over.

[0018] Multiple iterations can be provided to move the exoskeleton from an initial position to a final position in successive steps.

[0019] If it is possible to determine the trajectory of the exoskeleton's center of mass that ensures balance of the exoskeleton until the first leg reaches the second ground support point at a movement speed setpoint equal to the estimated speed, it can be provided that the deviation is 0.

[0020] A travel speed set point may be provided that is determined from the estimated speed.

[0021] During an iteration, it is possible to provide for the determination of the travel speed set point to be carried out by bisection of the interval comprised between the estimated speed and the travel speed set point determined during the previous iteration.

[0022] The second command determines: - measuring the position of the center of mass of the exoskeleton and calculating the deviation by comparing the measured position with the trajectory; and generating position and velocity setpoints for one or more joints of the second leg from the calculated deviations; The method may be provided to include:

[0023] The generation of position and velocity setpoints for one or each joint of the second leg may also be provided to include solving a hierarchical optimization problem with the highest priority objective being to respect the position and velocity of the first leg.

[0024] Each iteration of the plurality of iterations may be provided to be repeated at a frequency of at least 250 Hz, preferably at least 500 Hz.

[0025] The present invention also provides a bipedal exoskeleton having a control unit configured to carry out the method according to the present invention.

[0026] The invention also provides a computer program product comprising instructions which, when the program is run on a computer, cause the computer to carry out the method according to the invention.

[0027] The present invention further provides a computer readable storage means having a computer program product stored thereon. [Brief explanation of the drawings]

[0028] Embodiments of the invention will now be presented by way of non-limiting example with the support of the drawings.

[0029] [Figure 1] 1 is a diagram of an exoskeleton in which the method according to the invention is implemented;

[0030] [Figure 2] FIG. 1 is a diagram of an architecture for implementing the method according to the invention.

[0031] [Figure 3] 1 is a flow chart illustrating a method according to the present invention.

[0032] [Figure 4] 1 is a graph showing the results of a simulation without implementing the method according to the invention, showing the number of times the exoskeleton maintained balance as a function of the value of the first leg's locomotion speed setpoint with respect to the nominal speed, and the success rate corresponding to the period during which the locomotion speed setpoint is maintained.

[0033] [Figure 5] 1 is a graph showing the results of a simulation of the implementation of the method according to the invention, showing the number of times the exoskeleton maintained balance as a function of the value of the first leg's locomotion speed setpoint with respect to the nominal speed, and the success rate corresponding to the period for which the locomotion speed setpoint is maintained.

[0034] [Figure 6]Graph showing a simulation of the variation of the nominal speed of the exoskeleton during an exoskeleton step (dotted line), the full set of locomotion speed set points of the exoskeleton that ensure its balance (vertical bars), and the evolution of the locomotion speed set points determined by the implementation of the method according to the invention by the control unit (solid line). DETAILED DESCRIPTION OF THE INVENTION

[0035] architecture

[0036] 1 and 2 show a bipedal exoskeleton 1 capable of implementing the stable locomotion method according to the invention.

[0037] The exoskeleton 1 is a bipedal robotic articulated mechanical system, actuated and controlled, with a first leg 30 and a second leg 31, capable of accommodating a human operator 2, each of whose lower limbs is connected (in particular by straps) to a leg of the exoskeleton 1, and can therefore be more or less a humanoid robot. The term "walking" is understood here to mean the setting in motion of the robotic device 1, and in fact is described as alternating support on the legs in a standing position to generate movement. The movement of the exoskeleton 1 consists of successive steps, each step lifting the foot of the first leg 30 from the ground and then placing it down again.

[0038] Hereinafter, the term first leg 30 refers to the swinging leg that passes from a first support point on the ground to a second support point on the ground without touching the ground between the first and second support points, and the term second leg 31 refers to the supporting leg, which is the leg that remains in contact with the ground during the step.

[0039] For example, in Figure 1, operator 2 takes a step in which swing leg 30 is lifted off the ground and swung forward while holding support leg 31 on the ground. For exoskeleton locomotion that involves successive steps, swing leg 30 and support leg 31 alternate from one step to another.

[0040] The exoskeleton 1 has multiple degrees of freedom, i.e. hinges that are deformable (typically rotationally), i.e. movable relative to each other, each of which is either "actuated" or "unactuated".

[0041] For example, the exoskeleton 1 may have 12 actuated and 6 non-actuated degrees of freedom.

[0042] An actuated degree of freedom refers to a joint with an actuator controlled by the control unit 11, i.e. this degree of freedom can be controlled and actuated. Conversely, a non-actuated degree of freedom refers to a joint without an actuator, i.e. this degree of freedom follows its own dynamics and the control unit 11 has no direct control over it (but in principle there is indirect control via other actuated degrees of freedom).

[0043] In this case, the exoskeleton 1 has a variable level of assistance, i.e. the operator 2 can actuate the degrees of freedom himself by his own movements, i.e. can orient the joints himself, for example to bend a knee, as long as the level of assistance allows. In this respect, the actuators are advantageously also sensors, in that they can report their position to the control unit 11 so that forced actuation of the degrees of freedom by the operator 2 can be detected.

[0044] Encoders 12 are attached to each joint of the exoskeleton 1, for example according to the embodiment described in patent application FR 3,113,829 A1, to measure the position and velocity of each of these joints and to obtain the measured velocity of the swinging legs 30.

[0045] Control unit 11 refers to a computing device, e.g., a processor, on board the exoskeleton 1 adapted to process instructions and generate intended commands for the various actuators. These actuators can be electric, hydraulic, etc.

[0046] This control unit 11 can also be connected to a remote server 15 comprising data processing means 16 and data storage means 17 for intermittently or repeatedly exchanging information during the steps of the exoskeleton 1 .

[0047] The control unit 11 is configured to implement the method according to the invention.

[0048] The present application is not limited to any bipedal exoskeleton structure 1, and examples described in applications WO2015 / 140352A1 and WO2015 / 140353A2 are used.

[0049] Therefore, preferably, in accordance with these applications, the exoskeleton 1 has a foot structure on each leg with a support surface on which the foot of the supporting leg 31 of the person wearing the exoskeleton can rest.

[0050] The support surface is substantially planar in shape and has a substantially curved edge at one of its ends such that the support surface defines a non-actuation degree of freedom. Also provided is a force sensor disposed on the support surface. The sensor also enables obtaining a torque of an external force applied to the support surface by the ground.

[0051] However, one skilled in the art can adapt the method to any other mechanical architecture.

[0052] In known methods, the exoskeleton can be modeled in a simplified way by the linear inverted pendulum (LIP) model, in which the acceleration of the center of mass is (outside 1) TIFF2025528958000002.tif6161 is given by the following formula:

number

[0053] Due to this simplification, the method according to the invention can be repeatedly executed between steps on the control unit 11 provided on the exoskeleton 1 .

[0054] A method for stable locomotion of a bipedal exoskeleton 1 that accepts a human operator 2 performing steps

[0055] The method cleverly separates the swinging legs 30 from the support legs 31 of the exoskeleton 1 during steps actuated by the operator 2 along a predefined trajectory, ensuring stability of the exoskeleton during the steps.

[0056] The embodiment of the method shown in FIG. 3 is carried out according to the following stages.

[0057] During the first stage E0, the operator 2 performs a step during which the swinging leg 30 of the exoskeleton passes from a first support point on the ground to a second support point on the ground, the swinging leg 30 not being in contact with the ground between the first support point and the second support point, and during the step the supporting leg 31 of the exoskeleton remains in contact with the ground.

[0058] Thus, during the step, the swing leg 30 follows a first trajectory determined by the control unit 11 according to the embodiment described in patent application FR 3,113,829 A1.

[0059] The trajectory of the swinging leg 30 is derived from the stable nominal trajectory of both legs of the exoskeleton 1 .

[0060] In each of the multiple iterations carried out during the step, the control unit 11 on board the exoskeleton 1 executes the following stages:

[0061] In the stage E1, the encoder 12 connected to the control unit 11 estimates the velocity Ve of the swing leg 30.

[0062] In stage E2, the control unit 11 determines from the estimated velocity Ve a locomotion speed set point Vd and a trajectory of the center of mass c of the exoskeleton 1, the locomotion speed set point Vd and the trajectory of the center of mass c of the exoskeleton 1 resulting from the solution of an optimization problem whose objective is to minimize the deviation between the locomotion speed set point Vd and the estimated velocity Ve, with the constraint that the trajectory ensures the balance of the exoskeleton 1 until the swinging leg 30 reaches a second support point on the ground at a speed of the locomotion speed set point Vd.

[0063] The trajectory of the center of mass c is obtained by calculating the trajectory of the center of pressure p of the exoskeleton 1. Indeed, according to the inverted pendulum equation, for a given acceleration (corresponding, for example, to a forward tilt of the torso of the operator 2), the center of mass c is in front of the center of pressure p so that they move away from each other. Therefore, the center of pressure p can be selected as the control variable that allows the exoskeleton 1 to be moved at the movement speed setpoint Vd.

[0064] The conditions verified by the trajectory to ensure the balance of the exoskeleton 11 until the swing leg 30 reaches the second ground support point are as follows: - C1: The orbit of the center of mass c and the center of pressure p is given by the equation

number

[0065] Controlling the swing leg 30 at a movement speed set point Vd different from the estimated speed Ve causes the operator 2 to move faster or slower than the operator desires when performing steps, which has the effect of assisting the operator 2 and therefore reduces the effectiveness of rehabilitation. Indeed, when the exoskeleton assists movement, the operator 2 is no longer in a position to provide force to move the swing leg 30.

[0066] In this way, the movement set point is determined from the estimated velocity Ve, and in order to minimize the influence of the control of the exoskeleton 1 on the swinging leg 30 so as not to impair the effectiveness of the rehabilitation, it is preferable that the movement velocity set point Vd of the swinging leg 30 be as close as possible to the estimated velocity Ve.

[0067] According to one embodiment, the travel speed setpoint Vd and the trajectory are obtained by performing online optimization, i.e., the online optimization is performed at each iteration of a number of iterations performed during the step, for example, by a quadratic programming (QP) bisection algorithm as follows:

[0068] A two-level optimization problem is formulated below: The upper level objective is minimization of the difference between the travel speed setpoint Vd and the estimated speed Ve, which corresponds to the speed desired by operator 2. The lower level constraint is the existence of a trajectory of the center of mass c at the optimal speed of the upper level objective, respecting conditions C1 to C4.

[0069] x 0 = x(t), x f and T t Let be the optimization parameters corresponding to the current servo control point of the center of mass c, the end point of the nominal trajectory of the center of mass c, and the estimated time inversely proportional to the estimated velocity Ve, respectively.

number

number

[0070] This optimization problem is actually a two-level optimization problem: the constraints of the higher-level problem are themselves solutions to the optimization problem. In this case, the lower-level optimization problem can be formulated as a quadratic problem.

[0071] The solution of this two-level optimization problem, the search for the trajectory of the center of mass c, the solution of the lower level problem whose movement speed set point Vd is closest to the estimated speed Ve, and the determination of the movement speed set point Vd during the multiple iterations performed during the step are performed by a dichotomous method.

[0072] The dichotomy is performed over an initial interval between the velocities determined in the previous iteration, for which the iteration guarantees the existence of a trajectory of the center of mass c with respect to C1 to C4, and the estimated velocities Ve, for which the existence of such a trajectory is not guaranteed. Thus, this initial interval always contains at least one trajectory corresponding to the trajectory of the previous iteration.

[0073] The initial interval is recursively replaced by several reduced intervals over multiple iterations as follows: - the average is determined between the minimum and maximum values ​​of the reduced interval; - The trajectory of the center of mass c and center of pressure p of the exoskeleton 1 is determined, and the trajectory moves at a movement speed setpoint equal to the average; - If the trajectory respects conditions C1 to C4, the reduced interval is replaced by the first subinterval between the mean and the boundary of the reduced interval that is closest to the estimated velocity Ve. Otherwise, the reduced interval is replaced by the second subinterval between the mean and the boundary of the reduced interval that is farthest from the estimated velocity Ve.

[0074] The stages are then repeated over a reduced interval corresponding to the first sub-interval or the second sub-interval until the length of the reduced interval is small enough to obtain an acceptable estimate of the optimum speed.

[0075] As a result, this solution simultaneously provides an optimal velocity (according to the distance criterion with the estimated velocity Ve) and a trajectory of the center of mass that respects C1 to C4 at this optimal velocity.

[0076] This search method divides the search interval by 2 at each iteration of the bisection and calculates the 2 for the high-level objective. N This ensures a low algorithmic complexity and therefore the speed of the method. The applicant finds sufficient accuracy for applications using N=12.

[0077] If the found optimal moving speed Vd is equal to the estimated speed Ve, the deviation to be minimized is 0 and the optimization problem is solved from the first iteration of the bisection method.

[0078] Otherwise, the bisection continues until N=12 or until the interval length falls below a threshold D (typically about 1e-3 to 1e-6).

[0079] Such an embodiment allows the exoskeleton to maintain balance over a wider range of speeds. Indeed, compared to Figure 4, Figure 5 shows that this method provides satisfactory exoskeleton stability (greater than 0.5) over a wider range of swing leg 30 movement speeds.

[0080] In particular, the effect of this method is to increasingly limit the speed required by the patient as the swinging leg 30 approaches the second support point, in order to ensure balance of the exoskeleton. Indeed, if the operator periodically accelerates and decelerates the swinging leg 30 throughout the step, as shown in Figure 6, implementation of this method makes it possible to reduce the range of movement speeds (see solid curve) when the swinging leg 30 approaches the second contact point corresponding to the end of the step, in order to prioritize balance of the exoskeleton 1, despite the movement of the operator 2 (see dotted curve).

[0081] The operator can therefore perform uncertain movements without the risk of falling, and rehabilitation can therefore be carried out as soon as possible after an accident without a physiotherapist having to hold the exoskeleton 1, allowing the operator 2 to recover the use of the limb more quickly.

[0082] According to another embodiment, a set of trajectories that guarantees balance can be generated offline, before the exoskeleton is started to move by the patient, by exhaustively searching for a solution to an optimization problem (for example, the optimization problem shown above), for a sufficiently large set of possible estimated velocities V, as well as multiple parameters, which can be compressed, if possible, by a learning model, for example a neural network, and stored in the memory of the exoskeleton. This set can then be evaluated online, thus finding, at each iteration of multiple iterations carried out during the steps, a trajectory of the center of mass c, possibly other auxiliary quantities, and possibly other criteria that respects the constraints C1 to C4 and other constraints and minimizes the difference between the movement velocity Vd and the estimated velocity V.

[0083] The neural network may for example be of the feedforward neural network (FNN) type.

[0084] A number of parameters useful for evaluating such a set of pre-calculated trajectories include the estimated velocity Ve, the phase variable, i.e. the variable that makes it possible to estimate the advance of the swinging leg 30 during the step, the current position of the center of mass around which the center of mass c of the exoskeleton 1 is controlled, and the final state of the center of mass obtained at stage E0.

[0085] This set of trajectories, optionally compressed by learning, is loaded by the control unit 11 from its internal storage space or by connecting to the server 15 via the network 20 .

[0086] The control unit 11 can then use the neural network for each of several iterations during the step to determine a trajectory that ensures balance of the exoskeleton 1 as a function of the estimated velocity Ve.

[0087] Therefore, a movement speed setpoint Vd, as close as possible to the estimated speed Ve, is calculated as a function of the trajectory generated by the neural network.

[0088] During stage E3, the control unit 11 determines from the movement speed setpoint Vd a first command to be applied to the swing leg 30 during the step. The result of the first command is to modify the speed of the swing leg 30 and therefore the movement initially imposed by the user if the movement speed setpoint differs from the estimated speed.

[0089] During a step E4, the control unit 11 determines, from the determined trajectory, a second command to be applied to the support leg 31.

[0090] The second command to be applied to the support leg 31 has the effect of moving the center of pressure p to impose a desired trajectory on the center of mass c and thus ensure stability. The determination of the second command to be applied to the support leg 31 can be an admittance command including: - measuring the position of the center of mass of the exoskeleton 1 and calculating the deviation by comparing the measured position with the trajectory; and - generating position and velocity setpoints for one or more joints of the support leg 31 based on the calculated deviations.

[0091] Admittance commands are described in detail in published patent application FR 3,117,393 A1.

[0092] The generation of position and velocity setpoints for one or each joint of the swing leg 31 involves the solution of a hierarchical optimization problem whose highest priority objective is to respect the position and velocity of the swing leg 30 .

[0093] The solution of the hierarchical optimization problem consists of determining the position and velocity setpoints for one or each joint of the support leg 31 that satisfy a list of objectives ranked in order of priority, the first objective in the list here corresponding to the objective with the highest priority.

[0094] An example of a ranked list of objectives is: - Level 1, according to the position and movement speed setpoint Vd of the swing leg 30; - Level 2, according to the acceleration of the center of mass c of the exoskeleton 1 as described in patent application FR 3,117,393 A1; - Level 3, following the roll and pitch movements of the pelvis; and - Level 4, following the joint configuration of Exoskeleton 1, standing and stopping during steps.

[0095] This allows the operator 2 to make rapid movements with the swing legs 30 or movements away from the direction of movement, for example sideways, without risking compromising the stability of the centre of mass.

[0096] During stage E5, the control unit 11 actuates the swing leg 30 according to a first command and actuates the support leg 31 according to a second command.

[0097] Each iteration of the plurality of iterations is repeated at a frequency of at least 250 Hz, preferably at least 500 Hz, for example 1 kHz.

[0098] The above method can be repeated for multiple iterations to move the exoskeleton 1 from an initial position to a final position through successive steps.

[0099] Storage media and computer program products

[0100] The invention also provides a computer program product comprising instructions which, when executed on a computer, cause the computer to carry out the method according to the invention.

[0101] The present invention further provides a computer readable storage means for storing a computer program product.

Claims

1. 1. A method for stable movement of a bipedal exoskeleton, comprising: receiving a human operator to perform a step in which a first leg of an exoskeleton passes from a first support point on a ground surface to a second support point on said ground surface, said first leg being out of contact with said ground surface between said first support point and said second support point; and during said step, a second leg of said exoskeleton remaining in contact with said ground surface; The method comprises, in each iteration of a plurality of iterations performed during the steps, performing the following stages by a control unit mounted on the exoskeleton: - estimation of the speed of said first leg by means of a motion sensor connected to said control unit; - determining the locomotion speed setpoint and the trajectory of the center of mass of the exoskeleton from the estimated speed; the locomotion speed setpoint and the trajectory of the center of mass of the exoskeleton are obtained from the solution of an optimization problem with the objective of minimizing the difference between the locomotion speed setpoint and the estimated speed, with the constraint that the trajectory ensures the balance of the exoskeleton until the first leg reaches the second support point on the ground at a speed of the locomotion speed setpoint; - determining, from said locomotion speed setpoint, a first command to be applied to said first leg during said step; - determining, from said determined trajectory, a second command to be applied to said second leg; and - actuation of the first leg according to the first command and actuation of the second leg according to the second command; including the execution of method.

2. repeating the plurality of iterations to move the exoskeleton from an initial position to a final position in successive steps. The method of claim 1.

3. the determination between iterations of the travel speed set point is made by bisection of the interval between the estimated speed and the travel speed set point determined during the previous iteration; The method of claim 2.

4. The determination of the second command is: - measuring the position of the center of mass of the exoskeleton and calculating the deviation by comparing the measured position with the trajectory; and generating position and velocity setpoints for one or more joints of the second leg from the calculated deviations; The method of claim 1.

5. generating the position setpoint and the velocity setpoint for the or each joint of the second leg includes solving a hierarchical optimization problem with a top priority objective of respecting the position and the velocity of the first leg; The method of claim 4.

6. Each iteration of the plurality of iterations is repeated at a frequency of at least 250 Hz, preferably at least 500 Hz; The method of claim 1.

7. A bipedal exoskeleton having a control unit configured to carry out the method of any one of claims 1 to 6.

8. A computer program product comprising instructions that, when the program is run on a computer, cause the computer to carry out the method of any one of claims 1 to 6.

9. 9. A computer readable storage means having stored thereon the computer program product according to claim 8.

Citation Information

Patent Citations

  • Method for moving an exoskeleton

    WO2022053761A1