Robot joint control method and system and humanoid robot

By comprehensively evaluating the joint motor position by evaluating the joint motor position, diagnosing the encoder health status, and switching to safety buffer control in case of failure, the safety control problem of humanoid robot joint motor encoder failure is solved, and the safety and reliability of the robot are improved.

CN120395870APending Publication Date: 2025-08-01WOLONG ELECTRIC GRP CO LTD +2
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202510703363.X
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-05-28
Publication Date
2025-08-01

AI Technical Summary

Technical Problem

In the prior art, when the encoder of the humanoid robot joint motor fails, it is difficult to maintain the balance of the joints, resulting in safety hazards. Especially for the leg and waist joints, the method of locking them immediately is not suitable.

Method used

By comprehensively utilizing sensor information such as accelerometer, gyroscope and visual signals, we estimate the position of the joint motor, and compare multiple position information for diagnosis, switch to the safety buffer control mode, adjust control parameters such as elastic coefficient and damping coefficient to maintain robot balance.

Benefits of technology

In the event of joint motor encoder failure, it can quickly switch to safety buffer control to avoid pouring caused by joint loss, which significantly improves the safety and reliability of humanoid robots.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120395870A_ABST
    Figure CN120395870A_ABST
Patent Text Reader

Abstract

The invention relates to a robot joint control method and system and a humanoid robot. The method comprises the following steps: estimating first rotation position information of a first joint motor based on acceleration and angular velocity information measured by a two-degree-of-freedom joint of a robot; second rotation position information of the first joint motor is calculated based on the robot visual signal; actual measurement motor rotation position information measured by a motor encoder of the first joint is obtained; the first rotation position information, the second rotation position information and the actually measured motor rotation position information are compared in pairs, and the health state of a motor encoder of the first joint is diagnosed; if it is diagnosed that the health state of the motor encoder of the first joint is abnormal, safety buffer control over the motor of the first joint is achieved through rotation position information of the first motor, and the safety control problem when the joint motor encoder of the humanoid robot breaks down is solved; the technical effect of remarkably improving the safety and reliability of the humanoid robot is achieved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the technical field of robot control, and particularly to a control method and system for a robot joint and a humanoid robot. Background Art

[0002] In the prior art, when a joint motor encoder fails, a humanoid robot may lose precise control of the joint. Especially for critical joints such as the legs and waist, this may cause the robot to lose balance and even fall, thus posing a safety hazard. Although some robot joints in the prior art are equipped with a locking mechanism, when a joint fails, the joint output torque is stopped and the locking mechanism is activated to lock the joint. This can effectively control the arm joints of a humanoid robot, but for the leg or waist joints of a humanoid robot, this immediate locking method is not applicable because these joints require a buffer state to maintain the balance of the robot until a relatively safe state is reached.

[0003] In view of the above problems, no effective solution has been proposed yet. Summary of the Invention

[0004] Embodiments of the present application provide a control method and system for a robot joint and a humanoid robot, so as to at least solve the problem of safety control when a joint motor encoder of a humanoid robot fails.

[0005] According to one aspect of the embodiments of the present application, a control method for a robot joint is provided. The robot joint has two orthogonal rotational degrees of freedom. The robot joint includes a first joint and a second joint, and the first joint drives the second joint to rotate by its own rotation. The control method includes: estimating the rotation angle of the second joint relative to the first joint based on the measured acceleration and angular velocity information of the robot joint to obtain the first rotation position information of the first joint motor; calculating the rotation angle of the second joint relative to the first joint based on the robot vision signal to obtain the second rotation position information of the first joint motor; obtaining the measured motor rotation position information measured by the motor encoder of the first joint; comparing the first rotation position information, the second rotation position information, and the measured motor rotation position information pairwise to diagnose the health state of the motor encoder of the first joint; if it is diagnosed that the health state of the motor encoder of the first joint is abnormal, then perform safety buffer control on the first joint motor using the first rotation position information.

[0006] Optionally, performing safety buffer control on the first joint motor using the first rotation position information includes: obtaining the position and speed required for controlling the first joint motor according to the first rotation position information; controlling the first joint motor according to the position and the speed, and reducing the control parameters of the first joint motor; wherein the control parameters include at least one of the following: elastic coefficient, damping coefficient.

[0007] Optionally, estimating the rotation angle of the second joint relative to the first joint based on the measured acceleration and angular velocity information of the robot joint to obtain the first rotation position information of the first joint motor includes: respectively calculating the pose information of the first joint and the pose information of the second joint based on the measured acceleration and angular velocity information of the robot joint; performing spatial angle comparison calculation according to the pose information of the first joint and the pose information of the second joint to obtain the pose change of the second joint relative to the first joint; estimating the rotation angle of the second joint relative to the first joint according to the pose change of the second joint relative to the first joint, and obtaining the first rotation position information of the first joint motor based on the rotation angle of the second joint relative to the first joint.

[0008] Optionally, the control method further includes: if it is diagnosed that the health state of the motor encoder of the first joint is normal, using the measured motor rotation position information to control the first joint motor.

[0009] According to another aspect of the embodiments of the present application, a control system for a robot joint is provided. The robot joint has two orthogonal rotational degrees of freedom. The robot joint includes a first joint and a second joint, and the first joint drives the second joint to rotate by its own rotation. The control system includes: a first position information acquisition module for estimating the rotation angle of the second joint relative to the first joint based on the measured acceleration and angular velocity information of the robot joint to obtain the first rotation position information of the first joint motor; a second position information acquisition module for calculating the rotation angle of the second joint relative to the first joint based on the robot vision signal to obtain the second rotation position information of the first joint motor; a third position information acquisition module for acquiring the measured motor rotation position information measured by the motor encoder of the first joint; a health state diagnosis module for comparing the first rotation position information, the second rotation position information, and the measured motor rotation position information pairwise to diagnose the health state of the motor encoder of the first joint; a first safety buffer control module for performing safety buffer control on the first joint motor using the first rotation position information if it is diagnosed that the health state of the motor encoder of the first joint is abnormal.

[0010] According to another aspect of the embodiments of the present application, a humanoid robot is provided, and the humanoid robot adopts the control system described above.

[0011] According to another aspect of the embodiments of the present application, an electronic device is provided, including: a processor, and a memory storing a program, the program including instructions that, when executed by the processor, cause the processor to execute the control method described above.

[0012] According to another aspect of the embodiments of the present application, a non-transitory machine-readable medium storing computer instructions is provided, and the computer instructions are used to cause the computer to execute the control method described above.

[0013] In the embodiments of the present application, by comprehensively utilizing the orthogonal motion characteristics of the double-degree-of-freedom joint and various sensor information such as accelerometers, gyroscopes, and visual signals, the position of the joint motor is estimated and diagnosed. Even in the case of a motor encoder failure, reliable motor position information can be provided. By comparing various motor position information for diagnosis, the health status of the motor encoder can be judged more accurately. When the joint motor encoder fails, it can quickly switch to the safety buffer control mode. By adjusting the control parameters, the dynamics of the joint are reduced, the balance of the robot is maintained, and safety hazards such as immediate tipping caused by joint runaway are avoided, thereby solving the safety control problem when the joint motor encoder of the humanoid robot fails, and achieving the technical effect of significantly improving the safety and reliability of the humanoid robot. BRIEF DESCRIPTION OF THE DRAWINGS

[0014] In order to more clearly illustrate the technical solutions in the embodiments of the present application or the prior art, the following will briefly introduce the drawings required for the description of the embodiments or the prior art. Obviously, the following drawings are only some embodiments of the present application, and those of ordinary skill in the art can obtain other embodiments according to these drawings without creative efforts.

[0015] Figure 1 Schematic structural diagram of the double-degree-of-freedom joint of the robot provided by the embodiments of the present application;

[0016] Figure 2 Flowchart of the control method for the robot joint provided by the embodiments of the present application;

[0017] Figure 3 Schematic diagram of the X-direction joint motor control provided by the alternative embodiments of the present application;

[0018] Figure 4 Schematic diagram of the encoder diagnosis provided by the alternative embodiments of the present application;

[0019] Figure 5 Schematic diagram of safety buffer control for a humanoid robot provided by an optional embodiment of the present application;

[0020] Figure 6 Schematic diagram of a control system for a robot joint provided by an embodiment of the present application;

[0021] Figure 7 Schematic diagram of the structure of an electronic device provided by an embodiment of the present application. Detailed implementation manners

[0022] Embodiments of the present application will be described in more detail below with reference to the accompanying drawings. Although some embodiments of the present application are shown in the drawings, it should be understood that the embodiments of the present application can be implemented in various forms and should not be construed as limited to the embodiments set forth herein. On the contrary, these embodiments are provided to more thoroughly and completely understand the embodiments of the present application. It should be understood that the drawings and embodiments of the present application are only for exemplary purposes and are not used to limit the protection scope of the present application.

[0023] Figure 1 Schematic diagram of the structure of a robot double-degree-of-freedom joint provided by an embodiment of the present application, as Figure 1 shown, the robot joint has two orthogonal rotational degrees of freedom (i.e., a double-degree-of-freedom joint). The robot joint includes a first joint and a second joint, and the first joint drives the second joint to rotate by its own rotation. The two joints in the X direction and the Y direction are mechanically connected perpendicular to each other at 90 degrees. The joint in the X direction (equivalent to the above-mentioned first joint) adopts a structure with two outputs at both ends of the intermediate shaft. At the same time, three-degree-of-freedom accelerometers and gyroscopes are built into the two joint drive control boards. The joint in the X direction is composed of an outer rotor motor, a reduction gear, and a hollow drive control board. The joint in the Y direction (equivalent to the above-mentioned second joint) does not have to be a hollow structure. The housing of the joint in the Y direction is mechanically connected to the output shaft of the joint in the X direction. In this way, the rotation of the output shaft of the joint in the X direction will drive the joint in the Y direction and the robot components connected to the joint in the Y direction to rotate around the output shaft of the joint in the X direction. At the same time, the self-rotation of the joint in the Y direction will also drive the robot components connected to the joint in the Y direction to rotate around the output shaft of the joint in the Y direction. This robot joint structure can be applied to the elbows, wrists, hips, knees, ankles, etc. of a humanoid robot. For example, when the robot joint is applied to the elbow, the joint in the X direction is connected to the upper arm, and the joint in the Y direction is connected to the forearm; when the robot joint is applied to the wrist, the joint in the Y direction is connected to the forearm, and the joint in the X direction is connected to the dexterous hand, etc.

[0024] According to one aspect of the embodiments of the present application, a control method for a robot joint is provided, which is applied to a humanoid robot. Figure 2 Flowchart of the control method for a robot joint provided by an embodiment of the present application, as Figure 2 shown, the method includes the following steps:

[0025] Step S202: Estimate the rotation angle of the second joint relative to the first joint based on the measured acceleration and angular velocity information of the robot joints to obtain the first rotation position information of the first joint motor; this step utilizes the signals of the accelerometer and gyroscope, and through methods such as spatial coordinate transformation and Kalman filtering, calculates the rotation angle of the second joint relative to the first joint, thereby estimating the rotation position of the first joint motor. This method does not rely on the direct measurement of the motor encoder and provides an independent way to estimate the motor position.

[0026] Step S204: Calculate the rotation angle of the second joint relative to the first joint based on the robot vision signal to obtain the second rotation position information of the first joint motor; the vision signal provides a way to observe the change of the joint position from the outside, further increasing the source of the motor position information and improving the accuracy and reliability of the position information.

[0027] Step S206: Obtain the measured motor rotation position information measured by the motor encoder of the first joint; this is a traditional method for detecting the motor position, directly obtaining the position information from the motor encoder.

[0028] Step S208: Compare the first rotation position information, the second rotation position information, and the measured motor rotation position information pairwise to diagnose the health status of the motor encoder of the first joint; by comparing three different motor position information, it can be detected whether the motor encoder fails, such as signal abnormality, exceeding the normal value range or loss, etc. The above-mentioned first rotation position information, second rotation position information, and measured motor rotation position information of the joint motor are all motor position information represented by rotation angles.

[0029] Optionally, the first rotation position information is estimated based on the measurement data of the accelerometer and gyroscope; the second rotation position information is calculated based on the robot vision signal; the measured motor rotation position information is directly obtained from the motor encoder. Compare the first rotation position information with the measured motor rotation position information, compare the second rotation position information with the measured motor rotation position information, and compare the first rotation position information with the second rotation position information. Set a reasonable threshold for judging whether the difference between the position information is within the normal range. If the difference between any two position information exceeds the threshold, the health status of the motor encoder is considered abnormal. If the differences between all position information are within the threshold range, the health status of the motor encoder is considered non-abnormal. By pairwise comparing three different motor position information, the health status of the motor encoder can be diagnosed more accurately. This method not only considers the measured value of the encoder itself but also combines the estimated values based on sensors and vision signals, improving the accuracy and reliability of the diagnosis.

[0030] Step S210, if the health status of the motor encoder of the first joint is diagnosed as abnormal, use the first rotational position information to perform safety buffer control on the first joint motor; the joint motor encoder is particularly important for robot joint control. In the prior art, the motor rotational position information can be observed by combining the motor current and voltage with the motor model. However, when the motor is at low speed or in position control (zero speed), the motor rotational position information estimated by the motor current and voltage is inaccurate. In the embodiment of the present application, the estimated first rotational position information is used to perform fault tolerance control on the humanoid robot joint, providing a safety buffer state when the humanoid robot joint fails. That is, when the motor encoder fails, it directly switches to the motor position information estimated based on the acceleration and angular velocity information, maintains the control of the joint, and reduces the dynamics of the joint movement by adjusting the joint control parameters (such as the damping coefficient and elastic coefficient) to keep the system running stably.

[0031] In the embodiment of the present application, by comprehensively using various sensor information such as accelerometers, gyroscopes, and visual signals, the position of the joint motor is estimated and diagnosed. Even in the case of a motor encoder failure, reliable motor position information can be provided. By comparing various motor position information for diagnosis, the health status of the motor encoder can be judged more accurately. When the joint motor encoder fails, it can quickly switch to the safety buffer control mode, reduce the dynamics of the joint by adjusting the control parameters, maintain the balance of the robot, and avoid safety hazards such as immediate tipping caused by joint out-of-control, thus solving the safety control problem when the position encoder of the humanoid robot joint motor fails, and achieving the technical effect of significantly improving the safety and reliability of the humanoid robot.

[0032] As an optional embodiment, using the first rotational position information to perform safety buffer control on the first joint motor includes: obtaining the position and speed required for controlling the first joint motor according to the first rotational position information; controlling the first joint motor according to the position and speed, and reducing the control parameters of the first joint motor; where the control parameters include at least one of the following: elastic coefficient, damping coefficient.

[0033] Optionally, according to the first rotational position information, calculate the position and speed required for controlling the first joint motor. Reduce the control parameters (such as the elastic coefficient and damping coefficient) of the first joint motor to reduce the dynamics of the joint movement and maintain the stable operation of the system. Control the first joint motor according to the calculated position and speed.

[0034] In the embodiment of the present application, by adjusting the control parameters (such as the elastic coefficient and damping coefficient), the dynamics of the joint movement are reduced, ensuring that when the motor encoder fails, the robot can enter a safety buffer state and avoid safety accidents caused by joint out-of-control, such as the robot tipping immediately.

[0035] As an alternative embodiment, the rotational angle of the second joint relative to the first joint is estimated based on the measured acceleration and angular velocity information of the robotic joint, and the first rotational position information of the first joint motor is obtained, including: calculating the pose information of the first joint and the pose information of the second joint respectively based on the measured acceleration and angular velocity information of the robotic joint; performing a spatial angle comparison calculation based on the pose information of the first joint and the pose information of the second joint to obtain the pose change of the second joint relative to the first joint; estimating the rotational angle of the second joint relative to the first joint according to the pose change of the second joint relative to the first joint, and obtaining the first rotational position information of the first joint motor based on the rotational angle of the second joint relative to the first joint.

[0036] Optionally, using the measurement data of the accelerometer and gyroscope, and through methods such as spatial coordinate transformation and Kalman filtering, the pose information (including yaw angle, pitch angle, and roll angle) of the first joint and the second joint are calculated respectively. By comparing the pose information of the first joint and the second joint, the pose change of the second joint relative to the first joint (i.e., relative yaw angle, relative pitch angle, and relative roll angle) is calculated. By analyzing the relative pose change, the rotational angle of the second joint relative to the first joint is estimated, and based on this rotational angle, the first rotational position information can be obtained for subsequent control and diagnosis.

[0037] In the embodiment of the present application, by calculating the pose information of the first joint and the second joint respectively based on the acceleration and angular velocity information measured by the accelerometer and gyroscope, and performing a spatial angle comparison calculation, the rotational angle of the second joint relative to the first joint can be estimated more accurately.

[0038] As an alternative embodiment, the above control method further includes: if the health status of the motor encoder of the first joint is diagnosed as normal, then the measured motor rotational position information is used to control the first joint motor.

[0039] Optionally, the first rotational position information, the second rotational position information, and the measured motor rotational position information are compared pairwise to diagnose the health status of the motor encoder of the first joint. If the diagnosis result shows that the health status of the motor encoder is normal, then the measured motor rotational position information is continued to be used for control. If the diagnosis result shows that the health status of the motor encoder is abnormal, then switch to the safety buffer control mode and use the first rotational position information for control. If the health status of the motor encoder of the first joint is diagnosed as normal, then the measured motor rotational position information is used to control the motor of the first joint. Using the measured motor rotational position information as control feedback to maintain the normal control process. Keep the joint control parameters (such as spring coefficient and damping coefficient) within the normal range to ensure the dynamic performance of the joint.

[0040] In an embodiment of the present application, when the health state of the motor encoder is normal, the measured motor rotation position information is continued to be used for control to ensure that the dynamic performance and control accuracy of the joint are not affected. This helps to maintain the efficient and precise operation of the robot during normal operation. This embodiment enables flexible adjustment of the control strategy in the face of different situations, being able to maintain high performance when the encoder is fault-free and switch to the safe buffer mode when the encoder fails, enhancing the flexibility and adaptability of the system.

[0041] The following takes a humanoid robot as an example to elaborate on the optional embodiments of the present application in detail.

[0042] When a double-degree-of-freedom joint is applied to, for example, the elbow of a humanoid robot, the joint in the X direction is connected to the upper arm, and the joint in the Y direction is connected to the lower arm. Figure 3 A schematic diagram of the control of the joint motor in the X direction provided for the optional embodiment of the present application is shown in Figure 3 As shown, the overall adopts the typical force-position control of the joint:

[0043] Torq ref = Torq ff + k p *(P des - P fbk ) + k d *(ω des - ω fbk )

[0044] Among them, P des represents the joint motor angle position command; P fbk represents the joint motor angle position feedback; ω des represents the joint motor angular velocity command; ω fbk represents the joint motor angular velocity feedback; Torq ff represents the joint motor feedforward torque; k p represents the elastic coefficient; k d represents the damping coefficient.

[0045] Different from the traditional control architecture, the control architecture of the optional embodiment of the present application adds the diagnosis and fault tolerance control of the joint motor rotation angle signal. It includes estimating the rotation angle of the joint in the Y direction relative to the joint in the X direction based on the measured acceleration and angular velocity information of the two joints, comparing this estimated angle with the angle position signal of the joint in the X direction itself for diagnosis, and outputting an alarm if it is abnormal. At the same time, if the position information signal of the joint in the X direction itself is lost, the estimated angle can be used as the position information to keep the humanoid robot running. By the same principle, the Y joint can also use the same method to improve the reliability of the system.

[0046] Using the signals from the accelerometer and gyroscope, the pose information (yaw, pitch, roll angles) of the position where the sensor is installed can be obtained by means of spatial coordinate transformation and Kalman filtering. Based on the pose information of the joint in the X direction and the pose information of the joint in the Y direction, through spatial angle comparison calculation (subtraction), the pose change of the joint in the Y direction relative to the joint in the X direction can be calculated, thereby obtaining the rotation angle of the joint in the Y direction relative to the joint in the X direction.

[0047] The drive control boards of the joint in the X direction and the joint in the Y direction are both provided with 3-axis accelerometers and gyroscopes. The signals measured by the accelerometers and gyroscopes are transmitted between the two joints through point-to-point communication. When the two-degree-of-freedom joint is applied to the elbow and knee of the humanoid robot, the above data fusion and diagnostic calculation are carried out in the joint in the X direction. When the two-degree-of-freedom joint is applied to the wrist and ankle of the humanoid robot, the above data fusion and diagnostic calculation are carried out in the joint in the Y direction.

[0048] The estimated value of the rotation angle of the joint motor in the X direction is compared with the angle measured by the encoder of the joint motor itself. At the same time, the motor angle position calculated by the robot vision signal (according to the movement of the corresponding part) is also added to the diagnostic comparison. Figure 4 The figure is a schematic diagram of encoder diagnosis provided by an alternative embodiment of the present application, as Figure 4 shown, the rotation angle of the joint in the Y direction relative to the joint in the X direction, that is, the estimated motor rotation position information, the motor rotation position information measured by the encoder of the joint motor in the X direction, and the motor rotation position information calculated based on the vision signal are compared pairwise to diagnose whether the encoder signal of the joint motor in the X direction itself is abnormal / exceeds the normal value range / is lost.

[0049] Figure 5 The figure is a schematic diagram of safety buffer control of the humanoid robot provided by an alternative embodiment of the present application, as Figure 5 shown, if it is found that the encoder signal of the joint motor in the X direction itself is abnormal, or exceeds the normal value range, or is lost, the estimated motor rotation position information is used for motor control (that is, the estimated motor rotation position information provides position feedback and speed feedback for joint control, and the humanoid robot enters a safety buffer state). At the same time, the damping coefficient and elastic coefficient of the joint control in the X direction are lowered to reduce the dynamic performance and keep the humanoid robot running stably.

[0050] In an alternative embodiment of the present application, based on the acceleration and angular velocity information measured by two orthogonal degrees of freedom joints of a humanoid robot, the rotation angle position of one of the degrees of freedom joints of the motor is estimated to implement joint position signal diagnosis and fault tolerance control, improving the reliability of the joints and the whole machine of the humanoid robot, and providing a safe buffer state for control when the joint motor encoder of the humanoid robot fails. This method can be applied to joint parts such as the elbows, wrists, hips, knees, and ankles of humanoid robots, improving the running safety of humanoid robots.

[0051] According to another aspect of the embodiments of the present application, a control system for a robot joint is provided. Figure 6 The following is a schematic diagram of the control system for a robot joint provided by the embodiments of the present application, as Figure 6 shown, the control system for the robot joint includes: a first position information acquisition module 602, a second position information acquisition module 604, a third position information acquisition module 606, a health status diagnosis module 608, and a first safety buffer control module 610. The following is a detailed description of the control system for the robot joint.

[0052] The first position information acquisition module 602 is configured to estimate the rotation angle of the second joint relative to the first joint based on the acceleration and angular velocity information measured by the robot joint, and obtain the first rotation position information of the first joint motor;

[0053] The second position information acquisition module 604 is configured to calculate the rotation angle of the second joint relative to the first joint based on the robot vision signal, and obtain the second rotation position information of the first joint motor;

[0054] The third position information acquisition module 606 is configured to obtain the measured motor rotation position information measured by the motor encoder of the first joint;

[0055] The health status diagnosis module 608 is configured to compare the first rotation position information, the second rotation position information, and the measured motor rotation position information pairwise to diagnose the health status of the motor encoder of the first joint;

[0056] The first safety buffer control module 610 is configured to, if it is diagnosed that the health status of the motor encoder of the first joint is abnormal, perform safety buffer control on the first joint motor using the first rotation position information.

[0057] In the embodiment of the present application, the control system estimates and diagnoses the position of the joint motor by comprehensively utilizing the orthogonal motion characteristics of the two-degree-of-freedom joint and various sensor information such as accelerometers, gyroscopes, and visual signals. Even in the case of a motor encoder failure, reliable motor position information can be provided. By comparing various motor position information for diagnosis, the health state of the motor encoder can be judged more accurately. When the joint motor encoder fails, it can quickly switch to the safety buffer control mode. By adjusting the control parameters, the dynamics of the joint can be reduced, the balance of the robot can be maintained, and safety hazards such as tipping caused by joint out-of-control can be avoided. Furthermore, the safety control problem when the joint motor encoder of the humanoid robot fails is solved, and the technical effect of significantly improving the safety and reliability of the humanoid robot is achieved.

[0058] It should be noted here that the above first position information acquisition module 602, second position information acquisition module 604, third position information acquisition module 606, health state diagnosis module 608, and first safety buffer control module 610 correspond to steps S102 to S110 in the method embodiment. The examples and application scenarios implemented by the above modules and the corresponding steps are the same, but are not limited to the content disclosed in the above method embodiment.

[0059] As an optional embodiment, the above first safety buffer control module 610 includes: an acquisition unit for acquiring the position and speed required for controlling the first joint motor according to the first rotational position information; a control unit for controlling the first joint motor according to the position and speed and reducing the control parameters of the first joint motor; wherein the control parameters include at least one of the following: spring coefficient, damping coefficient.

[0060] As an optional embodiment, the above first position information acquisition module 602 includes: a first calculation unit for respectively calculating the pose information of the first joint and the pose information of the second joint based on the acceleration and angular velocity information measured by the robot joint; a second calculation unit for performing a spatial angle comparison calculation according to the pose information of the first joint and the pose information of the second joint to obtain the pose change of the second joint relative to the first joint; a third calculation unit for estimating the rotation angle of the second joint relative to the first joint according to the pose change of the second joint relative to the first joint and obtaining the first rotational position information of the first joint motor based on the rotation angle of the second joint relative to the first joint.

[0061] As an optional embodiment, the above control system further includes: a second safety buffer control module for controlling the first joint motor using the measured motor rotational position information if it is diagnosed that the health state of the motor encoder of the first joint is normal.

[0062] According to another aspect of the embodiments of the present application, a humanoid robot is provided, which adopts the above-mentioned control system.

[0063] According to another aspect of the embodiments of the present application, an electronic device is provided, including: a processor, and a memory storing a program, where the program includes instructions that, when executed by the processor, cause the processor to execute the control method of the embodiments of the present application.

[0064] According to another aspect of the embodiments of the present application, a non-transitory machine-readable medium storing computer instructions is provided, where the computer instructions are used to cause a computer to execute the control method of the embodiments of the present application.

[0065] The embodiments of the present application further provide a computer program product, including a computer program, where the computer program, when executed by a processor of a computer, is used to cause the computer to execute the control method of the embodiments of the present application.

[0066] Reference Figure 7 , a block diagram of an electronic device that can be a server or a client according to the embodiments of the present application will now be described. It is an example of a hardware device that can be applied to various aspects of the present application. The electronic device is intended to represent various forms of digital electronic computer devices, such as, a laptop computer, a desktop computer, a workbench, a personal digital assistant, a server, a blade server, a mainframe computer, and other suitable computers. The electronic device can also represent various forms of mobile devices, such as, a personal digital processor, a cellular phone, a smart phone, a wearable device, and other similar computing devices. The components shown herein, their connections and relationships, and their functions are only examples and are not intended to limit the implementation of the present application described and / or claimed herein.

[0067] As Figure 7 shown, the electronic device includes a computing unit 701, which can execute various appropriate actions and processes according to a computer program stored in a read-only memory (ROM) 702 or a computer program loaded from a storage unit 708 into a random access memory (RAM) 703. In the RAM 703, various programs and data required for the operation of the electronic device can also be stored. The computing unit 701, the ROM 702, and the RAM 703 are connected to each other through a bus 704. An input / output (I / O) interface 705 is also connected to the bus 704.

[0068] Multiple components in the electronic device are connected to the I / O interface 705, including: an input unit 706, an output unit 707, a storage unit 708, and a communication unit 709. The input unit 706 can be any type of device capable of inputting information into the electronic device. The input unit 706 can receive input digital or character information and generate key signal inputs related to the user settings and / or function controls of the electronic device. The output unit 707 can be any type of device capable of presenting information and can include, but is not limited to, a display, a speaker, a video / audio output terminal, a vibrator, and / or a printer. The storage unit 708 can include, but is not limited to, magnetic disks and optical discs. The communication unit 709 allows the electronic device to exchange information / data with other devices via a computer network such as the Internet and / or various telecommunication networks and can include, but is not limited to, a modem, a network card, an infrared communication device, and a wireless communication transceiver, such as a Bluetooth device, a WiFi device, a WiMax device, a cellular communication device, and / or the like.

[0069] The computing unit 701 can be various general-purpose and / or special-purpose processing components with processing and computing capabilities. Some examples of the computing unit 701 include, but are not limited to, a CPU, a graphics processing unit (GPU), various dedicated artificial intelligence (AI) computing units, various computing units running machine learning model algorithms, a digital signal processor (DSP), and any suitable processor, controller, microcontroller, etc. The computing unit 701 executes the various methods and processes described above. For example, in some embodiments, the method embodiments of the present application can be implemented as a computer program tangibly embodied in a machine-readable medium, such as the storage unit 708. In some embodiments, part or all of the computer program can be loaded and / or installed onto the electronic device via the ROM

[0070] 702 and / or the communication unit 709. In some embodiments, the computing unit 701 can be configured to execute the above-described methods in any other suitable manner (e.g., by means of firmware).

[0071] The computer program for implementing the method of the embodiments of the present application can be written in any combination of one or more programming languages. These computer programs can be provided to a processor or controller of a general-purpose computer, a special-purpose computer, or other programmable data processing device, such that when the computer program is executed by the processor or controller, the functions / operations specified in the flowchart and / or block diagram are implemented. The computer program can be executed entirely on the machine, partially on the machine, executed partially on the machine and partially on a remote machine as an independent software package, or executed entirely on a remote machine or server.

[0072] In the context of the embodiments of the present application, a machine-readable medium may be a tangible medium that can contain or store a program for use by or in connection with an instruction execution system, apparatus, or device. The machine-readable medium may be a machine-readable signal medium or a machine-readable storage medium. The machine-readable signal medium may include, but is not limited to, electrical, magnetic, optical, electromagnetic, infrared, systems, apparatus, or devices, or any suitable combination of the foregoing. More specific examples of the machine-readable storage medium would include electrical connections based on one or more wires, portable computer disks, hard disks, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), optical fiber, portable compact disk read-only memory (CD-ROM), optical storage devices, magnetic storage devices, or any suitable combination of the foregoing.

[0073] It should be noted that the term "including" and its variations used in the embodiments of the present application are open-ended, that is, "including but not limited to". The term "based on" means "at least partially based on". The term "one embodiment" means "at least one embodiment"; the term "another embodiment" means "at least one additional embodiment"; the term "some embodiments" means "at least some embodiments". The modifications of "one" and "a plurality" mentioned in the embodiments of the present application are illustrative rather than restrictive. Those skilled in the art should understand that, unless clearly stated otherwise in the context, it should be understood as "one or more".

[0074] The various steps described in the method embodiments provided by the embodiments of the present application may be executed in different orders and / or in parallel. In addition, the method embodiments may include additional steps and / or omit the steps shown. The scope of protection of the present application is not limited in this regard.

[0075] The term "embodiment" in this specification means that the specific features, structures, or characteristics described in connection with the embodiment may be included in at least one embodiment of the present application. The phrase may appear in various positions in the specification and does not necessarily mean the same embodiment, nor does it mean being independent or alternative to other embodiments and mutually exclusive thereto. The various embodiments in this specification are described in a related manner, and the same or similar parts among the various embodiments are referred to each other. In particular, for the device, apparatus, and system embodiments, since they are basically similar to the method embodiments, the description is relatively simple, and the relevant parts refer to the partial description of the method embodiments.

[0076] The above-described embodiments merely represent several implementation manners of the present application. The description thereof is relatively specific and detailed, but it should not be construed as a limitation on the scope of patent protection. It should be noted that for those of ordinary skill in the art, without departing from the concept of the present application, several modifications and improvements can still be made, and these all fall within the protection scope of the present application. Therefore, the protection scope of the present application shall be subject to the appended claims.

Claims

1. A control method for a robot joint, characterized in that, The robot joint has two orthogonal rotational degrees of freedom. The robot joint includes a first joint and a second joint, and the first joint drives the second joint to rotate by its own rotation. The control method includes: Estimating the rotation angle of the second joint relative to the first joint based on the measured acceleration and angular velocity information of the robot joint to obtain the first rotation position information of the first joint motor; Calculating the rotation angle of the second joint relative to the first joint based on the robot vision signal to obtain the second rotation position information of the first joint motor; Obtaining the measured motor rotation position information measured by the motor encoder of the first joint; Comparing the first rotation position information, the second rotation position information, and the measured motor rotation position information pairwise to diagnose the health state of the motor encoder of the first joint; If it is diagnosed that the health state of the motor encoder of the first joint is abnormal, the first rotation position information is used to perform safety buffer control on the first joint motor.

2. The control method according to claim 1, wherein Using the first rotation position information to perform safety buffer control on the first joint motor includes: Obtaining the position and speed required for controlling the first joint motor according to the first rotation position information; Controlling the first joint motor according to the position and the speed, and reducing the control parameters of the first joint motor; wherein, the control parameters include at least one of the following: elastic coefficient, damping coefficient.

3. The control method according to claim 1, characterized in that, Estimating the rotation angle of the second joint relative to the first joint based on the measured acceleration and angular velocity information of the robot joint to obtain the first rotation position information of the first joint motor, including: Calculating the pose information of the first joint and the pose information of the second joint respectively based on the measured acceleration and angular velocity information of the robot joint; Performing spatial angle comparison calculation according to the pose information of the first joint and the pose information of the second joint to obtain the pose change of the second joint relative to the first joint; Estimating the rotation angle of the second joint relative to the first joint according to the pose change of the second joint relative to the first joint, and obtaining the first rotation position information of the first joint motor based on the rotation angle of the second joint relative to the first joint.

4. The control method according to any one of claims 1 to 3, characterized in that The control method further includes: If it is diagnosed that the health state of the motor encoder of the first joint is normal, the measured motor rotation position information is used to control the first joint motor.

5. A control system for a robot joint, characterized in that, The robot joint has two orthogonal rotational degrees of freedom. The robot joint includes a first joint and a second joint, and the first joint drives the second joint to rotate by its own rotation. The control system includes: A first position information acquisition module, configured to estimate the rotation angle of the second joint relative to the first joint based on the measured acceleration and angular velocity information of the robot joint to obtain the first rotation position information of the first joint motor; The second position information acquisition module is configured to calculate the rotation angle of the second joint relative to the first joint based on the robot vision signal, so as to obtain the second rotation position information of the first joint motor; The third position information acquisition module is configured to acquire the measured motor rotation position information measured by the motor encoder of the first joint; The health state diagnosis module is configured to compare the first rotation position information, the second rotation position information, and the measured motor rotation position information pairwise, and diagnose the health state of the motor encoder of the first joint; The first safety buffer control module is configured to, if it is diagnosed that the health state of the motor encoder of the first joint is abnormal, perform safety buffer control on the first joint motor using the first rotation position information.

6. A humanoid robot, characterized in that, The humanoid robot adopts the control system described in claim 5.

7. An electronic device, comprising: A processor and a memory storing a program, wherein the program includes instructions that, when executed by the processor, cause the processor to execute the control method described in any one of claims 1 to 4.

8. A non-transitory machine-readable medium storing computer instructions, characterized in that, The computer instructions are used to cause the computer to execute the control method described in any one of claims 1 to 4.