WO2022161297A1 - 机器人运动控制方法、装置、机器人及存储介质 - Google Patents
机器人运动控制方法、装置、机器人及存储介质 Download PDFInfo
- Publication number
- WO2022161297A1 WO2022161297A1 PCT/CN2022/073356 CN2022073356W WO2022161297A1 WO 2022161297 A1 WO2022161297 A1 WO 2022161297A1 CN 2022073356 W CN2022073356 W CN 2022073356W WO 2022161297 A1 WO2022161297 A1 WO 2022161297A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- centroid
- robot
- motion data
- joint
- control information
- Prior art date
Links
- 230000033001 locomotion Effects 0.000 title claims abstract description 302
- 238000000034 method Methods 0.000 title claims abstract description 81
- 238000005457 optimization Methods 0.000 claims abstract description 62
- 239000011159 matrix material Substances 0.000 claims abstract description 57
- 230000006870 function Effects 0.000 claims description 77
- 230000001133 acceleration Effects 0.000 claims description 44
- 239000002245 particle Substances 0.000 claims description 15
- 230000008569 process Effects 0.000 claims description 12
- 238000004458 analytical method Methods 0.000 claims description 8
- 238000004364 calculation method Methods 0.000 claims description 7
- 238000004590 computer program Methods 0.000 claims description 7
- 238000005516 engineering process Methods 0.000 abstract description 19
- 238000013473 artificial intelligence Methods 0.000 abstract description 8
- 150000001875 compounds Chemical class 0.000 description 21
- 238000010586 diagram Methods 0.000 description 11
- 230000008859 change Effects 0.000 description 8
- 238000006243 chemical reaction Methods 0.000 description 8
- 238000006557 surface reaction Methods 0.000 description 8
- 210000001364 upper extremity Anatomy 0.000 description 8
- 238000012545 processing Methods 0.000 description 5
- 238000010276 construction Methods 0.000 description 3
- 238000013461 design Methods 0.000 description 3
- 230000003993 interaction Effects 0.000 description 3
- 230000009191 jumping Effects 0.000 description 3
- 238000011160 research Methods 0.000 description 3
- 230000035945 sensitivity Effects 0.000 description 3
- 238000011161 development Methods 0.000 description 2
- 230000009471 action Effects 0.000 description 1
- 238000013135 deep learning Methods 0.000 description 1
- 210000003141 lower extremity Anatomy 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 230000009347 mechanical transmission Effects 0.000 description 1
- 238000004377 microelectronic Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000003058 natural language processing Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000013433 optimization analysis Methods 0.000 description 1
- 230000008447 perception Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
Images
Classifications
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1656—Programme controls characterised by programming, planning systems for manipulators
- B25J9/1664—Programme controls characterised by programming, planning systems for manipulators characterised by motion, path, trajectory planning
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B62—LAND VEHICLES FOR TRAVELLING OTHERWISE THAN ON RAILS
- B62D—MOTOR VEHICLES; TRAILERS
- B62D57/00—Vehicles characterised by having other propulsion or other ground- engaging means than wheels or endless track, alone or in addition to wheels or endless track
- B62D57/02—Vehicles characterised by having other propulsion or other ground- engaging means than wheels or endless track, alone or in addition to wheels or endless track with ground-engaging propulsion means, e.g. walking members
- B62D57/032—Vehicles characterised by having other propulsion or other ground- engaging means than wheels or endless track, alone or in addition to wheels or endless track with ground-engaging propulsion means, e.g. walking members with alternately or sequentially lifted supporting base and legs; with alternately or sequentially lifted feet or skid
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B13/00—Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion
- G05B13/02—Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric
- G05B13/04—Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric involving the use of models or simulators
- G05B13/042—Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric involving the use of models or simulators in which a parameter or coefficient is automatically adjusted to optimise the performance
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J11/00—Manipulators not otherwise provided for
- B25J11/008—Manipulators for service tasks
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1602—Programme controls characterised by the control system, structure, architecture
- B25J9/1607—Calculation of inertia, jacobian matrixes and inverses
Definitions
- the embodiments of the present application relate to the technical field of robot control of artificial intelligence technology, and in particular, to a method, device, robot, storage medium, and computer program product for motion control of a robot.
- Embodiments of the present application provide a robot motion control method, device, robot, storage medium, and computer program product.
- the technical solution is as follows:
- a robot motion control method comprising:
- centroid reference trajectory for guiding the robot to perform a target motion; wherein, the centroid reference trajectory refers to a centroid motion trajectory of the robot planned to achieve the target motion;
- the robot is controlled to perform the target movement based on the joint control information.
- a robot motion control device includes:
- a reference trajectory acquisition module configured to acquire a centroid reference trajectory for guiding the robot to perform a target movement; wherein, the centroid reference trajectory refers to a centroid movement trajectory of the robot planned to achieve the target movement;
- centroid information determination module configured to obtain centroid control information for controlling the robot to follow the movement of the centroid reference trajectory based on an objective function optimization
- a joint information generation module for generating joint control information according to the centroid control information and the structure matrix of the robot
- a robot control module configured to control the robot to execute the target movement based on the joint control information.
- a robot comprising a memory and one or more processors, the memory storing computer-readable instructions that, when executed by the one or more processors, cause the one or more A plurality of processors execute the steps of the above-described robot motion control method.
- One or more non-volatile computer-readable storage media having computer-readable instructions stored thereon that, when executed by one or more processors, cause the one or multiple processors to execute the steps of the above-described robot motion control method.
- a computer program product or computer program comprising computer readable instructions stored in a computer readable storage medium from which a processor of a computer device readable storage The medium reads the computer-readable instructions, and the processor executes the computer-readable instructions, so that the computer device performs the steps of the above-mentioned robot motion control method.
- FIG. 1 is a schematic structural diagram of a foot-wheel compound quadruped robot shown in the present application
- Fig. 2 is the schematic diagram that a kind of foot-wheel compound quadruped robot shown in the present application becomes two-wheeled standing state;
- FIG. 3 is a schematic diagram of a foot-wheeled compound quadruped robot shown in the present application performing an operation task in a two-wheeled standing state;
- Fig. 4 is a schematic diagram of interaction with a user in a two-wheeled standing state of a compound quadruped robot shown in the present application;
- FIG. 5 is a schematic diagram of switching between various states of a compound quadruped robot with foot wheels shown in the present application;
- FIG. 6 is a flowchart of a robot motion control method provided by an embodiment of the present application.
- FIG. 7 is a flowchart of a robot motion control method provided by another embodiment of the present application.
- FIG. 8 is a schematic diagram of a particle model corresponding to a foot-wheel compound quadruped robot shown in the present application.
- FIG. 9 is a block diagram of a robot motion control device provided by an embodiment of the present application.
- FIG. 10 is a simplified structural block diagram of a robot provided by an embodiment of the present application.
- Artificial intelligence technology is a comprehensive discipline, involving a wide range of fields, including both hardware-level technology and software-level technology.
- the basic technologies of artificial intelligence generally include technologies such as sensors, special artificial intelligence chips, cloud computing, distributed storage, big data processing technology, operation/interaction systems, and mechatronics.
- Artificial intelligence software technology mainly includes computer vision technology, speech processing technology, natural language processing technology, and machine learning/deep learning.
- a robot is a mechanical and electronic device that uses mechanical transmission and modern microelectronics technology to imitate certain skills of people.
- Robots are developed on the basis of electronics, machinery and information technology.
- a robot does not necessarily have to look like a human, as long as it can autonomously complete the tasks and commands given to it by humans, it belongs to the big family of robots.
- a robot is an automated machine that possesses some intelligent capabilities similar to humans or organisms, such as perception, planning, action and coordination, and is a highly flexible automated machine.
- the functions and technical levels of robots have been greatly improved, and mobile robots and robot vision and touch technologies are typical representatives.
- the robot motion control method provided by the embodiment of the present application can make the robot move according to the reference trajectory of the center of mass, so as to complete a certain target motion.
- the target movement may be a movement process from a four-legged lying state to a two-legged standing state, or a movement process from a two-legged standing state to a jumping and flying state, and so on.
- the robot motion control method provided by the embodiments of the present application, by simplifying the robot into a particle model, a reference trajectory of the center of mass used to guide the robot to perform a target motion is obtained, and then based on the objective function optimization, the reference trajectory of the center of mass used to control the robot to follow the above-mentioned center of mass is obtained through optimization
- the mass center control information of the trajectory motion, and the joint control information is generated accordingly, and then the robot is controlled to perform the target motion based on the joint control information.
- the technical solution provided by the embodiment of the present application can be used to achieve accurate and effective.
- the control makes the robot complete the target movement as expected, which enriches the robot's movement ability.
- this method is sensitive to the environment and robust because of the need for very accurate dynamic parameters of the robot and stable ground friction conditions. poor.
- the present application by first obtaining the offline-determined reference trajectory of the centroid, and then constructing a controller to realize the online tracking of the reference trajectory of the centroid, the actual movement trajectory of the centroid is continuously fitted to the reference trajectory of the centroid, so that accurate dynamic parameters can be obtained without the need for and stable ground friction conditions to execute a given target motion.
- the whole scheme has low sensitivity to the environment and high robustness, which effectively improves the stability of the control robot to execute the target motion.
- the robot is a compound quadruped robot with foot wheels as an example.
- the so-called foot-wheel compound quadruped robot refers to a quadruped robot with 2 front legs and 2 rear legs, and the feet of the quadruped robot are equipped with wheels, so that the quadruped robot can not only walk on four legs, but also Wheeled sports are possible.
- the above wheels may be installed only on the rear legs of the quadruped robot, or only on the front legs of the quadruped robot, or corresponding wheels may be installed on both the front and rear legs of the quadruped robot.
- FIG. 1 it exemplarily shows a schematic structural diagram of a foot-wheel compound quadruped robot.
- the foot-wheel compound quadruped robot may include: camera 1, trunk 2, front legs 3 and 4 with three degrees of freedom (two left and right), front wheels 5 and 6 (active or passive, two left and right), three degrees of freedom Rear legs 7, 8 (two left and right), rear wheels 9, 10 (active, two left and right).
- the camera 1 has an image acquisition function, such as acquiring an image of the surrounding environment, so as to analyze the image of the surrounding environment, so as to plan a suitable walking route for the robot.
- the foot-wheel compound quadruped robot can use the three-degree-of-freedom front legs 3 and 4 (two left and right) and the three-degree-of-freedom rear legs 7 and 8 (two left and right) to contact the ground.
- the above four legs are respectively driven and controlled to realize four-legged walking.
- four-wheel sliding can be realized;
- the foot-wheel compound quadruped robot can change from the four-legged grounded state to the four-wheeled grounded state, and then from the four-wheeled grounded state to the two-wheeled standing state.
- the quadruped robot in the standing state with two wheels can move at high speed on wheels. Compared with the traditional quadruped robot, it improves the movement efficiency and is more suitable for structured scenes, such as residential areas and industrial parks.
- Figure 3 after the two-wheel standing, the movement space of the two forelimbs of the quadruped robot increases, and it can also complete a variety of operation tasks without adding additional auxiliary robotic arms. Carrying objects as shown in part (a) of FIG.
- the free switching between quadruped and two-wheeled motion and autonomous two-wheeled standing can be used as a demonstration method of the foot-wheeled compound quadruped robot, which increases the diversity of human-computer interaction.
- the robot provided by the embodiment of the present application is the foot-wheel compound quadruped robot shown in FIG. 1 , as shown in FIG. 5 , it may include the following motion states: First, the foot-wheel compound quadruped robot is in a normal state.
- FIG. 6 shows a flowchart of a robot motion control method provided by an embodiment of the present application.
- the execution body of each step of the method may be a robot, such as a processor provided in the robot.
- the method may include the following steps (610-640):
- step 610 the processor in the robot obtains a center of mass reference trajectory used to guide the robot to perform the target motion; wherein, the center of mass reference trajectory refers to a motion trajectory of the robot's center of mass that is planned to achieve the target motion.
- the center of mass of the robot refers to the center of mass of the robot, which is an imaginary point on the robot where the mass is considered to be concentrated.
- the target motion can be any motion in which the position of the center of mass changes.
- the target movement can be a movement process from four-legged lying on the ground to a two-legged standing state, and the target movement can also be a movement process from a two-legged standing state to a jumping and flying state.
- the above-mentioned target motion may also be any other motion as long as the position of the center of mass changes, which is not limited in this embodiment of the present application.
- the reference trajectory of the center of mass can be generated by other devices and stored in the memory of the robot in advance.
- the reference trajectory of the center of mass can be obtained from the processor.
- the processor of the robot can also generate the reference trajectory of the center of mass.
- the centroid reference trajectory may be generated based on the position change of the robot centroid during the premise of realizing the target movement. The embodiments of the present application do not specifically limit the acquisition method and generation method of the centroid reference trajectory.
- Step 620 the processor optimizes and obtains the centroid control information for controlling the robot to follow the movement of the centroid reference trajectory based on the objective function.
- the centroid control information is control information related to the centroid of the robot, and is used to control the position of the centroid of the robot.
- the centroid control information may include a force applied to the robot's centroid.
- the force applied to the center of mass here may be a force directly applied to the center of mass, or a force applied to the center of mass indirectly.
- the center of mass control information may include the bearing surface reaction force of each contact point between the robot and the bearing surface (eg, the ground).
- the number of contact points between the robot and the bearing surface may be 4, and each sole has one contact point with the bearing surface (eg, the ground).
- the reaction force of the bearing surface refers to the reaction force of the bearing surface where the robot is located to the robot.
- the robot exerts a force on the bearing surface, and the bearing surface will provide a reaction force to the robot.
- the above-mentioned reaction force on the bearing surface may also be referred to as a ground reaction force.
- the bearing surface reaction force of each contact point mentioned above can be regarded as the force applied to the center of mass indirectly.
- the center of mass control information may also include the robot and the bearing surface (such as the ground) The bearing surface reaction force of each contact point between them.
- the center of mass control information may include a thrust for controlling the motion of the robot.
- the objective function is an optimization function set with the goal of realizing the movement of the robot following the reference trajectory of the center of mass. By selecting different control information of the center of mass, different numerical results of the objective function will be calculated. Assuming that the optimization goal is to minimize the value of the objective function, and the robot can follow the reference trajectory of the center of mass, then when there is a set of centroid control information that minimizes the value of the objective function, this set of centroid control information is the result of the optimization. The centroid control information that controls the robot to follow the centroid reference trajectory.
- the robot can follow the reference trajectory of the center of mass, then when there is a set of centroid control information that maximizes the value of the objective function, this set of centroid control information is the result of the optimization.
- the centroid control information that controls the robot to follow the centroid reference trajectory.
- Step 630 the processor generates joint control information according to the centroid control information and the structure matrix of the robot.
- the structure matrix of the robot is the mathematical expression of the structure of the robot, which is used to characterize the structure characteristics of the robot.
- the structure matrix of the robot is used to represent the joint structure of the robot, for example, the joint Jacobian matrix can be used as the structure matrix of the robot.
- the robot may include a plurality of joints, and each joint is used to connect two different parts of the robot, so that the relative positional relationship between the two parts connected by the joint can be changed by applying a moment to the joint.
- the three-degree-of-freedom rear leg is divided into two parts, and the first part and the second part are connected by a rear wheel, which can be regarded as a rear leg
- the joint between the first part and the second part can realize the change of the relative positional relationship between the first part and the second part of the rear leg.
- the relative positional relationship between the three-degree-of-freedom hind legs and the trunk can also be changed, so the three-degree-of-freedom hind legs and the trunk are also connected by corresponding joints.
- the joint control information is control information related to the joints of the robot, and is used to control the joint motion of the robot.
- the joint control information may include torques applied to various joints of the robot.
- Step 640 the processor controls the robot to execute the target motion based on the joint control information.
- each joint of the robot is controlled separately based on the joint control information, for example, a corresponding torque is applied to each joint respectively, so that each joint produces motion, and finally the robot is controlled to execute the target motion.
- the technical solutions provided by the embodiments of the present application by simplifying the robot into a particle model, obtain the reference trajectory of the center of mass used to guide the robot to execute the target movement, and then obtain the reference trajectory for controlling the robot to follow the above-mentioned center of mass based on the optimization of the objective function.
- the mass center control information of the trajectory motion, and the joint control information is generated accordingly, and then the robot is controlled to perform the target motion based on the joint control information.
- the technical solution provided by the embodiment of the present application can be used to achieve accurate and effective.
- the control makes the robot complete the target movement as expected, which enriches the robot's movement ability.
- this method is sensitive to the environment because it requires very accurate dynamic parameters of the robot and stable ground friction conditions. , the robustness is poor.
- the present application by first obtaining the offline-determined reference trajectory of the centroid, and then constructing a controller to realize the online tracking of the reference trajectory of the centroid, the actual movement trajectory of the centroid is continuously fitted to the reference trajectory of the centroid, so that accurate dynamic parameters can be obtained without the need for and stable ground friction conditions to execute a given target motion.
- the whole scheme has low sensitivity to the environment and high robustness, which effectively improves the stability of the control robot to execute the target motion.
- the foot-wheel compound quadruped robot using the technical solutions provided by the embodiments of the present application, it is possible to perform two-wheel stand-up and swing control, so that the foot-wheel compound quadruped robot can crawl on four legs and stand on two wheels.
- the automatic switching between the two moving modes of mobile takes into account the high-speed and high-efficiency characteristics of wheeled sports and the flexible characteristics of foot-based sports to overcome obstacles.
- the front legs are liberated, and a variety of operation tasks can be completed without additional auxiliary mechanical arms, which improves the practicability of the foot-wheel compound quadruped robot.
- FIG. 7 shows a flowchart of a robot motion control method provided by another embodiment of the present application.
- the execution body of each step of the method may be a robot, such as a processor provided in the robot.
- the method may include the following steps (710-750):
- step 710 the processor acquires a barycentric reference trajectory for guiding the robot to perform the target motion; wherein the barycentric reference trajectory refers to the barycentric motion trajectory of the robot planned to achieve the target motion.
- the robot is mainly a quadruped robot
- the target movement is the movement process from the four-legged lying state to the two-legged standing state.
- the specific implementation of other forms of target movement is similar.
- Step 720 the processor obtains the expected movement data of the robot's center of mass based on the reference trajectory of the center of mass.
- the expected center of mass motion data is the expected value of the motion data related to the center of mass of the robot, and the expected value can be obtained by combining the actual center of mass motion data and the reference center of mass motion data; wherein, the actual center of mass motion data is the actual value of the motion data related to the center of mass of the robot,
- the reference center of mass motion data refers to a reference value of motion data related to the center of mass of the robot.
- the actual motion data of the center of mass can be obtained by measuring the actual motion of the robot by means such as sensors.
- the motion data of the reference center of mass can be obtained by corresponding calculation according to the reference track of the center of mass.
- the data categories corresponding to the various pieces of motion data included in the actual centroid motion data, the actual centroid motion data, and the expected centroid motion data may be the same or different.
- the actual centroid motion data includes, but is not limited to, at least one of the following: actual centroid position, actual centroid velocity, actual centroid acceleration, actual centroid angular velocity, and actual centroid angular acceleration.
- the reference centroid motion data includes, but is not limited to, at least one of the following: a reference centroid position, a reference centroid velocity, a reference centroid acceleration, a reference centroid angular velocity, and a reference centroid angular acceleration.
- the expected centroid motion data includes, but is not limited to, at least one of the following: expected centroid position, expected centroid velocity, expected centroid acceleration, expected centroid angular velocity, and expected centroid angular acceleration.
- step 720 may include the following sub-steps (722-728):
- Step 722 the processor acquires the actual center of mass motion data of the robot.
- Step 724 the processor acquires the reference center of mass motion data of the robot according to the reference trajectory of the center of mass.
- step 722 and step 724 may be performed simultaneously, or step 722 may be performed before step 724, or step 722 may be performed after step 724, which is not limited in this embodiment of the present application.
- Step 726 the processor obtains the adjustment value of the centroid motion data according to the difference between the actual centroid motion data and the reference centroid motion data.
- the centroid motion data adjustment value is used to adjust the reference centroid motion data or the actual centroid motion data to obtain desired centroid motion data.
- the reference centroid motion data is adjusted by the centroid motion data adjustment value to obtain the desired centroid motion data
- the actual centroid motion data is adjusted by the centroid motion data adjustment value to obtain the desired centroid motion data.
- the difference between the actual centroid motion data and the reference centroid motion data is calculated, and the centroid motion data adjustment value is obtained according to the gain matrix and the difference.
- a PD Proportional Derivative, proportional derivative
- the gain matrix may be corresponding to the PD controller. PD gain matrix.
- the centroid motion data adjustment values include a centroid acceleration adjustment value and a centroid angular acceleration adjustment value.
- the adjustment value of the center of mass motion data is obtained, and the adjustment value of the center of mass motion data is based on and obtained, of which, represents the center of mass acceleration adjustment value, is the reference centroid velocity, represents the actual centroid velocity, represents the reference centroid position, represents the actual centroid position, and is the gain matrix related to the centroid acceleration,
- ⁇ ref indicates the reference centroid angular velocity
- ⁇ act indicates the actual centroid angular velocity
- R ref indicates the reference rotation matrix of the centroid coordinate system relative to the world coordinate system
- R act indicates the actual centroid coordinate system relative to the world coordinate system.
- rotation matrix, (R ref R act ) ⁇ represents the rotation vector from R act to R ref , and is the gain matrix related to the centroid angular acceleration
- step 728 the processor obtains the desired centroid motion data according to the adjusted value of the centroid motion data and the reference centroid motion data.
- the desired centroid motion data is calculated by adding the centroid motion data adjustment value and the reference centroid motion data.
- the reference center of mass motion data includes the reference center of mass acceleration and the reference center of mass angular acceleration
- the adjustment value of the center of mass motion data includes the adjustment value of the center of mass acceleration and the adjustment value of the center of mass angular acceleration
- the expected centroid motion data includes the expected generalized centroid acceleration, that is, the expected centroid acceleration and the expected centroid angular acceleration.
- Step 730 the processor calculates the centroid control information required to make the value of the objective function satisfy the optimization stop condition based on the expected centroid motion data.
- the robot is simplified to a particle model, and a corresponding dynamic equation can be obtained by performing a dynamic analysis on the particle model, and then the dynamic equation is analyzed, so that the motion trajectory of the robot's center of mass is referenced to the center of mass
- the trajectory is consistent as the goal, and the objective function can be constructed.
- the value of the objective function can be used to characterize the degree of deviation of the robot from the reference trajectory of the center of mass. For example, the smaller the value of the objective function, the smaller the deviation of the robot from the reference trajectory of the center of mass; on the contrary, the larger the value of the objective function, the greater the deviation of the robot from the reference trajectory of the center of mass.
- the optimization stop condition corresponding to the objective function may be to stop the optimization when the value of the objective function is minimized.
- the optimization stop condition corresponding to the objective function may be to stop the optimization when the value of the objective function is maximized. Therefore, the design of the optimization stop condition corresponding to the objective function depends on the construction method of the objective function. Different objective function construction methods can correspond to different optimization stop conditions.
- the optimization stop condition corresponding to the objective function constructed by method A is: When the value of the objective function is minimized, the optimization is stopped; when the optimization stop condition corresponding to the objective function constructed by way B is to maximize the value of the objective function, the optimization is stopped;
- the parameters of the objective function may include expected mass center motion data and mass center control information, wherein the desired mass center motion data may be calculated by using the above step 720, and the mass center control information is an optimization variable, and the objective function can be obtained by optimizing the objective function.
- the centroid control information when the value of satisfies the optimization stop condition, and the centroid control information obtained by the optimization is used as the centroid control information for controlling the robot to follow the movement of the centroid reference trajectory.
- the objective function is:
- W w represents a positive definite weight matrix
- w des represents the desired centroid motion data
- A is a matrix constructed based on the positional relationship between the robot's centroid and the contact point
- f represents the centroid control information.
- the above-mentioned contact points refer to the contact points between the robot and the environment, for example, the contact points between the robot and the ground or other objects in the environment. The contact between the robot and the objects in the environment will generate a force that makes the robot perform the target motion.
- the robot can be simplified into a particle model, then dynamic analysis is performed on it to construct a corresponding dynamic equation, and an objective function is constructed based on the dynamic equation.
- the dynamic equation is constructed based on the forces in all directions that the robot is subjected to, and the forces in all directions are superimposed on each other, so that the robot remains in a static or stable state.
- the objective function used to control the robot to follow the reference trajectory of the center of mass can be constructed, which can simplify the construction process of the objective function and the optimization analysis process for the objective function, thereby generating A relatively simple objective function that can achieve the purpose can help reduce the amount of calculation required for subsequent objective function optimization and improve the efficiency of the entire robot control process.
- the centroid control information required to make the value of the objective function satisfy the optimization stop condition is calculated by QP (Quadratic Programming, quadratic programming) optimization method or IPOPT (Interior Point Optimizer, interior point optimizer) optimization method .
- the QP optimization method is a nonlinear optimization method, and its essence is to find a multi-dimensional vector under linear constraints, so that the value of the quadratic objective function of the multi-dimensional vector is minimized (or maximized).
- the QP optimization method is used to optimize the centroid control information, so that the robot can follow the given centroid reference trajectory to execute the target movement.
- IPOPT optimization method is also a nonlinear optimization method. Certainly, in addition to the QP optimization method or the IPOPT optimization method, other nonlinear optimization methods may also be used, which are not limited in this embodiment of the present application.
- Step 740 the processor generates joint control information according to the centroid control information and the structure matrix of the robot.
- the joint control information for controlling the joint motion of the robot can be generated by combining with the structure matrix of the robot.
- step 740 may include the following sub-steps (742-748):
- Step 742 the processor generates the joint control information to be adjusted according to the centroid control information and the structure matrix of the robot.
- the joint control information to be adjusted refers to the joint control information generated directly based on the centroid control information and the structure matrix of the robot.
- the joint control information to be adjusted is obtained by directly multiplying the centroid control information and the structure matrix of the robot. If the joints of the robot are controlled directly based on the joint control information to be adjusted, some joints may not move according to the corresponding motion trajectory or exceed the corresponding maximum motion range. Therefore, in order to avoid this phenomenon, it is necessary to pass The following steps are used to adjust the joint control information to be adjusted.
- Step 744 the processor obtains the actual joint motion data of the robot.
- the actual joint motion data is the actual value of the motion data related to each joint of the robot, and the actual joint motion data can be obtained by measuring the actual joint state of the robot by means such as sensors.
- the actual joint motion data includes, but is not limited to, at least one of the following: an actual joint angle, an actual joint angular velocity, and an actual joint angular acceleration.
- Step 746 the processor acquires the reference joint motion data of the robot.
- the reference joint motion data is a reference value of motion data related to each joint of the robot, and the reference joint motion data can be obtained by corresponding calculation according to the reference trajectory of the center of mass.
- the reference joint motion data includes, but is not limited to, at least one of the following: a reference joint angle, a reference joint angular velocity, and a reference joint angular acceleration.
- steps 744 and 746 may be performed simultaneously, or step 744 may be performed before step 746, or step 744 may be performed after step 746, which is not limited in this embodiment of the present application.
- Step 748 the processor adjusts the joint control information to be adjusted according to the actual joint motion data and the reference joint motion data, and obtains the joint control information.
- the adjustment value corresponding to the joint control information to be adjusted is calculated according to the actual joint motion data and the reference joint motion data, and then the adjustment value is used to adjust the joint control information to be adjusted to obtain the joint control information.
- the joint control information to be adjusted includes the torque to be adjusted of each joint of the robot, according to the actual joint motion data (such as including the actual joint angle and the actual joint angular velocity) and the reference joint motion data (such as including the reference joint angle and reference joint Angular velocity), calculate the adjustment value corresponding to the torque to be adjusted of each joint, and then add the torque to be adjusted of each joint and its corresponding adjustment value to obtain the final torque applied to each joint.
- the actual joint motion data such as including the actual joint angle and the actual joint angular velocity
- the reference joint motion data such as including the reference joint angle and reference joint Angular velocity
- the joint control information to be adjusted is adjusted according to the actual joint motion data and the reference joint motion data to obtain the joint control information, which is based on obtained, where ⁇ represents the joint moment, J ⁇ represents the structure matrix, and f opt represents the centroid control information obtained by optimization, represents the reference joint angular velocity, represents the actual joint angular velocity, qref represents the reference joint angle, qact represents the actual joint angle, and is the gain matrix related to joint torque.
- the joint angle can refer to the angle between the two parts connected by the joint;
- the joint angular velocity can refer to the change of the joint angle in unit time, which is used to describe the change of the joint angle with time. speed.
- Step 750 the processor controls the robot to perform the target motion based on the joint control information.
- the corresponding torque is applied to each joint of the robot by driving the motor, so that the robot executes the target motion.
- the technical solutions provided by the embodiments of the present application can also be efficiently and robustly obtained by constructing an objective function and using nonlinear optimization methods such as QP optimization or IPOPT optimization to optimize the objective function.
- the centroid control information of the robot following the centroid reference trajectory can also be efficiently and robustly obtained by constructing an objective function and using nonlinear optimization methods such as QP optimization or IPOPT optimization to optimize the objective function.
- the processor also determines the desired center of mass/joint motion data of the robot based on the actual center of mass/joint motion data and reference center of mass/joint motion data of the robot, and then obtains the center of mass/joint control information based on the desired center of mass/joint motion data, It is ensured that the finally obtained center of mass/joint control information can accurately control the robot to follow the reference trajectory of the center of mass to move, and even if there is a deviation, it can be corrected in time, and finally achieve the purpose of accurately controlling the robot to execute the target movement.
- the processor also generates the joint control information to be adjusted according to the center of mass control information and the structure matrix of the robot, and then adjusts the joint control information to be adjusted according to the actual joint motion data and the reference joint motion data, and obtains the final control of the joint motion of the robot.
- the joint control information can prevent some joints from not moving according to the corresponding motion trajectory or exceeding the corresponding maximum motion range, which ensures the accuracy and effectiveness of the joint motion control.
- the processor first constructs an objective function that is used to optimize the force used to control the motion of the robot so that the motion trajectory of the robot's center of mass is consistent with the reference trajectory of the center of mass.
- the objective function is optimized to obtain the force used to control the motion of the robot.
- the torque used to control the movement of the robot is determined.
- the processor performs a dynamic analysis on the particle model obtained based on the simplification of the robot ontology, and obtains a dynamic equation; with the goal of making the trajectory of the center of mass of the robot consistent with the reference trajectory of the center of mass, analyzes the dynamic equation, and constructs a objective function.
- the processor simplifies the robot ontology into a particle model, performs dynamic analysis on the particle model, and obtains a corresponding dynamic equation, and then analyzes the dynamic equation, so that the movement trajectory of the robot's center of mass is the same as the center of mass.
- the reference trajectory is consistent as the goal, and the objective function can be constructed.
- the processor may determine the moment used to control the motion of the robot by: obtaining the actual angle and actual angular velocity of each joint of the robot, obtaining the reference angle and reference angular velocity of each joint based on the reference trajectory of the center of mass, The force of motion, the actual angle and actual angular velocity of each joint, and the reference angle and reference angular velocity of each joint determine the torque used to control the motion of the robot.
- the frontal angle of the joint can be the angle between the two parts connected by the joint;
- the joint angular velocity can be the change of the joint angle in unit time, which is used to describe the joint angle The degree of change over time.
- the center of mass control information may include a bearing surface for controlling the movement of the robot.
- the reaction force, the joint control information may include the joint moment exerted on each joint of the robot.
- the joint torque can refer to the torque that needs to be applied to the joint.
- the processor simplifies the foot-wheel compound quadruped robot into the particle model shown in Figure 8, and the dynamic analysis of it can be obtained:
- m represents the total mass of the robot
- L represents the angular momentum
- pc and ri represent the position of the center of mass and the contact point (such as the contact point between the robot's foot and the ground) in the world coordinate system xWz
- fi represents the contact point
- N C represents the number of contact points
- g represents the gravitational acceleration
- I 3 ⁇ 3 represents the 3 ⁇ 3 unit matrix.
- A is a matrix constructed based on the position of the centroid and the position of the contact point, and the form of A is:
- f is a matrix constructed based on the bearing surface reaction force at the contact point, and the form of f is:
- the differential angular momentum corresponding to the center of mass can be expressed as:
- I represents the instantaneous moment of inertia of the torso
- ⁇ represents the angular velocity of the center of mass
- the objective function is constructed according to the above formula 1, and the reaction force of the bearing surface used to control the motion of the robot is obtained by optimization, so that the motion trajectory of the robot's center of mass is consistent with the reference trajectory of the center of mass.
- the objective function can be expressed as:
- W w represents a positive definite weight matrix
- w des represents the expected value (that is, the expected centroid motion data)
- the specific form is:
- Equation 4 the desired angular momentum differential can be expressed as:
- I act represents the actual instantaneous moment of inertia of the torso
- ⁇ act is the actual angular velocity of the center of mass.
- R ref and R act are the reference and actual rotation matrices of the center of mass system relative to the world system, respectively, (R ref R act ) ⁇ represents the rotation vector from R act to R ref , and ⁇ act is the actual center of mass angular velocity, ⁇ ref is the angular velocity of the reference center of mass, is the PD gain.
- Equation 5 As the objective function, QP optimization is performed on it, and the expected bearing surface reaction force can be optimized.
- the specific method is to simplify Equation 5 into the standard form of the QP optimization objective function, namely:
- the Hessian matrix required for QP optimization is (A T WA)
- the gradient vector is -A T Ww des
- the variable to be optimized is the bearing surface reaction force f. Then, the reaction force of the bearing surface can be optimized by using the QP optimization function library.
- J ⁇ represents the joint Jacobian matrix
- f opt represents the optimized bearing surface reaction force
- q ref , q act represent the reference joint angle and the actual joint angle, respectively
- PD gain is the PD gain.
- a reference trajectory of the center of mass used to guide the robot to execute the target movement is obtained, and then QP optimization is used to generate the force and moment used to control the robot to follow the movement of the above-mentioned reference trajectory of the center of mass, and According to this, the robot is controlled to execute the target movement, and for any movement scene where the position of the center of mass changes, accurate and effective control can be achieved, so that the robot can complete the target movement as expected, and the movement ability of the robot is enriched.
- the whole scheme has low sensitivity to the environment and high robustness, which effectively improves the stability of controlling the robot to execute the target motion.
- FIG. 9 shows a block diagram of a robot motion control apparatus provided by an embodiment of the present application.
- the device has the function of realizing the above-mentioned robot motion control method, and the function can be realized by hardware or by executing corresponding software by hardware.
- the device can be a robot, or can be arranged in a robot.
- the apparatus 900 may include: a reference trajectory acquisition module 910 , a centroid information determination module 920 , a joint information generation module 930 and a robot control module 940 .
- the reference trajectory acquisition module 910 is configured to acquire a centroid reference trajectory for guiding the robot to perform a target movement; wherein the centroid reference trajectory refers to a centroid movement trajectory of the robot planned to achieve the target movement.
- the centroid information determination module 920 is configured to optimize the centroid control information for controlling the robot to follow the centroid reference trajectory based on the objective function optimization.
- the joint information generation module 930 is configured to generate joint control information according to the centroid control information and the structure matrix of the robot.
- the robot control module 940 is configured to control the robot to execute the target movement based on the joint control information.
- the value of the objective function is used to represent the degree of deviation of the robot from the reference trajectory of the center of mass.
- the centroid information determination module 920 is configured to acquire expected centroid motion data of the robot based on the centroid reference trajectory, where the expected centroid motion data is an expected value of motion data related to the centroid of the robot ; Calculate the centroid control information required when the value of the objective function satisfies the optimization stop condition based on the desired centroid motion data.
- the objective function is:
- W w represents a positive definite weight matrix
- w des represents the desired centroid motion data
- A is a matrix constructed based on the positional relationship between the centroid of the robot and the contact point
- f represents the centroid control information
- the centroid control information required for the calculation to make the value of the objective function satisfy the optimization stop condition is through a QP optimization method or an IPOPT optimization method.
- the centroid information determination module 920 is further configured to obtain the actual centroid motion data of the robot; obtain the reference centroid motion data of the robot according to the centroid reference trajectory; and obtain the robot's reference centroid motion data according to the actual centroid motion The difference between the data and the reference center of mass motion data, obtain the adjustment value of the center of mass motion data;
- the desired centroid motion data is acquired according to the adjusted value of the centroid motion data and the reference centroid motion data.
- the centroid information determination module 920 is further configured to calculate the difference between the actual centroid motion data and the reference centroid motion data; obtain the centroid motion data according to the gain matrix and the difference Adjustment value.
- the acquiring the adjustment value of the centroid motion data according to the difference between the actual centroid motion data and the reference centroid motion data is based on and obtained, of which represents the center of mass acceleration adjustment value, is the reference centroid velocity, represents the actual centroid velocity, represents the reference centroid position, represents the actual centroid position, and is the gain matrix related to the centroid acceleration,
- ⁇ ref indicates the reference centroid angular velocity
- ⁇ act indicates the actual centroid angular velocity
- R ref indicates the reference rotation matrix of the centroid coordinate system relative to the world coordinate system
- R act indicates the actual centroid coordinate system relative to the world coordinate system.
- rotation matrix, (R ref R act ) ⁇ represents the rotation vector from R act to R ref , and is the gain matrix related to the centroid angular acceleration.
- the robot motion control device further includes an objective function building module for performing dynamic analysis on the particle model obtained by simplifying the robot ontology to obtain a dynamic equation; so as to make the motion trajectory of the robot's center of mass and the center of mass reference trajectory Consistency is the goal, the dynamic equation is analyzed, and the objective function is constructed.
- the joint information generation module 930 is further configured to generate joint control information to be adjusted according to the centroid control information and the structure matrix of the robot; obtain actual joint motion data of the robot;
- the adjustment of the joint control information to be adjusted according to the actual joint motion data and the reference joint motion data to obtain the joint control information is based on obtained, where ⁇ represents the joint moment, J ⁇ represents the structure matrix, f opt represents the centroid control information obtained by optimization, represents the reference joint angular velocity, represents the actual joint angular velocity, qref represents the reference joint angle, qact represents the actual joint angle, and is the gain matrix related to joint torque.
- the robot is a quadruped robot
- the target movement is a movement process from a four-legged lying state to a two-legged standing state.
- each module in the above apparatus may be implemented in whole or in part by software, hardware and combinations thereof.
- the above modules may be embedded in or independent of the processor in the robot in the form of hardware, or may be stored in the memory of the robot in the form of software, so that the processor can call and execute operations corresponding to the above modules.
- the apparatus and method embodiments provided by the above embodiments belong to the same concept, and the specific implementation process thereof is detailed in the method embodiments.
- FIG. 10 shows a simplified structural block diagram of a robot provided by an embodiment of the present application.
- the robot may be a biped robot, a quadruped robot, etc., which is not limited in this embodiment of the present application.
- the robot includes one or more processors 101 and memory 102 .
- the processor 101 includes but is not limited to any one of the following: CPU (Central Processing Unit, central processing unit), GPU (Graphics Processing Unit, graphics processor) and FPGA (Field Programmable Gate Array, field programmable logic gate array) and the like.
- the memory 102 may include storage devices such as RAM (Random-Access Memory, random access memory) and ROM (Read-Only Memory, read only memory).
- the processor 101 and the memory 102 may be connected through a system bus.
- the memory 102 stores at least one instruction, at least one piece of program, code set or instruction set, and the at least one instruction, the at least one piece of program, the code set or the instruction set is
- the processor 71 loads and executes to realize the above-mentioned robot motion control method.
- one or more non-volatile computer-readable storage media storing computer-readable instructions, the storage media having at least one instruction, at least one piece of program, code set, or instructions stored thereon are also provided.
- the at least one instruction, the at least one piece of program, the code set or the instruction set implements the above-mentioned robot motion control method when executed by the processor of the computer device.
- the computer-readable storage medium may include: ROM (Read-Only Memory, read-only memory), RAM (Random-Access Memory, random access memory), SSD (Solid State Drives, solid-state hard disk) or optical disc, etc. .
- the random access memory may include ReRAM (Resistance Random Access Memory, resistive random access memory) and DRAM (Dynamic Random Access Memory, dynamic random access memory).
- a computer program product or computer program comprising computer instructions stored in a computer readable storage medium.
- the processor of the robot reads the computer instructions from the computer-readable storage medium, and the processor executes the computer instructions, so that the robot executes the above-mentioned robot motion control method.
- references herein to "a plurality” means two or more.
- "And/or" which describes the association relationship of the associated objects, means that there can be three kinds of relationships, for example, A and/or B, which can mean that A exists alone, A and B exist at the same time, and B exists alone.
- the character "/" generally indicates that the related objects are an "or” relationship.
- the numbering of the steps described in this document only exemplarily shows a possible execution sequence between the steps. In some other embodiments, the above steps may also be executed in different order, such as two different numbers. The steps are performed at the same time, or two steps with different numbers are performed in a reverse order to that shown in the figure, which is not limited in this embodiment of the present application.
Landscapes
- Engineering & Computer Science (AREA)
- Mechanical Engineering (AREA)
- Robotics (AREA)
- Physics & Mathematics (AREA)
- Automation & Control Theory (AREA)
- Mathematical Physics (AREA)
- Medical Informatics (AREA)
- Artificial Intelligence (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Evolutionary Computation (AREA)
- Transportation (AREA)
- Software Systems (AREA)
- Chemical & Material Sciences (AREA)
- General Physics & Mathematics (AREA)
- Health & Medical Sciences (AREA)
- Combustion & Propulsion (AREA)
- Manipulator (AREA)
- Feedback Control In General (AREA)
Abstract
一种机器人运动控制方法、装置、机器人及存储介质,涉及人工智能技术的机器人控制技术领域。方法包括:获取用于引导机器人执行目标运动的质心参考轨迹(610);基于目标函数优化得到用于控制机器人跟随质心参考轨迹运动的质心控制信息(620);根据质心控制信息以及机器人的结构矩阵,生成关节控制信息(630);基于关节控制信息控制机器人执行目标运动(640)。
Description
本申请要求于2021年01月28日提交中国专利局,申请号为202110116500.1,申请名称为“机器人运动控制方法、装置、机器人及存储介质”的中国专利申请的优先权,其全部内容通过引用结合在本申请中。
本申请实施例涉及人工智能技术的机器人控制技术领域,特别涉及一种机器人运动控制方法、装置、机器人、存储介质及计算机程序产品。
随着人工智能技术的发展,一些组织和科研机构相继推出了诸如双足机器人、四足机器人等多款能够实现自动行走的机器人。
以四足机器人为例,目前对于四足机器人的研究大多侧重于本体结构设计,对于其运动控制的研究相对较少,从而导致目前的四足机器人基本只具备四足爬行的运动能力。
发明内容
本申请实施例提供了一种机器人运动控制方法、装置、机器人、存储介质及计算机程序产品。所述技术方案如下:
一种机器人运动控制方法,所述方法包括:
获取用于引导机器人执行目标运动的质心参考轨迹;其中,所述质心参考轨迹是指为实现所述目标运动而规划的所述机器人的质心运动轨迹;
基于目标函数优化得到用于控制所述机器人跟随所述质心参考轨迹运动的质心控制信息;
根据所述质心控制信息以及所述机器人的结构矩阵,生成关节控制信息;及
基于所述关节控制信息控制所述机器人执行所述目标运动。
一种机器人运动控制装置,所述装置包括:
参考轨迹获取模块,用于获取用于引导机器人执行目标运动的质心参考轨迹;其中,所述质心参考轨迹是指为实现所述目标运动而规划的所述机器人的质心运动轨迹;
质心信息确定模块,用于基于目标函数优化得到用于控制所述机器人跟随所述质心参考轨迹运动的质心控制信息;
关节信息生成模块,用于根据所述质心控制信息以及所述机器人的结构矩阵,生成关节控制信息;及
机器人控制模块,用于基于所述关节控制信息控制所述机器人执行所述目标运动。
一种机器人,所述机器人包括存储器和一个或多个处理器,所述存储器存储有计算机可读指令,所述计算机可读指令被所述一个或多个处理器执行时,使得所述一个或多个处理器执行上述机器人运动控制方法的步骤。
一个或多个存储有计算机可读指令的非易失性计算机可读存储介质,其上存储有计算机可读指令,所述计算机可读指令被一个或多个处理器执行时,使得所述一个或多个处理器执行上述机器人运动控制方法的步骤。
一种计算机程序产品或计算机程序,所述计算机程序产品或计算机程序包括计算机可读指令,所述计算机可读指令存储在计算机可读存储介质中,计算机设备的处理器从所述计算机可读存储介质读取所述计算机可读指令,所述处理器执行所述计算机可读指令,使得所述计算机设备执行上述机器人运动控制方法的步骤。
本申请的一个或多个实施例的细节在下面的附图和描述中提出。本申请的其它特征、目的和优点将从说明书、附图以及权利要求书变得明显。
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请示出的一种足轮复合四足机器人的结构示意图;
图2是本申请示出的一种足轮复合四足机器人变为双轮站立状态的示意图;
图3是本申请示出的一种足轮复合四足机器人在双轮站立状态下执行操作任务的示意图;
图4是本申请示出的一种足轮复合四足机器人在双轮站立状态下与用户交互的示意图;
图5是本申请示出的一种足轮复合四足机器人在各种状态间切换的示意图;
图6是本申请一个实施例提供的机器人运动控制方法的流程图;
图7是本申请另一个实施例提供的机器人运动控制方法的流程图;
图8是本申请示出的一种足轮复合四足机器人对应的质点模型的示意图;
图9是本申请一个实施例提供的机器人运动控制装置的框图;
图10是本申请一个实施例提供的机器人的简化结构框图。
为使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施方式作进一步地详细描述。
人工智能技术是一门综合学科,涉及领域广泛,既有硬件层面的技术也有软件层面的技术。人工智能基础技术一般包括如传感器、专用人工智能芯片、云计算、分布式存储、大数据处理技术、操作/交互系统、机电一体化等技术。人工智能软件技术主要包括计算机视觉技术、语音处理技术、自然语言处理技术以及机器学习/深度学习等几大方向。
本申请技术方案主要涉及人工智能技术中的机器人技术,主要涉及机器人智能控制。机器人是利用机械传动、现代微电子技术组合而成的一种能模仿人某种技能的机械电子设备,机器人是在电子、机械及信息技术的基础上发展而来的。机器人的样子不一定必须像人,只要能自主完成人类所赋予他的任务与命令,就属于机器人大家族的成员。机器人是一种自动化的机器,这种机器具备一些与人或生物相似的智能能力,如感知能力、规划能力、动作能力和协同能力,是一种具有高度灵活性的自动化机器。随着计算机技术和人工智能技术的发展,使机器人在功能和技术层次上有了很大的提高,移动机器人和机器人的视觉和触觉等技术就是典型的代表。
本申请实施例提供的机器人运动控制方法,能够使得机器人按照质心参考轨迹进行运动,从而完成某一项目标运动。例如,该目标运动可以是从四足趴地状态变为双足站立状态的运动过程,也可以是从双足站立状态变为跳跃腾空状态的运动过程,等等。
具体地,本申请实施例提供的机器人运动控制方法,通过将机器人简化为质点模型,获取用于引导该机器人执行目标运动的质心参考轨迹,然后基于目标函数优化得到用于控制机器人跟随上述质心参考轨迹运动的质心控制信息,并据此生成关节控制信息,然后基于关节控制信息控制机器人执行目标运动,对于给定参考轨迹的运动场景,采用本申请实施例提供的技术方案,可实现精确有效地控制,使得机器人按照预期完成目标运动,丰富了机器人的运动能力。
相比于直接计算用于引导机器人执行目标运动的作用力和力矩等控制信息,由于需要十分准确的机器人的动力学参数及稳定的地面摩擦条件,因此这种处理方式对环境敏感,鲁棒性较差。而本申请通过先获取离线确定的质心参考轨迹,然后再构建控制器实现质心参考轨迹的在线跟随,将实际的质心运动轨迹不断拟合质心参考轨迹,从而能够在不需要获取准确的动力学参数及稳定的地面摩擦条件的情况下执行既定的目标运动,整个方案对环境的敏感度低,鲁棒性高,有效提升了控制机器人执行目标运动的稳定性。
在一个示例中,以机器人为足轮复合四足机器人为例。所谓足轮复合四足机器人,是指具有2条前腿和2条后腿的四足机器人,且该四足机器人的足部安装有轮子,使得该四足机器人既可以进行四足行走,也可以进行轮式运动。上述轮子可以仅安装在四足机器人的后腿,也可以仅安装在四足机器人的前腿,还可以在四足机器人的前腿和后腿上均安装相应的轮子。
如图1所示,其示例性示出了一种足轮复合四足机器人的结构示意图。该足轮复合四足机器人可以包括:摄像头1,躯干2,三自由度前腿3、4(左右2条),前轮5、6(主动或被动均可,左右两个),三自由度后腿7、8(左右两条),后轮9、10(主动,左右两个)。其中,摄像头1具备图像采集功能,如采集周围环境图像,以便对该周围环境图像进行分析,从而给机器人规划合适的行走路线。在四足趴地状态下,该足轮复合四足机器人可以使用三自由度前腿3、4(左右2条)和三自由度后腿7、8(左右两条)与地面接触,通过电机分别对上述4条腿进行驱动控制,实现四足行走。另外,通过控制前轮5、6和后轮9、10接地,其他部位离开地面,可以实现四轮滑行;或者,通过控制后轮9、10接地,其他部位离开地面,可以实现两轮滑行。
例如,如图2所示,足轮复合四足机器人可以从四足接地状态变为四轮接地状态,再从四轮接地状态变为双轮站立状态。双轮站立状态的四足机器人能以轮式进行高速移动,相比于传统四足机器人的足式运动,提高了运动效率,更适用于结构化场景,如居民小区、工业园区。如图3所示,双轮站立后四足机器人两前肢运动空间增大,在不额外增加辅助机械臂的条件下,也可完成多种操作任务。如图3的(a)部分所示的抱物品,或者图3的(b)部分所示的开门等操作任务。如图4所示,四足与双轮运动自由切换、自主双轮站立可作为足轮复合四足机器人的一种演示方式,增加了人机交互的多样性。
在本申请实施例提供的机器人为图1所示的足轮复合四足机器人的情况下,如图5所示,其可以包括如下几种运动状态:首先,足轮复合四足机器人处于正常的四足站立状态;然后通过足底末端位置控制使其进入双轮站立预备状态,即躯干倾斜一定角度,前腿足底、后腿足底及后轮接触地面;接着实现双轮站立起摆;然后实现双轮站立平衡;此后机器人可进入双轮站立移动状态,其前腿可自由摆动;当移动结束后,利用双轮站立落地控制使机器人恢复到四足站立状态。
请参考图6,其示出了本申请一个实施例提供的机器人运动控制方法的流程图。该方法各步骤的执行主体可以是机器人,如机器人中设置的处理器。该方法可以包括如下几个步骤(610~640):
步骤610,机器人中的处理器获取用于引导机器人执行目标运动的质心参考轨迹;其中,质心参考轨迹是指为实现目标运动而规划的机器人的质心运动轨迹。
机器人的质心是指机器人的质量中心,也即机器人上被认为质量集中于此的一个假想点。
目标运动可以是任意一种质心位置发生变化的运动。以四足机器人为例,目标运动可以是从四足趴地状态变为双足站立状态的运动过程,目标运动也可以是从双足站立状态变为跳跃腾空状态的运动过程。当然,针对不同种类的机器人,上述目标运动还可以是其他任意一种只要质心位置发生变化的运动,本申请实施例对此不作限定。
质心参考轨迹可以由其他设备生成并预先存储在机器人的存储器中,机器人的处理器 在需要用到该质心参考轨迹时,可以从处理器中获取该质心参考轨迹。当然,在一些其他实施例中,在机器人的处理器算力允许的情况下,也可以由机器人的处理器生成该质心参考轨迹。另外,质心参考轨迹可以以实现目标运动为前提,依据这一过程中该机器人质心的位置变化情况生成,本申请实施例对该质心参考轨迹的获取方式和生成方式不作具体限定。
步骤620,处理器基于目标函数优化得到用于控制机器人跟随质心参考轨迹运动的质心控制信息。
质心控制信息是与机器人的质心相关的控制信息,用于对该机器人的质心位置进行控制。例如,该质心控制信息可以包括向机器人的质心施加的作用力。需要说明的是,这里给质心施加的作用力可以是直接施加给质心的作用力,也可以是间接施加给质心的作用力。示例性地,假设目标运动是从四足趴地状态变为双足站立状态的运动过程,那么质心控制信息可以包括机器人与承载面(如地面)之间各个接触点的承载面反作用力。在机器人处于四足趴地状态的情况下,机器人与承载面(如地面)之间的接触点数量可以是4个,每个足底与承载面(如地面)之间具有一个接触点。承载面反作用力是指机器人所在的承载面给机器人的反作用力,通过机器人给承载面施加一个作用力,承载面会向机器人提供一种反作用力。在机器人位于地面上的情况下,上述承载面反作用力也可称为地面反作用力。上述各个接触点的承载面反作用力可以认为是间接施加给质心的作用力。
在其他示例中,在机器人为两足机器人或四足机器人,目标运动为从双足/四足站立状态变为跳跃腾空状态的情况下,质心控制信息也可以包括机器人与承载面(如地面)之间各个接触点的承载面反作用力。又例如,在机器人为两轮机器人或四轮机器人,目标运动为轮式运动的情况下,质心控制信息可以包括用于控制机器人运动的推力。需要说明的是,以上介绍的机器人的种类、目标运动的形式以及相应的质心控制信息的内容,均是示例性和解释性的,在本申请公开内容的基础上,本领域技术人员在实际应用中可以进行灵活设计。
目标函数是以实现机器人跟随质心参考轨迹运动为目标设置的一个优化函数,通过选取不同的质心控制信息,会计算得到目标函数的不同数值结果。假设以使得目标函数的数值最小为优化目标,能够实现机器人跟随质心参考轨迹运动,那么当存在一组质心控制信息使得目标函数的数值最小时,这一组质心控制信息即为优化所得的用于控制机器人跟随质心参考轨迹运动的质心控制信息。假设以使得目标函数的数值最大为优化目标,能够实现机器人跟随质心参考轨迹运动,那么当存在一组质心控制信息使得目标函数的数值最大时,这一组质心控制信息即为优化所得的用于控制机器人跟随质心参考轨迹运动的质心控制信息。
步骤630,处理器根据质心控制信息以及机器人的结构矩阵,生成关节控制信息。
机器人的结构矩阵是该机器人结构的数学化表达,用于表征该机器人的结构特征。在一些实施例中,机器人的结构矩阵用于表征该机器人的关节结构,例如可以采用关节雅克比矩阵来作为该机器人的结构矩阵。
机器人可以包括多个关节,每个关节用于连接机器人的两个不同部分,从而通过对该关节施加力矩,使得该关节所连接的这两个部分之间的相对位置关系能够发生变化。例如,在图1所示的足轮复合四足机器人中,三自由度后腿分为两个部分,第一部分和第二部分之间通过后轮连接,该后轮则可看作是后腿的第一部分和第二部分之间的关节,其能够实现后腿的第一部分和第二部分之间相对位置关系的改变。又例如,三自由度后腿和躯干之间的相对位置关系也能够发生改变,因此三自由度后腿和躯干之间也会通过相应的关节连接。
关节控制信息是与机器人的关节相关的控制信息,用于对该机器人的关节运动进行控制。在一些实施例中,关节控制信息可以包括施加给机器人的各个关节的力矩。
步骤640,处理器基于关节控制信息控制机器人执行目标运动。
在得到关节控制信息之后,基于该关节控制信息对机器人的各个关节分别进行控制,例如给各个关节分别施加相应的力矩,从而使得各个关节产生运动,最终实现控制机器人执行目标运动。
综上所述,本申请实施例提供的技术方案,通过将机器人简化为质点模型,获取用于引导该机器人执行目标运动的质心参考轨迹,然后基于目标函数优化得到用于控制机器人跟随上述质心参考轨迹运动的质心控制信息,并据此生成关节控制信息,然后基于关节控制信息控制机器人执行目标运动,对于给定参考轨迹的运动场景,采用本申请实施例提供的技术方案,可实现精确有效地控制,使得机器人按照预期完成目标运动,丰富了机器人的运动能力。
另外,相比于直接计算用于引导机器人执行目标运动的作用力和力矩等控制信息,由于这种方式需要十分准确的机器人的动力学参数及稳定的地面摩擦条件,因此这种方式对环境敏感,鲁棒性较差。而本申请通过先获取离线确定的质心参考轨迹,然后再构建控制器实现质心参考轨迹的在线跟随,将实际的质心运动轨迹不断拟合质心参考轨迹,从而能够在不需要获取准确的动力学参数及稳定的地面摩擦条件的情况下执行既定的目标运动,整个方案对环境的敏感度低,鲁棒性高,有效提升了控制机器人执行目标运动的稳定性。
对于足轮复合四足机器人来说,采用本申请实施例提供的技术方案,可以实现对其进行双轮站立起摆控制,从而使得足轮复合四足机器人可以在四足爬行移动和双轮站立移动这两种移动方式之间进行自主切换,从而兼顾了轮式运动高速、高效的特征,以及足式运动越障灵活的特点。同时,在双轮站立移动的状态下,解放了前腿,在不额外增加辅助机械臂的条件下,也可完成多种操作任务,提升了足轮复合四足机器人的实用性。
请参考图7,其示出了本申请另一个实施例提供的机器人运动控制方法的流程图。该方法各步骤的执行主体可以是机器人,如机器人中设置的处理器。该方法可以包括如下几个步骤(710~750):
步骤710,处理器获取用于引导机器人执行目标运动的质心参考轨迹;其中,质心参考轨迹是指为实现目标运动而规划的机器人的质心运动轨迹。
在本实施例中,主要以机器人为四足机器人,目标运动为从四足趴地状态变为双足站立状态的运动过程进行介绍说明,其他形式的目标运动的具体实现方式与此类似。
步骤720,处理器基于质心参考轨迹,获取机器人的期望质心运动数据。
期望质心运动数据是与机器人的质心相关的运动数据的期望值,该期望值可以结合实际质心运动数据和参考质心运动数据得到;其中,实际质心运动数据是与机器人的质心相关的运动数据的实际值,参考质心运动数据是指与机器人的质心相关的运动数据的参考值。实际质心运动数据可以通过传感器等手段,对机器人的实际运动情况进行测量得到。参考质心运动数据可以根据质心参考轨迹进行相应计算得到。通过对期望质心运动数据进行计算,在实际质心运动数据已经偏离了参考质心运动数据的情况下,可以控制机器人向质心参考轨迹回归。
具体地,实际质心运动数据、实际质心运动数据以及期望质心运动数据所包含的各项运动数据所对应的数据类别可以相同,也可以不同。在一些实施例中,实际质心运动数据包括但不限于以下至少一项:实际质心位置、实际质心速度、实际质心加速度、实际质心角速度、实际质心角加速度。在一些实施例中,参考质心运动数据包括但不限于以下至少一项:参考质心位置、参考质心速度、参考质心加速度、参考质心角速度、参考质心角加速度。在一些实施例中,期望质心运动数据包括但不限于以下至少一项:期望质心位置、期望质心速度、期望质心加速度、期望质心角速度、期望质心角加速度。
在一些实施例中,如图7所示,步骤720可以包括如下几个子步骤(722~728):
步骤722,处理器获取机器人的实际质心运动数据。
步骤724,处理器根据质心参考轨迹,获取机器人的参考质心运动数据。
上述步骤722和步骤724可以同时执行,也可以步骤722在步骤724之前执行,或者步骤722在步骤724之后执行,本申请实施例对此不作限定。
步骤726,处理器根据实际质心运动数据与参考质心运动数据的区别,获取质心运动数据调整值。
在一些实施例中,质心运动数据调整值用于对参考质心运动数据或者实际质心运动数据进行调整,以得到期望质心运动数据。例如,通过质心运动数据调整值对参考质心运动数据进行调整,以得到期望质心运动数据,在例如,通过质心运动数据调整值对实际质心运动数据进行调整,以得到期望质心运动数据。
在示例性实施例中,计算实际质心运动数据与参考质心运动数据的差值,根据增益矩阵和该差值,获取质心运动数据调整值。例如,可以采用PD(Proportional Derivative,比例微分)控制器基于实际质心运动数据与参考质心运动数据之间的差值来确定质心运动数据调整值,相应地,上述增益矩阵可以是PD控制器对应的PD增益矩阵。
在一些实施例中,质心运动数据调整值包括质心加速度调整值和质心角加速度调整值。示例性地,根据实际质心运动数据与参考质心运动数据的区别,获取质心运动数据调整值,质心运动数据调整值是根据
和
获得的,其中,
表示质心加速度调整值,
表示参考质心速度,
表示实际质心速度,
表示参考质心位置,
表示实际质心位置,
和
为与质心加速度相关的增益矩阵,
表示质心角加速度调整值,ω
ref表示参考质心角速度,ω
act表示实际质心角速度,R
ref表示质心坐标系相对于世界坐标系的参考旋转矩阵,R
act表示质心坐标系相对于世界坐标系的实际旋转矩阵,(R
refR
act)
∨表示从R
act到R
ref的旋转矢量,
和
为与质心角加速度相关的增益矩阵。
步骤728,处理器根据质心运动数据调整值和参考质心运动数据,获取期望质心运动数据。
在一些实施例中,将质心运动数据调整值和参考质心运动数据相加,计算得到期望质心运动数据。例如,在参考质心运动数据包括参考质心加速度和参考质心角加速度,且质心运动数据调整值包括质心加速度调整值和质心角加速度调整值的情况下,将参考质心加速度和质心加速度调整值相加得到期望质心加速度,将参考质心角加速度和质心角加速度调整值相加得到期望质心角加速度。期望质心运动数据包括期望的广义质心加速度,即包括上述期望质心加速度和期望质心角加速度。
步骤730,处理器基于期望质心运动数据,计算使目标函数的数值满足优化停止条件时所需的质心控制信息。
在一些实施例中,将机器人简化为质点模型,通过对该质点模型进行动力学分析,可以得到相应的动力学方程,然后对该动力学方程进行分析,以使得机器人的质心运动轨迹与质心参考轨迹相一致为目标,可以构建得到目标函数。在一些实施例中,目标函数的数值可用于表征机器人偏离质心参考轨迹的偏离程度。例如,目标函数的数值越小,表示机器人偏离质心参考轨迹的偏离程度越小;反之,目标函数的数值越大,表示机器人偏离质心参考轨迹的偏离程度越大。在这种情况下,目标函数对应的优化停止条件则可以是使得目标函数的数值最小时,停止优化。当然,在一些其他示例中,也可能目标函数的数值越小,表示机器人偏离质心参考轨迹的偏离程度越大;反之,目标函数的数值越大,表示机 器人偏离质心参考轨迹的偏离程度越小,在这种情况下,目标函数对应的优化停止条件则可以是使得目标函数的数值最大时,停止优化。因此,目标函数所对应优化停止条件的设计,取决于目标函数的构建方式,不同的目标函数构建方式可以对应不同的优化停止条件,例如,通过方式A构建的目标函数所对应的优化停止条件为使得目标函数的数值最小时,停止优化;通过方式B构建的目标函数所对应的优化停止条件为使得目标函数的数值最大时,停止优化;。
目标函数的参数可以包括期望质心运动数据和质心控制信息,其中期望质心运动数据可以采用上述步骤720计算得到,质心控制信息是一个优化变量,通过对该目标函数进行优化可以求得使该目标函数的数值满足优化停止条件时的质心控制信息,将该优化求得的质心控制信息作为用于控制机器人跟随质心参考轨迹运动的质心控制信息。
在示例性实施例中,目标函数为:
J
qp=(w
des-Af)
TW
w(w
des-Af);
其中,W
w表示正定的权重矩阵,w
des表示期望质心运动数据,A是基于所述机器人的质心与接触点之间的位置关系所构建的矩阵,f表示质心控制信息。上述接触点是指机器人与环境之间的接触点,例如机器人与环境中的地面或者其他物体的接触点,通过机器人与环境中的物体进行接触,会产生使得该机器人执行目标运动的作用力。
在一些实施例中,可以将机器人简化为质点模型,然后对其进行动力学分析构建相应的动力学方程,基于该动力学方程构建出目标函数。其中,动力学方程是基于机器人所受到的各个方向的力构建的,各个方向的力相互叠加,使得机器人保持在一种静止或稳定的状态。通过将机器人简化为质点模型之后对其进行动力学分析来构建出用于控制机器人跟随质心参考轨迹运动的目标函数,能够将目标函数的构建过程以及针对目标函数的优化分析过程简单化,从而生成较为简单且又能够达到目的的目标函数,有助于减少后续目标函数优化所需的计算量,提升整个机器人控制流程的效率。
在一些实施例中,计算使目标函数的数值满足优化停止条件时所需的质心控制信息是通过QP(Quadratic Programming,二次规划)优化法或IPOPT(Interior Point Optimizer,内点优化器)优化法。QP优化法是一种非线性优化方法,其本质是在线性约束条件下,找到一个多维向量,使该多维向量的二次型目标函数值最小(或最大)。在本申请实施例中,利用QP优化法优化得到质心控制信息,以使得机器人可以跟随给出的质心参考轨迹执行目标运动。IPOPT优化法也是一种非线性优化方法。当然,除了采用QP优化法或IPOPT优化法之外,还可以采用其他非线性优化方法,本申请实施例对此不作限定。
步骤740,处理器根据质心控制信息以及机器人的结构矩阵,生成关节控制信息。
在优化生成质心控制信息之后,可以结合机器人的结构矩阵,生成用于控制机器人关节运动的关节控制信息。
在示例性实施例中,考虑到机器人的每个关节都会有相应的运动轨迹和最大运动幅度,为了保证机器人的关节按照相应的运动轨迹运动且不会超出相应的最大运动幅度,如图7所示,步骤740可以包括如下几个子步骤(742~748):
步骤742,处理器根据质心控制信息以及机器人的结构矩阵,生成待调整关节控制信息。
待调整关节控制信息是指直接基于质心控制信息以及机器人的结构矩阵生成的关节控制信息,例如直接将质心控制信息与机器人的结构矩阵相乘,得到待调整关节控制信息。如果直接基于该待调整关节控制信息对机器人各关节进行控制,有可能会导致某些关节不按照相应的运动轨迹运动或者超出相应的最大运动幅度,因此,为了避免此现象的发生,还需要通过如下步骤对该待调整关节控制信息进行调整。
步骤744,处理器获取机器人的实际关节运动数据。
实际关节运动数据是与机器人各关节相关的运动数据的实际值,实际关节运动数据可以通过传感器等手段,对机器人的实际关节状态进行测量得到。在一些实施例中,实际关节运动数据包括但不限于以下至少一项:实际关节角度、实际关节角速度、实际关节角加速度。
步骤746,处理器获取机器人的参考关节运动数据。
参考关节运动数据是与机器人各关节相关的运动数据的参考值,参考关节运动数据可以根据质心参考轨迹进行相应计算得到。在一些实施例中,参考关节运动数据包括但不限于以下至少一项:参考关节角度、参考关节角速度、参考关节角加速度。
上述步骤744和步骤746可以同时执行,也可以步骤744在步骤746之前执行,或者步骤744在步骤746之后执行,本申请实施例对此不作限定。
步骤748,处理器根据实际关节运动数据与参考关节运动数据,对待调整关节控制信息进行调整,得到关节控制信息。
在一些实施例中,根据实际关节运动数据与参考关节运动数据,计算出待调整关节控制信息对应的调整值,然后采用该调整值对待调整关节控制信息进行调整,得到关节控制信息。
例如,在待调整关节控制信息包括机器人各关节的待调整力矩的情况下,根据实际关节运动数据(如包括实际关节角度和实际关节角速度)与参考关节运动数据(如包括参考关节角度和参考关节角速度),计算出各关节的待调整力矩分别对应的调整值,然后将各关节的待调整力矩与其对应的调整值相加,得到最终施加给各关节的力矩。
在一些实施例中,根据实际关节运动数据与参考关节运动数据,对待调整关节控制信息进行调整,得到关节控制信息,是根据
得到的,其中τ表示关节力矩,J
τ表示结构矩阵,f
opt表示优化所得的质心控制信息,
表示参考关节角速度,
表示实际关节角速度,q
ref表示参考关节角度,q
act表示实际关节角度,
和
为与关节力矩相关的增益矩阵。
对于任意一个关节来说,关节角度可以是指该关节所连接的两个部分之间的夹角;关节角速度可以是指关节角度在单位时间内的变化量,用于描述关节角度随时间的变化快慢程度。
步骤750,处理器基于关节控制信息控制机器人执行目标运动。
在得到用于控制机器人运动的关节控制信息(如各关节的力矩)之后,通过驱动电机给机器人各关节施加相应力矩,从而使得机器人执行目标运动。
综上所述,本申请实施例提供的技术方案,还通过构建目标函数,并采用诸如QP优化或IPOPT优化等非线性优化方法对该目标函数进行优化,能够高效且鲁棒地得到用于控制机器人跟随质心参考轨迹运动的质心控制信息。
另外,处理器还通过基于机器人的实际质心/关节运动数据和参考质心/关节运动数据,确定出该机器人的期望质心/关节运动数据,进而基于期望质心/关节运动数据得到质心/关节控制信息,保证了最终获得的质心/关节控制信息能够准确控制机器人跟随质心参考轨迹进行运动,即便发生偏差也能及时修正,最终达到准确控制机器人执行目标运动的目的。
另外,处理器还通过根据质心控制信息以及机器人的结构矩阵,生成待调整关节控制信息,然后根据实际关节运动数据与参考关节运动数据,对待调整关节控制信息进行调整,得到最终控制机器人关节运动的关节控制信息,能够避免某些关节不按照相应的运动轨迹运动或者超出相应的最大运动幅度,保证了关节运动控制的准确性和有效性。
在一个实施例中,处理器首先构建目标函数,该目标函数用于优化得到用于控制机器 人运动的作用力,以使得机器人的质心运动轨迹与质心参考轨迹相一致。对目标函数进行优化,得到用于控制机器人运动的作用力。基于用于控制机器人运动的作用力,确定用于控制机器人运动的力矩。
具体地,处理器对基于机器人本体简化得到的质点模型进行动力学分析,得到动力学方程;以使得机器人的质心运动轨迹与质心参考轨迹相一致为目标,对所述动力学方程进行分析,构建目标函数。
具体地,处理器通过将机器人本体简化为质点模型,通过对该质点模型进行动力学分析,可以得到相应的动力学方程,然后对该动力学方程进行分析,以使得机器人的质心运动轨迹与质心参考轨迹相一致为目标,可以构建得到目标函数。为使机器人按照上述质心参考轨迹执行目标运动,需要利用质点动力学优化控制,对目标函数进行优化,优化出合适的控制信息,以实现质心参考轨迹的跟随。
进一步地,处理器可以通过如下方式确定用于控制机器人运动的力矩:获取机器人的各关节的实际角度和实际角速度,基于质心参考轨迹,获取各关节的参考角度和参考角速度,基于用于控制机器人运动的作用力、各关节的实际角度和实际角速度,以及各关节的参考角度和参考角速度,确定用于控制机器人运动的力矩。其中,对于机器人的任意一个关节来说,关节的额角度可以是该关节所连接的两个部分之间的夹角;关节角速度可以是关节角度在单位时间内的变化量,用于描述关节角度随时间的变化快慢程度。
示例性地,以处理器控制足轮复合四足机器人执行从四足趴地状态变为双足(双轮)站立状态的目标运动为例,质心控制信息可以包括用于控制机器人运动的承载面反作用力,关节控制信息可以包括施加在机器人的各关节上的关节力矩。对于任意一个关节来说,关节力矩可以是指需要施加给该关节的力矩。
首先,处理器将该足轮复合四足机器人简化为图8所示的质点模型,对其进行动力学分析可得:
其中,m表示机器人总质量,L表示角动量,p
c、r
i分别表示质心、接触点(如机器人的足部与地面的接触点)在世界坐标系xWz下的位置,f
i表示接触点的承载面反作用力,N
C表示接触点的个数,
表示质心加速度,g表示重力加速度,
表示角动量微分,
分别表示质心、接触点在世界系xWz下的位置对应的斜对称矩阵,I
3×3表示3×3的单位矩阵。
A是基于质心的位置和接触点的位置构建的矩阵,A的形式是:
f是基于接触点的承载面反作用力构建的矩阵,f的形式是:
根据上述式1构建目标函数,优化得到用于控制机器人运动的承载面反作用力,以使得机器人的质心运动轨迹与质心参考轨迹相一致。该目标函数可表示为:
J
qp=(w
des-A
f)
TW
w(w
des-Af) (式5)
其中,W
w表示正定的权重矩阵,w
des表示期望值(也即期望质心运动数据),具体形式为:
其中,
为质心角加速度调整值,R
ref、R
act分别为质心系相对于世界系的参考和实际旋转矩阵,(R
refR
act)
∨表示从R
act到R
ref的旋转矢量,ω
act为实际质心角速度,ω
ref为参考质心角速度,
为PD增益。
然后,以式5为目标函数,对其进行QP优化,可优化出期望的承载面反作用力。具体做法为,将式5化简为QP优化目标函数的标准形式,即:
其中,QP优化所需Hessian(黑塞)矩阵为(A
TWA),梯度向量为-A
TWw
des,待优化变量为承载面反作用力f。然后利用QP优化函数库即可优化出承载面反作用力。
最后,利用关节逆动力学即可求得实现质心参考轨迹运动的关节力矩:
在上述实施例中,通过将机器人简化为质点模型,获取用于引导该机器人执行目标运动的质心参考轨迹,然后利用QP优化生成用于控制机器人跟随上述质心参考轨迹运动的作用力和力矩,并据此控制机器人执行目标运动,对于任意一种质心位置发生变化的运动场景,可实现精确有效地控制,使得机器人按照预期完成目标运动,丰富了机器人的运动能力。通过先离线确定质心参考轨迹,然后再构建控制器实现质心参考轨迹的在线跟随,将实际的质心运动轨迹不断拟合质心参考轨迹,从而能够在不需要获取准确的动力学参数 及稳定的地面摩擦条件的情况下执行既定的目标运动,整个方案对环境的敏感度低,鲁棒性高,有效提升了控制机器人执行目标运动的稳定性。
应该理解的是,虽然上述各实施例的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,上述各实施例的流程图中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。
下述为本申请装置实施例,可以用于执行本申请方法实施例。对于本申请装置实施例中未披露的细节,请参照本申请方法实施例。
请参考图9,其示出了本申请一个实施例提供的机器人运动控制装置的框图。该装置具有实现上述机器人运动控制方法的功能,所述功能可以由硬件实现,也可以由硬件执行相应的软件实现。该装置可以是机器人,也可以设置在机器人中。该装置900可以包括:参考轨迹获取模块910、质心信息确定模块920、关节信息生成模块930和机器人控制模块940。
参考轨迹获取模块910,用于获取用于引导机器人执行目标运动的质心参考轨迹;其中,所述质心参考轨迹是指为实现所述目标运动而规划的所述机器人的质心运动轨迹。
质心信息确定模块920,用于基于目标函数优化得到用于控制所述机器人跟随所述质心参考轨迹运动的质心控制信息。
关节信息生成模块930,用于根据所述质心控制信息以及所述机器人的结构矩阵,生成关节控制信息。
机器人控制模块940,用于基于所述关节控制信息控制所述机器人执行所述目标运动。
在一些实施例中,所述目标函数的数值用于表征所述机器人偏离所述质心参考轨迹的偏离程度。
在一些实施例中,所述质心信息确定模块920,用于基于所述质心参考轨迹,获取所述机器人的期望质心运动数据,期望质心运动数据是与所述机器人的质心相关的运动数据的期望值;基于所述期望质心运动数据,计算使所述目标函数的数值满足优化停止条件时所需的所述质心控制信息。
在一些实施例中,所述目标函数为:
J
qp=(w
des-Af)
TW
w(w
des-Af);
其中,W
w表示正定的权重矩阵,w
des表示所述期望质心运动数据,A是基于所述机器人的质心与接触点之间的位置关系所构建的矩阵,f表示所述质心控制信息,所述接触点是指所述机器人与环境之间的接触点。
在示例性实施例中,所述计算使所述目标函数的数值满足优化停止条件时所需的所述质心控制信息是通过QP优化法或IPOPT优化法。
在一些实施例中,所述质心信息确定模块920,还用于获取所述机器人的实际质心运动数据;根据所述质心参考轨迹,获取所述机器人的参考质心运动数据;根据所述实际质心运动数据与所述参考质心运动数据的区别,获取质心运动数据调整值;
根据所述质心运动数据调整值和所述参考质心运动数据,获取所述期望质心运动数据。
在一些实施例中,所述质心信息确定模块920,还用于计算所述实际质心运动数据与所述参考质心运动数据的差值;根据增益矩阵和所述差值,获取所述质心运动数据调整值。
在一些实施例中,所述根据所述实际质心运动数据与所述参考质心运动数据的区别, 获取质心运动数据调整值,是根据
和
获得的,其中
表示质心加速度调整值,
表示参考质心速度,
表示实际质心速度,
表示参考质心位置,
表示实际质心位置,
和
为与质心加速度相关的增益矩阵,
表示质心角加速度调整值,ω
ref表示参考质心角速度,ω
act表示实际质心角速度,R
ref表示质心坐标系相对于世界坐标系的参考旋转矩阵,R
act表示质心坐标系相对于世界坐标系的实际旋转矩阵,(R
refR
act)
∨表示从R
act到R
ref的旋转矢量,
和
为与质心角加速度相关的增益矩阵。
在一些实施例中,机器人运动控制装置,还包括目标函数构建模块,用于对基于机器人本体简化得到的质点模型进行动力学分析,得到动力学方程;以使得机器人的质心运动轨迹与质心参考轨迹相一致为目标,对动力学方程进行分析,构建目标函数。
在一些实施例中,所述关节信息生成模块930,还用于根据所述质心控制信息以及所述机器人的结构矩阵,生成待调整关节控制信息;获取所述机器人的实际关节运动数据;
获取所述机器人的参考关节运动数据;根据所述实际关节运动数据与所述参考关节运动数据,对所述待调整关节控制信息进行调整,得到所述关节控制信息。
在一些实施例中,所述根据所述实际关节运动数据与所述参考关节运动数据,对所述待调整关节控制信息进行调整,得到所述关节控制信息,是根据
得到的,其中τ表示关节力矩,J
τ表示所述结构矩阵,f
opt表示优化所得的所述质心控制信息,
表示参考关节角速度,
表示实际关节角速度,q
ref表示参考关节角度,q
act表示实际关节角度,
和
为与关节力矩相关的增益矩阵。
在一些实施例中,所述机器人为四足机器人,所述目标运动为从四足趴地状态变为双足站立状态的运动过程。
需要说明的是,上述实施例提供的装置,在实现其功能时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将设备的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。上述装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于机器人中的处理器中,也可以以软件形式存储于机器人中的存储器中,以便于处理器调用执行以上各个模块对应的操作。另外,上述实施例提供的装置与方法实施例属于同一构思,其具体实现过程详见方法实施例。
请参考图10,其示出了本申请一个实施例提供的机器人的简化结构框图。该机器人可以是两足机器人、四足机器人等,本申请实施例对此不作限定。
如图10所示,该机器人包括一个或多个处理器101和存储器102。处理器101包括但不限于以下任意一种:CPU(Central Processing Unit,中央处理器)、GPU(Graphics Processing Unit,图形处理器)和FPGA(Field Programmable Gate Array,现场可编程逻辑门阵列)等。存储器102可以包括RAM(Random-Access Memory,随机存储器)和ROM(Read-Only Memory,只读存储器)等存储设备。处理器101和存储器102之间可以通过系统总线连接。
在示例性实施例中,所述存储器102中存储有至少一条指令、至少一段程序、代码集 或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由所述处理器71加载并执行以实现上述机器人运动控制方法。
在示例性实施例中,还提供了一个或多个存储有计算机可读指令的非易失性计算机可读存储介质,所述存储介质中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或所述指令集在被计算机设备的处理器执行时实现上述机器人运动控制方法。
在一些实施例中,该计算机可读存储介质可以包括:ROM(Read-Only Memory,只读存储器)、RAM(Random-Access Memory,随机存储器)、SSD(Solid State Drives,固态硬盘)或光盘等。其中,随机存取记忆体可以包括ReRAM(Resistance Random Access Memory,电阻式随机存取记忆体)和DRAM(Dynamic Random Access Memory,动态随机存取存储器)。
在示例性实施例中,还提供了一种计算机程序产品或计算机程序,所述计算机程序产品或计算机程序包括计算机指令,所述计算机指令存储在计算机可读存储介质中。机器人的处理器从所述计算机可读存储介质中读取所述计算机指令,所述处理器执行所述计算机指令,使得所述机器人执行上述机器人运动控制方法。
应当理解的是,在本文中提及的“多个”是指两个或两个以上。“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。另外,本文中描述的步骤编号,仅示例性示出了步骤间的一种可能的执行先后顺序,在一些其它实施例中,上述步骤也可以不按照编号顺序来执行,如两个不同编号的步骤同时执行,或者两个不同编号的步骤按照与图示相反的顺序执行,本申请实施例对此不作限定。
以上所述仅为本申请的示例性实施例,并不用以限制本申请,凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。
Claims (16)
- 一种机器人运动控制方法,其特征在于,应用于机器人,所述方法包括:获取用于引导机器人执行目标运动的质心参考轨迹;其中,所述质心参考轨迹是指为实现所述目标运动而规划的所述机器人的质心运动轨迹;基于目标函数优化得到用于控制所述机器人跟随所述质心参考轨迹运动的质心控制信息;根据所述质心控制信息以及所述机器人的结构矩阵,生成关节控制信息;及基于所述关节控制信息控制所述机器人执行所述目标运动。
- 根据权利要求1所述的方法,其特征在于,所述目标函数的数值用于表征所述机器人偏离所述质心参考轨迹的偏离程度,所述基于目标函数优化得到用于控制所述机器人跟随所述质心参考轨迹运动的质心控制信息,包括:基于所述质心参考轨迹,获取所述机器人的期望质心运动数据,所述期望质心运动数据是与所述机器人的质心相关的运动数据的期望值;及基于所述期望质心运动数据,计算使所述目标函数的数值满足优化停止条件时所需的所述质心控制信息。
- 根据权利要求1或2所述的方法,其特征在于,所述目标函数为:J qp=(w des-Af) TW w(w des-Af);其中,W w表示正定的权重矩阵,w des表示所述期望质心运动数据,A是基于所述机器人的质心与接触点之间的位置关系所构建的矩阵,f表示所述质心控制信息,所述接触点是指所述机器人与环境之间的接触点。
- 根据权利要求2所述的方法,其特征在于,所述计算使所述目标函数的数值满足优化停止条件时所需的所述质心控制信息是通过QP优化法得到的。
- 根据权利要求2所述的方法,其特征在于,所述计算使所述目标函数的数值满足优化停止条件时所需的所述质心控制信息是通过IPOPT优化法得到的。
- 根据权利要求2所述的方法,其特征在于,所述基于所述质心参考轨迹,获取所述机器人的期望质心运动数据,包括:获取所述机器人的实际质心运动数据;根据所述质心参考轨迹,获取所述机器人的参考质心运动数据;根据所述实际质心运动数据与所述参考质心运动数据的区别,获取质心运动数据调整值;根据所述质心运动数据调整值和所述参考质心运动数据,获取所述期望质心运动数据。
- 根据权利要求6的所述方法,其特征在于,所述根据所述实际质心运动数据与所述参考质心运动数据的区别,获取质心运动数据调整值,包括:计算所述实际质心运动数据与所述参考质心运动数据的差值;及根据增益矩阵和所述差值,获取所述质心运动数据调整值,所述增益矩阵与所述机器人的质心相关的运动数据相对应。
- 根据权利要求1所述的方法,其特征在于,所述方法还包括:对基于机器人本体简化得到的质点模型进行动力学分析,得到动力学方程;以使得机器人的质心运动轨迹与质心参考轨迹相一致为目标,对所述动力学方程进行分析,构建目标函数。
- 根据权利要求1的所述方法,其特征在于,所述根据所述质心控制信息以及所述机器人的结构矩阵,生成关节控制信息,包括:根据所述质心控制信息以及所述机器人对应的结构矩阵,生成待调整关节控制信息;获取所述机器人的实际关节运动数据;获取所述机器人的参考关节运动数据;及根据所述实际关节运动数据与所述参考关节运动数据,对所述待调整关节控制信息进行调整,得到所述关节控制信息。
- 根据权利要求11的所述方法,其特征在于,所述机器人为四足机器人,所述目标运动为从四足趴地状态变为双足站立状态的运动过程。
- 一种机器人运动控制装置,其特征在于,所述装置包括:参考轨迹获取模块,用于获取用于引导机器人执行目标运动的质心参考轨迹;其中,所述质心参考轨迹是指为实现所述目标运动而规划的所述机器人的质心运动轨迹;质心信息确定模块,用于基于目标函数优化得到用于控制所述机器人跟随所述质心参考轨迹运动的质心控制信息;关节信息生成模块,用于根据所述质心控制信息以及所述机器人的结构矩阵,生成关节控制信息;及机器人控制模块,用于基于所述关节控制信息控制所述机器人执行所述目标运动。
- 一种机器人,其特征在于,所述机器人包括存储器和一个或多个处理器,所述存储器存储有计算机可读指令,其特征在于,所述一个或多个处理器执行所述计算机可读指令时实现权利要求1至12中任一项所述的方法的步骤。
- 一个或多个存储有计算机可读指令的非易失性计算机可读存储介质,存储有计算机可读指令,其特征在于,所述计算机可读指令被一个或多个处理器执行时实现权利要求1至12中任一项所述的方法的步骤。
- 一种计算机程序产品,包括计算机可读指令,其特征在于,所述计算机可读指令被一个或多个处理器执行时实现权利要求1至12中任一项所述的方法的步骤。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2023528179A JP7531710B2 (ja) | 2021-01-28 | 2022-01-24 | ロボット運動制御方法、装置、ロボット、及びコンピュータプログラム |
EP22745172.1A EP4261625A4 (en) | 2021-01-28 | 2022-01-24 | ROBOT MOTION CONTROL METHOD AND APPARATUS, ROBOT AND STORAGE MEDIUM |
US17/983,553 US20230069572A1 (en) | 2021-01-28 | 2022-11-09 | Robot motion control method and apparatus |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110116500.1A CN114815591A (zh) | 2021-01-28 | 2021-01-28 | 机器人运动控制方法、装置、机器人及存储介质 |
CN202110116500.1 | 2021-01-28 |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US17/983,553 Continuation US20230069572A1 (en) | 2021-01-28 | 2022-11-09 | Robot motion control method and apparatus |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2022161297A1 true WO2022161297A1 (zh) | 2022-08-04 |
Family
ID=82526765
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/CN2022/073356 WO2022161297A1 (zh) | 2021-01-28 | 2022-01-24 | 机器人运动控制方法、装置、机器人及存储介质 |
Country Status (5)
Country | Link |
---|---|
US (1) | US20230069572A1 (zh) |
EP (1) | EP4261625A4 (zh) |
JP (1) | JP7531710B2 (zh) |
CN (1) | CN114815591A (zh) |
WO (1) | WO2022161297A1 (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115356920A (zh) * | 2022-08-08 | 2022-11-18 | 深圳市优必选科技股份有限公司 | 单腿跳跃运动控制方法、装置、可读存储介质及机器人 |
CN118219256A (zh) * | 2024-03-08 | 2024-06-21 | 北京小米机器人技术有限公司 | 运动轨迹生成方法、运动控制方法及相关装置 |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117409517B (zh) * | 2023-10-19 | 2024-05-07 | 光谷技术有限公司 | 基于视频ai行为分析的语音告警系统及方法 |
CN117565061B (zh) * | 2024-01-16 | 2024-03-29 | 山西大学 | 基于机械臂搬运的速度与重量平衡控制系统 |
CN118143955B (zh) * | 2024-05-11 | 2024-08-06 | 南京师范大学 | 基于气动人工肌肉驱动的足式机器人足部轨迹规划方法 |
CN118220363B (zh) * | 2024-05-23 | 2024-07-23 | 哈尔滨工业大学 | 基于非线性弹簧模型的双轮足式机器人跳跃控制方法 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040128028A1 (en) * | 2002-10-11 | 2004-07-01 | Atsushi Miyamoto | Motion editing apparatus and method for legged mobile robot and computer program |
CN108345211A (zh) * | 2017-01-23 | 2018-07-31 | 深圳市祈飞科技有限公司 | 双足仿人机器人及其非线性步态规划方法以及控制方法 |
CN111367327A (zh) * | 2020-04-02 | 2020-07-03 | 杭州云深处科技有限公司 | 一种四足机器人仿生跳跃动作的控制方法和装置 |
CN111674486A (zh) * | 2020-05-25 | 2020-09-18 | 浙江大学 | 双足机器人稳定步行控制方法、装置、设备及可读介质 |
CN112207825A (zh) * | 2020-09-28 | 2021-01-12 | 杭州云深处科技有限公司 | 一种四足机器人仿生跳跃动作的控制方法、装置、电子设备及计算机可读介质 |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2007139135A1 (ja) | 2006-05-30 | 2007-12-06 | Japan Science And Technology Agency | ロボット及び制御装置 |
JP6593991B2 (ja) * | 2014-12-25 | 2019-10-23 | 三菱重工業株式会社 | 移動ロボット及び先端ツール |
JP6447278B2 (ja) | 2015-03-18 | 2019-01-09 | トヨタ自動車株式会社 | 多点接触ロボット、多点接触ロボットの制御方法及びプログラム |
CN108237532B (zh) * | 2016-12-23 | 2020-11-27 | 深圳光启合众科技有限公司 | 多足机器人的步态控制方法、装置和机器人 |
CN106886155B (zh) * | 2017-04-28 | 2020-01-14 | 齐鲁工业大学 | 一种基于pso-pd神经网络的四足机器人运动轨迹控制方法 |
CN108469732A (zh) * | 2018-03-13 | 2018-08-31 | 同济大学 | 基于dmp的机器人工作空间适应性行走控制系统及方法 |
JP2021130183A (ja) | 2020-02-21 | 2021-09-09 | ソニーグループ株式会社 | 情報処理装置及び情報処理方法、コンピュータプログラム、並びに移動ロボット |
CN111872941B (zh) * | 2020-08-06 | 2021-09-07 | 深圳市优必选科技股份有限公司 | 平衡控制方法、装置、仿人机器人及可读存储介质 |
-
2021
- 2021-01-28 CN CN202110116500.1A patent/CN114815591A/zh active Pending
-
2022
- 2022-01-24 WO PCT/CN2022/073356 patent/WO2022161297A1/zh active Application Filing
- 2022-01-24 EP EP22745172.1A patent/EP4261625A4/en active Pending
- 2022-01-24 JP JP2023528179A patent/JP7531710B2/ja active Active
- 2022-11-09 US US17/983,553 patent/US20230069572A1/en active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040128028A1 (en) * | 2002-10-11 | 2004-07-01 | Atsushi Miyamoto | Motion editing apparatus and method for legged mobile robot and computer program |
CN108345211A (zh) * | 2017-01-23 | 2018-07-31 | 深圳市祈飞科技有限公司 | 双足仿人机器人及其非线性步态规划方法以及控制方法 |
CN111367327A (zh) * | 2020-04-02 | 2020-07-03 | 杭州云深处科技有限公司 | 一种四足机器人仿生跳跃动作的控制方法和装置 |
CN111674486A (zh) * | 2020-05-25 | 2020-09-18 | 浙江大学 | 双足机器人稳定步行控制方法、装置、设备及可读介质 |
CN112207825A (zh) * | 2020-09-28 | 2021-01-12 | 杭州云深处科技有限公司 | 一种四足机器人仿生跳跃动作的控制方法、装置、电子设备及计算机可读介质 |
Non-Patent Citations (1)
Title |
---|
See also references of EP4261625A4 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115356920A (zh) * | 2022-08-08 | 2022-11-18 | 深圳市优必选科技股份有限公司 | 单腿跳跃运动控制方法、装置、可读存储介质及机器人 |
CN118219256A (zh) * | 2024-03-08 | 2024-06-21 | 北京小米机器人技术有限公司 | 运动轨迹生成方法、运动控制方法及相关装置 |
Also Published As
Publication number | Publication date |
---|---|
EP4261625A4 (en) | 2024-05-29 |
JP7531710B2 (ja) | 2024-08-09 |
CN114815591A (zh) | 2022-07-29 |
US20230069572A1 (en) | 2023-03-02 |
EP4261625A1 (en) | 2023-10-18 |
JP2023548924A (ja) | 2023-11-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2022161297A1 (zh) | 机器人运动控制方法、装置、机器人及存储介质 | |
Guizzo | By leaps and bounds: An exclusive look at how boston dynamics is redefining robot agility | |
CN114986526B (zh) | 机器人运动控制方法、装置、机器人及存储介质 | |
Chipalkatty et al. | Human-in-the-loop: MPC for shared control of a quadruped rescue robot | |
CN113190029B (zh) | 基于深度强化学习的四足机器人适应性步态自主生成方法 | |
Pathak | Dynamic modelling & simulation of a four legged jumping robot with compliant legs | |
Reher et al. | Inverse dynamics control of compliant hybrid zero dynamic walking | |
Li et al. | Centroidal-momentum-based trajectory generation for legged locomotion | |
Neville et al. | A bipedal running robot with one actuator per leg | |
Yan et al. | Whole-body kinematic and dynamic modeling for quadruped robot under different gaits and mechanism topologies | |
Chang et al. | Quadruped robot control through model predictive control with pd compensator | |
Mudalige et al. | Hyperdog: An open-source quadruped robot platform based on ros2 and micro-ros | |
Cherouvim et al. | Control of hopping speed and height over unknown rough terrain using a single actuator | |
Xu et al. | Disturbance rejection for biped robots during walking and running using control moment gyroscopes | |
Ma et al. | Trotting gait control of quadruped robot based on Trajectory Planning | |
Sun | An energy efficient gait for humanoid robots walking on even and uneven terrains | |
Chang et al. | Study on falling backward of humanoid robot based on dynamic multi objective optimization | |
Leng et al. | Parameter design of biped robot motion system based on multi-objective optimization | |
Rossi et al. | Predicted Step Viability: a stability criterion for biped gait | |
Maximo et al. | Reference ZMP manipulation for energetic and computationally efficient walking using ZMP preview control | |
Liu et al. | A universal biped walking generator for complex environments with pattern feasibility checking | |
Bhounsule et al. | Control based on passive dynamic walking | |
Lima et al. | Realistic behaviour simulation of a humanoid robot | |
Li et al. | Dynamic Interaction Control in Legged Mobile Manipulators: A Decoupled Approach | |
Roos et al. | Explainable Robotics applied to bipedal walking gait development |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 22745172 Country of ref document: EP Kind code of ref document: A1 |
|
WWE | Wipo information: entry into national phase |
Ref document number: 2023528179 Country of ref document: JP |
|
ENP | Entry into the national phase |
Ref document number: 2022745172 Country of ref document: EP Effective date: 20230713 |
|
NENP | Non-entry into the national phase |
Ref country code: DE |