Motion track generation method and device, robot, electronic equipment and storage medium

By building a first joint model for dimensionality reduction and optimizing the state variables of trajectory points, the problem that existing robots cannot perform complex actions is solved, and more complex motion trajectory generation and robot actions are achieved.

CN119910638AActive Publication Date: 2025-05-02BEIJING XIAOMI ROBOT TECH CO LTD
View PDF 5 Cites 0 Cited by

Patent Information

Application Number
CN202311437442.8
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2023-10-31
Publication Date
2025-05-02
Estimated Expiration
2043-10-31

AI Technical Summary

Technical Problem

Existing robots cannot perform complex actions due to their simple motion trajectory.

Method used

By constructing the robot's first joint model, the number of dimensions is reduced, and the action sequence and trajectory of the target motion is constructed based on the model, and the state variables of the trajectory points are optimized using cost functions and constraints.

Benefits of technology

It improves the difficulty and efficiency of generating motion trajectories, and can generate more complex motion trajectories, allowing the robot to achieve more complex motion.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119910638A_ABST
    Figure CN119910638A_ABST
Patent Text Reader

Abstract

The invention relates to a motion trail generation method and device, a robot, electronic equipment and a storage medium, and the method comprises the steps that a first joint model of the robot is constructed, and the dimension number of the first joint model is smaller than the dimension number of a full-dimension joint model of the robot; based on the first joint model, an action sequence of target motion is constructed, and the action sequence comprises a plurality of action stages and switching events between the adjacent action stages; and according to the action sequence, constructing a trajectory of the target motion.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present disclosure relates to the field of robot technology, and in particular to a motion trajectory generation method, device, robot, electronic equipment and storage medium. Background Art

[0002] In recent years, the technology of robotics has been developing continuously, becoming more and more intelligent and automated, and the richness, stability and flexibility of actions have been improved to varying degrees. Robots can replace users in production and life to perform specific tasks, thereby bringing convenience to users. In related technologies, robots can achieve different movements by executing different motion trajectories, but because the motion trajectory is relatively simple, the actions that robots can achieve are relatively simple, that is, they cannot perform more complex actions. Summary of the invention

[0003] In order to overcome the problems existing in the related art, the embodiments of the present disclosure provide a motion trajectory generation method, device, robot, electronic device and storage medium to solve the defects in the related art.

[0004] According to a first aspect of an embodiment of the present disclosure, a motion trajectory generation method is provided, the method comprising:

[0005] Constructing a first joint model of the robot, wherein the number of dimensions of the first joint model is less than the number of dimensions of a full-dimensional joint model of the robot;

[0006] Based on the first joint model, construct an action sequence of the target motion, wherein the action sequence includes a plurality of action stages and switching events between adjacent action stages;

[0007] According to the action sequence, a trajectory of the target movement is constructed.

[0008] In one embodiment of the present disclosure, the step of constructing a first joint model of the robot includes:

[0009] The non-motion dimension in the full-dimensional joint model of the robot is eliminated to obtain a first joint model, wherein the motion dimension is a dimension in which motion exists in the target motion.

[0010] In one embodiment of the present disclosure, constructing an action sequence of the target motion based on the first joint model includes:

[0011] According to the target motion, an event in which the contact state between at least one contact point of the first joint model and the ground changes is determined as a switching event, and the motion between adjacent switching events is determined as an action stage.

[0012] In one embodiment of the present disclosure, constructing the trajectory of the target movement according to the action sequence includes:

[0013] According to the action sequence, discretize the trajectory of the target motion into a plurality of trajectory points, wherein the trajectory points have state variables, and the state variables represent the state of the first joint model;

[0014] Optimizing the state variables of the trajectory points among the plurality of trajectory points by using the pre-constructed cost function and constraint conditions to obtain the state variable optimization result of the trajectory points, wherein the constraint conditions are related to the action sequence;

[0015] The trajectory of the target movement is determined according to the state variable optimization result of the trajectory point.

[0016] In one embodiment of the present disclosure, the cost function is related to at least one of the following:

[0017] an error between a position vector of at least one of the plurality of trajectory points and a desired state of the target motion, wherein the position vector includes a floating base position and a position of a joint;

[0018] A joint torque of at least one trajectory point among the plurality of trajectory points.

[0019] In one embodiment of the present disclosure, the constraint condition includes at least one of the following:

[0020] The state variables of the first trajectory point are consistent with the specified state of the target motion;

[0021] The state variable of each trajectory point conforms to the dynamic equation of the first joint model;

[0022] The state variables of adjacent trajectory points satisfy the integral continuity;

[0023] The state variables of the trajectory points whose contact state with the ground is switched from non-contact to contact satisfy the discrete dynamic mapping of the first joint model;

[0024] The state variables of each trajectory point meet the joint limit conditions;

[0025] The contact state with the ground is that the contact point has no relative movement with the ground, the supporting force between the contact point and the ground is not less than 0, and the friction force between the contact point and the ground is not greater than the maximum static sliding friction force.

[0026] In one embodiment of the present disclosure, there are multiple contact points between the robot and the ground, and there are at least two contact points between the first joint model and the ground, namely, the toes and the heels.

[0027] In one embodiment of the present disclosure, determining the trajectory of the target movement according to the state variable optimization result of the trajectory point includes:

[0028] Determining the trajectory of the first joint model executing the target motion according to the state variable optimization result of the trajectory point;

[0029] The trajectory of the target motion executed by the first joint model is dimensionally restored to obtain the trajectory of the target motion executed by the robot.

[0030] In one embodiment of the present disclosure, the state variables include at least one of the following: a position vector, a velocity vector, an acceleration vector, a contact point vector, and a torque vector, wherein the position vector includes a floating base position and a joint position, the velocity vector includes a joint velocity, the acceleration vector includes an acceleration of the joint, the contact point vector includes an external force received by the contact point, and the torque vector includes a joint torque of the joint.

[0031] According to a second aspect of an embodiment of the present disclosure, a motion trajectory generating device is provided, the device comprising:

[0032] A dimensionality reduction module, used to construct a first joint model of the robot, wherein the number of dimensions of the first joint model is less than the number of dimensions of the full-dimensional joint model of the robot;

[0033] A sequence module, used for constructing an action sequence of a target motion based on the first joint model, wherein the action sequence includes a plurality of action stages and switching events between adjacent action stages;

[0034] The trajectory module is used to construct the trajectory of the target movement according to the action sequence.

[0035] In one embodiment of the present disclosure, the building block is used to:

[0036] The non-motion dimension in the full-dimensional joint model of the robot is eliminated to obtain a first joint model, wherein the motion dimension is a dimension in which motion exists in the target motion.

[0037] In one embodiment of the present disclosure, the sequence module is used to:

[0038] According to the target motion, an event in which the contact state between at least one contact point of the first joint model and the ground changes is determined as a switching event, and the motion between adjacent switching events is determined as an action stage.

[0039] In one embodiment of the present disclosure, the trajectory module is used to:

[0040] According to the action sequence, discretize the trajectory of the target motion into a plurality of trajectory points, wherein the trajectory points have state variables, and the state variables represent the state of the first joint model;

[0041] Optimizing the state variables of the trajectory points among the plurality of trajectory points by using the pre-constructed cost function and constraint conditions to obtain the state variable optimization result of the trajectory points, wherein the constraint conditions are related to the action sequence;

[0042] The trajectory of the target movement is determined according to the state variable optimization result of the trajectory point.

[0043] In one embodiment of the present disclosure, the cost function is related to at least one of the following:

[0044] an error between a position vector of at least one of the plurality of trajectory points and a desired state of the target motion, wherein the position vector includes a floating base position and a position of a joint;

[0045] A joint torque of at least one trajectory point among the plurality of trajectory points.

[0046] In one embodiment of the present disclosure, the constraint condition includes at least one of the following:

[0047] The state variables of the first trajectory point are consistent with the specified state of the target motion;

[0048] The state variable of each trajectory point conforms to the dynamic equation of the first joint model;

[0049] The state variables of adjacent trajectory points satisfy the integral continuity;

[0050] The state variables of the trajectory points whose contact state with the ground is switched from non-contact to contact satisfy the discrete dynamic mapping of the first joint model;

[0051] The state variables of each trajectory point meet the joint limit conditions;

[0052] The contact state with the ground is that the contact point has no relative movement with the ground, the supporting force between the contact point and the ground is not less than 0, and the friction force between the contact point and the ground is not greater than the maximum static sliding friction force.

[0053] In one embodiment of the present disclosure, there are multiple contact points between the robot and the ground, and there are at least two contact points between the first joint model and the ground, namely, the toes and the heels.

[0054] In one embodiment of the present disclosure, the trajectory module is used to determine the trajectory of the target movement according to the state variable optimization result of the trajectory point, and is used to:

[0055] Determining the trajectory of the first joint model executing the target motion according to the state variable optimization result of the trajectory point;

[0056] The trajectory of the target motion executed by the first joint model is dimensionally restored to obtain the trajectory of the target motion executed by the robot.

[0057] In one embodiment of the present disclosure, the state variables include at least one of the following: a position vector, a velocity vector, an acceleration vector, a contact point vector, and a torque vector, wherein the position vector includes a floating base position and a joint position, the velocity vector includes a joint velocity, the acceleration vector includes an acceleration of the joint, the contact point vector includes an external force received by the contact point, and the torque vector includes a joint torque of the joint.

[0058] According to a third aspect of an embodiment of the present disclosure, a robot includes a memory and a processor, wherein the memory is used to store computer instructions executable on the processor, and the processor is used to implement any one of the methods described in the first aspect when executing the computer instructions.

[0059] According to a fourth aspect of an embodiment of the present disclosure, an electronic device is provided, comprising a memory and a processor, wherein the memory is used to store computer instructions executable on the processor, and the processor is used to implement the motion trajectory generation method described in the first aspect when executing the computer instructions.

[0060] According to a fifth aspect of an embodiment of the present disclosure, there is provided a computer-readable storage medium on which a computer program is stored, and when the program is executed by a processor, the method described in the first aspect is implemented.

[0061] The technical solution provided by the embodiments of the present disclosure may have the following beneficial effects:

[0062] The motion trajectory generation method provided by the embodiment of the present disclosure constructs a first joint model of the robot, and constructs an action sequence of the target motion for the first joint model, and finally constructs the trajectory of the target motion according to the action sequence. Since the action sequence is constructed based on the first joint model with a lower dimension than the full-dimensional joint model of the robot, the difficulty of constructing the motion trajectory is greatly reduced, and the success rate and efficiency of trajectory construction are improved, that is, the method can generate a more complex motion trajectory, so that the robot can achieve more complex motion. BRIEF DESCRIPTION OF THE DRAWINGS

[0063] The accompanying drawings, which are incorporated in and constitute a part of this specification, illustrate embodiments consistent with the invention and, together with the description, serve to explain the principles of the invention.

[0064] Figure 1is a flow chart of a motion trajectory generation method shown in an exemplary embodiment of the present disclosure;

[0065] Figure 2 is a schematic structural diagram of a biped robot shown in an exemplary embodiment of the present disclosure;

[0066] Figure 3 is a structural schematic diagram of a first joint model shown in an exemplary embodiment of the present disclosure;

[0067] Figure 4 is a schematic diagram of an action sequence shown in an exemplary embodiment of the present disclosure;

[0068] Figure 5 is a flow chart of a method for generating a trajectory shown in an exemplary embodiment of the present disclosure;

[0069] Figure 6 is a schematic diagram of contact point distribution shown in an exemplary embodiment of the present disclosure;

[0070] Figure 7 is a structural schematic diagram of a motion trajectory generating device shown in an exemplary embodiment of the present disclosure;

[0071] Figure 8 is a structural block diagram of a robot shown in an exemplary embodiment of the present disclosure;

[0072] Fig. 9 It is a structural block diagram of an electronic device shown in an exemplary embodiment of the present disclosure. DETAILED DESCRIPTION

[0073] Exemplary embodiments will be described in detail herein, examples of which are shown in the accompanying drawings. When the following description refers to the drawings, the same numbers in different drawings represent the same or similar elements unless otherwise indicated. The embodiments described in the following exemplary embodiments do not represent all embodiments consistent with the present disclosure. Instead, they are merely examples of devices and methods consistent with some aspects of the present disclosure as detailed in the appended claims.

[0074] The terms used in this disclosure are for the purpose of describing specific embodiments only and are not intended to limit the disclosure. The singular forms of "a", "said" and "the" used in this disclosure and the appended claims are also intended to include plural forms unless the context clearly indicates otherwise. It should also be understood that the term "and / or" used herein refers to and includes any or all possible combinations of one or more associated listed items.

[0075] It should be understood that although the terms first, second, third, etc. may be used in the present disclosure to describe various information, such information should not be limited to these terms. These terms are only used to distinguish the same type of information from each other. For example, without departing from the scope of the present disclosure, the first information may also be referred to as the second information, and similarly, the second information may also be referred to as the first information. Depending on the context, the word "if" as used herein may be interpreted as "at the time of" or "when" or "in response to determining".

[0076] In recent years, with the continuous development of robot technology, it has become more and more intelligent and automated, and the richness, stability and flexibility of its actions have been improved to varying degrees. Robots can perform specific tasks on behalf of users in agricultural and industrial scenarios, thus bringing convenience. In related technologies, robots can achieve different movements by executing different motion trajectories, but because the motion trajectories are relatively simple, the actions that robots can achieve are relatively simple, that is, they cannot perform more complex actions.

[0077] Based on this, in the first aspect, at least one embodiment of the present disclosure provides a motion trajectory generation method, please refer to the attached Figure 1 , which shows the process of the method, including steps S101 to S103.

[0078] The method can be applied to robots, for example, bipedal robots (humanoid robots) and quadrupedal robots (such as robot dogs). Figure 2 , which takes a biped robot as an example to illustrate the freedom structure of the robot. The biped robot includes two upper limbs and two lower limbs. The shoulder of the upper limb has three degrees of freedom in the directions of pitch, roll, and yaw, the elbow has one degree of freedom in the direction of pitch, and the wrist can also have two or three degrees of freedom. The hip of the lower limb has three degrees of freedom in the directions of pitch, roll, and yaw, the knee has one degree of freedom in the direction of pitch, and the ankle has two degrees of freedom in the directions of pitch and roll, wherein roll, pitch, and yaw are the directions of rotation around the X-axis, Y-axis, and Z-axis, respectively. There are two flat feet at the end of the lower limbs. By changing the contact state of the flat feet with the outside world, a variety of dynamic behaviors can be realized, such as walking, running, jumping, somersaults, stable operation, etc., wherein the flat feet (i.e., the robot) can have multiple contact points with the ground, such as at least two contact points of toe and heel.

[0079] In step S101, a first joint model of the robot is constructed, wherein the number of dimensions of the first joint model is smaller than the number of dimensions of a full-dimensional joint model of the robot.

[0080] Exemplarily, the non-motion dimension in the full-dimensional joint model of the robot is eliminated to obtain a first joint model, wherein the motion dimension is the dimension in which motion exists in the target motion. Figure 2 Taking the robot shown in the figure as an example, its full-dimensional joint model package includes X-axis dimension, Y-axis dimension and Z-axis dimension, where the X-axis dimension represents the front-back direction of the robot, the Y-axis dimension represents the left-right dimension of the robot, and the Z-axis dimension represents the up-down direction of the robot. If the target motion exists in the X-axis dimension and the Z-axis dimension, but not in the Y-axis dimension, the Y-axis dimension can be eliminated to obtain the following Figure 3 The first joint model shown has only two dimensions, the X-axis and the Z-axis, i.e., the model is a multi-link model in the XZ plane, including the trunk, thigh, calf, foot, upper arm, and lower arm, wherein the trunk is its floating base, with three degrees of freedom: movement along the X-axis, movement along the Z-axis, and rotation around the Y-axis (pitch angle), and there are two contact points between the first joint model and the ground, namely, the toes and the heels. It can be seen that the position vector of the first joint model is:

[0081]

[0082] In the above formula, q b =[q 1 ,q 2 ,q 3 ] T =[x,y,θ] T is the position of the floating base in the coordinate system I, where θ is the pitch angle of the floating base. j =[q 4 ,…,q 8 ] T is the position of each joint (i.e., joint angle).

[0083] Furthermore, the dynamic equation of the first joint model can be written as:

[0084]

[0085] Where M, b represent the inertia matrix and nonlinear term (Coriolis force, centrifugal force and gravity in generalized coordinate space) respectively; τ = [τ 4 ,τ 5 ,τ 6 ,τ 7 ,τ 8 ] T is the torque vector of each joint, is the selection matrix of the drivable joints; J c is the velocity Jacobian matrix of the contact point, f c =[f toe,x , f toe,z, f heel,x , f heel,z ] T is the external force on each contact point, is the velocity vector, is the acceleration vector.

[0086] In step S102, an action sequence of the target motion is constructed based on the first joint model, wherein the action sequence includes a plurality of action stages and switching events between adjacent action stages.

[0087] The target motion can be a high-dynamic behavior. During high-dynamic motion, the robot's contact with the outside world often varies at different stages, which is reflected in the change in the number of contact points and the change in the contact mode; the contact establishment process is a completely plastic impact, and the contact release process is a non-viscous separation, so the following mapping relationships exist in the contact establishment process and the contact process:

[0088]

[0089] in,

[0090] Based on this, exemplarily, this step can determine, according to the target motion, an event in which the contact state of at least one contact point of the first joint model with the ground changes as a switching event, and determine the motion between adjacent switching events as an action stage, wherein each action stage is described by a dynamic equation, that is, different action stages are described by different dynamic equations.

[0091] If the contact state between at least one contact point of the first joint model and the ground changes, the contact state (contact or non-contact) between the first joint model and the ground changes. For example, the contact state between the first joint model and the ground is obtained by arranging and combining each contact point in contact or non-contact with the ground. That is, when there are n contact points between the first joint model and the ground, the first joint model and the ground have 2 n Contact state. Figure 2 Taking the biped robot shown in the figure as an example, four contact states as shown in Table 1 below can be constructed according to the contact states between the toes, heels and the ground:

[0092]

[0093] In the above table, phase_num is the phase number, phase_name is the phase name, and contact_flag is the contact flag, including whether each contact point is in contact with the ground. 1 indicates contact with the ground, and 0 indicates no contact with the ground.

[0094] Attach Figure 2Take the biped robot shown in the figure as an example. If we construct a sequence of somersault motion for it, we can get the following Figure 4 The action sequence shown includes four action stages: foot-contact, toe-contact, flight, and foot-contact, as well as a heel-off switching event between foot-contact and toe-contact, a toe-off switching event between toe-contact and flight, and a touch-down switching event between flight and foot-contact.

[0095] In step S103, a trajectory of the target movement is constructed according to the action sequence.

[0096] Exemplarily, this step can be performed as follows: Figure 5 The method shown is executed, including sub-steps S1031 to S1033.

[0097] In sub-step S1031, according to the action sequence, the trajectory of the target motion is discretized into a plurality of trajectory points, wherein the trajectory points have state variables, and the state variables represent the state of the first joint model.

[0098] Optionally, the trajectory of the target motion is discretized according to the time of each action in the action sequence and a preset frequency, so that each frequency point forms a trajectory point.

[0099] Optionally, the state variable may include at least one of the following: position vector, velocity vector, acceleration vector, contact point vector, torque vector, wherein the position vector includes the floating base position and the position of (each) joint, the velocity vector includes the velocity of (each) joint, the acceleration vector includes the acceleration of (each) joint, the contact point vector includes the external force received by (each) contact point, and the torque vector includes the joint torque of (each) joint. For example, the state variable X is shown as follows:

[0100]

[0101] In the above formula, k is one of the N trajectory points (knot nodes) obtained after the motion trajectory is discretized, and i is n c One of n contact points, c is c ×N two-dimensional matrix, each column corresponds to a trajectory point, and each column includes the contact point vector on the corresponding trajectory point; is the acceleration vector of the kth trajectory point, is the velocity vector of the kth trajectory point, q[k] is the position vector of the kth trajectory point, and f c [k] is the contact point vector of the k-th trajectory point, and τ[k] is the torque vector of the k-th trajectory point.

[0102] In sub-step S1032, the state variables of the trajectory points among the plurality of trajectory points are optimized using the pre-constructed cost function and constraint conditions to obtain the state variable optimization results of the trajectory points, wherein the constraint conditions are related to the action sequence.

[0103] For example, the cost function is related to at least one of the following:

[0104] an error between a position vector of at least one of the plurality of trajectory points and a desired state of the target motion, wherein the position vector includes a floating base position and a position of a joint;

[0105] A joint torque of at least one trajectory point among the plurality of trajectory points.

[0106] For example, the cost function includes the sum of square errors between the position vector of the last trajectory point and the desired state of the target motion, and the sum of square joint torques of each trajectory point in the plurality of trajectory points, wherein the position vector includes the floating base position and the position of each joint. That is, the cost function is shown as follows:

[0107]

[0108] In the above formula, q ref [N] is the expected state of the target motion, W 1 , W 2 are weight values ​​respectively.

[0109] For example, the constraint condition includes at least one of the following:

[0110] First item: The state variable of the first trajectory point is consistent with the specified state of the target motion, that is:

[0111]

[0112] In the above formula, q ref [1] is the specified position vector of the target motion, Specifies the velocity vector for the target's motion.

[0113] Second item: The state variable of each trajectory point conforms to the dynamic equation of the first joint model, that is:

[0114] foreachknotnodek=1,...,N:

[0115]

[0116] The various parameters in the above formula have been introduced in detail in the previous part of the dynamic equation of the first joint model, and will not be repeated here.

[0117] The third item: The state variables of adjacent trajectory points satisfy the integral continuity, that is:

[0118]

[0119]

[0120] In the above formula, is the velocity vector of the k+1th trajectory point, q[k+1] is the position vector of the k+1th trajectory point, and Δt is the difference between adjacent trajectory points.

[0121] The fourth item: the state variable of the trajectory point where the contact state with the ground switches from non-contact to contact satisfies the discrete dynamic mapping of the first joint model, that is:

[0122] iftouchdownoccursatk:

[0123]

[0124] end

[0125] The various parameters in the above formula have been introduced in detail when introducing the mapping relationship existing in the process of establishing contact, and will not be repeated here.

[0126] Fifth item: The state variables of each trajectory point meet the joint limit conditions, that is:

[0127] q min ≤q[k]≤q max

[0128]

[0129] q min ,q max are the lower and upper limits of the joint position that can be achieved, is the maximum value that the joint velocity can reach, is the maximum value that the joint acceleration can reach, τ max is the maximum value that the joint torque can reach.

[0130] Item 6: The contact state with the ground is that the contact point has no relative motion with the ground, the support force between the contact point and the ground is not less than 0, and the friction force between the contact point and the ground is not greater than the maximum static sliding friction force, that is:

[0131]

[0132] In the above formula, c i,k is the contact state of the ith contact point of the kth trajectory point, 1 for contact and 0 for no contact; f c,z [k] is the support force between the contact point and the ground at the kth trajectory point, f c,x [k] is the friction between the contact point and the ground at the kth trajectory point, f c [k] is the tangential force between the contact point and the ground at the kth trajectory point.

[0133] In sub-step S1033, the trajectory of the target motion is determined according to the state variable optimization result of the trajectory point (preferably the state variable optimization result of each trajectory point).

[0134] Exemplarily, this step is performed in the following manner:

[0135] Firstly, according to the state variable optimization result of the trajectory point, the trajectory of the first joint model executing the target motion is determined.

[0136] Next, the trajectory of the target motion executed by the first joint model is dimensionally restored to obtain the trajectory of the target motion executed by the robot.

[0137] Attach Figure 2 Taking the biped robot shown in the figure as an example, the trajectory X of the first joint model can be restored to the trajectory Y of the biped robot in full-degree-of-freedom space (Y has N columns, each column corresponds to a trajectory point):

[0138]

[0139]

[0140] In the above formula, Q = [Q b ,Q left-leg ,Q right-leg ,Q left-arm ,Q right-arm ] T is the position vector of the biped robot, is the velocity vector of the biped robot, T = [T left-leg ,T right-leg ,T left-arm ,T right-arm ] T is the torque vector of the biped robot, F c =[F LLT ,F LRT ,F LLH ,F LRH ,F RLT ,F RRT ,F RLH,F RRH ] T is a 24-dimensional contact point vector, which is the external force exerted on the 8 contact points of the left and right feet respectively.

[0141] Please refer to the attached Figure 6 The eight contact points of the left and right feet are [LLT, LRT, LLH, LRH, RLT, RRT, RLH, RRH]. The first letter represents the left foot (L) and the right foot (R), the second letter represents the left side (L) and the right side (R) of the inner foot, and the third letter represents the toe (Toe) and the heel (Heel) of the inner foot.

[0142] The motion trajectory generation method provided by the embodiment of the present disclosure constructs a first joint model of the robot, and constructs an action sequence of the target motion for the first joint model, and finally constructs the trajectory of the target motion according to the action sequence. Since the action sequence is constructed based on the first joint model with a lower dimension than the full-dimensional joint model of the robot, the difficulty of constructing the motion trajectory is greatly reduced, and the success rate and efficiency of trajectory construction are improved, that is, the method can generate a more complex motion trajectory, so that the robot can achieve more complex motion.

[0143] Specifically, the first joint model constructed in the embodiment of the present disclosure is a six-link model (ignoring the waist degree of freedom) or a seven-link model (considering the waist degree of freedom) on a plane, which greatly reduces the complexity of dynamic calculations without ignoring the motion components of the target motion, thereby improving the optimization efficiency of dynamic variables.

[0144] Moreover, the embodiment of the present disclosure combines the contact states of multiple contact points to obtain multiple contact states between the robot and the outside world, which makes it possible to construct an action sequence more vividly and closer to the details of the target movement, and thus the trajectory constructed based on the action sequence is more accurate. For example, in the related art, the contact state between the robot's feet and the ground can only be in contact or not in contact, while in the embodiment of the present disclosure, the two contact points of the toes and the heels make the contact state between the feet and the ground four release states: full contact, full non-release, only toe contact, and only heel contact. It can be understood that if the robot has more contact points, more contact states between the robot and the ground can be combined.

[0145] It should be noted that the ground mentioned in the above embodiments of the present disclosure refers to all contact objects that the robot passes through during walking, such as a desktop (i.e., the contact object when the robot walks on the desktop).

[0146] According to a second aspect of the present disclosure, a motion trajectory generating device is provided. Figure 7 , the device comprises:

[0147] A dimensionality reduction module 701 is used to construct a first joint model of the robot, wherein the number of dimensions of the first joint model is less than the number of dimensions of the full-dimensional joint model of the robot;

[0148] A sequence module 702 is used to construct an action sequence of a target motion based on the first joint model, wherein the action sequence includes a plurality of action stages and switching events between adjacent action stages;

[0149] The trajectory module 703 is used to construct the trajectory of the target movement according to the action sequence.

[0150] In one embodiment of the present disclosure, the building block is used to:

[0151] The non-motion dimension in the full-dimensional joint model of the robot is eliminated to obtain a first joint model, wherein the motion dimension is a dimension in which motion exists in the target motion.

[0152] In one embodiment of the present disclosure, the sequence module is used to:

[0153] According to the target motion, an event in which the contact state between at least one contact point of the first joint model and the ground changes is determined as a switching event, and the motion between adjacent switching events is determined as an action stage.

[0154] In one embodiment of the present disclosure, the trajectory module is used to:

[0155] According to the action sequence, discretize the trajectory of the target motion into a plurality of trajectory points, wherein the trajectory points have state variables, and the state variables represent the state of the first joint model;

[0156] Optimizing the state variables of the trajectory points among the plurality of trajectory points by using the pre-constructed cost function and constraint conditions to obtain the state variable optimization result of the trajectory points, wherein the constraint conditions are related to the action sequence;

[0157] The trajectory of the target movement is determined according to the state variable optimization result of the trajectory point.

[0158] In one embodiment of the present disclosure, the cost function is related to at least one of the following:

[0159] an error between a position vector of at least one of the plurality of trajectory points and a desired state of the target motion, wherein the position vector includes a floating base position and a position of a joint;

[0160] A joint torque of at least one trajectory point among the plurality of trajectory points.

[0161] In one embodiment of the present disclosure, the constraint condition includes at least one of the following:

[0162] The state variables of the first trajectory point are consistent with the specified state of the target motion;

[0163] The state variable of each trajectory point conforms to the dynamic equation of the first joint model;

[0164] The state variables of adjacent trajectory points satisfy the integral continuity;

[0165] The state variables of the trajectory points whose contact state with the ground is switched from non-contact to contact satisfy the discrete dynamic mapping of the first joint model;

[0166] The state variables of each trajectory point meet the joint limit conditions;

[0167] The contact state with the ground is that the contact point has no relative movement with the ground, the supporting force between the contact point and the ground is not less than 0, and the friction force between the contact point and the ground is not greater than the maximum static sliding friction force.

[0168] In one embodiment of the present disclosure, there are multiple contact points between the robot and the ground, and there are at least two contact points between the first joint model and the ground, namely, the toes and the heels.

[0169] In one embodiment of the present disclosure, the trajectory module is used to determine the trajectory of the target movement according to the state variable optimization result of the trajectory point, and is used to:

[0170] Determining the trajectory of the first joint model executing the target motion according to the state variable optimization result of the trajectory point;

[0171] The trajectory of the target motion executed by the first joint model is dimensionally restored to obtain the trajectory of the target motion executed by the robot.

[0172] In one embodiment of the present disclosure, the state variables include at least one of the following: a position vector, a velocity vector, an acceleration vector, a contact point vector, and a torque vector, wherein the position vector includes a floating base position and a joint position, the velocity vector includes a joint velocity, the acceleration vector includes an acceleration of the joint, the contact point vector includes an external force received by the contact point, and the torque vector includes a joint torque of the joint.

[0173] In a third aspect, at least one embodiment of the present disclosure provides a robot, please refer to the attached Figure 8, which shows the structure of the robot, the robot includes a memory and a processor, the memory is used to store computer instructions that can be run on the processor, and the processor is used to generate a motion trajectory based on any method described in the first aspect when executing the computer instructions. That is, the robot can generate a motion trajectory online or offline.

[0174] According to the fourth aspect of the embodiment of the present disclosure, please refer to the attached Fig. 9 , which exemplarily shows a block diagram of an electronic device. For example, the electronic device 600 may be a mobile phone, a computer, a digital broadcast terminal, a messaging device, a game console, a tablet device, a medical device, a fitness device, a personal digital assistant, etc.

[0175] Reference Fig. 9 , the electronic device 600 may include one or more of the following components: a processing component 602 , a memory 604 , a power component 606 , a multimedia component 608 , an audio component 610 , an input / output (I / O) interface 612 , a sensor component 614 , and a communication component 616 .

[0176] The processing component 602 generally controls the overall operation of the electronic device 600, such as operations associated with display, phone calls, data communications, camera operations, and recording operations. The processing component 602 may include one or more processors 620 to execute instructions to complete all or part of the steps of the above-mentioned method. In addition, the processing component 602 may include one or more modules to facilitate the interaction between the processing component 602 and other components. For example, the processing component 602 may include a multimedia module to facilitate the interaction between the multimedia component 608 and the processing component 602.

[0177] The memory 604 is configured to store various types of data to support operations on the device 600. Examples of such data include instructions for any application or method operating on the electronic device 600, contact data, phone book data, messages, pictures, videos, etc. The memory 604 can be implemented by any type of volatile or non-volatile storage device or a combination thereof, such as static random access memory (SRAM), electrically erasable programmable read-only memory (EEPROM), erasable programmable read-only memory (EPROM), programmable read-only memory (PROM), read-only memory (ROM), magnetic memory, flash memory, magnetic disk or optical disk.

[0178] The power component 606 provides power to the various components of the electronic device 600. The power component 606 may include a power management system, one or more power supplies, and other components associated with generating, managing, and distributing power to the electronic device 600.

[0179] The multimedia component 608 includes a screen providing an output interface between the electronic device 600 and the user. In some embodiments, the screen may include a liquid crystal display (LCD) and a touch panel (TP). If the screen includes a touch panel, the screen may be implemented as a touch screen to receive input signals from the user. The touch panel includes one or more touch sensors to sense touch, slide, and gestures on the touch panel. The touch sensor may not only sense the boundaries of the touch or slide action, but also detect the duration and pressure associated with the touch or slide operation. In some embodiments, the multimedia component 608 includes a front camera and / or a rear camera. When the electronic device 600 is in an operating mode, such as a shooting mode or a video mode, the front camera and / or the rear camera may receive external multimedia data. Each front camera and the rear camera may be a fixed optical lens system or have a focal length and optical zoom capability.

[0180] The audio component 610 is configured to output and / or input audio signals. For example, the audio component 610 includes a microphone (MIC), and when the electronic device 600 is in an operating mode, such as a call mode, a recording mode, and a voice recognition mode, the microphone is configured to receive an external audio signal. The received audio signal can be further stored in the memory 604 or sent via the communication component 616. In some embodiments, the audio component 610 also includes a speaker for outputting audio signals.

[0181] I / O interface 612 provides an interface between processing component 602 and peripheral interface modules, such as keyboards, click wheels, buttons, etc. These buttons may include but are not limited to: a home button, a volume button, a start button, and a lock button.

[0182] The sensor assembly 614 includes one or more sensors for providing various aspects of status assessment for the electronic device 600. For example, the sensor assembly 614 can detect the open / closed state of the electronic device 600, the relative positioning of the components, such as the display and keypad of the electronic device 600, and the sensor assembly 614 can also detect the position change of the electronic device 600 or a component of the electronic device 600, the presence or absence of contact between the user and the electronic device 600, the orientation or acceleration / deceleration of the electronic device 600, and the temperature change of the electronic device 600. The sensor assembly 614 can also include a proximity sensor configured to detect the presence of nearby objects without any physical contact. The sensor assembly 614 can also include a light sensor, such as a CMOS or CCD image sensor, for use in imaging applications. In some embodiments, the sensor assembly 614 can also include an acceleration sensor, a gyroscope sensor, a magnetic sensor, a pressure sensor, or a temperature sensor.

[0183] The communication component 616 is configured to facilitate wired or wireless communication between the electronic device 600 and other devices. The electronic device 600 can access a wireless network based on a communication standard, such as WiFi, 2G or 3G, 4G or 5G or a combination thereof. In an exemplary embodiment, the communication component 616 receives a broadcast signal or broadcast-related information from an external broadcast management system via a broadcast channel. In an exemplary embodiment, the communication component 616 also includes a near field communication (NFC) module to facilitate short-range communication. For example, the NFC module can be implemented based on radio frequency identification (RFID) technology, infrared data association (IrDA) technology, ultra-wideband (UWB) technology, Bluetooth (BT) technology and other technologies.

[0184] In an exemplary embodiment, the electronic device 600 may be implemented by one or more application-specific integrated circuits (ASICs), digital signal processors (DSPs), digital signal processing devices (DSPDs), programmable logic devices (PLDs), field programmable gate arrays (FPGAs), controllers, microcontrollers, microprocessors, or other electronic components to execute the motion trajectory generation method of the electronic device described above.

[0185] In a fifth aspect, the present disclosure, in an exemplary embodiment, further provides a non-temporary computer-readable storage medium including instructions, such as a memory 604 including instructions, and the instructions can be executed by a processor 620 of an electronic device 600 to complete the motion trajectory generation method of the electronic device. For example, the non-temporary computer-readable storage medium can be a ROM, a random access memory (RAM), a CD-ROM, a magnetic tape, a floppy disk, an optical data storage device, and the like.

[0186] Those skilled in the art will readily appreciate other embodiments of the present disclosure after considering the specification and practicing the disclosure disclosed herein. This application is intended to cover any variations, uses, or adaptations of the present disclosure that follow the general principles of the present disclosure and include common knowledge or customary techniques in the art that are not disclosed in the present disclosure. The description and examples are intended to be exemplary only, and the true scope and spirit of the present disclosure are indicated by the following claims.

[0187] It should be understood that the present disclosure is not limited to the exact structures that have been described above and shown in the drawings, and that various modifications and changes may be made without departing from the scope thereof. The scope of the present disclosure is limited only by the appended claims.

Claims

1. A motion trajectory generation method, characterized in that: The method comprises: Constructing a first joint model of the robot, wherein the number of dimensions of the first joint model is less than the number of dimensions of a full-dimensional joint model of the robot; Based on the first joint model, construct an action sequence of the target motion, wherein the action sequence includes a plurality of action stages and switching events between adjacent action stages; According to the action sequence, a trajectory of the target movement is constructed.

2. The motion trajectory generation method according to claim 1, characterized in that: The first joint model of the robot is constructed, comprising: The non-motion dimension in the full-dimensional joint model of the robot is eliminated to obtain a first joint model, wherein the motion dimension is a dimension in which motion exists in the target motion.

3. The motion trajectory generation method according to claim 1, characterized in that: The step of constructing an action sequence of the target motion based on the first joint model includes: According to the target motion, an event in which the contact state between at least one contact point of the first joint model and the ground changes is determined as a switching event, and the motion between adjacent switching events is determined as an action stage.

4. The motion trajectory generation method according to claim 1, characterized in that: The step of constructing the trajectory of the target movement according to the action sequence includes: According to the action sequence, discretize the trajectory of the target motion into a plurality of trajectory points, wherein the trajectory points have state variables, and the state variables represent the state of the first joint model; Optimizing the state variables of the trajectory points among the plurality of trajectory points by using a pre-constructed cost function and constraint conditions to obtain an optimization result of the state variables of the trajectory points, wherein the constraint conditions are related to the action sequence; The trajectory of the target movement is determined according to the state variable optimization result of the trajectory point.

5. The motion trajectory generation method according to claim 4, characterized in that: The cost function is related to at least one of the following: an error between a position vector of at least one of the plurality of trajectory points and a desired state of the target motion, wherein the position vector includes a floating base position and a position of a joint; A joint torque of at least one trajectory point among the plurality of trajectory points.

6. The motion trajectory generation method according to claim 4, characterized in that: The constraint condition includes at least one of the following: The state variables of the first trajectory point are consistent with the specified state of the target motion; The state variable of each trajectory point conforms to the dynamic equation of the first joint model; The state variables of adjacent trajectory points satisfy the integral continuity; The state variables of the trajectory points whose contact state with the ground is switched from non-contact to contact satisfy the discrete dynamic mapping of the first joint model; The state variables of each trajectory point meet the joint limit conditions; The contact state with the ground is that the contact point has no relative movement with the ground, the supporting force between the contact point and the ground is not less than 0, and the friction force between the contact point and the ground is not greater than the maximum static sliding friction force.

7. The motion trajectory generation method according to any one of claims 3 to 6, characterized in that: There are multiple contact points between the robot and the ground, and there are at least two contact points, namely the toes and the heels, between the first joint model and the ground.

8. The motion trajectory generation method according to claim 4, characterized in that: The step of determining the trajectory of the target movement according to the state variable optimization result of the trajectory point comprises: Determining the trajectory of the first joint model executing the target motion according to the state variable optimization result of the trajectory point; The trajectory of the target motion executed by the first joint model is dimensionally restored to obtain the trajectory of the target motion executed by the robot.

9. The motion trajectory generation method according to claim 4, characterized in that: The state variables include at least one of the following: a position vector, a velocity vector, an acceleration vector, a contact point vector, and a torque vector, wherein the position vector includes the floating base position and the position of the joint, the velocity vector includes the velocity of the joint, the acceleration vector includes the acceleration of the joint, the contact point vector includes the external force received by the contact point, and the torque vector includes the joint torque of the joint.

10. A motion trajectory generating device, characterized in that: The device comprises: A construction module, used to construct a first joint model of the robot, wherein the number of dimensions of the first joint model is less than the number of dimensions of a full-dimensional joint model of the robot; A sequence module, used for constructing an action sequence of a target motion based on the first joint model, wherein the action sequence includes a plurality of action stages and switching events between adjacent action stages; The trajectory module is used to construct the trajectory of the target movement according to the action sequence.

11. A robot, characterized in that: The robot comprises a memory and a processor, wherein the memory is used to store computer instructions executable on the processor, and the processor is used to implement the method according to any one of claims 1 to 9 when executing the computer instructions.

12. An electronic device, characterized in that: The electronic device comprises a memory and a processor, wherein the memory is used to store computer instructions executable on the processor, and the processor is used to implement the method according to any one of claims 1 to 9 when executing the computer instructions.

13. A computer-readable storage medium having a computer program stored thereon, characterized in that: When the program is executed by a processor, the method according to any one of claims 1 to 9 is implemented.

Citation Information

Patent Citations

  • Man-machine interaction control method of robot system in unknown environment

    CN106406098A

  • Floating base dynamic feedforward controlling method, device and multi-legged robot

    CN111558941A

  • Dynamic motion generation and control method for biped robot

    CN112051741A

  • Method of registration 3d / 2d model for measurement of joint kinematics

    KR1020080109379A

  • Robot path planning method, operation method, robot and medium

    WO2022161315A1