Search

US-12619234-B2 - Robot control method and apparatus, robot and computer-readable storage medium

US12619234B2US 12619234 B2US12619234 B2US 12619234B2US-12619234-B2

Abstract

In a method of controlling a robot, first control information for controlling rotation of a driving wheel of a wheel-legged part of the robot is adaptively determined based on motion information of the robot that is generated while the robot is in motion. Second control information for controlling a plurality of joints of the wheel-legged part of the robot is determined based on the first control information, the plurality of joints being controlled based on the second control information to balance the robot. Third control information for controlling the plurality of joints is determined based on a target trajectory of the robot, the plurality of joints being controlled based on the third control information to move the robot along the target trajectory. A respective control torque for controlling each joint in the plurality of joints is determined based on the second control information and the third control information.

Inventors

  • Shuai Wang
  • Jingfan Zhang

Assignees

  • TENCENT TECHNOLOGY (SHENZHEN) COMPANY LIMITED

Dates

Publication Date
20260505
Application Date
20230519
Priority Date
20220301

Claims (17)

  1. 1 . A method of controlling a robot, the method comprising: adaptively determining first control information for controlling rotation of a driving wheel of a wheel-legged part of the robot based on motion information of the robot that is generated while the robot is in motion; determining influencing data of a rotational velocity of the driving wheel on a posture of a base part of the robot and a velocity of the base part based on the first control information and the motion information of the robot; determining an expected acceleration of the base part based on the influencing data; determining second control information for controlling a plurality of joints of the wheel-legged part of the robot based on the expected acceleration, the second control information being configured to adjust a center of gravity of the robot such that the plurality of joints is controlled based on the second control information to balance the robot; determining third control information for controlling the plurality of joints based on a target trajectory of the robot, the third control information being configured to adjust the posture of the base part of the robot such that a potential energy associated with the robot is converted into a dynamic energy of the robot to assist movement of the robot along the target trajectory; determining a respective control torque for controlling each joint in the plurality of joints based on motion constraint condition information of the robot, the second control information, and the third control information, the motion constraint condition information of the robot including at least one of a dynamic constraint condition, a closed-loop linkage constraint condition, a nonholonomic constraint condition, or a friction constraint condition; and controlling each joint in the plurality of joints based on the control torque for the respective joint, wherein the wheel-legged part is connected to the base part of the robot.
  2. 2 . The method according to claim 1 , wherein the adaptively determining the first control information comprises: determining the first control information for controlling the rotation of the driving wheel by a policy iteration method based on the motion information of the robot.
  3. 3 . The method according to claim 1 , wherein the adaptively determining the first control information comprises: determining the first control information for controlling the rotation of the driving wheel by a value iteration method based on the motion information of the robot.
  4. 4 . The method according to claim 1 , wherein the determining the respective control torque for controlling each joint in the plurality of joints comprises: determining at least one candidate control torque combination corresponding to the plurality of joints of the robot based on the second control information and the third control information; determining a value corresponding to a dynamic whole-body dynamic target function of the robot based on each of the at least one candidate control torque combination; selecting a candidate control torque combination that enables the dynamic whole-body dynamic target function to reach an extreme value from the at least one candidate control torque combination; and determining the respective control torques based on the selected candidate control torque combination.
  5. 5 . The method according to claim 4 , wherein parameters of the dynamic whole-body dynamic target function comprise at least one of: a vector formed by combining sets of acceleration of the target trajectory set for each joint; a vector formed by combining sets of acceleration of each joint while the robot is in motion; a vector formed by combining sets of torques of the target trajectory set for each joint; a generalized force provided by a ground at a contact point where the robot contacts the ground; or a closed-loop force in the wheel-legged part of the robot including a closed-loop linkage mechanism.
  6. 6 . The method according to claim 1 , wherein the motion constraint condition information includes at least the dynamic constraint condition that is determined based on a dynamic model of the robot, the dynamic model representing a change relationship between each joint and at least one of a centroid angle, an angular velocity, an angular acceleration, a joint torque, or an external contact force while the robot is in motion.
  7. 7 . The method according to claim 1 , wherein the robot includes a tail part; the second control information is an output of a wheel balance control task; and the third control information is an output of at least one of a wheel motion and rotational control task, a base part posture control task, or a tail part control task.
  8. 8 . The method according to claim 7 , wherein the expected acceleration of the base part is calculated by a proportional differential controller, and control parameters of the proportional differential controller are obtained based on an input reference for the posture and an input reference for the velocity.
  9. 9 . The method according to claim 8 , wherein the input reference for the posture includes a distance from the center of gravity of the robot to a center of a connecting line of the driving wheel projected on a ground, and the input reference for the velocity includes a differential velocity obtained by performing a differential calculation on the distance from the center of gravity of the robot to the center of the connecting line of the driving wheel projected on the ground and a linear velocity of the driving wheel.
  10. 10 . The method according to claim 8 , wherein the input reference for the posture includes an equivalent inclination angle of the base part, the equivalent inclination angle being obtained by calculating a distance from the center of gravity of the robot to a center of a connecting line of the driving wheel projected on a ground and a height of a center of mass of the robot, and the input reference for the velocity includes an equivalent inclination angle acceleration, the equivalent inclination angle acceleration being obtained by a ratio of (i) a differential velocity obtained based on the distance from the center of gravity of the robot to the center of the connecting line of the driving wheel projected on the ground and (ii) the height of the center of mass of the robot.
  11. 11 . The method according to claim 1 , wherein the first control information, the second control information, the third control information, and the respective control torque for controlling each joint in the plurality of joints are determined by a first controller, and the method further comprises: controlling the robot to move based on the respective control torque for controlling each joint in the plurality of joints; acquiring motion state data and control data of the robot while the robot is controlled to move based on the respective control torque for controlling each joint; updating a linear balance parameter matrix by a policy iteration method according to the motion state data and the control data; and building a second controller corresponding to dynamic characteristics of the robot based on the updated linear balance parameter matrix.
  12. 12 . The method according to claim 1 , wherein the first control information, the second control information, the third control information, and the respective control torque for controlling each joint in the plurality of joints are determined by a first controller, and the method further comprises: acquiring initial motion state data and initial control data of the robot in an initial motion process; calculating a linear balance parameter matrix by a value iteration method according to the initial motion state data and the initial control data; and building the first controller corresponding to dynamic characteristics of the robot based on the linear balance parameter matrix.
  13. 13 . A robot control apparatus, comprising: processing circuitry configured to: adaptively determine first control information for controlling rotation of a driving wheel of a wheel-legged part of a robot based on motion information of the robot that is generated while the robot is in motion; determine influencing data of a rotational velocity of the driving wheel on a posture of a base part of the robot and a velocity of the base part based on the first control information and the motion information of the robot; determine an expected acceleration of the base part based on the influencing data; determine second control information for controlling a plurality of joints of the wheel-legged part of the robot based on the expected acceleration, the second control information being configured to adjust a center of gravity of the robot such that the plurality of joints is controlled based on the second control information to balance the robot; determine third control information for controlling the plurality of joints based on a target trajectory of the robot, the third control information being configured to adjust the posture of the base part of the robot such that a potential energy associated with the robot is converted into a dynamic energy of the robot to assist movement of the robot along the target trajectory; determine a respective control torque for controlling each joint in the plurality of joints based on motion constraint condition information of the robot, the second control information, and the third control information, the motion constraint condition information of the robot including at least one of a dynamic constraint condition, a closed-loop linkage constraint condition, a nonholonomic constraint condition, or a friction constraint condition; and control each joint in the plurality of joints based on the control torque of the respective joint, wherein the wheel-legged part is connected to the base part of the robot.
  14. 14 . The robot control apparatus according to claim 13 , wherein the processing circuitry is configured to determine the first control information for controlling the rotation of the driving wheel using a policy iteration method based on the motion information of the robot.
  15. 15 . The robot control apparatus according to claim 13 , wherein the processing circuitry is configured to determine the first control information for controlling the rotation of the driving wheel using a value iteration method based on the motion information of the robot.
  16. 16 . A robot, comprising: the robot control apparatus according to claim 13 ; the wheel-legged part; and the base part connected to the wheel-legged part, the wheel-legged part and the base part including the plurality of joints.
  17. 17 . A non-transitory computer-readable storage medium, storing instructions which when executed by a processor cause the processor to perform: adaptively determining first control information for controlling rotation of a driving wheel of a wheel-legged part of a robot based on motion information of the robot that is generated while the robot is in motion; determining influencing data of a rotational velocity of the driving wheel on a posture of a base part of the robot and a velocity of the base part based on the first control information and the motion information of the robot; determining an expected acceleration of the base part based on the influencing data; determining second control information for controlling a plurality of joints of the wheel-legged part of the robot based on the expected acceleration, the second control information being configured to adjust a center of gravity of the robot such that the plurality of joints is controlled based on the second control information to balance the robot; determining third control information for controlling the plurality of joints based on a target trajectory of the robot, the third control information being configured to adjust the posture of the base part of the robot such that a potential energy associated with the robot is converted into a dynamic energy of the robot to assist movement of the robot along the target trajectory; determining a respective control torque for controlling each joint in the plurality of joints based on motion constraint condition information of the robot, the second control information, and the third control information, the motion constraint condition information of the robot including at least one of a dynamic constraint condition, a closed-loop linkage constraint condition, a nonholonomic constraint condition, or a friction constraint condition; and controlling each joint in the plurality of joints based on the control torque of the respective joint, wherein the wheel-legged part is connected to the base part of the robot.

Description

RELATED APPLICATIONS The present application is a continuation of International Application No. PCT/CN2022/135432, filed on Nov. 30, 2022, which claims priority to Chinese Patent Application No. 202210195625.2, entitled “ROBOT CONTROL METHOD, AND ROBOT” and filed on Mar. 1, 2022. The entire disclosures of the prior applications are hereby incorporated herein by reference. FIELD OF THE TECHNOLOGY The present disclosure relates to the field of artificial intelligence and robots, including to a robot control method and apparatus, a robot, a computer-readable storage medium, and a computer program product. BACKGROUND OF THE DISCLOSURE As the artificial intelligence and robot technologies are widely used in civil and commercial fields, robots based on the artificial intelligence and robot technologies play an increasingly important role in fields such as smart transportation, smart home, and the like, and also face higher requirements. At present, for motion control of the robot, such as an underactuated robot, it is usually necessary to design a dynamic model accurately corresponding to a mechanical structure of the robot, and then determine a control force at each joint of the robot based on changes of the dynamic model in a traveling process so as to improve and/or ensure the balance of the robot in a motion process. However, due to the complicated mechanical structure of the robot, such as some wheel-legged robots, it may still difficult to obtain the accurate dynamic model in a case of knowing the mechanical structure of the robot. In addition, even in a case where the dynamic model is already known, it may be difficult to accurately identify parameters in the dynamic model in some cases. In a case where the parameters of the dynamic model are already known but not accurate, a control effect of the robot may be unsatisfactory. Therefore, it may be necessary to provide a scheme capable of more flexibly controlling the robot. SUMMARY For the above problems, this disclosure provides a robot control method and apparatus, a robot, a non-transitory computer-readable storage medium, and a computer program product. In an aspect, this disclosure provides a method of controlling a robot. The method is performed by a controller of the robot for example. In the method of controlling the robot, first control information for controlling rotation of a driving wheel of a wheel-legged part of the robot is adaptively determined based on motion information of the robot that is generated while the robot is in motion. Second control information for controlling a plurality of joints of the wheel-legged part of the robot is determined based on the first control information, the plurality of joints being controlled based on the second control information to balance the robot. Third control information for controlling the plurality of joints is determined based on a target trajectory of the robot, the plurality of joints being controlled based on the third control information to move the robot along the target trajectory. A respective control torque for controlling each joint in the plurality of joints is determined based on the second control information and the third control information. In an aspect, this disclosure provides a robot control apparatus that includes processing circuitry. The processing circuitry is configured to adaptively determine first control information for controlling rotation of a driving wheel of a wheel-legged part of a robot based on motion information of the robot that is generated while the robot is in motion. The processing circuitry is configured to determine second control information for controlling a plurality of joints of the wheel-legged part of the robot based on the first control information, the plurality of joints being controlled based on the second control information to balance the robot. The processing circuitry is configured to determine third control information for controlling the plurality of joints based on a target trajectory of the robot, the plurality of joints being controlled based on the third control information to move the robot along the target trajectory. The processing circuitry is configured to determine a respective control torque for controlling each joint in the plurality of joints based on the second control information and the third control information. In another aspect, this disclosure provides a robot. The robot includes the robot control apparatus, the wheel-legged part, and a base part connected to the wheel-legged part. The wheel-legged part and the base part include the plurality of joints. In another aspect, this disclosure provides a non-transitory computer-readable storage medium, storing instructions which when executed by one or more processors cause the one or more processors to perform the method as described above. In another aspect, this disclosure provides a computer program product, including a computer-readable instruction, the computer-readable i