A robot gait control method, device, equipment and storage medium
Patent Information
- Application Number
- CN202611178085.1
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2026-08-05
- Publication Date
- 2026-10-30
AI Technical Summary
[0003]本发明实施例提供了一种机器人步态控制方法、装置、设备和存储介质,本发明实施例的技术方案解决了现有机器人步态控制技术中,难以对全脚板过渡性分析的问题,可以对脚板前缘点、脚板中部参考点和脚后跟与踝连杆连接点进行多点位脚板分析,提高机器人运动稳定性
[0008]本发明实施例所提供的技术方案,通过每间隔预设周期获取目标机器人的脚部点位的当前位置信息;其中,所述脚部点位包括:脚板前缘点、脚板中部参考点和脚后跟与踝连杆连接点中的至少一种;基于所述当前位置信息确定所述目标机器人的当前腿部支撑状态;其中,所述当前腿部支撑状态包括:支撑相状态和摆动相状态;在所述当前腿部支撑状态为支撑相状态的情况下,基于所述当前腿部支撑状态确定所述脚部点位对应的当前滚足参数,并基于所述当前滚足参数对所述目标机器人的步态进行控制。本发明实施例的技术方案解决了现有机器人步态控制技术中,难以对全脚板过渡性分析的问题,可以对脚板前缘点、脚板中部参考点和脚后跟与踝连杆连接点进行多点位脚板分析,提高机器人运动稳定性。
Smart Images

Figure CN123010791A_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of robot motion control technology, and in particular to a robot gait control method, apparatus, device, and storage medium. Background Technology
[0002] Existing bipedal robot gait learning methods typically focus on whole-foot contact, joint trajectory tracking, or trunk stability. While these methods can learn walking strategies, they struggle to incorporate the mechanical structural characteristic of the ankle joint rotation link connected to the heel region into training objectives and deployment controls. As a result, the strategy may directly learn the foot landing angle or ankle joint torque, lacking a structured process from heel contact, whole-foot transition to leading edge extension, and failing to recapture the valuable heel-ankle linkage and foot plate coordination features inherent in the original structural invention. Summary of the Invention
[0003] This invention provides a robot gait control method, apparatus, device, and storage medium. The technical solution of this invention solves the problem in existing robot gait control technologies that it is difficult to perform full-foot transition analysis. It can perform multi-point foot analysis on the front edge of the foot, the middle reference point of the foot, and the connection point between the heel and the ankle link, thereby improving the robot's motion stability.
[0004] In a first aspect, embodiments of the present invention provide a robot gait control method, the method comprising: The current position information of the target robot's foot points is acquired at preset intervals; wherein, the foot points include at least one of: the front edge point of the footplate, the middle reference point of the footplate, and the connection point between the heel and the ankle link; the current leg support state of the target robot is determined based on the current position information; wherein, the current leg support state includes: a support phase state and a swing phase state; when the current leg support state is the support phase state, the current rolling foot parameters corresponding to the foot points are determined based on the current leg support state, and the gait of the target robot is controlled based on the current rolling foot parameters.
[0005] In a second aspect, embodiments of the present invention provide a robot gait control device, the device comprising: A data acquisition module is used to acquire the current position information of the foot points of the target robot at preset intervals; wherein the foot points include at least one of: the front edge point of the footplate, the middle reference point of the footplate, and the connection point between the heel and the ankle link; a leg support state determination module is used to determine the current leg support state of the target robot based on the current position information; wherein the current leg support state includes: a support phase state and a swing phase state; a rolling foot parameter analysis module is used to determine the current rolling foot parameters corresponding to the foot points based on the current leg support state when the current leg support state is the support phase state, and to control the gait of the target robot based on the current rolling foot parameters.
[0006] Thirdly, embodiments of the present invention provide a computer device, the computer device comprising: One or more processors; Memory, used to store one or more programs; When the one or more programs are executed by the one or more processors, the one or more processors implement the robot gait control method described in any embodiment.
[0007] Fourthly, embodiments of the present invention provide a computer-readable storage medium having a computer program stored thereon, which, when executed by a processor, implements the robot gait control method described in any embodiment.
[0008] The technical solution provided by this invention acquires the current position information of the foot points of a target robot at preset intervals. The foot points include at least one of the following: the front edge of the footplate, a middle reference point of the footplate, and the connection point between the heel and ankle link. Based on the current position information, the current leg support state of the target robot is determined. The current leg support state includes a support phase state and a swing phase state. When the current leg support state is the support phase state, the current rolling parameters corresponding to the foot points are determined based on the current leg support state, and the gait of the target robot is controlled based on the current rolling parameters. This invention solves the problem in existing robot gait control technology of difficulty in performing full-footplate transition analysis. It allows for multi-point footplate analysis of the front edge of the footplate, the middle reference point of the footplate, and the connection point between the heel and ankle link, thereby improving the robot's motion stability. Attached Figure Description
[0009] Figure 1 This is a flowchart of a robot gait control method provided in an embodiment of the present invention; Figure 2 This is a flowchart of another robot gait control method provided in an embodiment of the present invention; Figure 3 This is a diagram illustrating the lower leg-ankle link-foot plate structure and virtual rolling foot path annotation of a robot, provided in an embodiment of the present invention. Figure 4 This is a flowchart of a robot gait control process provided by an embodiment of the present invention; Figure 5 This is a schematic diagram of the structure of a robot gait control device provided in an embodiment of the present invention; Figure 6 This is a schematic diagram of the structure of a computer device provided in an embodiment of the present invention. Detailed Implementation
[0010] To make the objectives, technical solutions, and advantages of the embodiments of the present invention clearer, the technical solutions of the embodiments of the present invention will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some, not all, of the embodiments of the present invention. Based on the embodiments of the present invention, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of the present invention. The acquisition, storage, use, and processing of data in the technical solutions of the embodiments of the present invention all comply with the relevant provisions of national laws and regulations.
[0011] Figure 1 This is a flowchart of a robot gait control method provided by an embodiment of the present invention. The embodiment of the present invention can be applied to scenarios where the movement of the robot's feet is controlled. The method can be executed by a robot gait control device, which can be implemented by software and / or hardware.
[0012] like Figure 1 As shown, the robot gait control method includes the following steps: S110. Acquire the current position information of the target robot's foot points at preset intervals.
[0013] The preset cycle can be a pre-defined cycle for data acquisition and current motion parameter analysis. The target robot can be a robot requiring motion control. Specifically, the target robot can be a multi-legged robot, and the number of legs is not limited here; this embodiment uses a bipedal robot for illustration. Foot points include at least one of the following: the front edge of the foot plate, the middle reference point of the foot plate, and the connection point between the heel and the ankle link. The current position information can be the position parameters of the foot points at the current moment. Specifically, the relative position of the foot points during movement can be captured in real time using positioning software, and then mapped to the world coordinate system to determine the current position information of the foot points. Optionally, for subsequent support state determination, force sensors and velocity sensors can be introduced to detect data at the foot points, and the detection results can be included in the current position information.
[0014] The technical solution of this invention can acquire the current position information of the target robot's foot points at preset intervals, and then determine the motion parameters of the target robot at each interval by analyzing the current position information.
[0015] S120. Determine the current leg support state of the target robot based on the current location information.
[0016] The current leg support state refers to whether the target robot's leg is currently in a supported state. This current leg support state includes a support phase and a swing phase. For example, the support phase indicates that the target leg is currently only in a supported state; the swing phase indicates that the target leg is currently only in a swing phase (e.g., when walking with two feet, one foot is in contact with the ground for support, while the other foot is lifted to take a step forward). Specifically, based on the current position information, it can be determined whether multiple foot points are in contact with the ground. If any foot point is in contact with the ground, the current leg support state can be determined to be a support phase; otherwise, it is a swing phase.
[0017] S130. When the current leg support state is the support phase state, determine the current rolling foot parameters corresponding to the foot position based on the current leg support state, and control the gait of the target robot based on the current rolling foot parameters.
[0018] The current leg rolling parameters can be motion parameters used to control the rolling motion of the target robot's legs. Specifically, the current leg rolling parameters include at least one of the following: target ankle angle, ankle stiffness, ankle damping, and knee compensation. Specifically, rolling parameters corresponding to the current leg support state can be generated based on a neural network model, and these generated rolling parameters can be used as the current rolling parameters. Finally, motion control of the target robot can be performed based on the current leg rolling parameters, thereby achieving gait control of the target robot.
[0019] The technical solution provided by this invention acquires the current position information of the foot points of a target robot at preset intervals. The foot points include at least one of the following: the front edge of the footplate, a middle reference point of the footplate, and the connection point between the heel and ankle link. Based on the current position information, the current leg support state of the target robot is determined. The current leg support state includes a support phase state and a swing phase state. When the current leg support state is the support phase state, the current rolling parameters corresponding to the foot points are determined based on the current leg support state, and the gait of the target robot is controlled based on the current rolling parameters. This invention solves the problem in existing robot gait control technology of difficulty in performing full-footplate transition analysis. It allows for multi-point footplate analysis of the front edge of the footplate, the middle reference point of the footplate, and the connection point between the heel and ankle link, thereby improving the robot's motion stability.
[0020] Figure 2 This is a flowchart of another robot gait control method provided by an embodiment of the present invention. The embodiments of the present invention can be applied to scenarios where the movement of the robot's feet is controlled. Based on the above embodiments, this embodiment further explains how to determine the current leg support state of the target robot based on the current position information; and how to determine the current rolling foot parameters corresponding to the foot position based on the current leg support state. This device can be implemented by software and / or hardware and integrated into a computer device with application development capabilities.
[0021] like Figure 2 As shown, the robot gait control method includes the following steps: S210. Acquire the current position information of the target robot's foot points at preset intervals.
[0022] The preset cycle can be a preset cycle for data acquisition and current motion parameter analysis. The target robot can be a robot that requires motion control. Specifically, the target robot can be a multi-legged robot, and the number of legs of the target robot is not limited here; this embodiment uses a bipedal robot for description. Foot points include at least one of the following: the front edge of the footplate, the middle reference point of the footplate, and the connection point between the heel and the ankle link. For example, the leg structure of the target robot is described below. Figure 3 This is a diagram illustrating the lower leg-ankle link-foot plate structure and virtual rolling foot path annotation of a robot according to an embodiment of the present invention. Figure 3 As shown: The ankle joint rotation link of the target robot is not abstractly connected to the center of the foot plate, but rather extends down the lower leg to the heel area of the foot plate. This invention defines this connection point as P_H and the front edge of the foot plate as P_T. P_H is the starting point of the virtual rolling foot, P_T is the ending point of the virtual rolling foot, and P_roll(s) is the software support point that moves with the progress within the support phase. Figure 3 In the diagram, 3 represents the ankle joint rotation link, 4 represents the heel-ankle link connection point P_H, 5 represents the ankle / footplate rotation axis, 6 represents the footplate front edge point P_T, and 7 represents the movement direction of the virtual rolling support point P_roll(s) (i.e., the mid-foot reference point). The software flow uses P_H as the initial heel contact reference and P_T as the front edge push-out reference, thus transforming the link connection positions in the mechanical structure into state variables used by both reinforcement learning and deployment control.
[0023] The current position information can be the position parameters of the foot at the current moment. Specifically, the relative position of the foot during movement can be captured in real time by positioning software, and then mapped to the world coordinate system to determine the current position information of the foot. For example, the heel-ankle linkage connection point p_H, the front edge of the foot plate p_T, the middle reference point of the foot plate p_M, and the ankle / foot plate rotation axis p_O in the foot plate coordinate system F can be obtained based on CAD, URDF, or actual machine calibration. For the left or right leg l, the foot pose T_WF^l is used to transform it to the world or body coordinate system in each control cycle.
[0024] P_X^l(t) = T_WF^l(t) · p_X, X ∈ {H, M, T, O} p_M = (p_H + p_T) / 2 Where, P_H^l corresponds to Figure 3 Label 4 corresponds to label 6, and P_O^l corresponds to label 5. If the actual contact area of the robot's feet is not three discrete points, H / M / T can be expanded into three contact areas and replaced by the equivalent center point of each area.
[0025] Optionally, to further determine the support status, force sensors and velocity sensors can be introduced to detect data at the foot positions, and the detection results can be included in the current position information. The technical solution of this embodiment can acquire the current position information of the target robot's foot positions at preset intervals, and then analyze the current position information to determine the motion parameters of the target robot at each interval.
[0026] S220. For each target leg of the target robot, determine the ground contact state of each foot point of the target leg based on the current position information.
[0027] The target leg can be a single leg of the target robot; specifically, each leg of each target robot can be analyzed separately. Ground contact state refers to the determination of whether the target leg is in contact with the ground. Specifically, ground contact state can include two states: ground contact and no ground contact. Specifically, the height of each foot point can be determined based on the current position information. If the height is less than a contact height threshold, the ground contact state of the foot point can be determined as ground contact; otherwise, it is considered no ground contact. Optionally, to avoid misjudgment based solely on proximity to the ground, detection data from force and speed sensors can be introduced for auxiliary determination. For example, if the pressure at the foot point is greater than a minimum pressure threshold, the foot point height is less than a contact height threshold, and the movement speed is less than a movement speed threshold, the ground contact state of the foot point can be determined as ground contact; otherwise, it is considered no ground contact.
[0028] S230. If the ground contact state of any foot point is ground contact, or if the current gait clock of the target leg is within the support window, determine the current leg support state of the target leg as the support phase state.
[0029] The current gait clock can be the motion clock for the target leg's gait movements. Specifically, it can start timing from the moment the target leg begins to move, and then use the current time corresponding to each preset cycle as the current gait clock. The support window determines the time window during which the target robot's legs are in a support state. Specifically, it can be determined based on the target robot's leg movement frequency, thus defining the time window for each leg to be in a support state. Furthermore, the current leg support state includes: a support phase state and a swing phase state. The support phase state indicates that the target leg is currently in a support state; the swing phase state indicates that the target leg is currently in a swing state. By integrating the ground contact state and the current gait clock for comprehensive analysis, the analysis of the leg support state is improved, avoiding the influence of single data points.
[0030] For example, the controller (the execution body of this invention) can determine whether the heel H, middle M, and leading edge T are in contact with the ground. The determination criteria simultaneously allow inputs from force sensors, simulated contact force, or height / velocity estimation, as shown in Table 1: Table 1. Methods for Determining Contact and Support Phases S240. When the current leg support state of the target leg is the support phase state, determine the current support phase stage corresponding to the target leg based on the current position information of the foot point of the target leg.
[0031] The current support phase can be the current movement phase of the target leg when it is in a support state. The current support phase reflects the position of the connection point between the heel and the ankle link. For example, the current support phase can be divided into the heel contact phase, the full-foot transition phase, and the leading edge push-out phase. The heel contact phase requires the heel area to bear the load preferentially, the ankle to be more flexible, and the knee to absorb impact. The full-foot transition phase requires the heel and leading edge to gradually make contact together, with the foot posture approaching full-foot support. The leading edge push-out phase requires the leading edge area to form a push-out tendency, increasing ankle joint stiffness and forward thrust gain. Specifically, the relative position of the connection point between the heel and the ankle link can be determined based on the current position information of the target leg's foot, and the corresponding current support phase of the target leg can then be determined based on this relative position.
[0032] Optionally, based on the current position information of the foot points of the target leg, the current support phase stage corresponding to the target leg is determined, including: performing gait phase calculation based on the current position information of the foot points of the target leg to determine the support phase progress of the target leg; determining the corresponding current rolling ratio based on the support phase progress; comparing the current rolling ratio with at least one preset rolling ratio threshold; and determining the current support phase stage corresponding to the target leg based on the comparison result.
[0033] The support phase progress can be defined from a time perspective as the progress of the target leg in the support state. For example, on the one hand, gait phase calculation can be performed based on the current position information of the target leg's foot to determine the phase progress parameters in the support state; on the other hand, timing can be started from the moment the target leg touches the ground to determine the time progress parameters in the support state. Finally, the phase progress parameters and time progress parameters are weighted and summed to obtain the support phase progress.
[0034] For example, when S_l=1, the controller calculates the support phase progress s_l. s_l can be calculated from the gait phase or obtained by timing the first heel contact with the ground t_HS. To cover phase looping, the present invention preferably uses a modulo-1 phase difference.
[0035] Δphi_l = (phi_l - phi_HS) mod 1, Δphi_st = (phi_TO - phi_HS) mod 1 s_l = clip( λ · Δphi_l / (Δphi_st+ε) + (1-λ) · (t-t_HS) / (T_st+ε),0, 1 ) Where λ is the fusion coefficient between phase progress and timing progress, and ε is a small amount to prevent division by zero.
[0036] Furthermore, the current rolling ratio can be the ratio of the target leg's current position at the virtual support point on the foot. Specifically, it can be determined based on the formula for calculating the support phase progress and the rolling ratio, thereby determining the current rolling ratio corresponding to the support phase progress. For example, instead of directly outputting the foot landing angle, the rolling propulsion speed roll_speed can be output, and then the current rolling ratio rho_l can be obtained from the following formula.
[0037] u_l = clip( roll_speed_l · s_l, 0, 1 ) rho_l = 3u_l^2 - 2u_l^3 P_roll^l(s) = P_H^l + rho_l · (P_T^l - P_H^l) The aforementioned P_roll^l(s) is the most distinctive calculation point of this invention: when rho_l=0, the virtual support point is located at... Figure 3 The heel-ankle linkage connection area labeled 4; when rho_l=1, the virtual support point is located at... Figure 3 The area at the front edge of the footplate, labeled 6. Unlike regular foot contact rewards, this point is not a manually selected center of the foot, but is determined by Alexbot's heel linkage structure and the length direction of the footplate.
[0038] Furthermore, the preset rolling ratio threshold can be a reference threshold used to determine the support phase. For example, the preset rolling ratio threshold can have a first rolling ratio threshold and a second rolling ratio threshold (the first rolling ratio threshold is less than the second rolling ratio threshold). If the current rolling ratio is less than the first rolling ratio threshold, the current support phase is determined to be the heel contact phase; if the current rolling ratio is greater than the first rolling ratio threshold but less than the second rolling ratio threshold, the current support phase is determined to be the full-foot transition phase; if the current rolling ratio is greater than the second rolling ratio threshold, the current support phase is determined to be the leading edge push-out phase. For example, the determination method for the current support phase is shown in Table 2.
[0039] Table 2. Methods for Determining the Support Phase Stage where rho_1 and rho_2 are respectively a first rolling proportion threshold and a second rolling proportion threshold, preferably satisfying 0 < rho_1 < rho_2 < 1, for example, rho_1 = 0.25 and rho_2 = 0.75. Contact verification may also be used for correction in a real machine: the heel stage requires C_H^l = 1 and C_T^l = 0, and the leading edge stage requires C_T^l = 1 or F_T^l / (F_H^l + F_T^l + ε) to be greater than a preset proportion.
[0040] S250: Determine the current foot rolling parameter corresponding to the target leg based on the current support phase and the target policy network, and control the gait of the target robot based on the current foot rolling parameter.
[0041] where the target policy network may be a neural network model for performing leg motion parameter analysis. The current foot rolling parameter may be a motion parameter for performing rolling control on the target leg. The current foot rolling parameter includes at least one of an ankle joint target angle, ankle joint stiffness, ankle joint damping, and a knee joint compensation amount. Specifically, the target policy network may analyze the current support phase, and then output a current foot rolling parameter adapted to the current support phase. Finally, motion control may be performed on the target leg based on the current foot rolling parameter, so as to realize control over the gait of the target robot.
[0042] Optionally, determining the ankle joint target angle includes: acquiring a virtual foot rolling parameter output by the target policy network based on the current support phase, and performing foot plate mapping based on the virtual foot rolling parameter to obtain a foot plate target pose parameter; determining the ankle joint target angle based on the foot plate target pose parameter, the shank pose parameter of the target leg, and the geometric compensation amount between the heel and the ankle joint.
[0043] where the virtual foot rolling parameter may be an initially determined foot rolling parameter by the target policy network. The target pose parameter may be a pose parameter for the foot plate of the target leg to move. Specifically, the virtual foot rolling parameter may be mapped to the foot plate position of the target leg, so as to obtain the target pose parameter corresponding to the virtual foot rolling parameter. Further, the ankle joint target angle may be the motion angle of the ankle joint of the target leg. To integrate the geometric position relationship of the target leg, the foot plate target pose parameter may be combined with the shank pose parameter of the target leg and the geometric compensation amount between the heel and the ankle joint, so as to determine the ankle joint target angle.
[0044] For example, the target policy network outputs virtual foot rolling parameters such as theta_heel_offset and toeoff_gain. The controller first maps these parameters to the foot target pose theta_f, and then combines the lower leg pose theta_shank and the heel-ankle link geometric compensation delta_link to generate the ankle joint target angle.
[0045] theta_toe_l = toeoff_gain_l · theta_toe_max theta_f^l = theta_flat + (1-rho_l) · theta_heel_offset_l + rho_l ·theta_toe_l To reflect Figure 3 The structural relationship between the mid-ankle / foot plate pivot and the connection point of the heel link can also be defined by defining the plantar vectors d_H=p_H-p_O and d_T=p_T-p_O, and the rolling compensation angle can be obtained from the structural geometry.
[0046] delta_H = atan2(d_H,z, d_H,x), delta_T = atan2(d_T,z, d_T,x) delta_link_l(rho_l) = (1-rho_l) · delta_H + rho_l · delta_T q_a_ref^l = sat( theta_f^l - theta_shank^l + delta_link_l(rho_l), q_a_min, q_a_max ) Here, *sat* represents the joint limiting function. This mapping ensures that the ankle target angle is not simply given by the policy network, but must be processed through... Figure 3 The structural geometric constraints of P_H, P_T, and ankle axis P_O are thus incorporated into the training and deployment control in the form of software formulas.
[0047] In addition, the target policy network also outputs ankle_softness and knee_absorb_gain. The controller adjusts ankle resistance and knee compensation based on the rolling phase switches G_H, G_M, and G_T to achieve smooth absorption upon heel strike, stable transition during the full foot plate phase, and enhanced push-off during the leading edge phase.
[0048] alpha_soft_l = clip(ankle_softness_l, 0, 1) K_a^l = sat( K_0 · (1-alpha_soft_l·G_H^l) + K_T · toeoff_gain_l·G_T^l, K_min, K_max ) D_a^l = sat( D_0 + D_H·alpha_soft_l·G_H^l + D_T·G_M^l, D_min, D_max ) v_down = max(0, -v_pelvis,z) q_kc^l = k_abs·knee_absorb_gain_l·G_H^l·v_down / (v_ref+ε) - k_push·toeoff_gain_l·G_T^l If the positive direction of the robot's knee joint is opposite to that in the above formula, then the opposite sign of q_kc^l is taken in the controller. The technical meaning of this compensation term is: during the heel phase, the knee cooperates with the ankle to absorb the impact, and during the leading edge phase, the knee cooperates with the foot to push out.
[0049] Optionally, the training process of the target policy network includes: outputting network training samples into the initial policy network, and determining the target reward parameters corresponding to the initial policy network; wherein, the target reward parameters include at least one of the following: virtual rolling consistency parameters, heel priority contact parameters, full foot transition parameters, leading edge push-out parameters, impact suppression parameters, and anti-slip-up parameters; adjusting the network parameters of the initial policy network based on the target reward parameters to obtain the target policy network.
[0050] The initial policy network can be the policy network before model training. Specifically, the virtual roll consistency parameter indicates that the actual contact center should follow P_roll(s) (the connection point between the heel and ankle) from the heel to the front edge. The heel-priority contact parameter indicates that in the early stages of support, the area near the connection point between the heel and ankle should make contact first, rather than the front edge touching the ground first. The full foot transition parameter indicates that in the mid-stage of support, the foot should smoothly transition from the connection point between the heel and ankle to the front edge of the foot. The front edge push-out parameter indicates that in the late stage of support, the front edge of the foot should bear the push-out tendency. The impact suppression parameter indicates that the vertical impact and angular velocity of the pelvis should be reduced at the moment of heel contact. The anti-drag parameter indicates that in the swing phase, neither the heel nor the front edge should drag on the ground. Optionally, the six reward parameters involved in the above design can be weighted and summed to obtain the target reward parameters.
[0051] For example, the policy network outputs not all joint angles or foot trajectories, but rather the following five categories of virtual rolling foot parameters: a_pi^l = [ theta_heel_offset_l, roll_speed_l, toeoff_gain_l, ankle_softness_l, knee_absorb_gain_l ] The policy output is transformed into q_a_ref, K_a, D_a, and q_kc via the above process before entering the low-level motor control. The training rewards are also designed around P_H, P_T, and P_roll(s). The specific reward functions are shown in Table 3. Table 3 Reward Function Table for Policy Networks The target reward parameter R_total = w1 r_roll + w2 r_heel + w3 r_flat + w4 r_toe + w5 r_impact + w6 r_clear - P_limit - P_slip - P_torque Through the aforementioned motion space and reward design, the reinforcement learning strategy is forced to learn the process of "heel entry, full foot plate transition, and leading edge push-out" around Alexbot's heel-ankle linkage structure, rather than simply optimizing ordinary foot contact stability.
[0052] Optionally, when the current leg support state is in the swing phase state, the foot height off the ground can be determined based on the current position information of the foot point; when the foot height off the ground is less than the height threshold, the corresponding foot lift gain parameter and ankle angle adjustment amount can be determined.
[0053] Specifically, the ground clearance of the heel and the front edge of the foot can be determined based on the current position information of the foot. Then, based on the height difference between the foot's ground clearance and a ground clearance threshold, corresponding leg lift gain parameters and ankle angle adjustment amounts can be determined. This allows for increasing the leg lift height of the target robot's foot in subsequent processes. Furthermore, when the current leg support state is in a swing phase, a threshold heel-first contact posture can be set at the end of the swing phase to ensure that the target robot's foot initially contacts the ground first during the initial support phase.
[0054] For example, when S_l=0, the controller does not generate the support phase P_roll, but instead checks whether both the heel and the front edge of the footplate meet the ground clearance requirements. This judgment still uses... Figure 3 The P_H and P_T in the structure are therefore bound to the same mechanical structure.
[0055] h_clear^l = min(z_H^l, z_T^l) - z_g if h_clear^l < h_safe: Δq_clear^l = k_clear · (h_safe - h_clear^l) if s_swing^l > s_pre: theta_f^l ← theta_flat + theta_heel_offset_l The aforementioned preset position causes the foot posture at the end of the swing phase to return to the heel-first contact state in advance, so that the next support phase can start from... Figure 3 The P_H area labeled 4 begins to roll, preventing the strategy from learning the common landing patterns of the leading edge touching the ground first or the entire foot slamming down at the end of the swing.
[0056] For example, in order to better understand the technical solution provided by the present invention, specific embodiments are described below: Figure 4 This is a flowchart illustrating a robot gait control process according to an embodiment of the present invention. Figure 4 As shown, the workflow for robot gait control includes the following steps: 1. Read the robot status and obtain the positions of P_H, P_M, P_T, and P_O in the current coordinate system according to CAD / URDF calibration.
[0057] 2. Determine whether the leg is in the support phase or the swing phase based on F1 to F4.
[0058] 3. If it is a support phase, calculate s_l, rho_l and P_roll(s), and then determine G_H, G_M and G_T based on rho_l.
[0059] 4. Generate the foot target pose theta_f based on theta_heel_offset, roll_speed, and toeoff_gain.
[0060] 5. Calculate delta_link based on P_H, P_T, and P_O, and generate the target ankle angle q_a_ref.
[0061] 6. Generate K_a, D_a, and q_kc based on ankle_softness and knee_absorb_gain to achieve heel softness, full foot transition, and toe edge extension.
[0062] 7. If it is a swing phase, perform anti-drag judgment and pre-set the heel priority contact posture at the end of the swing.
[0063] 8. In training mode, the policy network is updated with structural rewards; in deployment mode, q_a_ref, K_a, D_a, and q_kc are directly converted into motor commands.
[0064] The technical solution provided by this invention acquires the current position information of the foot points of the target robot at preset intervals; for each target leg of the target robot, the ground contact state of each foot point of the target leg is determined based on the current position information; when the ground contact state of any foot point is "ground contact" or the current gait clock of the target leg is within the support window, the current leg support state of the target leg is determined to be a support phase state; when the current leg support state of the target leg is a support phase state, the current support phase stage corresponding to the target leg is determined based on the current position information of the foot points of the target leg; the current leg rolling parameters corresponding to the target leg are determined based on the current support phase stage and the target policy network, and the gait of the target robot is controlled based on the current rolling parameters. The technical solution of this invention solves the problem in existing robot gait control technology that it is difficult to analyze the transition of the entire footplate, and can perform multi-point footplate analysis on the front edge point of the footplate, the middle reference point of the footplate, and the connection point between the heel and the ankle link, thereby improving the robot's motion stability.
[0065] Figure 5 This is a schematic diagram of a robot gait control device provided in an embodiment of the present invention. The embodiment of the present invention can be applied to scenarios where the movement of the robot's feet is controlled. The device can be implemented by software and / or hardware and integrated into a computer device with application development capabilities.
[0066] like Figure 5 As shown, the robot gait control device includes: a data acquisition module 310, a leg support state determination module 320, and a rolling foot parameter analysis module 330.
[0067] The data acquisition module 310 is used to acquire the current position information of the foot points of the target robot at preset intervals; wherein the foot points include at least one of the following: the front edge point of the foot plate, the middle reference point of the foot plate, and the connection point between the heel and the ankle link; the leg support state determination module 320 is used to determine the current leg support state of the target robot based on the current position information; wherein the current leg support state includes: a support phase state and a swing phase state; the rolling foot parameter analysis module 330 is used to determine the current rolling foot parameters corresponding to the foot points based on the current leg support state when the current leg support state is the support phase state, and to control the gait of the target robot based on the current rolling foot parameters.
[0068] The technical solution provided by this invention acquires the current position information of the foot points of a target robot at preset intervals. The foot points include at least one of the following: the front edge of the footplate, a middle reference point of the footplate, and the connection point between the heel and ankle link. Based on the current position information, the current leg support state of the target robot is determined. The current leg support state includes a support phase state and a swing phase state. When the current leg support state is the support phase state, the current rolling parameters corresponding to the foot points are determined based on the current leg support state, and the gait of the target robot is controlled based on the current rolling parameters. This invention solves the problem in existing robot gait control technology of difficulty in performing full-footplate transition analysis. It allows for multi-point footplate analysis of the front edge of the footplate, the middle reference point of the footplate, and the connection point between the heel and ankle link, thereby improving the robot's motion stability.
[0069] In one optional implementation, the leg support state determination module 320 is specifically used to: determine the ground contact state of each foot point of the target leg based on the current position information for each target leg of the target robot; and determine the current leg support state of the target leg as a support phase state when the ground contact state of any foot point is ground contact, or when the current gait clock of the target leg is within the support window.
[0070] In an optional implementation, the foot rolling parameter analysis module 330 includes: a foot rolling parameter determination unit, configured to: for each target leg of the target robot, when the current leg support state of the target leg is a support phase state, determine the current support phase stage corresponding to the target leg based on the current position information of the foot point of the target leg; wherein the current support phase stage is used to represent the interval position of the connection point between the heel and the ankle link; determine the current leg rolling parameters corresponding to the target leg based on the current support phase stage and the target strategy network; wherein the current leg rolling parameters include at least one of: ankle joint target angle, ankle joint stiffness, ankle joint damping, and knee joint compensation.
[0071] In one optional implementation, the foot rolling parameter analysis module 330 includes: a current support phase determination unit, used to: perform gait phase calculation based on the current position information of the foot points of the target leg to determine the support phase progress of the target leg; determine the corresponding current rolling ratio based on the support phase progress; compare the current rolling ratio with at least one preset rolling ratio threshold; and determine the current support phase corresponding to the target leg based on the comparison result.
[0072] In one optional implementation, the rolling foot parameter analysis module 330 includes: an ankle joint target angle determination unit, configured to: acquire virtual rolling foot parameters output by the target strategy network based on the current support phase, and perform footboard mapping based on the virtual rolling foot parameters to obtain footboard target posture parameters; and determine the ankle joint target angle based on the footboard target posture parameters, the lower leg posture parameters of the target leg, and the geometric compensation amount of the heel and ankle joint.
[0073] In an optional implementation, the rolling foot parameter analysis module 330 includes a target policy network training unit, configured to: output network training samples to an initial policy network, and determine the target reward parameters corresponding to the initial policy network; wherein the target reward parameters include at least one of: virtual rolling consistency parameters, heel priority contact parameters, full foot transition parameters, leading edge push-out parameters, impact suppression parameters, and anti-slipping parameters; and adjust the network parameters of the initial policy network based on the target reward parameters to obtain the target policy network.
[0074] In one optional embodiment, the robot gait control device further includes: a swing phase control module, configured to: determine the foot lift-off height based on the current position information of the foot point when the current leg support state is a swing phase state; and determine the corresponding foot lift gain parameter and ankle angle adjustment amount when the foot lift-off height is less than a ground lift-off height threshold.
[0075] The robot gait control device provided in the embodiments of the present invention can execute the robot gait control method provided in any embodiment of the present invention, and has the corresponding functional modules and beneficial effects of the execution method.
[0076] Figure 6 This is a schematic diagram of the structure of a computer device provided in an embodiment of the present invention. Figure 6 A block diagram of an exemplary computer device 12 suitable for implementing embodiments of the present invention is shown. Figure 6 The computer device 12 shown is merely an example and should not be construed as limiting the functionality or scope of the embodiments of the present invention. The computer device 12 can be any terminal device with computing capabilities and can be configured in a robot gait control device.
[0077] like Figure 6 As shown, the computer device 12 is represented in the form of a general-purpose computing device. The components of the computer device 12 may include, but are not limited to: one or more processors or processing units 16, system memory 28, and bus 18 connecting different system components (including system memory 28 and processing unit 16).
[0078] Bus 18 can be one or more of several bus architectures, including a memory bus or memory controller, a peripheral bus, a graphics acceleration port, a processor, or a local bus using any of the various bus architectures. For example, these architectures include, but are not limited to, the Industry Standard Architecture (ISA) bus, the Micro Channel Architecture (MAC) bus, the Enhanced ISA bus, the Video Electronics Standards Association (VESA) local bus, and the Peripheral Component Interconnect (PCI) bus.
[0079] Computer device 12 typically includes a variety of computer system readable media. These media can be any available media that can be accessed by computer device 12, including volatile and non-volatile media, removable and non-removable media.
[0080] System memory 28 may include computer system readable media in the form of volatile memory, such as random access memory (RAM) 30 and / or cache 32. Computer device 12 may further include other removable / non-removable, volatile / non-volatile computer system storage media. By way of example only, storage system 34 may be used to read and write non-removable, non-volatile magnetic media (… Figure 6 Not shown; usually referred to as a "hard drive"). Although Figure 6 Not shown, a disk drive for reading and writing to a removable non-volatile disk (e.g., a "floppy disk") and an optical disk drive for reading and writing to a removable non-volatile optical disk (e.g., a CD-ROM, DVD-ROM, or other optical media) may be provided. In these cases, each drive may be connected to bus 18 via one or more data media interfaces. System memory 28 may include at least one program product having a set (e.g., at least one) of program modules configured to perform the functions of the embodiments of the present invention.
[0081] A program / utility 40 having a set (at least one) of program modules 42 may be stored, for example, in system memory 28. Such program modules 42 include, but are not limited to, an operating system, one or more application programs, other program modules, and program data. Each or some combination of these examples may include an implementation of a network environment. Program modules 42 typically perform the functions and / or methods described in the embodiments of the present invention.
[0082] Computer device 12 can also communicate with one or more external devices 14 (e.g., keyboard, pointing device, display 24, etc.), and with one or more devices that enable a user to interact with the computer device 12, and / or with any device that enables the computer device 12 to communicate with one or more other computing devices (e.g., network card, modem, etc.). This communication can be performed through input / output (I / O) interface 22. Furthermore, computer device 12 can also communicate with one or more networks (e.g., local area network (LAN), wide area network (WAN), and / or public networks, such as the Internet) via network adapter 20. Figure 6 As shown, network adapter 20 communicates with other modules of computer device 12 via bus 18. It should be understood that, although... Figure 6 As not shown, it can be used in conjunction with computer device 12 with other hardware and / or software modules, including but not limited to: microcode, device drivers, redundant processing units, external disk drive arrays, RAID systems, tape drives, and data backup storage systems.
[0083] Processing unit 16 executes various functional applications and data processing by running programs stored in system memory 28, such as implementing the robot gait control method provided in this embodiment of the invention, which includes: The current position information of the target robot's foot points is acquired at preset intervals; wherein, the foot points include at least one of: the front edge point of the footplate, the middle reference point of the footplate, and the connection point between the heel and the ankle link; the current leg support state of the target robot is determined based on the current position information; wherein, the current leg support state includes: a support phase state and a swing phase state; when the current leg support state is the support phase state, the current rolling foot parameters corresponding to the foot points are determined based on the current leg support state, and the gait of the target robot is controlled based on the current rolling foot parameters.
[0084] This embodiment provides a computer-readable storage medium storing a computer program that, when executed by a processor, implements the robot gait control method as provided in any embodiment of the present invention, including: The current position information of the target robot's foot points is acquired at preset intervals; wherein, the foot points include at least one of: the front edge point of the footplate, the middle reference point of the footplate, and the connection point between the heel and the ankle link; the current leg support state of the target robot is determined based on the current position information; wherein, the current leg support state includes: a support phase state and a swing phase state; when the current leg support state is the support phase state, the current rolling foot parameters corresponding to the foot points are determined based on the current leg support state, and the gait of the target robot is controlled based on the current rolling foot parameters.
[0085] The computer storage medium of this invention can be any combination of one or more computer-readable media. A computer-readable medium can be a computer-readable signal medium or a computer-readable storage medium. A computer-readable storage medium can be, for example, but not limited to, an electrical, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any combination thereof. More specific examples of computer-readable storage media (a non-exhaustive list) include: an electrical connection having one or more wires, a portable computer disk, a hard disk, 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 device, magnetic storage device, or any suitable combination thereof. In this document, a computer-readable storage medium can be any tangible medium that contains or stores a program that can be used by or in conjunction with an instruction execution system, apparatus, or device.
[0086] Computer-readable signal media may include data signals propagated in baseband or as part of a carrier wave, carrying computer-readable program code. Such propagated data signals may take various forms, including but not limited to electromagnetic signals, optical signals, or any suitable combination thereof. Computer-readable signal media may also be any computer-readable medium other than computer-readable storage media, capable of sending, propagating, or transmitting programs for use by or in connection with an instruction execution system, apparatus, or device.
[0087] Program code contained on a computer-readable medium may be transmitted using any suitable medium, including but not limited to: wireless, wire, optical fiber, RF (Radio Frequency), etc., or any suitable combination thereof.
[0088] Computer program code for performing the operations of this invention can be written in one or more programming languages or a combination thereof. Programming languages include object-oriented programming languages such as C, Java, Smalltalk, C++, C#, and Python, as well as conventional procedural programming languages such as the "C" language or similar programming languages. The program code can be executed entirely on the user's computer, partially on the user's computer, as a standalone software package, partially on the user's computer and partially on a remote computer, or entirely on a remote computer or server. In cases involving remote computers, the remote computer can be connected to the user's computer via any type of network, including a local area network (LAN) or a wide area network (WAN), or it can be connected to an external computer (e.g., via the Internet using an Internet service provider).
[0089] Those skilled in the art will understand that the modules or steps of the present invention described above can be implemented using general-purpose computing devices. They can be centralized on a single computing device or distributed across a network of multiple computing devices. Optionally, they can be implemented using computer-executable program code, thereby allowing them to be stored in a storage device for execution by a computing device, or they can be fabricated as separate integrated circuit modules, or multiple modules or steps can be fabricated as a single integrated circuit module. Thus, the present invention is not limited to any particular combination of hardware and software.
[0090] Note that the above description is merely a preferred embodiment of the present invention and the technical principles employed. Those skilled in the art will understand that the present invention is not limited to the specific embodiments described herein, and various obvious changes, readjustments, and substitutions can be made without departing from the scope of protection of the present invention. Therefore, although the present invention has been described in detail through the above embodiments, the present invention is not limited to the above embodiments, and may include many other equivalent embodiments without departing from the concept of the present invention, the scope of which is determined by the scope of the appended claims.
Claims
1. A robot gait control method, characterized in that, include: The current position information of the target robot's foot points is obtained at preset intervals; wherein, the foot points include at least one of the following: the front edge point of the foot plate, the middle reference point of the foot plate, and the connection point between the heel and the ankle link; The current leg support state of the target robot is determined based on the current position information; wherein, the current leg support state includes: support phase state and swing phase state; When the current leg support state is the support phase state, the current rolling foot parameters corresponding to the foot position are determined based on the current leg support state, and the gait of the target robot is controlled based on the current rolling foot parameters.
2. The method according to claim 1, characterized in that, Determining the current leg support state of the target robot based on the current location information includes: For each target leg of the target robot, the ground contact state of each foot point of the target leg is determined based on the current position information; If the ground contact state at any foot point is "ground contact" or the current gait clock of the target leg is within the support window, the current leg support state of the target leg is determined to be the support phase state.
3. The method according to claim 1, characterized in that, The step of determining the current rolling parameters corresponding to the foot position based on the current leg support state includes: For each target leg of the target robot, when the current leg support state of the target leg is the support phase state, the current support phase stage corresponding to the target leg is determined based on the current position information of the foot point of the target leg; wherein, the current support phase stage is used to represent the interval position of the connection point between the heel and the ankle link; Based on the current support phase stage and the target strategy network, the current leg rolling parameters corresponding to the target leg are determined; wherein, the current leg rolling parameters include at least one of the following: ankle joint target angle, ankle joint stiffness, ankle joint damping, and knee joint compensation.
4. The method according to claim 3, characterized in that, The step of determining the current support phase of the target leg based on the current position information of the foot point of the target leg includes: Based on the current position information of the foot points of the target leg, gait phase calculation is performed to determine the support phase progress of the target leg; Based on the progress of the support phase, the corresponding current rolling ratio is determined, the current rolling ratio is compared with at least one preset rolling ratio threshold, and the current support phase corresponding to the target leg is determined based on the comparison result.
5. The method according to claim 3, characterized in that, Determining the target ankle angle includes: The target policy network outputs virtual rolling foot parameters based on the current support phase, and footboard mapping is performed based on the virtual rolling foot parameters to obtain the target footboard posture parameters. The target ankle angle is determined based on the target foot posture parameters, the lower leg posture parameters of the target leg, and the geometric compensation of the heel and ankle joint.
6. The method according to claim 3, characterized in that, The training process of the target policy network includes: The network training samples are output to the initial policy network to determine the target reward parameters corresponding to the initial policy network; wherein, the target reward parameters include at least one of the following: virtual rolling consistency parameters, heel priority contact parameters, full foot transition parameters, leading edge push-out parameters, impact suppression parameters, and anti-slip-up parameters; The target policy network is obtained by adjusting the network parameters of the initial policy network based on the target reward parameters.
7. The method according to claim 1, characterized in that, The method further includes: When the current leg support state is the swing phase state, the height of the foot off the ground is determined based on the current position information of the foot point; When the foot height off the ground is less than the threshold, determine the corresponding foot lift gain parameter and ankle angle adjustment amount.
8. A robot gait control device, characterized in that, The device includes: The data acquisition module is used to acquire the current position information of the foot points of the target robot at preset intervals; wherein, the foot points include at least one of the following: the front edge point of the foot plate, the middle reference point of the foot plate, and the connection point between the heel and the ankle link; A leg support state determination module is used to determine the current leg support state of the target robot based on the current position information; wherein, the current leg support state includes: a support phase state and a swing phase state; The foot rolling parameter analysis module is used to determine the current foot rolling parameters corresponding to the foot position based on the current leg support state when the current leg support state is the support phase state, and to control the gait of the target robot based on the current foot rolling parameters.
9. A computer device, characterized in that, The computer device includes: One or more processors; Memory, used to store one or more programs; When the one or more programs are executed by the one or more processors, the one or more processors implement the robot gait control method as described in any one of claims 1-7.
10. A computer-readable storage medium having a computer program stored thereon, characterized in that, When the program is executed by the processor, it implements the robot gait control method as described in any one of claims 1-7.
