Robot joint control method and device and robot

By acquiring robot motion state data and utilizing a joint torque prediction model, the problem of inaccurate robot joint control in existing technologies is solved, achieving efficient and accurate joint motion control in complex environments.

CN122008234APending Publication Date: 2026-05-12CHONGQING PHOENIX TECHNOLOGY CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
CHONGQING PHOENIX TECHNOLOGY CO LTD
Filing Date
2026-03-27
Publication Date
2026-05-12

AI Technical Summary

Technical Problem

In existing technologies, control methods based on robot dynamics models cannot accurately obtain robot joint control strategies, resulting in the inability to achieve accurate control of robot joint motion, especially in complex, unstructured dynamic environments.

Method used

By acquiring the robot's current motion state data and using a trained joint torque prediction model, the joint torque of the target joint at the next moment can be determined based on the hybrid joint mechanics transformation relationship, without relying on the robot's dynamics model, thereby controlling the robot's joint movement.

Benefits of technology

It enables relatively accurate control of robot joint movement without relying on robot dynamics models, improving motion stability and efficiency in complex environments.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN122008234A_ABST
    Figure CN122008234A_ABST
Patent Text Reader

Abstract

The invention relates to a robot joint control method and device and a robot. The method comprises the following steps: acquiring motion state data of the robot at the current moment; according to the motion state data, the joint torque of a target joint in the robot at the next moment is determined; and controlling the target joint to move according to the joint torque. By adopting the method, the joint movement of the robot can be accurately controlled.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of robot control technology, and in particular to a robot joint control method, device and robot. Background Technology

[0002] With the development of technology in the field of robotics, controlling humanoid robots to move stably, efficiently, and in anthropomorphically in complex, unstructured dynamic environments is one of the challenges in the field of robotics.

[0003] Related technologies typically control humanoid robot motion based on robot dynamics models and predefined motion trajectories. However, these solutions heavily rely on the accuracy of the robot dynamics model. Humanoid robots are highly nonlinear, strongly coupled systems with various contact dynamics, making it difficult to obtain a completely accurate model. Therefore, these solutions cannot accurately determine the robot's joint control strategy, thus failing to achieve precise control over the robot's joint movements. Summary of the Invention

[0004] Based on this, this application addresses the aforementioned technical problems by providing a robot joint control method, device, and robot capable of accurately controlling robot joint movement.

[0005] In a first aspect, this application provides a robot joint control method, including:

[0006] Acquire the robot's motion state data at the current moment;

[0007] Based on motion state data, determine the joint torque of the target joint in the robot at the next moment; the target joint includes the target linear joint and the target rotary joint; when the target joint is the target linear joint, the joint torque includes the linear joint torque; when the target joint is the target rotary joint, the joint torque includes the rotary joint torque.

[0008] The movement of the target joint is controlled based on the joint torque.

[0009] The above-mentioned robot joint control method can determine the linear joint torque of the target linear joint and the rotational joint torque of the target rotary joint in the next moment based on the robot's motion state data at the current moment. Then, based on the linear joint torque and the rotational joint torque, the robot's target joint motion is controlled. The above process does not rely on the robot dynamics model and can obtain relatively accurate linear joint torque and rotational joint torque, thereby enabling relatively accurate control of robot joint motion.

[0010] In one embodiment, determining the joint torque of a target joint in the robot at the next moment based on motion state data includes: determining the joint torque of a target joint in the robot at the next moment based on a trained joint torque prediction model and motion state data; the output layer of the joint torque prediction model is embedded with the hybrid joint mechanics transformation relationship corresponding to the target joint.

[0011] In this embodiment, based on the joint torque prediction model embedded with the hybrid joint mechanical transformation relationship corresponding to the target joint, the joint torque of the target joint in the robot at the next moment can be determined more accurately, laying the foundation for more accurate control of the robot joint movement in the future.

[0012] In one embodiment, determining the joint torque of a target joint in the robot at the next moment based on motion state data includes: determining the expected push rod length of the target push rod corresponding to the target linear joint at the next moment based on motion state data; determining the push rod thrust of the target push rod based on the expected push rod length; and determining the linear joint torque of the target linear joint at the next moment based on the push rod thrust.

[0013] In this embodiment, based on motion state data, the expected push rod length of the target push rod corresponding to the target linear joint at the next moment is determined. Based on the expected push rod length, the push rod force of the target push rod is determined. Based on the push rod force, the linear joint torque of the target linear joint at the next moment is determined. That is, the joint torque prediction model outputs the linear joint torque of the target linear joint in the robot at the next moment based on the hybrid joint mechanics transformation relationship corresponding to the target joint. The above process can obtain the linear joint torque of the target linear joint at the next moment relatively accurately without relying on the robot dynamics model, thereby laying the foundation for accurate control of the target linear joint motion in the robot.

[0014] In one embodiment, determining the pusher force of the target pusher based on the desired pusher length includes: obtaining the current pusher length and pusher extension / retraction speed of the target pusher at the current moment; and determining the pusher force of the target pusher based on the current pusher length, the desired pusher length, and the pusher extension / retraction speed.

[0015] In this embodiment, based on the current push rod length, the desired push rod length, and the push rod extension / retraction speed of the target push rod at the current moment, the push rod thrust can be determined relatively accurately. This allows for the accurate determination of the linear joint torque of the target linear joint at the next moment, laying the foundation for more accurate control of the robot joint movement in the future.

[0016] In one embodiment, determining the pusher force of the target pusher based on the current pusher length, the desired pusher length, and the pusher extension / retraction speed of the target pusher at the current moment includes: determining the pusher stroke increment of the target pusher based on the current pusher length and the desired pusher length; and determining the pusher force of the target pusher based on the pusher stroke increment and the pusher extension / retraction speed of the target pusher at the current moment.

[0017] In this embodiment, the push rod stroke increment can characterize the push rod change of the target linear joint. Based on the push rod change and the push rod extension / retraction speed of the target push rod at the current moment, the push rod thrust of the target push rod can be determined more accurately, which can lay the foundation for accurately determining the linear joint torque of the target linear joint at the next moment.

[0018] In one embodiment, the motion state data includes the change in joint angle of each rotary joint connected to the target linear joint in the robot at the current moment; determining the linear joint torque of the target linear joint at the next moment based on the push rod thrust includes: determining the linear joint torque of the target linear joint at the next moment based on the change in joint angle and the push rod thrust.

[0019] In this embodiment, based on the change in joint angle and the push rod force, the linear joint torque of the target linear joint at the next moment can be determined relatively accurately, thus laying the foundation for accurate control of robot joint movement.

[0020] In one embodiment, determining the expected push rod length of the target push rod corresponding to the target linear joint at the next moment based on motion state data includes: determining the pose data of the target linear joint at the next moment based on motion state data; and determining the expected push rod length of the target push rod corresponding to the target linear joint at the next moment based on pose data.

[0021] In this embodiment, based on the pose data of the target linear joint at the next moment, the expected push rod length of the target push rod at the next moment can be determined more accurately, thus laying the foundation for the subsequent accurate determination of the linear joint torque.

[0022] In one embodiment, determining the joint torque of the target joint at the next moment based on motion state data includes: determining the desired joint angle of the target rotary joint at the next moment based on motion state data; obtaining the current joint angle of the target rotary joint at the current moment; and determining the rotary joint torque of the target rotary joint at the next moment based on the current joint angle and the desired joint angle.

[0023] In this embodiment, based on the current joint angle and the desired joint angle, the rotational joint torque of the target rotational joint at the next moment can be determined relatively accurately without relying on the robot dynamics model, thus enabling accurate control of the target rotational joint in the robot in the future.

[0024] In one embodiment, determining the rotational joint torque of the target rotational joint at the next moment based on the current joint angle and the desired joint angle includes: determining the joint angle increment of the target rotational joint based on the current joint angle and the desired joint angle; and determining the rotational joint torque of the target rotational joint at the next moment based on the joint angle increment and the joint rotational angular velocity of the target rotational joint at the current moment.

[0025] In this embodiment, based on the joint angle increment and the joint rotation angular velocity of the target rotary joint at the current moment, the rotational joint torque of the target rotary joint at the next moment can be accurately determined, thereby laying the foundation for accurate control of the target rotary joint motion in the robot.

[0026] In one embodiment, the joint torque prediction model is obtained through iterative training via the following steps: In each iteration, the first sample motion state data of the sample robot in the previous iteration is acquired; based on the first sample motion state data, the sample joint torque of the sample joint in the current iteration is determined; based on the sample joint torque, the motion of the sample joint is controlled to generate the second sample motion state data for the current iteration; based on the second sample motion state data, the sample joint torque for the current iteration is evaluated to obtain the sample evaluation result; based on the sample evaluation result, the model parameters of the joint torque prediction model are adjusted; wherein, the sample motion state data of the first iteration is generated by motion control of the sample robot based on the preset joint torque; the sample evaluation result of the first iteration is obtained by evaluating the preset joint torque.

[0027] In this embodiment, the process of training the joint torque prediction model based on the reinforcement learning algorithm enables the joint torque prediction model to accurately predict the joint torque of the target joint based on motion state data. This improves prediction efficiency and model robustness. Compared with the technical solution of controlling humanoid robot motion based on robot dynamics model and predefined motion trajectory, the accuracy of robot joint motion control is higher.

[0028] In one embodiment, the sample motion state data includes at least one of the following: the actual pitch angle of the sample base in the sample robot, the actual roll angle of the sample base, the actual motion speed of the sample base, the actual motion amplitude of each sample joint, the actual motion rate of change of each sample joint, and the ground contact state of each sample foot of the sample robot. Based on the second sample motion state data, the sample joint torque in this iteration process is evaluated to obtain a sample evaluation result, including: determining the base attitude stability evaluation result based on the deviation between the actual pitch angle and the target pitch angle of the sample base, and / or, based on the deviation between the actual roll angle and the target roll angle of the sample base; based on the sample... The deviation between the actual movement speed of the base and the target movement speed is used to determine the speed tracking evaluation result; the deviation between the actual movement amplitude of each sample joint and the target movement amplitude range is used to determine the joint constraint evaluation result; the deviation between the actual movement rate of each sample joint and the target movement rate range is used to determine the motion smoothness evaluation result; the matching relationship between the ground contact state of each sample foot and the target gait phase is used to determine the foot contact stability evaluation result; and the sample evaluation result is determined based on at least one of the base posture stability evaluation result, speed tracking evaluation result, joint constraint evaluation result, motion smoothness evaluation result, and foot contact stability evaluation result.

[0029] In this embodiment, the sample evaluation results determined based on at least one of the base posture stability evaluation results, velocity tracking evaluation results, joint constraint evaluation results, motion smoothness evaluation results, and foot contact stability evaluation results can make the trained joint torque prediction model have good robustness in terms of base posture stability, velocity tracking, joint constraint, motion smoothness, and foot contact stability.

[0030] Secondly, this application also provides a robot joint control device, comprising:

[0031] The acquisition module is used to acquire the robot's motion state data at the current moment;

[0032] The determination module is used to determine the joint torque of a target joint in the robot at the next moment based on motion state data; the target joint includes a target linear joint and a target rotary joint; when the target joint is a target linear joint, the joint torque includes the linear joint torque; when the target joint is a target rotary joint, the joint torque includes the rotary joint torque.

[0033] The control module is used to control the movement of the target joint based on the joint torque.

[0034] Thirdly, this application also provides a robot, including a memory and a processor, wherein the memory stores a computer program, and the processor executes the computer program to implement the steps of the method described above.

[0035] Fourthly, this application also provides a computer-readable storage medium having a computer program stored thereon, which, when executed by a processor, implements the steps of the method described above.

[0036] Fifthly, this application also provides a computer program product, including a computer program that, when executed by a processor, implements the steps of the method described in any of the above aspects.

[0037] Regarding the beneficial effects of any of the technical solutions in the second to fifth aspects mentioned above, refer to the beneficial effects of the corresponding technical solutions in the first aspect; repeated examples will not be listed here. Attached Figure Description

[0038] To more clearly illustrate the technical solutions in the embodiments of this application or related technologies, the drawings used in the description of the embodiments of this application or related technologies will be briefly introduced below. Obviously, the drawings described below are some embodiments of this application. For those skilled in the art, other related drawings can be obtained based on these drawings without creative effort.

[0039] Figure 1 This is a schematic diagram of an optional flowchart of a robot joint control method in one embodiment;

[0040] Figure 2 This is a schematic diagram of an optional process for determining the joint torque in one embodiment;

[0041] Figure 3 This is an optional flowchart illustrating the steps for determining the joint torque in another embodiment;

[0042] Figure 4 This is a schematic diagram of an optional flowchart for a joint torque prediction model training method in one embodiment;

[0043] Figure 5 This is a schematic diagram of an optional flowchart for training a joint torque prediction model in another embodiment;

[0044] Figure 6 This is a schematic diagram of an alternative flow of a robot joint control method in another embodiment;

[0045] Figure 7 This is a schematic diagram of an optional structure of a robot joint control device in one embodiment;

[0046] Figure 8 This is a schematic diagram of an optional internal structure of the robot in one embodiment. Detailed Implementation

[0047] To make the objectives, technical solutions, and advantages of this application clearer, the following detailed description is provided in conjunction with the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are for illustrative purposes only and are not intended to limit the scope of this application.

[0048] The terms "comprising" and "having," and any variations thereof, as used in this application, are intended to cover non-exclusive inclusion. The term "multiple" as used in this application refers to two or more. The term "and / or" as used in this application refers to one of the embodiments, or any combination of multiple embodiments.

[0049] In one exemplary embodiment, such as Figure 1 As shown, a robot joint control method is provided, including the following steps:

[0050] S110: Obtain the robot's motion state data at the current moment.

[0051] Among them, motion state data can be understood as the state data generated by controlling the robot's motion.

[0052] In some embodiments, motion state data may include at least one of the following: the actual pitch angle of the base in the robot, the actual roll angle of the base, the actual motion speed of the base, the actual motion amplitude of each joint, the actual motion rate of each joint, the ground contact state of each foot in the robot, and the change in joint angle of each rotary joint in the robot connected to the target linear joint at the current moment.

[0053] In a base coordinate system with the center of the robot's torso as the origin, the forward and backward direction as the X-axis, the left and right direction as the Y-axis, and the up and down direction as the Z-axis, the actual pitch angle of the base can be understood as the rotation angle around the robot's left and right direction (Y-axis), that is, the actual angle of the robot's torso tilting forward and backward; the actual roll angle of the base can be understood as the rotation angle around the robot's forward and backward direction (X-axis), that is, the actual angle of the robot's torso tilting left and right; the actual motion speed of the base can be understood as the actual forward speed of the robot's torso.

[0054] The joints in a robot can include linear joints and rotary joints. A linear joint can be understood as a mechanical structure where two connected components move linearly in one direction (such as the X-axis, Y-axis, or Z-axis); a rotary joint can be understood as a mechanical structure where two connected components can rotate around an axis. The actual range of motion of each joint can include at least one of the actual travel of a linear joint and the actual rotation angle of a rotary joint; the actual rate of change of motion of each joint can include the increment of travel of a linear joint between two adjacent moments and the change of rotation angle of a rotary joint between two adjacent moments; the ground contact state of each foot can be understood as the state in which each foot is in contact with the ground or suspended in the air; each foot can include at least one of a left foot and a right foot.

[0055] In some embodiments, at least one of the above-mentioned motion state data can be acquired by sensors. For example, the actual pitch angle and actual roll angle of the robot's base can be acquired by an inertial measurement unit (IMU); the actual motion speed of the base can be acquired by a velocity IMU; the rotation angle of each rotary joint in the robot can be acquired by an encoder (such as an absolute or variable encoder), and the motion amplitude or motion rate of change can be determined based on the rotation angle of the rotary joint; the travel of each linear joint in the robot can be acquired by a displacement sensor or a linear encoder (such as an absolute or variable encoder), and the motion amplitude or motion rate of change can be determined based on the travel of the linear joint; the ground contact state of each foot in the robot can be determined by a ground contact mask feedback signal.

[0056] S120, based on the operating status data, determines the joint torque of the target joint in the robot at the next moment.

[0057] The target joints include target linear joints and target rotary joints.

[0058] In some embodiments, the target joint may include a robot lower limb joint. Target linear joints in the robot lower limb joint may include the knee joint, ankle joint, etc.; target rotary joints in the robot lower limb joint may include the hip joint, etc. In some embodiments, the target joint may also include other joints in the robot, such as upper limb joints. Target linear joints in the robot lower limb joint may include the elbow joint, wrist joint, etc.; target rotary joints in the robot lower limb joint may include the shoulder joint, etc.

[0059] Joint torque can be represented as the product of the thrust of the push rod corresponding to the target joint and the stress arm. By applying a thrust on the joint axis, the target joint can be driven to move.

[0060] When the target joint is a target linear joint, the joint torque includes linear joint torque; when the target joint is a target rotary joint, the joint torque includes rotary joint torque.

[0061] In some embodiments, the linear joint torque of the target linear joint in the robot and the rotary joint torque of the target rotary joint in the robot at the next moment can be determined based on the operating status data.

[0062] S130 controls the movement of the target joint based on the joint torque.

[0063] In some embodiments, a first control command for controlling the target linear joint can be determined based on the linear joint matrix corresponding to the target linear joint, and then the movement of the target linear joint can be controlled according to the first control command.

[0064] In some embodiments, a second control command for controlling the target rotary joint can be determined based on the rotary joint matrix corresponding to the target rotary joint, and the movement of the target rotary joint can be controlled according to the second control command.

[0065] In the above-mentioned robot joint control method, based on the robot's motion state data at the current moment, the linear joint torque of the target linear joint and the rotational joint torque of the target rotary joint at the next moment can be determined, thereby controlling the movement of the target joint. The above process does not rely on the robot dynamics model and can obtain relatively accurate linear joint torque and rotational joint torque, thus enabling relatively accurate control of robot joint movement.

[0066] Based on the technical solutions of the above embodiments, this application also provides another optional embodiment. In this optional embodiment, the joint torque of the target joint in the robot at the next moment can be determined based on the trained joint torque prediction model and motion state data. The output layer of the joint torque prediction model embeds the hybrid joint mechanics transformation relationship corresponding to the target joint.

[0067] In some embodiments, when the target joint is a target linear joint, the hybrid joint mechanics conversion relationship can be understood as follows: based on the motion state data, after obtaining the expected push rod length of the target push rod corresponding to the target linear joint at the next moment, the push rod thrust of the target push rod is obtained based on the expected push rod length of the target push rod corresponding to the target linear joint at the next moment, and the linear joint torque conversion relationship of the target linear joint at the next moment is obtained based on the push rod thrust of the target push rod.

[0068] In some embodiments, when the target joint is a target rotary joint, the hybrid joint mechanics conversion relationship can be understood as obtaining the desired joint angle of the target rotary joint at the next moment based on motion state data, and obtaining the conversion relationship of the rotary joint torque of the target rotary joint at the next moment based on the current joint angle and the desired joint angle.

[0069] In some embodiments, the motion state data at the current moment is input into a trained joint torque prediction model. The joint torque prediction model can determine the expected push rod length of the target push rod corresponding to the target linear joint at the next moment based on the motion state data. Then, based on the current push rod length and the expected push rod length, it determines the push rod stroke increment of the target push rod. Then, based on the push rod stroke increment and the push rod extension / retraction speed of the target push rod at the current moment, it determines the push rod thrust of the target push rod. Finally, based on the joint angle change of each joint in the robot at the current moment and the push rod thrust, it determines the linear joint torque of the target linear joint at the next moment. Additionally, the joint torque prediction model can determine the expected joint angle of the target rotary joint at the next moment based on the motion state data; determine the joint angle increment of the target rotary joint based on the current joint angle and the expected joint angle; and determine the rotary joint torque of the target rotary joint at the next moment based on the joint angle increment and the joint rotational angular velocity of the target rotary joint at the current moment.

[0070] The training process of the joint torque prediction model will be described later.

[0071] Based on the technical solutions of the above embodiments, this application also provides another optional embodiment, in which the steps for determining the joint torque are refined.

[0072] See Figure 2 The steps for determining the joint torque shown include:

[0073] S210, based on the motion state data, determine the expected push rod length of the target push rod corresponding to the target linear joint at the next moment.

[0074] The desired push rod length can be understood as the desired length of the target push rod. The target push rod is used to apply thrust to the target linear joint by changing its stroke.

[0075] In some embodiments, the pose data of the target linear joint at the next moment is determined based on the motion state data; and the expected push rod length of the target push rod corresponding to the target linear joint at the next moment is determined based on the pose data.

[0076] Pose data can be understood as position and orientation data.

[0077] In some embodiments, the pose data of the target linear joint at the next moment can be determined based on the motion state data and the pose data of the target linear joint at the current moment. In some embodiments, the expected push rod length of the target linear joint at the next moment can be determined based on the pose data and the geometric relationship between the robot joint pose and the push rod length.

[0078] In the above embodiments, based on the pose data of the target linear joint at the next moment, the expected push rod length of the target push rod at the next moment can be determined more accurately, thereby laying the foundation for the subsequent accurate determination of the linear joint torque.

[0079] S220, determine the pusher force of the target pusher based on the desired pusher length.

[0080] In some embodiments, the current push rod length and push rod extension / retraction speed of the target push rod at the current moment can be obtained, and the push rod thrust of the target push rod can be determined based on the current push rod length, the desired push rod length, and the push rod extension / retraction speed.

[0081] In some embodiments, the current push rod length at the current moment can be obtained using a sensor. For example, a linear encoder or a displacement sensor can be used to obtain the current push rod length.

[0082] In some embodiments, the extension and retraction speed of the push rod can be obtained by a speed sensor.

[0083] In some embodiments, the push rod stroke increment of the target push rod can be determined based on the current push rod length and the desired push rod length; the push rod thrust of the target push rod can be determined based on the push rod stroke increment and the push rod extension / retraction speed of the target push rod at the current moment.

[0084] In this context, the putter stroke increment can be understood as the change in the target putter's stroke. The putter stroke increment can be determined based on the difference between the desired putter length and the current putter length. The putter stroke increment can include both the value and direction of the change in putter stroke. For example, a positive putter stroke increment indicates an increase in the target putter's stroke; a positive putter stroke increment also indicates a decrease in the target putter's stroke.

[0085] In some embodiments, the push rod thrust can be determined by the following formula:

[0086] F = Kp × (L_des - L_current) - Kd × v

[0087] Where F represents the push rod thrust of the target push rod, with the dimension Newton (N); Kp represents the position proportionality coefficient, with a value range of [500, 2000], with the dimension Newton / meter (N / m), which can be adjusted according to the structural stiffness of the target linear joint; Kd represents the velocity damping coefficient, with a value range of [10, 50], with the dimension Newton. seconds per meter (N) L_des represents the desired push rod length in meters (m); L_current represents the current push rod length in meters (m); and v represents the push rod extension / retraction speed in meters per second (m / s).

[0088] S230, based on the push rod thrust, determines the linear joint torque of the target linear joint at the next moment.

[0089] In some embodiments, motion state data may include the changes in joint angles of each rotary joint connected to the target linear joint in the robot at the current moment. Based on the changes in joint angles and the push rod thrust, the linear joint torque of the target linear joint at the next moment is determined.

[0090] The change in joint angle can be understood as the difference between the angle of the rotary joint at the current moment and the angle of the rotary joint at the previous moment.

[0091] In some embodiments, the linear joint torque can be determined by the following formula:

[0092] τ=JT(θ)×F

[0093] Where τ represents the linear joint torque of the target linear joint at the next moment, with dimensions in Newtons. Rice (N) m); JT(θ) represents the transpose of the Jacobian matrix determined based on the change in joint angle, with the dimension of meters (m); F represents the pusher force of the target pusher, with the dimension of newtons (N).

[0094] In this embodiment, based on the hybrid joint mechanics transformation relationship corresponding to the target linear joint, the output layer of the joint torque prediction model can first obtain the expected push rod length of the target push rod at the next moment based on the input motion state data of the robot at the current moment, then obtain the expected push rod length of the target push rod corresponding to the target linear joint at the next moment, and finally output the linear joint torque of the target linear joint in the robot at the next moment. The above process does not rely on the robot dynamics model, and the obtained joint torque has high accuracy, thereby enabling more accurate control of the robot joint movement.

[0095] Based on the technical solutions of the above embodiments, this application also provides another optional embodiment, in which the steps for determining the joint torque are refined.

[0096] See Figure 3 The steps for determining the joint torque shown include:

[0097] S310, based on motion state data, determine the desired joint angle of the target rotational joint at the next moment.

[0098] The desired joint angle can be understood as the angle that the target rotational joint is expected to reach.

[0099] S320, obtain the current joint angle of the target rotary joint at the current moment.

[0100] In some embodiments, the current joint angle of the target rotary joint at the current moment can be obtained by a sensor. For example, the current joint angle can be obtained by an encoder or an angle sensor.

[0101] S330 determines the rotational torque of the target rotational joint at the next moment based on the current joint angle and the desired joint angle.

[0102] In some embodiments, the joint angle increment of the target rotary joint can be determined based on the current joint angle and the desired joint angle; and the rotary joint torque of the target rotary joint at the next moment can be determined based on the joint angle increment and the joint rotational angular velocity of the target rotary joint at the current moment.

[0103] In some embodiments, the rotary joint torque can be obtained according to the following formula:

[0104] = ×(θ_des-θ)- ×ω

[0105] in, Indicates the torque of the rotary joint; This represents the positional scaling factor, with a value range of [100, 500], and its unit is Newton. meters per radian (N) (m / rad) can be adjusted according to the torque of the rotary joint and the stiffness of the lateral joint; This represents the velocity damping coefficient, with a value range of [5, 20] and a dimension of Newtons. rice seconds per radian (N) m ω represents the desired joint angle in radians (rad); θ_des represents the current joint angle in radians (rad); ω represents the angular velocity of the joint rotation in radians per second (rad / s).

[0106] In some embodiments, the position proportionality coefficient and velocity damping coefficient corresponding to the rotary joint torque can be adjusted.

[0107] In this embodiment, based on the hybrid joint mechanics transformation relationship corresponding to the target rotary joint, the output layer of the joint torque prediction model can obtain the expected joint angle of the target rotary joint at the next moment based on the input motion state data. Then, based on the joint angle increment and the joint rotation angular velocity of the target rotary joint at the current moment, the rotary joint torque of the target rotary joint at the next moment can be obtained, thereby laying the foundation for accurate control of the target rotary joint motion in the robot.

[0108] Based on the technical solutions of the above embodiments, this application also provides another optional embodiment, in which the training process of the joint torque prediction model is refined.

[0109] The joint torque prediction model can be implemented based on a reinforcement learning algorithm. It can be constructed using a policy network. By inputting the current motion state data into the trained joint torque prediction model, the joint torque of the target joint at the next moment can be output.

[0110] In some embodiments, an asymmetric policy-critical network structure can be pre-constructed based on the Proximal Policy Optimization (PPO) algorithm. A joint torque prediction model can be built based on the policy-critical network, and the asymmetric policy-critical network can be trained to achieve joint training of the joint torque prediction model and the corresponding critical network. In some embodiments, the following PPO objective function can be used to jointly train the joint torque prediction model and the corresponding critical network:

[0111]

[0112] in, This represents the ratio of the torques of two adjacent joints. Represents the dominance function; Represents the cilp (Contrastive Language-Image Pre-training) coefficients; This represents the entropy regularization coefficient, with a value of 0.01. Indicates the loss weights of the value function; Represents the loss function of the value function; This represents the entropy reward value.

[0113] like Figure 4 The joint torque prediction model training method shown can be obtained through iterative training in steps S410~S450:

[0114] S410: In each iteration, acquire the motion state data of the first sample robot in the previous iteration.

[0115] The motion state data of the first sample is obtained by controlling the motion of the sample joints in the sample robot based on the joint torque in the previous iteration.

[0116] S420, Based on the motion state data of the first sample, determine the sample joint torque of the sample joint in the sample robot during this iteration process.

[0117] The first sample motion state data can be input into a pre-built joint torque prediction model. Based on the first sample motion state data, the joint torque prediction model determines the sample joint torque in this iteration process.

[0118] S430 controls the motion of the sample joint based on the sample joint torque, generating the second sample motion state data for this iteration process.

[0119] S440, based on the motion state data of the second sample, evaluate the joint torque of the sample in this iteration process and obtain the sample evaluation result.

[0120] The value network is used to evaluate the joint torque during the current iteration based on the sample motion state data, and obtain the sample evaluation results.

[0121] In some embodiments, the sample motion state data includes at least one of the following: the actual pitch angle of the sample base in the sample robot, the actual roll angle of the sample base, the actual motion speed of the sample base, the actual motion amplitude of each sample joint, the actual motion rate of each sample joint, and the ground contact state of each sample foot of the sample robot.

[0122] In some embodiments, S440 may include steps A41-A46:

[0123] A41, the attitude stability evaluation result of the base is determined based on the deviation between the actual pitch angle and the target pitch angle of the sample base, and / or based on the deviation between the actual roll angle and the target roll angle of the sample base.

[0124] Among them, the base attitude stability evaluation result can be used to measure the stability of the pitch angle and / or roll angle of the sample base in the sample robot. The smaller the base attitude fluctuation, the closer the base attitude stability evaluation result can be to 1.

[0125] In some embodiments, the base attitude stability evaluation result can be obtained according to the following formula:

[0126] r1=exp(−α1 2 +Δγ 2 )

[0127] Where r1 represents the base attitude stability evaluation result; α1 represents the attenuation coefficient, which is used to adjust the sensitivity of the influence of attitude deviation on the base attitude stability evaluation result; This represents the deviation between the actual pitch angle and the target pitch angle, satisfying | |≤ ,in, The maximum pitch angle deviation is denoted as Δγ, for example, 5°, where the target pitch angle is 0°; Δγ represents the deviation between the actual roll angle and the target roll angle, satisfying |Δγ| ≤ γmax, where γmax is the maximum roll angle deviation, for example, 5°, where the target roll angle is 0°. |> When |Δγ|>γmax, r1=﹣1 (penalty term) to prevent the sample robot from tipping over.

[0128] A42, determine the speed tracking evaluation result based on the deviation between the actual movement speed of the sample base and the target movement speed.

[0129] Among them, the speed tracking evaluation results can be used to guide the sample robot to track the target's motion speed and reduce the relative error between the actual motion speed and the target's motion speed.

[0130] In some embodiments, the speed tracking evaluation result can be obtained according to the following formula:

[0131]

[0132] in, The actual moving speed of the sample base is expressed in m / s and is fed back in real time by the simulation environment or the actual machine's sensors. This represents the target speed, measured in m / s. The target speed range is [0.3, 0.5], measured in m / s. The target speed can be selected from this range based on actual needs. This represents the error weighting coefficient, with a value of 1.0. When the relative error between the actual motion speed and the target motion speed exceeds 100%, a penalty is triggered, setting r2=-1 to ensure that the actual motion speed of the sample base is within a reasonable range.

[0133] A43. Based on the deviation between the actual range of motion of each sample joint and the target range of motion, the joint constraint evaluation result is determined.

[0134] The joint constraint evaluation results can be used to constrain the range of motion of all sample joints (including sample rotary joints and sample linear joints) to avoid exceeding the safety limits.

[0135] In some embodiments, the joint constraint evaluation results can be obtained according to the following formula:

[0136]

[0137] Where n represents the total number of sample joints; θ j The actual range of motion of the j-th sample joint is represented by the rotation angle (the actual range of motion of the sample is the stroke for linear joints, and both are normalized); θ j,mid θ represents the midpoint value of the range of motion amplitude of the j-th joint; j,range This represents the target range of motion for the j-th joint. This represents the out-of-bounds penalty coefficient, with a value of 2.0. When the actual range of motion of any sample joint exceeds the target range of motion, the max(·) term is positive, the product result decreases, the out-of-bounds violation of the sample joint is more severe, and r3 is closer to -1 (maximum penalty).

[0138] A44. The motion smoothness evaluation result is determined based on the deviation between the actual rate of change of motion of each sample joint and the target rate of change of motion range.

[0139] Among them, the motion smoothness evaluation results can be used to guide the joint torque prediction model to output smooth joint torque, punish abrupt changes in joint motion, and reduce mechanical wear.

[0140] In some embodiments, the motion smoothness evaluation result can be obtained according to the following formula:

[0141]

[0142] Where, Δθ j (t)=θ j (t)﹣θ j (t﹣1), representing the change in motion of the j-th joint at adjacent times (t and t﹣1), θ j (t) represents the motion of joint j at time t, θ j(t﹣1) represents the motion of joint j at time t﹣1; Δt represents the control period, which can be 0.001s; The smoothing coefficient can be 5 × 10. -4 This adapts to the numerical range of joint motion change rates. The smaller the motion change rate of the sample joints, the closer r4 is to 1, encouraging smooth gait transitions in the sample robots.

[0143] A45. Based on the matching relationship between the ground contact state of each sample foot and the target gait phase, the foot contact stability evaluation result is determined.

[0144] Among them, the results of foot contact stability evaluation can guide the foot's contact state with the ground to conform to the gait pattern of double support or single support, avoiding suspension or abnormal contact.

[0145] In some embodiments, the foot contact stability evaluation result can be obtained according to the following formula:

[0146]

[0147] Where f can be 1 or 2, representing different legs; This represents the ground contact state of the sample foot corresponding to the f-th leg. When =1, it indicates contact with the ground. When =0, it indicates that it is suspended and can be fed back by the grounding mask signal; This represents the gait phase indication function. When the value is 0.5, it indicates a double support phase. When =1, it indicates a single support stage, which is determined by the periodic clock signal and the grounding mask. This represents the contact penalty coefficient, with a value of 0.5. When the ground contact state of the sample foot does not match the phase of the target gait (e.g., the leg is suspended in the air during the single support phase), r5 can be -0.5 to guide and correct the gait rhythm.

[0148] A46. The sample evaluation result is determined based on at least one of the following: base posture stability evaluation result, velocity tracking evaluation result, joint constraint evaluation result, motion smoothness evaluation result, and foot contact stability evaluation result.

[0149] In some embodiments, at least one of the base posture stability evaluation results, velocity tracking evaluation results, joint constraint evaluation results, motion smoothness evaluation results, and foot contact stability evaluation results can be weighted to obtain sample evaluation results.

[0150] In some embodiments, the sample evaluation results can be obtained according to the following formula:

[0151]

[0152] in, This represents the sample evaluation result, i.e., the total reward value of the joint torque prediction model; The evaluation results are as follows: (i.e., base posture stability evaluation results, velocity tracking evaluation results, joint constraint evaluation results, motion smoothness evaluation results, and foot contact stability evaluation results). This represents the weighting coefficient corresponding to each evaluation result.

[0153] In this embodiment, the sample evaluation results determined based on at least one of the base posture stability evaluation results, velocity tracking evaluation results, joint constraint evaluation results, motion smoothness evaluation results, and foot contact stability evaluation results can make the trained joint torque prediction model have good robustness in terms of base posture stability, velocity tracking, joint constraint, motion smoothness, and foot contact stability.

[0154] S450, based on the sample evaluation results, adjust the model parameters of the joint torque prediction model.

[0155] In some embodiments, a hybrid proportional-derivative (PD) controller can be used to adjust the position proportional coefficient and velocity damping coefficient corresponding to the sample joint. For example, for a linear knee joint: position proportional coefficient Kp = 1500 N / m, velocity damping coefficient Kd = 30 N. s / m; Ankle linear joint: Kp=1200N / m, Kd=25N s / m; Hip yaw rotation joint: Kp=300N m / rad, Kd=10N m s / rad; Hip rolling rotation joint: Kp=350N m / rad, Kd=12N m s / rad. The adjustment criteria are: joint response time ≤ 5ms, overshoot ≤ 10%, steady-state error of rotary joint ≤ ±0.01rad, and steady-state error of linear joint ≤ ±0.1mm.

[0156] The batch size of the model parameters for the joint torque prediction model is 2048, and the learning rate is 3e. -4 The preset iteration threshold can be set to 5 million steps, and the model is saved once every 100,000 steps.

[0157] Adjusting the model parameters of the joint torque prediction model based on the sample evaluation results can provide a clear direction for optimization, allowing the joint torque prediction model to adjust the motion probability according to the sample evaluation results, avoiding blind exploration and thus accelerating convergence.

[0158] In some embodiments, the model parameters of the joint torque prediction model and the network parameters in the value network can be jointly adjusted based on the sample evaluation results, which can enable the value network to better provide optimization direction for the joint torque prediction model, thereby improving training efficiency and robustness.

[0159] In some embodiments, the sample motion state data of the first iteration process is generated by motion control of the sample joints of the sample robot according to a preset joint matrix; the sample evaluation result of the first iteration process is obtained by evaluating the preset joint matrix.

[0160] In some embodiments, after executing step S450, if the iteration cutoff condition is met, the above iteration process is stopped, thus obtaining the trained joint torque prediction model. If the iteration cutoff condition is not met, step S410 is repeated until the iteration cutoff condition is met. In some embodiments, the iteration cutoff condition may include: the number of iterations reaches a preset iteration number threshold or the difference between the sample joint torques in two adjacent iterations is less than a preset difference threshold.

[0161] In this embodiment, the process of training the joint torque prediction model based on the reinforcement learning algorithm enables the joint torque prediction model to accurately predict the linear joint torque of the target linear joint and the rotational joint torque of the target rotational joint based on motion state data. While improving prediction efficiency, it also improves the robustness of the model. Compared with the technical solution of controlling the humanoid robot motion based on robot dynamics model and predefined motion trajectory, it has higher accuracy in controlling robot joint motion.

[0162] In some embodiments, to achieve motion control of a humanoid robot with a hybrid joint configuration (linear joints + rotary joints), during the iterative training of the joint torque prediction model, the following steps can be taken: In each iteration, the first sample motion state data of the sample robot in the previous iteration can be acquired. Based on the first sample motion state data, the first sample joint torque of the sample linear joint and the second sample joint torque of the sample rotary joint in the current iteration can be determined. The motion of the sample linear joint is controlled based on the first sample joint torque, and the motion of the sample rotary joint is controlled based on the second sample joint torque, generating the second sample motion state data for the current iteration. The sample joint torques in the current iteration are evaluated based on the second sample motion state data to obtain the sample evaluation results. The model parameters of the joint torque prediction model are adjusted based on the sample evaluation results.

[0163] The process of determining the torque of the first sample linear joint in the sample robot during this iteration based on the first sample motion state data can be referenced from the previous process of determining the torque of the target linear joint in the robot at the next moment based on the motion state data, and will not be repeated here. Similarly, the process of determining the torque of the second sample rotary joint in the sample robot during this iteration based on the first sample motion state data can be referenced from the previous process of determining the torque of the target rotary joint in the robot at the next moment based on the motion state data, and will not be repeated here.

[0164] In some embodiments, to improve the robustness of the joint matrix prediction model, see [reference needed]. Figure 5 The joint matrix prediction model training method shown can train a pre-built joint matrix prediction model in the high-performance physics simulation engine Isaacgym by combining pre-configured domain randomization parameters and a designed reward function.

[0165] In some embodiments, the domain randomization parameters can be found in Table 1 below.

[0166] Table 1

[0167]

[0168] Based on the domain randomization parameters shown in Table 1 above, training the joint matrix prediction model enables the robot deployed with the joint matrix prediction model to achieve strong prediction robustness for different training environments. The pre-trained joint matrix prediction model can then be migrated to a high-precision physical calibration environment to adjust the dynamic and model parameters. The calibrated joint matrix prediction model can then be encapsulated and adapted to a real-world driving protocol to achieve real-time communication between policy commands and actuators. Finally, it can be deployed on a physical robot and further tested in different test scenarios (such as flat or rugged terrain) to ensure that the robot's walking speed is between 0.3 and 0.5 m / s, the base posture fluctuation is no greater than 3°, and the continuous walking time is no less than 20 minutes.

[0169] This solution trains a policy network within a joint matrix prediction model by directly embedding the joint mechanics transformation relationship into the policy network. The output layer of the policy network directly outputs the push rod stroke increment or joint angle increment, eliminating the need for additional calculations in the drive layer. This reduces command execution latency from 10-20 milliseconds to 3-5 milliseconds, a reduction of over 70%. This enables the robot to respond quickly to environmental changes (such as foot force feedback on rugged terrain), avoids posture imbalance caused by latency, and ensures gait stability during high-speed movements (0.3-0.5 m / s). It is particularly suitable for scenarios with high real-time requirements, such as dynamic obstacle avoidance and rapid turning.

[0170] Based on the technical solutions of the above embodiments, this application also provides another optional embodiment, in which the robot joint control method is described in detail.

[0171] See Figure 6 The robot joint control method shown includes:

[0172] S601, acquire the robot's motion state data at the current moment.

[0173] S602, based on a trained joint torque prediction model, determines the expected push rod length of the target push rod corresponding to the target linear joint at the next moment according to motion state data.

[0174] S603, obtain the current putter length of the target putter at the current moment.

[0175] S604 determines the push rod stroke increment of the target push rod based on the current push rod length and the desired push rod length.

[0176] S605 determines the push force of the target push rod based on the push rod stroke increment and the push rod extension / retraction speed of the target push rod at the current moment.

[0177] S606, obtain the change in joint angle of each joint in the robot at the current moment.

[0178] S607 determines the linear joint torque of the target linear joint at the next moment based on the change in joint angle and the push rod thrust.

[0179] S608 controls the movement of the target linear joint based on the linear joint torque.

[0180] S609, based on a trained joint torque prediction model, determines the expected joint angle of the target rotational joint at the next moment according to motion state data.

[0181] S610, obtain the current joint angle of the target rotary joint at the current moment.

[0182] S611, determine the joint angle increment of the target rotational joint based on the current joint angle and the desired joint angle.

[0183] S612, based on the joint angle increment and the joint rotational angular velocity of the target rotary joint at the current moment, determine the rotary joint torque of the target rotary joint at the next moment.

[0184] S613 controls the movement of the target rotary joint based on the rotary joint torque.

[0185] Based on the technical solutions of the above embodiments, this application also provides another optional embodiment, in which the robot joint control method is described in detail.

[0186] It should be understood that although the steps in the flowcharts of the embodiments described above are shown sequentially according to the arrows, these steps are not necessarily executed in the order indicated by the arrows. Unless explicitly stated herein, there is no strict order restriction on the execution of these steps, and they can be executed in other orders. Moreover, at least some steps in the flowcharts of the embodiments described above may include multiple steps or multiple stages. These steps or stages are not necessarily completed at the same time, but can be executed at different times. The execution order of these steps or stages is not necessarily sequential, but can be performed alternately or in turn with other steps or at least some of the steps or stages in other steps. It is understood that the steps in different embodiments can be freely combined as needed, and all non-contradictory solutions formed by such combinations are within the scope of protection of this application.

[0187] Based on the same inventive concept, this application also provides a robot joint control device for implementing the robot joint control method described above. The solution provided by this device is similar to the solution described in the above method; therefore, the specific limitations in one or more robot joint control device embodiments provided below can be found in the limitations of the robot joint control method described above, and will not be repeated here.

[0188] In one exemplary embodiment, such as Figure 7 As shown, a robot joint control device is provided, including: an acquisition module 710, a determination module 720, and a control module 730, wherein:

[0189] The acquisition module 710 is used to acquire the robot's motion state data at the current moment;

[0190] The determination module 720 is used to determine the joint torque of the target joint in the robot at the next moment based on the motion state data; the target joint includes the target linear joint and the target rotary joint; when the target joint is the target linear joint, the joint torque includes the linear joint torque; when the target joint is the target rotary joint, the joint torque includes the rotary joint torque.

[0191] The control module 730 is used to control the movement of the target joint based on the joint torque.

[0192] In one embodiment, the determining module 720 is specifically used to: determine the joint torque of the target joint in the robot at the next moment based on the trained joint torque prediction model and the motion state data; the output layer of the joint torque prediction model is embedded with the hybrid joint mechanics transformation relationship corresponding to the target joint.

[0193] In one embodiment, the determining module 720 is specifically used to: determine the expected push rod length of the target push rod corresponding to the target linear joint at the next moment based on the motion state data; determine the push rod thrust of the target push rod based on the expected push rod length; and determine the linear joint torque of the target linear joint at the next moment based on the push rod thrust.

[0194] In one embodiment, the determining module 720 is specifically used to: obtain the current push rod length and push rod extension speed of the target push rod at the current moment; and determine the push rod thrust of the target push rod based on the current push rod length, the desired push rod length, and the push rod extension speed.

[0195] In one embodiment, the determining module 720 is specifically used to: determine the push rod stroke increment of the target push rod based on the current push rod length and the desired push rod length; and determine the push rod thrust of the target push rod based on the push rod stroke increment and the push rod extension / retraction speed of the target push rod at the current moment.

[0196] In one embodiment, the motion state data includes the change in joint angle of each rotary joint connected to the target linear joint in the robot at the current moment; the determination module 720 is specifically used to: determine the linear joint torque of the target linear joint at the next moment based on the change in joint angle and the push rod thrust.

[0197] In one embodiment, the determining module 720 is specifically used to: determine the pose data of the target linear joint at the next moment based on the motion state data; and determine the expected push rod length of the target push rod corresponding to the target linear joint at the next moment based on the pose data.

[0198] In one embodiment, the determining module 720 is specifically used to: determine the desired joint angle of the target rotary joint at the next moment based on motion state data; obtain the current joint angle of the target rotary joint at the current moment; and determine the rotary joint torque of the target rotary joint at the next moment based on the current joint angle and the desired joint angle.

[0199] In one embodiment, the determining module 720 is specifically used to: determine the joint angle increment of the target rotary joint based on the current joint angle and the desired joint angle; and determine the rotary joint torque of the target rotary joint at the next moment based on the joint angle increment and the joint rotation angular velocity of the target rotary joint at the current moment.

[0200] In one embodiment, the joint torque prediction model is obtained through iterative training via the following steps: In each iteration, the first sample motion state data of the sample robot in the previous iteration is acquired; based on the first sample motion state data, the sample joint torque of the sample joint in the current iteration is determined; based on the sample joint torque, the motion of the sample joint is controlled to generate the second sample motion state data for the current iteration; based on the second sample motion state data, the sample joint torque for the current iteration is evaluated to obtain the sample evaluation result; based on the sample evaluation result, the model parameters of the joint torque prediction model are adjusted; wherein, the sample motion state data of the first iteration is generated by motion control of the sample robot based on the preset joint torque; the sample evaluation result of the first iteration is obtained by evaluating the preset joint torque.

[0201] In one embodiment, the sample motion state data includes at least one of the following: the actual pitch angle of the sample base in the sample robot, the actual roll angle of the sample base, the actual motion speed of the sample base, the actual motion amplitude of each sample joint, the actual motion rate of change of each sample joint, and the ground contact state of each sample foot of the sample robot. Based on the sample motion state data from the previous iteration, the sample joint torque of the previous iteration is evaluated to obtain a sample evaluation result, including: determining the base attitude stability evaluation result based on the deviation between the actual pitch angle and the target pitch angle of the sample base, and / or, based on the deviation between the actual roll angle and the target roll angle of the sample base; based on the sample... The deviation between the actual movement speed of the base and the target movement speed is used to determine the speed tracking evaluation result; the deviation between the actual movement amplitude of each sample joint and the target movement amplitude range is used to determine the joint constraint evaluation result; the deviation between the actual movement rate of each sample joint and the target movement rate range is used to determine the motion smoothness evaluation result; the matching relationship between the ground contact state of each sample foot and the target gait phase is used to determine the foot contact stability evaluation result; and the sample evaluation result is determined based on at least one of the base posture stability evaluation result, speed tracking evaluation result, joint constraint evaluation result, motion smoothness evaluation result, and foot contact stability evaluation result.

[0202] Each module in the aforementioned robot joint control device can be implemented entirely or partially through software, hardware, or a combination thereof. These modules can be embedded in the robot's processor in hardware form or independent of it, or stored in the robot's memory in software form, so that the processor can call and execute the operations corresponding to each module.

[0203] In one exemplary embodiment, a robot is provided, the internal structure of which can be as follows: Figure 8As shown, the robot includes a processor, memory, input / output (I / O) interfaces, and a communication interface. The processor, memory, and I / O interfaces are connected via a system bus, and the communication interface is also connected to the system bus via the I / O interfaces. The robot's processor provides computational and control capabilities. The robot's memory includes non-volatile storage media and internal memory. The non-volatile storage media stores the operating system, computer programs, and a database. The internal memory provides the environment for the operation of the operating system and computer programs stored in the non-volatile storage media. The robot's database stores motion state data, joint torque, desired push rod length, current push rod length, push rod stroke increment, push rod extension / retraction speed, push rod thrust, joint angle change, first sample motion state data, sample joint torque, second sample motion state data, sample evaluation results, model parameters, and other related data. The robot's I / O interfaces are used for information exchange between the processor and external devices. The robot's communication interface is used for communication with external terminals via a network connection. When the computer program is executed by the processor, it implements a robot joint control method.

[0204] Those skilled in the art will understand that Figure 8 The structure shown is a block diagram of a partial structure related to the solution of this application, and does not constitute a limitation on the robot to which the solution of this application is applied. A specific robot may include more or fewer parts than shown in the figure, or combine certain parts, or have different part arrangements.

[0205] In one exemplary embodiment, a robot is provided, including a memory and a processor, the memory storing a computer program, the processor executing the computer program to implement the steps in the above-described method embodiments.

[0206] In one exemplary embodiment, a computer-readable storage medium is provided having a computer program stored thereon, which, when executed by a processor, implements the steps in the above-described method embodiments.

[0207] In one exemplary embodiment, a computer program product is provided, including a computer program that, when executed by a processor, implements the steps in the above-described method embodiments.

[0208] Those skilled in the art will understand that all or part of the processes in the methods of the above embodiments can be implemented by a computer program instructing related hardware. The computer program mentioned can be stored in a non-volatile computer-readable storage medium. When executed, the computer program can include the processes of the embodiments of the above methods. Any references to memory, databases, or other media used in the embodiments provided in this application can include at least one of non-volatile memory and volatile memory. Non-volatile memory can include read-only memory (ROM), magnetic tape, floppy disk, flash memory, optical memory, high-density embedded non-volatile memory, resistive random access memory (ReRAM), magnetic random access memory (MRAM), ferroelectric random access memory (FRAM), phase change memory (PCM), graphene memory, etc. Volatile memory can include random access memory (RAM) or external cache memory, etc. By way of illustration and not limitation, RAM can take many forms, such as Static Random Access Memory (SRAM) or Dynamic Random Access Memory (DRAM). The databases involved in the embodiments provided in this application may include at least one type of relational database and non-relational database. Non-relational databases may include, but are not limited to, blockchain-based distributed databases. The processors involved in the embodiments provided in this application may be general-purpose processors, central processing units, graphics processing units, digital signal processors, programmable logic devices, quantum computing-based data processing logic devices, artificial intelligence (AI) processors, etc., and are not limited to these.

[0209] The technical features of the above embodiments can be combined in any way. For the sake of brevity, not all possible combinations of the technical features in the above embodiments are described. However, as long as there is no contradiction in the combination of these technical features, they should be considered to be within the scope of this application.

[0210] The embodiments described above are merely illustrative of several implementation methods of this application, and while the descriptions are specific and detailed, they should not be construed as limiting the scope of this patent application. It should be noted that those skilled in the art can make various modifications and improvements without departing from the concept of this application, and these all fall within the protection scope of this application. Therefore, the protection scope of this application should be determined by the appended claims.

Claims

1. A robot joint control method, characterized in that, The method includes: Acquire the robot's motion state data at the current moment; Based on the motion state data, the joint torque of the target joint in the robot at the next moment is determined; the target joint includes a target linear joint and a target rotary joint; when the target joint is the target linear joint, the joint torque includes linear joint torque; when the target joint is the target rotary joint, the joint torque includes rotary joint torque. The movement of the target joint is controlled based on the joint torque.

2. The method according to claim 1, characterized in that, Based on the motion state data, determine the joint torque of the target joint in the robot at the next moment, including: Based on the trained joint torque prediction model, the joint torque of the target joint in the robot at the next moment is determined according to the motion state data; the output layer of the joint torque prediction model is embedded with the hybrid joint mechanics transformation relationship corresponding to the target joint.

3. The method according to claim 2, characterized in that, Based on the motion state data, determine the joint torque of the target joint in the robot at the next moment, including: Based on the motion state data, determine the expected push rod length of the target push rod corresponding to the target linear joint at the next moment; The pusher force of the target pusher is determined based on the desired pusher length. Based on the push rod thrust, determine the linear joint torque of the target linear joint at the next moment.

4. The method according to claim 3, characterized in that, Determining the pusher force of the target pusher based on the desired pusher length includes: Obtain the current push rod length and push rod extension / retraction speed of the target push rod at the current moment; The push force of the target push rod is determined based on the current push rod length, the desired push rod length, and the push rod extension / retraction speed.

5. The method according to claim 4, characterized in that, The pusher force of the target pusher is determined based on the current pusher length, the desired pusher length, and the pusher extension / retraction speed, including: Based on the current push rod length and the desired push rod length, determine the push rod stroke increment of the target push rod; The pusher force of the target pusher is determined based on the pusher stroke increment and the pusher extension / retraction speed.

6. The method according to claim 3, characterized in that, The motion state data includes the change in joint angle of each rotary joint in the robot connected to the target linear joint at the current moment; Based on the push rod thrust, the linear joint torque of the target linear joint at the next moment is determined, including: Based on the change in joint angle and the push rod thrust, determine the linear joint torque of the target linear joint at the next moment.

7. The method according to claim 3, characterized in that, Based on the motion state data, the expected push rod length of the target push rod corresponding to the target linear joint at the next moment is determined, including: Based on the motion state data, determine the pose data of the target linear joint at the next moment; Based on the pose data, determine the expected push rod length of the target push rod corresponding to the target linear joint at the next moment.

8. The method according to claim 2, characterized in that, Based on the motion state data, determine the joint torque of the target joint in the robot at the next moment, including: Based on the motion state data, determine the desired joint angle of the target rotary joint at the next moment; Obtain the current joint angle of the target rotary joint at the current moment; Based on the current joint angle and the desired joint angle, determine the rotational joint torque of the target rotational joint at the next moment.

9. The method according to claim 8, characterized in that, Determining the rotational torque of the target rotational joint at the next moment based on the current joint angle and the desired joint angle includes: Based on the current joint angle and the desired joint angle, determine the joint angle increment of the target rotary joint; Based on the joint angle increment and the joint rotation angular velocity of the target rotary joint at the current moment, the rotary joint torque of the target rotary joint at the next moment is determined.

10. The method according to any one of claims 2-9, characterized in that, The joint torque prediction model is obtained through iterative training via the following steps: In each iteration, the motion state data of the sample robot in the previous iteration is acquired; Based on the motion state data of the first sample, determine the sample joint torque of the sample joint in the sample robot during this iteration process; Based on the torque of the sample joint, control the movement of the sample joint to generate the second sample motion state data for this iteration process; Based on the motion state data of the second sample, the joint torque of the sample in this iteration process is evaluated to obtain the sample evaluation result; Based on the sample evaluation results, the model parameters of the joint torque prediction model are adjusted; wherein, the sample motion state data of the first iteration process is generated by motion control of the sample robot according to the preset joint torque; The sample evaluation results of the first iteration process are obtained by evaluating the preset joint torque.

11. The method according to claim 10, characterized in that, The sample motion state data includes at least one of the following: the actual pitch angle of the sample base in the sample robot, the actual roll angle of the sample base, the actual motion speed of the sample base, the actual motion amplitude of each sample joint, the actual motion rate of each sample joint, and the ground contact state of each sample foot of the sample robot: Based on the motion state data of the second sample, the joint torque of the sample in this iteration process is evaluated to obtain the sample evaluation results, including: The attitude stability evaluation result of the base is determined based on the deviation between the actual pitch angle and the target pitch angle of the sample base, and / or based on the deviation between the actual roll angle and the target roll angle of the sample base. The speed tracking evaluation result is determined based on the deviation between the actual movement speed of the sample base and the target movement speed. The joint constraint evaluation result is determined based on the deviation between the actual range of motion of each sample joint and the target range of motion. The motion smoothness evaluation result is determined based on the deviation between the actual rate of motion change of each sample joint and the target rate of motion change range. The foot contact stability evaluation result is determined based on the matching relationship between the ground contact state of the foot of each sample and the target gait phase. The sample evaluation result is determined based on at least one of the following: the base posture stability evaluation result, the speed tracking evaluation result, the joint constraint evaluation result, the motion smoothness evaluation result, and the foot contact stability evaluation result.

12. A robot joint control device, characterized in that, The device includes: The acquisition module is used to acquire the robot's motion state data at the current moment; A determining module is used to determine the joint torque of a target joint in the robot at the next moment based on the motion state data; the target joint includes a target linear joint and a target rotary joint; when the target joint is the target linear joint, the joint torque includes linear joint torque; when the target joint is the target rotary joint, the joint torque includes rotary joint torque. A control module is used to control the movement of the target joint based on the joint torque.

13. A robot comprising a memory and a processor, the memory storing a computer program, characterized in that, When the processor executes the computer program, it implements the steps of the method according to any one of claims 1 to 11.