Robot control method, electronic equipment and medium
By optimizing the limb coordination of humanoid and semi-humanoid robots through an overall collaborative control mechanism and algorithm, the problems of single movements and poor coordination have been solved, achieving more efficient movement execution and overall control, and reducing the risk of collisions.
Patent Information
- Application Number
- CN202511731139.8
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-11-24
- Publication Date
- 2026-02-27
AI Technical Summary
Existing robot control schemes for humanoid and semi-humanoid robots suffer from problems such as limited movement and poor coordination, especially lacking optimization in overall coordination.
By adopting an overall collaborative control mechanism and algorithm, the robot's various limbs, such as the left hand unit, right hand unit, waist unit, and leg unit, are treated as a common target. Collision control is achieved through shared gradients and weighted coefficients to optimize the motion trajectory and coordination of each joint. Collision avoidance mechanism and collision risk prediction are also introduced.
It improves the coordination of robot driving and execution actions, meets the precision and overall control requirements of intelligent technologies such as embodied intelligence, visual perception, and reinforcement learning for humanoid and semi-humanoid robots, improves task execution efficiency, and reduces collision risks.
Smart Images

Figure CN121572292A_ABST
Abstract
Description
TECHNICAL FIELD
[0001] The present application relates to the technical field of robots, and in particular to a robot control method, an electronic device and a medium. BACKGROUND
[0002] With the development of embodied intelligence, visual perception, reinforcement learning, intelligent computing and other intelligent technologies, higher requirements are put forward for the driving and coordination of actions of humanoid robots and semi-humanoid robots. The robot control schemes in the prior art for humanoid robots and semi-humanoid robots have the problems of single action and poor coordination. For example, a robot control method is disclosed in a Chinese patent application with the application publication number CN108247654A, which obtains an actual current value detected by a current sensor on a target motor, and calculates an actual output torque of the target motor according to the actual current value, and obtains a position, an angular velocity and an angular acceleration of a target joint, and calculates a theoretical output torque of the target motor according to the position, the angular velocity and the angular acceleration of the target joint. However, the robot control method disclosed in the Chinese patent application with the application publication number CN108247654A can be used to control the anti-collision detection of a single joint, but lacks optimization in the overall coordination of each limb of the robot. For another example, a robot arm control method is disclosed in a Chinese patent with the grant announcement number CN106061427B, in which an arm unit is made of a plurality of links that are joined to each other through one or more joint units, a drive control unit controls the driving of the arm unit by causing the joint units to cooperatively drive, and the drive control unit controls the driving of the joint units based on control values for overall cooperative control of the arm unit according to generalized inverse dynamics. However, the robot arm control method disclosed in the Chinese patent with the grant announcement number CN106061427B only considers the overall cooperative control of each joint unit of an arm unit, and lacks optimization in the overall coordination of each limb of the robot.
[0003] Therefore, the present application provides a robot control method, an electronic device and a medium, which overcome the problems of single action and poor coordination in the robot control schemes in the prior art through optimization in the overall coordination of each limb of the robot, improve the driving and coordination of actions of the robot, and help to better meet the requirements of embodied intelligence, visual perception, reinforcement learning, intelligent computing and other intelligent technologies for the accuracy of action execution and the coordination of overall control of humanoid robots and semi-humanoid robots. SUMMARY
[0004] In a first aspect, the present application provides a robot control method. The robot control method is applied to a robot, the robot comprising a left-hand unit, a right-hand unit and a waist unit, the left-hand unit being formed by joints in a left-hand joint combination, the right-hand unit being formed by joints in a right-hand joint combination, the waist unit being formed by joints in a waist joint combination, the robot control method comprising: taking a target of the left-hand unit and a target of the right-hand unit as a first common target, using the first common target as a solving target of a global cooperative control algorithm to obtain a first update gradient, using the first update gradient as a first shared gradient between the left-hand joint combination, the right-hand joint combination and the waist joint combination, thereby realizing a first cooperative control mechanism between the left-hand unit, the right-hand unit and the waist unit; determining a first target of the waist unit by using the first cooperative control mechanism, and then controlling the waist unit to cooperatively control the left-hand unit and the right-hand unit based on the first target of the waist unit by using a position tracking priority strategy in the global cooperative control algorithm.
[0005] By the first aspect of the present application, the first cooperative control mechanism is realized by using the global cooperative control mechanism and the global cooperative control algorithm. In the first cooperative control mechanism, there is no distinction between primary and secondary, and all joints are in the same position. In this way, the left-hand unit and the right-hand unit share the cooperation with the waist unit, effectively overcoming the problem of overall coordination caused by the difference between the target of the left-hand unit and the target of the right-hand unit, overcoming the problem of single action and poor coordination in the robot control scheme of the prior art, improving the coordination of the robot driving and action execution, and helping to better meet the requirements of embodied intelligence, visual perception, reinforcement learning, intelligent computing and other intelligent technologies for the accuracy of action execution and the coordination of overall control of humanoid robots and semi-humanoid robots.
[0006] In a possible implementation of the first aspect of the present application, the robot further comprises a left leg unit and a right leg unit, the left leg unit is connected by joints in a left leg joint combination, the right leg unit is connected by joints in a right leg joint combination, and the robot control method further comprises: taking the target of the left leg unit and the target of the right leg unit as a second common target, using the second common target as a solving target of the overall cooperative control algorithm to obtain a second update gradient, using the second update gradient as a second shared gradient between the left leg joint combination, the right leg joint combination and the waist joint combination, so as to realize a second cooperative control mechanism between the left leg unit, the right leg unit and the waist unit; determining a second target of the waist unit by using the second cooperative control mechanism, and then controlling the waist unit to cooperatively control the left leg unit and the right leg unit based on the second target of the waist unit by using a position tracking priority strategy in the overall cooperative control algorithm.
[0007] In a possible implementation of the first aspect of the present application, when the first target of the waist unit is different from the second target of the waist unit, based on a type of a task being executed by the robot, the waist unit is controlled based on the first target of the waist unit or the second target of the waist unit.
[0008] In a possible implementation of the first aspect of the present application, when the type of the task being executed by the robot is a positioning type task, the waist unit is controlled based on the second target of the waist unit, and when the type of the task being executed by the robot is an operation type task, the waist unit is controlled based on the first target of the waist unit.
[0009] In a possible implementation of the first aspect of the present application, the robot control method further comprises: when any one of the left hand unit and the right hand unit detects occurrence of a collision event, switching a position tracking priority strategy in the overall cooperative control algorithm to an observation value reduction priority strategy, and then controlling the waist unit to reduce an observation value based on the first target of the waist unit by using an observation value reduction priority strategy in the overall cooperative control algorithm, wherein the observation value is a current value or a torque value associated with the collision event detected by the any one of the left hand unit and the right hand unit.
[0010] In a possible implementation of the first aspect of the present application, the robot control method further includes: when any one of the left hand unit and the right hand unit detects that the collision risk exceeds a preset warning value, switching a position tracking priority strategy in the overall cooperative control algorithm to an observation value reduction priority strategy, and then controlling the waist unit to reduce an observation value based on the first target of the waist unit by using the observation value reduction priority strategy in the overall cooperative control algorithm, wherein the observation value is a current value or a torque value associated with the collision risk detected by the any one unit.
[0011] In a possible implementation of the first aspect of the present application, the robot control method further includes: when any one of the left hand unit, the right hand unit, the left leg unit or the right leg unit detects occurrence of a collision event, switching a position tracking priority strategy in the overall cooperative control algorithm to an observation value reduction priority strategy, and then controlling the waist unit to reduce an observation value based on the first target of the waist unit or the second target of the waist unit by using the observation value reduction priority strategy in the overall cooperative control algorithm, wherein the observation value is a current value or a torque value associated with the collision event detected by the any one unit.
[0012] In a possible implementation of the first aspect of the present application, the robot control method further includes: when any one of the left hand unit, the right hand unit, the left leg unit or the right leg unit detects that the collision risk exceeds a preset warning value, switching a position tracking priority strategy in the overall cooperative control algorithm to an observation value reduction priority strategy, and then controlling the waist unit to reduce an observation value based on the first target of the waist unit or the second target of the waist unit by using the observation value reduction priority strategy in the overall cooperative control algorithm, wherein the observation value is a current value or a torque value associated with the collision risk detected by the any one unit.
[0013] In a possible implementation of the first aspect of the present application, the overall cooperative control algorithm is based on an inverse dynamics control principle, geometric parameters of each limb of the robot, and kinematics and dynamics control models of each limb of the robot.
[0014] In a possible implementation of the first aspect of the present application, the control on the left hand unit is based on a target of the left hand unit, and the control on the right hand unit is based on a target of the right hand unit.
[0015] In a possible implementation of the first aspect of the present application, the target of the left-hand unit defines the position, velocity and torque of the joint in the left-hand joint combination corresponding to the left-hand unit, and the target of the right-hand unit defines the position, velocity and torque of the joint in the right-hand joint combination corresponding to the right-hand unit.
[0016] In a possible implementation of the first aspect of the present application, the first shared gradient is used as the first shared gradient between the left-hand joint combination, the right-hand joint combination and the waist joint combination, thereby realizing the first cooperative control mechanism between the left-hand unit, the right-hand unit and the waist unit, including: setting a first weighting coefficient for the joints in the left-hand joint combination and the joints in the right-hand joint combination, and setting a second weighting coefficient for the joints in the waist joint combination, the first weighting coefficient being higher than the second weighting coefficient; and using the first shared gradient to synchronously update the state of the joints in the left-hand joint combination and the state of the joints in the right-hand joint combination according to the first weighting coefficient, and update the state of the joints in the waist joint combination according to the second weighting coefficient.
[0017] In a possible implementation of the first aspect of the present application, when the left-hand unit detects occurrence of a collision event, the first weighting coefficient applicable to the joints in the left-hand joint combination is increased, or when the right-hand unit detects occurrence of a collision event, the first weighting coefficient applicable to the joints in the right-hand joint combination is increased.
[0018] In a possible implementation of the first aspect of the present application, the second cooperative control mechanism further includes a center-of-gravity imbalance judgment mechanism and a knee bending degree control strategy, wherein the knee bending degree control strategy is used for bending control of the joints in the left-leg joint combination and the joints in the right-leg joint combination, so as to cooperatively control bending of the joints in the waist joint combination, thereby maintaining the center-of-gravity balance of the robot.
[0019] In a possible implementation of the first aspect of the present application, the left-leg unit and the right-leg unit have a front-drive mode and a reverse-drive mode respectively, and the second cooperative control mechanism is configured to switch according to the drive mode of the left-leg unit and the right-leg unit.
[0020] In a second aspect, the embodiments of the present application further provide a computer device, including a memory, a processor and a computer program stored in the memory and executable on the processor, and the processor implements the method according to any one of the implementation modes of the above-mentioned any one aspect when executing the computer program.
[0021] In a third aspect, the embodiments of the present application further provide a computer readable storage medium, which stores computer instructions, and the computer instructions cause a computer device to perform the method according to any one of the implementation manners of the above-mentioned aspect when the computer instructions run on the computer device.
[0022] In a fourth aspect, the embodiments of the present application further provide a computer program product, which comprises instructions stored on a computer readable storage medium, and the instructions cause a computer device to perform the method according to any one of the implementation manners of the above-mentioned aspect when the instructions run on the computer device. BRIEF DESCRIPTION OF DRAWINGS
[0023] In order to more clearly illustrate the technical solutions of the embodiments of the present application, the drawings needed in the embodiment description will be briefly introduced. Obviously, the drawings in the following description are some embodiments of the present application, and other drawings can be obtained by those skilled in the art without creative effort.
[0024] Figure 1 A flowchart of a robot control method of a first implementation manner provided by the embodiments of the present application is shown in FIG. 1. Figure 2 A flowchart of a robot control method of a second implementation manner provided by the embodiments of the present application is shown in FIG. 2. Figure 3 A flowchart of a robot control method of a third implementation manner provided by the embodiments of the present application is shown in FIG. 3. Figure 4 A flowchart of a robot control method of a fourth implementation manner provided by the embodiments of the present application is shown in FIG. 4. Figure 5 A structural diagram of a computer device provided by the embodiments of the present application is shown in FIG. 5. DETAILED DESCRIPTION
[0025] The embodiments of the present application will be further described in detail below with reference to the drawings.
[0026] It should be understood that in the description of the present application, “at least one” means one or more than one, and “multiple” means two or more than two. In addition, the words “first”, “second”, etc. are used only for the purpose of distinguishing the description, unless otherwise specified, and cannot be understood as indicating or implying relative importance, nor can it be understood as indicating or implying order.
[0027] Figure 1A flowchart of a robot control method according to a first embodiment provided by the present application is shown. The robot control method is applied to a robot. The robot includes a left-hand unit, a right-hand unit and a waist unit. The left-hand unit is formed by joints in a left-hand joint combination, the right-hand unit is formed by joints in a right-hand joint combination, and the waist unit is formed by joints in a waist joint combination. As shown in Figure 1 The robot control method according to the first embodiment includes the following steps.
[0028] Step S101: taking the target of the left-hand unit and the target of the right-hand unit as a first common target, using the first common target as a solving target of a global cooperative control algorithm to calculate a first update gradient, using the first update gradient as a first shared gradient among the left-hand joint combination, the right-hand joint combination and the waist joint combination, thereby realizing a first cooperative control mechanism among the left-hand unit, the right-hand unit and the waist unit.
[0029] Step S103: determining a first target of the waist unit by using the first cooperative control mechanism, and then controlling the waist unit to cooperatively control the left-hand unit and the right-hand unit based on the first target of the waist unit by using a position tracking priority strategy in the global cooperative control algorithm.
[0030] Referring to Figure 1 The robot control method according to the first embodiment is applicable to a semi-humanoid robot, i.e., a robot having a semi-human shape, and is also applicable to a humanoid robot, i.e., a robot having a full human shape or a completely humanoid robot. Generally, a semi-humanoid robot is a combination of a semi-human shape and a base having a moving ability, or a semi-human shape fixed at a certain position. A humanoid robot refers to a robot that imitates the appearance and behavior of a human being, and has multiple limbs similar to human limbs. However, unlike human actions which are limited by the structure of the human skeleton, a humanoid robot can have significantly different features in specific control and action execution details, for example, the lower body of a humanoid robot can adopt a front-drive manner similar to the structure of a human leg or a reverse-drive manner similar to the structure of a horse leg or an ostrich leg.
[0031] Continuing to refer to Figure 1In step S101, the target of the left hand unit and the target of the right hand unit are taken as a first common target, a first update gradient is calculated using the first common target as a solving target of a whole cooperative control algorithm, and the first update gradient is taken as a first shared gradient between the left hand joint combination, the right hand joint combination and the waist joint combination, so as to realize a first cooperative control mechanism between the left hand unit, the right hand unit and the waist unit. Here, the theoretical basis of the whole cooperative control algorithm comes from inverse dynamics, and the core is shared cooperative control, that is, the cooperation of the waist unit is shared by the left hand unit and the right hand unit, so as to realize the control of the waist unit to cooperate with the control of the left hand unit and the control of the right hand unit through the whole cooperative control mechanism based on generalized inverse dynamics. Considering the actual application process, the target of the left hand unit, for example, the target state (position, velocity, torque) of each joint in the left hand joint combination corresponding to the left hand unit, is generally different from the target of the right hand unit, for example, the target state (position, velocity, torque) of each joint in the right hand joint combination corresponding to the right hand unit. Therefore, if the target motion trajectory and target position of each joint in the left hand joint combination corresponding to the left hand unit are inversely deduced according to the target of the left hand unit, and a first set of parameter configurations for the control of the waist unit are inversely deduced therefrom, and the target motion trajectory and target position of each joint in the right hand joint combination corresponding to the right hand unit are inversely deduced according to the target of the right hand unit, and a second set of parameter configurations for the control of the waist unit are inversely deduced therefrom, in most cases, it will be found that the waist unit cannot simultaneously satisfy the first set of parameter configurations and the second set of parameter configurations. Therefore, if the left hand unit and the right hand unit are respectively regarded as independent limb units, and the parameter configurations for the control of the waist unit are inversely deduced therefrom, it is difficult to coordinate, which may cause mutual interference between different parts of the robot, and affect the overall coordination of the robot. Therefore, in step S101, the motion trajectory of the left hand unit, the motion trajectory of the right hand unit and the motion trajectory of the waist unit are optimized together. In this way, according to the torque and current of the driving motor detected in real time, the optimization target of the corresponding joint can be adjusted, and the optimization algorithm has a whole optimization target, and the whole optimization target corresponds to a whole target point or a whole target motion trajectory. In this way, each specific joint has its own optimization target, which corresponds to its own joint target motion trajectory, and the joint target motion trajectory corresponding to the joint is adjusted based on the torque and current of the driving motor monitored in real time, and further, a collision avoidance mechanism and a collision risk prediction mechanism can be introduced, which will be described in detail below. Therefore, unlike regarding the left hand unit and the right hand unit as independent limb units, here, without distinguishing primary and secondary, all joints are regarded as having equal status, and the targets of the two hands are combined together, for example, the left hand unit moves left and the right hand unit moves right.The target of the left-hand unit and the target of the right-hand unit are regarded as a common target as a solving target of inverse dynamics, and then the state of the joint of the left-hand unit and the state of the joint of the right-hand unit are calculated synchronously, and the state of the joint of the left-hand unit and the state of the joint of the right-hand unit are updated synchronously in the iteration process of the algorithm, including integrating the update gradient calculated in the iteration process of the algorithm as a shared gradient of the shared joint. That is, the target of the left-hand unit and the target of the right-hand unit are regarded as a first common target, the first update gradient is calculated by using the first common target as a solving target of the overall collaborative control algorithm, and the first update gradient is used as a first shared gradient between the left-hand joint combination, the right-hand joint combination and the waist joint combination. And, regarding the specific gradient update mechanism, the left-hand unit and the right-hand unit are updated preferentially, and then the waist unit is updated. In this way, the status of each joint is equal, and the state of the joint is updated synchronously, but the gradient (similar to acceleration) used to update the state is not completely the same between the joints, but the left-hand unit and the right-hand unit are updated preferentially, and then the waist unit is updated. The left-hand unit and the right-hand unit can be updated preferentially by setting different weights or weighting coefficients, for example, setting the weighting coefficient of the left-hand unit to 2.0 and the weighting coefficient of the waist unit to 0.5.
[0032] Continuing to refer to Figure 1 In step S103, the first target of the waist unit is determined by using the first collaborative control mechanism, and then the waist unit is controlled to collaboratively control the left-hand unit and the right-hand unit based on the first target of the waist unit by using the position tracking priority strategy in the overall collaborative control algorithm. In this way, the first collaborative control mechanism is realized by using the overall collaborative control mechanism and the overall collaborative control algorithm, and in the first collaborative control mechanism, all joints are in the same status without distinction. In this way, the collaboration of the left-hand unit and the right-hand unit with the waist unit is shared, the problem of overall coordination caused by the difference between the target of the left-hand unit and the target of the right-hand unit is effectively overcome, the problem of single action and poor coordination in the robot control scheme of the prior art is overcome, the coordination of driving and performing actions of the robot is improved, and it is helpful to better meet the requirements of embodied intelligence, visual perception, reinforcement learning, intelligent computing and other intelligent technologies on the accuracy of action performance and the coordination of overall control of humanoid robots and semi-humanoid robots.
[0033] Figure 2A flowchart of a robot control method according to a second embodiment provided by the present application. The robot control method according to the second embodiment is applicable to a fully humanoid robot, i.e. a robot having a plurality of limbs similar to human limbs, specifically a left hand unit, a right hand unit, a waist unit, a left leg unit and a right leg unit. Referring to Figure 1 The robot control method according to the first embodiment is implemented by optimizing the overall coordination of the limbs of the robot, thereby realizing a first cooperative control mechanism among the left hand unit, the right hand unit and the waist unit, and determining a first target of the waist unit by using the first cooperative control mechanism. Here, Figure 2 The robot control method according to the second embodiment is also implemented by realizing a second cooperative control mechanism among the left leg unit, the right leg unit and the waist unit, and determining a second target of the waist unit by using the second cooperative control mechanism. As Figure 2 The robot control method according to the second embodiment includes the following steps.
[0034] Step S201: taking the target of the left hand unit and the target of the right hand unit as a first common target, and realizing a first cooperative control mechanism among the left hand unit, the right hand unit and the waist unit.
[0035] Step S203: determining a first target of the waist unit by using the first cooperative control mechanism.
[0036] Step S211: taking the target of the left leg unit and the target of the right leg unit as a second common target, and realizing a second cooperative control mechanism among the left leg unit, the right leg unit and the waist unit.
[0037] Step S213: determining a second target of the waist unit by using the second cooperative control mechanism.
[0038] Step S220: judging whether the first target of the waist unit is different from the second target of the waist unit, and if so, executing step S222, and if not, executing step S224.
[0039] Step S222: controlling the waist unit to cooperatively control the left hand unit, the right hand unit, the left leg unit and the right leg unit based on the first target of the waist unit (the first target being the same as the second target).
[0040] Step S224: selecting to control the waist unit based on the first target of the waist unit or the second target of the waist unit (the first target being different from the second target) based on the type of task being executed by the robot.
[0041] Referring to Figure 1 and Figure 2In a possible implementation, the robot further comprises a left leg unit and a right leg unit, the left leg unit being connected by joints in a left leg joint combination, and the right leg unit being connected by joints in a right leg joint combination. The robot control method further comprises: taking the target of the left leg unit and the target of the right leg unit as a second common target, using the second common target as a solving target of the overall cooperative control algorithm to calculate a second update gradient, using the second update gradient as a second shared gradient between the left leg joint combination, the right leg joint combination, and the waist joint combination, so as to realize a second cooperative control mechanism between the left leg unit, the right leg unit, and the waist unit; determining a second target of the waist unit by using the second cooperative control mechanism, and then, based on the second target of the waist unit, controlling the waist unit to cooperatively control the left leg unit and the right leg unit by using a position tracking priority strategy in the overall cooperative control algorithm. As described above, Figure 1 The robot control method of the first implementation shown above realizes the first cooperative control mechanism by using the overall cooperative control mechanism and the overall cooperative control algorithm, and in the first cooperative control mechanism, there is no distinction between primary and secondary, and all the joints are in the same position. In this way, the left hand unit and the right hand unit share the cooperation with the waist unit, effectively overcoming the overall coordination problem caused by the difference between the target of the left hand unit and the target of the right hand unit, overcoming the single action and poor coordination problem existing in the robot control scheme of the prior art, improving the coordination of the robot driving and the action execution, and helping to better meet the requirements of body intelligence, visual perception, reinforcement learning, intelligent computing, and other intelligent technologies for the accuracy of action execution and the coordination of overall control of humanoid robots and semi-humanoid robots. Here, Figure 2The second embodiment of the robot control method shown uses a whole coordination control mechanism and a whole coordination control algorithm to achieve a second coordination control mechanism, under which there is no distinction between primary and secondary, and under which all joints are of equal status. The motion trajectory of the left leg unit, the motion trajectory of the right leg unit, and the motion trajectory of the waist unit are all optimized together. In this way, the optimization target of the corresponding joint can be adjusted according to the torque and current of the driving motor detected in real time, and the optimization algorithm has a whole optimization target, which corresponds to a whole target point or a whole target motion trajectory. In this way, each specific joint has its own optimization target, which corresponds to its own joint target motion trajectory, and the joint target motion trajectory corresponding to the joint is adjusted based on the torque and current of the driving motor monitored in real time, and further, a collision avoidance mechanism and a collision risk prediction mechanism can be introduced, which will be described in detail below. Therefore, unlike regarding the left leg unit and the right leg unit as independent limb units, here, all joints are regarded as having equal status, and the targets of the two legs are combined together, for example, the left leg unit moves left and the right leg unit moves right. The targets of the left leg unit and the right leg unit are regarded as a common target as the solution target of inverse dynamics, and then the states of the joints of the left leg unit and the right leg unit are calculated synchronously, and the joint states of the left leg unit and the right leg unit are updated synchronously in the algorithm iteration process, including integrating the update gradient calculated in the algorithm iteration process as a shared gradient of the shared joints. That is, the target of the left leg unit and the target of the right leg unit are regarded as a first common target, the first common target is used as a solution target of the whole coordination control algorithm to calculate a first update gradient, and the first update gradient is used as a first shared gradient between the left leg joint combination, the right leg joint combination, and the waist joint combination. And regarding the specific gradient update mechanism, the left leg unit and the right leg unit are updated first, and then the waist unit is updated. In this way, the status of each joint is equal, and the state of the joint is updated synchronously, but the gradient (similar to acceleration) used to update the state is not exactly the same between the joints, but the left leg unit and the right leg unit are updated first, and then the waist unit is updated. Different weights or weighting coefficients can be set to achieve the priority update of the left leg unit and the right leg unit, for example, a weighting coefficient of 2.0 is set for the left leg unit, and a weighting coefficient of 0.5 is set for the waist unit.
[0042] Referring to Figure 1 and Figure 2, the first cooperative control mechanism is used to realize the cooperation sharing of the waist unit by the left-hand unit and the right-hand unit, and the second cooperative control mechanism is used to realize the cooperation sharing of the waist unit by the left-leg unit and the right-leg unit. Therefore, by using the first cooperative control mechanism and the second cooperative control mechanism, the overall cooperative control of the full humanoid robot is facilitated. Further, considering that in some cases, the target state of the waist joint determined by the first cooperative control mechanism and the second cooperative control mechanism is different, it is necessary to determine whether the first target of the waist unit is different from the second target of the waist unit, and a conflict resolution mechanism between the first cooperative control mechanism and the second cooperative control mechanism is provided according to the type of the task being executed by the robot. The task target being executed by the robot is used to make a choice or trade-off. For example, the positioning task of the robot such as walking requires that the second cooperative control mechanism be given priority, i.e., the leg is given priority. For another example, the operation task of the robot such as making coffee requires that the first cooperative control mechanism be given priority, i.e., the hand is given priority. In this way, based on the type of the task being executed by the robot, the first target of the waist unit or the second target of the waist unit is selected, so that the task-oriented conflict resolution mechanism of the robot is realized, which facilitates more efficient execution of the task of the robot.
[0043] Referring to Figure 1 and Figure 2 In some embodiments, when the first target of the waist unit is different from the second target of the waist unit, based on the type of the task being executed by the robot, the first target of the waist unit or the second target of the waist unit is selected to control the waist unit. In this way, a conflict resolution mechanism between the first cooperative control mechanism and the second cooperative control mechanism according to the type of the task being executed by the robot is realized, which facilitates improving the efficiency of task execution.
[0044] Referring to Figure 3 and Figure 1In some embodiments, when the type of the task being executed by the robot is a positioning type task, the second target of the waist unit is selected to control the waist unit, and when the type of the task being executed by the robot is an operation type task, the first target of the waist unit is selected to control the waist unit. The positioning type task can be a walking task, for example, which requires the robot to reach a specified location or walk along a specified path, in which case the target associated with the leg joints is given priority, i.e., the second target of the waist unit is selected to control the waist unit. In contrast, the operation type task can be a task such as making coffee or operating experimental equipment, which requires the arm joints of the robot to perform precise movements, in which case the target associated with the arm joints is given priority, i.e., the first target of the waist unit is selected to control the waist unit. In this way, a conflict resolution mechanism between the first cooperative control mechanism and the second cooperative control mechanism is realized according to the type of the task being executed by the robot, which helps to improve the efficiency of task execution.
[0045] Figure 2 A flowchart of a robot control method of a third implementation provided by embodiments of the present application is shown in FIG. 13. The robot control method of the third implementation is similar to the robot control method of the first implementation shown in FIG. 10 and the robot control method of the second implementation shown in FIG. 11, and the same reference numerals are used to denote the same elements. The robot control method of the third implementation realizes the first cooperative control mechanism and the second cooperative control mechanism, and provides a conflict resolution mechanism between the first cooperative control mechanism and the second cooperative control mechanism according to the type of the task being executed by the robot. In view of the fact that the multiple limbs of the robot can collide during execution of a movement of the robot, timely avoidance actions need to be taken, and the impact of the magnitude of the avoidance actions needs to be considered. Therefore, on the basis of the first cooperative control mechanism and the second cooperative control mechanism mentioned above, a response measure when a collision event is detected is further added. As shown in FIG. 13, the robot control method of the third implementation includes the following steps. Figure 3 Figure 1 The robot control method of the third implementation realizes the first cooperative control mechanism and the second cooperative control mechanism, and provides a conflict resolution mechanism between the first cooperative control mechanism and the second cooperative control mechanism according to the type of the task being executed by the robot. In view of the fact that the multiple limbs of the robot can collide during execution of a movement of the robot, timely avoidance actions need to be taken, and the impact of the magnitude of the avoidance actions needs to be considered. Therefore, on the basis of the first cooperative control mechanism and the second cooperative control mechanism mentioned above, a response measure when a collision event is detected is further added. As shown in FIG. 13, the robot control method of the third implementation includes the following steps. Figure 3
[0046] Step S301: It is determined whether a collision event is detected by a certain limb unit of the robot. If yes, step S303 is performed, and if no, step S305 is performed.
[0047] Step S303: The position tracking priority strategy in the overall cooperative control algorithm is switched to the observation value reduction priority strategy, and then the observation value reduction priority strategy in the overall cooperative control algorithm is used to select the first target of the waist unit or the second target of the waist unit to control the waist unit to reduce the observation value based on the limb unit for which the collision event is detected.
[0048] Step S305: controlling the waist unit to collaboratively control the limb units of the robot by using the position tracking priority strategy in the overall collaborative control algorithm.
[0049] Referring to Figure 1 and Figure 1 In a possible implementation, the robot control method further includes: when any one of the left hand unit and the right hand unit detects occurrence of a collision event, switching the position tracking priority strategy in the overall collaborative control algorithm to an observation value reduction priority strategy, and then, based on the first target of the waist unit, controlling the waist unit to reduce an observation value by using the observation value reduction priority strategy in the overall collaborative control algorithm, wherein the observation value is a current value or a torque value associated with the collision event detected by the any one of the left hand unit and the right hand unit. As mentioned above, Figure 2 The robot control method of the first implementation shown above achieves the first collaborative control mechanism by using the overall collaborative control mechanism and the overall collaborative control algorithm, and in the first collaborative control mechanism, there is no distinction between primary and secondary, and all joints are in the same position. In this way, the left hand unit and the right hand unit share the collaboration with the waist unit, effectively overcoming the problem of overall coordination caused by the difference between the target of the left hand unit and the target of the right hand unit, overcoming the problem of single action and poor coordination in the robot control scheme of the prior art, improving the coordination of the robot in driving and performing actions, and helping to better meet the requirements of embodied intelligence, visual perception, reinforcement learning, intelligent computing and other intelligent technologies for the accuracy of action execution and the coordination of overall control of humanoid robots and semi-humanoid robots. Here, the anti-collision mechanism is further introduced. If a collision is actually detected, a flexible avoidance action is taken, the priority of the current overall coordination algorithm is switched from position tracking priority to priority reduction of observation value (current, torque), that is, the position tracking priority strategy in the overall collaborative control algorithm is switched to the observation value reduction priority strategy, and the priority of overall collaborative control is changed (when the orientation of the robot task is inconsistent, the joint of the limb unit detecting the occurrence of the collision event is given priority). In this way, the overall collaborative control mechanism is beneficially supplemented, the anti-collision mechanism is introduced, the observation value is effectively reduced by taking a flexible avoidance action, and timely measures are taken in response to the occurrence of a collision event.
[0050] Referring to Figure 3 , Figure 4 and Figure 1In a possible implementation, the robot control method further comprises: when any one of the left hand unit, the right hand unit, the left leg unit or the right leg unit detects occurrence of a collision event, switching a position tracking priority strategy in the overall cooperative control algorithm to an observation value reduction priority strategy, and then selecting, based on the any one unit, the first target based on the waist unit or the second target of the waist unit to control the waist unit to reduce an observation value based on an observation value reduction priority strategy in the overall cooperative control algorithm, wherein the observation value is a current value or a torque value associated with the collision event detected by the any one unit. As mentioned above, the first cooperative control mechanism and the second cooperative control mechanism are implemented, wherein the first cooperative control mechanism is used to realize cooperation of the left hand unit and the right hand unit with the waist unit, and the second cooperative control mechanism is used to realize cooperation of the left leg unit and the right leg unit with the waist unit. Therefore, the first cooperative control mechanism and the second cooperative control mechanism are used to help realize overall cooperative control of the full humanoid robot. Here, the anti-collision mechanism is further introduced. If actual collision is detected, a flexible avoidance action is taken, the priority of the current overall coordination algorithm is switched from position tracking priority to priority of reducing observation value (current, torque), that is, the position tracking priority strategy in the overall cooperative control algorithm is switched to the observation value reduction priority strategy, and the priority of the overall cooperative control is changed (when the orientation of the robot task is inconsistent, the joint of the limb unit detecting occurrence of the collision event is given priority). In this way, a beneficial supplement to the overall cooperative control mechanism is provided, the anti-collision mechanism is introduced, the observation value is effectively reduced by taking a flexible avoidance action, and the response measure when the collision event is detected is taken in time.
[0051] Figure 2 A flowchart of a robot control method of a fourth implementation provided by an embodiment of the present application is shown. Referring to Figure 4 the robot control method of the first implementation shown in FIG. 1, and referring to Figure 1The robot control method of the second embodiment shown implements the first and second collaborative control mechanisms and provides a conflict resolution mechanism between the first and second collaborative control mechanisms oriented to the type of task being executed by the robot. Considering that during the execution of an action by the robot, as the multiple limbs of the robot each execute an action towards a corresponding target, for example, the left hand towards the left and the right hand towards the right, the risk of collision can increase or decrease, and when an avoidance action is executed after a collision event has occurred, it can have already caused damage. To this end, in combination with the design of the overall collaborative control described above, the collision risk can be monitored, so that in the case where the collision risk has increased to exceed the warning value but a collision event has not yet been detected, the collision risk is reduced by executing an avoidance action, thereby avoiding further increase in the collision risk and thus predictively preventing the occurrence of a collision event. As Figure 4 The robot control method of the fourth embodiment shown includes the following steps.
[0052] Step S401: Determine whether a collision risk detected by a limb unit of the robot exceeds a preset warning value, if yes, execute step S403, if no, execute step S405.
[0053] Step S403: Switch the position tracking priority strategy in the overall collaborative control algorithm to the observation value reduction priority strategy, and then use the observation value reduction priority strategy in the overall collaborative control algorithm to select the first target based on the waist unit or the second target of the waist unit to control the waist unit to reduce the observation value based on the limb unit for which the collision risk exceeds the preset warning value.
[0054] Step S405: Use the position tracking priority strategy in the overall collaborative control algorithm to control the waist unit to collaboratively control the limb units of the robot.
[0055] Referring to Figure 1 and Figure 2 In one possible embodiment, the robot control method further includes: when any one of the left hand unit and the right hand unit detects that a collision risk exceeds a preset warning value, switching the position tracking priority strategy in the overall collaborative control algorithm to the observation value reduction priority strategy, and then using the observation value reduction priority strategy in the overall collaborative control algorithm to control the waist unit to reduce the observation value based on the first target of the waist unit, wherein the observation value is a current value or a torque value associated with the collision risk detected by the any one unit. As mentioned above, Figure 4The robot control method of the first embodiment shown utilizes the overall coordination control mechanism and the overall coordination control algorithm to achieve the first coordination control mechanism, under which there is no distinction between primary and secondary, and under which all joints are of equal status. This achieves sharing of coordination with the waist unit by the left-hand unit and the right-hand unit, effectively overcoming the overall coordination problem caused by differences between the target of the left-hand unit and the target of the right-hand unit, overcoming the single action and poor coordination problem existing in the robot control scheme of the prior art, improving the coordination of robot driving and action execution, and helping to better meet the requirements of embodied intelligence, visual perception, reinforcement learning, intelligent computing and other intelligent technologies for the accuracy of action execution and the coordination of overall control of humanoid robots and semi-humanoid robots. Here, a collision risk monitoring mechanism is further introduced, which can discover joints with collision risks in real time. The current threshold corresponding to the collision risk or the torque threshold can be a little smaller than the threshold corresponding to the actual collision, which helps to improve the prediction of whether a collision risk has occurred. In this way, if an actual collision event is detected, a flexible avoidance action is taken by switching the priority of the current overall coordination algorithm from position tracking priority to priority reduction of observation values (current, torque). By monitoring the observation values (torque, current) in real time, the rise of the collision risk can be determined, and when the warning threshold is exceeded, the priority of the current overall coordination algorithm can be switched in advance from position tracking priority to priority reduction of observation values (current, torque). Further, the overall coordination control mechanism can be adjusted, for example, in a positioning task, the robot originally prioritizes the leg, but the hand joint detects a collision warning, and the overall coordination control mechanism may need to be configured with hand priority to help reduce or avoid further improvement of the collision risk (observation values continue to increase to approach the collision threshold). In addition, for the coordination mechanism of the left and right arms, the left and right arms are of equal status, but the left hand has a warning and the right hand does not, and the coordination algorithm of the left and right hands can be temporarily adjusted to at least prevent the observation value of the left hand from further increasing. In this way, by introducing a collision risk-based prediction mechanism combined with the overall coordination control design described above, the collision risk can be monitored to reduce the collision risk by performing a flexible avoidance action when the collision risk has increased to exceed the warning value but a collision event has not been detected, thereby avoiding further increase in the collision risk and preventing the occurrence of a collision event in a predictive manner.
[0056] Referring to Figure 3 and Figure 4In a possible implementation, the robot control method further includes: when any one of the left hand unit, the right hand unit, the left leg unit, or the right leg unit detects that the collision risk exceeds a preset warning value, switching a position tracking priority strategy in the overall cooperative control algorithm to an observation value reduction priority strategy, and then selecting, based on the any one unit, the first target of the waist unit or the second target of the waist unit to reduce an observation value based on the observation value reduction priority strategy in the overall cooperative control algorithm, where the observation value is a current value or a torque value associated with the collision risk detected by the any one unit. In this way, by introducing a collision risk prediction mechanism, in combination with the overall cooperative control design described above, the collision risk can be reduced by performing a flexible avoidance action when the collision risk has increased to exceed the warning value but a collision event has not yet been detected, thereby avoiding further increase in the collision risk and preventing the collision event from occurring predictively.
[0057] Referring to Figure 3 and Figure 4 , it should be understood that, Figure 1 the robot control method of the third implementation shown in Figure 2 the robot control method of the fourth implementation shown in provides a mechanism for preventing a collision event from occurring predictively by monitoring the collision risk. The monitoring of the occurrence of the collision event and the monitoring of the collision risk can coexist. During the execution of the action of the robot, the overall coordination of the limbs of the robot is improved by the overall cooperative control mechanism and the overall cooperative control algorithm described above, but as the multiple limbs of the robot each execute an action towards a corresponding target, the increase and decrease of the collision risk faced by each of the multiple limbs and the occurrence or non-occurrence of a collision event are different. Generally, for the same limb unit of the robot, such as the left hand unit, the collision risk exceeding the preset warning value should have been monitored before the occurrence of the collision event is detected by the same limb unit. However, for two different limb units of the robot, because each has a different target and a corresponding motion trajectory, for example, the left hand moves left and the right hand moves right, it is possible that one limb unit monitors that the collision risk exceeds the preset warning value while the other limb unit monitors that the collision risk is decreasing. Therefore, the collision event occurrence response measure and the mechanism for preventing a collision event from occurring predictively by monitoring the collision risk can be organically combined, thereby performing a flexible avoidance action and better improving the safety during the execution of the action of the robot.
[0058] Referring to Figure 3 , Figure 4 , Figure 5and Figure 5 In a possible implementation, the overall synergic control algorithm is based on the inverse dynamics control principle, geometric parameters of each limb of the robot, and kinematic and dynamic control models of each limb of the robot. In this way, the overall synergic control mechanism and the overall synergic control algorithm are used to overcome the problems of single action and poor coordination in the prior art robot control scheme, improve the coordination of driving and performing actions of the robot, and help better meet the requirements of embodied intelligence, visual perception, reinforcement learning, intelligent computing, and other intelligent technologies for the accuracy of action performance and the coordination of overall control of humanoid robots and semi-humanoid robots.
[0059] In a possible implementation, the control of the left-hand unit is based on the target of the left-hand unit, and the control of the right-hand unit is based on the target of the right-hand unit. In this way, the first synergic control mechanism is implemented, in which there is no distinction between primary and secondary, and all joints are of equal status. This achieves the sharing of synergy with the waist unit by the left-hand unit and the right-hand unit, effectively overcoming the problem of overall coordination caused by the difference between the target of the left-hand unit and the target of the right-hand unit.
[0060] In a possible implementation, the target of the left-hand unit defines the position, velocity, and torque of the joint in the left-hand joint combination corresponding to the left-hand unit, and the target of the right-hand unit defines the position, velocity, and torque of the joint in the right-hand joint combination corresponding to the right-hand unit. In this way, the first synergic control mechanism is implemented, in which there is no distinction between primary and secondary, and all joints are of equal status. This achieves the sharing of synergy with the waist unit by the left-hand unit and the right-hand unit, effectively overcoming the problem of overall coordination caused by the difference between the target of the left-hand unit and the target of the right-hand unit, and overcoming the problems of single action and poor coordination in the prior art robot control scheme.
[0061] In one possible implementation, the first update gradient is used as a first shared gradient among the left-hand joint group, the right-hand joint group, and the waist joint group, so as to realize a first cooperative control mechanism among the left-hand unit, the right-hand unit, and the waist unit, including: setting a first weighting coefficient for the joints in the left-hand joint group and the joints in the right-hand joint group, and setting a second weighting coefficient for the joints in the waist joint group, the first weighting coefficient being higher than the second weighting coefficient; and using the first shared gradient to update the states of the joints in the left-hand joint group and the right-hand joint group according to the first weighting coefficient, and to update the states of the joints in the waist joint group according to the second weighting coefficient. In this way, all the joints are treated as having equal status without distinction between primary and secondary, and the targets of the two hands are combined together, for example, the left-hand unit moves left and the right-hand unit moves right. The targets of the left-hand unit and the right-hand unit are treated as a common target as a solution target of inverse dynamics, and then the states of the joints of the left-hand unit and the right-hand unit are calculated synchronously, and the joint states of the left-hand unit and the right-hand unit are updated synchronously in the algorithm iteration process, including integrating the update gradient calculated in the algorithm iteration as a shared gradient of the shared joints. That is, the target of the left-hand unit and the target of the right-hand unit are used as a first common target, the first update gradient is calculated using the first common target as a solution target of the overall cooperative control algorithm, and the first update gradient is used as a first shared gradient among the left-hand joint group, the right-hand joint group, and the waist joint group. Moreover, regarding the specific gradient update mechanism, the left-hand unit and the right-hand unit are updated preferentially, and then the waist unit is updated. In this way, the status of each joint is equal, and the states of the joints are updated synchronously, but the gradients (similar to accelerations) used to update the states are not completely the same among the joints, and the left-hand unit and the right-hand unit are updated preferentially, and then the waist unit is updated. The left-hand unit and the right-hand unit can be updated preferentially by setting different weights or weighting coefficients, for example, the left-hand unit is set with a weighting coefficient of 2.0, and the waist unit is set with a weighting coefficient of 0.5.
[0062] In some embodiments, the first weighting factor applicable to the joints in the left-hand joint combination is increased when the left-hand unit detects occurrence of a collision event, or the first weighting factor applicable to the joints in the right-hand joint combination is increased when the right-hand unit detects occurrence of a collision event. In this way, if a collision is actually detected, a flexible evasive action is taken by switching the priority of the current overall coordination algorithm from position tracking priority to priority of reducing observation values (current, torque), i.e. switching the position tracking priority strategy in the overall cooperative control algorithm to the observation value reduction priority strategy, and changing the priority of the overall cooperative control (the joint of the limb unit detecting occurrence of a collision event is prioritized when it is inconsistent with the guidance of the robot task). In this way, a beneficial supplement to the overall cooperative control mechanism is provided, a collision avoidance mechanism is introduced, and the observation value is effectively reduced by taking a flexible evasive action, so that timely measures are taken when a collision event is detected.
[0063] In a possible implementation, the second cooperative control mechanism further comprises a center of gravity imbalance judgment mechanism and a knee joint bending degree control strategy, wherein the knee joint bending degree control strategy is used for bending control of the joints in the left leg joint combination and the joints in the right leg joint combination, so as to coordinate the bending control of the joints in the waist joint combination, and further maintain the center of gravity balance of the robot. In this way, the effect of the second cooperative control mechanism is further improved.
[0064] In a possible implementation, the left leg unit and the right leg unit have forward drive mode and reverse drive mode respectively, and the second cooperative control mechanism is configured to be switched according to the drive mode of the left leg unit and the right leg unit. In this way, it is helpful to adapt to the configuration of various robots.
[0065] Figure 5This is a schematic diagram of a computing device 500 provided in an embodiment of this application. The computing device 500 includes one or more processors 510, a communication interface 520, and a memory 530. The processors 510, communication interface 520, and memory 530 are interconnected via a bus 540. Optionally, the computing device 500 may further include an input / output interface 550, which is connected to input / output devices for receiving user-set parameters, etc. The computing device 500 can be used to implement some or all of the functions of the device embodiment or system embodiment in the above-described embodiments of this application; the processor 510 can also be used to implement some or all of the operation steps of the method embodiment in the above-described embodiments of this application. For example, the specific implementation of various operations performed by the computing device 500 can be referred to the specific details in the above embodiments, such as the processor 510 being used to execute some or all of the steps or operations in the above-described method embodiments. For example, in the embodiments of this application, the computing device 500 can be used to implement some or all of the functions of one or more components in the above-described device embodiments. In addition, the communication interface 520 can be used for communication functions necessary to implement the functions of these devices and components, and the processor 510 can be used for processing functions necessary to implement the functions of these devices and components.
[0066] It should be understood that, Figure 5 The computing device 500 may include one or more processors 510, and the multiple processors 510 may collaboratively provide processing power in a parallel connection mode, a serial connection mode, a serial-parallel connection mode, or an arbitrary connection mode; or the multiple processors 510 may form a processor sequence or a processor array; or the multiple processors 510 may be divided into a main processor and an auxiliary processor; or the multiple processors 510 may have different architectures, such as adopting a heterogeneous computing architecture. Furthermore, Figure 5 The structural and functional descriptions of the computing device 500 shown are exemplary and non-limiting. In some exemplary embodiments, the computing device 500 may include... Figure 5 The diagram shows more or fewer components, or combinations of some components, or splitting of some components, or different arrangements of components.
[0067] The processor 510 can have various specific implementations. For example, the processor 510 can include one or more combinations of a central processing unit (CPU), a graphic processing unit (GPU), a neural-network processing unit (NPU), a tensor processing unit (TPU), a data processing unit (DPU), or the like, and embodiments of the present application are not limited in this regard. The processor 510 can also be a single core processor or a multiple core processor. The processor 510 can be a combination of a CPU and a hardware chip. The hardware chip can be an application-specific integrated circuit (ASIC), a programmable logic device (PLD), or a combination thereof. The PLD can be a complex programmable logic device (CPLD), a field-programmable gate array (FPGA), a generic array logic (GAL), or any combination thereof. The processor 510 can also be implemented by a logic device with built-in processing logic, such as an FPGA or a digital signal processor (DSP), etc. The communication interface 520 can be a wired interface or a wireless interface, used for communication with other modules or devices. The wired interface can be an Ethernet interface, a local interconnect network (LIN), etc., and the wireless interface can be a cellular network interface or a wireless local area network interface, etc.
[0068] The memory 530 can be a non-volatile memory, for example, a read-only memory (ROM), a programmable ROM (PROM), an erasable PROM (EPROM), an electrically EPROM (EEPROM), or a flash memory. The memory 530 can also be a volatile memory, which can be a random access memory (RAM) used as an external cache. By way of example, and not limitation, many forms of RAM can be used, for example, a static RAM (SRAM), a dynamic RAM (DRAM), a synchronous DRAM (SDRAM), a double data rate SDRAM (DDR SDRAM), an enhanced SDRAM (ESDRAM), a synchlink DRAM (SLDRAM), and a direct rambus RAM (DR RAM). The memory 530 can also be used for storing programs codes and data to be used in the processor 510 to invoke the program codes stored in the memory 530 to execute the partial or all of the operations steps in the above method embodiments, or to execute the corresponding functions in the above device embodiments. In addition, the computing device 500 can contain more or less components, or have different configurations of components, than those shown in the figure. Figure 1 More or less components can be shown, or different configurations of components can be shown.
[0069] The bus 540 can be a peripheral component interconnect express (PCIe) bus, or an extended industry standard architecture (EISA) bus, a unified bus (Ubus or UB), a compute express link (CXL), a cache coherent interconnect for accelerators (CCIX), etc. The bus 540 can be divided into an address bus, a data bus, a control bus, etc. In addition to including a data bus, the bus 540 can also include a power bus, a control bus, a status signal bus, etc. However, for the sake of clarity,Figure 1 Only one bus or bus type is used in the figure, but it is understood that the computer system 100 can use more buses or bus types.
[0070] The method and device provided by the embodiments of the present application are based on the same inventive concept, and the embodiments, implementation manners, examples or implementation modes of the method and device are similar in principle for solving problems, and thus the embodiments, implementation manners, examples or implementation modes of the method and device can be referred to each other, and the repeated parts will not be described herein. The embodiments of the present application further provide a system, which includes a plurality of computing devices, and the structure of each computing device can refer to the structure of the computing device described above. The functions or operations that can be implemented by the system can refer to the specific implementation steps in the above method embodiments and / or the specific functions described in the above device embodiments, and will not be described herein.
[0071] The embodiments of the present application further provide a computer readable storage medium, which stores computer instructions, and when the computer instructions run on a computer device (such as one or more processors), the method steps in the above method embodiments can be implemented. The specific implementation of the processor of the computer readable storage medium in executing the above method steps can refer to the specific operations described in the above method embodiments and / or the specific functions described in the above device embodiments, and will not be described herein.
[0072] Those skilled in the art will appreciate that embodiments of the present application can be readily used as a method, apparatus, or computer program product. The present application can take the form of an entirely hardware embodiment, an entirely software embodiment or an embodiment containing both software and hardware aspects. Embodiments of the present application can be implemented in software, hardware, firmware or any combination thereof. Embodiments of the present application can be implemented as computer program products that comprise computer executable code, which when loaded and executed by a computer, cause the computer to carry out the steps of the processes described in the embodiments of the present application. The present application can take the form of a computer program product which can be embodied in one or more computer-usable storage media including a computer- readable storage medium having computer-usable program code embodied thereon. The computer-usable program code can be downloaded from a website, computer, server or data center through wired (e.g., coaxial cable, optical fiber, digital subscriber line) or wireless (e.g., infrared, wireless, microwave, etc.) means to another website, computer, server or data center. The computer-usable storage media can be any available media that can be accessed by a computer and includes both a removable memory and a non-removable memory. The computer-usable storage media can be a magnetic medium, e.g., a floppy disk, a hard disk drive, a magnetic tape, an optical medium, or a semiconductor medium. The semiconductor medium can be a solid state disk, a random access memory, a flash memory, a read only memory, a programmable read only memory, an electrically programmable read only memory, a register, or any other suitable storage medium.
[0073] The present application is described with reference to the flowcharts and / or block diagrams of the methods, apparatus (systems) and computer program products according to embodiments of the present application. Each block in the flowcharts and / or block diagrams and combinations of blocks in the flowcharts and / or block diagrams can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general purpose computer, special purpose computer, an embedded processor or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, create means for implementing the functions specified in the flowcharts and / or block diagrams block or blocks. Figure 1 The flowcharts and / or block diagrams can also be implemented by one or more of the following: a method, an apparatus, a computer program product, a system, a computer readable medium, a computer readable storage medium, a computer program, a computer, a processor, a server, a data center, a hardware, a software, a firmware, a combination thereof, or any suitable combination thereof. Figure 1 The flowcharts and / or block diagrams can also be implemented by one or more of the following: a method, an apparatus, a computer program product, a system, a computer readable medium, a computer readable storage medium, a computer program, a computer, a processor, a server, a data center, a hardware, a software, a firmware, a combination thereof, or any suitable combination thereof. Figure 1one or more processes and / or functions specified in the flow block or blocks Figure 1 one or more processes and / or functions specified in the flow block or blocks one or more processes and / or functions specified in the flow block or blocks one or more processes and / or functions specified in the flow block or blocks
[0074] In the above embodiments, the description of each embodiment is focused on, and the parts not described in detail in a certain embodiment can be referred to the related description of other embodiments. Obviously, those skilled in the art can make various modifications and variations to the embodiments of the present application without departing from the spirit and scope of the embodiments of the present application. The steps in the method of the embodiments of the present application can be adjusted, combined or deleted in sequence according to actual needs; the modules in the system of the embodiments of the present application can be divided, combined or deleted according to actual needs. If these modifications and variations of the embodiments of the present application belong to the scope of the claims of the present application and the equivalent technologies thereof, the present application also intends to include these modifications and variations.
Claims
1. A robot control method, characterized in that, The robot control method is applied to a robot, which includes a left-hand unit, a right-hand unit, and a waist unit. The left-hand unit is formed by joints in a left-hand joint assembly, the right-hand unit is formed by joints in a right-hand joint assembly, and the waist unit is formed by joints in a waist joint assembly. The robot control method includes: The target of the left hand unit and the target of the right hand unit are taken as the first common target. The first common target is used as the solution target of the overall cooperative control algorithm to calculate the first update gradient. The first update gradient is used as the first shared gradient among the left hand joint combination, the right hand joint combination and the waist joint combination, thereby realizing the first cooperative control mechanism among the left hand unit, the right hand unit and the waist unit. Using the first cooperative control mechanism, the first target of the waist unit is determined. Then, using the position tracking priority strategy in the overall cooperative control algorithm, based on the first target of the waist unit, the waist unit is controlled to cooperate in controlling the left-hand unit and the right-hand unit.
2. The robot control method according to claim 1, characterized in that, The robot further includes a left leg unit and a right leg unit. The left leg unit is formed by joints joining the joints in the left leg joint assembly, and the right leg unit is formed by joints joining the joints in the right leg joint assembly. The robot control method further includes: The target of the left leg unit and the target of the right leg unit are taken as the second common target. The second common target is used as the solution target of the overall cooperative control algorithm to calculate the second update gradient. The second update gradient is used as the second shared gradient among the left leg joint combination, the right leg joint combination and the waist joint combination, thereby realizing the second cooperative control mechanism among the left leg unit, the right leg unit and the waist unit. Using the second cooperative control mechanism, the second target of the waist unit is determined. Then, using the position tracking priority strategy in the overall cooperative control algorithm, based on the second target of the waist unit, the waist unit is controlled to cooperate in controlling the left leg unit and the right leg unit.
3. The robot control method according to claim 2, characterized in that, When the first target of the waist unit is different from the second target of the waist unit, the waist unit is controlled based on either the first target or the second target of the waist unit, depending on the task type being performed by the robot.
4. The robot control method according to claim 3, characterized in that, When the robot is performing a positioning task, the waist unit is controlled based on a second target. When the robot is performing an operation task, the waist unit is controlled based on a first target.
5. The robot control method according to claim 1, characterized in that, The robot control method further includes: When either the left-hand unit or the right-hand unit detects a collision event, the position tracking priority strategy in the overall cooperative control algorithm is switched to the observation reduction priority strategy. Then, using the observation reduction priority strategy in the overall cooperative control algorithm, the waist unit is controlled to reduce the observation value based on the first target of the waist unit. The observation value is the current value or torque value associated with the collision event detected by either unit.
6. The robot control method according to claim 1, characterized in that, The robot control method further includes: When either the left-hand unit or the right-hand unit detects that the collision risk exceeds a preset warning value, the position tracking priority strategy in the overall cooperative control algorithm is switched to the observation value reduction priority strategy. Then, using the observation value reduction priority strategy in the overall cooperative control algorithm, based on the first target of the waist unit, the waist unit is controlled to reduce the observation value, wherein the observation value is the current value or torque value associated with the collision risk detected by either unit.
7. The robot control method according to claim 3, characterized in that, The robot control method further includes: When any one of the left-hand unit, right-hand unit, left-leg unit, or right-leg unit detects a collision event, the position tracking priority strategy in the overall cooperative control algorithm is switched to the observation reduction priority strategy. Then, using the observation reduction priority strategy in the overall cooperative control algorithm, the waist unit is controlled to reduce the observation value based on either the first target or the second target of the waist unit selected by the unit. The observation value is the current value or torque value associated with the collision event detected by the unit.
8. The robot control method according to claim 3, characterized in that, The robot control method further includes: When any one of the left-hand unit, right-hand unit, left-leg unit, or right-leg unit detects that the collision risk exceeds a preset warning value, the position tracking priority strategy in the overall cooperative control algorithm is switched to the observation value reduction priority strategy. Then, using the observation value reduction priority strategy in the overall cooperative control algorithm, the observation value is reduced based on the first target of the waist unit or the second target of the waist unit, where the observation value is the current value or torque value associated with the collision risk detected by any one of the units.
9. The robot control method according to claim 1, characterized in that, The overall cooperative control algorithm is based on the principle of inverse dynamics control, the geometric parameters of each limb of the robot, and the kinematic and dynamic control models of each limb of the robot.
10. The robot control method according to claim 1, characterized in that, The control of the left-hand unit is based on the target of the left-hand unit, and the control of the right-hand unit is based on the target of the right-hand unit.
11. The robot control method according to claim 1, characterized in that, The target of the left-hand unit defines the position, velocity, and torque of the joints in the left-hand joint assembly corresponding to the left-hand unit, and the target of the right-hand unit defines the position, velocity, and torque of the joints in the right-hand joint assembly corresponding to the right-hand unit.
12. The robot control method according to claim 1, characterized in that, Using the first update gradient as a first shared gradient among the left-hand joint assembly, the right-hand joint assembly, and the lumbar joint assembly, a first cooperative control mechanism is implemented among the left-hand unit, the right-hand unit, and the lumbar unit, including: A first weighting coefficient is set for the joints in the left hand joint combination and the joints in the right hand joint combination, and a second weighting coefficient is set for the joints in the waist joint combination, wherein the first weighting coefficient is higher than the second weighting coefficient; Using the first shared gradient, the states of the joints in the left hand joint combination and the joints in the right hand joint combination are updated synchronously according to the first weighting coefficient, and the states of the joints in the waist joint combination are updated according to the second weighting coefficient.
13. The robot control method according to claim 12, characterized in that, When the left-hand unit detects a collision event, the first weighting coefficient applicable to the joints in the left-hand joint assembly is increased; or, when the right-hand unit detects a collision event, the first weighting coefficient applicable to the joints in the right-hand joint assembly is increased.
14. The robot control method according to claim 3, characterized in that, The second collaborative control mechanism also includes a center of gravity imbalance judgment mechanism and a knee joint flexion control strategy. The knee joint flexion control strategy is used to control the flexion of the joints in the left leg joint assembly and the right leg joint assembly, so as to coordinate with the flexion control of the joints in the waist joint assembly, thereby maintaining the robot's center of gravity balance.
15. The robot control method according to claim 3, characterized in that, The left leg unit and the right leg unit each have a front-drive mode and a reverse-drive mode, and the second cooperative control mechanism is configured to switch according to the drive mode of the left leg unit and the right leg unit.
16. An electronic device, characterized in that, The electronic device includes a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the processor executes the computer program to implement the method according to any one of claims 1 to 15.
17. A computer-readable storage medium, characterized in that, The computer-readable storage medium stores computer instructions that, when executed on a computer device, cause the computer device to perform the method according to any one of claims 1 to 15.
Citation Information
Patent Citations
Robotic arm equipment, robotic arm control methods and programs
CN106061427B
Controlling method, device and system of robot
CN108247654A