Humanoid robot control method and system based on action mapping

Through the humanoid robot control method based on action mapping, the human body visual motion capture data and animation model are used to perform joint-level motion mapping, and combined with inverse dynamics to solve joint torque, the problem of low motion control efficiency of humanoid robots in special environments is solved, and the Efficient and natural action reappearance.

CN119175719AActive Publication Date: 2024-12-24UNIV OF JINAN

Patent Information

Application Number
CN202411700279.4
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-11-26
Publication Date
2024-12-24
Estimated Expiration
2044-11-26

AI Technical Summary

Technical Problem

Existing humanoid robots face high professional technical requirements and low efficiency in motion control in special environments, which limit their promotion and efficient operation.

Method used

The humanoid robot control method based on action mapping is adopted to perform joint-level action mapping through human body visualization motion capture data and humanoid robot animation model, and combine inverse dynamics to solve joint torque to achieve reproduction control of action.

Benefits of technology

It significantly improves the efficiency of anthropomorphic action generation of humanoid robots, reduces the difficulty of design, solves the technical problems of multi-degree-of-freedom humanoid robots in coherent action mapping, and ensures the naturalness and accuracy of the movements.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119175719A_ABST
    Figure CN119175719A_ABST
Patent Text Reader

Abstract

The invention provides a humanoid robot control method and system based on action mapping, and relates to the technical field of humanoid robots, and the method comprises the steps: constructing a humanoid robot animation model according to the steering engine distribution of a to-be-controlled humanoid robot, and carrying out the skeleton binding; obtaining human body visual motion capture data of a to-be-reproduced motion, and performing joint-level motion mapping on the human body visual motion capture data and the anthropomorphic robot animation model to obtain motion data of the mapped anthropomorphic robot model; task priority grading is carried out on the trunk, the arms and the legs of the humanoid robot, and joint torque is solved through inverse dynamics in combination with the smoothed action data; the joint torque serves as a feedforward quantity, and motion reproduction control is conducted on the humanoid robot; through the human body visual motion capture data and the anthropomorphic robot animation model, the anthropomorphic action generation efficiency of the anthropomorphic robot is remarkably improved, the technical problem of the multi-degree-of-freedom anthropomorphic robot in coherent action mapping is solved, and the design difficulty is reduced.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present disclosure relates to the technical field of humanoid robots, and in particular to a humanoid robot control method and system based on motion mapping. Background Art

[0002] Human motion capture originated from the film and animation industry, and can accurately map human movements to 3D models to achieve realistic effects; humanoid robots adapt to human environmental tasks by imitating human appearance and movement methods; currently, voice technology is relatively mature in humanoid robot interactions, but voice communication alone often appears stiff; by adding non-verbal communication such as body movements, humanoid robots can be more humane and interact more naturally; therefore, the demand for humanoid robots to learn and imitate complex human movements is increasing; mapping motion capture data directly to the corresponding joints of humanoid robots, and thereby reproducing the complex movements and behaviors of the human body, will improve the ability of humanoid robots to collaborate, interact and perform complex tasks.

[0003] When controlling the movement of humanoid robots in special environments, existing methods face multiple challenges in generating humanoid robot behaviors, such as high professional technical requirements and low efficiency in motion design, which limits their promotion and efficient operation. Summary of the invention

[0004] In order to solve the above problems, the present disclosure proposes a humanoid robot control method and system based on motion mapping. Through the visual motion capture data of the human body and the humanoid robot animation model, visual mapping and control can be performed without in-depth understanding of humanoid robot technology, which significantly improves the efficiency of generating anthropomorphic motions of humanoid robots, solves the technical difficulties of multi-degree-of-freedom humanoid robots in coherent motion mapping, and reduces the design difficulty.

[0005] According to some embodiments, the present disclosure adopts the following technical solutions: A humanoid robot control method based on motion mapping, comprising: According to the distribution of the servos of the humanoid robot to be controlled, the humanoid robot animation model is constructed and the skeleton binding is performed; Obtaining human visual motion capture data of the action to be reproduced, performing joint-level motion mapping between the human visual motion capture data and the humanoid robot animation model, and obtaining motion data of the mapped humanoid robot animation model; Prioritize tasks for the humanoid robot's torso, arms, and legs, and solve joint torques through inverse dynamics based on smoothed motion data; The joint torque is used as the feedforward quantity to perform the reproducible control of the humanoid robot's movements.

[0006] According to some embodiments, the present disclosure adopts the following technical solutions: A humanoid robot control system based on motion mapping includes a model building module, a motion mapping module, a torque solving module and a motion control module: The model building module is configured to: build a humanoid robot animation model according to the distribution of the servos of the humanoid robot to be controlled, and perform skeleton binding; The motion mapping module is configured to: obtain human visual motion capture data of the action to be reproduced, perform joint-level motion mapping on the human visual motion capture data and the humanoid robot animation model, and obtain motion data of the mapped humanoid robot animation model; The torque solving module is configured to: prioritize tasks for the humanoid robot’s torso, arms, and legs, and solve joint torques through inverse dynamics in combination with smoothed motion data; The motion control module is configured to use the joint torque as a feedforward quantity to perform motion reproduction control on the humanoid robot.

[0007] According to some embodiments, the present disclosure adopts the following technical solutions: A computer program product comprises a computer program, wherein when the computer program is executed by a processor, the method for controlling a humanoid robot based on motion mapping is implemented.

[0008] According to some embodiments, the present disclosure adopts the following technical solutions: A non-transitory computer-readable storage medium is used to store computer instructions. When the computer instructions are executed by a processor, a humanoid robot control method based on motion mapping is implemented.

[0009] According to some embodiments, the present disclosure adopts the following technical solutions: An electronic device comprises: a processor, a memory and a computer program; wherein the processor is connected to the memory, the computer program is stored in the memory, and when the electronic device is running, the processor executes the computer program stored in the memory so that the electronic device executes and implements the humanoid robot control method based on motion mapping.

[0010] Compared with the prior art, the present invention has the following beneficial effects: Compared with the traditional humanoid robot artificial motion design, the present invention can directly perform joint-level mapping and use 3D animation software to optimize the mapped motion to achieve smooth motion mapping.

[0011] The present invention can obtain the motion trajectory information and plantar force of each bone in the humanoid robot animation model through the motion data extraction script, so as to facilitate the subsequent use of the motion data to control the humanoid robot.

[0012] The present invention divides the multi-task priorities of the humanoid robot and adopts zero-space mapping to achieve full-body control, thereby accurately reproducing the captured human body movements while ensuring the stability of the humanoid robot. BRIEF DESCRIPTION OF THE DRAWINGS

[0013] The accompanying drawings, which constitute a part of the specification of the present disclosure, are used to provide a further understanding of the present disclosure. The illustrative embodiments of the present disclosure and their descriptions are used to explain the present disclosure and do not constitute improper limitations on the present disclosure.

[0014] Figure 1 Schematic diagram of the human body visual motion capture data skeleton and humanoid robot servo structure of Example 1, wherein (a) is the human body visual motion capture data skeleton diagram, and (b) is the humanoid robot servo structure diagram.

[0015] Figure 2 The present invention is a method flow chart of an embodiment of the present invention.

[0016] Figure 3 This is a diagram showing the relationship between the human body visual motion capture data and the skeleton of a humanoid robot animation model in Example 1, wherein (a) is a diagram showing the relationship between the human body visual motion capture data and (b) is a diagram showing the relationship between the skeleton of a humanoid robot animation model that is finally formed.

[0017] Figure 4 This is the action data extraction flow chart of Example 1. DETAILED DESCRIPTION

[0018] The present disclosure is further described below in conjunction with the accompanying drawings and embodiments.

[0019] It should be noted that the following detailed descriptions are exemplary and are intended to provide further explanation of the present disclosure. Unless otherwise specified, all technical and scientific terms used herein have the same meanings as those commonly understood by those skilled in the art to which the present disclosure belongs.

[0020] It should be noted that the terms used herein are only for describing specific embodiments and are not intended to limit the exemplary embodiments according to the present disclosure. As used herein, unless the context clearly indicates otherwise, the singular form is also intended to include the plural form. In addition, it should be understood that when the terms "comprising" and / or "including" are used in this specification, it indicates the presence of features, steps, operations, devices, components and / or combinations thereof.

[0021] Example 1 In one embodiment of the present disclosure, a humanoid robot control method based on motion mapping is provided, comprising: According to the distribution of servos of the humanoid robot to be controlled, a humanoid robot animation model is constructed and skeleton binding is performed.

[0022] Obtaining human visual motion capture data of the action to be reproduced, performing joint-level motion mapping between the human visual motion capture data and the humanoid robot animation model, and obtaining motion data of the mapped humanoid robot animation model; Prioritize tasks for the humanoid robot's torso, arms, and legs, and solve joint torques using inverse dynamics based on smoothed motion data. The joint torque is used as the feedforward quantity to perform the reproducible control of the humanoid robot's movements.

[0023] The following is a detailed description of the implementation process of a humanoid robot control method based on motion mapping in this embodiment.

[0024] To solve the problem of obtaining humanoid robot behavior in complex environments, we need to consider several issues when studying humanoid robot control methods based on action mapping: The first is the singularity and multiple solution problems of multi-DOF robotic arms: these problems will cause the displayed mapped movements to be inconsistent with the motion capture data. Dealing with singularity and multiple solution problems is the key to ensuring the flexibility and realism of humanoid robot movements.

[0025] The second is the acquisition of motion data after motion mapping: Since different types of humanoid robots use different kinematic models, the extracted motion data such as torso, arm and leg trajectories and plantar force will be different; in addition, the motion state may be affected by previous actions, and attention should be paid to continuity when extracting motion data, which increases the difficulty of implementation.

[0026] In view of the above problems, in this embodiment, a humanoid robot control method based on motion mapping is disclosed.

[0027] In this embodiment, first, the humanoid robot motion mapping is performed in 3D animation software to achieve process visualization and simplification, reduce the entry threshold and improve efficiency. Then, the key motion parameters of each joint of the mapped humanoid robot animation model, such as position, velocity and acceleration and plantar force, i.e., motion data, are extracted by writing a script. Then, the motion data is smoothed, and joint torque is generated according to the optimized data to control the motion reproduction of the humanoid robot.

[0028] In this embodiment, the human body visual motion capture data skeleton is as follows: Figure 1 As shown in (a), the human body visual motion capture data reflects the distribution of human bones, including the skull, spine, upper arm bones, lower arm bones, wrist bones, hand bones, hip bones, thigh bones, calf bones, and foot bones. Each part reflects the motion data of the corresponding part of the human body movement; the structure of the humanoid robot servo is shown in Figure 1As shown in (b), each arm of the humanoid robot has 7 degrees of freedom and each leg has 6 degrees of freedom. By comparing the human visual motion capture data skeleton and the humanoid robot servo structure, it can be seen that the two are highly similar in terms of motion freedom. This similarity enables it to accurately reproduce the complex movements in the human motion capture data, ensuring the naturalness and accuracy of the movements.

[0029] This embodiment discloses a humanoid robot control method based on motion mapping. The overall process is as follows: Figure 2 As shown, the specific steps are as follows: Step 1: Build a humanoid robot animation model in 3D animation software (such as Blender), perform bone binding, adjust bone rotation limits, and import human visualization motion capture data.

[0030] Specifically, step 1.1: export the STL model files of all parts of the humanoid robot through the 3D modeling software SolidWorks, and import the STL model files into the Blender animation software. Blender realizes the motion control of the model through the principle of "skin animation", that is, binding the mesh entity to a specific "bone".

[0031] The skeleton is composed of a series of connected bones, each of which has a position and orientation, and can be organized into a hierarchical structure to form an overall skeleton. By rotating, translating, and scaling the bones, the shape and movement of the associated model can be controlled. In the humanoid robot animation model, the skeleton is used to represent the two robotic arms, two robotic legs, and body structure of the humanoid robot, and to control their movements.

[0032] Through the "skinning" operation, the mesh entity is bound to the skeleton one-to-one, and the parent-child relationship of the skeleton is set to form a complete skeleton to control the movement of the humanoid robot animation model. Figure 3 (a) is a skeleton relationship diagram of human body visual motion capture data. Figure 3 (b) is the skeleton relationship diagram of the final humanoid robot animation model.

[0033] like Figure 3 As shown in (b), the skeleton of the humanoid robot animation model is divided into three parts: trunk control bones, arm control bones and leg control bones: (1) Trunk control bones: Responsible for rotation and movement, achieving overall movement, and obtaining the motion data of the torso.

[0034] (2) Arm control bones: It consists of seven control bones, including shoulder pitch bone, shoulder lateral swing bone, upper arm rotation bone, elbow pitch bone, forearm rotation bone, wrist lateral swing bone and wrist pitch bone. The seven control bones provide seven degrees of freedom rotation of the robotic arm.

[0035] (3) Leg control bones: It consists of six control bones, including hip sway bone, hip pitch bone, hip heading bone, knee pitch bone, ankle sway bone and ankle pitch bone, which control leg movement through rotation.

[0036] Step 1.2: Accurately map the rotation characteristics (direction and angle range) of the physical humanoid robot servos to the bone rotation properties of the humanoid robot animation model to ensure motion consistency.

[0037] Step 1.3: Import human visualization motion capture data.

[0038] Human visualization motion capture data is stored in the Biovision Hierarchy (BVH) format. BVH is a text file format used to represent motion capture data. It is used to describe the hierarchical relationship of human bone structure and action. BVH files organize data in a hierarchical manner, which contains bone hierarchy, joint rotation angles and time information of action frames. Each joint is defined as a node in the file and connected through the parent-child relationship of the hierarchy. Each node contains information such as the name of the joint, rotation order and rotation angle. The time information of the action frame determines the moment of each action frame. After being imported into 3D animation software, human motion data visualization can be formed.

[0039] Step 2: Motion mapping in 3D animation software (such as Blender) Specifically, step 2.1: adjust the skeleton size of the human visualization motion capture data to match the skeleton size of the humanoid robot animation model, add an inverse kinematics control bone to each end of the limbs of the humanoid robot animation model skeleton, and bind them to the ends of the limbs. The inverse kinematics control bone drives the entire arm or leg to move by receiving the motion data of the ends of the limbs of the humanoid robot animation model skeleton.

[0040] Step 2.2: Create sub-level constraints between the inverse kinematics control bones of the humanoid robot animation model skeleton and the corresponding bones of the human visualization motion capture data skeleton, so that the motion trajectories of the extremities of the two skeletons are consistent.

[0041] Step 2.3: Use inverse kinematics to solve the position and posture of the extremities of the current humanoid robot animation model, obtain the rotation or movement data of the robotic arm and leg joints, and assign the humanoid robot animation model the corresponding rotation and movement control bones to achieve action reproduction under 3D animation software. The mapped action data is stored in the key frames of the time series.

[0042] In some frames, inverse kinematics solution problems may occur, such as singular positions and multiple solutions, resulting in inconsistent movements. For example, the robotic arm of a humanoid robot animation model has seven degrees of freedom. When the right hand is waving, a singular position may occur, resulting in movement penetration. The singular point position can be detected and processed in the following way.

[0043] The kinematic equation of the end position of the robot arm is: ,in, is the velocity vector of the end of the robot arm in the Cartesian coordinate system, belonging to (m=3, representing the position in three-dimensional space); is the angular displacement vector of each joint of the robot arm, with a length of n (n=7, representing the number of degrees of freedom of the robot arm); Contains the rotation and displacement information of each robot segment relative to other joints. and The form is:

[0044]

[0045] in, (i=1,…,7) is the joint angle of the robot arm, is the position component formed by the rotation matrix and displacement matrix of the i-th robotic arm relative to other robotic arm joints. The posture kinematic equation of the end of the robotic arm is:

[0046] in, is the angular velocity of the end of the robot relative to the body coordinate system, is the attitude Jacobian matrix, , It is the posture component formed by the transformation matrix and displacement matrix of the seventh section of the i-th robot arm.

[0047] Define the position and posture joint variables as , then , the Jacobian matrix Defined as ,because It is not a square matrix, so it is necessary to solve the motion law of each joint The generalized inverse of Calculate for .

[0048] When the robot moves to a singular position, The modulus value will approach or reach 0, and the condition number will tend to infinity; these two parameters change continuously when approaching singular positions, so they can be used as early warning indicators; Modulus of a matrix , condition number , take the inverse of the condition number, that is As an indicator.

[0049] When any of the indicators is lower than the set threshold, a singular point position warning will be triggered; during the mapping process, when a frame prompts a singular point position warning, it can be solved by adding action keyframes; create action keyframes before and after the problem frame to retain the action information of the fragments before and after the problem frame, and manually optimize and adjust the posture of the current humanoid robot animation model at the problem frame to get rid of the singular position, and cover the problem frame with the optimized action keyframe, thereby forming a new action frame fragment that avoids the singular point; among them, the intermediate action frame is supplemented by Bezier interpolation, and the arbitrary coordinates on the cubic Bezier curve are:

[0050] in, For the control point.

[0051] When interpolating two keyframes, first, determine them as the starting and ending points of the control points, ensure that they are located at both ends of the curve, and are tangent to the line connecting the adjacent points to ensure a smooth transition; then, select two other control points that have an important influence on the shape of the curve. Their positions directly affect the curvature and direction of the curve, thereby determining the path and curvature of the curve.

[0052] Step 3: Mapping action data extraction and optimization Specifically, step 3.1: After completing the motion mapping in the 3D animation software, the motion data of the humanoid robot animation model after mapping is obtained through the motion data extraction script. The motion data includes the position, linear velocity, angular velocity of the trunk, the position, velocity, acceleration and plantar force of each joint, etc. The extraction process is as follows: Figure 4 As shown, specifically: Import humanoid robot animation models and human visualization motion capture data; Create an empty list to store action data; Traverse each frame of action data of the mapped humanoid robot animation model; Get the motion data of each frame of the humanoid robot animation model; Add action data to the list; The final list is the extracted action data.

[0053] Step 3.2: Smooth the extracted motion data.

[0054] Specifically, the following smoothing operations are performed on the torso trajectory of the humanoid robot animation model, the motion trajectory of each joint, and the plantar force:

[0055] in, Represents the position of each joint of the humanoid robot model from the previous position Move to current location The required time interval, The number of animation frames per second set for mapping the action process in the 3D animation software Blender. is the average speed value at the current position.

[0056] Step 4: Humanoid robot stability control The key to humanoid robot motion control is to solve the joint torque through inverse dynamics, specifically: First, after the tasks of the trunk, arms, and legs are prioritized, the positions, velocities, and accelerations of each level of tasks are calculated by combining the trajectories of the trunk, arms, and legs and the plantar forces through zero-space mapping. Secondly, based on the acceleration and plantar force of each level of tasks, the humanoid robot's trunk dynamics equation is relaxed and optimized, and then the joint torque is obtained through the humanoid robot's whole body dynamics equation; Finally, the joint torque is used as the feedforward quantity, combined with the position and speed of each level of tasks, and the robot's joints are proportional-differential controlled to obtain the final joint torque. The current state of the humanoid robot is used as a known quantity to feed back to the controller, and the above process is repeated to complete the reproduction of the mapping action.

[0057] Specifically, step 4.1: after prioritizing the tasks of the trunk, arms, and legs, the positions, velocities, and accelerations of each level of tasks are calculated by combining the trunk, arms, and legs trajectories and the plantar forces through null space mapping; In order to reproduce the human body capture action, the task priority order is set as supporting leg, torso posture, arm posture, and swinging leg: Task 1: The supporting leg task provides the humanoid robot with the plantar force required to perform actions, which is the basis for realizing the actions of the humanoid robot.

[0058] Task 2: Torso posture task, which is a prerequisite for the humanoid robot to maintain stability, so it is ranked second priority to ensure the stability of the humanoid robot body.

[0059] Task 3: Arm posture task. Precise control of arm posture can enable the humanoid robot to present better movement effects.

[0060] Task 4: The swinging leg task has relatively little impact on the stability and motion reproduction effect of the humanoid robot, so the swinging leg foot task is ranked at the lowest priority.

[0061] Combined with the trunk, arm and leg trajectory data, according to the set task priority level, the position, velocity and acceleration of each joint on each task are calculated in turn through the null space mapping, specifically: Torso Trajectory Represents trunk posture task, corresponding plantar force represents the stance leg task, the leg trajectory represents the swing leg task, and the arm trajectory represents the arm posture task.

[0062] For two tasks of humanoid robots: Jacobian matrices of tasks 1 and 2 , The kinematic inverse solutions of their respective tasks and generalized joint states (generalized joint space, representing the angles of the robot arm joints, leg joints, and the virtual 6-DOF joints of the trunk) were completed, namely: , .

[0063] In general It's not a square array. The pseudo-inverse matrix of ,therefore Can be converted into , is the null space projection matrix, , which is to convert any Map to The null space of task 1 will not be cause any impact.

[0064] Will Substitute for Task 2 middle: , , so the generalized space vector of task 1 and task 2 is realized at the same time ,because is an idempotent Hermitian matrix, = , the generalized spatial state quantity of completing task 1 is recorded as , the generalized spatial state quantity that realizes both Task 1 and Task 2 is denoted as ,make , then .

[0065] Similarly, map the third task In the null space of the second task, we have ,in , ).

[0066] Expand the number of tasks When there is a task-level zero space mapping ,in , , .

[0067] Depend on (Position differentiation to obtain velocity), (Angular differential gives angular velocity) The iterative formula for position-level zero space mapping is obtained:

[0068] Will Differentiation gives the acceleration level zero space mapping iteration formula:

[0069] Through zero space mapping, priority control of robot multi-task can be achieved. The iterative formulas of position, velocity, and acceleration level of the nth level task are integrated as follows: Position level iteration formula:

[0070] Differentiate to get the speed level iteration formula:

[0071] Differentiate again to get the acceleration level iteration formula:

[0072] Through the above iterative solution, the position of the n-th level task is obtained ,speed , acceleration .

[0073] Step 4.2: Based on the acceleration and plantar force of each level of tasks, the humanoid robot's trunk dynamics equation is relaxed and optimized, and then the joint torque is obtained through the humanoid robot's whole body dynamics equation.

[0074] Replace the Recorded as , the torso dynamics equation of the humanoid robot is:

[0075] in, is the contact Jacobian matrix of the right foot, C represents contact, because there is contact force only when the leg and foot are in contact with the ground, and R represents the right foot; Represents the total contact Jacobian matrix obtained by combining the contact Jacobian matrices of each support leg; Represents the total contact force vector composed of the contact forces; Represents the 6-dimensional selection matrix of the torso, without adding is the dynamic equation of the whole body.

[0076] The two sides of the equation are not equal because the left side The plantar force on the right is obtained by zero space iteration, while the plantar force on the right is obtained by exporting the mapping action data of the humanoid robot animation model. Therefore, it is necessary to relax and optimize the trunk dynamics equation of the humanoid robot to obtain the appropriate The contact force satisfies the trunk dynamic equation.

[0077] The relaxation optimization process is as follows:

[0078]

[0079]

[0080]

[0081]

[0082]

[0083] in, , Plantar force for trajectory optimization The joint space acceleration obtained by iterating with the zero space The relaxed optimization solution that satisfies the trunk dynamics equations, and is the constraint amount of the plantar force.

[0084] In getting and Then, the corresponding joint torque can be obtained through the robot's whole body dynamics equation :

[0085] in, is the mass distribution matrix of the humanoid robot, where is the generalized Coriolis force matrix, is the generalized Coriolis force matrix, is the generalized gravity matrix, , Through null space iteration, we get is the plantar force of the mechanical leg, and are all relaxed optimization solutions that satisfy the trunk dynamics equations. represents the Jacobian matrix, represents the joint torque.

[0086] Step 4.3: Take the joint torque as the feedforward quantity, combine the position and speed of each level of tasks, perform proportional-differential control on the robot's joints, obtain the final torque of each joint of the humanoid robot, and use the current state of the humanoid robot as a known quantity to feed back to the controller, so as to cycle the above steps and complete the reproduction of the mapping action.

[0087] The joint torque obtained As the feedforward quantity, combined with the position and velocity of each level of tasks after zero space iteration and , perform joint PD (proportional-differential) control on the robot's physical joints to control the input torque as follows:

[0088] in, is the torque of the robot's physical joint motor, which is the joint torque The vector formed by removing the first 6-dimensional trunk virtual joint torque, is the proportional coefficient in proportional-derivative control, is the current joint angle value, is the current angular velocity of the joint.

[0089] Calculate the final torque of each joint of the humanoid robot The state of the humanoid robot at the current moment is used as a known quantity to feed back to the controller, thereby looping the above steps to complete the reproduction of the mapping action.

[0090] Example 2 In one embodiment of the present disclosure, a humanoid robot control system based on motion mapping is provided, including a model building module, a motion mapping module, a torque solving module and a motion control module: The model building module is configured to: build a humanoid robot animation model according to the distribution of the servos of the humanoid robot to be controlled, and perform skeleton binding; The motion mapping module is configured to: obtain human visual motion capture data of the action to be reproduced, perform joint-level motion mapping on the human visual motion capture data and the humanoid robot animation model, and obtain motion data such as the torso, arm and leg trajectories and plantar force of the mapped humanoid robot animation model; The torque solving module is configured to: prioritize tasks for the humanoid robot’s torso, arms, and legs, and solve joint torques through inverse dynamics in combination with smoothed motion data; The motion control module is configured to use the joint torque as a feedforward quantity to perform motion reproduction control on the humanoid robot.

[0091] Example 3 In one embodiment of the present disclosure, a computer program product is provided, including a computer program, and when the computer program is executed by a processor, the humanoid robot control method based on motion mapping is implemented.

[0092] Example 4 In one embodiment of the present disclosure, a non-transitory computer-readable storage medium is provided, wherein the non-transitory computer-readable storage medium is used to store computer instructions, and when the computer instructions are executed by a processor, the humanoid robot control method based on motion mapping is implemented.

[0093] Example 5 In one embodiment of the present disclosure, an electronic device is provided, including: a processor, a memory, and a computer program; wherein the processor is connected to the memory, the computer program is stored in the memory, and when the electronic device is running, the processor executes the computer program stored in the memory, so that the electronic device executes the humanoid robot control method based on motion mapping.

[0094] The present disclosure is described with reference to the flowcharts and / or block diagrams of the methods, devices (systems), and computer program products according to the embodiments of the present disclosure. It should be understood that each process and / or block in the flowchart and / or block diagram, as well as the combination of the processes and / or blocks in the flowchart and / or block diagram, can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, a special-purpose computer, an embedded processor, or other programmable data processing device to generate a machine, so that the instructions executed by the processor of the computer or other programmable data processing device generate instructions for implementing the processes in the flowchart and / or block diagram. Figure 1 A process or multiple processes and / or boxes Figure 1 A device that provides the functions specified in a block or multiple blocks.

[0095] These computer program instructions can also be loaded onto a computer or other programmable data processing device so that a series of operating steps are executed on the computer or other programmable device to produce a computer-implemented process, thereby providing instructions for implementing the process. Figure 1 A process or multiple processes and / or boxes Figure 1 The steps for the functions specified in one or more boxes.

[0096] Although the above describes the specific implementation methods of the present disclosure in conjunction with the accompanying drawings, it is not intended to limit the scope of protection of the present disclosure. Technical personnel in the relevant field should understand that on the basis of the technical solution of the present disclosure, various modifications or variations that can be made by those skilled in the art without creative work are still within the scope of protection of the present disclosure.

Claims

1. A humanoid robot control method based on motion mapping, characterized in that: include: According to the distribution of the servos of the humanoid robot to be controlled, the humanoid robot animation model is constructed and the skeleton binding is performed; Obtaining human visual motion capture data of the action to be reproduced, performing joint-level motion mapping between the human visual motion capture data and the humanoid robot animation model, and obtaining motion data of the mapped humanoid robot animation model; Prioritize tasks for the humanoid robot's torso, arms, and legs, and solve joint torques through inverse dynamics based on smoothed motion data; The joint torque is used as the feedforward quantity to perform the reproducible control of the humanoid robot's movements.

2. A humanoid robot control method based on motion mapping as claimed in claim 1, characterized in that: The humanoid robot animation model is constructed and skeleton binding is performed in 3D animation software. According to the distribution of the servos of the physical humanoid robot, the physical body is bound to the skeleton of the humanoid robot animation model one-to-one through skinning operation, and the parent-child relationship of the skeleton is set to form a complete humanoid robot animation model skeleton.

3. A humanoid robot control method based on motion mapping as claimed in claim 1, characterized in that: The joint-level action mapping is specifically: Adjust the skeleton size of the human visual motion capture data to match the limb length of the humanoid robot animation model skeleton; Establish sub-level constraints between the inverse kinematics control bones of the humanoid robot animation model skeleton and the corresponding bones of the human visual motion capture data skeleton, so that the motion trajectories of the extremities of the two are consistent; The rotation or movement data of each joint of the limbs of the humanoid robot animation model is obtained by inverse kinematics solution, so as to realize the motion mapping of the humanoid robot animation model; Extract motion data of the mapped humanoid robot animation model.

4. A humanoid robot control method based on motion mapping as claimed in claim 1, characterized in that: The task priorities of the humanoid robot's torso, arms and legs are graded, and the set task priority order is: supporting leg, torso posture, arm posture, swinging leg.

5. The humanoid robot control method based on motion mapping as claimed in claim 1, characterized in that: The joint torque is solved by inverse dynamics, specifically: Combine the trunk, arm and leg trajectories, and calculate the position, velocity and acceleration of each joint on each task in turn through null space mapping according to the set task priority level; Based on the position, velocity and acceleration of each joint, the trunk dynamics equation is used to perform relaxation optimization, and the joint torque is obtained by combining the whole body dynamics equation.

6. A humanoid robot control method based on motion mapping as claimed in claim 1, characterized in that: The reproducing control of the action of the humanoid robot is to use the joint torque as the feedforward quantity and to perform the reproducing control of the action through the proportional-differential control algorithm.

7. A humanoid robot control system based on motion mapping, characterized in that: Including model building module, motion mapping module, torque solving module and motion control module: The model building module is configured to: build a humanoid robot animation model according to the distribution of the servos of the humanoid robot to be controlled, and perform skeleton binding; The motion mapping module is configured to: obtain human visual motion capture data of the action to be reproduced, perform joint-level motion mapping on the human visual motion capture data and the humanoid robot animation model, and obtain motion data of the mapped humanoid robot animation model; The torque solving module is configured to: prioritize tasks for the humanoid robot’s torso, arms, and legs, and solve joint torques through inverse dynamics in combination with smoothed motion data; The motion control module is configured to use the joint torque as a feedforward quantity to perform motion reproduction control on the humanoid robot.

8. A computer program product, comprising a computer program, characterized in that When the computer program is executed by a processor, the method for controlling a humanoid robot based on motion mapping as described in any one of claims 1 to 6 is implemented.

9. A non-transitory computer-readable storage medium, characterized in that: The non-transitory computer-readable storage medium is used to store computer instructions, and when the computer instructions are executed by the processor, a humanoid robot control method based on motion mapping as described in any one of claims 1 to 6 is implemented.

10. An electronic device, characterized in that: include: A processor, a memory and a computer program; wherein the processor is connected to the memory, the computer program is stored in the memory, and when the electronic device is running, the processor executes the computer program stored in the memory so that the electronic device executes a humanoid robot control method based on motion mapping as described in any one of claims 1-6.

Citation Information

Patent Citations

  • Collaborative robot safety control method based on vision

    CN109822579A

  • Cartesian space trajectory transition method of industrial robot

    CN111791236A

  • Rehabilitation track acquisition method based on posture gesture teaching

    CN116749168A

  • Track generation and tracking control method and system for dancing of leg-arm collaborative robot

    CN116901084A

  • Method and system for image processing

    JP2003032687A

Cited By

  • Humanoid robot teleoperation method and device, computer equipment and storage medium

    CN120023814A

  • Humanoid robot teleoperation method and device, computer device and storage medium

    CN120023814B

  • Robot action redirection method, storage medium, electronic equipment and product

    CN121361117A

  • Model expert data generation method and device, equipment and medium

    CN121543766A

  • Humanoid robot anthropomorphic walking method fusing human motion redirection and model prediction control

    CN121696985A