Humanoid robot control method, device, system, electronic device and storage medium

By dynamically acquiring the spatial position of the working object, establishing a capture system model and solving the control parameters, the problem of inaccurate capture of the humanoid robot during movement is solved, and a stable and accurate capture effect is achieved.

CN119635621BActive Publication Date: 2025-09-05广州里工实业有限公司
View PDF 3 Cites 0 Cited by

Patent Information

Application Number
CN202411598804.6
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2024-11-11
Publication Date
2025-09-05
Estimated Expiration
2044-11-11

AI Technical Summary

Technical Problem

When facing a moving work object, the existing technology makes it difficult for humanoid robots to accurately capture and control instability.

Method used

By dynamically acquiring the spatial position of the work object, a capture system model is established, and the end posture angle and intermediate joint angle are solved using the motion decomposition controller and the capture system model to determine the control parameters, thereby controlling the humanoid robot to capture the work object.

Benefits of technology

It achieves stable and accurate capture of moving work objects, improves the accuracy and stability of robot movement, and adapts to various complex and changing working environments.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119635621B_ABST
    Figure CN119635621B_ABST
Patent Text Reader

Abstract

The present application discloses a humanoid robot control method, device, system, electronic device, and storage medium, and relates to the field of robotics. The method includes: dynamically acquiring the spatial position of a moving work object; establishing a capture system model based on the spatial position; wherein the capture system model is used to describe the numerical relationship between the end attitude angles of the two arms of the humanoid robot and the bipedal walking parameters, as well as the numerical relationship between the end attitude angles and the intermediate joint angles of the corresponding arms; obtaining the end attitude angles and the intermediate joint angles based on the motion decomposition controller and the capture system model; determining the control parameters of the humanoid robot based on the end attitude angles and the intermediate joint angles; and controlling the humanoid robot to capture the work object based on the control parameters. The present application solves the motion decomposition controller and determines the control parameters based on the capture system model, thereby controlling the humanoid robot to stably and accurately capture the moving work object.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the field of robotics technology, and in particular to a method, device, system, electronic device, and storage medium for controlling a humanoid robot. Background Art

[0002] In many scenarios, humanoid robots need to capture moving objects, such as in logistics and industrial production. However, current capture control schemes suffer from difficulties in accurately capturing moving objects and unstable control. Summary of the Invention

[0003] The main purpose of the embodiments of the present application is to provide a humanoid robot control method, device, system, electronic device and storage medium to enable the humanoid robot to accurately capture a moving work object.

[0004] To achieve the above objectives, an embodiment of the present application provides a method for controlling a humanoid robot, the method comprising the following steps:

[0005] Dynamically obtain the spatial position of the work object in a moving state;

[0006] Establishing a capture system model based on the spatial position; wherein the capture system model is used to describe the numerical relationship between the end posture angles of the two arms of the humanoid robot and the bipedal walking parameters, and the numerical relationship between the end posture angles and the intermediate joint angles of the corresponding arms;

[0007] Obtaining the end attitude angle and the intermediate joint angle by solving the motion decomposition controller and the capture system model;

[0008] determining control parameters of the humanoid robot according to the terminal posture angle and the intermediate joint angle;

[0009] The humanoid robot is controlled to capture the work object according to the control parameters.

[0010] In some embodiments, dynamically acquiring the spatial position of the moving work object includes the following steps:

[0011] The spatial position of the working object in a moving state is dynamically acquired through one or at least two sensors on the humanoid robot; wherein the sensors include an RGBD sensor and a laser radar.

[0012] In some embodiments, establishing a capture system model according to the spatial position comprises the following steps:

[0013] Constructing a DH parameter table for each joint in the humanoid robot's arms;

[0014] Obtaining a homogeneous transformation matrix for each joint according to the DH parameter table;

[0015] determining a desired end pose of an end effector of the humanoid robot according to the spatial position;

[0016] The numerical relationship between the terminal posture angle and the intermediate joint angle is solved according to the desired terminal posture and each of the homogeneous transformation matrices to obtain the capture system model.

[0017] In some embodiments, the step of obtaining the end attitude angle and the intermediate joint angle based on the motion decomposition controller and the capture system model comprises the following steps:

[0018] Determining a control relationship model based on the capture system model; wherein the control relationship model is used to describe the numerical relationship between the parameters of the motion decomposition controller and the terminal posture angle, and the numerical relationship between the parameters of the motion decomposition controller and the intermediate joint angle;

[0019] Constructing a cost function based on the work object;

[0020] The cost function is used to constrain the control relationship model, and the motion decomposition controller is then used to solve the optimization problem of the control relationship model to obtain the end posture angle and the intermediate joint angle.

[0021] In some embodiments, constructing a cost function based on the work object includes the following steps:

[0022] The cost function based on the work object is constructed as:

[0023]

[0024] Among them, J c represents the cost function; θ a and θ b are the end attitude angles of the left arm and the right arm of the humanoid robot respectively, and are the current end posture angles of the left arm and the right arm respectively, θ=[θ 1, θ 2, θ 3, θ 4, θ5] T is the middle joint angle of the arm, and the middle joint angles of the left arm and the right arm are respectively expressed as θ l and θ r , is the current arm middle joint angle; μ∈R 8x1 is the weight vector of each joint of the left arm and the right arm, and are the terminal angular velocities of the left and right arms, respectively. are the walking parameters of the humanoid robot, and λ1, λ2, λ3, λ4, and λ5 are the weights corresponding to the walking parameters.

[0025] In some embodiments, determining the control parameters of the humanoid robot based on the end posture angle and the intermediate joint angle includes the following steps:

[0026] An impedance characteristic function of the humanoid robot is determined according to the terminal posture angle and the intermediate joint angle; and the control parameter is determined according to the impedance characteristic function.

[0027] In some embodiments, controlling the humanoid robot to capture the work object according to the control parameters comprises the following steps:

[0028] driving the bipedal motion of the humanoid robot according to the control parameters to drive the humanoid robot to a target position matching the spatial position of the work object; and then controlling the end effector of the humanoid robot to capture the work object according to the control parameters;

[0029] Alternatively, the spatial position, motion state and motion state of the work object and the humanoid robot are continuously monitored, and the control parameters are dynamically adjusted; and at least one of the end posture angle, the intermediate joint angle and the grasping mode of the end effector is adjusted according to the adjusted control parameters, so that the end effector grasps the work object.

[0030] To achieve the above objectives, another aspect of the present application provides a humanoid robot control device, the device comprising:

[0031] A position acquisition unit, used to dynamically acquire the spatial position of a work object in a moving state;

[0032] a model building unit, configured to build a capture system model based on the spatial position; wherein the capture system model is configured to describe the numerical relationship between the end attitude angles of the two arms of the humanoid robot and the bipedal walking parameters, and the numerical relationship between the end attitude angles and the intermediate joint angles of the corresponding arms;

[0033] An angle solving unit, used for solving the end posture angle and the intermediate joint angle according to the motion decomposition controller and the capture system model;

[0034] a parameter determination unit, configured to determine control parameters of the humanoid robot according to the terminal posture angle and the intermediate joint angle;

[0035] An object capturing unit is used to control the humanoid robot to capture the working object according to the control parameters.

[0036] To achieve the above-mentioned purpose, another aspect of an embodiment of the present application provides an electronic device, which includes a memory and a processor, wherein the memory stores a computer program, and the processor implements the above-mentioned humanoid robot control method when executing the computer program.

[0037] To achieve the above-mentioned purpose, another aspect of an embodiment of the present application provides a computer-readable storage medium, wherein the computer-readable storage medium stores a computer program, and when the computer program is executed by a processor, the above-mentioned humanoid robot control method is implemented.

[0038] The embodiments of the present application include at least the following beneficial effects:

[0039] The present application can dynamically obtain the spatial position of a moving work object; establish a capture system model based on the spatial position; wherein the capture system model is used to describe the numerical relationship between the end attitude angles of the two arms of the humanoid robot and the bipedal walking parameters, as well as the numerical relationship between the end attitude angles and the intermediate joint angles of the corresponding arms; obtain the end attitude angles and the intermediate joint angles based on the motion decomposition controller and the capture system model; determine the control parameters of the humanoid robot based on the end attitude angles and the intermediate joint angles; and control the humanoid robot to capture the work object based on the control parameters. By modeling the capture system and the capture contact process of the humanoid robot to obtain a capture system model, and solving the motion decomposition controller and determining the control parameters based on the capture system model, the present application can control the humanoid robot to stably and accurately capture the moving work object. BRIEF DESCRIPTION OF THE DRAWINGS

[0040] In order to more clearly illustrate the technical solutions in the embodiments of the present application, the following briefly introduces the drawings required for use in the description of the embodiments. Obviously, the drawings described below are only some embodiments of the present application. For ordinary technicians in this field, other drawings can be obtained based on these drawings without any creative work.

[0041] Figure 1 A schematic flow chart of a humanoid robot control method provided in an embodiment of the present application;

[0042] Figure 2 An example flow chart of a humanoid robot control method provided in an embodiment of the present application;

[0043] Figure 3 A structural block diagram of a control system of a humanoid robot provided in an embodiment of the present application;

[0044] Figure 4A schematic diagram of an optional humanoid robot provided in an embodiment of the present application;

[0045] Figure 5 A schematic diagram of a humanoid robot and a work object provided in an embodiment of the present application;

[0046] Figure 6 An example block diagram of a control system for a humanoid robot provided in an embodiment of the present application;

[0047] Figure 7 A schematic diagram of the structure of a humanoid robot control device provided in an embodiment of the present application;

[0048] Figure 8 A schematic diagram of the hardware structure of an electronic device provided in an embodiment of the present application. DETAILED DESCRIPTION

[0049] In order to make the purpose, technical solutions and advantages of the present application clearer, the present application is further described in detail below with reference to the accompanying drawings and examples. It should be understood that the specific embodiments described herein are only used to explain the present application and are not intended to limit the present application. When the following description refers to the drawings, unless otherwise indicated, the same numbers in different drawings represent the same or similar elements. The embodiments described in the following exemplary embodiments do not represent all embodiments consistent with the embodiments of the present application. They are merely examples of devices and methods consistent with some aspects of the embodiments of the present application as detailed in the appended claims.

[0050] It will be understood that the terms "first", "second", etc. used in this application may be used herein to describe various concepts, but unless otherwise specified, these concepts are not limited by these terms. These terms are only used to distinguish one concept from another. For example, without departing from the scope of the embodiments of the present application, the first information may also be referred to as the second information, and similarly, the second information may also be referred to as the first information. Depending on the context, the words "if" and "if" as used herein may be interpreted as "at the time of" or "when" or "in response to determining".

[0051] The terms "at least one", "plurality", "each", "any", etc. used in this application include "at least one", "two" or more, "plurality" or "each", "any" or "any one", "each" or "any one" as used herein.

[0052] Unless otherwise defined, all technical and scientific terms used herein have the same meaning as commonly understood by those skilled in the art to which this application pertains. The terms used herein are for the purpose of describing the embodiments of this application only and are not intended to limit this application.

[0053] Reference Figure 1 The present application provides a method for controlling a humanoid robot. The method may include but is not limited to S100 to S140, as follows:

[0054] S100: Dynamically obtain the spatial position of a work object in a moving state.

[0055] It is understandable that the position of the moving work object changes continuously, so this embodiment can obtain the spatial position of the work object in real time.

[0056] Furthermore, S100 may include S101:

[0057] S101: Dynamically acquire the spatial position of the working object in a moving state through one or at least two sensors on the humanoid robot; wherein the sensors include an RGBD sensor and a laser radar.

[0058] Exemplarily, one or more sensors on the body of the humanoid robot, which are RGBD sensors and / or lidars, perceive and judge the positional relationship between the work object and the humanoid robot through sensor data, and then obtain the spatial position.

[0059] S110: Establishing a capture system model according to the spatial position; wherein the capture system model is used to describe the numerical relationship between the end posture angles of the humanoid robot's arms and the bipedal walking parameters, as well as the numerical relationship between the end posture angles and the intermediate joint angles of the corresponding arms.

[0060] Specifically, the arms of the humanoid robot of this embodiment include multiple joints, such as arm joints and end effector joints, and the intermediate joint angle is the angle between the arm joints and the end effector joints.

[0061] Furthermore, S110 may include S111 to S114:

[0062] S111: Constructing a DH parameter table for each joint in the arms of the humanoid robot;

[0063] S112: Obtaining a homogeneous transformation matrix of each joint according to the DH parameter table;

[0064] S113: Determining a desired end pose of the end effector of the humanoid robot according to the spatial position;

[0065] S114: Solve the numerical relationship between the terminal posture angle and the intermediate joint angle according to the desired terminal posture and each of the homogeneous transformation matrices to obtain the capture system model.

[0066] Specifically, the DH parameter table is a table used to describe the kinematic characteristics of a robot or manipulator. It includes parameters such as X-axis rotation (α), X-axis translation (a), Z-axis rotation (θ), and Z-axis translation (d). These parameters are very important in forward kinematics and inverse kinematics, and can be used to describe the position and posture of the robot or manipulator.

[0067] The specific meaning of DH parameters:

[0068] X-axis rotation (α): Indicates the robot's rotation angle on the X-axis. This parameter is used to describe the robot's rotational movement in the X-axis direction. For example, if the robot rotates 90 degrees in the X-axis direction, the value of α is 90 degrees.

[0069] X-axis translation (a): Indicates the robot's translation distance on the X-axis. This parameter is used to describe the robot's linear motion in the X-axis direction. For example, if the robot moves 100 mm in the X-axis direction, the value of a is 100 mm.

[0070] Z-axis rotation (θ): Indicates the robot's rotation angle on the Z axis. This parameter is used to describe the robot's rotational movement in the Z-axis direction. For example, if the robot rotates 45 degrees in the Z-axis direction, the value of θ is 45 degrees.

[0071] Z-axis translation (d): Indicates the translation distance of the robot on the Z axis. This parameter is used to describe the linear motion of the robot in the Z-axis direction. For example, if the robot moves 50 mm in the Z-axis direction, the value of d is 50 mm1.

[0072] Application of DH parameters in robot kinematics:

[0073] The DH parameter table is very important in robot kinematics because it helps describe the robot's motion trajectory and posture. When using the DH parameter table, you need to select appropriate parameter values ​​based on the actual situation to ensure that the robot's motion trajectory and posture meet the actual requirements.

[0074] S120: Obtain the end posture angle and the intermediate joint angle according to the motion decomposition controller and the capture system model.

[0075] Specifically, the end posture angle and intermediate joint angle solved in this embodiment are adapted to the current spatial position of the work object, and based on the end posture angle and intermediate joint angle, the end effector of the humanoid robot can be controlled to capture the work object in motion.

[0076] Furthermore, S120 may include S121 to S123:

[0077] S121: Determine a control relationship model based on the capture system model; wherein the control relationship model is used to describe the numerical relationship between the parameters of the motion decomposition controller and the end posture angle, as well as the numerical relationship between the parameters of the motion decomposition controller and the intermediate joint angle.

[0078] Specifically, the meaning and function of the motion decomposition controller are as follows:

[0079] Definition: A motion decomposition controller is a control mechanism used to decompose the overall motion goal or task of a humanoid robot into specific motion instructions for each joint and limb. Based on the robot's kinematic and dynamic models, the motion decomposition controller uses specific algorithms and calculations to convert the desired end-effector motion (such as the movement of a dexterous hand) into control parameters such as the angle, velocity, and acceleration of each joint, thereby achieving precise control of the humanoid robot's overall motion.

[0080] effect:

[0081] 1. Achieve precise control of complex motion: Humanoid robots have multiple degrees of freedom, and their motion is the result of the coordinated action of multiple joints. A motion decomposition controller can decompose complex overall motion goals, such as capturing a moving object, into the specific actions of each joint, ensuring that each joint moves according to the predetermined trajectory and speed. This enables precise position control and posture adjustment, improving capture accuracy.

[0082] 2. Adaptability to diverse work scenarios and task requirements: In different work scenarios, the motion state and position of the work object may vary, placing varying demands on the humanoid robot's motion. The motion decomposition controller can flexibly adjust the motion parameters of each joint based on specific task requirements, enabling the robot to adapt to diverse and complex work environments and complete a variety of capture tasks.

[0083] 3. Optimizing the robot's kinematic performance: By rationally distributing joint motion, the humanoid robot's kinematic performance can be optimized. For example, while ensuring the ability to complete a capture task, the motion decomposition controller can minimize joint motion amplitude and velocity variations, thereby reducing energy consumption, reducing joint wear, and extending the robot's service life. It also improves the smoothness and fluidity of the robot's motion.

[0084] 4. Handling kinematic and dynamic constraints: Humanoid robots' joints are subject to constraints such as range of motion and speed limits, and are also affected by dynamic factors such as inertia, friction, and gravity. The motion decomposition controller fully considers these constraints and factors when calculating joint motion parameters, ensuring that the generated control instructions are physically feasible, avoiding movements that exceed joint limits or become unstable, and ensuring safe and reliable robot motion.

[0085] 5. Improve system response speed and stability: When faced with rapidly changing workpieces, the motion decomposition controller can quickly calculate the response movements of each joint, enabling the robot to adjust its posture and position in a timely manner, improving the system's response speed. At the same time, through precise control and consideration of dynamic characteristics, it also enhances the stability of the robot's motion, reduces the impact of external interference on the capture task, and ensures that the robot can stably approach and capture the workpiece.

[0086] Next, the parameters of the motion decomposition controller in this embodiment are described. The parameters are as follows:

[0087] Joint angle parameters: including the joint angles θ of the humanoid robot's arms l1 ,θ l2 ,θ l3 ,θ l4 ,θ l5 (left arm joint angle) and θ r1 ,θ r2 ,θ r3 ,θ r4 ,θ r5 (right arm joint angle), and the joint angles θ′ of both feet l1 ,θ′ l2 ,θ′ l3 ,θ′ l4 ,θ′ l5 (left leg joint angle) and θ′ r1 ,θ′ r2 ,θ′ r3 ,θ′ r4 ,θ′ r5 (right leg joint angle). The above parameters directly determine the position and posture of the humanoid robot's limbs.

[0088] Joint angular velocity parameters:

[0089] The angular velocity parameters of the joints of the arms and legs are crucial for controlling the speed and direction of the humanoid robot's movement. They affect whether the humanoid robot can reach the target position and adjust its posture in a timely and accurate manner.

[0090] Joint angular acceleration parameters: Similarly, there are joint angular acceleration parameters, such as The angular acceleration parameter is very important when it is necessary to quickly start, stop or change the direction of movement. It determines the dynamic response characteristics of the humanoid robot joint motion.

[0091] Weight parameters: The weight parameters λ1, λ2, λ3, λ4, and λ5 involved in the cost function are also important parameters of the motion decomposition controller. These weights are used to balance the importance of different control objectives. For example, λ1 adjusts the relationship between the end-point attitude angle and the intermediate joint angles, λ2 controls the joint motion speed, λ3 and λ4 weight the end-point attitude angular velocities of the left and right arms, respectively, and λ5 weights the parameters related to bipedal walking. Different weight settings affect the robot's motion strategy and performance.

[0092] Other dynamic parameters: These may also include parameters related to the robot's dynamic characteristics, such as the joint inertia matrix, friction coefficient, and gravity compensation parameters. These parameters are used to accurately describe the various forces and torques affecting the robot during motion, enabling the motion decomposition controller to more accurately calculate the required control instructions to overcome the interference of these dynamic factors and achieve stable motion control.

[0093] Next, the numerical relationship between the parameters of the motion decomposition controller and the end attitude angle is explained.

[0094] Forward kinematics relationship: With known joint angle parameters, the position and posture of the end effector (such as the hand), that is, the end posture angle, can be calculated using the forward kinematics equation. Taking the right arm as an example, the homogeneous transformation matrix from the base to the end of the right arm is: This matrix can be used to determine the position and posture of the right arm end in space, including the end attitude angle. The left arm and legs are similarly calculated using their respective homogeneous transformation matrices to determine the corresponding end attitude angles.

[0095] Inverse kinematics relationship: Given the desired end-point posture angle, the motion decomposition controller uses the inverse kinematics algorithm to solve the angle parameters of each joint. This process is usually a complex numerical calculation process. It is necessary to find the joint angle combination that meets the end-point posture angle requirements through iteration or other numerical solution methods based on the specific structure and kinematic model of the robot. For example, if a desired end-point posture angle of the right arm is given, the corresponding θ can be obtained by solving the corresponding inverse kinematics equation. r1 ,θ r2 ,θ r3 ,θ r4 ,θ r5 value.

[0096] Optimization relationship based on cost function: The motion decomposition controller optimizes the relationship between parameters such as the end posture angle and the joint angle by constructing a cost function, such as the cost function of this embodiment. Please refer to the description of the cost function below for details.

[0097] S122: Constructing a cost function based on the work object.

[0098] Specifically, the method for solving the cost function optimization problem includes the following steps:

[0099] Typically, numerical optimization algorithms are used to solve the cost function optimization problem. The following are optional solution steps:

[0100] Step 1, Initialization: First, parameters such as joint angles and angular velocities need to be initialized. These initial values ​​can be determined based on the robot's initial state or some empirical data. For example, all joint angles can be set to zero, or a reasonable initial guess can be made based on the robot's current posture and the general direction of the task.

[0101] Step 2: Calculate the cost function value: According to the current joint angle, angular velocity and other parameter values, substitute them into the cost function expression to calculate the current cost function value J c .

[0102] Step 3, calculate the gradient: for the cost function J c Regarding various parameters (such as joint angle θ, angular velocity etc.) to find the partial derivative and obtain the gradient vector of the cost function The gradient vector represents the rate of change of the cost function under the current parameter value, and its direction points to the direction in which the cost function value increases fastest. Our goal is to find the parameter value that minimizes the cost function value, so we need to search in the opposite direction of the gradient.

[0103] Step 4: Determine the search direction: According to the calculated gradient vector Determine the search direction. A common approach is to use the negative gradient as the search direction, that is, to search in the direction that causes the cost function to decrease the fastest. However, in practical applications, to improve search efficiency and avoid getting stuck in local minima, improved search strategies such as the conjugate gradient method and the quasi-Newton method may be used. These methods adjust the search direction based on previous search information.

[0104] Step 5: Determine the step size: After determining the search direction, the step size α for each search must be determined. The choice of step size directly impacts the convergence speed and stability of the optimization algorithm. If the step size is too large, the algorithm may diverge and fail to converge to the optimal solution; if the step size is too small, the algorithm will converge very slowly. Typically, a suitable step size can be determined using line search methods, such as the golden section method and quadratic interpolation. These methods seek the step size that maximizes the decrease in the cost function along the search direction.

[0105] Step 6, update parameters: Update the values ​​of parameters such as joint angle and angular velocity according to the determined search direction and step size. For example, for the joint angle parameter, the update formula can be expressed as:

[0106]

[0107] where θ new is the updated joint angle value, θ old is the current joint angle value, α is the step size, is the gradient vector of the cost function at the current joint angle value.

[0108] Convergence determination: Repeat steps 2 to 6 above, continuously updating parameters and calculating the cost function value, until the convergence condition is met. The convergence condition can be set according to the specific situation. For example, when the change in the cost function value is less than a certain threshold, or the change in the parameter is less than a certain threshold, the algorithm is considered to have converged to the optimal solution.

[0109] As an optional implementation, the cost function constructed in S122 may be expressed as:

[0110]

[0111] Among them, J c represents the cost function; θ a and θ b are the end attitude angles of the left arm and the right arm of the humanoid robot respectively, and are the current end posture angles of the left arm and the right arm respectively, θ=[θ 1, θ 2, θ 3, θ 4, θ5] T is the middle joint angle of the arm, and the middle joint angles of the left arm and the right arm are respectively expressed as θ l and θ r , is the current arm middle joint angle; μ∈R 8x1 is the weight vector of each joint of the left arm and the right arm, and are the terminal angular velocities of the left and right arms, respectively. are the walking parameters of the humanoid robot, and θ1, λ2, λ3, λ4, and λ5 are the weights corresponding to the walking parameters.

[0112] S123: Utilize the cost function to constrain the control relationship model, and then utilize the motion decomposition controller to solve the optimization problem of the control relationship model to obtain the end posture angle and the intermediate joint angle.

[0113] Specifically, by solving the optimization problem of the cost function, not only the end posture angle can be obtained, but also the intermediate joint angles and other related parameters can be obtained.

[0114] End-point pose angle: This is one of the main objectives of the optimization problem. By minimizing the cost function, we find the end-point pose angle that allows the robot's end effector (such as a hand) to approach the work object with the optimal posture. These end-point pose angles will be used to control the movement of the robot's arms, enabling it to accurately capture the moving work object.

[0115] Intermediate joint angle: During the solution process, the cost function contains items related to the intermediate joint angle, such as:

[0116] Therefore, during the optimization process, the intermediate joint angles are adjusted simultaneously to find the optimal overall combination of joint angles. This allows the robot to meet the required terminal posture angles while ensuring reasonable joint motion and minimizing energy consumption. Therefore, when solving the optimization problem, the corresponding intermediate joint angles are obtained. These intermediate joint angles, along with the terminal posture angles, are used to control the motion of the robot's arms, ensuring that the robot can complete the capture task with the appropriate posture and motion.

[0117] Other parameters: In addition to the end-point attitude angle and intermediate joint angles, solving the optimization problem may also yield the optimal values ​​of other related parameters, such as joint angular velocity and angular acceleration. These parameters are crucial for controlling the robot's motion speed and dynamic response characteristics. Together with the joint angles, they are converted into actual drive signals by the robot's control system, controlling the motors or actuators in each joint of the robot. This allows the robot to move along the optimal trajectory and speed, enabling efficient and stable capture of moving objects.

[0118] S130: Determine control parameters of the humanoid robot according to the end posture angle and the intermediate joint angle.

[0119] It can be understood that the control parameters of this embodiment can determine the motion state of the humanoid robot, that is, the humanoid robot is driven to perform corresponding actions based on the control parameters to capture the moving work object.

[0120] Furthermore, S130 may include S131 to S132:

[0121] S131: Determine the impedance characteristic function of the humanoid robot according to the terminal posture angle and the intermediate joint angle.

[0122] Illustratively, this embodiment provides an optional impedance characteristic function as follows:

[0123]

[0124] Among them, Z SM (s,θ) represents the impedance characteristic function, s represents the Laplace variable, θ represents the intermediate joint angle vector, F(s,θ) represents the Laplace transform of the force and torque vector associated with the intermediate joint angle, and X(s,θ) represents the Laplace transform of the force and end position vector associated with the intermediate joint angle.

[0125] S132: Determine the control parameter according to the impedance characteristic function.

[0126] S140: Controlling the humanoid robot to capture the work object according to the control parameters.

[0127] Specifically, this embodiment can utilize the controller in the humanoid robot to control the humanoid robot to perform corresponding actions according to the control parameters, so as to capture the moving work object.

[0128] Furthermore, S140 may include S141 or S142:

[0129] S141: driving the bipedal movement of the humanoid robot according to the control parameters to drive the humanoid robot to reach a target position that matches the spatial position of the work object; and then controlling the end effector of the humanoid robot to capture the work object according to the control parameters;

[0130] S142: Continuously monitor the spatial position, motion state of the work object and the motion state of the humanoid robot, and then dynamically adjust the control parameters; adjust the end posture angle, the intermediate joint angle and at least one of the grasping mode of the end effector according to the adjusted control parameters, so that the end effector grasps the work object.

[0131] It is understandable that if the humanoid robot is far away from the work object, making it impossible for the end effector to capture the work object, this embodiment can drive the bipedal movement of the humanoid robot to move the humanoid robot near the work object and then capture it.

[0132] Alternatively, when the end effector of the humanoid robot is close to the work object, the humanoid robot is directly controlled to capture the work object. In the case of S141, when the humanoid robot approaches the work object, the capture method can be performed according to S142.

[0133] Next, the solution of the embodiment of the present application will be introduced and explained in detail with reference to specific application examples.

[0134] Reference Figure 2, this embodiment provides an example flow chart of a humanoid robot control method. Figure 3 The structural block diagram of a control system of a humanoid robot.

[0135] Specifically, this embodiment may include:

[0136] 1. Capture system module, used to establish capture system model.

[0137] 1.1 Real-time perception of work object movement:

[0138] Various sensors, such as visual sensors and distance sensors, are used to continuously monitor the position, speed, and direction of movement of the work object. The sensors of this embodiment can be installed on the head, hands, or other parts of the humanoid robot to fully perceive the movement state of the work object.

[0139] The motion position information of the working object is updated in real time according to the sensor data and input into the capture system model.

[0140] 1.2 Dynamically establish capture system model:

[0141] When the work object is in motion, the capture system model dynamically adjusts the numerical relationship between the end-effector pose angle and the intermediate joint angle based on the real-time updated work object position information. For example, if the work object moves to the left, the model will adjust the joint angles of the humanoid robot's arm and body accordingly to ensure that the end effector (such as a dexterous hand) can adjust its position and pose in the direction of the work object's motion.

[0142] Taking into account the workpiece's velocity and acceleration, the capture system model predicts the workpiece's future position and adjusts the humanoid robot's joint angles in advance to enable timely capture when the workpiece reaches the predicted position. This requires the development of a prediction model based on kinematics and dynamics, combining the workpiece's current motion state with environmental factors to predict its future trajectory.

[0143] 2. Control strategy design module, used to design control strategies.

[0144] 2.1 Motion decomposition controller adapts to moving objects:

[0145] The motion decomposition controller adjusts the control strategy in real time based on the workpiece's motion state. For example, if the workpiece moves quickly, the controller increases the speed and acceleration of the humanoid robot's joints to ensure the robot can quickly respond and catch up with the workpiece.

[0146] Taking into account the changes in the workpiece's direction of motion, the controller adjusts the humanoid robot's joint angles, enabling the robot to flexibly change direction to track and capture the moving workpiece. For example, if the workpiece suddenly turns, the controller quickly calculates the appropriate joint angle adjustment plan, allowing the robot to quickly turn and continue tracking the workpiece.

[0147] 2.2 End attitude angle optimization for moving objects:

[0148] To better capture a moving object, the control strategy design module optimizes the end-point attitude angle based on the object's motion characteristics. For example, if the object is a fast-moving ball, the end-point attitude angle can be adjusted to a more open position to more easily surround and capture the ball.

[0149] Taking into account the shape and size of the work object, the end-point attitude angle can be adjusted accordingly to ensure that the humanoid robot's hand (such as a dexterous hand) or other actuator can approach and grasp the work object with the optimal posture. For example, if the work object is a long object, the end-point attitude angle can be adjusted to a more parallel state to better grasp the object.

[0150] 3. A control parameter determination module is used to determine the control parameters.

[0151] 3.1 Dynamically adjust control parameters:

[0152] Based on the workpiece's motion state and the outputs from the capture system model and control strategy design modules, the control parameter determination module dynamically adjusts the humanoid robot's control parameters. For example, if the workpiece accelerates, the control parameter determination module increases the driving torque of the robot's joints to increase the robot's speed and acceleration to keep up with the workpiece's motion.

[0153] Taking into account the uncertainty of the workpiece's motion, the control parameter determination module can employ an adaptive control algorithm to adjust control parameters in real time, ensuring that the humanoid robot maintains stable capture performance under varying motion conditions. For example, if the workpiece's trajectory suddenly changes, the adaptive control algorithm can quickly adjust the robot's control parameters, enabling the robot to quickly adapt to the new motion and continue capturing.

[0154] 3.2 Determine parameters considering the characteristics of the moving object:

[0155] The control parameter determination module determines appropriate control parameters based on the work object's characteristics, such as weight, shape, and material. For example, if the work object is heavy, the control parameter determination module will increase the driving torque of the robot's joints to ensure a stable grip. If the work object is soft, the control parameter determination module will adjust the gripping force of the robot's hand to avoid damage to the work object.

[0156] 4. Capture module, used to capture the work object.

[0157] 4.1 Real-time control of humanoid robots to capture moving objects:

[0158] The capture module determines the control parameters of the module output based on the control parameters, controlling the humanoid robot's movement in real time, enabling it to accurately approach and capture a moving workpiece. For example, the capture module can control the humanoid robot's bipedal locomotion, enabling it to quickly move close to the workpiece. Simultaneously, it controls the robot's two arms to coordinate, adjusting the end-arm posture angle and intermediate joint angles to enable the robot's hands to approach and grasp the workpiece in the optimal posture.

[0159] During the capture process, the capture module continuously monitors the position and motion of the work object, as well as the motion of the humanoid robot, adjusting control parameters in real time to ensure capture accuracy and stability. For example, if the work object suddenly accelerates or changes direction, the capture module quickly adjusts the robot's motion to enable it to continue tracking and capturing the work object.

[0160] 4.2 Dealing with the movement changes of the working object:

[0161] If the object changes during the capture process, such as a sudden increase in speed or a change in shape, the capture module quickly responds and adjusts its control strategy. For example, if the object speeds up, the capture module increases the robot's speed and acceleration to ensure it can keep up with the object's movement. If the object's shape changes, the capture module adjusts the robot's gripping method to accommodate the new shape.

[0162] The capture module can also use a feedback control algorithm to adjust control parameters in real time based on the actual capture results to improve the capture success rate. For example, if the capture fails on the first try, the feedback control algorithm can analyze the cause of the failure and adjust the robot's motion and capture strategy for a second attempt.

[0163] In summary, this embodiment can perceive the motion state of the working object in real time, dynamically adjust the capture system model, control strategy and control parameters to adapt to the moving working object, and achieve efficient and stable capture of the working object through precise control.

[0164] Next, a more specific embodiment will be described.

[0165] 1. Establish capture system model:

[0166] Reference Figure 4 and Figure 5 , this embodiment provides an optional humanoid robot. Among them, Figure 4 10 is connecting rod 1, 11 is connecting rod 2, 12 is connecting rod 3, and 30 is the dexterous hand. Figure 5 Here, 20 is the rotary joint 1, 21 is the rotary joint 2, 22 is the rotary joint 3, 23 is the rotary joint 4, 24 is the rotary joint 5, and 100 is the working object. Figure 6 Example block diagram of a control system for a humanoid robot.

[0167] Construct parameter tables and transformation matrices: Construct parameter tables related to each joint of the humanoid robot to obtain a series of homogeneous transformation matrices. For two arms, each arm has 5 degrees of freedom. The homogeneous transformation matrix is ​​constructed as follows (taking the right arm as an example):

[0168]

[0169] Among them, θ r1 ,θ r2 ,θ r3 ,θ r4 ,θ r5 are the joint rotations of the right arm respectively. The homogeneous transformation matrix of the left arm is similar.

[0170] For bipeds, each leg has 5 degrees of freedom, of which the ankle joint has one degree of freedom, and the other 2 degrees of freedom are at the hip joint to achieve lateral swing and rotation. The homogeneous transformation matrix is ​​constructed as follows (taking the right leg as an example):

[0171]

[0172]

[0173] Among them, θ′ r1 and θ′ r2 are the lateral and rotational degrees of freedom of the hip joint, θ′ r4 is the degree of freedom rotation of the knee joint, θ′ r5 is the degree of freedom of the ankle joint, l′1 is the length of the thigh. The homogeneous transformation matrix of the left leg is similar.

[0174] According to the above homogeneous transformation matrix, the transformation relationship between the spatial coordinates of adjacent joints of the humanoid robot can be obtained.

[0175] Determine the desired end-position: Determine the desired end-position of the humanoid robot hand or other actuator based on the motion position of the work object.

[0176] Solve the numerical relationship: According to the desired end-point posture and a series of homogeneous transformation matrices, solve the numerical relationship between the end-point posture angle and the intermediate joint angle to obtain the capture system model.

[0177] 2. Use the motion decomposition controller to solve the end attitude angle:

[0178] Determine the control relationship model: Determine the numerical relationship between the motion decomposition controller parameters and the end-point posture angle. This is similar to the correspondence between the end-point posture in Cartesian space and the generalized coordinates in the joint space:

[0179] x(t)=f[θ(t)];

[0180]

[0181] Where J*(θ) is the generalized Jacobian matrix.

[0182] Construct a cost function based on the target: Construct a cost function, the expression is:

[0183]

[0184] Among them, θ a and θ b are the terminal attitude angles of the left and right arms respectively, and are the current end attitude angles of the left and right arms respectively, θ=[θ1,θ2,θ3,θ4] T is the middle joint angle of the arm (the middle joint angles of the left and right arms are represented by θ l and θ r ), is the current arm middle joint angle, μ∈R 8x1 is the weight vector of each joint (including the middle joint and end joint of both arms), and are the angular velocities of the left and right arm ends, are the relevant parameters of bipedal walking (such as bipedal speed, acceleration, etc.), λ1, λ2, λ3, λ4, and λ5 are the weights of the corresponding items respectively.

[0185] Use the cost function to constrain the control relationship model: Use the target-based cost function to constrain the control relationship model, solve the optimization problem of the control relationship model, and obtain the terminal attitude angle.

[0186] 3. Determine the control parameters of the humanoid robot based on the end attitude angle and intermediate joint angle:

[0187] Determine the impedance characteristic function: Based on the end posture angle and the intermediate joint angle, determine the impedance characteristic function of the humanoid robot system. Similar to the system impedance characteristic function:

[0188]

[0189] Among them, Z SM (s,θ) represents the impedance characteristic function, s represents the Laplace variable, θ represents the intermediate joint angle vector, F(s,θ) represents the Laplace transform of the force and torque vector associated with the intermediate joint angle, and X(s,θ) represents the Laplace transform of the force and end position vector associated with the intermediate joint angle.

[0190] Next, the steps for converting the end pose angle to the end pose vector are described.

[0191] The end pose angle describes the attitude angle information of the robot's end effector in space, while the end pose vector is a more comprehensive way to describe the position and attitude of the end effector, usually expressed as a vector in the form of position and direction in three-dimensional space. The following is the specific process of converting the end pose angle to the end pose vector:

[0192] Position information determination: First, based on the robot's structural parameters and kinematic model, using the known joint angles (including the end joint angles, i.e., the end pose angles), the position coordinates (x, y, z) of the end effector in three-dimensional space are calculated through forward kinematics. This is obtained by multiplying a series of homogeneous transformation matrices, gradually transforming from the robot's base coordinate system to the end effector coordinate system, thereby determining the end effector's position vector:

[0193]

[0194] Determining attitude information: The end-effector's pose angles can be further used to determine the end-effector's pose information, typically represented by a rotation matrix or quaternion. For example, a common approach is to use Euler angles (rotation angles around three coordinate axes) to describe the end-effector's pose, which is then converted into a rotation matrix R. The rotation matrix represents the end-effector's orientation in three-dimensional space and, together with the position vector, forms the end-effector's pose vector.

[0195] Construct the end pose vector: transform the position vector and the rotation matrix Combined, we can get the end pose vector T. A common representation is to use homogeneous coordinates, namely:

[0196]

[0197] Where 0 is a 1x3 zero vector and 1 is a scalar. In this way, the end pose vector fully describes the position and posture information of the end effector in three-dimensional space, providing a unified representation for subsequent control and analysis.

[0198] Determine control parameters based on impedance characteristic function: Determine control parameters of the humanoid robot based on the impedance characteristic function.

[0199] 4. According to the control parameters, control the humanoid robot to capture the working object:

[0200] Based on the obtained control parameters, the humanoid robot's two feet are controlled to walk to expand its range of motion, while its two arms are controlled to collaborate and capture the moving object. During the control process, the humanoid robot's motion state and the position of the object need to be monitored in real time, and the control parameters are adjusted according to the actual situation to ensure the accuracy and stability of the capture.

[0201] 5. According to the homogeneous transformation matrix above, the forward kinematics of the humanoid robot can be expressed as:

[0202] For the right arm, the homogeneous transformation matrix from the base to the tip is:

[0203]

[0204] For the left arm, the homogeneous transformation matrix from the base to the tip is:

[0205]

[0206] For the right leg, the homogeneous transformation matrix from base to tip is:

[0207]

[0208] For the left leg, the homogeneous transformation matrix from base to tip is:

[0209]

[0210] in, represents the homogeneous transformation matrix from the i-th joint to the j-th joint.

[0211] The forward kinematics of the work object in motion is related to the desired end pose. Assume that the desired end pose of the work object is T tar , the actual position T of the end effector (such as a dexterous hand) in space can be calculated through the homogeneous transformation matrix of the humanoid robot end .

[0212] The specific calculation method is:

[0213] Right arm:

[0214] Left arm:

[0215] in, and Represent the homogeneous transformation matrices from the 5th joint to the hand for the right and left arms respectively.

[0216] By T end Compare and T tar , it can be determined whether the humanoid robot can reach the desired position of the work object, thereby realizing the capture of the moving work object.

[0217] 6. The inverse kinematics of a humanoid robot is to know the desired end position T tar , solve the rotation angle of each joint:

[0218] θ=[θ r1, θ r2, θ r3, θ r4, θ r5, θ l1, θ l2, θ l3, θ l4, θ l5, θ′ r1, θ′ r2, θ′ r3, θ′ r4, θ′ r5, θ′ l1, θ′ l2, θ′ l3, θ ′l4, θ′ l5, ] T ;

[0219] where θ r1 ,θ r2 ,θ r3 ,θ r4 ,θ r5 is the right arm joint angle, θ l1 ,θ l2 ,θ l3 ,θ l4 ,θ l5 is the left arm joint angle, θ′ r1 ,θ′ r2 ,θ′ r3 ,θ′ r4 ,θ′ r5 , is the right leg joint angle, θ′ l1 ,θ′ l2 ,θ′ l3 ,θ′ l4 ,θ′ l5 is the left leg joint angle).

[0220] Since humanoid robots have many degrees of freedom, the solution to inverse kinematics may not be unique. During the solution process, the appropriate solution can be determined based on the specific constraints and optimization objectives.

[0221] In summary, this embodiment can include the entire process from establishing a capture system model, solving the end attitude angle, determining the control parameters to controlling the humanoid robot to perform capture. By modeling and analyzing the kinematics and dynamics of the humanoid robot, accurate capture of the moving work object can be achieved.

[0222] Reference Figure 7 The present application also provides a humanoid robot control device that can implement the above-mentioned humanoid robot control method. The device includes:

[0223] A position acquisition unit, used to dynamically acquire the spatial position of a work object in a moving state;

[0224] a model building unit, configured to build a capture system model based on the spatial position; wherein the capture system model is configured to describe the numerical relationship between the end attitude angles of the two arms of the humanoid robot and the bipedal walking parameters, and the numerical relationship between the end attitude angles and the intermediate joint angles of the corresponding arms;

[0225] An angle solving unit, used for solving the end posture angle and the intermediate joint angle according to the motion decomposition controller and the capture system model;

[0226] a parameter determination unit, configured to determine control parameters of the humanoid robot according to the terminal posture angle and the intermediate joint angle;

[0227] An object capturing unit is used to control the humanoid robot to capture the working object according to the control parameters.

[0228] It can be understood that the contents of the above method embodiments are all applicable to the present device embodiments, the functions specifically implemented by the present device embodiments are the same as those of the above method embodiments, and the beneficial effects achieved are also the same as those achieved by the above method embodiments.

[0229] The present application also provides an electronic device comprising a memory and a processor, wherein the memory stores a computer program, and the processor executes the computer program to implement the above-mentioned humanoid robot control method. The electronic device can be any smart terminal including a tablet computer, an in-vehicle computer, or the like.

[0230] It can be understood that the contents of the above method embodiments are applicable to the present device embodiments, the functions specifically implemented by the present device embodiments are the same as those of the above method embodiments, and the beneficial effects achieved are also the same as those achieved by the above method embodiments.

[0231] See also Figure 8 , Figure 8 The hardware structure of an electronic device according to another embodiment is shown. The electronic device includes:

[0232] The processor 801 can be implemented as a general-purpose CPU (Central Processing Unit), a microprocessor, an application-specific integrated circuit (ASIC), or one or more integrated circuits, and is used to execute relevant programs to implement the technical solutions provided in the embodiments of the present application.

[0233] The memory 802 can be implemented in the form of a read-only memory (ROM), a static storage device, a dynamic storage device, or a random access memory (RAM). The memory 802 can store an operating system and other application programs. When the technical solutions provided in the embodiments of this specification are implemented through software or firmware, the relevant program code is stored in the memory 802 and is called by the processor 801 to execute the humanoid robot control method of the embodiments of this application.

[0234] Input / output interface 803, used to implement information input and output;

[0235] Communication interface 804, used to implement communication interaction between this device and other devices, which can be achieved through wired means (such as USB, network cable, etc.) or wireless means (such as mobile network, WiFi, Bluetooth, etc.);

[0236] Bus 805 , which transmits information between various components of the device (e.g., processor 801 , memory 802 , input / output interface 803 , and communication interface 804 );

[0237] The processor 801 , the memory 802 , the input / output interface 803 and the communication interface 804 are connected to each other in communication within the device via a bus 805 .

[0238] An embodiment of the present application further provides a computer-readable storage medium, which stores a computer program. When the computer program is executed by a processor, the above-mentioned humanoid robot control method is implemented.

[0239] It can be understood that the contents of the above method embodiments are all applicable to the present storage medium embodiment, the functions specifically implemented by the present storage medium embodiment are the same as those of the above method embodiments, and the beneficial effects achieved are also the same as those achieved by the above method embodiments.

[0240] The memory, as a non-transient computer-readable storage medium, can be used to store non-transient software programs and non-transient computer executable programs. In addition, the memory may include a high-speed random access memory and may also include a non-transient memory, such as at least one disk storage device, a flash memory device, or other non-transient solid-state storage device. In some embodiments, the memory may optionally include a memory remotely arranged relative to the processor, and these remote memories may be connected to the processor via a network. Examples of the above-mentioned network include, but are not limited to, the Internet, an intranet, a local area network, a mobile communication network, and combinations thereof.

[0241] The embodiments described in the embodiments of this application are intended to more clearly illustrate the technical solutions of the embodiments of this application and do not constitute a limitation on the technical solutions provided by the embodiments of this application. Those skilled in the art will appreciate that with the evolution of technology and the emergence of new application scenarios, the technical solutions provided in the embodiments of this application are also applicable to similar technical problems.

[0242] Those skilled in the art will understand that the technical solutions shown in the figures do not constitute a limitation on the embodiments of the present application, and may include more or fewer steps than shown in the figures, or a combination of certain steps, or different steps.

[0243] The device embodiments described above are merely illustrative. The units described as separate components may or may not be physically separate, i.e., they may be located in one place or distributed across multiple network units. Some or all of the modules may be selected based on actual needs to achieve the objectives of this embodiment.

[0244] Those skilled in the art will appreciate that all or some of the steps in the methods, systems, and functional modules / units in the devices disclosed above may be implemented as software, firmware, hardware, or appropriate combinations thereof.

[0245] The terms "first", "second", "third", "fourth", etc. (if any) in the specification of the present application and the above-mentioned drawings are used to distinguish similar objects and are not necessarily used to describe a specific order or sequential order. It should be understood that the data used in this way can be interchangeable where appropriate, so that the embodiments of the present application described herein can be implemented in an order other than those illustrated or described herein. In addition, the terms "including" and "having" and any variations thereof are intended to cover non-exclusive inclusions, for example, a process, method, system, product or device that includes a series of steps or units is not necessarily limited to those steps or units clearly listed, but may include other steps or units that are not clearly listed or inherent to these processes, methods, products or devices.

[0246] It should be understood that in this application, "at least one (item)" means one or more, and "plurality" means two or more. "And / or" is used to describe the association relationship of associated objects, indicating that three relationships may exist. For example, "A and / or B" can mean: only A exists, only B exists, and A and B exist at the same time, where A and B can be singular or plural. The character " / " generally indicates that the previous and next associated objects are in an "or" relationship. "At least one of the following items" or similar expressions refers to any combination of these items, including any combination of single items or plural items. For example, at least one of a, b or c can mean: a, b, c, "a and b", "a and c", "b and c", or "a and b and c", where a, b, c can be single or multiple.

[0247] In the several embodiments provided in this application, it should be understood that the disclosed devices and methods can be implemented in other ways. For example, the device embodiments described above are merely schematic. For example, the division of the above-mentioned units is only a logical function division. In actual implementation, there may be other division methods, such as multiple units or components can be combined or integrated into another system, or some features can be ignored or not executed. Another point is that the mutual coupling or direct coupling or communication connection shown or discussed can be through some interfaces, indirect coupling or communication connection of devices or units, which can be electrical, mechanical or other forms.

[0248] The units described above as separate components may or may not be physically separate, and the components shown as units may or may not be physical units, that is, they may be located in one place or distributed across multiple network units. Some or all of these units may be selected according to actual needs to achieve the purpose of the solution of this embodiment.

[0249] In addition, the functional units in the various embodiments of the present application may be integrated into a single processing unit, or each unit may exist physically separately, or two or more units may be integrated into a single unit. The aforementioned integrated units may be implemented in the form of hardware or software functional units.

[0250] If the integrated unit is implemented in the form of a software functional unit and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the present application, or the part that contributes to the prior art, or all or part of the technical solution can be embodied in the form of a software product, which is stored in a storage medium and includes multiple instructions for enabling a computer device (which can be a personal computer, server, or network device, etc.) to execute all or part of the steps of the methods of various embodiments of the present application. The aforementioned storage medium includes: various media that can store programs, such as a USB flash drive, a mobile hard disk, a read-only memory (ROM), a random access memory (RAM), a magnetic disk or an optical disk.

[0251] The preferred embodiments of the present invention are described above with reference to the accompanying drawings, but are not intended to limit the scope of the present invention. Any modifications, equivalent substitutions, and improvements made by those skilled in the art without departing from the scope and essence of the present invention should be within the scope of the present invention.

Claims

1. A method for controlling a humanoid robot, characterized in that: The method comprises the following steps: Dynamically obtain the spatial position of the work object in a moving state; Establishing a capture system model based on the spatial position; wherein the capture system model is used to describe the numerical relationship between the end posture angles of the two arms of the humanoid robot and the bipedal walking parameters, and the numerical relationship between the end posture angles and the intermediate joint angles of the corresponding arms; Obtaining the end attitude angle and the intermediate joint angle by solving the motion decomposition controller and the capture system model; determining control parameters of the humanoid robot according to the terminal posture angle and the intermediate joint angle; controlling the humanoid robot to capture the work object according to the control parameters; The method of obtaining the terminal posture angle and the intermediate joint angle by solving the motion decomposition controller and the capture system model includes the following steps: Determining a control relationship model based on the capture system model; wherein the control relationship model is used to describe the numerical relationship between the parameters of the motion decomposition controller and the terminal posture angle, and the numerical relationship between the parameters of the motion decomposition controller and the intermediate joint angle; Constructing a cost function based on the work object; Using the cost function to constrain the control relationship model, and then using the motion decomposition controller to solve the optimization problem of the control relationship model to obtain the end posture angle and the intermediate joint angle; The constructing of the cost function based on the work object comprises the following steps: The cost function based on the work object is constructed as: ; in, J c represents the cost function; and are the end attitude angles of the left arm and the right arm of the humanoid robot respectively, and are the current end posture angles of the left arm and the right arm respectively, is the middle joint angle of the arm, and the middle joint angles of the left arm and the right arm are respectively expressed as and , is the current arm middle joint angle; is the weight vector of each joint of the left arm and the right arm, and are the terminal angular velocities of the left and right arms, respectively. are the walking parameters of the humanoid robot's two feet, 、 、 、 、 are the weights corresponding to the walking parameters respectively.

2. The humanoid robot control method according to claim 1, characterized in that: The method of dynamically acquiring the spatial position of a moving work object comprises the following steps: The spatial position of the working object in a moving state is dynamically acquired through one or at least two sensors on the humanoid robot; wherein the sensors include an RGBD sensor and a laser radar.

3. The humanoid robot control method according to claim 1, characterized in that: The step of establishing a capture system model according to the spatial position comprises the following steps: Constructing a DH parameter table for each joint in the humanoid robot's arms; Obtaining a homogeneous transformation matrix for each joint according to the DH parameter table; determining a desired end pose of an end effector of the humanoid robot according to the spatial position; The numerical relationship between the terminal posture angle and the intermediate joint angle is solved according to the desired terminal posture and each of the homogeneous transformation matrices to obtain the capture system model.

4. The humanoid robot control method according to claim 1, characterized in that: Determining the control parameters of the humanoid robot according to the terminal posture angle and the intermediate joint angle comprises the following steps: An impedance characteristic function of the humanoid robot is determined according to the terminal posture angle and the intermediate joint angle; and the control parameter is determined according to the impedance characteristic function.

5. The humanoid robot control method according to any one of claims 1 to 4, characterized in that: The step of controlling the humanoid robot to capture the work object according to the control parameters comprises the following steps: driving the bipedal motion of the humanoid robot according to the control parameters to drive the humanoid robot to a target position matching the spatial position of the work object; and then controlling the end effector of the humanoid robot to capture the work object according to the control parameters; Alternatively, the spatial position, motion state and motion state of the work object and the humanoid robot are continuously monitored, and the control parameters are dynamically adjusted; and at least one of the end posture angle, the intermediate joint angle and the grasping mode of the end effector is adjusted according to the adjusted control parameters, so that the end effector grasps the work object.

6. A humanoid robot control device, characterized in that: The device comprises: A position acquisition unit, used to dynamically acquire the spatial position of a work object in a moving state; a model building unit, configured to build a capture system model based on the spatial position; wherein the capture system model is configured to describe the numerical relationship between the end attitude angles of the two arms of the humanoid robot and the bipedal walking parameters, and the numerical relationship between the end attitude angles and the intermediate joint angles of the corresponding arms; An angle solving unit, used for solving the end posture angle and the intermediate joint angle according to the motion decomposition controller and the capture system model; a parameter determination unit, configured to determine control parameters of the humanoid robot according to the terminal posture angle and the intermediate joint angle; an object capturing unit, configured to control the humanoid robot to capture the working object according to the control parameters; The method of obtaining the terminal posture angle and the intermediate joint angle by solving the motion decomposition controller and the capture system model includes the following steps: Determining a control relationship model based on the capture system model; wherein the control relationship model is used to describe the numerical relationship between the parameters of the motion decomposition controller and the terminal posture angle, and the numerical relationship between the parameters of the motion decomposition controller and the intermediate joint angle; Constructing a cost function based on the work object; Using the cost function to constrain the control relationship model, and then using the motion decomposition controller to solve the optimization problem of the control relationship model to obtain the end posture angle and the intermediate joint angle; The constructing of the cost function based on the work object comprises the following steps: The cost function based on the work object is constructed as: ; in, J c represents the cost function; and are the end attitude angles of the left arm and the right arm of the humanoid robot respectively, and are the current end posture angles of the left arm and the right arm respectively, is the middle joint angle of the arm, and the middle joint angles of the left arm and the right arm are respectively expressed as and , is the current arm middle joint angle; is the weight vector of each joint of the left arm and the right arm, and are the terminal angular velocities of the left and right arms, respectively. are the walking parameters of the humanoid robot's two feet, 、 、 、 、 are the weights corresponding to the walking parameters respectively.

7. An electronic device, characterized in that: The electronic device includes a memory and a processor, the memory stores a computer program, and the processor implements the humanoid robot control method according to any one of claims 1 to 5 when executing the computer program.

8. A computer-readable storage medium storing a computer program, characterized in that: When the computer program is executed by a processor, the humanoid robot control method according to any one of claims 1 to 5 is implemented.

Citation Information

Patent Citations

  • Method and system for adjusting grabbing pose of mechanical arm in real time

    CN117381781A

  • Four-limb cooperative balance control method and device for humanoid robot

    CN117944055A

  • Motion track acquisition method and device, foot type robot and storage medium

    CN118456407A