A robot step control method, device, equipment, medium and product
Patent Information
- Application Number
- CN202611312057.4
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2026-08-27
- Publication Date
- 2026-10-13
AI Technical Summary
该控制方式仅依靠质心线速度控制踏步导致精度低,稳定性差
[0010]本申请实施例的技术方案中,将绕支撑接触点支撑角动量作为核心控制变量,突破传统仅依靠质心线速度的控制逻辑,完整融合平移和旋转耦合动力学,补齐动力学底层约束,消除落脚位置计算固有偏差;通过角动量预判落脚位置再驱动踏步,可抑制落地冲击带来的躯干晃动、打滑倾倒问题,对各类型的双足机器人的行走工况的适配性强,提升了双足机器人踏步行走控制的稳定性。
Smart Images

Figure CN122902655A_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of bipedal robot motion control technology, and in particular to a robot stepping control method, device, equipment, medium and product. Background Technology
[0002] With the continuous iteration and upgrading of robot technology, various service, industrial and humanoid robots are gradually being industrialized and implemented. Related perception, driving and motion control technologies are constantly being improved, and the research and application of robots have penetrated into all walks of life and fields.
[0003] As a popular research area, bipedal humanoid robots face significant limitations in existing stepping motion control schemes, most of which rely solely on the translational velocity of the center of mass to plan foot placement. This control method, which depends solely on the linear velocity of the center of mass to control stepping, results in low accuracy and poor stability. Therefore, improving the stability of bipedal robot walking motion control has become a key research focus for professionals in this field. Summary of the Invention
[0004] This application provides a robot stepping control method, apparatus, device, medium, and product to improve the stability of bipedal robot stepping walking control.
[0005] According to one aspect of this application, a robot stepping control method is provided, comprising: Obtain the bipedal robot's running status identifier, remaining duration of a single support phase, and the starting spatial coordinates of the current airborne foot; In response to the operating status being identified as a single-support phase, the support angular momentum of the bipedal robot around the support point where the current supporting foot is in contact with the ground is determined based on the joint angles, attitude angles, three-axis angular velocity data, and three-axis acceleration data of each joint of the bipedal robot. Based on the support angular momentum and the remaining duration of a single support phase, predict the expected landing coordinates of the current airborne foot; Based on the expected landing coordinates and the starting spatial coordinates, the bipedal robot is controlled to walk.
[0006] According to another aspect of this application, a robot stepping control device is provided, comprising: The robot information acquisition module is used to acquire the bipedal robot's running status identifier, remaining duration of a single support phase, and the starting spatial coordinates of the current airborne foot. The support angular momentum determination module is used to determine the support angular momentum of the bipedal robot around the support point where the current support foot is in contact with the ground in response to the single support phase identifier of the running state. The pre-landing coordinate prediction module is used to predict the expected landing coordinates of the current airborne foot based on the support angular momentum and the remaining time of a single support phase. The robot walking control module is used to control the bipedal robot to walk based on the expected landing coordinates and the starting spatial coordinates.
[0007] According to another aspect of this application, an electronic device is provided, the electronic device comprising: At least one processor; and A memory communicatively connected to the at least one processor; wherein, The memory stores a computer program that can be executed by the at least one processor, which enables the at least one processor to perform the robot stepping control method according to any embodiment of this application.
[0008] According to another aspect of this application, a computer-readable storage medium is provided, the computer-readable storage medium storing computer instructions for causing a processor to execute and implement the robot stepping control method according to any embodiment of this application.
[0009] According to another aspect of this application, a computer program product is provided, the computer program product including a computer program that, when executed by a processor, implements the robot stepping control method according to any embodiment of this application.
[0010] In the technical solution of this application embodiment, the angular momentum of the support around the support contact point is used as the core control variable, breaking through the traditional control logic that relies solely on the linear velocity of the center of mass. It fully integrates translational and rotational coupled dynamics, fills in the underlying constraints of dynamics, and eliminates the inherent deviation in the calculation of the landing position. By predicting the landing position through angular momentum and then driving the step, the problem of torso swaying, slipping, and tipping caused by the landing impact can be suppressed. It has strong adaptability to the walking conditions of various types of bipedal robots and improves the stability of the bipedal robot's stepping walking control.
[0011] It should be understood that the description in this section is not intended to identify key or essential features of the embodiments of this application, nor is it intended to limit the scope of this application. Other features of this application will become readily apparent from the following description. Attached Figure Description
[0012] To more clearly illustrate the technical solutions in the embodiments of this application, the accompanying drawings used in the description of the embodiments will be briefly introduced below. Obviously, the accompanying drawings described below are only some embodiments of this application. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.
[0013] Figure 1 This is a flowchart of a robot stepping control method according to Embodiment 1 of this application; Figure 2 This is a schematic diagram of a robot stepping control device according to Embodiment 2 of this application; Figure 3 This is a schematic diagram of the structure of an electronic device that implements the robot stepping control method of the embodiments of this application. Detailed Implementation
[0014] To enable those skilled in the art to better understand the present application, the technical solutions in the embodiments of the present application will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of the present application, and not all embodiments. Based on the embodiments in the present application, all other embodiments obtained by those of ordinary skill in the art without creative effort should fall within the scope of protection of the present application.
[0015] It should be noted that the terms "first," "second," etc., in the specification, claims, and accompanying drawings of this application are used to distinguish similar objects and are not necessarily used to describe a specific order or sequence. It should be understood that such data can be interchanged where appropriate so that the embodiments of this application described herein can be implemented in orders other than those illustrated or described herein. Furthermore, the terms "comprising" and "having," and any variations thereof, are intended to cover non-exclusive inclusion; for example, a process, method, system, product, or apparatus that comprises a series of steps or units is not necessarily limited to those steps or units explicitly listed, but may include other steps or units not explicitly listed or inherent to such processes, methods, products, or apparatus.
[0016] Example 1 Figure 1 This application provides a flowchart of a robot stepping control method according to Embodiment 1. This embodiment is applicable to controlling the stepping movement of a bipedal robot. The method can be executed by a robot stepping control device, which can be implemented in hardware and / or software and can be configured in an electronic device. Figure 1 As shown, the method includes: S110. Obtain the bipedal robot's running status identifier, remaining duration of a single support phase, and the starting spatial coordinates of the current airborne foot.
[0017] The operational status identifier can be used to distinguish the current gait stage of the bipedal robot, including at least a single-support phase identifier and a double-support phase identifier. The single-support phase identifier represents the stepping stage in which one foot is on the ground as the supporting foot and the other foot is suspended in the air as the take-off foot, which is the effective execution stage of the embodiments and implementation methods of this application. The operational status identifier is output in real time by the robot's upper-level gait planning module.
[0018] The remaining time of a single support phase can be the remaining time from the current control moment to the landing of the airborne foot and completion of the current single step cycle when the robot is in a single support phase condition. It is refreshed and output in real time by the upper-level gait cycle planning module and can be used as the core timing parameter for dynamics deduction.
[0019] The starting spatial coordinates of the currently airborne foot are the three-dimensional spatial coordinates of a reference point (e.g., the tip or center of the foot) on the robot's airborne foot in the robot's base coordinate system at the current control moment. These coordinates can be used as the starting point for subsequent trajectory interpolation planning of the airborne foot. Of course, these starting spatial coordinates can be the position after the airborne foot has already taken off, or the ground position when it is about to take off, and this application embodiment does not limit this.
[0020] For example, the motion controller reads the gait status signal (representing the motion state identifier, i.e., determining whether to take a step) and timing parameters (determining the remaining time of airborne movement) from the robot's upper-level gait planning module in real time, synchronously collects leg joint position information, locks the initial spatial position of the currently airborne foot, and completes the collection of the pre-stepping control state information.
[0021] S120. In response to the running status identifier being a single support phase identifier, determine the support angular momentum of the bipedal robot around the support point where the current support foot is in contact with the ground based on the joint angles, attitude angles, three-axis angular velocity data, and three-axis acceleration data of the bipedal robot.
[0022] The joint angles can be real-time rotational angle data of each joint in the robot's legs, collected in real time by joint encoders, used to characterize the overall leg configuration and rigid link position. Attitude angle data, three-axis angular velocity data, and three-axis acceleration data are all collected in real time by the in-body IMU (Inertial Measurement Unit), representing the robot's three-dimensional attitude orientation, three-axis rotational angular velocity, and three-axis linear acceleration, respectively, fully covering the robot's overall dynamic motion information.
[0023] The support point can be the reference point where the current support foot is in rigid contact with the ground, and it is the reference base point for calculating the angular momentum in this application. The support angular momentum can be the total angular momentum of the bipedal robot's rigid body system about the support point, such as the translational coupled angular momentum of the center of mass and the rotational angular momentum of the body and joints. The support angular momentum is the core state variable for step control in this application.
[0024] For example, after determining that the robot has entered the effective working state of a single support phase, the controller synchronously collects all joint and IMU sensor data, and based on the rigid body dynamics forward calculation logic, integrates translational and rotational motion information to output the support angular momentum of the whole machine around the support point in real time, providing accurate dynamic input for subsequent single-step end angular momentum prediction and landing position solution.
[0025] S130. Based on the support angular momentum and the remaining duration of a single support phase, predict the expected landing coordinates of the current airborne foot.
[0026] Among them, the expected landing coordinates can be the three-dimensional landing coordinates of the takeoff foot that meet the single-step end target angular momentum constraints and minimize landing impact and fuselage disturbance, and are the trajectory endpoint of the subsequent takeoff foot trajectory planning.
[0027] For example, based on the current real-time support angular momentum and the remaining stride duration, the expected natural angular momentum of the take-off foot at the moment of landing is deduced. This is then combined with a preset single-step landing target angular momentum to complete a closed-loop correction, and the optimal expected landing coordinates are output analytically, achieving precise landing planning under dynamic constraints. The prediction can be performed through simulation using a pre-prepared dynamic model, such as a linear inverted pendulum dynamic model for calculation and prediction. Alternatively, a machine learning model can be pre-trained to predict the expected landing coordinates, using extensive experimental data to train the model and enable it to output the expected landing coordinates of the current take-off foot based on the support angular momentum and the remaining duration of the single support phase. This application does not limit the construction and training process of the machine learning model.
[0028] S140. Control the bipedal robot to walk by stepping according to the expected landing coordinates and the starting spatial coordinates.
[0029] It is understandable that, using the spatial coordinates of the starting point of the airborne foot obtained in S110 as the trajectory starting point and the expected landing coordinates solved in S130 as the trajectory ending point, the airborne foot is controlled to complete a complete single-step action of lifting the leg, swinging, and landing along the optimal trajectory through smooth spatial trajectory interpolation and joint timing drive, thereby achieving stable and high-precision walking of the bipedal robot. Of course, the smooth trajectory from the starting point spatial coordinates to the expected landing coordinates can be determined by any trajectory planning algorithm in related technologies, and this application embodiment does not limit this.
[0030] Overall, the embodiments of this application constitute a complete single-support phase single-step stepping control closed loop: first, the gait state, temporal parameters and spatial parameters are collected; then, the support angular momentum of the support point is calculated in real time, the landing dynamics are deduced, and the optimal landing position is solved; finally, the stepping is completed through trajectory planning and joint driving. The support point angular momentum is the core constraint throughout the process, which solves the technical problems of lack of dynamic constraints, poor stepping accuracy and walking shaking imbalance in the prior art.
[0031] In the technical solution of this application embodiment, the angular momentum of the support around the support contact point is used as the core control variable, breaking through the traditional control logic that relies solely on the linear velocity of the center of mass. It fully integrates translational and rotational coupled dynamics, fills in the underlying constraints of dynamics, and eliminates the inherent deviation in the calculation of the landing position. By predicting the landing position through angular momentum and then driving the step, the problem of torso swaying, slipping, and tipping caused by the landing impact can be suppressed. It has strong adaptability to the walking conditions of various types of bipedal robots and improves the stability of the bipedal robot's stepping walking control.
[0032] In one optional implementation, determining the support angular momentum of the bipedal robot around the support point where its current supporting foot is in contact with the ground, based on the joint angles, attitude angles, three-axis angular velocity data, and three-axis acceleration data of the bipedal robot in step S120, may include: S121. Based on the joint angles, attitude angles, three-axis angular velocity data, and three-axis acceleration data of the bipedal robot, determine the center of mass angular momentum, center of mass translational velocity, center of mass spatial position, and support position of the support point of the bipedal robot.
[0033] For example, the overall linkage configuration of a bipedal robot can be reconstructed based on the joint angles and body posture angles. Combined with IMU angular velocity and acceleration data, rigid body dynamics calculations can simultaneously output four core state variables: the robot's center of mass angular momentum, translational velocity, spatial position of the center of mass, and the support position of the supporting foot's contact point with the ground. These parameters respectively characterize the robot's rotational motion state, translational motion state, spatial distribution position of the center of mass, and position of the dynamic reference point, comprehensively covering the rigid body motion characteristics of the entire robot.
[0034] S122. Determine the support angular momentum based on the center of mass angular momentum, the center of mass translational velocity, the center of mass spatial position, and the current support position where the support foot is in contact with the ground.
[0035] Based on the principle of translation axis angular momentum transformation, the angular momentum in the center-of-mass coordinate system is converted into the total angular momentum in the ground support point coordinate system, and the support angular momentum of the whole machine about the support point is obtained. The calculation formula is as follows: Where: "×" represents the cross product operation of three-dimensional vectors; The support angular momentum of the entire machine about the support point; Let be the angular momentum of the robot's center of mass; r be the spatial position of the center of mass; and v be the translational velocity of the center of mass. This refers to the position where the supporting foot contacts the ground.
[0036] By superimposing the rotational angular momentum and the translational angular momentum of the center of mass using the above formulas, the overall rotational dynamics of the robot under a single support phase are fully characterized, overcoming the modeling deficiency of existing technologies that only use the linear velocity of the center of mass and ignore rotational dynamics. First, the motion parameters of the center of mass and the position parameters of the support point are obtained by solving multi-source sensor data. Then, the coordinate system transformation is completed using the translational axis angular momentum transformation formula, and the support angular momentum of the entire robot around the ground support point is solved, providing high-precision initial dynamic values for subsequent landing angular momentum prediction.
[0037] In the above implementation, the complete motion state of the center of mass and the support point are first calculated, and then the support angular momentum is obtained through the translation axis angular momentum transformation formula. The joint and IMU multi-source sensor data are fully collected to restore the dynamics of the whole machine, avoiding the loss of rotational dynamics information. The accuracy of the support angular momentum calculation is significantly improved, providing high-precision dynamic input for subsequent landing angular momentum derivation and optimal landing coordinate solution, and ensuring the reliability of subsequent step planning calculation.
[0038] In one optional implementation, the step of predicting the expected landing coordinates of the current take-off foot based on the support angular momentum and the remaining duration of the single support phase in S130 may include: S131. Based on the support angular momentum and the remaining duration of a single support phase, predict the expected angular momentum of the current airborne foot at the moment of landing.
[0039] Understandably, the support angular momentum and the remaining duration of the single support phase are used as motion constraints, forming the basis for inferring the expected angular momentum of the currently airborne foot at the moment of landing during the stepping motion. On one hand, a machine learning model can be pre-trained using a large amount of experimental data to enable the model to output the expected angular momentum based on the two input quantities: support angular momentum and the remaining duration of the single support phase.
[0040] On the other hand, in an optional implementation, the prediction of the expected angular momentum of the current airborne foot at the moment of landing based on the support angular momentum and the remaining duration of the single support phase in S131 may include: predicting the expected angular momentum based on the support angular momentum, the remaining duration of the single support phase, the total mass of the bipedal robot, and the pre-constructed linear inverted pendulum dynamics model and the nominal center of mass height of the linear inverted pendulum.
[0041] The linear inverted pendulum dynamic model can be a pre-built whole-machine dynamic model used in this application to simplify the solution of bipedal robot walking dynamics. It avoids complex rigid body matrix operations while ensuring solution accuracy and is compatible with the real-time computing power of embedded controllers. The nominal center of mass height can be the offline calibrated height of the center of mass above the ground in the robot's upright, stationary state. This is a core fixed parameter of the linear inverted pendulum model, and does not require repeated calibration if no hardware modifications are made to the whole machine. The total mass of the whole machine is a constant mass parameter of the bipedal robot, also an offline calibration constant.
[0042] This implementation method uses the following formula to accurately predict the expected angular momentum: in, H represents the total mass of the robot; H is the nominal height of the center of mass of the linear inverted pendulum. , The characteristic frequency of a linear inverted pendulum; It is the acceleration due to gravity; This represents the remaining time of the current single support phase (the remaining time before the airborne foot lands). It is a hyperbolic sine function; It is a hyperbolic cosine function. This formula can be derived from the current real-time angular momentum and the state of the center of mass to the unconstrained natural angular momentum at the moment of landing.
[0043] This implementation method introduces constraints on the overall mass and nominal center of mass height, and relies on a mature linear inverted pendulum dynamics model to complete the modeling calculations. This ensures that the derivation of the expected angular momentum perfectly matches the actual motion characteristics of the bipedal robot. Compared to simple estimation methods, this significantly improves the accuracy of predicting the landing dynamic state, providing precise input for subsequent landing coordinate calculations and overall robot balance control. Furthermore, the entire calculation is analytical and explicit, without time-consuming operations such as numerical iteration and matrix inversion, meeting the real-time requirement of the robot's 1ms high-frequency control cycle.
[0044] In the above implementation, based on the linear inverted pendulum dynamics model, the landing angular momentum is predicted by offline calibration of fixed parameters such as the total mass of the whole machine and the nominal center of mass height. The dynamics model fits the walking characteristics of the humanoid robot, which greatly improves the accuracy of the instantaneous angular momentum prediction upon landing. It only relies on standard hyperbolic function calculation, which is lightweight and adapts to the high-frequency motion control cycle of the robot, ensuring the real-time performance of stepping control.
[0045] S132. Determine the expected landing coordinates based on the expected angular momentum, the total mass of the bipedal robot, the spatial position of the center of mass, and the preset target angular momentum for single-step landing.
[0046] For example, using the target angular momentum at single-step landing as a closed-loop constraint, and leveraging the collision invariance property of angular momentum, the optimal landing position is solved through inverse analytical calculation. This achieves controllable overall aircraft angular momentum at the moment of landing, suppressing landing impact and fuselage disturbance from the root of dynamics. The formula is as follows: in, The target angular momentum at the moment of landing of the next single step is preset as the set value of the balance control closed loop. The constant speed walking can be set to a fixed 0, and the variable speed walking can be dynamically corrected according to the speed. The characteristic frequency of the linear inverted pendulum is determined solely by gravity and nominal center of mass height, and is fixed for use after offline calibration; single-step remaining time. This is the output of the robot's gait cycle planning module, updated in real time as the walking progresses. Other parameters have the same meaning as those in the aforementioned formulas.
[0047] It should be noted that in the above formula... In this formula, the expected landing coordinates are represented by the following: after the currently airborne foot lands, the original supporting foot becomes the airborne foot for the next step. The currently airborne foot then becomes the supporting foot for the next step. Therefore, the expected landing coordinates are the position where the supporting foot touches the ground.
[0048] In the above implementation, the expected angular momentum upon landing is first calculated in the forward direction, and then the landing position is analyzed in reverse by combining the preset target angular momentum, forming a closed-loop constraint on the landing angular momentum. The collision invariance property of angular momentum is used to offset the impact disturbance upon landing. All solutions are analytical explicit formulas, without numerical iteration, matrix inversion and other time-consuming operations. The calculation is completed in milliseconds, which meets the real-time computing power requirements of embedded controllers and is suitable for fast and variable speed walking conditions.
[0049] In one alternative implementation, if the desired walking type for the stepping walking control is uniform walking, then the target angular momentum is zero.
[0050] Under constant speed straight-line walking conditions, setting the target angular momentum to zero upon landing allows the overall angular momentum of the robot to return to zero at the moment of landing, completely eliminating attitude disturbances and step jitter caused by the collision. Under variable speed walking conditions such as acceleration, deceleration, and turning, the target angular momentum can be dynamically corrected according to the robot's target walking speed, adapting to dynamic balance control requirements and improving multi-condition adaptability. On the other hand, when the desired walking type is variable speed walking, the target angular momentum can be dynamically corrected according to the actual movement speed, which is not limited in the embodiments of this application.
[0051] In one optional implementation, the stepping control of the bipedal robot based on the expected landing coordinates and the starting spatial coordinates in step S140 may include: S141. Using the starting point spatial coordinates as the starting point of trajectory planning and the expected landing coordinates as the ending point of trajectory planning, a preset fifth-order polynomial interpolation algorithm is used to plan the spatial trajectory from the starting point to the ending point.
[0052] The implementation method of this application can employ a fifth-order polynomial interpolation algorithm, which can simultaneously constrain the position, velocity, and acceleration of the trajectory's starting and ending points to remain continuous without abrupt changes, avoiding motion stutters and impact disturbances during the leg lift, swing, and landing processes, and ensuring smooth and fluid movement of the airborne foot throughout the entire trajectory. Using the spatial coordinates of the airborne foot's starting point collected in S110 as the trajectory's starting point and the expected landing coordinates solved in S130 as the trajectory's ending point, it is ensured that the trajectory planning perfectly matches the optimal landing control objective.
[0053] S142. Based on the spatial trajectory, calculate the temporal joint data of each joint on the currently airborne foot.
[0054] According to a preset control period (e.g., 1ms), the overall spatial trajectory can be decomposed into temporal discrete components, and the temporal joint data such as joint angles and joint displacements of each leg joint of the airborne foot at each moment can be solved frame by frame. This generates a temporal control sequence that precisely matches the motion trajectory, providing data support for high-frequency real-time drive.
[0055] S143. According to the timing joint data, drive the currently airborne foot to lift and land, so as to control the bipedal robot to walk.
[0056] This step is the final output stage. The controller sends drive commands corresponding to the timing joint data frame by frame, controlling the airborne foot to strictly follow the planned spatial trajectory to complete the complete stepping action of lifting off the ground, swinging smoothly in the air, and landing accurately. After the airborne foot lands, the robot switches from a single support phase to a double support phase, and then completes the role exchange between the support foot and the airborne foot, repeating all the above steps to achieve continuous and stable cyclical stepping walking of the bipedal robot.
[0057] The overall serial logic from S141 to S143 is as follows: First, a smooth spatial motion trajectory is generated based on the optimal start and end points. Then, the continuous spatial trajectory is discretized into time-sequential joint control data. Finally, precise stepping is completed through high-frequency joint drive, forming a complete control link of "trajectory planning - data calculation - closed-loop execution", which ensures that the optimal control effect at the dynamic level can be implemented.
[0058] In the above implementation, a fifth-order polynomial interpolation is used to generate the complete spatial trajectory of the airborne foot, constraining the start and end positions, velocity, and acceleration to be continuous without abrupt changes, and ensuring that there are no motion abruptness throughout the entire process of lifting, swinging, and landing. The spatial trajectory is converted into temporal joint commands to precisely drive the leg, thereby improving the accuracy of the airborne foot landing. The complete trajectory interpolation link has a high degree of engineering so that it can be directly deployed in existing motion controllers.
[0059] In summary, the technical solutions formed by the aforementioned embodiments and implementation methods, based on the linear inverted pendulum dynamics model and the closed-loop constraint of the angular momentum at the support point, break through the traditional control architecture that relies solely on the linear velocity of the center of mass. By adding rotational dynamics constraints, a closed-loop angular momentum at the landing end, analytical optimal landing position solution, and fifth-order polynomial smooth trajectory control, the step landing accuracy is significantly improved, effectively suppressing the problems of torso swaying, step shaking, and slippage during robot walking. Furthermore, all core calculations are analytical operations, offering high real-time performance, requiring no additional hardware modifications, and are widely adaptable to various walking conditions of bipedal robots, demonstrating strong engineering feasibility and versatility.
[0060] Based on the foregoing embodiments and implementation methods, this application also provides a specific implementation method to further explain or supplement the foregoing embodiments and implementation methods, as follows: This implementation method is adapted to humanoid bipedal robots equipped with multi-joint legs, an IMU (Inertial Measurement Unit), joint angle encoders, and a motion controller. The controller incorporates a real-time dynamics calculation module and a fifth-order polynomial trajectory interpolation module. The entire hardware can collect joint angle, three-axis acceleration, three-axis angular velocity, and body posture data in real time, with a control cycle of 1ms. The gait cycles for single-support and double-support phases are uniformly output by the upper-level gait planning module. The entire control method is executed step-by-step in real time by five sequential modules: support phase control, real-time measurement of overall angular momentum, estimation of expected angular momentum at the end of a single step, analytical calculation of the optimal landing position, and aerial leg trajectory interpolation control. The complete single-step implementation process is as follows: Step 1: Support the foundation leg lifting control and reserve a dynamic solution calculation window.
[0061] Once the robot enters the single-support phase, its supporting feet are fully in contact with the ground and remain stationary. The upper-level gait planning module outputs the basic stride duration and initial stride value to the motion controller.
[0062] The controller retrieves a preset sequence of basic leg-lifting joint angles and outputs continuous joint position control commands to drive the airborne leg to complete the basic lifting motion of lifting off the ground and swinging slightly forward. This stage only completes the basic leg movement and does not introduce balance constraint correction. Its core function is to increase the spatial distance between the airborne leg and the supporting foot, reserving a sufficient real-time calculation window for subsequent angular momentum calculation and iterative calculation of the optimal landing position.
[0063] This step continues until the remaining duration of the single support phase. The real-time update process begins, and then the system jumps to the real-time measurement process of the whole machine's angular momentum.
[0064] Step 2: Real-time calculation and measurement of the total angular momentum of the entire machine around the contact point of the support leg.
[0065] The motion controller synchronously collects all sensor data from the robot body. The sensor dataset includes: rotation angles of each joint of each leg, IMU output roll / pitch / yaw attitude angles, IMU three-axis angular velocities, and IMU three-axis accelerations. Based on the forward solution of rigid body dynamics, it solves for four basic state variables in real time: robot center of mass angular momentum. ; Three-dimensional translational velocity of the center of mass ; Three-dimensional spatial position of the centroid ; Three-dimensional coordinates of the contact point between the support leg and the ground .
[0066] Based on the translation axis angular momentum transformation formula, the total angular momentum of the entire machine about the support contact point is calculated in real time. The calculation formula is as follows: In the formula, "×" represents the cross-multiplication operation of three-dimensional vectors; The current moment is the real-time angular momentum of the whole machine around the contact point of the support foot, which serves as the dynamic input for the subsequent single-step final angular momentum derivation. It is refreshed every 1ms control cycle.
[0067] Step 3: Estimation of expected angular momentum at the final landing point of a single step based on a linear inverted pendulum model.
[0068] Using a linear inverted pendulum as a simplified model of the overall dynamics, combined with the remaining time of a single support phase... Forward extrapolation of the unconstrained natural expected angular momentum at the moment of landing of the airborne foot (end of a single-step cycle) Calculation formula: The parameters in the formula are defined as follows: The total mass of the robot is written to the controller constant after offline weighing calibration; H is the nominal center of mass height of the linear inverted pendulum, which is the offline calibrated height of the center of mass above the ground when the robot is upright and stationary, and remains constant. The characteristic frequency of a linear inverted pendulum, Taking the standard gravitational acceleration as 9.81 m / s², only H is determined, and then stored in a fixed location after offline calculation; The remaining duration of the current single support phase is output in real time by the upper-level gait cycle planning module and is updated frame by frame as the gait progresses. It is a hyperbolic sine function. It is a hyperbolic cosine function, and the controller has a built-in standard mathematical function library to solve it in real time.
[0069] This step involves inputting real-time angular momentum. The overall center of mass state, and the unconstrained natural angular momentum at the moment of landing. , which serves as an intermediate variable for solving the landing position.
[0070] Step 4: Analytical solution for the optimal landing position under the closed-loop constraint of target angular momentum.
[0071] Pre-set the closed-loop target angular momentum at the next landing moment Value selection rules: The robot is moving in a straight line at a constant speed. Set to 0, the angular momentum returns to zero upon landing, eliminating impact vibration; Acceleration, deceleration, steering, and gear shifting driving conditions: Dynamically corrected according to the target driving speed. To match the needs of dynamic balance.
[0072] Will Step 3: Solving for the natural expected angular momentum Substituting the formula for the landing position, we can directly solve for the three-dimensional coordinates of the landing target of the airborne foot: Formula outputs three-dimensional space coordinates This is the optimal landing position, which is constrained by the landing angular momentum. The invariance of angular momentum in collision is used to offset the landing impact, thus completing the balance constraint from the bottom of dynamics and solving the problems of large landing disturbance and step shaking in traditional linear velocity control.
[0073] Step 5: Closed-loop control of the step trajectory using fifth-order polynomial interpolation of the airborne foot.
[0074] 1. Trajectory planning start and end point determination: Taking the current three-dimensional spatial position of the airborne foot as the trajectory start point, and using the optimal landing coordinates obtained from step 4 analytical calculation... The endpoint of the trajectory; 2. Smooth trajectory generation: A fifth-order polynomial interpolation algorithm is used to perform spatial trajectory interpolation on the entire process of leg lifting, air swinging, and landing. The position, velocity, and acceleration of the trajectory start and end points are constrained to be continuous without abrupt changes, generating a complete and smooth airborne motion trajectory.
[0075] 3. Joint-driven execution: The motion controller outputs the position commands of each leg joint frame by frame according to the interpolation timing, driving the airborne leg to move along the planned trajectory and accurately step to the calculated optimal landing position; 4. Single-step cycle closed loop: After the airborne foot completes landing and contacts the ground, the robot switches to the dual support phase, then swaps the support foot with the airborne foot, repeating steps one to five to start the next round of step control cycle.
[0076] In the specific examples above, the integration of dual dynamic constraints—center of mass translation and overall rotation—significantly reduces the error in landing position calculation and greatly improves the accuracy of the landing of the airborne leg. The controllable angular momentum at landing eliminates ground collision impact disturbances, significantly suppressing robot torso swaying and gait tremors. There is no risk of tipping over during rapid and variable-speed walking, resulting in greatly improved walking stability and smoothness. All core formulas are analytical explicit expressions, eliminating time-consuming calculations such as numerical iteration and matrix inversion. Single landing position calculations can be completed in milliseconds, meeting the high-frequency motion control cycle requirements of humanoid robots, resulting in good real-time motion control and easier adaptation to embedded controllers. The target angular momentum can be flexibly configured, enabling both uniform and stable walking as well as complex stepping scenarios such as acceleration / deceleration, turning, and obstacle crossing, adapting to various working conditions and demonstrating strong control versatility.
[0077] Example 2 Figure 2 This is a schematic diagram of a robot stepping control device provided in Embodiment 2 of this application. Figure 2 As shown, the device 200 includes: The robot information acquisition module 210 is used to acquire the bipedal robot's running status identifier, remaining duration of a single support phase, and the starting spatial coordinates of the current airborne foot. The support angular momentum determination module 220 is used to determine the support angular momentum of the bipedal robot around the support point where the current support foot is in contact with the ground in response to the operation status identifier being a single support phase identifier, based on the joint angles, attitude angle data, three-axis angular velocity data, and three-axis acceleration data of the bipedal robot. The pre-landing coordinate prediction module 230 is used to predict the expected landing coordinates of the current airborne foot based on the support angular momentum and the remaining time of the single support phase. The robot walking control module 240 is used to control the bipedal robot to walk based on the expected landing coordinates and the starting spatial coordinates.
[0078] In the technical solution of this application embodiment, the angular momentum of the support around the support contact point is used as the core control variable, breaking through the traditional control logic that relies solely on the linear velocity of the center of mass. It fully integrates translational and rotational coupled dynamics, fills in the underlying constraints of dynamics, and eliminates the inherent deviation in the calculation of the landing position. By predicting the landing position through angular momentum and then driving the step, the problem of torso swaying, slipping, and tipping caused by the landing impact can be suppressed. It has strong adaptability to the walking conditions of various types of bipedal robots and improves the stability of the bipedal robot's stepping walking control.
[0079] In one optional embodiment, the support angular momentum determination module 220 may include: The support point determination unit is used to determine the center of mass angular momentum, center of mass translational velocity, center of mass spatial position, and support point support position of the bipedal robot based on the joint angles, posture angles, three-axis angular velocity data, and three-axis acceleration data of the bipedal robot. The support angular momentum determination unit is used to determine the support angular momentum based on the center of mass angular momentum, the center of mass translational velocity, the spatial position of the center of mass, and the current support position where the support foot is in contact with the ground.
[0080] In one optional implementation, the pre-landing coordinate prediction module 230 may include: The expected angular momentum determination unit is used to predict the expected angular momentum of the current take-off foot at the moment of landing, based on the support angular momentum and the remaining duration of a single support phase. The expected landing coordinate determination unit is used to determine the expected landing coordinates based on the expected angular momentum, the total mass of the bipedal robot, the spatial position of the center of mass, and the preset target angular momentum for single-step landing.
[0081] In one alternative implementation, the expected angular momentum determination unit may be specifically used for: The expected angular momentum is predicted based on the support angular momentum, the remaining duration of a single support phase, the total mass of the bipedal robot, and the pre-built dynamic model of the linear inverted pendulum and the nominal center of mass height of the linear inverted pendulum.
[0082] In one alternative implementation, if the desired walking type for the stepping walking control is uniform walking, then the target angular momentum is zero.
[0083] In one alternative embodiment, the robot walking control module 240 may include: The trajectory planning unit is used to plan the spatial trajectory from the starting point to the end point, with the starting point spatial coordinates as the starting point and the expected landing coordinates as the ending point. It uses a preset fifth-order polynomial interpolation algorithm to plan the spatial trajectory from the starting point to the end point. The timing data determination unit is used to calculate the timing joint data of each joint on the currently airborne foot based on the spatial trajectory. The walking control unit is used to drive the currently airborne foot to lift and land according to the timing joint data, so as to control the bipedal robot to walk.
[0084] The robot stepping control device provided in this application can execute the robot stepping control method provided in any embodiment of this application, and has the corresponding functional modules and beneficial effects for executing each robot stepping control method.
[0085] Example 3 Figure 3A schematic diagram of an electronic device 10, which can be used to implement embodiments of this application, is shown. The electronic device is intended to represent various forms of digital computers, such as laptop computers, desktop computers, workstations, personal digital assistants, servers, blade servers, mainframe computers, and other suitable computers. The electronic device can also represent various forms of mobile devices, such as personal digital processors, cellular phones, smartphones, wearable devices (such as helmets, glasses, watches, etc.), and other similar computing devices. The components shown herein, their connections and relationships, and their functions are merely illustrative and are not intended to limit the implementation of the application described and / or claimed herein.
[0086] like Figure 3 As shown, the electronic device 10 includes at least one processor 11 and a memory, such as a read-only memory (ROM) 12 or a random access memory (RAM) 13, communicatively connected to the at least one processor 11. The memory stores computer programs executable by the at least one processor. The processor 11 can perform various appropriate actions and processes based on the computer program stored in the ROM 12 or loaded from storage unit 18 into the RAM 13. The RAM 13 can also store various programs and data required for the operation of the electronic device 10. The processor 11, ROM 12, and RAM 13 are interconnected via a bus 14. An input / output (I / O) interface 15 is also connected to the bus 14.
[0087] Multiple components in electronic device 10 are connected to I / O interface 15, including: input unit 16, such as keyboard, mouse, etc.; output unit 17, such as various types of displays, speakers, etc.; storage unit 18, such as disk, optical disk, etc.; and communication unit 19, such as network card, modem, wireless transceiver, etc. Communication unit 19 allows electronic device 10 to exchange information / data with other devices through computer networks such as the Internet and / or various telecommunications networks.
[0088] Processor 11 can be a variety of general-purpose and / or special-purpose processing components with processing and computing capabilities. Some examples of processor 11 include, but are not limited to, a central processing unit (CPU), a graphics processing unit (GPU), various special-purpose artificial intelligence (AI) computing chips, various processors running machine learning model algorithms, a digital signal processor (DSP), and any suitable processor, controller, microcontroller, etc. Processor 11 performs the various methods and processes described above, such as robot stepping control methods.
[0089] In some embodiments, the robot stepping control method may be implemented as a computer program tangibly contained in a computer-readable storage medium, such as storage unit 18. In some embodiments, part or all of the computer program may be loaded and / or installed on electronic device 10 via ROM 12 and / or communication unit 19. When the computer program is loaded into RAM 13 and executed by processor 11, one or more steps of the robot stepping control method described above may be performed. Alternatively, in other embodiments, processor 11 may be configured to perform the robot stepping control method by any other suitable means (e.g., by means of firmware).
[0090] Various embodiments of the systems and techniques described above herein can be implemented in digital electronic circuit systems, integrated circuit systems, field-programmable gate arrays (FPGAs), application-specific integrated circuits (ASICs), application-specific standard products (ASSPs), system-on-a-chip (SoCs), payload-programmable logic devices (CPLDs), computer hardware, firmware, software, and / or combinations thereof. These various embodiments may include implementations in one or more computer programs that can be executed and / or interpreted on a programmable system including at least one programmable processor, which may be a dedicated or general-purpose programmable processor, capable of receiving data and instructions from a storage system, at least one input device, and at least one output device, and transmitting data and instructions to the storage system, the at least one input device, and the at least one output device.
[0091] Computer programs used to implement the methods of this application may be written in any combination of one or more programming languages. These computer programs may be provided to a processor of a general-purpose computer, a special-purpose computer, or other programmable data processing device, such that when executed by the processor, the computer programs cause the functions / operations specified in the flowcharts and / or block diagrams to be performed. The computer programs may be executed entirely on a machine, partially on a machine, or as a standalone software package, partially on a machine and partially on a remote machine, or entirely on a remote machine or server.
[0092] In the context of this application, a computer-readable storage medium can be a tangible medium that may contain or store a computer program for use by or in conjunction with an instruction execution system, apparatus, or device. A computer-readable storage medium can be, but is not limited to, electronic, magnetic, optical, electromagnetic, infrared, or semiconductor systems, apparatus, or devices, or any suitable combination of the foregoing. Alternatively, a computer-readable storage medium can be a machine-readable signal medium. More specific examples of machine-readable storage media include electrical connections based on one or more wires, portable computer disks, hard disks, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), optical fiber, portable compact disk read-only memory (CD-ROM), optical storage devices, magnetic storage devices, or any suitable combination of the foregoing.
[0093] To provide interaction with a user, the systems and techniques described herein can be implemented on an electronic device having: a display device (e.g., a CRT (cathode ray tube) or LCD (liquid crystal display) monitor) for displaying information to the user; and a keyboard and pointing device (e.g., a mouse or trackball) through which the user provides input to the electronic device. Other types of devices can also be used to provide interaction with the user; for example, feedback provided to the user can be any form of sensory feedback (e.g., visual feedback, auditory feedback, or tactile feedback); and input from the user can be received in any form (including sound input, voice input, or tactile input).
[0094] The systems and technologies described herein can be implemented in computing systems that include backend components (e.g., as data servers), or middleware components (e.g., application servers), or frontend components (e.g., user computers with graphical user interfaces or web browsers through which users can interact with implementations of the systems and technologies described herein), or any combination of such backend, middleware, or frontend components. The components of the system can be interconnected via digital data communication of any form or medium (e.g., communication networks). Examples of communication networks include local area networks (LANs), wide area networks (WANs), blockchain networks, and the Internet.
[0095] A computing system can include clients and servers. Clients and servers are generally located far apart and typically interact through communication networks. The client-server relationship is created by computer programs running on the respective computers and having a client-server relationship with each other. The server can be a cloud server, also known as a cloud computing server or cloud host, which is a hosting product within the cloud computing service system to address the shortcomings of traditional physical hosts and VPS services, such as high management difficulty and weak business scalability.
[0096] This application also discloses a computer program product, which includes a computer program that, when executed by a processor, implements the robot stepping control method provided in any embodiment of this application. This program product shares the same inventive concept as the robot stepping control methods disclosed in the embodiments of this application, and therefore will not be described in detail here.
[0097] It should be understood that the various forms of processes shown above can be used to rearrange, add, or delete steps. For example, the steps described in this application can be executed in parallel, sequentially, or in different orders, as long as the desired result of the technical solution of this application can be achieved, and this is not limited herein.
[0098] The specific embodiments described above do not constitute a limitation on the scope of protection of this application. Those skilled in the art should understand that various modifications, combinations, sub-combinations, and substitutions can be made according to design requirements and other factors. Any modifications, equivalent substitutions, and improvements made within the spirit and principles of this application should be included within the scope of protection of this application.
Claims
1. A robot stepping control method, characterized in that, include: Obtain the bipedal robot's running status identifier, remaining duration of a single support phase, and the starting spatial coordinates of the current airborne foot; In response to the operating state being identified as a single-support phase, the support angular momentum of the bipedal robot around the support point where the current supporting foot is in contact with the ground is determined based on the joint angles, attitude angles, three-axis angular velocity data, and three-axis acceleration data of the bipedal robot. Based on the support angular momentum and the remaining duration of the single support phase, predict the expected landing coordinates of the current airborne foot; The bipedal robot is controlled to walk based on the expected landing coordinates and the starting spatial coordinates.
2. The method according to claim 1, characterized in that, The step of determining the support angular momentum of the bipedal robot around the support point where its current supporting foot is in contact with the ground, based on the joint angles, attitude angles, three-axis angular velocity data, and three-axis acceleration data of the bipedal robot, includes: Based on the joint angles, attitude angles, three-axis angular velocity data, and three-axis acceleration data of the bipedal robot, the center of mass angular momentum, center of mass translational velocity, center of mass spatial position, and support position of the support point of the bipedal robot are determined. The support angular momentum is determined based on the center of mass angular momentum, the center of mass translational velocity, the center of mass spatial position, and the current support position where the support foot is in contact with the ground.
3. The method according to claim 2, characterized in that, Based on the support angular momentum and the remaining duration of the single support phase, predict the expected landing coordinates of the current airborne foot, including: Based on the support angular momentum and the remaining duration of the single support phase, predict the expected angular momentum of the current airborne foot at the moment of landing; The expected landing coordinates are determined based on the expected angular momentum, the total mass of the bipedal robot, the spatial position of the center of mass, and the preset target angular momentum for single-step landing.
4. The method according to claim 3, characterized in that, The step of predicting the expected angular momentum of the current airborne foot at the moment of landing, based on the support angular momentum and the remaining duration of the single support phase, includes: The expected angular momentum is predicted based on the support angular momentum, the remaining duration of the single support phase, the total mass of the bipedal robot, and the pre-constructed linear inverted pendulum dynamic model and the nominal center of mass height of the linear inverted pendulum.
5. The method according to claim 3, characterized in that, If the desired walking type of the stepping walking control is uniform walking, then the target angular momentum is zero.
6. The method according to any one of claims 1-5, characterized in that, The step of controlling the bipedal robot to walk based on the expected landing coordinates and the starting spatial coordinates includes: Using the starting point spatial coordinates as the starting point of trajectory planning and the expected landing coordinates as the ending point of trajectory planning, a preset fifth-order polynomial interpolation algorithm is used to plan the spatial trajectory from the starting point to the ending point. Based on the spatial trajectory, calculate the temporal joint data of each joint on the currently airborne foot; According to the timing joint data, the currently airborne foot is driven to lift and land, so as to control the bipedal robot to walk.
7. A robot stepping control device, characterized in that, include: The robot information acquisition module is used to acquire the bipedal robot's running status identifier, remaining duration of a single support phase, and the starting spatial coordinates of the current airborne foot. The support angular momentum determination module is used to determine the support angular momentum of the bipedal robot around the support point where the current support foot is in contact with the ground in response to the operation state identifier being a single support phase identifier, based on the joint angles, attitude angle data, three-axis angular velocity data, and three-axis acceleration data of the bipedal robot. The pre-landing coordinate prediction module is used to predict the expected landing coordinates of the current airborne foot based on the support angular momentum and the remaining duration of the single support phase. The robot walking control module is used to control the bipedal robot to walk based on the expected landing coordinates and the starting spatial coordinates.
8. An electronic device, characterized in that, The electronic device includes: At least one processor; and A memory communicatively connected to the at least one processor; wherein, The memory stores a computer program that can be executed by the at least one processor, the computer program being executed by the at least one processor to enable the at least one processor to perform the robot stepping control method according to any one of claims 1-6.
9. A computer-readable storage medium, characterized in that, The computer-readable storage medium stores computer instructions that, when executed by a processor, implement the robot stepping control method according to any one of claims 1-6.
10. A computer program product, characterized in that, The computer program product includes a computer program that, when executed by a processor, implements the robot stepping control method according to any one of claims 1-6.