A control method and device for sole interaction of a humanoid robot
By acquiring real-time data and optimizing the objective function, an initial reference trajectory set for the humanoid robot is generated, which solves the problems of self-excited oscillation and noise caused by the foot landing, achieves efficient and stable motion control, and improves the robot's compliance and adaptability.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- 58 INTELLIGENT TECH (HANGZHOU) CO LTD
- Filing Date
- 2026-02-09
- Publication Date
- 2026-05-29
AI Technical Summary
When the feet of a humanoid robot land, it is prone to self-excited oscillation of the whole machine, increasing landing noise, reducing the stability of the operation of the end effector, and accelerating the damage of key components. Existing methods, such as introducing passive compliant elements and model predictive control and whole-body dynamics control, have insufficient compliance and force change problems.
By collecting real-time data on the state and motion of the trunk joints, an initial reference trajectory set is generated. Then, by optimizing the objective function, the joint control torque value is determined, thereby achieving stable and compliant motion control.
It improves the smoothness and stability of humanoid robot foot-based interactive movements, avoids sudden changes in foot contact force, and enhances the robot's adaptability and reliability.
Smart Images

Figure CN121650030B_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of humanoid robot motion control technology, and in particular to a control method and device for the interactive motion of the soles of a humanoid robot's feet. Background Technology
[0002] Currently, the movement of humanoid robots still faces the problem of impact when the feet land, which can easily cause self-excited oscillation of the whole machine, increase landing noise, and reduce the stability of the operation of the arm end. Furthermore, since the impact force of the feet landing can be transmitted through the limb linkage to key structural and electronic components such as drive joint bearings, batteries, main controllers, and sensing and control units, it will accelerate the damage of key components and reduce the reliability and service life of humanoid robots.
[0003] Among the methods to improve the compliance of humanoid robot foot interaction motion, the main methods include introducing passive compliance elements (e.g., flexible arch or sole) and combining model predictive control with whole-body dynamics control. The scheme of introducing passive compliance elements has limited effect on improving the compliance of foot-ground interaction, reducing the compliance of foot interaction motion control; while the control method combining model prediction and whole-body dynamics lacks consideration for foot compliance interaction, and generally has sudden changes in foot force at the planning layer, which can easily cause self-excited oscillations in humanoid robots, reducing the stability and adaptability of humanoid robot motion. Summary of the Invention
[0004] In view of this, the purpose of this application is to provide a control method and device for foot-ground interactive motion of a humanoid robot. When the target humanoid robot performs gait motion involving foot-ground interaction, an initial reference trajectory set corresponding to the target humanoid robot is generated based on real-time collected trunk joint state data and motion state data. The initial reference trajectory is then optimized using a constructed objective function to obtain the state variable trajectory and control output trajectory corresponding to the target humanoid robot, and the corresponding joint control torque value is determined. The target humanoid robot is then controlled to perform gait motion according to this joint control torque value. This achieves high-efficiency, stable, disturbance-resistant, and smooth motion control of the humanoid robot, effectively improving the efficiency and accuracy of compliant motion planning, avoiding problems such as sudden changes in foot contact force, and improving the compliance of the humanoid robot's foot-ground interactive motion, thereby enhancing the stability and adaptability of the humanoid robot's motion.
[0005] This application provides a control method for foot-based interactive motion of a humanoid robot, the control method comprising:
[0006] While the target humanoid robot is performing gait movements with its feet interacting with the ground, the system collects real-time data on the trunk joint status and motion status of the target humanoid robot in the current control cycle.
[0007] In response to the target humanoid robot receiving an interactive control command, an initial reference trajectory set corresponding to the target humanoid robot is generated based on the trunk joint state data, the motion state data, and the interactive control command;
[0008] Based on the trunk joint state data and the motion state data, the initial reference trajectory is optimized using the constructed objective function to obtain the state variable trajectory and control output trajectory corresponding to the target humanoid robot.
[0009] Based on the state variable trajectory and the control output trajectory, the joint control torque value of the target humanoid robot in the next control cycle is determined, and the target humanoid robot is controlled to perform the gait movement according to the joint control torque value.
[0010] Furthermore, the real-time acquisition of trunk joint state data and motion state data of the target humanoid robot in the current control cycle includes:
[0011] Real-time acquisition of initial torso joint state data of the target humanoid robot in the current control cycle;
[0012] The initial trunk joint state data is filtered using a preset infinite impulse response filter to obtain corresponding trunk joint state data; wherein, the trunk joint state data includes trunk pose parameters, trunk velocity parameters, joint position parameters, joint velocity parameters, and driving joint control torque values.
[0013] Based on the trunk joint state data, the motion state data of the target humanoid robot corresponding to the current control cycle is determined using the forward kinematics method; wherein, the motion state data includes center of mass position parameters, center of mass velocity parameters, foot contact point position parameters, and foot contact point velocity parameters.
[0014] Furthermore, the initial reference trajectory set includes a foot contact force reference trajectory, a swing leg foot landing point reference trajectory, and a torso center of mass reference trajectory; in response to the target humanoid robot receiving an interactive control command, based on the torso joint state data, the motion state data, and the interactive control command, the generation of the initial reference trajectory set corresponding to the target humanoid robot includes:
[0015] In response to the target humanoid robot receiving an interactive control command, the interactive control parameters corresponding to the interactive control command are determined;
[0016] Based on the motion state data, the interactive control parameters, and the preset ground contact and ground lift state sequences and ground contact and ground lift time sequences, the polynomial coefficients of the foot contact force trajectory corresponding to the multi-step support of the target humanoid robot from the moment of ground lift are determined, and based on the foot contact force trajectory polynomial coefficients and the interactive control parameters, the foot contact force reference trajectory corresponding to the target humanoid robot is generated.
[0017] Based on the ground contact and ground lift state sequence, the ground contact and ground lift time sequence, the trunk joint state data, the motion state data, and the preset parameters of the target humanoid robot, a reference trajectory for the landing point of the swing leg foot corresponding to each leg component of the target humanoid robot is generated.
[0018] Based on the interactive control parameters, the trunk pose parameters in the trunk joint state data are used as the starting point for integration to generate the trunk centroid reference trajectory corresponding to the target humanoid robot.
[0019] Furthermore, based on the motion state data, the interactive control parameters, and the preset ground contact and ground departure state sequences and time sequences, the polynomial coefficients of the foot contact force trajectory corresponding to the multi-step support of the target humanoid robot from the moment of ground departure are determined, and based on the foot contact force trajectory polynomial coefficients and the interactive control parameters, the foot contact force reference trajectory corresponding to the target humanoid robot is generated, including:
[0020] Based on the preset ground-touching and ground-leaning state sequence and ground-touching and ground-leaning time sequence, the time when the target humanoid robot leaves the ground and the time when it touches the ground for each step are determined.
[0021] During the multi-step support phase cycle of the target humanoid robot starting from the moment the single leg leaves the ground, the center of mass position parameters and center of mass velocity parameters in the motion state data are iteratively updated based on the moment the single leg leaves the ground, the moment the single leg touches the ground, and the interactive control parameters, so as to obtain the center of mass leave the ground state parameters and the center of mass touches the ground state parameters.
[0022] Based on the center of mass off-ground state parameters, the center of mass on-ground state parameters, and the preset single-leg support phase periodic step length, the polynomial coefficients of the foot contact force trajectory corresponding to the target humanoid robot are determined; wherein, the polynomial coefficients of the foot contact force trajectory include a set of longitudinal amplitude coefficients, a set of longitudinal shape coefficients, a set of transverse front amplitude coefficients, a set of transverse rear amplitude coefficients, a set of vertical front amplitude coefficients, and a set of vertical rear amplitude coefficients;
[0023] Based on the ground contact and ground lift time series and the polynomial coefficients of the foot contact force trajectory, the foot contact force reference trajectories corresponding to the longitudinal, lateral, and vertical directions of the target humanoid robot are generated.
[0024] Furthermore, the step of generating a reference trajectory for the landing point of the swing leg foot corresponding to each leg component of the target humanoid robot based on the ground contact and lift-off state sequence, the ground contact and lift-off time sequence, the trunk joint state data, the motion state data, and the preset parameters of the target humanoid robot includes:
[0025] Based on the foot contact point position parameters in the motion state data and the joint position parameters and joint velocity parameters in the trunk joint state data, the absolute contact and departure position sequence of the target humanoid robot is determined.
[0026] Based on the ground contact and ground lift time sequence, the midpoint of the swing phase corresponding to each step of the target humanoid robot is determined, and based on the ground contact and ground lift absolute position sequence, the longitudinal and lateral ground contact position parameters of the target humanoid robot are determined.
[0027] Based on the midpoint of the swing phase and the ground contact and ground lift time sequences, the discrete time sequence corresponding to each leg component of the target humanoid robot is determined;
[0028] Based on the longitudinal and lateral ground contact position parameters and the absolute ground contact and ground departure position sequence, the discrete position sequence corresponding to each swing leg component of the target humanoid robot is determined;
[0029] Based on preset intermediate velocity parameters, the absolute position sequence of ground contact and ground departure, and the time sequence of ground contact and ground departure, the discrete velocity sequence corresponding to each swinging leg component of the target humanoid robot is determined;
[0030] Cubic interpolation is performed on the discrete time sequence, discrete position sequence, and discrete velocity sequence corresponding to each swing leg component to generate a reference trajectory for the landing point of the swing leg foot corresponding to each leg component of the target humanoid robot.
[0031] Furthermore, the step of optimizing the initial reference trajectory using a constructed objective function based on the torso joint state data and the motion state data to obtain the state variable trajectory and control output trajectory corresponding to the target humanoid robot includes:
[0032] Based on the motion state data and the trunk joint state data, the state variables corresponding to the target humanoid robot are constructed, and based on the joint velocity parameters in the trunk joint state data and the foot contact force reference trajectory in the initial reference trajectory, the control output variables to be optimized corresponding to the target humanoid robot are constructed.
[0033] Based on the foot contact force reference trajectory and the preset desired joint velocity parameters, a desired control output variable is constructed, and based on the desired control output variable, the state variable, the control output variable to be optimized, and the desired state variable corresponding to the trunk centroid reference trajectory in the initial reference trajectory, an objective function with exponential decay weights is constructed.
[0034] Based on the reference trajectory of the landing point of the swing leg foot in the initial reference trajectory, the constraint conditions are determined, and based on the trunk joint state data and the motion state data, the objective function is optimized using a numerical optimization method under the constraint conditions to obtain the state variable trajectory and control output trajectory corresponding to the target humanoid robot.
[0035] Furthermore, based on the foot contact force reference trajectory and the preset desired joint velocity parameters, a desired control output variable is constructed. Based on the desired control output variable, the state variable, the control output variable to be optimized, and the desired state variable corresponding to the trunk centroid reference trajectory in the initial reference trajectory, a target function with exponentially decaying weights is constructed, including:
[0036] Based on the foot contact force reference trajectory, the ground contact force sequence of the target humanoid robot's off-ground leg is determined, and the off-ground leg contact force sequence is assigned to the foot contact point of the target humanoid robot to determine the expected foot contact force trajectory.
[0037] Based on the desired trajectory of the foot contact force and the preset desired joint velocity parameters, a desired control output variable is constructed;
[0038] Based on the control output variable to be optimized, the state variable, the preset exponential decay weight coefficient, the expected state variable corresponding to the trunk centroid reference trajectory in the initial reference trajectory, and the expected control output variable, an instantaneous cost function is constructed.
[0039] Based on the instantaneous cost function and the preset forward prediction step size, an objective function is constructed.
[0040] This application embodiment also provides a control device for foot-based interactive motion of a humanoid robot, the control device comprising:
[0041] The real-time data acquisition module is used to collect the trunk joint state data and motion state data of the target humanoid robot in the current control cycle when the target humanoid robot is performing gait movements with its feet interacting with the ground.
[0042] The reference trajectory generation module is used to generate an initial reference trajectory set corresponding to the target humanoid robot based on the trunk joint state data, the motion state data and the interactive control command in response to the target humanoid robot receiving an interactive control command.
[0043] The reference trajectory optimization module is used to optimize the initial reference trajectory based on the trunk joint state data and the motion state data using a constructed objective function, so as to obtain the state variable trajectory and control output trajectory corresponding to the target humanoid robot.
[0044] The compliant motion control module is used to determine the joint control torque value of the target humanoid robot in the next control cycle based on the state variable trajectory and the control output trajectory, and control the target humanoid robot to perform the gait movement according to the joint control torque value.
[0045] Furthermore, when the real-time data acquisition module is used to acquire the torso joint state data and motion state data of the target humanoid robot in the current control cycle, the real-time data acquisition module is used for:
[0046] Real-time acquisition of initial torso joint state data of the target humanoid robot in the current control cycle;
[0047] The initial trunk joint state data is filtered using a preset infinite impulse response filter to obtain corresponding trunk joint state data; wherein, the trunk joint state data includes trunk pose parameters, trunk velocity parameters, joint position parameters, joint velocity parameters, and driving joint control torque values.
[0048] Based on the trunk joint state data, the motion state data of the target humanoid robot corresponding to the current control cycle is determined using the forward kinematics method; wherein, the motion state data includes center of mass position parameters, center of mass velocity parameters, foot contact point position parameters, and foot contact point velocity parameters.
[0049] Furthermore, the initial reference trajectory set includes a foot contact force reference trajectory, a swing leg foot landing point reference trajectory, and a torso center of mass reference trajectory; when the reference trajectory generation module generates the initial reference trajectory set corresponding to the target humanoid robot based on the torso joint state data, the motion state data, and the interactive control command in response to the target humanoid robot receiving an interactive control command, the reference trajectory generation module is used to:
[0050] In response to the target humanoid robot receiving an interactive control command, the interactive control parameters corresponding to the interactive control command are determined;
[0051] Based on the motion state data, the interactive control parameters, and the preset ground contact and ground lift state sequences and ground contact and ground lift time sequences, the polynomial coefficients of the foot contact force trajectory corresponding to the multi-step support of the target humanoid robot from the moment of ground lift are determined, and based on the foot contact force trajectory polynomial coefficients and the interactive control parameters, the foot contact force reference trajectory corresponding to the target humanoid robot is generated.
[0052] Based on the ground contact and ground lift state sequence, the ground contact and ground lift time sequence, the trunk joint state data, the motion state data, and the preset parameters of the target humanoid robot, a reference trajectory for the landing point of the swing leg foot corresponding to each leg component of the target humanoid robot is generated.
[0053] Based on the interactive control parameters, the trunk pose parameters in the trunk joint state data are used as the starting point for integration to generate the trunk centroid reference trajectory corresponding to the target humanoid robot.
[0054] Furthermore, when the reference trajectory generation module is used to determine the polynomial coefficients of the foot contact force trajectory corresponding to the multi-step support of the target humanoid robot from the moment of liftoff based on the motion state data, the interactive control parameters, and the preset ground contact and liftoff state sequences and ground contact and liftoff time sequences, and to generate the foot contact force reference trajectory corresponding to the target humanoid robot based on the foot contact force trajectory polynomial coefficients and the interactive control parameters, the reference trajectory generation module is used to:
[0055] Based on the preset ground-touching and ground-leaning state sequence and ground-touching and ground-leaning time sequence, the time when the target humanoid robot leaves the ground and the time when it touches the ground for each step are determined.
[0056] During the forward support phase period of the target humanoid robot starting from the moment the single leg leaves the ground, the center of mass position parameters and center of mass velocity parameters in the motion state data are iteratively updated based on the moment the single leg leaves the ground, the moment the single leg touches the ground, and the interactive control parameters, so as to obtain the center of mass leave the ground state parameters and the center of mass touches the ground state parameters.
[0057] Based on the center of mass off-ground state parameters, the center of mass on-ground state parameters, and the preset single-leg support phase periodic step length, the polynomial coefficients of the foot contact force trajectory corresponding to the target humanoid robot are determined; wherein, the polynomial coefficients of the foot contact force trajectory include a set of longitudinal amplitude coefficients, a set of longitudinal shape coefficients, a set of transverse front amplitude coefficients, a set of transverse rear amplitude coefficients, a set of vertical front amplitude coefficients, and a set of vertical rear amplitude coefficients;
[0058] Based on the ground contact and ground lift time series and the polynomial coefficients of the foot contact force trajectory, the foot contact force reference trajectories corresponding to the longitudinal, lateral, and vertical directions of the target humanoid robot are generated.
[0059] Furthermore, when the reference trajectory generation module generates a reference trajectory for the landing point position of the swing leg foot corresponding to each leg component of the target humanoid robot based on the ground contact / remote state sequence, the ground contact / remote time sequence, the trunk joint state data, the motion state data, and the preset parameters of the target humanoid robot, the reference trajectory generation module is used to:
[0060] Based on the foot contact point position parameters in the motion state data and the joint position parameters and joint velocity parameters in the trunk joint state data, the absolute contact and departure position sequence of the target humanoid robot is determined.
[0061] Based on the ground contact and ground lift time sequence, the midpoint of the swing phase corresponding to each step of the target humanoid robot is determined, and based on the ground contact and ground lift absolute position sequence, the longitudinal and lateral ground contact position parameters of the target humanoid robot are determined.
[0062] Based on the midpoint of the swing phase and the ground contact and ground lift time sequences, the discrete time sequence corresponding to each leg component of the target humanoid robot is determined;
[0063] Based on the longitudinal and lateral ground contact position parameters and the absolute ground contact and ground departure position sequence, the discrete position sequence corresponding to each swing leg component of the target humanoid robot is determined;
[0064] Based on preset intermediate velocity parameters, the absolute position sequence of ground contact and ground departure, and the time sequence of ground contact and ground departure, the discrete velocity sequence corresponding to each swinging leg component of the target humanoid robot is determined;
[0065] Cubic interpolation is performed on the discrete time sequence, discrete position sequence, and discrete velocity sequence corresponding to each swing leg component to generate a reference trajectory for the landing point of the swing leg foot corresponding to each leg component of the target humanoid robot.
[0066] Furthermore, when the reference trajectory optimization module is used to optimize the initial reference trajectory based on the torso joint state data and the motion state data using a constructed objective function to obtain the state variable trajectory and control output trajectory corresponding to the target humanoid robot, the reference trajectory optimization module is used to:
[0067] Based on the motion state data and the trunk joint state data, the state variables corresponding to the target humanoid robot are constructed, and based on the joint velocity parameters in the trunk joint state data and the foot contact force reference trajectory in the initial reference trajectory, the control output variables to be optimized corresponding to the target humanoid robot are constructed.
[0068] Based on the foot contact force reference trajectory and the preset desired joint velocity parameters, a desired control output variable is constructed, and based on the desired control output variable, the state variable, the control output variable to be optimized, and the desired state variable corresponding to the trunk centroid reference trajectory in the initial reference trajectory, an objective function with exponential decay weights is constructed.
[0069] Based on the reference trajectory of the landing point of the swing leg foot in the initial reference trajectory, the constraint conditions are determined, and based on the trunk joint state data and the motion state data, the objective function is optimized using a numerical optimization method under the constraint conditions to obtain the state variable trajectory and control output trajectory corresponding to the target humanoid robot.
[0070] Furthermore, when the reference trajectory optimization module is used to construct a desired control output variable based on the foot contact force reference trajectory and preset desired joint velocity parameters, and to construct an objective function with exponentially decaying weights based on the desired control output variable, the state variable, the control output variable to be optimized, and the desired state variable corresponding to the trunk centroid reference trajectory in the initial reference trajectory, the reference trajectory optimization module is used to:
[0071] Based on the foot contact force reference trajectory, the ground contact force sequence of the target humanoid robot's off-ground leg is determined, and the off-ground leg contact force sequence is assigned to the foot contact point of the target humanoid robot to determine the expected foot contact force trajectory.
[0072] Based on the desired trajectory of the foot contact force and the preset desired joint velocity parameters, a desired control output variable is constructed;
[0073] Based on the control output variable to be optimized, the state variable, the preset exponential decay weight coefficient, the expected state variable corresponding to the trunk centroid reference trajectory in the initial reference trajectory, and the expected control output variable, an instantaneous cost function is constructed.
[0074] Based on the instantaneous cost function and the preset forward prediction step size, an objective function is constructed.
[0075] This application also provides an electronic device, including: a processor, a memory, and a bus. The memory stores machine-readable instructions executable by the processor. When the electronic device is running, the processor communicates with the memory via the bus. When the machine-readable instructions are executed by the processor, the steps of the control method for humanoid robot foot-based interactive motion described above are performed.
[0076] This application also provides a computer-readable storage medium storing a computer program, which, when executed by a processor, performs the steps of the control method for the humanoid robot's foot-based interactive motion described above.
[0077] This application provides a control method and apparatus for foot-based interactive motion of a humanoid robot. The control method includes: when the target humanoid robot performs gait motion involving foot-to-ground interaction, real-time acquisition of trunk joint state data and motion state data of the target humanoid robot in the current control cycle; in response to the target humanoid robot receiving an interactive control command, generating an initial reference trajectory set corresponding to the target humanoid robot based on the trunk joint state data, the motion state data, and the interactive control command; optimizing the initial reference trajectory using a constructed objective function based on the trunk joint state data and the motion state data to obtain a state variable trajectory and a control output trajectory corresponding to the target humanoid robot; determining the joint control torque value of the target humanoid robot in the next control cycle based on the state variable trajectory and the control output trajectory, and controlling the target humanoid robot to perform the gait motion according to the joint control torque value.
[0078] Compared with existing technologies that introduce passive compliant elements (e.g., flexible arches or soles) and combine model predictive control with whole-body dynamics control, this method generates an initial reference trajectory set for the target humanoid robot based on real-time collected trunk joint state data and motion state data during the target humanoid robot's gait movements involving foot-to-ground interaction. The initial reference trajectory is then optimized using a constructed objective function to obtain the target humanoid robot's state variable trajectory and control output trajectory, and the corresponding joint control torque value is determined. This allows the target humanoid robot to be controlled to perform gait movements according to the joint control torque value. This achieves high-efficiency, stable, disturbance-resistant, and smooth compliant motion control for the humanoid robot, effectively improving compliant motion planning efficiency and control accuracy, avoiding problems such as sudden changes in foot contact force, and enhancing the compliance of the humanoid robot's foot-to-ground interaction movements, thereby improving the stability and adaptability of the humanoid robot's movements.
[0079] To make the above-mentioned objectives, features and advantages of this application more apparent and understandable, preferred embodiments are described below in detail with reference to the accompanying drawings. Attached Figure Description
[0080] To more clearly illustrate the technical solutions of the embodiments of this application, the accompanying drawings used in the embodiments will be briefly introduced below. It should be understood that the following drawings only show some embodiments of this application and should not be regarded as a limitation of the scope. For those skilled in the art, other related drawings can be obtained based on these drawings without creative effort.
[0081] Figure 1 A flowchart illustrating a control method for foot-based interactive motion of a humanoid robot provided in an embodiment of this application;
[0082] Figure 2 This is a schematic diagram of the structure of a control device for foot-based interactive motion of a humanoid robot provided in an embodiment of this application;
[0083] Figure 3 This is a schematic diagram of the structure of an electronic device provided in an embodiment of this application. Detailed Implementation
[0084] To make the objectives, technical solutions, and advantages of the embodiments of this application clearer, the technical solutions of the embodiments of this application will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of this application, and not all embodiments. The components of the embodiments of this application described and shown in the accompanying drawings can generally be arranged and designed in various different configurations. Therefore, the following detailed description of the embodiments of this application provided in the accompanying drawings is not intended to limit the scope of the claimed application, but merely represents selected embodiments of this application. Based on the embodiments of this application, every other embodiment obtained by those skilled in the art without inventive effort falls within the scope of protection of this application.
[0085] Research has revealed that humanoid robots still face challenges in motion due to impacts upon foot landing. This impact can cause self-excited oscillations, increase landing noise, and reduce the stability of end-effector operations. Furthermore, because the impact force upon foot landing can be transmitted through limb links to critical structural and electronic components such as drive joint bearings, batteries, main controllers, and sensing and control units, it accelerates damage to these components, reducing the robot's reliability and lifespan. Methods to improve the compliance of foot-based interactive movements in humanoid robots primarily include introducing passive compliant components (e.g., flexible arches or soles) and combining model predictive control with whole-body dynamics control.
[0086] Among them, the introduction of passive compliant elements has limited effect on improving the compliance of foot-ground interaction and reduces the compliance of foot-ground interactive motion control. For example, when a human or humanoid robot performs fast and long-term walking, running and going down stairs, it is difficult to effectively reduce the impact of foot collision on various joints (such as the knee joint) by relying solely on passive compliant elements.
[0087] Furthermore, the control method combining model prediction and whole-body dynamics uses gravity compensation to determine the vertical foot contact force reference trajectory. When the leg is in the swing phase, the foot contact force reference trajectory is set to "Fz=0N"; when the leg is in the support phase, the foot contact force reference trajectory is set to the magnitude of gravity. The reference trajectory determined by this method exhibits obvious periodic force abrupt changes during the switching between the swing and support phases, which can easily lead to periodic collisions and self-excited oscillations between the humanoid robot and the ground. In addition, the performance of the model prediction control method in this scheme still depends on the accurate dynamic model. When the model accuracy is low, the longer the prediction time, the higher the prediction accumulation error, which affects the accuracy of model prediction control. This makes it difficult to accurately control the interaction process between the humanoid robot and the ground, reducing the motion control effect. Therefore, the control method combining model prediction and whole-body dynamics lacks consideration for compliant foot interaction and generally exhibits foot force abrupt changes at the planning layer, which can easily cause self-excited oscillations in the humanoid robot, reducing the stability and adaptability of the humanoid robot's motion.
[0088] Furthermore, there is also a compliant motion planning method based on the Spring-Loaded Inveted Pendulum (SLIP) model. However, this method suffers from problems such as insufficient stability and flexibility of the planning results and low efficiency of nonlinear planning, making it difficult to apply in practice. In addition, when the compliant motion planning results of the SLIP model are directly applied to the task space control method, the sudden change in initial force at the moment the foot touches the ground will cause a large change, which can easily cause self-excited oscillation of the humanoid robot.
[0089] Based on this, this application provides a control method for the foot-ground interactive motion of a humanoid robot. When the target humanoid robot performs gait motion involving foot-ground interaction, an initial reference trajectory set corresponding to the target humanoid robot is generated based on real-time collected trunk joint state data and motion state data. The initial reference trajectory is then optimized using a constructed objective function to obtain the state variable trajectory and control output trajectory corresponding to the target humanoid robot, and the corresponding joint control torque value is determined. The target humanoid robot is then controlled to perform gait motion according to this joint control torque value. This achieves high-efficiency, stable, disturbance-resistant, and smooth motion control of the humanoid robot, effectively improving the efficiency and accuracy of compliant motion planning, avoiding problems such as sudden changes in foot contact force, and enhancing the compliance of the humanoid robot's foot-ground interactive motion, thereby improving the stability and adaptability of the humanoid robot's motion.
[0090] Please see Figure 1 , Figure 1 A flowchart illustrating a control method for foot-based interactive motion of a humanoid robot provided in an embodiment of this application. Figure 1 As shown in the embodiment of this application, the control method for foot-based interactive motion of a humanoid robot includes:
[0091] S101. When the target humanoid robot is performing gait movements with its feet interacting with the ground, collect in real time the trunk joint state data and motion state data of the target humanoid robot in the current control cycle.
[0092] It should be noted that the target humanoid robot refers to a humanoid robot for which the foot-based interactive motion control is expected to be performed using the method described in the embodiments of this application.
[0093] In the embodiments of this application, the gait movement of a humanoid robot that involves interaction between the soles of its feet and the ground refers to the physical contact and interaction between the soles of its feet and the ground during walking, running, or other movements, thereby achieving stable, efficient, and natural movement behavior.
[0094] Here, during the gait movement of the target humanoid robot, which involves interaction between the soles of its feet and the ground, the gait of the humanoid robot is usually divided into the following phases: Stance Phase, where the soles of the feet contact the ground, bear the weight of the body and generate propulsion; Swing Phase, where the feet leave the ground and swing forward, preparing for the next landing.
[0095] In this embodiment, the trunk joint state data includes trunk posture parameters, trunk velocity parameters, joint position parameters, joint velocity parameters, and driving joint control torque values; the motion state data includes center of mass position parameters, center of mass velocity parameters, foot contact point position parameters, and foot contact point velocity parameters.
[0096] In one possible implementation of this application, the step S101, which involves real-time acquisition of torso joint state data and motion state data of the target humanoid robot in the current control cycle, may include:
[0097] S1011. Real-time acquisition of the initial torso joint state data of the target humanoid robot in the current control cycle.
[0098] S1012. The initial trunk joint state data is filtered using a preset infinite impulse response filter to obtain the corresponding trunk joint state data.
[0099] Here, the Infinite Impulse Response Filter (IIR) is a class of linear time-invariant systems widely used in digital signal processing and analog signal processing. Its core characteristic is that the unit impulse response of the system is theoretically infinitely long. This is because the IIR filter contains a feedback path in its structure. The output of the IIR filter depends not only on the current and past input signals, but also on past output values.
[0100] S1013. Based on the trunk joint state data, determine the motion state data of the target humanoid robot corresponding to the current control cycle using the forward kinematics method.
[0101] Here, one possible approach for forward kinematics modeling is the DH (Denavit-Hartenberg) parametric method, which standardizes the transformation between adjacent coordinate systems by defining a set of four parameters for each link.
[0102] S102. In response to the target humanoid robot receiving an interactive control command, an initial reference trajectory set corresponding to the target humanoid robot is generated based on the trunk joint state data, the motion state data, and the interactive control command.
[0103] In this embodiment of the application, the initial reference trajectory set includes a foot contact force reference trajectory, a swing leg foot landing point reference trajectory, and a trunk center of mass reference trajectory.
[0104] Among them, the foot contact force reference trajectory refers to the curve of the expected reaction force (including vertical force, horizontal friction force, and torque) at the contact point between the supporting foot and the ground during the forward support period starting from the moment the humanoid robot leaves the ground; the swing leg foot landing point reference trajectory refers to the expected position and posture of the foot of the swing leg (the leg currently leaving the ground and moving forward) in the next gait cycle; the trunk center of mass reference trajectory refers to the trajectory of the expected position, velocity, and acceleration of the humanoid robot's overall center of mass (usually approximated as the trunk center) during walking as a function of time.
[0105] In one possible implementation of this application, step S102 may include:
[0106] S1021. In response to the target humanoid robot receiving an interactive control command, determine the interactive control parameters corresponding to the interactive control command.
[0107] In this embodiment of the application, the interactive control parameters include, but are not limited to, the lateral velocity parameter of the center of mass motion, the longitudinal velocity parameter of the center of mass motion, the vertical velocity parameter of the center of mass motion, and the torso height value.
[0108] S1022. Based on the motion state data, the interactive control parameters, and the preset ground contact and ground lift state sequences and ground contact and ground lift time sequences, determine the polynomial coefficients of the foot contact force trajectory corresponding to the multi-step support of the target humanoid robot from the moment of liftoff, and generate the foot contact force reference trajectory corresponding to the target humanoid robot based on the foot contact force trajectory polynomial coefficients and the interactive control parameters.
[0109] In this embodiment of the application, the expressions for the preset ground contact and ground lift state sequence and the ground contact and ground lift time sequence are as follows.
[0110] .
[0111] .
[0112] in, Represents the sequence of ground contact and ground lift states; This represents the time series of ground contact and ground departure; 0 indicates the ground departure state, and 1 indicates the ground contact state. The current moment; For the first The moment of contact with the ground; For the first The moment a step leaves the ground.
[0113] Here, the durations of the single-leg support phase and the double-leg take-off phase in running are set as follows: and One step consists of a take-off phase and the next adjacent single-leg support phase. The total predicted number of steps for gait movement is set to [value missing]. To satisfy " " This is the forward prediction step size.
[0114] Furthermore, the expressions for the contact time and lift-off time at step h are shown below.
[0115] .
[0116] .
[0117] in, Let h be the moment of contact with the ground. Let h be the time of liftoff at step h; and These represent the duration of the single-leg support phase and the duration of the two-leg airborne phase, respectively. Indicates the first The moment a step leaves the ground.
[0118] In one possible implementation of this application, step S1022 may include:
[0119] S10221. Based on the preset ground contact and ground lift state sequence and ground contact and ground lift time sequence, determine the single leg lift time and single leg ground contact time of the target humanoid robot for each step.
[0120] For example, in the touch-to-ground and take-off time series Determine the single-leg lift-off time corresponding to step h. and the moment of single-leg contact with the ground .
[0121] S10222. During the multi-step support phase cycle of the target humanoid robot starting from the moment the single leg leaves the ground, based on the moment the single leg leaves the ground, the moment the single leg touches the ground, and the interactive control parameters, iteratively update the center of mass position parameters and center of mass velocity parameters in the motion state data to obtain center of mass leave the ground state parameters and center of mass touch the ground state parameters.
[0122] Here, the center of mass off-ground state parameters include the center of mass off-ground position parameters and the center of mass off-ground velocity parameters corresponding to each step; the center of mass touching-ground state parameters include the center of mass touching-ground position parameters and the center of mass touching-ground velocity parameters corresponding to each step.
[0123] In this embodiment of the application, the center of mass liftoff position parameter and the center of mass liftoff velocity parameter are determined by the following formulas.
[0124] ; ; .
[0125] ; ; .
[0126] .
[0127] in,( , , () represents the position parameter of the center of mass above the ground; , , () represents the velocity parameter of the center of mass leaving the ground; This indicates the preset position coefficient for forward motion; This represents the lateral symmetrical swinging speed of a humanoid robot caused by the alternating movement of its legs; This refers to the longitudinal velocity parameter of the center of mass motion in the interactive control parameters; This refers to the lateral velocity parameter of the center of mass motion in the interactive control parameters; This represents the vertical velocity parameter of the center of mass motion in the interactive control parameters; This represents the torso height value in the interactive control parameters; and These represent the longitudinal and lateral parameters in the parameters for the position of the center of mass touching the ground, respectively. and These represent the duration of the single-leg support phase and the duration of the two-leg airborne phase, respectively. It represents the acceleration due to gravity.
[0128] In this embodiment of the application, the center of mass contact position parameter and the center of mass contact velocity parameter are determined by the following formula.
[0129] ; ; .
[0130] ; ; .
[0131] in,( , , () represents the parameters of the center of mass contacting the ground; , , () represents the velocity parameter of the center of mass at ground contact; Indicates the duration of the single or double leg air phase; , , () represents the velocity parameter of the center of mass leaving the ground in the previous step; This indicates the vertical position of the center of mass above the ground in the previous step.
[0132] S10223. Based on the center of mass off-ground state parameters, the center of mass touching-ground state parameters, and the preset single-leg support phase periodic step length, determine the polynomial coefficients of the foot contact force trajectory corresponding to the target humanoid robot.
[0133] The polynomial coefficients of the foot contact force trajectory include a set of lateral amplitude coefficients, a set of lateral morphological coefficients, a set of longitudinal front amplitude coefficients, a set of longitudinal rear amplitude coefficients, a set of vertical front amplitude coefficients, and a set of vertical rear amplitude coefficients.
[0134] In this application, the polynomial coefficients of the foot contact force trajectory corresponding to the target humanoid robot are determined by the following formula.
[0135] .
[0136] .
[0137] .
[0138] .
[0139] in, Represents the set of longitudinal amplitude coefficients; Represents the set of vertical morphological coefficients; This represents the set of amplitude coefficients in the horizontal front segment; This represents the set of amplitude coefficients for the later horizontal segment; Represents the set of amplitude coefficients for the vertical forward segment; This represents the set of amplitude coefficients for the vertical rear segment; Indicates the duration of the single-leg support phase; Represents gravitational acceleration; Indicates the mass of the humanoid robot; , , () represents the position parameter of the center of mass above the ground; , , () represents the velocity parameter of the center of mass leaving the ground; , , () represents the parameters of the center of mass contacting the ground; , , () represents the velocity parameter of the center of mass touching the ground.
[0140] S10224. Based on the ground contact and ground lift time series and the polynomial coefficients of the foot contact force trajectory, generate the foot contact force reference trajectory corresponding to the longitudinal, lateral and vertical directions of the target humanoid robot.
[0141] In this embodiment of the application, the reference trajectories of the foot contact force of the target humanoid robot in the longitudinal, lateral and vertical directions are generated by the following formula.
[0142] .
[0143] .
[0144] .
[0145] .
[0146] in, This represents the reference trajectory of the target humanoid robot's foot contact force in the longitudinal direction. This represents the reference trajectory of the target humanoid robot's foot contact force in the lateral direction. This represents the reference trajectory of the target humanoid robot's foot contact force in the vertical direction; Indicates the normalized time of the supporting phase; Let h be the moment of contact with the ground. Let h be the time of liftoff at step h; Represents the set of longitudinal amplitude coefficients; Represents the set of vertical morphological coefficients; This represents the set of amplitude coefficients in the horizontal front segment; This represents the set of amplitude coefficients for the later horizontal segment; Represents the set of amplitude coefficients for the vertical forward segment; This represents the set of amplitude coefficients for the vertical rear segment.
[0147] S1023. Based on the ground contact and ground lift state sequence, the ground contact and ground lift time sequence, the trunk joint state data, the motion state data, and the preset parameters of the target humanoid robot, generate a reference trajectory for the landing point of the swing leg foot corresponding to each leg component of the target humanoid robot.
[0148] In one possible implementation of this application, step S1023 may include:
[0149] S10231. Based on the foot contact point position parameters in the motion state data and the joint position parameters and joint velocity parameters in the trunk joint state data, determine the absolute contact and departure position sequence of the target humanoid robot.
[0150] In this step, based on the preset total predicted steps, the duration of the single-leg support phase, the duration of the double-leg airborne phase, the preset speed and acceleration of the swinging leg, as well as the current foot contact point position parameters and the previous foot contact point position parameters in the motion state data, and the joint position parameters and joint speed parameters in the trunk joint state data, the absolute position sequence of the foot contact-leave points for the predicted forward N steps is continuously calculated and updated, that is, the absolute position sequence of the contact and leave points corresponding to the target humanoid robot.
[0151] In this embodiment of the application, the expression for the absolute position sequence of ground contact and ground departure is as follows.
[0152] .
[0153] in, This represents the sequence of absolute positions at ground contact and at ground departure. Indicates the first The positional parameters of the foot contact point at the moment of foot liftoff; Indicates the first The position parameters of the foot contact point at the moment of ground contact; This represents the position parameter of the foot contact point at the initial moment of takeoff.
[0154] Here, the position of the contact point at the instant of liftoff in step i is the same as the position of the contact point at the instant of ground contact in step i, that is, .
[0155] S10232. Based on the ground contact and ground lift time sequence, determine the midpoint of the swing phase corresponding to each step of the target humanoid robot, and based on the ground contact and ground lift absolute position sequence, determine the horizontal and vertical ground contact position parameters corresponding to the target humanoid robot.
[0156] In this embodiment of the application, the midpoint of the swing phase is determined by the following formula.
[0157] .
[0158] in, Indicates the midpoint of the swing phase; Let h be the moment of contact with the ground. This represents the time of liftoff from the ground in the two steps prior to step h.
[0159] In this embodiment of the application, the longitudinal and transverse ground contact position parameters are determined by the following formula.
[0160] .
[0161] in, This represents the longitudinal and transverse contact position parameters, that is, the midpoint of the foot position in the longitudinal and transverse directions at step h. This indicates the longitudinal and lateral components of the ground contact position at step h; This represents the vertical and horizontal components of the ground position of the two steps preceding step h.
[0162] Here, the vertical ground contact position parameter is usually set to a preset constant.
[0163] S10233. Based on the midpoint of the swing phase and the ground contact and ground lift time sequence, determine the discrete time sequence corresponding to each leg component of the target humanoid robot.
[0164] In this embodiment of the application, the expression for the discrete time series corresponding to each leg component of the target humanoid robot is as follows.
[0165] .
[0166] .
[0167] Here, for discrete time series, discrete position series, and discrete velocity series, when the left leg is at the moment of takeoff in the current state, subscript 1 represents the left leg and subscript 2 represents the right leg; when the right leg is at the moment of takeoff in the current state, subscript 2 represents the left leg and subscript 1 represents the right leg.
[0168] in, and This represents the discrete time series corresponding to each leg component.
[0169] S10234. Based on the horizontal and vertical ground contact position parameters and the absolute ground contact and ground lift position sequence, determine the discrete position sequence corresponding to each swing leg component of the target humanoid robot.
[0170] In this embodiment of the application, the expression for the discrete position sequence corresponding to each leg component of the target humanoid robot is as follows.
[0171] .
[0172] .
[0173] in, and This represents the discrete position sequence corresponding to each leg component.
[0174] S10235. Based on the preset intermediate velocity parameters, the absolute position sequence of the ground contact and ground lift-off, and the time sequence of the ground contact and ground lift-off, determine the discrete velocity sequence corresponding to each swing leg component of the target humanoid robot.
[0175] In this embodiment of the application, the expression for the discrete velocity sequence corresponding to each leg component of the target humanoid robot is as follows.
[0176] .
[0177] .
[0178] in, and This represents the discrete velocity sequence corresponding to each leg component.
[0179] S10236. Perform cubic interpolation on the discrete time sequence, discrete position sequence and discrete velocity sequence corresponding to each swing leg component to generate a reference trajectory of the landing point position of the swing leg foot corresponding to each leg component of the target humanoid robot.
[0180] In this step, in specific implementation, firstly, cubic interpolation is performed on the discrete time sequence, discrete position sequence, and discrete velocity sequence corresponding to the first swing leg component. That is, a cubic interpolation function is constructed with the time nodes of the discrete time sequence as the abscissa and the position nodes of the discrete position sequence and the velocity nodes of the discrete velocity sequence as the ordinate, and the interpolation coefficients are solved. It is necessary to satisfy that the endpoint position and velocity of each time interval are consistent with the sequence set to obtain the continuous trajectory of the corresponding leg. Then, the above interpolation process is repeated on the discrete time sequence, discrete position sequence, and discrete velocity sequence corresponding to the second swing leg component to obtain the continuous trajectory of the other leg. After that, the trajectory is corrected according to the support phase rule and the trajectory smoothness is verified. Finally, the two trajectories are integrated to generate the reference trajectory of the landing point position of the swing leg foot of each leg component of the target humanoid robot.
[0181] S1024. Based on the interactive control parameters, the trunk pose parameters in the trunk joint state data are used as the starting point for integration to generate the trunk centroid reference trajectory corresponding to the target humanoid robot.
[0182] In this step, based on the lateral velocity parameters, longitudinal velocity parameters, and vertical velocity parameters of the center of mass motion, as well as the trunk height value in the interactive control parameters, and assuming that the velocity of the trunk center of mass is equal to that of the total center of mass, the trunk pose parameters in the trunk joint state data are used as the starting point for integration to generate the trunk center of mass reference trajectory corresponding to the target humanoid robot.
[0183] S103. Based on the trunk joint state data and the motion state data, the initial reference trajectory is optimized using the constructed objective function to obtain the state variable trajectory and control output trajectory corresponding to the target humanoid robot.
[0184] In one possible implementation of this application, step S103 may include:
[0185] S1031. Based on the motion state data and the trunk joint state data, construct the state variables corresponding to the target humanoid robot, and based on the joint velocity parameters in the trunk joint state data and the foot contact force reference trajectory in the initial reference trajectory, construct the control output variables to be optimized corresponding to the target humanoid robot.
[0186] In this embodiment of the application, the expression of the state variable is as follows.
[0187] .
[0188] in, This represents the state variable corresponding to the target humanoid robot; This represents the center-of-mass momentum corresponding to the motion state data; This represents the state parameters in the trunk joint state data.
[0189] Here, the expressions for the state parameters in the trunk joint state data are shown below.
[0190] .
[0191] in, Represents the state parameters in the trunk joint state data; Represents trunk pose parameters in trunk joint state data; This represents the joint position parameters in the trunk joint status data.
[0192] In this embodiment of the application, the expression of the control output variable to be optimized is as follows.
[0193]
[0194] in, This represents the output variable of the control to be optimized; This represents the joint velocity parameters in the trunk joint status data. This represents the three-dimensional force composition vector at the foot contact point corresponding to the foot contact force reference trajectory in the initial reference trajectory.
[0195] here, ,in, This represents the three-dimensional force composition vector at the plantar contact point corresponding to the plantar contact force reference trajectory in the initial reference trajectory. This indicates the number of predefined contact points on the sole of the foot.
[0196] S1032. Based on the foot contact force reference trajectory and the preset desired joint velocity parameters, construct the desired control output variable, and based on the desired control output variable, the state variable, the control output variable to be optimized, and the desired state variable corresponding to the trunk centroid reference trajectory in the initial reference trajectory, construct an objective function with exponentially decaying weights.
[0197] In one possible implementation of this application, step S1032 may include:
[0198] S10321. Based on the foot contact force reference trajectory, determine the ground contact force sequence of the target humanoid robot's off-ground legs, and assign the off-ground leg contact force sequence to the foot contact point of the target humanoid robot to determine the expected trajectory of the foot contact force.
[0199] In this embodiment of the application, if the current moment of takeoff is when the left leg is about to takeoff, the expression for the sequence of ground contact forces of the takeoff leg is as follows.
[0200] .
[0201] In this embodiment of the application, if the current moment of takeoff is when the right leg is about to leave the ground, the expression for the sequence of ground contact forces of the takeoff leg is as follows.
[0202] .
[0203] in, This represents the sequence of forces acting on the left leg when it touches the ground. This represents the sequence of forces acting on the right leg upon contact with the ground. Indicates the first Reference trajectory of the foot's contact force during a step; This is the modulo operation for the number of steps.
[0204] In this embodiment of the application, the expression for the desired trajectory of the foot contact force is as follows.
[0205] .
[0206] in, This represents the expected trajectory of the foot's contact force with the ground; This represents the combined ground contact force vector distributed to the predefined contact point on the sole of the left foot; This represents the combined ground contact force vector allocated to the predefined contact point on the sole of the right foot.
[0207] Here, the expression for the combined ground contact force vector assigned to the predefined contact points on the soles of the left and right legs is shown below.
[0208] .
[0209] in, This indicates the predefined first number assigned to the sole of the left leg. The combined ground contact force vector at each contact point; This indicates the predefined first number assigned to the sole of the right leg. The combined ground contact force vector at each contact point; This indicates the predefined first step on the sole of the left leg. The ground contact force at each contact point; This indicates the predefined first step on the sole of the right leg. The ground contact force at each contact point; This indicates the number of predefined contact points on the sole of the foot.
[0210] S10322. Based on the expected trajectory of the foot contact force and the preset expected joint velocity parameters, construct the expected control output variable.
[0211] In this embodiment of the application, the expression for the desired control output variable is as follows.
[0212] .
[0213] in, This indicates the desired control over the output variable; This represents the expected trajectory of the foot's contact force with the ground; This represents the preset desired joint velocity parameters.
[0214] S10323. Based on the control output variable to be optimized, the state variable, the preset exponential decay weight coefficient, the expected state variable corresponding to the trunk centroid reference trajectory in the initial reference trajectory, and the expected control output variable, construct an instantaneous cost function.
[0215] Here, the instantaneous cost function may include a function weighted by the reference trajectory tracking error.
[0216] In this embodiment of the application, the expression of the instantaneous cost function is as follows.
[0217] .
[0218] in, Represents the instantaneous cost function; This represents the output variable of the control to be optimized; This indicates the desired control over the output variable; and These represent the control output tracking error weight matrix and the state variable tracking error weight matrix, respectively. and These represent the preset exponential decay weighting coefficients ( >0, >0); This represents the state variable corresponding to the target humanoid robot; This represents the desired state variable corresponding to the torso centroid reference trajectory in the initial reference trajectory.
[0219] here, This represents the control output tracking error term, used to optimize the deviation between the joint velocity parameters and the three-dimensional force synthesis vector of the predefined contact point on the sole of the foot and the desired trajectory; This represents the state variable tracking error term, used to optimize the deviations in centroid spatial momentum, trunk pose parameters, joint position parameters, and the desired trajectory.
[0220] S10324. Construct an objective function based on the instantaneous cost function and the preset forward prediction step size.
[0221] In this embodiment of the application, the expression of the objective function is as follows.
[0222] .
[0223] in, Represent the objective function; Indicates the forecast time step of the current control cycle; Represents the instantaneous cost function; This represents the state variable corresponding to the target humanoid robot; This represents the output variable of the control to be optimized; Indicates a time step.
[0224] S1033. Based on the reference trajectory of the landing point of the swing leg foot in the initial reference trajectory, determine the constraint conditions, and based on the trunk joint state data and the motion state data, optimize the objective function using a numerical optimization method under the constraint conditions to obtain the state variable trajectory and control output trajectory corresponding to the target humanoid robot.
[0225] Here, the constraints include humanoid robot dynamic model constraint functions, initial position constraints, equality constraint functions, and inequality constraint functions.
[0226] In this embodiment of the application, the expression for the constraint is as follows.
[0227] .
[0228] in, and Represents the constraint functions of the dynamic model of the humanoid robot; Indicates the initial position constraints; Represents the equality constraint function; This represents the inequality constraint function.
[0229] In this embodiment, the expression of the constraint function of the humanoid robot dynamic model is as follows.
[0230] .
[0231] in, and Represents the constraint functions of the dynamic model of the humanoid robot; The total mass of the humanoid robot; It is the gravity vector; For the first The relative position vector of each predefined contact point on the sole of the foot to the total center of mass; A three-dimensional moment vector (always 0) for a predefined contact point on the sole of the foot. For the matrix sub-blocks related to the centroid Jacobian matrix and the base; For the centroid Jacobian matrix and the joint-related matrix sub-blocks; Indicates joint velocity parameters; This indicates the reference trajectory of the foot's contact force with the ground; This indicates the number of predefined contact points on the sole of the foot.
[0232] In this embodiment of the application, the expression of the equality constraint function is as follows.
[0233] .
[0234] in, Represents the equality constraint function; and These are the real-time integrated position vector and integrated velocity vector of all predefined contact points on the soles of the swing leg; and These are the expected values of the combined position vector and combined velocity vector of all predefined contact points on the soles of the swing leg, respectively. This represents the contact force vector at all points of contact on the sole of the swinging leg. Real-time velocity vectors for all predefined contact points on the soles of the supporting legs.
[0235] In this embodiment of the application, the expression of the inequality constraint function is as follows.
[0236] .
[0237] in, and These represent the minimum and maximum allowed values for the control output, respectively. This represents the vector function for extracting vertical force at the predefined contact point on the sole of the supporting leg. The friction cone constraint vector function for the predefined contact point on the sole of the supporting leg.
[0238] Here, the components of the returned vector from the extracted vector function are the vertical force vectors of all predefined contact points on the soles of the supporting leg; the components of the returned vector from the friction cone constraint vector function are the friction cone vectors of all predefined contact points on the soles of the supporting leg.
[0239] Furthermore, based on the trunk joint state data and motion state data, the objective function is optimized using numerical optimization methods under constraints to obtain the state variable trajectory and control output trajectory corresponding to the target humanoid robot. The optimal control output and state trajectory that satisfy the constraints and minimize the error are found through optimization algorithms, thereby realizing the correction and optimization of the initial reference trajectory.
[0240] The state variable trajectory includes the corrected center of mass spatial momentum, trunk pose parameters, and joint position parameters; the control output trajectory includes the corrected joint velocity parameters and the foot contact force trajectory.
[0241] S104. Based on the state variable trajectory and the control output trajectory, determine the joint control torque value of the target humanoid robot in the next control cycle, and control the target humanoid robot to perform the gait movement according to the joint control torque value.
[0242] In this step, based on the complete dynamic model of the state variable trajectory, the control output trajectory, and the target humanoid robot, an optimization control method combining multiple control Lyapunov functions is invoked. With the goal of tracking the corrected trajectory of the state variable trajectory and the control output trajectory, the joint control torque value that meets the stability requirements is solved through an optimization algorithm.
[0243] Furthermore, the joint control torque values are sent to each drive joint of the target humanoid robot via an Ethernet communication interface to drive the joints to execute torque commands, thereby realizing the compliant foot-based gait movement of the target humanoid robot.
[0244] Thus, compared with the method based on SLIP model reference trajectory planning, the compliant motion planning in the method of this application embodiment obtains the compliant foot contact force amplitude coefficient by solving simple algebraic equations, without the need for a passive SLIP model generation scheme, thereby improving the controllability of motion; it does not require the use of nonlinear programming methods to pre-generate the centroid reference trajectory and foot contact force sequence, thereby improving the computational efficiency of compliant motion planning; and it directly uses the reference trajectory of the foot contact force to replace the original foot, resulting in a larger range of foot contact force variation and higher optimization control sensitivity, avoiding the problem of multi-objective fusion failure of model predictive control due to small vertical centroid motion amplitude.
[0245] Furthermore, by matching the generation method of plantar contact force with model predictive control, the application problem of obtaining the contact force of predefined contact points of alternating left and right legs is solved. It has the characteristics of simple form, controllable contact time, and stable and accurate control. Compared with the compliant motion control scheme without model predictive control, the introduction of model predictive control method to correct the initial reference trajectory of state variables and compliant plantar contact force online can effectively avoid the sudden change of plantar contact force at the moment of contact compared with the direct use of task space control method, and achieve the efficient integration of the two major goals of stable disturbance-resistant motion and compliant plantar interaction.
[0246] Furthermore, the method described in this application adopts a centroid dynamic model that considers joint position and variable centroid inertia, and proposes a weighting strategy with exponential decay. Compared with a single rigid body model and a fixed weight matrix, the fusion of the two can effectively reduce the error accumulation caused by dynamic prediction of the model over a long period of time, and improve the stability and accuracy of model prediction and control.
[0247] Furthermore, compared to traditional task space weighted control or single-control Lyapunov function methods, the method described in this application adopts a multi-control Lyapunov function method, which can improve the overall performance of motion control and ensure efficient tracking of the corrected reference trajectory of the model predictive control output.
[0248] The control method for foot-ground interactive motion of a humanoid robot provided in this application generates an initial reference trajectory set corresponding to the target humanoid robot based on real-time collected trunk joint state data and motion state data when the target humanoid robot performs gait motion with its feet interacting with the ground. The initial reference trajectory is then optimized using a constructed objective function to obtain the state variable trajectory and control output trajectory corresponding to the target humanoid robot, and the corresponding joint control torque value is determined. The target humanoid robot is then controlled to perform gait motion according to the joint control torque value. This achieves high-efficiency, stable, disturbance-resistant, and smooth motion control of the humanoid robot, effectively improving the efficiency and control accuracy of compliant motion planning, avoiding problems such as sudden changes in foot contact force, improving the compliance of the humanoid robot's foot-ground interactive motion, and thus enhancing the stability and adaptability of the humanoid robot's motion.
[0249] Please see Figure 2 , Figure 2 This is a schematic diagram of the structure of a control device for foot-based interactive motion of a humanoid robot, provided in an embodiment of this application. Figure 2 As shown, the control device 200 includes:
[0250] The real-time data acquisition module 210 is used to collect the trunk joint state data and motion state data of the target humanoid robot in the current control cycle when the target humanoid robot is performing gait movements with its feet interacting with the ground.
[0251] The reference trajectory generation module 220 is used to generate an initial reference trajectory set corresponding to the target humanoid robot based on the trunk joint state data, the motion state data and the interactive control command in response to the target humanoid robot receiving an interactive control command.
[0252] The reference trajectory optimization module 230 is used to optimize the initial reference trajectory based on the trunk joint state data and the motion state data using a constructed objective function, so as to obtain the state variable trajectory and control output trajectory corresponding to the target humanoid robot.
[0253] The compliant motion control module 240 is used to determine the joint control torque value of the target humanoid robot in the next control cycle based on the state variable trajectory and the control output trajectory, and control the target humanoid robot to perform the gait movement according to the joint control torque value.
[0254] Furthermore, when the real-time data acquisition module 210 is used to acquire the torso joint state data and motion state data of the target humanoid robot in the current control cycle, the real-time data acquisition module 210 is used for:
[0255] Real-time acquisition of initial torso joint state data of the target humanoid robot in the current control cycle;
[0256] The initial trunk joint state data is filtered using a preset infinite impulse response filter to obtain corresponding trunk joint state data; wherein, the trunk joint state data includes trunk pose parameters, trunk velocity parameters, joint position parameters, joint velocity parameters, and driving joint control torque values.
[0257] Based on the trunk joint state data, the motion state data of the target humanoid robot corresponding to the current control cycle is determined using the forward kinematics method; wherein, the motion state data includes center of mass position parameters, center of mass velocity parameters, foot contact point position parameters, and foot contact point velocity parameters.
[0258] Furthermore, the initial reference trajectory set includes a foot contact force reference trajectory, a swing leg foot landing point reference trajectory, and a torso center of mass reference trajectory; when the reference trajectory generation module 220 generates the initial reference trajectory set corresponding to the target humanoid robot based on the torso joint state data, the motion state data, and the interactive control command in response to the target humanoid robot receiving an interactive control command, the reference trajectory generation module 220 is used to:
[0259] In response to the target humanoid robot receiving an interactive control command, the interactive control parameters corresponding to the interactive control command are determined;
[0260] Based on the motion state data, the interactive control parameters, and the preset ground contact and ground lift state sequences and ground contact and ground lift time sequences, the polynomial coefficients of the foot contact force trajectory corresponding to the multi-step support of the target humanoid robot from the moment of ground lift are determined, and based on the foot contact force trajectory polynomial coefficients and the interactive control parameters, the foot contact force reference trajectory corresponding to the target humanoid robot is generated.
[0261] Based on the ground contact and ground lift state sequence, the ground contact and ground lift time sequence, the trunk joint state data, the motion state data, and the preset parameters of the target humanoid robot, a reference trajectory for the landing point of the swing leg foot corresponding to each leg component of the target humanoid robot is generated.
[0262] Based on the interactive control parameters, the trunk pose parameters in the trunk joint state data are used as the starting point for integration to generate the trunk centroid reference trajectory corresponding to the target humanoid robot.
[0263] Furthermore, when the reference trajectory generation module 220 is used to determine the polynomial coefficients of the foot contact force trajectory corresponding to the multi-step support of the target humanoid robot from the moment of liftoff based on the motion state data, the interactive control parameters, and the preset ground contact and liftoff state sequences and ground contact and liftoff time sequences, and to generate the foot contact force reference trajectory corresponding to the target humanoid robot based on the foot contact force trajectory polynomial coefficients and the interactive control parameters, the reference trajectory generation module 220 is used to:
[0264] Based on the preset ground-touching and ground-leaning state sequence and ground-touching and ground-leaning time sequence, the time when the target humanoid robot leaves the ground and the time when it touches the ground for each step are determined.
[0265] During the forward support phase period of the target humanoid robot starting from the moment the single leg leaves the ground, the center of mass position parameters and center of mass velocity parameters in the motion state data are iteratively updated based on the moment the single leg leaves the ground, the moment the single leg touches the ground, and the interactive control parameters, so as to obtain the center of mass leave the ground state parameters and the center of mass touches the ground state parameters.
[0266] Based on the center of mass off-ground state parameters, the center of mass on-ground state parameters, and the preset single-leg support phase periodic step length, the polynomial coefficients of the foot contact force trajectory corresponding to the target humanoid robot are determined; wherein, the polynomial coefficients of the foot contact force trajectory include a set of longitudinal amplitude coefficients, a set of longitudinal shape coefficients, a set of transverse front amplitude coefficients, a set of transverse rear amplitude coefficients, a set of vertical front amplitude coefficients, and a set of vertical rear amplitude coefficients;
[0267] Based on the ground contact and ground lift time series and the polynomial coefficients of the foot contact force trajectory, the foot contact force reference trajectories corresponding to the longitudinal, lateral, and vertical directions of the target humanoid robot are generated.
[0268] Furthermore, when the reference trajectory generation module 220 generates a reference trajectory for the landing point position of the swing leg foot corresponding to each leg component of the target humanoid robot based on the ground contact and lift-off state sequence, the ground contact and lift-off time sequence, the trunk joint state data, the motion state data, and the preset parameters of the target humanoid robot, the reference trajectory generation module 220 is used to:
[0269] Based on the foot contact point position parameters in the motion state data and the joint position parameters and joint velocity parameters in the trunk joint state data, the absolute contact and departure position sequence of the target humanoid robot is determined.
[0270] Based on the ground contact and ground lift time sequence, the midpoint of the swing phase corresponding to each step of the target humanoid robot is determined, and based on the ground contact and ground lift absolute position sequence, the longitudinal and lateral ground contact position parameters of the target humanoid robot are determined.
[0271] Based on the midpoint of the swing phase and the ground contact and ground lift time sequences, the discrete time sequence corresponding to each leg component of the target humanoid robot is determined;
[0272] Based on the longitudinal and lateral ground contact position parameters and the absolute ground contact and ground departure position sequence, the discrete position sequence corresponding to each swing leg component of the target humanoid robot is determined;
[0273] Based on preset intermediate velocity parameters, the absolute position sequence of ground contact and ground departure, and the time sequence of ground contact and ground departure, the discrete velocity sequence corresponding to each swinging leg component of the target humanoid robot is determined;
[0274] Cubic interpolation is performed on the discrete time sequence, discrete position sequence, and discrete velocity sequence corresponding to each swing leg component to generate a reference trajectory for the landing point of the swing leg foot corresponding to each leg component of the target humanoid robot.
[0275] Furthermore, when the reference trajectory optimization module 230 optimizes the initial reference trajectory based on the torso joint state data and the motion state data using a constructed objective function to obtain the state variable trajectory and control output trajectory corresponding to the target humanoid robot, the reference trajectory optimization module 230 is used to:
[0276] Based on the motion state data and the trunk joint state data, the state variables corresponding to the target humanoid robot are constructed, and based on the joint velocity parameters in the trunk joint state data and the foot contact force reference trajectory in the initial reference trajectory, the control output variables to be optimized corresponding to the target humanoid robot are constructed.
[0277] Based on the foot contact force reference trajectory and the preset desired joint velocity parameters, a desired control output variable is constructed, and based on the desired control output variable, the state variable, the control output variable to be optimized, and the desired state variable corresponding to the trunk centroid reference trajectory in the initial reference trajectory, an objective function with exponential decay weights is constructed.
[0278] Based on the reference trajectory of the landing point of the swing leg foot in the initial reference trajectory, the constraint conditions are determined, and based on the trunk joint state data and the motion state data, the objective function is optimized using a numerical optimization method under the constraint conditions to obtain the state variable trajectory and control output trajectory corresponding to the target humanoid robot.
[0279] Furthermore, when the reference trajectory optimization module 230 is used to construct a desired control output variable based on the foot contact force reference trajectory and preset desired joint velocity parameters, and to construct an objective function with exponentially decaying weights based on the desired control output variable, the state variable, the control output variable to be optimized, and the desired state variable corresponding to the trunk centroid reference trajectory in the initial reference trajectory, the reference trajectory optimization module 230 is used to:
[0280] Based on the foot contact force reference trajectory, the ground contact force sequence of the target humanoid robot's off-ground leg is determined, and the off-ground leg contact force sequence is assigned to the foot contact point of the target humanoid robot to determine the expected foot contact force trajectory.
[0281] Based on the desired trajectory of the foot contact force and the preset desired joint velocity parameters, a desired control output variable is constructed;
[0282] Based on the control output variable to be optimized, the state variable, the preset exponential decay weight coefficient, the expected state variable corresponding to the trunk centroid reference trajectory in the initial reference trajectory, and the expected control output variable, an instantaneous cost function is constructed.
[0283] Based on the instantaneous cost function and the preset forward prediction step size, an objective function is constructed.
[0284] The control device for foot-ground interactive motion of the humanoid robot provided in this application generates an initial reference trajectory set corresponding to the target humanoid robot based on real-time collected trunk joint state data and motion state data when the target humanoid robot performs gait motion with its feet interacting with the ground. The initial reference trajectory is then optimized using a constructed objective function to obtain the state variable trajectory and control output trajectory corresponding to the target humanoid robot, and the corresponding joint control torque value is determined. The target humanoid robot is then controlled to perform gait motion according to the joint control torque value. This achieves high-efficiency, stable, disturbance-resistant, and smooth motion control of the humanoid robot, effectively improving the efficiency and control accuracy of compliant motion planning, avoiding problems such as sudden changes in foot contact force, improving the compliance of the humanoid robot's foot-ground interactive motion, and thus enhancing the stability and adaptability of the humanoid robot's motion.
[0285] Please see Figure 3 , Figure 3 This is a schematic diagram of the structure of an electronic device provided in an embodiment of this application. Figure 3 As shown, the electronic device 300 includes a processor 310, a memory 320, and a bus 330.
[0286] The memory 320 stores machine-readable instructions executable by the processor 310. When the electronic device 300 is running, the processor 310 and the memory 320 communicate via the bus 330. When the machine-readable instructions are executed by the processor 310, they can perform the operations described above. Figure 1 The steps of the control method for the humanoid robot's foot-based interactive motion in the method embodiment shown are described in detail in the method embodiment, and will not be repeated here.
[0287] This application also provides a computer-readable storage medium storing a computer program, which, when executed by a processor, can perform the above-described actions. Figure 1 The steps of the control method for the humanoid robot's foot-based interactive motion in the method embodiment shown are described in detail in the method embodiment, and will not be repeated here.
[0288] Those skilled in the art will understand that, for the sake of convenience and brevity, the specific working processes of the systems, devices, and units described above can be referred to the corresponding processes in the foregoing method embodiments, and will not be repeated here.
[0289] In the several embodiments provided in this application, it should be understood that the disclosed systems, apparatuses, and methods can be implemented in other ways. The apparatus embodiments described above are merely illustrative. For example, the division of units is only a logical functional division, and in actual implementation, there may be other division methods. Furthermore, multiple units or components may be combined or integrated into another system, or some features may be ignored or not executed. Additionally, the shown or discussed mutual couplings, direct couplings, or communication connections may be through some communication interfaces; indirect couplings or communication connections between devices or units may be electrical, mechanical, or other forms.
[0290] The units described as separate components may or may not be physically separate. 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 the units can be selected to achieve the purpose of this embodiment according to actual needs.
[0291] In addition, the functional units in the various embodiments of this application can be integrated into one processing unit, or each unit can exist physically separately, or two or more units can be integrated into one unit.
[0292] If the aforementioned functions are implemented as software functional units and sold or used as independent products, they can be stored in a processor-executable, non-volatile, computer-readable storage medium. Based on this understanding, the technical solution of this application, in essence, or the part that contributes to the prior art, or a portion of the technical solution, can be embodied in the form of a software product. This computer software product is stored in a storage medium and includes several instructions to cause a computer device (which may be a personal computer, server, or network device, etc.) to execute all or part of the steps of the methods described in the various embodiments of this application. The aforementioned storage medium includes various media capable of storing program code, such as USB flash drives, portable hard drives, read-only memory (ROM), random access memory (RAM), magnetic disks, or optical disks.
[0293] Finally, it should be noted that the above-described embodiments are merely specific implementations of this application, used to illustrate the technical solutions of this application, and not to limit them. The scope of protection of this application is not limited thereto. Although this application has been described in detail with reference to the foregoing embodiments, those skilled in the art should understand that any person skilled in the art can still modify or easily conceive of changes to the technical solutions described in the foregoing embodiments, or make equivalent substitutions for some of the technical features, within the scope of the technology disclosed in this application. Such modifications, changes, or substitutions do not cause the essence of the corresponding technical solutions to deviate from the spirit and scope of the technical solutions of the embodiments of this application, and should all be covered within the scope of protection of this application. Therefore, the scope of protection of this application should be determined by the scope of the claims.
Claims
1. A control method for foot-based interactive motion of a humanoid robot, characterized in that, The control method includes: While the target humanoid robot is performing gait movements with its feet interacting with the ground, the system collects real-time data on the trunk joint status and motion status of the target humanoid robot in the current control cycle. In response to the target humanoid robot receiving an interactive control command, an initial reference trajectory set corresponding to the target humanoid robot is generated based on the trunk joint state data, the motion state data, and the interactive control command; wherein, the initial reference trajectory set includes a foot contact force reference trajectory, a swing leg foot landing point reference trajectory, and a trunk center of mass reference trajectory; In response to the target humanoid robot receiving an interactive control command, based on the torso joint state data, the motion state data, and the interactive control command, an initial reference trajectory set corresponding to the target humanoid robot is generated, including: In response to the target humanoid robot receiving an interactive control command, the interactive control parameters corresponding to the interactive control command are determined; Based on the motion state data, the interactive control parameters, and the preset ground contact and ground lift state sequences and ground contact and ground lift time sequences, the polynomial coefficients of the foot contact force trajectory corresponding to the multi-step support of the target humanoid robot from the moment of ground lift are determined, and based on the foot contact force trajectory polynomial coefficients and the interactive control parameters, the foot contact force reference trajectory corresponding to the target humanoid robot is generated. Based on the ground contact and ground lift state sequence, the ground contact and ground lift time sequence, the trunk joint state data, the motion state data, and the preset parameters of the target humanoid robot, a reference trajectory for the landing point of the swing leg foot corresponding to each leg component of the target humanoid robot is generated. Based on the interactive control parameters, the trunk pose parameters in the trunk joint state data are integrated to generate the trunk centroid reference trajectory corresponding to the target humanoid robot. Based on the trunk joint state data and the motion state data, the initial reference trajectory is optimized using the constructed objective function to obtain the state variable trajectory and control output trajectory corresponding to the target humanoid robot. Based on the state variable trajectory and the control output trajectory, the joint control torque value of the target humanoid robot in the next control cycle is determined, and the target humanoid robot is controlled to perform the gait movement according to the joint control torque value.
2. The method according to claim 1, characterized in that, The real-time acquisition of trunk joint state data and motion state data of the target humanoid robot in the current control cycle includes: Real-time acquisition of initial torso joint state data of the target humanoid robot in the current control cycle; The initial trunk joint state data is filtered using a preset infinite impulse response filter to obtain corresponding trunk joint state data; wherein, the trunk joint state data includes trunk pose parameters, trunk velocity parameters, joint position parameters, joint velocity parameters, and driving joint control torque values. Based on the trunk joint state data, the motion state data of the target humanoid robot corresponding to the current control cycle is determined using the forward kinematics method; wherein, the motion state data includes center of mass position parameters, center of mass velocity parameters, foot contact point position parameters, and foot contact point velocity parameters.
3. The method according to claim 1, characterized in that, Based on the motion state data, the interactive control parameters, and the preset ground contact and ground departure state sequences and time sequences, the polynomial coefficients of the foot contact force trajectory corresponding to the multi-step support of the target humanoid robot starting from the moment of ground departure are determined. Based on the foot contact force trajectory polynomial coefficients and the interactive control parameters, a reference trajectory of the foot contact force corresponding to the target humanoid robot is generated, including: Based on the preset ground-touching and ground-leaning state sequence and ground-touching and ground-leaning time sequence, the time when the target humanoid robot leaves the ground and the time when it touches the ground for each step are determined. During the multi-step support phase cycle of the target humanoid robot starting from the moment the single leg leaves the ground, the center of mass position parameters and center of mass velocity parameters in the motion state data are iteratively updated based on the moment the single leg leaves the ground, the moment the single leg touches the ground, and the interactive control parameters, so as to obtain the center of mass leave the ground state parameters and the center of mass touches the ground state parameters. Based on the center of mass off-ground state parameters, the center of mass on-ground state parameters, and the preset single-leg support phase periodic step length, the polynomial coefficients of the foot contact force trajectory corresponding to the target humanoid robot are determined; wherein, the polynomial coefficients of the foot contact force trajectory include a set of longitudinal amplitude coefficients, a set of longitudinal shape coefficients, a set of transverse front amplitude coefficients, a set of transverse rear amplitude coefficients, a set of vertical front amplitude coefficients, and a set of vertical rear amplitude coefficients; Based on the ground contact and ground lift time series and the polynomial coefficients of the foot contact force trajectory, the foot contact force reference trajectories corresponding to the longitudinal, lateral, and vertical directions of the target humanoid robot are generated.
4. The method according to claim 1, characterized in that, The process of generating a reference trajectory for the landing point of the swing leg for each leg component of the target humanoid robot, based on the ground contact / remote state sequence, the ground contact / remote time sequence, the trunk joint state data, the motion state data, and the preset parameters of the target humanoid robot, includes: Based on the foot contact point position parameters in the motion state data and the joint position parameters and joint velocity parameters in the trunk joint state data, the absolute contact and departure position sequence of the target humanoid robot is determined. Based on the ground contact and ground lift time sequence, the midpoint of the swing phase corresponding to each step of the target humanoid robot is determined, and based on the ground contact and ground lift absolute position sequence, the longitudinal and lateral ground contact position parameters of the target humanoid robot are determined. Based on the midpoint of the swing phase and the ground contact and ground lift time sequences, the discrete time sequence corresponding to each leg component of the target humanoid robot is determined; Based on the longitudinal and lateral ground contact position parameters and the absolute ground contact and ground departure position sequence, the discrete position sequence corresponding to each swing leg component of the target humanoid robot is determined; Based on preset intermediate velocity parameters, the absolute position sequence of ground contact and ground departure, and the time sequence of ground contact and ground departure, the discrete velocity sequence corresponding to each swinging leg component of the target humanoid robot is determined; Cubic interpolation is performed on the discrete time sequence, discrete position sequence, and discrete velocity sequence corresponding to each swing leg component to generate a reference trajectory for the landing point of the swing leg foot corresponding to each leg component of the target humanoid robot.
5. The method according to claim 1, characterized in that, The process of optimizing the initial reference trajectory using a constructed objective function based on the trunk joint state data and the motion state data to obtain the state variable trajectory and control output trajectory corresponding to the target humanoid robot includes: Based on the motion state data and the trunk joint state data, the state variables corresponding to the target humanoid robot are constructed, and based on the joint velocity parameters in the trunk joint state data and the foot contact force reference trajectory in the initial reference trajectory, the control output variables to be optimized corresponding to the target humanoid robot are constructed. Based on the foot contact force reference trajectory and the preset desired joint velocity parameters, a desired control output variable is constructed, and based on the desired control output variable, the state variable, the control output variable to be optimized, and the desired state variable corresponding to the trunk centroid reference trajectory in the initial reference trajectory, an objective function with exponential decay weights is constructed. Based on the reference trajectory of the landing point of the swing leg foot in the initial reference trajectory, the constraint conditions are determined, and based on the trunk joint state data and the motion state data, the objective function is optimized using a numerical optimization method under the constraint conditions to obtain the state variable trajectory and control output trajectory corresponding to the target humanoid robot.
6. The method according to claim 5, characterized in that, Based on the foot contact force reference trajectory and preset desired joint velocity parameters, a desired control output variable is constructed. Then, based on the desired control output variable, the state variable, the control output variable to be optimized, and the desired state variable corresponding to the trunk centroid reference trajectory in the initial reference trajectory, an objective function with exponentially decaying weights is constructed, including: Based on the foot contact force reference trajectory, the ground contact force sequence of the target humanoid robot's off-ground leg is determined, and the off-ground leg contact force sequence is assigned to the foot contact point of the target humanoid robot to determine the expected foot contact force trajectory. Based on the desired trajectory of the foot contact force and the preset desired joint velocity parameters, a desired control output variable is constructed; Based on the control output variable to be optimized, the state variable, the preset exponential decay weight coefficient, the expected state variable corresponding to the trunk centroid reference trajectory in the initial reference trajectory, and the expected control output variable, an instantaneous cost function is constructed. Based on the instantaneous cost function and the preset forward prediction step size, an objective function is constructed.
7. A control device for the foot-based interactive motion of a humanoid robot, characterized in that, The control device includes: The real-time data acquisition module is used to collect the trunk joint state data and motion state data of the target humanoid robot in the current control cycle when the target humanoid robot is performing gait movements with its feet interacting with the ground. The reference trajectory generation module is used to generate an initial reference trajectory set corresponding to the target humanoid robot based on the trunk joint state data, the motion state data, and the interactive control command in response to the target humanoid robot receiving an interactive control command; wherein, the initial reference trajectory set includes a foot contact force reference trajectory, a swing leg foot landing point position reference trajectory, and a trunk center of mass reference trajectory; The reference trajectory optimization module is used to optimize the initial reference trajectory based on the trunk joint state data and the motion state data using a constructed objective function, so as to obtain the state variable trajectory and control output trajectory corresponding to the target humanoid robot. The compliant motion control module is used to determine the joint control torque value of the target humanoid robot in the next control cycle based on the state variable trajectory and the control output trajectory, and control the target humanoid robot to perform the gait movement according to the joint control torque value; When the reference trajectory generation module generates an initial reference trajectory set corresponding to the target humanoid robot based on the torso joint state data, the motion state data, and the interactive control command in response to the target humanoid robot receiving an interactive control command, the reference trajectory generation module is used to: In response to the target humanoid robot receiving an interactive control command, the interactive control parameters corresponding to the interactive control command are determined; Based on the motion state data, the interactive control parameters, and the preset ground contact and ground lift state sequences and ground contact and ground lift time sequences, the polynomial coefficients of the foot contact force trajectory corresponding to the multi-step support of the target humanoid robot from the moment of ground lift are determined, and based on the foot contact force trajectory polynomial coefficients and the interactive control parameters, the foot contact force reference trajectory corresponding to the target humanoid robot is generated. Based on the ground contact and ground lift state sequence, the ground contact and ground lift time sequence, the trunk joint state data, the motion state data, and the preset parameters of the target humanoid robot, a reference trajectory for the landing point of the swing leg foot corresponding to each leg component of the target humanoid robot is generated. Based on the interactive control parameters, the trunk pose parameters in the trunk joint state data are used as the starting point for integration to generate the trunk centroid reference trajectory corresponding to the target humanoid robot.
8. An electronic device, characterized in that, include: The device includes a processor, a memory, and a bus. The memory stores machine-readable instructions executable by the processor. When the electronic device is running, the processor communicates with the memory via the bus. The machine-readable instructions are executed by the processor to perform the steps of the control method for foot-to-foot interactive motion of a humanoid robot as described in any one of claims 1 to 6.
9. A computer-readable storage medium, characterized in that, The computer-readable storage medium stores a computer program that, when executed by a processor, performs the steps of the control method for the foot-plantar interactive motion of a humanoid robot as described in any one of claims 1 to 6.
Citation Information
Patent Citations
Leg swinging control method and device, electronic equipment and storage medium
CN118295446A