A motion control method for bipedal robots based on human motion coordination analysis

By analyzing the coordination characteristics of human movement, establishing a primitive database, and generating the desired movement trajectory in real time, the problem of low anthropomorphism in the movement of existing bipedal robots is solved, and efficient control in complex environments is achieved.

CN120902756BActive Publication Date: 2026-08-04BEIJING INST OF TECH
View PDF 2 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
BEIJING INST OF TECH
Filing Date
2025-08-11
Publication Date
2026-08-04

AI Technical Summary

Technical Problem

Existing motion control methods for bipedal robots fail to fully integrate the gait characteristics of human movement, resulting in significant differences between the generated gait and the natural human gait. Furthermore, they lack analysis of the multi-joint collaborative movement mechanism of the human body in different motion scenarios, making robot trajectory calculation complex, control real-time performance poor, and unsuitable for movement in complex environments.

Method used

By pre-collecting and processing human motion data under different motion scenarios, calculating motion primitives and weight coefficients, establishing a primitive database, identifying robot motion scenarios in real time, generating the desired center of mass trajectory and desired foot motion trajectory, and using a whole-body control algorithm to execute multiple control sub-tasks, optimizing joint torque to control robot motion.

Benefits of technology

It improves the anthropomorphism of robot movement and its adaptability to complex terrain, reduces the computational complexity of motion trajectory tracking, enhances real-time control, and makes robot movement more in line with biomechanical characteristics.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120902756B_ABST
    Figure CN120902756B_ABST
Patent Text Reader

Abstract

This invention relates to a bipedal robot motion control method based on human motion coordination analysis, belonging to the field of robot control technology, and solves the problem of low anthropomorphism in existing robot motion. The method includes: pre-collecting and processing human motion data under different motion scenarios, calculating motion primitives and weight coefficients for each motion scenario, and storing them in a primitive database; real-time acquisition of the bipedal robot's state data, identifying the current motion scenario of the bipedal robot, calculating the desired centroid trajectory and desired foot trajectory of the bipedal robot based on the current motion scenario and the primitive database, and then using a whole-body control algorithm to execute multiple control sub-tasks to solve for the optimal joint torque; converting the optimal joint torque into control signals for actuators to control and track the motion of the bipedal robot. This significantly improves the anthropomorphism of the robot's motion.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the field of robot control technology, and in particular to a method for motion control of a bipedal robot based on human motion coordination analysis. Background Technology

[0002] Bipedal robots need to maintain balance and stability in complex environments while achieving flexible movement and manipulation, which places extremely high demands on motion control. Therefore, optimizing the control methods for bipedal robots and improving their anthropomorphic motion has always been a research hotspot and challenge.

[0003] Existing technologies typically utilize foot contact signals to trigger lower limb joint movements to control the robot's stable walking; and achieve robot motion control by using predefined parameterized motion trajectories as desired trajectory modules.

[0004] However, existing motion control strategies for bipedal robots fail to fully integrate the gait characteristics of human movement, resulting in significant differences between the generated gait and the natural human gait. Furthermore, existing methods lack analysis of the multi-joint collaborative motion mechanisms of the human body in different motion scenarios, leading to complex robot trajectory calculations, poor real-time control, and unsuitability for motion in complex environments. Summary of the Invention

[0005] Based on the above analysis, the embodiments of the present invention aim to provide a bipedal robot motion control method based on human motion coordination analysis, in order to solve the problem of low anthropomorphism in the motion of existing bipedal robots.

[0006] This invention provides a method for motion control of a bipedal robot based on human motion coordination analysis, comprising the following steps:

[0007] Human motion data under different motion scenarios are collected and processed in advance, and motion primitives and weight coefficients under each motion scenario are calculated and put into the primitive database;

[0008] The system collects state data of the bipedal robot in real time, identifies the current motion scenario of the bipedal robot, and calculates the expected center of mass trajectory and expected foot movement trajectory of the bipedal robot based on the current motion scenario and primitive database. Based on the expected center of mass trajectory and expected foot movement trajectory, the system uses a whole-body control algorithm to execute multiple control sub-tasks and solve for the optimal joint torque. The optimal joint torque is then converted into control signals for the actuators to control and track the movement of the bipedal robot.

[0009] Based on further improvements to the above method, human motion data under different motion scenarios are pre-collected and processed, and motion primitives and weight coefficients under each motion scenario are calculated, including:

[0010] Based on human motion data in different motion scenarios, multiple joint angles and centroid positions of each sampling point in each motion scenario are obtained and constructed into the corresponding original motion matrix.

[0011] For the original motion matrix in each motion scenario, the left singular matrix, singular value matrix, and right singular matrix are obtained through singular value decomposition.

[0012] The number of principal components is obtained based on the singular value matrix and the cumulative variance contribution rate;

[0013] Based on the number of principal components, the weight coefficients are obtained from the left singular matrix, and the motion primitives are obtained from the right singular matrix.

[0014] Based on further improvements to the above method, and according to the current motion scenario and primitive database, the expected centroid trajectory and expected foot trajectory of the bipedal robot are calculated, including:

[0015] Based on the current motion scenario, the corresponding motion primitives and weight coefficients are obtained from the primitive database to reconstruct the matrix, resulting in the first reconstructed motion matrix.

[0016] Based on the ratio of the bipedal robot's gait frequency to the human gait frequency, the time scale of the currently reconstructed first motion matrix is ​​adjusted; based on the ratio of the bipedal robot's leg length to the human's leg length, the spatial scale of the currently reconstructed first motion matrix is ​​scaled to obtain the current desired motion matrix; the trajectory of the centroid is extracted from the current desired motion matrix as the desired centroid trajectory.

[0017] Based on the trajectory of the centroid and the angles of each joint in the current desired motion matrix, the foot trajectory is calculated and used as the desired foot motion trajectory.

[0018] Based on the further improvement of the above method, the current expected motion matrix is ​​calculated using the following formula:

[0019]

[0020] Among them, X r '(t) represents the expected motion matrix of the bipedal robot, X r (t) represents the first motion matrix currently being reconstructed, a represents the spatial scale scaling factor, and l robot The length of the legs of a bipedal robot is represented by l. human b represents the length of a human leg; f represents the time scale scaling factor. robot f represents the step frequency of a bipedal robot. human Indicates human cadence; X r (b·t) indicates that the time axis is compressed or stretched for the first motion matrix of the current reconstruction.

[0021] Based on further improvements to the above method, the desired foot trajectory is calculated using the following formula:

[0022] z foot =z CoM -h bias -l Thigh ·cosα-l Shank ·cosβ,

[0023] x foot =x CoM +l Thigh ·sinα+l Shank ·sinβ,

[0024] Where, x foot and z foot These represent the position coordinates of the foot in the forward direction and the vertical direction, respectively. CoM and z CoM Let h represent the position coordinates of the center of mass in the forward direction and the vertical direction, respectively. bias The height difference between the center of mass and the hip joint is represented by l. Thigh and l Shank α and β represent the lengths of the thigh and calf, respectively, and the angles of the hip and knee joints, respectively.

[0025] Based on further improvements to the above method, multiple control subtasks have different priorities, which are listed from highest to lowest priority as follows: closed-loop dynamics model, support leg foot contact constraint, fuselage desired attitude tracking, fuselage desired position tracking, and swing leg foot trajectory tracking.

[0026] Based on a further improvement of the above method, the closed-loop dynamics model is expressed by the following formula:

[0027]

[0028] Where M(q) represents the joint space inertia matrix, h(q,u) represents the Coriolis force term, g(q) represents the gravity term, and F L F S and F C J represents the closed-loop constraint force, the contact force at the foot end of the supporting leg, and the constraint force of the body of the bipedal robot, respectively. L J S and J C These represent the Jacobian matrices for closed-loop constraint forces, support leg foot contact forces, and fuselage constraint forces, respectively. S represents the drive joint selection matrix, used to map actuator torque to joint space; T represents the matrix transpose operation.

[0029] Based on the above method, a further improvement is made to fuselage desired position tracking, which is used to calculate the centroid error between the desired centroid trajectory and the actual centroid trajectory in real time, and to use a proportional-derivative control algorithm to perform feedback control on the centroid error, thereby optimizing and tracking the fuselage position.

[0030] Based on the above method, a further improvement is made to the swing leg foot trajectory tracking, which is used to calculate the foot error between the desired foot motion trajectory and the actual foot motion trajectory in real time, and to use a proportional-derivative control algorithm to perform feedback control on the foot error, thereby optimizing and tracking the foot position.

[0031] Based on further improvements to the above method, the motion scene is composed of speed levels, terrain conditions, and motion modes. Speed ​​levels include: slow, medium, and fast; terrain conditions include: flat ground, uphill, and downhill; and motion modes include: walking and running.

[0032] Compared with the prior art, the present invention can achieve at least one of the following beneficial effects:

[0033] 1. By analyzing the multi-joint coordination characteristics of the human body, a primitive database for different motion scenarios is established. The primitive database is called according to the robot's real-time motion state to generate the desired centroid trajectory and desired foot movement trajectory, which are applied in real time to the robot's whole-body control algorithm, thereby improving the robot's anthropomorphic motion and adaptability to complex terrain.

[0034] 2. By exploring the collaborative mechanisms of the human body under multiple speed levels, terrain conditions, and motion modes, motion primitives and weight coefficients are extracted, which greatly reduces the dimensionality of the data, effectively reduces the computational complexity of traditional motion trajectory tracking methods, and enhances the real-time control performance of robots in complex terrain.

[0035] 3. Based on the actual motion scenario, gait synthesis is performed by combining motion primitives and weight coefficients. The spatial and temporal scales are scaled according to the mapping relationship between human and robot motion characteristics to quickly generate the robot's desired motion trajectory, which facilitates the robot's reproduction of human motion characteristics.

[0036] In this invention, the above-described technical solutions can be combined with each other to achieve more preferred combinations. Other features and advantages of this invention will be set forth in the following description, and some advantages may become apparent from the description or be learned by practicing the invention. The objects and other advantages of this invention can be realized and obtained from what is particularly pointed out in the description and drawings. Attached Figure Description

[0037] The accompanying drawings are for illustrative purposes only and are not intended to limit the invention. Throughout the drawings, the same reference numerals denote the same parts.

[0038] Figure 1 This is a schematic diagram of a parallel four-link bipedal robot in an embodiment of the present invention;

[0039] Figure 2 This is a flowchart of a bipedal robot motion control method based on human motion coordination analysis in an embodiment of the present invention;

[0040] Figure 3 This is a schematic diagram of a leg model during human movement in an embodiment of the present invention;

[0041] Figure 4 This is a schematic diagram of the whole-body control process of the bipedal robot in an embodiment of the present invention. Detailed Implementation

[0042] Preferred embodiments of the present invention will now be described in detail with reference to the accompanying drawings, which form part of this application and are used together with the embodiments of the present invention to illustrate the principles of the present invention, but are not intended to limit the scope of the present invention.

[0043] In the design of bipedal robots, the structural design of the robot often varies depending on the different movement tasks required. Figure 1 This is a schematic diagram of a parallel four-bar bipedal robot. As a representative leg structure, the parallel four-bar linkage has shown significant advantages in bipedal robots.

[0044] First, the closed-loop four-bar structure exhibits high mechanical rigidity and overall stability, contributing to improved motion reliability. Second, this structure transforms the active control function of the ankle joint into the geometric constraints of the four-bar closed-loop mechanism. Its motion analysis is performed in the sagittal plane, considering only the robot's forward direction (X-axis) and vertical direction (Z-axis), ignoring lateral (Y-axis) displacement and rotation. This not only reduces system complexity but also effectively preserves key dynamic processes such as changes in the center of mass position, foot position, and the switching between the support and swing phases. Finally, the hip and knee joints in this structure achieve coordinated actuation through mechanical links, enhancing inter-joint coordinated motion performance and improving actuation efficiency.

[0045] A specific embodiment of the present invention discloses a motion control method for a bipedal robot with a parallel four-bar linkage leg structure, based on human motion coordination analysis. Figure 2 As shown, it includes the following steps:

[0046] S1. Collect and process human motion data in different motion scenarios in advance, calculate motion primitives and weight coefficients in each motion scenario, and put them into the primitive database.

[0047] It should be noted that the data collection equipment includes: a motion capture system, a pressure treadmill, and a host computer. The pressure treadmill is set with multiple speed levels to simulate various terrain conditions. 39 markers are placed on the subject's body and joints. The subject performs various movement patterns on the pressure treadmill, creating different movement scenarios. The speed levels include: slow, medium, and fast. For example, a speed of (0, 0.5 m / s) is slow, (0.5 m / s, 1.0 m / s) is medium, 1.0 m / s is fast, and (1.0 m / s, 1.5 m / s) is fast. The terrain conditions include: flat ground, uphill, and downhill. The movement patterns include: walking and running.

[0048] In other words, a motion scenario is composed of speed levels, terrain conditions, and motion modes. In this embodiment, there are 3 speed levels, 3 terrain conditions, and 2 motion modes, forming a total of 18 motion scenarios.

[0049] During each exercise scenario, the Vicon motion capture system and the pressure treadmill simultaneously acquired kinematic data and foot pressure data. The kinematic data included the position of each marker point, the position of the center of mass, and the angles of each joint at each sampling point. The foot pressure data included the ground reaction force at each sampling point.

[0050] Furthermore, the motion primitives and weight coefficients for each motion scenario are calculated, including:

[0051] ① Based on human motion data in different motion scenarios, obtain the joint angles and centroid positions of each sampling point in each motion scenario, and construct the corresponding original motion matrix.

[0052] It should be noted that ViconNexus and MATLAB software were used to process the human motion data collected in each motion scenario, including:

[0053] Missing values ​​were filled in using interpolation; the time of foot contact with the ground and the time of foot departure from the ground were obtained based on the ground reaction force at each moment, and then the gait cycle was divided; the kinematic data were filtered and normalized.

[0054] Finally, the joint angles and centroid positions of each sampling point are obtained for each motion scenario. The centroid position is a three-dimensional coordinate system, including the position coordinates of the centroid in the forward direction, vertical direction, and left and right directions. This embodiment focuses on the centroid trajectory formed by the positions of the centroid in the forward direction and vertical direction.

[0055] It should be noted that, since human movement is symmetrical on both sides, this embodiment constructs the corresponding original motion matrix X for each motion scenario based on the vertical position of the center of mass and the data of the joint angles on one side at each sampling point. oThe dimension is M×N, where M represents the number of input variables, which is the number of joints on one side plus the two position coordinates of the centroid; N represents the number of sampling points.

[0056] For example, if the collected joint angles are: hip, knee and ankle joint angles of the lower limb, plus the position of the center of mass in the forward direction and the vertical direction, a total of five sets of time series data are obtained, then M is 5 and N is the number of sampling points in the time series.

[0057] ② For the original motion matrix in each motion scenario, the left singular matrix, singular value matrix and right singular matrix are obtained by singular value decomposition.

[0058] Singular value decomposition is performed on the original motion matrix to reveal the human motion coordination pattern through spatial and temporal patterns.

[0059] Taking a motion scenario as an example, the formula for singular value decomposition is as follows:

[0060] X o =UΣV (1),

[0061] Where U represents the left singular matrix with a dimension of M×M, reflecting the spatial pattern in the motion data; V represents the right singular matrix with a dimension of N×N, reflecting the temporal pattern in the motion data; and Σ represents the singular value matrix, which is a diagonal matrix with a dimension of M×N, and the singular values ​​are on the diagonal.

[0062] ③ Obtain the number of principal components based on the singular value matrix and the cumulative variance contribution rate.

[0063] Based on the singular values ​​in the singular value matrix, the cumulative variance contribution rate is calculated using the following formula:

[0064]

[0065] Where K represents the cumulative variance contribution rate, λ k Let represent the singular values ​​in the k-th row on the diagonal of the singular value matrix. Let represent the variance of the singular values ​​in the k-th row.

[0066] When the cumulative variance contribution rate calculated based on the first k singular values ​​is greater than or equal to a preset threshold, such as 94%, the number of singular values ​​k obtained is the number of principal components.

[0067] ④ Based on the number of principal components, obtain the weight coefficients from the left singular matrix and the motion primitives from the right singular matrix.

[0068] Specifically, based on the number of principal components k, the matrix obtained by extracting the first k columns from the left singular matrix U is used as the weight coefficient W, i.e., W = U. 1:M,1:kThis is used to describe the contribution of each input variable in the human motion coordination mode; the matrix obtained by extracting the first k rows from the right singular matrix V is used as the motion primitive H(t), i.e., H(t) = V. 1:k,1:N , is used to describe the changes of motion primitives in human motion coordination patterns over time t.

[0069] Similarly, based on the number of principal components k, the first k rows and first k columns are extracted from the singular value matrix Σ to obtain the truncated singular value matrix Σ', that is, Σ' = Σ 1:k,1:k .

[0070] The weight coefficients, motion primitives, and truncated singular value matrices for each motion scenario are stored in the primitive database. This allows for the real-time retrieval of motion primitives and weight coefficients for the same motion scenario based on the motion requirements of the bipedal robot, thereby improving the robot's motion adaptability in complex environments.

[0071] S2. Real-time acquisition of state data of the bipedal robot, identification of the current motion scene of the bipedal robot, calculation of the expected center of mass trajectory and expected foot movement trajectory of the bipedal robot based on the current motion scene and primitive database; execution of multiple control sub-tasks using the whole-body control algorithm based on the expected center of mass trajectory and expected foot movement trajectory, solving for the optimal joint torque; conversion of the optimal joint torque into control signals for actuators to control and track the movement of the bipedal robot.

[0072] It should be noted that, based on the inertial sensors and encoders installed on the bipedal robot, the real-time state data collected includes: body position, left and right foot positions, pose, real-time speed, joint angles, and angular velocities.

[0073] Furthermore, the current speed level is determined based on the real-time speed, the current terrain conditions are determined based on the body position or pose of the bipedal robot at multiple consecutive time points, and the current movement scene of the bipedal robot is determined based on the position of the left and right feet at multiple consecutive time points.

[0074] Furthermore, based on the current motion scenario and primitive database, the expected centroid trajectory and expected foot trajectory of the bipedal robot are calculated, including:

[0075] ① Based on the current motion scenario, retrieve the corresponding motion primitives and weight coefficients from the primitive database to reconstruct the matrix and obtain the current first motion matrix.

[0076] It should be noted that the first motion matrix for the current reconstruction is obtained through the following formula:

[0077] X r (t)=W r Σ' r Hr (t) (3),

[0078] Among them, X r (t) represents the first motion matrix currently being reconstructed, W r , Σ' r and H r (t) represents the weight coefficients, truncated singular value matrix and motion primitives corresponding to the current motion scene obtained from the primitive data, respectively.

[0079] It should be noted that the first motion matrix reconstructed at this time includes: the reconstructed joint angle trajectory and the centroid trajectory, wherein the centroid trajectory includes: the position of the centroid in the forward direction and the position in the vertical direction at each sampling point.

[0080] ② Based on the ratio of the bipedal robot's step frequency to the human step frequency, the first motion matrix is ​​adjusted in time scale. Based on the ratio of the bipedal robot's leg length to the human leg length, the first motion matrix is ​​scaled in space scale to obtain the current desired motion matrix. The trajectory of the centroid is extracted from the desired motion matrix as the desired centroid trajectory.

[0081] To improve the anthropomorphism of the bipedal robot's movements, the spatial and temporal scales of the first reconstructed motion matrix are adjusted based on the differences between the bipedal robot and the human body in leg length and stride frequency, resulting in the desired motion matrix of the bipedal robot.

[0082] Specifically, the time scale of the first reconstructed motion matrix is ​​adjusted based on the ratio of the bipedal robot's gait frequency to that of a human, and the spatial scale is scaled based on the ratio of the bipedal robot's leg length to that of a human leg, as shown in the following formula:

[0083]

[0084] Among them, X r '(t) represents the current desired motion matrix of the bipedal robot, and a represents the spatial scale scaling factor, which is equivalent to compressing or stretching the trajectory curves in the currently reconstructed first motion matrix proportionally; l robot The length of the legs of a bipedal robot is represented by l. human b represents the length of the human leg; b represents the time scale scaling factor, which is equivalent to compressing or stretching the time axis of the first motion matrix being reconstructed; f robot f represents the step frequency of a bipedal robot. human This indicates the human body's cadence.

[0085] It should be noted that when adjusting the time scale of the first motion matrix, MATLAB's resampling function, such as the resample function, is used to scale or stretch the time axis (composed of each sampling point) according to the time scale scaling factor to obtain the adjusted time axis, and the data corresponding to each time moment is generated for the adjusted time axis; then the data corresponding to each time moment is multiplied by the spatial scale scaling factor to obtain the spatial scale scaled data, which forms the current desired motion matrix.

[0086] Extract the trajectory of the centroid from the current desired motion matrix, and use it as the desired centroid trajectory.

[0087] ③ Calculate the foot trajectory based on the trajectory of the centroid and the angles of each joint in the current desired motion matrix, and use it as the desired foot motion trajectory.

[0088] It should be noted that the diagram of the leg model during human movement is as follows: Figure 3 As shown, Figure 3 CoM(x) CoM ,z CoM This indicates the position of the center of mass, including its x-coordinate in the direction of travel. CoM and the vertical position coordinate z CoM .

[0089] The expected foot position (marked point position at the ankle joint) at each moment in the foot's trajectory includes: the foot's position coordinate x in the forward direction. foot and the vertical position coordinate z foot It is calculated using the following formula:

[0090] z foot =z CoM -h bias -l Thigh ·cosα-l Shank ·cosβ (5),

[0091] x foot =x CoM +l Thigh ·sinα+l Shank ·sinβ (6),

[0092] Among them, h bias The height difference between the center of mass and the hip joint is represented by l. Thigh and l Shank α and β represent the lengths of the thigh and calf, respectively, and the angles of the hip and knee joints, respectively.

[0093] It is understandable that formulas (5) and (6) calculate the foot position at a given moment based on the centroid position at that moment, and the foot positions at each moment ultimately form the foot motion trajectory.

[0094] When controlling the bipedal robot, a Whole-Body Control (WBC) algorithm is employed, decomposing the overall control task into multiple sub-tasks, which are executed in descending order of priority. By combining the real-time calculated desired centroid trajectory and desired foot movement trajectory of the bipedal robot, the objective function in the task space is continuously optimized, thereby coordinating the key movements of the bipedal robot and achieving dynamic balance and trajectory tracking. Compared to traditional control methods that rely on predefined parametric trajectory templates, the dynamic and real-time calculation of the desired trajectory in this embodiment makes the robot's motion more consistent with biomechanical characteristics, enhancing the robot's real-time control and anthropomorphic motion.

[0095] It should be noted that the multiple control subtasks have different priorities, which are listed from highest to lowest as follows: closed-loop dynamics model, support leg foot contact constraint, fuselage desired attitude tracking, fuselage desired position tracking, and swing leg foot trajectory tracking.

[0096] Among them, the closed-loop dynamics model is used to ensure the stability and consistency of the robot's dynamic behavior and meet the overall motion control requirements; the support leg foot contact constraint is used to ensure the stability of the support leg foot contact with the ground and prevent slippage or detachment; the body desired posture tracking is used to control the robot body's posture and maintain the desired orientation and balance; the body desired position tracking is used to guide the robot body to the specified spatial position and achieve the overall motion goal; and the swing leg foot trajectory tracking is used to control the swing leg foot to move along a predetermined trajectory to ensure the accuracy and coordination of the gait.

[0097] (1) Closed-loop dynamic model

[0098] Specifically, the closed-loop dynamics model in this embodiment is based on open-loop dynamics modeling, and is constructed by introducing a pair of additional closed-loop constraint forces at the hinge points on the leg structure of the parallel four-bar bipedal robot, such as... Figure 1 As shown.

[0099] It should be noted that a local coordinate system constructed with the geometric center of the bipedal robot as the origin is used as the base coordinate system to describe the internal state of the bipedal robot; in addition, an inertial coordinate system is used to describe the interaction between the bipedal robot and the environment.

[0100] Generalized coordinates q, velocity u, and acceleration of a bipedal robot in a base coordinate system. The driving torque τ is defined as follows:

[0101]

[0102] Wherein, the right subscript IB represents the vector from the inertial coordinate system I to the base coordinate system B, and the left subscript I represents the component in the inertial coordinate system I; I r IB , I v IB , I ω IB , I a IB and Represent the vectors of relative position, linear velocity, angular velocity, linear acceleration, and angular acceleration, respectively; R IB This represents the rotation matrix, used to map coordinates in base coordinate system B to inertial coordinate system I. and Let n represent the angle, angular velocity, and angular acceleration of the i-th joint, respectively; j This indicates the total number of joints in the robot; τ1, τ2, τ3, and τ4 represent the torque applied to the four joints by the actuators, and their number is adjusted according to the actual situation.

[0103] Furthermore, a closed-loop dynamic model is constructed using the following formula:

[0104]

[0105] Where M(q) represents the joint space inertia matrix, h(q,u) represents the Coriolis force term, g(q) represents the gravity term, and F L F S and F C J represents the closed-loop constraint force, the contact force at the foot end of the supporting leg, and the constraint force of the body of the bipedal robot, respectively. L J S and J C These represent the Jacobian matrices for closed-loop constraint forces, support leg foot contact forces, and fuselage constraint forces, respectively. S represents the drive joint selection matrix, used to map actuator torque to joint space; T represents the matrix transpose operation.

[0106] (2) Support leg foot contact constraint

[0107] It should be noted that the foot contact constraint of the supporting leg aims to ensure stable contact between the supporting leg and the ground, preventing the foot from sliding, lifting off, or penetrating the ground. This constraint is achieved through the zero acceleration condition at the foot end in formula (9) and the physical constraint of non-negativity of the foot contact force in formula (10):

[0108]

[0109] F S,z ≥0(10),

[0110] in, and These represent generalized velocity and generalized acceleration, respectively. F represents the rate of change of the Jacobian matrix representing the contact force at the foot of the supporting leg over time. S,z This represents the component of the contact force at the foot of the supporting leg that is perpendicular to the ground.

[0111] (3) Desired attitude tracking of the fuselage

[0112] Desired pose tracking ensures that the robot's body pose accurately tracks the desired value, thereby maintaining overall balance and motion stability. This control subtask is achieved through pose error feedback control, as shown in the following formula:

[0113]

[0114] Where θ = [φ, ψ, γ] T This indicates the actual attitude angles of the fuselage, including roll angle, pitch angle, and yaw angle. θ represents the actual angular velocity of the fuselage. des , and K represents the desired attitude angle, desired attitude angular velocity, and desired attitude angular acceleration, respectively. p_C and K d_C These represent the proportional and differential gain matrices used to adjust the fuselage attitude angle and attitude angular velocity error, respectively.

[0115] (4) Desired position tracking of the fuselage

[0116] Fuselage desired position tracking is a critical task to ensure accurate tracking of the desired center of mass trajectory. This control subtask calculates the center of mass error between the desired and actual center of mass trajectories in real time, and uses a proportional-derivative control algorithm to provide feedback control over the center of mass error, adjusting the convergence of the center of mass position and velocity errors to optimize and track the fuselage position; the formula is shown below:

[0117]

[0118] Among them, J CoM p represents the Jacobian matrix indicating the centroid location. CoM and Let p represent the current position and velocity of the center of mass, respectively. CoM,des , and Let K represent the expected position, expected velocity, and expected acceleration of the center of mass in the expected trajectory. p_CoM and K d_CoM These represent the proportional and differential gain matrices used to adjust the position and velocity errors of the centroid, respectively.

[0119] (5) Tracking of the swing leg foot trajectory

[0120] Swing leg foot trajectory tracking is a key task to ensure that the swing leg foot position accurately tracks the desired foot trajectory. This control subtask is used to calculate the foot error between the desired foot trajectory and the actual foot trajectory in real time, and to use a proportional-derivative control algorithm to provide feedback control on the foot error, adjust the convergence of the foot position and foot velocity errors, and optimize and track the foot position.

[0121]

[0122] Among them, J swing p represents the Jacobian matrix indicating the position of the foot tip of the swinging leg. foot and p represents the current foot position and foot velocity, respectively. foot,des , and K represents the desired foot position, desired foot velocity, and desired foot acceleration in the desired foot trajectory, respectively. p_swing and K d_swing These represent the proportional and differential gain matrices that adjust the foot position and velocity errors, respectively.

[0123] Furthermore, each control subtask is defined as a linear equality and / or inequality constraint as shown in Equation (14), and solved sequentially from high to low priority using the Hierarchical Quadratic Programming (HQP) method:

[0124]

[0125] Where x = τ T This represents the variable to be optimized, namely the joint torque. i and v i These are slack variables used to minimize task error.

[0126] In the first equality constraint of formula (14), A i It is the i-th control subtask T i The Jacobian matrix in the function maps the variable x to be optimized to the task space, b. i It is the expected value of the i-th control subtask, such as the expected centroid trajectory and the expected foot movement trajectory; w i This indicates that errors are allowed in the equality constraints, and the goal is to minimize these errors.

[0127] In the second inequality constraint of formula (14), D i It is also a mapping matrix, different from A. iD i The boundary of the feasible region, f, is defined. i It is the boundary value of the constraint, v i This indicates that minor violations of the constraint are allowed in the inequality constraint.

[0128] Each control subtask is used to optimize joint torque. By solving all subtasks in descending order of priority, it is ensured that low-priority tasks do not affect the implementation of high-priority tasks, and finally an optimal solution is obtained.

[0129] Specifically, we first solve the first control subtask by directly solving its quadratic programming (QP) problem to obtain the initial solution x_result. For the i-th (i≥2) control subtask, we combine the Jacobian matrix A of all higher-priority control subtasks. 1:i-1 (That is, stacking the Jacobian matrices of high-priority control subtasks row by row to form a total constraint matrix), and calculating its null space projection matrix; for example, the null space of the second control subtask is based on the Jacobian matrix A1 of the first control subtask, and the null space of the third control subtask is based on the joint Jacobian matrix A1 of the first and second control subtasks. 1:2 And so on. By constructing a QP problem in the null space and updating the solution x_result, it is ensured that the optimization of low-priority tasks will not affect the already satisfied high-priority tasks. After solving all control subtasks, the optimal joint torque can be obtained.

[0130] The whole-body control process of the bipedal robot using the method of this embodiment is as follows: Figure 4 As shown. In Figure 4 First, input parameters are taken, including control parameters and gait parameters. Control parameters include, but are not limited to: proportional and differential gain matrices for attitude control, fuselage position control, and swing leg foot trajectory control. Gait parameters include, but are not limited to: gait type, gait period, desired velocity, and desired acceleration. The control parameters are then passed to the WBC control module, and the gait parameters are passed to the gait scheduler.

[0131] The bipedal robot utilizes sensors to collect state data, including body position, posture, velocity, joint angles, and angular velocity, to identify the robot's current motion scenario. The state estimator integrates the sensor data and gait parameters sent by the gait scheduler to calculate and update the robot's complete state information, which is then transmitted to the gait scheduler. Furthermore, it calculates foot position and velocity using forward kinematics and joint torque using inverse kinematics, transmitting these results to the WBC control module for debugging, verification, and auxiliary calculations.

[0132] The gait scheduler performs timing planning based on gait parameters and complete state information sent by the state estimator to obtain gait phase timing information, which is then transmitted to the WBC control module. Simultaneously, based on the current motion scenario, it retrieves motion primitives and weight coefficients from the primitive database, calculates the desired centroid trajectory and desired foot trajectory of the bipedal robot in real time, and transmits these to the WBC control module.

[0133] The WBC control module, based on the real-time input desired center of mass trajectory and desired foot movement trajectory, employs a whole-body control algorithm to execute multiple control subtasks in descending order of priority. It then calculates the optimal joint torque, which is converted into control signals by a joint-level PD controller (a feedback control strategy composed of proportional (P) and derivative (D) elements) to drive the actuators. This includes: adjusting the proportional and derivative gains of the body position control if the current center of mass trajectory differs significantly from the desired trajectory; and adjusting the proportional and derivative gains of the swing leg foot trajectory control if the current foot movement trajectory differs significantly from the desired trajectory. This ensures accurate tracking of the center of mass and foot trajectory while maintaining body stability.

[0134] Compared with existing technologies, this embodiment provides a bipedal robot motion control method based on human motion collaboration analysis. By analyzing the multi-joint collaboration characteristics of the human body, a primitive database for different motion scenarios is established. The primitive database is invoked based on the robot's real-time motion state to generate the desired centroid trajectory and desired foot trajectory, which are then applied in real-time to the robot's whole-body control algorithm, improving the robot's anthropomorphic motion and adaptability to complex terrain. By mining the human body's collaboration mechanisms across multiple speed levels, terrain conditions, and motion modes, motion primitives and weight coefficients are extracted, significantly reducing the data dimensionality and effectively lowering the computational complexity of traditional motion trajectory tracking methods, thus enhancing the robot's real-time control performance in complex terrain. Based on the actual motion scenario, the motion primitives and weight coefficients are synthesized into gait data, and the spatial and temporal scales are scaled according to the mapping relationship between human and robot motion characteristics to quickly generate the robot's desired motion trajectory, facilitating the robot's reproduction of human motion characteristics.

[0135] Those skilled in the art will understand that all or part of the processes of the methods described in the above embodiments can be implemented by a computer program instructing related hardware, and the program can be stored in a computer-readable storage medium. The computer-readable storage medium may be a disk, optical disk, read-only memory, or random access memory, etc.

[0136] The above description is only a preferred embodiment of the present invention, but the scope of protection of the present invention is not limited thereto. Any changes or substitutions that can be easily conceived by those skilled in the art within the scope of the technology disclosed in the present invention should be included within the scope of protection of the present invention.

Claims

1. A motion control method for a bipedal robot based on human motion coordination analysis, characterized in that, Includes the following steps: Human motion data under different motion scenarios are collected and processed in advance, and motion primitives and weight coefficients under each motion scenario are calculated and put into the primitive database; The system collects state data of a bipedal robot in real time, identifies the current motion scenario, and calculates the desired centroid trajectory and desired foot trajectory based on the current motion scenario and a primitive database. This includes: reconstructing a matrix by retrieving corresponding motion primitives and weight coefficients from the primitive database based on the current motion scenario, obtaining a first reconstructed motion matrix; adjusting the time scale of the first reconstructed motion matrix based on the ratio of the bipedal robot's gait frequency to the human's gait frequency; scaling the first reconstructed motion matrix spatially based on the ratio of the bipedal robot's leg length to the human's leg length, obtaining the current desired motion matrix; extracting the centroid trajectory from the current desired motion matrix as the desired centroid trajectory; calculating the foot trajectory based on the centroid trajectory and joint angles in the current desired motion matrix, as the desired foot trajectory; executing multiple control subtasks using a whole-body control algorithm based on the desired centroid trajectory and desired foot trajectory to solve for the optimal joint torque; and converting the optimal joint torque into control signals for the actuators to control and track the movement of the bipedal robot. The multiple control subtasks have different priorities, listed from highest to lowest priority as follows: closed-loop dynamics model, support leg foot-end contact constraint, fuselage desired attitude tracking, fuselage desired position tracking, and swing leg foot-end trajectory tracking; the closed-loop dynamics model is expressed by the following formula: , in, Represents the joint space inertia matrix. Represents the Coriolis force term. Represents the gravity term. , and These represent the closed-loop constraint force, the contact force at the foot end of the supporting leg, and the constraint force of the body of the bipedal robot, respectively. , and Let represent the Jacobian matrices of the closed-loop constraint forces, the Jacobian matrices of the contact forces at the foot tips of the supporting legs, and the Jacobian matrices of the fuselage constraint forces, respectively. This represents the drive joint selection matrix, used to map actuator torque to joint space; This represents the matrix transpose operation.

2. The bipedal robot motion control method based on human motion coordination analysis according to claim 1, characterized in that, The process of pre-collecting and processing human motion data under different motion scenarios, and calculating motion primitives and weight coefficients for each motion scenario, includes: Based on human motion data in different motion scenarios, multiple joint angles and centroid positions of each sampling point in each motion scenario are obtained and constructed into the corresponding original motion matrix. For the original motion matrix in each motion scenario, the left singular matrix, singular value matrix, and right singular matrix are obtained through singular value decomposition. The number of principal components is obtained based on the singular value matrix and the cumulative variance contribution rate; Based on the number of principal components, the weight coefficients are obtained from the left singular matrix, and the motion primitives are obtained from the right singular matrix.

3. The bipedal robot motion control method based on human motion coordination analysis according to claim 1, characterized in that, The current desired motion matrix is ​​calculated using the following formula: , in, This represents the expected motion matrix of the bipedal robot. This represents the first motion matrix being reconstructed. This represents the spatial scaling factor. This indicates the leg length of the bipedal robot. Indicates the length of a person's legs; Indicates the time scale scaling factor. This indicates the step frequency of a bipedal robot. Indicates human cadence; This indicates whether the time axis is compressed or stretched for the first motion matrix being reconstructed.

4. The bipedal robot motion control method based on human motion coordination analysis according to claim 1, characterized in that, The desired foot movement trajectory is calculated using the following formula: , , in, and These represent the position coordinates of the foot in the forward direction and the vertical direction, respectively. and These represent the coordinates of the center of mass in the forward direction and the vertical direction, respectively. This indicates the height difference between the center of mass and the hip joint. and These represent the lengths of the thigh and calf, respectively. and These represent the angles of the hip and knee joints, respectively.

5. The bipedal robot motion control method based on human motion coordination analysis according to claim 1, characterized in that, The fuselage desired position tracking is used to optimize and track the fuselage position by calculating the centroid error between the desired centroid trajectory and the actual centroid trajectory in real time, and using a proportional-derivative control algorithm to perform feedback control on the centroid error.

6. The bipedal robot motion control method based on human motion coordination analysis according to claim 1, characterized in that, The swing leg foot trajectory tracking is used to calculate the foot error between the desired foot movement trajectory and the actual foot movement trajectory in real time, and to use a proportional-derivative control algorithm to perform feedback control on the foot error, thereby optimizing and tracking the foot position.

7. The bipedal robot motion control method based on human motion coordination analysis according to claim 1, characterized in that, The motion scenario is composed of speed levels, terrain conditions, and motion modes. The speed levels include: slow, medium, and fast; the terrain conditions include: flat ground, uphill, and downhill; and the motion modes include: walking and running.