A method, device and equipment for planning motion trajectory of an external limb robot
By calculating the balanced foot-to-fall and foot-to-fall steering compensation of the outer limb robot, and determining the final foot-to-fall and movement trajectory, the problem that the outer limb robot is difficult to adapt to the wearer's movement direction and speed is solved, and higher mobility flexibility is achieved.
Patent Information
- Application Number
- CN202410971389.8
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2024-07-18
- Publication Date
- 2025-06-06
- Estimated Expiration
- 2044-07-18
AI Technical Summary
Existing external body robots are difficult to adapt to the wearer's movement direction and speed, resulting in limited mobility flexibility.
By obtaining the current overall position information, speed information, swing phase and human-computer interaction position information of the outer limb robot, the balanced footfall and footfall steering compensation of the mechanical legs are calculated, and the final footfall and motion trajectory are determined.
It realizes that the outer body robot can move quickly with the wearer and adapt to the wearer's flexible mobility in time, solving the problem of adaptation of movement direction and speed.
Smart Images

Figure CN118906047B_ABST
Abstract
Description
Technical Field
[0001] The present application belongs to the technical field of load-bearing walking robots, and in particular, relates to a motion trajectory planning method, device and equipment for an external limb robot. Background Art
[0002] Exo-limb robots are new load-bearing walking robots that can improve the wearer's load-bearing walking ability and are widely used in daily life, disaster relief and other fields where heavy objects are carried. However, how to plan the movement trajectory of the exo-limb robot's foot end and enable the wearer to walk flexibly is an important issue facing load-bearing walking robots.
[0003] At present, there are two known methods for foot motion planning of exo-limb robots: “based on human-machine interaction force” and “based on human gait”.
[0004] Among them, the "human-machine interaction force-based" method identifies the wearer's movement intention by calculating the magnitude of the human-machine interaction force in the front-to-back direction, and plans the robot's foot movement trajectory according to the wearer's movement intention. However, the data of human-machine interaction force usually changes dramatically and contains noise, and needs to be low-pass filtered in advance, which prolongs the time for the robot to switch movement speed. When accelerating, decelerating, and stopping, it is difficult to adapt to the wearer's movement speed, which limits the wearer's flexibility.
[0005] The "human gait-based" method uses an inertial measurement unit to estimate the walking phase and ankle position of the wearer's legs, and generates the target position of the mechanical leg landing point in a mapping manner. However, this method only focuses on the wearer's walking in the sagittal plane, so that the robot can only move forward, and fails to achieve the robot's sideways walking, backward, turning on the spot, etc. It is difficult to adapt to the wearer's movement direction, limiting the wearer's mobility. Summary of the invention
[0006] The embodiments of the present application provide a motion trajectory planning method, device, equipment and storage medium for an exo-limb robot, which can solve the problem that the existing exo-limb robot cannot adapt to the wearer's movement direction and speed when following the wearer.
[0007] In a first aspect, an embodiment of the present application provides a motion trajectory planning method for an external limb robot, comprising:
[0008] When the mechanical legs of the external limb robot are in a swinging state, obtaining current overall position information, current speed information, current swing phase, and current interaction position information of the external limb robot at the human-machine interaction point;
[0009] According to the current overall position information, current speed information, current swing phase of the external limb robot, and the current interactive position information of the human-machine interaction point, respectively calculate the balance landing point and the landing point steering compensation of the mechanical leg in the swinging state;
[0010] Calculating a final landing point of the mechanical leg in the swinging state according to the balance landing point of the mechanical leg in the swinging state and the landing point steering compensation;
[0011] The motion trajectory of the mechanical leg in the swinging state is calculated based on the final landing point of the mechanical leg in the swinging state and the current swinging phase of the external limb robot.
[0012] In a possible implementation of the first aspect, the calculation of the balance landing point of the mechanical leg in the swinging state according to the current overall position information, current speed information, current swing phase of the external limb robot, and the current interaction position information at the human-machine interaction point includes:
[0013] Determining a first foothold according to a current hip joint position in the current overall position information of the external limb robot;
[0014] Determine a default landing point according to the current linear speed, the current swing phase and the first landing point in the current speed information of the external limb robot;
[0015] Calculate the movement speed of the wearer according to the current linear speed and the current angular speed in the current speed information of the external limb robot, the current center of mass position in the current overall position information of the external limb robot, and the interaction point position in the current interaction position information at the human-machine interaction location;
[0016] The balance landing point of the mechanical leg in the swinging state is calculated based on the default landing point and the movement speed of the wearer.
[0017] In a possible implementation of the first aspect, the movement speed of the wearer is calculated based on the current linear speed and the current angular speed in the current speed information of the external limb robot, the current center of mass position in the current overall position information of the external limb robot, and the interaction point position in the current interaction position information at the human-machine interaction point, including:
[0018] Determine the position vector of the human-machine interaction location according to the current center of mass position in the current overall position information of the external limb robot and the interaction point position in the current interaction position information of the human-machine interaction location;
[0019] According to the current linear velocity and current angular velocity in the current velocity information of the external limb robot and the position vector at the human-machine interaction point, the movement velocity v of the wearer is calculated according to the following formula: hyman :
[0020] v human =v+w×r CH ;
[0021] Wherein, v is the current linear velocity, w is the current angular velocity, and r is CH is the position vector of the human-computer interaction point.
[0022] In a possible implementation of the first aspect, the calculating of the foothold steering compensation of the mechanical leg in the swinging state according to the current overall position information and the current speed information of the external limb robot and the current interaction position information of the human-machine interaction point includes:
[0023] Calculate the expected speed of the exo-limb robot in the tangential direction according to the current center of mass position in the current overall position information of the exo-limb robot and the interaction point position in the current interaction position information at the human-machine interaction location;
[0024] The foothold steering compensation of the mechanical leg in the swinging state is calculated based on the expected speed of the external limb robot in the tangential direction and the current linear speed in the current speed information of the external limb robot.
[0025] In a possible implementation of the first aspect, the expected speed of the exo-limb robot in the tangential direction is calculated according to the current center of mass position in the current overall position information of the exo-limb robot and the interaction point position in the current interaction position information at the human-machine interaction point, including:
[0026] Determine the position vector of the human-machine interaction location according to the current center of mass position in the current overall position information of the external limb robot and the interaction point position in the current interaction position information of the human-machine interaction location;
[0027] Transforming the position vector of the human-computer interaction point to obtain the position vector of the human-computer interaction point in a centroid coordinate system;
[0028] Calculate the expected center of mass position of the external limb robot based on the acquired current posture information of the external limb robot and the position vector of the human-machine interaction in the center of mass coordinate system;
[0029] According to the expected center of mass position and the current center of mass position of the exo-limb robot, the expected speed of the exo-limb robot in the tangential direction is calculated.
[0030] In a possible implementation of the first aspect, calculating the foothold steering compensation of the mechanical leg in the swinging state according to the expected speed of the exo-limb robot in the tangential direction and the current linear speed in the current speed information of the exo-limb robot includes:
[0031] According to the expected speed of the external limb robot in the tangential direction and the current linear speed in the current speed information of the external limb robot, the foothold steering compensation σr of the mechanical leg in the swinging state is calculated according to the following formula: y :
[0032]
[0033] Wherein, a is the time constant, g is the acceleration due to gravity, h is the preset height of the center of mass of the exo-limb robot, and T st is the preset support period, is the linear velocity of the center of mass of the mechanical leg of the exo-limb robot in a swinging state at the moment when it starts to swing, is the expected speed of the exolimb robot in the tangential direction.
[0034] In a possible implementation of the first aspect, when the mechanical legs of the exo-limb robot are in a supporting state, obtaining a current heading angle of the exo-limb robot;
[0035] Calculating the desired heading angle and the desired heading angular velocity of the exo-limb robot according to the current heading angle of the exo-limb robot;
[0036] According to the expected heading angle and expected heading angular velocity of the external limb robot, the foot-end force corresponding to the mechanical leg of the external limb robot in a supporting state is predicted through a model prediction controller, wherein the model prediction controller includes the corresponding relationship between the expected heading angle and expected heading angular velocity of the external limb robot and the foot-end force.
[0037] In a second aspect, an embodiment of the present application provides a motion trajectory planning device for an external limb robot, comprising:
[0038] A data acquisition module, used for acquiring current overall position information, current speed information, current swing phase, and current interaction position information of the external limb robot when the mechanical legs of the external limb robot are in a swinging state;
[0039] A calculation module, for calculating the balance landing point and the landing point steering compensation of the mechanical leg in the swinging state according to the current overall position information, current speed information, current swing phase of the external limb robot, and the current interaction position information of the human-machine interaction point;
[0040] A final landing point determination module, used for calculating the final landing point of the mechanical leg in the swinging state according to the balance landing point and the landing point steering compensation of the mechanical leg in the swinging state;
[0041] The motion trajectory determination module is used to calculate the motion trajectory of the mechanical leg in the swinging state according to the final landing point of the mechanical leg in the swinging state and the current swinging phase of the external limb robot.
[0042] In a third aspect, an embodiment of the present application provides a motion trajectory planning device for an external limb robot, comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the processor implements any of the methods described above when executing the computer program.
[0043] In a fourth aspect, an embodiment of the present application provides a computer-readable storage medium, wherein the computer-readable storage medium stores a computer program, and when the computer program is executed by a processor, it implements any of the methods described above.
[0044] In a fifth aspect, an embodiment of the present application provides a computer program product, which, when executed on a terminal device, enables the terminal device to execute any of the methods described above.
[0045] Compared with the prior art, the embodiments of the present application have the following beneficial effects: by obtaining the current overall position information, current speed information, current swing phase, and current interactive position information of the external limb robot at the human-machine interaction point when the mechanical legs of the external limb robot are in a swinging state, and calculating the balance landing point and landing point steering compensation of the mechanical legs in the swinging state according to the current overall position information, current speed information, current swing phase, and current interactive position information of the external limb robot, respectively; since the current overall position information, current speed information, current swing phase, and current interactive position information have less noise and can be obtained in real time, the calculated balance landing point has higher accuracy and faster speed; The balance landing point and landing point steering compensation of the mechanical leg in the swinging state are calculated, and the final landing point of the mechanical leg in the swinging state is added with the landing point steering compensation, taking the wearer's steering into consideration, so that the final landing point of the external limb robot can follow the wearer to turn, and according to the final landing point of the mechanical leg in the swinging state and the current swing phase of the external limb robot, the motion trajectory of the mechanical leg in the swinging state is calculated, so that the external limb robot can finally follow the wearer's movement direction for fast movement and adapt to the wearer's flexible mobility in time, thereby solving the problem that the existing external limb robot cannot adapt to the wearer's movement direction and speed when moving with the wearer. BRIEF DESCRIPTION OF THE DRAWINGS
[0046] In order to more clearly illustrate the technical solutions in the embodiments of the present application, the drawings required for use in the embodiments or the description of the prior art will be briefly introduced below. Obviously, the drawings described below are only some embodiments of the present application. For ordinary technicians in this field, other drawings can be obtained based on these drawings without paying any creative work.
[0047] Figure 1 It is a flow chart of a motion trajectory planning method of an external limb robot provided in one embodiment of the present application;
[0048] Figure 2 is a flow chart of an omnidirectional walking control method of an external limb robot provided in another embodiment of the present application;
[0049] Figure 3 is a schematic diagram of the relationship between the movement speed of a wearer and the movement speed of an external limb robot provided by another embodiment of the present application;
[0050] Figure 4 is a schematic structural diagram of the positional relationship between a wearer and an external limb robot provided by another embodiment of the present application;
[0051] Figure 5 is a schematic diagram of the principle of a linear inverted pendulum model provided by another embodiment of the present application;
[0052] Figure 6 is a schematic diagram of a mechanical leg swing trajectory of an exo-limb robot provided in another embodiment of the present application;
[0053] Figure 7 is a schematic diagram of the motion trajectory and motion speed of an external limb robot provided by another embodiment of the present application;
[0054] Figure 8 is a schematic diagram of the center of mass and foothold trajectory of an exo-limb robot provided in another embodiment of the present application;
[0055] Fig. 9 is a schematic diagram of the motion trajectory of an exo-limb robot provided by another embodiment of the present application when it moves with the wearer;
[0056] Fig.10 It is a structural schematic diagram of a motion trajectory planning device for an external limb robot provided in another embodiment of the present application. DETAILED DESCRIPTION
[0057] In the following description, specific details such as specific system structures, technologies, etc. are provided for the purpose of illustration rather than limitation, so as to provide a thorough understanding of the embodiments of the present application. However, it should be clear to those skilled in the art that the present application may also be implemented in other embodiments without these specific details. In other cases, detailed descriptions of well-known systems, devices, circuits, and methods are omitted to prevent unnecessary details from obstructing the description of the present application.
[0058] It should be understood that when used in the present specification and the appended claims, the term "comprising" indicates the presence of described features, wholes, steps, operations, elements and / or components, but does not exclude the presence or addition of one or more other features, wholes, steps, operations, elements, components and / or combinations thereof.
[0059] It should also be understood that the term “and / or” used in the specification and appended claims refers to any and all possible combinations of one or more of the associated listed items, and includes these combinations.
[0060] As used in the specification and appended claims of this application, the term "if" can be interpreted as "when" or "uponce" or "in response to determining" or "in response to detecting", depending on the context. Similarly, the phrase "if it is determined" or "if [described condition or event] is detected" can be interpreted as meaning "uponce it is determined" or "in response to determining" or "uponce [described condition or event] is detected" or "in response to detecting [described condition or event]", depending on the context.
[0061] In addition, in the description of the present application specification and the appended claims, the terms "first", "second", "third", etc. are only used to distinguish the descriptions and cannot be understood as indicating or implying relative importance.
[0062] References to "one embodiment" or "some embodiments" etc. described in the specification of this application mean that one or more embodiments of the present application include specific features, structures or characteristics described in conjunction with the embodiment. Therefore, the statements "in one embodiment", "in some embodiments", "in some other embodiments", "in some other embodiments", etc. that appear in different places in this specification do not necessarily refer to the same embodiment, but mean "one or more but not all embodiments", unless otherwise specifically emphasized in other ways. The terms "including", "comprising", "having" and their variations all mean "including but not limited to", unless otherwise specifically emphasized in other ways.
[0063] The Centaur load-bearing system is an exo-limb robot. Exo-limb robots are new load-bearing walking robots that can improve the wearer's load-bearing walking ability. The exo-limb robot can transfer the weight of the load to the ground through mechanical legs, and has a movement space that is independent of the wearer's limb movement, which can reduce interference and restrictions on the wearer's limb movement. How to plan the foot movement trajectory of the exo-limb robot so that the exo-limb robot can follow the wearer to turn, move forward, backward, sideways and change speed to achieve corresponding flexible walking is an important issue facing the exo-limb robot.
[0064] The present application embodiment provides a motion trajectory planning method for an external limb robot, see Figure 1 , Figure 1 1 is a flow chart of a motion trajectory planning method for an external limb robot provided in one embodiment of the present application, comprising:
[0065] Step S11, if the mechanical legs of the external limb robot are in a swinging state, obtaining the current overall position information, current speed information, current swing phase, and current interaction position information of the external limb robot at the human-machine interaction point;
[0066] Step S12, according to the current overall position information, current speed information, current swing phase of the external limb robot, and the current interactive position information at the human-machine interaction point, respectively calculate the balance landing point and landing point steering compensation of the mechanical leg in the swinging state;
[0067] Step S13, calculating the final landing point of the mechanical leg in the swinging state according to the balance landing point and the landing point steering compensation of the mechanical leg in the swinging state;
[0068] Step S14, calculating the motion trajectory of the mechanical leg in the swinging state according to the final landing point of the mechanical leg in the swinging state and the current swinging phase of the external limb robot.
[0069] Specifically, refer to Figure 3 , Figure 3 FIG. 1 is a schematic diagram showing the relationship between the movement speed of a wearer and the movement speed of an external limb robot provided by another embodiment of the present application. The external limb robot is composed of three parts: a backpack, a torso, and mechanical legs. Figure 2 , Figure 2 This is a flow chart of an omnidirectional walking control method of an exo-limb robot provided by another embodiment of the present application. According to the contact between the mechanical legs of the exo-limb robot and the ground, the mechanical legs are divided into swing legs and support legs. The swing legs are the mechanical legs of the exo-limb robot in a swinging state, and the support legs are the mechanical legs of the exo-limb robot in a support state.
[0070] If the mechanical legs of the exo-limb robot are in a swinging state, the mechanical legs in the swinging state need to step in the direction of movement of the wearer to determine the final landing point, so as to drive the exo-limb robot to move in the direction of movement of the wearer. The final landing point is the final landing point of the mechanical legs in the swinging state.
[0071] When the wearer turns, the exo-limb robot follows the wearer and turns around the axis with the human-machine interaction point as the axis. At this time, the final landing point of the mechanical leg in the swinging state is regarded as the linear superposition of the balance landing point and the landing point steering compensation. Among them, the balance landing point is the position coordinate of the exo-limb robot moving forward following the wearer. The landing point steering compensation represents the compensation displacement of the landing point of the mechanical leg in the swinging state in the steering direction.
[0072] If the mechanical legs of the external limb robot are in a swinging state, obtain the current overall position information, current speed information, current swing phase of the external limb robot, and current interaction position information at the human-machine interaction point.
[0073] Among them, the current overall position information of the external limb robot represents the position information of the external limb robot at the current moment, including the current hip joint position and the current center of mass position of the external limb robot.
[0074] The current hip joint position of the exo-limb robot indicates the position of the hip joint of the exo-limb robot at the current moment. The position of the hip joint can be expressed by the coordinates of the center point of the hip joint in the standard coordinate system. The current center of mass position of the exo-limb robot indicates the position of the center of mass of the exo-limb robot at the current moment. The position of the center of mass can be expressed by the coordinates of the center of mass in the standard coordinate system.
[0075] The current speed information of the external limb robot indicates the speed information of the center of mass of the external limb robot at the current moment, including the current linear speed and the current angular speed of the external limb robot. The current linear speed indicates the linear speed of the center of mass of the external limb robot at the current moment, and the current angular speed indicates the angular speed of the center of mass of the external limb robot at the current moment.
[0076] The current swing phase of the exo-limb robot indicates the ratio of the time period from the foot leaving the ground to the current moment to the total time period from the foot leaving the ground to the foot landing, and its value range is [0,1]. According to the current swing phase of the exo-limb robot and the current overall position information of the exo-limb robot, the current foot position of the exo-limb robot in the swing state can be determined.
[0077] The backpack of the exo-limb robot is used as the human-machine interaction point, refer to Figure 3 and Figure 4 , Figure 4 It is a structural schematic diagram of the positional relationship between a wearer and an external limb robot provided by another embodiment of the present application. The current interaction position information at the human-computer interaction point includes the position of the interaction point at the current moment. The position of the interaction point can be represented by the coordinates of the interaction point in the standard coordinate system.
[0078] It should be noted that the current overall position information, current speed information, current swing phase of the external limb robot, and the current interaction position information at the human-computer interaction point can be obtained by real-time measurement through sensors, or through other means. This embodiment does not make specific limitations on this.
[0079] Specifically, if the mechanical legs of the exo-limb robot are in a swinging state, the movement speed of the exo-limb robot following the wearer is calculated based on the current center of mass position in the current overall position information of the exo-limb robot, the interaction point position in the current interaction position information at the human-computer interaction point, and the current speed information of the exo-limb robot.
[0080] According to the current hip joint position, current linear velocity and current swing phase in the current overall position information of the external limb robot, the hip joint position of the mechanical leg in the swinging state when landing is estimated to obtain the estimated hip joint position, and according to the estimated hip joint position, the default landing point of the mechanical leg in the swinging state is calculated.
[0081] The movement speed of the exo-limb robot following the wearer obtained by the above calculation and the default landing point of the mechanical leg in the swinging state are linearly superimposed to obtain the equilibrium landing point of the mechanical leg in the swinging state.
[0082] Based on the current overall position information of the exolimb robot acquired above, the position of the interaction point in the current interaction position information at the human-computer interaction point, and the real-time detected posture information of the exolimb robot, the linear inverted pendulum model is used to calculate the steering compensation of the landing point of the mechanical leg of the exolimb robot in the swinging state.
[0083] According to the balance landing point and landing point steering compensation of the mechanical leg in the swinging state, the final landing point r of the mechanical leg in the swinging state is calculated according to the following calculation formula: foothold :
[0084] r foothold =r xy +[0Δr y 0] T ;
[0085] Among them, r xy ∈R 3 , represents the equilibrium landing point of the mechanical leg in the swinging state, Δr y ∈R 1 , which indicates the steering compensation of the foothold of the mechanical leg in the swinging state.
[0086] According to the final landing point of the mechanical leg in the swinging state and the current swinging phase of the external limb robot, the motion trajectory of the mechanical leg in the swinging state is calculated through the control points in the Bezier curve. The motion trajectory of the mechanical leg in the swinging state represents the swinging trajectory of the mechanical leg.
[0087] When the mechanical leg in the swinging state follows the swinging trajectory formed by the final landing point, after the swing is completed, it becomes the supporting state, and the other mechanical leg of the exo-limb robot is in the swinging state. For the mechanical leg in the supporting state after the swing is completed, in order to prevent the foot end from slipping with the ground and prevent the exo-limb robot from hindering the movement of the wearer, the position of the final landing point (relative to the standard coordinate system) needs to be kept stationary.
[0088] The trajectory point position expression of the motion trajectory of the mechanical legs in the swinging state and the mechanical legs in the supporting state of the exo-limb robot is:
[0089]
[0090] in, represents the position of the trajectory point of the motion trajectory of the mechanical leg of the external limb robot; forswing represents the mechanical leg in the swinging state; r start Indicates the current foot position of the mechanical leg in the swinging state; h swing represents the preset ground clearance height; s represents the current swing phase of the mechanical leg in the swing state; B(·) represents r start ,r foothold ,h swing ,s determines the position of the trajectory point of the mechanical leg in the swinging state; forstance indicates the mechanical leg in the supporting state; r contact Indicates the final landing point of the mechanical leg in the supporting state when it was in the swinging state last time.
[0091] In an optional example, assuming that when the mechanical leg of the exo-limb robot in a swinging state is about to leave the ground, the current swing phase is 0, and the current foot end position of the mechanical leg in the swinging state is 0. 1 (m, n, 0), the final landing point calculated is refer to Figure 6 , Figure 6 : is a schematic diagram of a mechanical leg swing trajectory of an exo-limb robot provided by another embodiment of the present application. For the generation of the swing trajectory of the mechanical leg, in addition to the position constraints of the current foot end position and the final foot landing point, a certain ground clearance is also required to avoid collision with the ground. Assume that the preset ground clearance height h swing = 0.1 m, step length l step = 0.2 m. Using the piecewise Bezier curve, the swing trajectory of the entire robotic leg is divided into two segments: ascending and descending. Assuming that the trajectory points of the motion trajectory are as follows Figure 6 The 7 control points (O 1 -O 7 ), where O 1 is the current foot position, also the starting point, O 7 The arrow at each control point indicates the speed direction of the swing trajectory at that control point. For example, the swing trajectory at the starting point O 1 The velocity direction is: from the starting point O 1 Point to the second control point O 2 , and so on. The control point settings are as follows Figure 6 As shown, according to the current foot end position O 1 (m, n, 0) and the final landing point Calculate the position coordinates of each control point, as shown in Table 1, the control points and their corresponding position coordinates, and obtain the position coordinates of each control point, where In the table
[0092] Table 1 Control points and their corresponding position coordinates
[0093] Serial number Control Points Location coordinates Remark 21 <![CDATA[O 1 ]]> (m, n, 0) Starting point 22 <![CDATA[O 2 ]]> <![CDATA[(m,n,0.5h swing )]]> 23 <![CDATA[O 3 ]]> <![CDATA[(m+0.25μ x ,n+0.25μ y ,h swing )]]> 24 <![CDATA[O 4 ]]> <![CDATA[(m+0.5μ x ,n+0.5μ y ,h swing )]]> 25 <![CDATA[O 5 ]]> <![CDATA[(m+0.75μ x ,n+0.75m y ,h swing )]]> 26 <![CDATA[O 6 ]]> <![CDATA[(m+μ x ,n+μ y ,0.5h swing )]]> 27 <![CDATA[O 7 ]]> <![CDATA[(m+μ x ,n+μ y ,0)]]> Final destination
[0094] It can be understood that the embodiment of the present application obtains the current overall position information, current speed information, current swing phase and current interactive position information of the external limb robot at the human-computer interaction point when the mechanical leg of the external limb robot is in a swinging state, and calculates the balance landing point and the landing point steering compensation of the mechanical leg in the swinging state according to the current overall position information, current speed information, current swing phase and current interactive position information of the external limb robot, respectively. Since the current overall position information, current speed information, current swing phase and current interactive position information have less noise and can be obtained in real time, the calculated balance landing point has higher accuracy and faster speed. The balanced landing point and landing point steering compensation of the legs are used to calculate the final landing point of the mechanical legs in the swinging state. The landing point steering compensation is added to the final landing point of the mechanical legs in the swinging state, and the wearer's steering is taken into consideration, so that the final landing point of the external limb robot can follow the wearer to turn. According to the final landing point of the mechanical legs in the swinging state and the current swing phase of the external limb robot, the motion trajectory of the mechanical legs in the swinging state is calculated, so that the external limb robot can finally follow the wearer's movement direction for fast movement and adapt to the wearer's flexible mobility in time, thereby solving the problem that the existing external limb robots cannot adapt to the wearer's movement direction and speed when moving with the wearer.
[0095] In a possible implementation, in step S12, the balance landing point of the mechanical leg in the swinging state is calculated based on the current overall position information, current speed information, current swing phase of the external limb robot, and the current interaction position information at the human-machine interaction point, including:
[0096] Step S1211, determining a first foothold according to the current hip joint position in the current overall position information of the external limb robot;
[0097] Step S1212, determining a default landing point according to the current linear velocity, the current swing phase and the first landing point in the current velocity information of the external limb robot;
[0098] Step S1213, calculating the movement speed of the wearer according to the current linear speed and the current angular speed in the current speed information of the external limb robot, the current center of mass position in the current overall position information of the external limb robot, and the interaction point position in the current interaction position information at the human-machine interaction point;
[0099] Step S1214, calculating the balance landing point of the mechanical leg in the swinging state according to the default landing point and the movement speed of the wearer.
[0100] Specifically, according to the current overall position information, current speed information, current swing phase of the external limb robot, and the position of the interaction point in the current interaction position information at the human-machine interaction point, the balance landing point of the mechanical leg in the swinging state is calculated, including:
[0101] The current overall position information of the external limb robot includes the current hip joint position and the current center of mass position, and the current velocity information of the external limb robot includes the current linear velocity v and the current angular velocity w. Figure 3 , where the current robot speed can be the linear speed of the robot's center of mass at the current moment, is the current linear speed, and the current angular velocity can be the angular velocity of the robot's center of mass at the current moment. The default foothold position and the wearer's speed gain are superimposed as the position of the balanced foothold. The default foothold is the position of the mechanical leg of the external limb robot in a swinging state at the moment of footholding, directly below the hip joint.
[0102] The first landing point is determined according to the current hip joint position in the current overall position information of the external limb robot. Among them, the first landing point is the position directly below the current hip joint position of the external limb robot (along the direction of gravity acceleration). For the human-machine system formed by the wearer and the external limb robot, the two support points formed by the two legs of the wearer and the two support points of the two mechanical legs of the external limb robot form a polygonal area. The projection of the center of mass of the external limb robot on the ground needs to fall within the polygonal area to ensure that the robot does not fall. According to the following formula, the first landing point r is calculated. 0 :
[0103]
[0104] Among them, r hip Indicates the current hip joint position information; Indicates the preset height of the center of mass of the exolimb robot.
[0105] When the mechanical leg in the swinging state is swinging, the position of the hip joint will move with the movement of the external limb robot. The current speed information and the remaining time of the swing phase of the external limb robot are introduced to estimate the default landing point of the mechanical leg in the swinging state at the moment of landing. This makes the balance landing point calculated based on the default landing point more accurate and stable, and the swing trajectory of the mechanical leg in the swinging state is smoother. The remaining time of the swing phase represents the time from the current moment to the moment when the mechanical leg in the swinging state lands. According to the following formula, the default landing point r of the mechanical leg in the swinging state at the moment of landing is calculated 0 ′ :
[0106] r 0 ′ =r 0 +(1-s)T sw v;
[0107] Where s represents the current swing phase of the robotic leg in the swing state, T sw Indicates the total duration of the set mechanical leg swing; v indicates the current linear velocity of the external limb robot.
[0108] Then, according to the current linear velocity and current angular velocity of the external limb robot, as well as the current center of mass position of the external limb robot and the position of the interaction point in the current interaction position information at the human-machine interaction point, the current velocity of the wearer is estimated to obtain the movement velocity of the wearer.
[0109] According to the default foothold and the wearer's movement speed v calculated above human According to the following formula, the balance landing point r of the mechanical leg in the swinging state is calculated xy :
[0110] r xy =r 0 +(1-s)T sw v+k v v human ;
[0111] Among them, v human represents the movement speed, k v Indicates the preset swing speed gain, r 0 represents the first footfall point, s represents the current swing phase of the mechanical leg in the swing state, T sw It represents the total swinging time of the set mechanical leg, and v represents the current linear velocity of the external limb robot.
[0112] It should be noted that the preset swing speed gain k v It can be 0.3 / second, or it can be set according to the specific scene. The total swing time of the mechanical leg is set to Tsw It can be 0.5 seconds, or can be set according to specific scenarios, and the present invention does not make any specific limitation.
[0113] In a possible implementation, in step S1213, the movement speed of the wearer is calculated based on the current linear speed and the current angular speed in the current speed information of the external limb robot, the current center of mass position in the current overall position information of the external limb robot, and the interaction point position in the current interaction position information at the human-machine interaction point, including:
[0114] Determine a position vector at the human-machine interaction location according to a current center of mass position in the current overall position information of the external limb robot and an interaction point position in the current interaction position information at the human-machine interaction location;
[0115] According to the current linear velocity and current angular velocity in the current velocity information of the external limb robot, and the position vector at the human-machine interaction point, the wearer's movement velocity v is calculated according to the following formula: human :
[0116] v human =v+w×r CH ;
[0117] Among them, v is the current linear velocity, w is the current angular velocity, r CH is the position vector of the human-computer interaction point.
[0118] Specifically, the movement speed of the wearer is calculated based on the current linear speed and the current angular speed in the current speed information of the external limb robot, the current center of mass position in the current overall position information of the external limb robot, and the interaction point position in the current interaction position information at the human-machine interaction point, including:
[0119] According to the current center of mass position in the current overall position information of the external limb robot and the interaction point position in the current interaction position information of the human-machine interaction, the position vector of the human-machine interaction is determined. The interaction point position of the human-machine interaction is regarded as the current position information of the wearer, and can be expressed by the coordinates of the human-machine interaction in the standard coordinate system. The position vector of the human-machine interaction represents the position vector between the current center of mass position and the human-machine interaction.
[0120] In addition to moving with the external limb robot, the human-machine interaction point will also have an additional linear velocity due to the rotation of the external limb robot. The additional linear velocity is calculated from the current angular velocity and the position vector of the human-machine interaction point. The wearer's movement speed can be calculated by adding the current linear velocity and the additional linear velocity generated by the rotation. According to the current linear velocity and current angular velocity of the external limb robot, as well as the position vector of the human-machine interaction point, the wearer's movement speed v is calculated according to the following formula human :
[0121] v human =v+w×r CH ;
[0122] Among them, v is the current linear velocity, w is the current angular velocity, r CH is the position vector of the human-computer interaction point.
[0123] In a possible implementation, in step S12, based on the current overall position information and current speed information of the external limb robot and the current interactive position information at the human-machine interaction point, the foothold steering compensation of the mechanical leg in the swinging state is calculated, including:
[0124] Step S1221, calculating the expected speed of the exo-limb robot in the tangential direction according to the current center of mass position in the current overall position information of the exo-limb robot and the interaction point position in the current interaction position information at the human-machine interaction point;
[0125] Step S1222, based on the expected speed of the exo-limb robot in the tangential direction and the current linear speed in the current speed information of the exo-limb robot, calculate the steering compensation of the landing point of the mechanical leg in the swinging state.
[0126] Specifically, according to the current overall position information and current speed information of the external limb robot and the current interactive position information at the human-machine interaction point, the foothold steering compensation of the mechanical leg in the swinging state is calculated, including:
[0127] During the steering process of the exolimb robot, the goal of steering is to make the center of mass of the exolimb robot directly behind the wearer, and the heading angle of the exolimb robot's trunk consistent with the direction of the wearer. Specifically, directly behind the wearer is directly behind the interaction point at the human-machine interaction point. Based on the linear inverted pendulum model, the exolimb robot selects the expected landing point in the tangent direction according to the steering angle error to adjust the center of mass position of the exolimb robot so that the heading angle of the exolimb robot's trunk converges toward the wearer. Specifically, the tangential direction refers to the direction in which the center of mass position of the exolimb robot is tangent to the axis line ( Figure 4 The axis is the human-computer interaction point.
[0128] See also Figure 4 , project the interaction point position of the human-machine interaction and the current center of mass position of the external limb robot on the xy plane. The interaction point position of the human-machine interaction corresponds to the coordinate point H in the standard coordinate system, and the current center of mass position of the external limb robot corresponds to the coordinate point C in the standard coordinate system. The current center of mass position of the external limb robot corresponds to the current robot posture. Figure 4 As shown, the current heading angle of the external limb robot is The current heading angle at the human-computer interaction point is
[0129] During the turning process, the expected center of mass position of the exo-limb robot is coordinate point D, which is set to be directly behind the wearer, and the heading angle is aligned with the wearer. The expected center of mass position of the exo-limb robot corresponds to the expected robot posture. According to the coordinate point C in the standard coordinate system corresponding to the current center of mass position of the exo-limb robot and the coordinate point D of the expected center of mass position of the exo-limb robot, the expected speed of the exo-limb robot in the tangential direction is calculated.
[0130] The exo-limb robot takes the human-machine interaction point as the axis. During the turning process, only the movement in the tangential direction will affect the result of the turning movement. Therefore, the expected landing point of the exo-limb robot in the tangential direction is calculated based on the linear inverted pendulum model in the tangential direction, and the tangential velocity generated by the expected landing point in the tangential direction is used to adjust the heading angle of the exo-limb robot. Among them, the linear inverted pendulum model is a simple bipedal walking model, and its principle is: the vertical rod formed between the axis and the ground is a rotating rod, and a force is applied in the direction of the rotating rod to keep the height of the robot's center of mass unchanged, thereby preventing the robot from falling. According to the expected speed of the exo-limb robot in the tangential direction and the current linear velocity of the exo-limb robot, the landing point steering compensation of the mechanical leg in the swinging state is calculated.
[0131] In one possible implementation, in step S1221, the expected speed of the exo-limb robot in the tangential direction is calculated based on the current center of mass position in the current overall position information of the exo-limb robot and the interaction point position in the current interaction position information at the human-machine interaction point, including:
[0132] Determine a position vector at the human-machine interaction location according to a current center of mass position in the current overall position information of the external limb robot and an interaction point position in the current interaction position information at the human-machine interaction location;
[0133] Transform the position vector of the human-computer interaction point to obtain the position vector of the human-computer interaction point in the centroid coordinate system;
[0134] According to the acquired current posture information of the external limb robot and the position vector of the human-machine interaction in the center of mass coordinate system, the expected center of mass position of the external limb robot is calculated;
[0135] According to the expected center of mass position and the current center of mass position of the exo-limb robot, the expected speed of the exo-limb robot in the tangential direction is calculated.
[0136] Specifically, according to the current center of mass position in the current overall position information of the exo-limb robot and the interaction point position in the current interaction position information at the human-machine interaction point, the expected speed of the exo-limb robot in the tangential direction is calculated, including:
[0137] The current center of mass position of the external limb robot corresponds to the coordinate point C in the standard coordinate system, and the position of the interaction point at the human-machine interaction is as follows: Figure 4 The coordinate point H in the standard coordinate system, when the position of the interaction point at the human-machine interaction cannot be measured, the length of the external limb robot in the torso direction is L x , is determined by the external limb robot and is fixed. Therefore, the position vector of the human-machine interaction in the center of mass coordinate system can be determined Get the current posture information of the external limb robot. According to the current posture information of the external limb robot and the coordinate point C of the current center of mass position corresponding to the standard coordinate system, the position vector of the current human-machine interaction in the standard coordinate system can be calculated according to the following formula:
[0138]
[0139] in, Represents the position vector of the current robot's center of mass in the standard coordinate system, Represents the current posture information of the external limb robot.
[0140] When the position of the interaction point at the human-computer interaction is obtained by measurement, the position vector of the current human-computer interaction in the standard coordinate system can be determined. According to the coordinate points C and H, the position vector r of the human-computer interaction point can be determined CH . The position vector r of the human-computer interaction CH Transform to obtain the position vector of human-computer interaction in the centroid coordinate system
[0141] According to the current posture information of the external limb robot and the position vector of the human-machine interaction in the center of mass coordinate system, the position vector of the expected center of mass of the external limb robot in the standard coordinate system is calculated according to the following formula:
[0142]
[0143] in, Represents the position vector of the current human-computer interaction in the standard coordinate system, which is determined by the position of the interaction point at the human-computer interaction; Represents the current posture information of the external limb robot.
[0144] According to the position vector of the expected center of mass in the standard coordinate system The expected center of mass position r can be obtained ID .
[0145] According to the expected center of mass position and current center of mass position of the external limb robot, the expected speed of the external limb robot in the tangential direction is calculated according to the following formula:
[0146]
[0147] Among them, r IC is the current center of mass position of the external limb robot, k t is the preset position error feedback gain, expressed as 1 / k t After seconds, the center of mass of the exolimb robot reaches the desired center of mass position.
[0148] It should be noted that k t It can be set according to specific circumstances, and this embodiment does not make any specific limitation to this.
[0149] In a possible implementation, in step S1222, the foothold steering compensation of the mechanical leg in the swinging state is calculated according to the expected speed of the external limb robot in the tangential direction and the current linear speed in the current speed information of the external limb robot, including:
[0150] According to the expected speed of the external limb robot in the tangential direction and the current linear speed in the current speed information of the external limb robot, the foothold steering compensation σr of the mechanical leg in the swinging state is calculated according to the following formula: y :
[0151]
[0152] Where a is the time constant, g is the acceleration due to gravity, h is the preset height of the center of mass of the exo-limb robot, T st For the preset support period, is the linear velocity of the center of mass of the exo-limb robot when the mechanical leg in the swinging state begins to swing, is the expected velocity of the exo-limb robot in the tangential direction.
[0153] Specifically, according to the expected speed of the external limb robot in the tangential direction and the current linear speed in the current speed information of the external limb robot, the foothold steering compensation of the mechanical leg in the swinging state is calculated, including:
[0154] Based on the linear inverted pendulum model in the tangent direction of the external limb robot, reference Figure 5 , Figure 5: is a schematic diagram of a linear inverted pendulum model principle provided by another embodiment of the present application, p represents the foothold, g is the gravitational acceleration, h is the preset height of the center of mass of the external limb robot, y is the center of mass position of the external limb robot, and the dynamic equation of the inverted pendulum is a second-order ordinary differential equation: When the single-leg support time of the exolimb robot and the initial center of mass position and initial center of mass velocity of the exolimb robot are given, the real-time linear velocity of the center of mass of the exolimb robot is The calculation formula is:
[0155]
[0156] Among them, y 0 is the center of mass position of the exo-limb robot at the moment when the mechanical leg in the swinging state begins to swing, is the linear velocity of the center of mass of the exo-limb robot when the mechanical leg in the swinging state begins to swing,
[0157] make Equal to the expected speed of the exo-limb robot in the tangential direction calculated above At this time, p is the expected landing point of the external limb robot in the tangential direction, which can be expressed as:
[0158]
[0159] At this time, the expected landing point of the exo-limb robot in the tangential direction can be regarded as the weighted sum of the center of mass position at the moment when the mechanical leg in the swinging state begins to swing, the center of mass speed at the moment when the mechanical leg in the swinging state begins to swing, and the expected speed of the exo-limb robot in the tangential direction. 0 Determined by the translational motion of the external limb robot, the foothold steering compensation σr of the mechanical leg in the swinging state can be calculated according to the following formula: y :
[0160]
[0161] Where a is the time constant, g is the acceleration due to gravity, h is the preset height of the center of mass of the exo-limb robot, T st For the preset support period, is the linear velocity of the center of mass of the exo-limb robot when the mechanical leg in the swinging state begins to swing, is the expected speed of the exo-limb robot during turning.
[0162] In a possible implementation, the method further includes:
[0163] If the mechanical legs of the external limb robot are in a supporting state, obtain the current heading angle of the external limb robot;
[0164] According to the current heading angle of the external limb robot, the expected heading angle and the expected heading angular velocity of the external limb robot are calculated;
[0165] According to the expected heading angle and expected heading angular velocity of the external limb robot, the foot-end force corresponding to the mechanical leg of the external limb robot in a supporting state is predicted through a model prediction controller, wherein the model prediction controller includes the corresponding relationship between the expected heading angle and expected heading angular velocity of the external limb robot and the foot-end force.
[0166] It should be noted that a model predictive controller is pre-built, wherein the model predictive controller includes the correspondence between the desired heading angle and the desired heading angular velocity of the external limb robot and the foot end force. For the model predictive controller, a set of data including the heading angle and the heading angular velocity is input into the model predictive controller, and the foot end force of the robot's mechanical leg in the supporting state can be predicted.
[0167] Specifically, refer to Figure 2 In the supporting leg control, if the mechanical legs of the external limb robot are in a supporting state, the current heading angle of the external limb robot is obtained, and the expected heading angle and the expected heading angular velocity of the external limb robot are calculated respectively.
[0168] The model predictive controller runs at a preset frequency. For example, if the operation control cycle is 0.06 seconds, the model predictive controller runs once every 0.06 seconds. The operation control cycle of the model predictive controller is divided into N total steps. Each step corresponds to a foot end force. At each step, the motor torque is calculated based on the corresponding foot end force, and the underlying motion motor controller is controlled to apply force to the external output by controlling the motor torque.
[0169] For example, if the operation control cycle of the model predictive controller is divided into 10 total steps, the underlying motion motor controller runs once every 0.006 seconds, and a corresponding foot-end force is generated for each step.
[0170] When the operation control cycle of the model predictive controller is divided into N total steps, the expected heading angle of the external limb robot at the i-th step is calculated according to the following formula: and the desired heading angular velocity
[0171]
[0172] in, represents the current heading angle of the external limb robot, k yawrepresents the feedback gain of the preset turning rate, in units of 1 / s, N represents the preset total number of steps, and Δe represents the incremental amount of the angle error, where Indicates the current heading angle at the human-machine interaction point.
[0173] The desired heading angle in each step and the desired heading angular velocity The model predictive controller is input to obtain the foot-end force f of the exo-limb robot's mechanical leg in the supporting state at each step.
[0174] Through the foot-end force at each step, the mechanical legs of the external limb robot in the supporting state are controlled to keep their position unchanged.
[0175] In a possible implementation, the method further includes:
[0176] Using the above-mentioned motion trajectory planning method of the external limb robot, the performance of the external limb robot is tested:
[0177] First, a translational walking test was conducted to evaluate the foot-end motion trajectory planning of translational motion by using an exo-limb robot walking on an indoor treadmill. The treadmill speed was set as follows: starting from 0m / s, accelerating to 0.4m / s, then accelerating to 0.8m / s, and finally decelerating to 0m / s. The entire process included standing in place, accelerating, walking at a constant speed, and decelerating. The experimental results are shown in the figure. Figure 7 As shown, Figure 7 This is a schematic diagram of the motion trajectory and motion speed of an exo-limb robot provided in another embodiment of the present application, wherein the horizontal axis is the forward displacement of the exo-limb robot and the vertical axis is the running time. Figure 7 (a) shows the running speed of the treadmill and the moving speed of the exo-limb robot. It can be seen that the exo-limb robot can quickly respond to the changing speed of the treadmill and reduce the moving speed from 0.8m / s to 0m / s within one second. The exo-limb robot can match the walking speed of the wearer during walking and has the ability to change speed.
[0178] Then, a heading motion test was conducted to verify the steering control capability of the exo-limb robot. The exo-limb robot was fixed to the bracket by a ball joint, and the heading target angle was set to 0 degrees. When the exo-limb robot was subjected to leftward and rightward push disturbances, the corresponding maximum deviation values of the heading angle reached -30.35 degrees and 29.00 degrees. The experimental results are shown in Figure 8 As shown, Figure 8 is a schematic diagram of the center of mass and foothold trajectory of an exo-limb robot provided in another embodiment of the present application, Figure 8 The figure shows the trajectory of the center of mass and the position change of the foothold of the external limb robot under disturbance. Figure 8 (a) is the case of left disturbance, the center of mass of the exo-limb robot shifts 0.20m to the left. At this time, the two footholds of the left and right mechanical legs are adjusted to the left to 0.60m and 0.05m respectively. This is partly because the current lateral movement speed is positive, and partly to eliminate the trunk heading angle error by changing the foothold. The exo-limb robot restores the trunk heading angle from -30.3 degrees to -0.8 degrees through 6 steps of adjustment, and restores the trunk heading angle from 29.0 degrees to 3.8 degrees through 10 steps of adjustment.
[0179] Finally, an omnidirectional walking test was conducted to further verify the flexible mobility of the exo-limb robot. The wearer wore the exo-limb robot to bypass obstacles and then walked forward, right, backward, and left in sequence. The motion trajectory of the exo-limb robot, the location of obstacles, and the heading angle of the exo-limb robot are shown in Figure 1. Fig. 9 As shown, Fig. 9 This is a schematic diagram of the motion trajectory of an exo-limb robot provided by another embodiment of the present application when it moves with the wearer. The blue line is the motion trajectory of the exo-limb robot, and the orange arrow direction is the heading angle value of the exo-limb robot. The completion time of this walking experiment is 71 seconds. The experiment shows that the exo-limb robot can handle most daily movement scenarios: it can walk in both the sagittal plane and the transverse plane.
[0180] It should be understood that the size of the serial numbers of the steps in the above embodiments does not mean the order of execution. The execution order of each process should be determined by its function and internal logic, and should not constitute any limitation on the implementation process of the embodiments of the present application.
[0181] Corresponding to the method described in the above embodiment, Fig.10 A structural schematic diagram of a motion trajectory planning device for an external limb robot provided in an embodiment of the present application is shown. For ease of explanation, only the parts related to the embodiment of the present application are shown.
[0182] Reference Fig.10 , the device comprises:
[0183] The data acquisition module 31 is used to acquire the current overall position information, current speed information, current swing phase, and current interaction position information of the external limb robot, if the mechanical leg of the external limb robot is in a swinging state;
[0184] The calculation module 32 is used to calculate the balance landing point and the landing point steering compensation of the mechanical leg in the swinging state according to the current overall position information, current speed information, current swing phase of the external limb robot, and the current interactive position information of the human-machine interaction point;
[0185] A final landing point determination module 33 is used to calculate the final landing point of the mechanical leg in the swinging state according to the balance landing point and the landing point steering compensation of the mechanical leg in the swinging state;
[0186] The motion trajectory determination module 34 is used to calculate the motion trajectory of the mechanical leg in the swinging state according to the final landing point of the mechanical leg in the swinging state and the current swinging phase of the external limb robot.
[0187] It should be noted that the information interaction, execution process, etc. between the above-mentioned devices / units are based on the same concept as the method embodiment of the present application. Their specific functions and technical effects can be found in the method embodiment part and will not be repeated here.
[0188] The technicians in the relevant field can clearly understand that for the convenience and simplicity of description, only the division of the above-mentioned functional units and modules is used as an example for illustration. In practical applications, the above-mentioned function allocation can be completed by different functional units and modules as needed, that is, the internal structure of the device can be divided into different functional units or modules to complete all or part of the functions described above. The functional units and modules in the embodiment can be integrated in a processing unit, or each unit can exist physically separately, or two or more units can be integrated in one unit. The above-mentioned integrated unit can be implemented in the form of hardware or in the form of software functional units. In addition, the specific names of the functional units and modules are only for the convenience of distinguishing each other, and are not used to limit the scope of protection of this application. The specific working process of the units and modules in the above-mentioned system can refer to the corresponding process in the aforementioned method embodiment, which will not be repeated here.
[0189] An embodiment of the present application also provides a motion trajectory planning device for an external limb robot. The terminal device includes: at least one processor, a memory, and a computer program stored in the memory and executable on the at least one processor. When the processor executes the computer program, the steps in any of the above-mentioned method embodiments are implemented.
[0190] An embodiment of the present application further provides a computer-readable storage medium, wherein the computer-readable storage medium stores a computer program, and when the computer program is executed by a processor, the steps in the above-mentioned method embodiments can be implemented.
[0191] An embodiment of the present application provides a computer program product. When the computer program product runs on a mobile terminal, the mobile terminal can implement the steps in the above-mentioned method embodiments when executing the computer program product.
[0192] If the integrated unit is implemented in the form of a software functional unit and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on this understanding, the present application implements all or part of the processes in the above-mentioned embodiment method, which can be completed by instructing the relevant hardware through a computer program. The computer program can be stored in a computer-readable storage medium, and the computer program can implement the steps of the above-mentioned various method embodiments when executed by the processor. Among them, the computer program includes computer program code, and the computer program code can be in source code form, object code form, executable file or some intermediate form. The computer-readable medium can at least include: any entity or device that can carry the computer program code to the camera / terminal device, recording medium, computer memory, read-only memory (ROM, Read-Only Memory), random access memory (RAM, RandomAccess Memory), electric carrier signal, telecommunication signal and software distribution medium. For example, a USB flash drive, a mobile hard disk, a magnetic disk or an optical disk. In some jurisdictions, according to legislation and patent practice, computer-readable media cannot be electric carrier signals and telecommunication signals.
[0193] In the above embodiments, the description of each embodiment has its own emphasis. For parts that are not described or recorded in detail in a certain embodiment, reference can be made to the relevant descriptions of other embodiments.
[0194] Those of ordinary skill in the art will appreciate that the units and algorithm steps of each example described in conjunction with the embodiments disclosed herein can be implemented in electronic hardware, or a combination of computer software and electronic hardware. Whether these functions are performed in hardware or software depends on the specific application and design constraints of the technical solution. Professional and technical personnel can use different methods to implement the described functions for each specific application, but such implementation should not be considered to be beyond the scope of this application.
[0195] In the embodiments provided in the present application, it should be understood that the disclosed devices / network equipment and methods can be implemented in other ways. For example, the device / network equipment embodiments described above are merely schematic. For example, the division of the modules or units is only a logical function division. There may be other division methods in actual implementation, such as multiple units or components can be combined or integrated into another system, or some features can be ignored or not executed. Another point is that the mutual coupling or direct coupling or communication connection shown or discussed can be through some interfaces, indirect coupling or communication connection of devices or units, which can be electrical, mechanical or other forms.
[0196] The units described as separate components may or may not be physically separated, and the components shown as units may or may not be physical units, that is, they may be located in one place or distributed on multiple network units. Some or all of the units may be selected according to actual needs to achieve the purpose of the solution of this embodiment.
[0197] The embodiments described above are only used to illustrate the technical solutions of the present application, rather than to limit them. Although the present application has been described in detail with reference to the aforementioned embodiments, a person skilled in the art should understand that the technical solutions described in the aforementioned embodiments may still be modified, or some of the technical features may be replaced by equivalents. Such modifications or replacements do not deviate the essence of the corresponding technical solutions from the spirit and scope of the technical solutions of the embodiments of the present application, and should all be included in the protection scope of the present application.
Claims
1. A motion trajectory planning method for an external limb robot, characterized in that: include: If the mechanical legs of the external limb robot are in a swinging state, obtaining the current overall position information, current speed information, current swing phase, and current interaction position information of the external limb robot, as well as the human-machine interaction point; According to the current overall position information, current speed information, current swing phase of the external limb robot, and the current interactive position information of the human-machine interaction point, respectively calculate the balance landing point and the landing point steering compensation of the mechanical leg in the swinging state; Calculating a final landing point of the mechanical leg in the swinging state according to the balance landing point of the mechanical leg in the swinging state and the landing point steering compensation; Calculate the motion trajectory of the mechanical leg in the swinging state according to the final landing point of the mechanical leg in the swinging state and the current swinging phase of the external limb robot; The step of calculating the balance landing point of the mechanical leg in the swinging state according to the current overall position information, current speed information, current swing phase of the external limb robot, and the current interaction position information at the human-machine interaction point comprises: Determining a first foothold according to a current hip joint position in the current overall position information of the external limb robot; Determine a default landing point according to the current linear speed, the current swing phase and the first landing point in the current speed information of the external limb robot; Calculate the movement speed of the wearer according to the current linear speed and the current angular speed in the current speed information of the external limb robot, the current center of mass position in the current overall position information of the external limb robot, and the interaction point position in the current interaction position information at the human-machine interaction location; Calculating the balance landing point of the mechanical leg in a swinging state according to the default landing point and the movement speed of the wearer; The step of calculating the foothold steering compensation of the mechanical leg in the swinging state according to the current overall position information and the current speed information of the external limb robot and the current interactive position information of the human-machine interaction point comprises: Calculate the expected speed of the exo-limb robot in the tangential direction according to the current center of mass position in the current overall position information of the exo-limb robot and the interaction point position in the current interaction position information at the human-machine interaction location; The foothold steering compensation of the mechanical leg in the swinging state is calculated based on the expected speed of the external limb robot in the tangential direction and the current linear speed in the current speed information of the external limb robot.
2. The motion trajectory planning method of the external limb robot according to claim 1, characterized in that: The motion speed of the wearer is calculated based on the current linear speed and the current angular speed in the current speed information of the external limb robot, the current center of mass position in the current overall position information of the external limb robot, and the interaction point position in the current interaction position information at the human-machine interaction point, including: Determine the position vector of the human-machine interaction location according to the current center of mass position in the current overall position information of the external limb robot and the interaction point position in the current interaction position information of the human-machine interaction location; According to the current linear velocity and current angular velocity in the current velocity information of the external limb robot and the position vector at the human-machine interaction point, the movement velocity v of the wearer is calculated according to the following formula: human : v human =v+w×r CH ; Wherein, v is the current linear velocity, w is the current angular velocity, and r is CH is the position vector of the human-computer interaction point.
3. The motion trajectory planning method of the external limb robot according to claim 1, characterized in that: The method of calculating the expected speed of the exo-limb robot in the tangential direction according to the current center of mass position in the current overall position information of the exo-limb robot and the interaction point position in the current interaction position information at the human-machine interaction location comprises: Determine the position vector of the human-machine interaction location according to the current center of mass position in the current overall position information of the external limb robot and the interaction point position in the current interaction position information of the human-machine interaction location; Transforming the position vector of the human-computer interaction point to obtain the position vector of the human-computer interaction point in a centroid coordinate system; Calculate the expected center of mass position of the external limb robot based on the acquired current posture information of the external limb robot and the position vector of the human-machine interaction in the center of mass coordinate system; According to the expected center of mass position and the current center of mass position of the exo-limb robot, the expected speed of the exo-limb robot in the tangential direction is calculated.
4. The motion trajectory planning method of an external limb robot according to claim 1, characterized in that: The step of calculating the foothold steering compensation of the mechanical leg in the swinging state according to the expected speed of the external limb robot in the tangential direction and the current linear speed in the current speed information of the external limb robot comprises: According to the expected speed of the external limb robot in the tangential direction and the current linear speed in the current speed information of the external limb robot, the foothold steering compensation σr of the mechanical leg in the swinging state is calculated according to the following formula: y : Wherein, a is the time constant, g is the acceleration due to gravity, h is the preset height of the center of mass of the exo-limb robot, and T st is the preset support period, is the linear velocity of the center of mass of the mechanical leg of the exo-limb robot in a swinging state at the moment when it starts to swing, is the expected speed of the exolimb robot in the tangential direction.
5. The motion trajectory planning method of an external limb robot according to any one of claims 1 to 4, characterized in that: The method further comprises: When the mechanical legs of the exo-limb robot are in a supporting state, obtaining a current heading angle of the exo-limb robot; Calculating the desired heading angle and the desired heading angular velocity of the exo-limb robot according to the current heading angle of the exo-limb robot; According to the expected heading angle and expected heading angular velocity of the external limb robot, the foot-end force corresponding to the mechanical leg of the external limb robot in a supporting state is predicted through a model prediction controller, wherein the model prediction controller includes the corresponding relationship between the expected heading angle and expected heading angular velocity of the external limb robot and the foot-end force.
6. A motion trajectory planning device for an external limb robot, characterized in that: The method applied to any one of claims 1 to 5, comprising: A data acquisition module, used for acquiring current overall position information, current speed information, current swing phase, and current interaction position information of the external limb robot when the mechanical legs of the external limb robot are in a swinging state; A calculation module, for calculating the balance landing point and the landing point steering compensation of the mechanical leg in the swinging state according to the current overall position information, current speed information, current swing phase of the external limb robot, and the current interaction position information of the human-machine interaction point; A final landing point determination module, used for calculating the final landing point of the mechanical leg in the swinging state according to the balance landing point and the landing point steering compensation of the mechanical leg in the swinging state; The motion trajectory determination module is used to calculate the motion trajectory of the mechanical leg in the swinging state according to the final landing point of the mechanical leg in the swinging state and the current swinging phase of the external limb robot.
7. A motion trajectory planning device for an external limb robot, comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, characterized in that: When the processor executes the computer program, the method according to any one of claims 1 to 5 is implemented.
8. A computer-readable storage medium storing a computer program, characterized in that: When the computer program is executed by a processor, the method according to any one of claims 1 to 5 is implemented.
Citation Information
Patent Citations
Ankle joint boosting exoskeleton
CN111067765A
Robot walking control method and device, robot control equipment and storage medium
CN113359800A