Leg type robot staged jumping control method based on bouncing closed loop and robot
By adopting a staged jump control method based on a closed loop of elastic and fall in leg robots, a control model for jumping and falling is created to control joint motor operation, which solves the problem of poor stability of the robot in the jumping and landing stages, and achieves the robot's smooth take-off and landing.
Patent Information
- Application Number
- CN202411674124.8
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-11-21
- Publication Date
- 2025-04-18
AI Technical Summary
The leg robot has poor stability during the jumping and landing stages, which can easily lead to the robot being out of control.
Using a staged jump control method based on a closed loop of elastic and fall, the jump and drop control strategies are determined by creating a first control model for jumping and a second control model for drop control, and the first joint motor and the second joint motor are controlled to achieve squat leg, stretching leg and retracting leg movements to ensure the stability of the robot when jumping and landing.
The stability of the robot in the jumping and landing stages is improved, and the robot is able to take off and land smoothly.
Smart Images

Figure CN119839906A_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the field of robot control technology, and in particular to a staged jumping control method of a legged robot based on a bouncing closed loop and a robot. Background Art
[0002] With the increasing application of mobile robots in environmental exploration, industrial production, aerospace, logistics and transportation, etc., higher requirements are placed on their environmental adaptability and mobility. Wheeled robots can usually move smoothly, efficiently and quickly on flat ground, but they are prone to difficulties in moving when facing rugged ground and high obstacles. For example, when the height of the obstacle exceeds the diameter of the wheel, it is easy to fail to cross. In contrast, legged robots perform well in overcoming complex environmental limitations such as steps and rugged ground, but their movements are complex and time-consuming, and they move slowly on flat roads. Wheel-legged robots combine some of the characteristics of wheeled robots and legged robots, but wheel-legged robots have poor stability during jumping and landing, which can easily lead to wheel-legged robots losing control. Summary of the invention
[0003] In view of this, the purpose of the embodiments of the present application is to provide a legged robot phased jumping control method and robot based on a bounce-drop closed loop, which can improve the problem that the robot has poor stability during the jumping and landing stages, which easily leads to the robot losing control.
[0004] In order to achieve the above technical objectives, the technical solutions adopted in this application are as follows:
[0005] In a first aspect, an embodiment of the present application provides a staged jumping control method for a legged robot based on a drop closed loop, which is applied to a legged robot, wherein the legged robot includes a machine body and A wheel-leg mechanisms arranged on the machine body, each of the wheel-leg mechanisms includes a first joint motor and a second joint motor for performing a jumping operation, and A is an integer greater than or equal to 2; the method includes:
[0006] Based on the product parameters of the legged robot, a first control model for the legged robot to jump is created, and a second control model for the legged robot to control falling is created;
[0007] Upon receiving a jump instruction, determining a take-off control strategy of the legged robot based on the first control model, wherein the take-off control strategy includes jump control parameters corresponding to the legged robot performing a squatting action, a leg extension action, and a leg retraction action, and the jump control parameters include the output torque of the first joint motor and the second joint motor in the wheel-leg mechanism;
[0008] Based on the corresponding jumping control parameters in the take-off control strategy, the first joint motor and the second joint motor are controlled to operate so that the wheel-leg mechanism performs a leg squatting action, a leg extension action, and a leg retraction action to achieve jumping;
[0009] After the wheel-leg mechanism performs squatting, stretching and retracting leg movements for jumping, based on the highest jumping point of the legged robot, the falling control strategy of the legged robot is determined by the second control model, wherein the falling control parameters include the output torques corresponding to the first joint motor and the second joint motor in the wheel-leg mechanism during the falling state;
[0010] Based on the fall control parameters in the fall control strategy, the first joint motor and the second joint motor are controlled to operate so as to achieve landing cushioning of the legged robot.
[0011] In combination with the first aspect, in some optional embodiments, each of the wheel-leg mechanisms further includes a first leg rod, a second leg rod, a third leg rod, a fourth leg rod, a fifth leg rod and a wheel body, one end of the first leg rod is rotatably connected to one end of the second leg rod via a first joint motor, the other end of the first leg rod is rotatably connected to one end of the third leg rod via the second joint motor, the other end of the second leg rod is rotatably connected to the wheel body via the fourth leg rod, the other end of the third leg rod is rotatably connected to the wheel body via the fifth leg rod, and the first leg rod is arranged on the machine body;
[0012] Creating a first control model for the legged robot to jump, including:
[0013] Based on the kinetic energy and potential energy of the legged robot, the Lagrangian operator is obtained:
[0014]
[0015] Where B refers to the Lagrangian operator; E k refers to the kinetic energy of the legged robot during the leg extension operation phase; V refers to the potential energy of the legged robot; m refers to the mass of the legged robot; refers to the speed of change of the center of mass position of the legged robot; y refers to the height of the center of mass of the legged robot;
[0016]
[0017] V=mgy
[0018] The rotation angle α of the joint motor is taken as the generalized coordinate, the joint motor is the first joint motor or the second joint motor, and the generalized force of the legged robot is the torque τ of 2A joint motors, and the Lagrangian equation is obtained:
[0019]
[0020] represents the angular velocity of the joint motor;
[0021] represents the angular acceleration of the joint motor;
[0022] The Lagrange equation is expanded to obtain the torque expression of the joint motor output as the first control model:
[0023]
[0024]
[0025] In the formula, y 1 is the first derivative of y with respect to α; y 2 Yes 1 The first derivative with respect to α; l 1 Refers to the length of the first leg, l 1 refers to the length of the second leg rod, which is the same as the length of the third leg rod; l 3 Refers to the length of the fourth leg rod, and the length of the fourth leg rod is the same as the length of the fifth leg rod.
[0026] In combination with the first aspect, in some optional implementations, before controlling the first joint motor and the second joint motor to operate based on the corresponding jump control parameters in the take-off control strategy, the method further includes:
[0027] Detecting the pitch angle of the machine body by means of a posture sensor in the legged robot;
[0028] When the variation amplitude of the pitch angle within a specified time period is within a preset angle range, it is determined that the legged robot is in a stable state, and the legged robot is allowed to execute steps to control the operation of the first joint motor and the second joint motor based on the corresponding jump control parameters in the take-off control strategy.
[0029] In combination with the first aspect, in some optional implementations, the method further includes:
[0030] After the legged robot performs the leg-stretching action, the motion state of the legged robot is detected by the Z-axis acceleration sensed by the gyroscope in the legged robot, wherein when the Z-axis acceleration is equal to the gravitational acceleration and the polarity of the Z-axis acceleration is perpendicular to the horizontal plane, the legged robot is at the highest point of the jump;
[0031] When the legged robot has not passed the highest point of the jump, determining that the motion state of the legged robot is an ascending state representing the jump;
[0032] When the legged robot passes the highest point of the jump, it is determined that the motion state of the legged robot is a falling state.
[0033] In combination with the first aspect, in some optional implementations, creating a second control model for fall control of the legged robot includes:
[0034] The dynamic model of the legged robot is created as:
[0035]
[0036] F motor represents the force converted from the torque provided by the joint motor, and the joint motor is the first joint motor or the second joint motor;
[0037] m represents the mass of the legged robot;
[0038] x represents the height change of the center of mass of the legged robot during the jump;
[0039] represents the jumping speed of the legged robot;
[0040] represents the acceleration of the legged robot jumping;
[0041] c represents the damping coefficient of the wheel-leg mechanism, represents the damping force of the wheel-leg mechanism;
[0042] k represents the equivalent spring stiffness of the wheel-leg mechanism, and kx represents the equivalent elastic force of the wheel-leg mechanism;
[0043] represents the inertial force of the legged robot;
[0044] g represents the acceleration due to gravity;
[0045] The output torque τ of a single joint motor is expressed as:
[0046]
[0047] Wherein, L refers to the distance between the center of mass of the legged robot and the contact point in the vertical direction, and the contact point is the point where the wheel body of the wheel-leg mechanism contacts the bearing surface;
[0048]
[0049] Δt refers to the time step. Based on the output torque τ and acceleration, a second control model is created, which is expressed as:
[0050]
[0051] In the formula, Represents the calculation function of the output torque.
[0052] In combination with the first aspect, in some optional implementations, the method further includes:
[0053] Detecting the pitch angle of the machine body by means of a posture sensor in the legged robot;
[0054] When the legged robot is in the falling state and the pitch angle exceeds a preset angle, the wheel-leg mechanism is controlled by a balance controller in the legged robot to perform a leg extension action or a leg retraction action so that the pitch angle is less than or equal to the preset angle.
[0055] In combination with the first aspect, in some optional implementations, the method further includes:
[0056] When the falling height of the legged robot exceeds a preset height, the balance controller is controlled to fail, and after the legged robot lands, the balance controller is controlled to take effect.
[0057] In a second aspect, an embodiment of the present application further provides a robot, comprising a processor and a memory coupled to each other, wherein the memory stores a computer program, and when the computer program is executed by the processor, the robot executes the above method.
[0058] In conjunction with the second aspect, in some optional embodiments, the robot further includes a machine body and A wheel-leg mechanisms disposed on the machine body, each of the wheel-leg mechanisms includes a first joint motor and a second joint motor for performing a jumping operation, and A is an integer greater than or equal to 2;
[0059] Each of the wheel-leg mechanisms also includes a first leg rod, a second leg rod, a third leg rod, a fourth leg rod, a fifth leg rod and a wheel body. One end of the first leg rod is rotatably connected to one end of the second leg rod via a first joint motor, the other end of the first leg rod is rotatably connected to one end of the third leg rod via the second joint motor, the other end of the second leg rod is rotatably connected to the wheel body via the fourth leg rod, the other end of the third leg rod is rotatably connected to the wheel body via the fifth leg rod, and the first leg rod is arranged on the machine body.
[0060] In combination with the second aspect, in some optional embodiments, the robot also includes a posture sensor for detecting the pitch angle of the machine body.
[0061] The invention adopting the above technical solution has the following advantages:
[0062] In the technical solution provided in the present application, during the robot jumping process, based on the output torque of the first joint motor and the second joint motor in the wheel-leg mechanism, the first joint motor and the second joint motor are controlled to operate, so that the wheel-leg mechanism performs squatting, leg extension and leg retraction movements to achieve jumping. During the falling state, the first joint motor and the second joint motor are controlled to operate by using the corresponding output torque during the falling state to achieve the landing buffer of the robot, which is conducive to the smooth take-off and landing of the robot, and can improve the poor stability of the robot in the jumping and landing stages, which easily leads to the problem of the robot losing control. BRIEF DESCRIPTION OF THE DRAWINGS
[0063] The present application may be further described by the non-limiting embodiments given in the accompanying drawings. It should be understood that the following drawings only illustrate certain embodiments of the present application and therefore should not be regarded as limiting the scope. For those of ordinary skill in the art, other relevant drawings may be obtained based on these drawings without creative effort.
[0064] Figure 1 A schematic diagram of the three-dimensional simulation structure of the robot provided in an embodiment of the present application.
[0065] Figure 2 A flow chart of a phased jumping control method for a legged robot based on a bounce-drop closed loop provided in an embodiment of the present application.
[0066] Figure 3 A control block diagram of the robot provided in an embodiment of the present application.
[0067] Figure 4 This is a block diagram of the overall design of the robot provided in the embodiment of the present application.
[0068] Figure 5 A simplified schematic diagram of the robot's jumping process provided in an embodiment of the present application.
[0069] Figure 6 A schematic diagram of a simplified dynamic model of a robot provided in an embodiment of the present application.
[0070] Figure 7 A schematic diagram of torque feedback of a joint motor provided in an embodiment of the present application.
[0071] Figure 8 A flow chart of the robot's take-off control strategy provided in an embodiment of the present application.
[0072] Fig. 9A flow chart of the fall control strategy of the robot provided in an embodiment of the present application.
[0073] Fig.10 A schematic diagram of a simulation of the state changes of a robot during jumping provided in an embodiment of the present application.
[0074] Fig.11 A schematic diagram of a simulation of the state changes of a robot during a fall provided in an embodiment of the present application.
[0075] Icon: 10-robot; 11-first leg rod; 12-second leg rod; 13-third leg rod; 14-fourth leg rod; 15-fifth leg rod; 16-first joint motor; 17-second joint motor; 18-wheel body. DETAILED DESCRIPTION
[0076] The present application will be described in detail below in conjunction with the accompanying drawings and specific embodiments. It should be noted that in the drawings or descriptions, similar or identical parts use the same figure numbers, and the implementation methods not shown or described in the drawings are forms known to ordinary technicians in the relevant technical field. In the description of this application, the terms "first", "second", etc. are only used to distinguish the description and cannot be understood as indicating or implying relative importance.
[0077] Please refer to Figure 1 An embodiment of the present application provides a robot 10, which includes a processor and a memory coupled to each other, wherein a computer program is stored in the memory. When the computer program is executed by the processor, the robot 10 executes each step of the following staged jump control method of the robot 10 based on a drop closed loop.
[0078] In this embodiment, the robot 10 may be a legged robot or a wheel-legged robot. The robot 10 may also include a machine body and A wheel-legged mechanisms disposed on the machine body, each wheel-legged mechanism including a first joint motor 16 and a second joint motor 17 for performing a jumping operation, where A is an integer greater than or equal to 2. Figure 1 The robot 10 shown has two wheel-leg mechanisms.
[0079] Each wheel-leg mechanism further comprises a first leg rod 11, a second leg rod 12, a third leg rod 13, a fourth leg rod 14, a fifth leg rod 15 and a wheel body 18. The first leg rod 11, the second leg rod 12, the third leg rod 13, the fourth leg rod 14, and the fifth leg rod 15 form a pentagonal structure, which can be seen in Figure 6. One end of the first leg rod 11 is rotationally connected to one end of the second leg rod 12 through the first joint motor 16, the other end of the first leg rod 11 is rotationally connected to one end of the third leg rod 13 through the second joint motor 17, the other end of the second leg rod 12 is rotationally connected to the wheel body 18 through the fourth leg rod 14, and the other end of the third leg rod 13 is rotationally connected to the wheel body 18 through the fifth leg rod 15. The first leg rod 11 is arranged on the machine body. The wheel body 18 is provided with a motor, so that the robot 10 can be driven to travel in the manner of a wheeled robot. The angle between the fourth leg rod 14 and the fifth leg rod 15 can be adaptively adjusted by another motor on the wheel body 18 to meet the movement requirements of the robot 10 such as jumping and landing buffering.
[0080] The robot 10 may further include other components, for example, the robot 10 may further include a posture sensor for detecting the pitch angle of the robot body. The posture sensor may be, but is not limited to, an IMU (Inertia Measurement Unit) sensor.
[0081] Please refer to Figure 2 The present application also provides a legged robot staged jumping control method based on a drop closed loop, referred to as a control method, which can be applied to the above-mentioned legged robot 10. The control method may include the following steps:
[0082] Step 110: creating a first control model for the legged robot to jump and a second control model for the legged robot to control falling based on the product parameters of the legged robot;
[0083] Step 120, upon receiving a jump instruction, determining a take-off control strategy of the legged robot based on the first control model, wherein the take-off control strategy includes jump control parameters corresponding to the legged robot performing a squatting action, a leg extension action, and a leg retraction action, and the jump control parameters include the output torque of the first joint motor and the second joint motor in the wheel-leg mechanism;
[0084] Step 130, based on the corresponding jumping control parameters in the take-off control strategy, controlling the first joint motor and the second joint motor to operate so that the wheel-leg mechanism performs a leg squatting action, a leg extension action, and a leg retraction action to achieve jumping;
[0085] Step 140, after the wheel-leg mechanism performs squatting, stretching and retracting leg movements for jumping, based on the highest jumping point of the legged robot, determine the falling control strategy of the legged robot through the second control model, wherein the falling control parameters include the output torque corresponding to the first joint motor and the second joint motor in the wheel-leg mechanism during the falling state;
[0086] Step 150: Based on the fall control parameters in the fall control strategy, control the operation of the first joint motor and the second joint motor to achieve landing cushioning of the legged robot.
[0087] The following will describe the various steps of the control method in detail, as follows:
[0088] In step 110, the product parameters of the legged robot may include, but are not limited to, data such as the mass (or weight) of the legged robot, the position of the center of mass, and the length of each leg rod in the wheel-leg mechanism.
[0089] In step 110, creating a first control model for the legged robot to jump may include:
[0090] Based on the kinetic energy and potential energy of the legged robot, the Lagrangian operator is obtained:
[0091]
[0092] Where B refers to the Lagrangian operator; E k refers to the kinetic energy of the legged robot during the leg extension operation phase; V refers to the potential energy of the legged robot; m refers to the mass of the legged robot; refers to the speed of change of the center of mass position of the legged robot; y refers to the height of the center of mass of the legged robot;
[0093]
[0094] V=mgy
[0095] The rotation angle α of the joint motor is taken as the generalized coordinate, the joint motor is the first joint motor or the second joint motor, and the generalized force of the legged robot is the torque τ of 2A joint motors, and the Lagrangian equation is obtained:
[0096]
[0097] represents the angular velocity of the joint motor;
[0098] represents the angular acceleration of the joint motor;
[0099] The Lagrange equation is expanded to obtain the torque expression of the joint motor output as the first control model:
[0100]
[0101] In the formula, y 1 is the first derivative of y with respect to α; y 2 Yes1 The first derivative with respect to α; l 1 Refers to the length of the first leg, l 1 refers to the length of the second leg rod, which is the same as the length of the third leg rod; l 3 Refers to the length of the fourth leg rod, and the length of the fourth leg rod is the same as the length of the fifth leg rod.
[0102] In step 110, creating a second control model for fall control of the legged robot may include:
[0103] The dynamic model of the legged robot is created as:
[0104]
[0105] F motor represents the force converted from the torque provided by the joint motor, wherein the joint motor is the first joint motor or the
[0106] Second joint motor;
[0107] m represents the mass of the legged robot;
[0108] x represents the height change of the center of mass of the legged robot during the jump;
[0109] represents the jumping speed of the legged robot;
[0110] represents the acceleration of the legged robot jumping;
[0111] c represents the damping coefficient of the wheel-leg mechanism, represents the damping force of the wheel-leg mechanism;
[0112] k represents the equivalent spring stiffness of the wheel-leg mechanism, and kx represents the equivalent elastic force of the wheel-leg mechanism;
[0113] represents the inertial force of the legged robot;
[0114] g represents the acceleration due to gravity;
[0115] The output torque τ of a single joint motor is expressed as:
[0116]
[0117] Wherein, L refers to the distance between the center of mass of the legged robot and the contact point in the vertical direction, and the contact point is the point where the wheel body of the wheel-leg mechanism contacts the bearing surface;
[0118]
[0119] Δt refers to the time step. Based on the output torque τ and acceleration, a second control model is created, which is expressed as:
[0120]
[0121] In the formula, Represents the calculation function of the output torque.
[0122] In step 120, the jump instruction may be an instruction sent by an operator to the legged robot through a remote control device; or it may be an instruction automatically generated by the legged robot when an obstacle is detected on the driving path.
[0123] Before controlling the first joint motor and the second joint motor to operate based on the corresponding jump control parameters in the take-off control strategy in step 130, the method may further include:
[0124] Detecting the pitch angle of the machine body by means of a posture sensor in the legged robot;
[0125] When the variation amplitude of the pitch angle within the specified time period is within the preset angle range, the legged robot is determined to be in a stable state, and the legged robot is allowed to execute steps to control the operation of the first joint motor and the second joint motor based on the corresponding jump control parameters in the take-off control strategy, wherein the specified time period can be flexibly determined according to actual conditions, such as 1 second.
[0126] Understandably, before the legged robot performs a jumping action, it is necessary to ensure that the posture of the legged robot is in a relatively stable state. When the pitch angle of the machine body is detected by the posture sensor, if the change amplitude within a specified period of time is within the preset angle range, it means that the posture of the legged robot is in a relatively stable state, which is conducive to making preliminary preparations for the stable jumping of the legged robot. Among them, the preset angle range can be flexibly determined according to the actual situation, for example, ±0.5°.
[0127] In step 130, the legged robot performs a jumping action, which can be divided into three stages, namely, a squatting action stage, a leg extension action stage, and a leg retraction action stage. Each stage corresponds to a corresponding jumping control parameter.
[0128] In step 140, the highest jumping point of the legged robot during the jumping process can be detected by using a gyroscope or other sensors in the legged robot. The detection method is conventional and will not be described in detail here.
[0129] In step 150, during the falling process of the legged robot, each wheel-leg mechanism can be equivalent to a spring, and the torque output by the joint motor can be converted into resistance to be equivalent to the elastic force of the spring. In this way, by using the falling control parameters, the movement process of the wheel-leg mechanism during the falling of the legged robot can be equivalent to the deformation process of the spring, thereby converting the landing buffer of the legged robot into an elastic buffer, which is conducive to the smooth landing of the legged robot.
[0130] In this embodiment, during the take-off and landing of the legged robot, the legged robot can automatically detect its own motion state, which may include, but is not limited to, a rising state and a falling state representing a jump. For example, the method may also include:
[0131] After the legged robot performs the leg-stretching action, the motion state of the legged robot is detected by the Z-axis acceleration sensed by the gyroscope in the legged robot, wherein when the Z-axis acceleration is equal to the gravitational acceleration and the polarity of the Z-axis acceleration is perpendicular to the horizontal plane, the legged robot is at the highest point of the jump;
[0132] When the legged robot has not passed the highest point of the jump, determining that the motion state of the legged robot is an ascending state representing the jump;
[0133] When the legged robot passes the highest point of the jump, it is determined that the motion state of the legged robot is a falling state.
[0134] In this embodiment, the method may further include:
[0135] Detecting the pitch angle of the machine body by means of a posture sensor in the legged robot;
[0136] When the leg-type robot is in the falling state and the pitch angle exceeds a preset angle, the wheel-leg mechanism is controlled by a balance controller in the leg-type robot to perform a leg extension action or a leg retraction action so that the pitch angle is less than or equal to the preset angle, wherein the preset angle can be flexibly determined according to actual conditions, such as ±3°, and no specific restrictions are made here.
[0137] In this embodiment, the method may further include:
[0138] When the falling height of the legged robot exceeds a preset height, the balance controller is controlled to fail, and after the legged robot lands, the balance controller is controlled to take effect.
[0139] In this embodiment, the preset height can be flexibly set according to actual conditions, for example, 1 meter. The drop height can be acquired by sensors on the legged robot. The drop height can be the jumping height of the legged robot, or the height of the legged robot jumping from the steps.
[0140] Please refer to Figures 3 to 11 In order to facilitate the understanding of the implementation process of the method, a two-wheeled robot is taken as an example to illustrate the method.
[0141] Please refer to Figure 3 The two-wheeled legged robot adopts the WBC (Whole Body Control) strategy, such as Figure 3 As shown in the figure, it consists of a series of quadratic programming problems with different priorities, and each iteration solves a task. The highest priority is to solve the dynamic model, so that the robot's movement conforms to the laws of physics; the second is the height of the robot's center of gravity. This task is mainly used to control the height of the robot's center of gravity relative to the ground, and control the robot to cross obstacles of different heights; then the control of the body's roll angle is to cope with the rough road surface. The robot can remain upright without tilting; then the balance control using cascade PID is mainly used to maintain the balance of the robot; then the control of the heading angle of the robot's steering; finally, the output torque is optimized so that the related tasks of jumping and landing can be achieved with the smallest torque output possible.
[0142] Please refer to Figure 4 In order to enhance the stability of the two-wheeled leg robot during the jumping process, this application has taken a series of meticulous technical measures. First, the jumping and rising phase of the two-wheeled leg robot was dynamically modeled, and the actual physical parameters of the robot were incorporated into the model to accurately calculate the maximum torque required by the four joint motors when taking off. Then, the acceleration information of the robot along the Z-axis direction was obtained by Kalman filtering using the data collected by the gyroscope. By analyzing the Z-axis acceleration data, the robot's motion state in the air can be accurately judged. For possible loss of control of the aerial controller, this application has designed a special response strategy to prevent the robot from losing balance at the moment of landing. In addition, this application also performs dynamic modeling on the jumping and falling phase of the two-wheeled leg robot, and determines the actual jumping height of the robot by solving the calculation. According to different jumping heights, a variety of landing buffering strategies have been formulated to minimize damage to the four joint motors and improve the stability of the robot when landing.
[0143] The implementation process of the method provided in this application is as follows:
[0144] The jumping process of the wheel-legged biped robot is as follows Figure 5 As shown, Figure 5The state ① shown in the figure represents the initial state, at which the joint motor angle is at the minimum angle position. After that, the joint motor rotates rapidly, the leg link extends, and the virtual force F y Provide an upward acceleration a to the body until the robot reaches state ②. State ② represents the take-off state, at which time the joint motor angle reaches the maximum angle position, and the body has a certain take-off speed V. Then the joint motor quickly rotates in the opposite direction, and the leg connecting rod contracts. State ③ represents the highest position state, at which time the joint motor angle returns to the minimum angle position, and the robot jumps to the highest position h max , the collective rising speed is 0, h max =h 1 +h 2 , where h 1 Determined by the deformation stroke on both sides of the leg, h 2 Determined by the time t of the polarity change of acceleration a,
[0145] Establishment of the dynamic modeling of the take-off state: The polarity change time t of the acceleration a determines the take-off speed ν, v = gt. Therefore, whether the robot can take off depends on whether the body speed ν is greater than gt when the joint motor angle reaches the maximum angle after the robot's leg extension phase. Therefore, only the leg extension phase needs to be analyzed. The dynamic model of this phase is as follows: Figure 6 shown.
[0146] For example, see Figure 6 , the product parameters of the robot are determined by measurement. As an example, in the wheel-leg mechanism of the robot, the length of the first leg rod l 1 = 0.1 m, the length of the second leg rod l 2 = 0.16 m, the length of the third leg is l 3 = 0.32 meters, the total mass of the robot m = 7kg. The polarity change time of acceleration a is t = 0.3s, and the joint motor torque τ = 10N.m. Matlab tools can be used to write code to solve the differential equation of the output torque τ of the joint motor, that is:
[0147]
[0148] Please refer to Figure 7 The robot takes off at sampling time T = 4.7S, and the first joint motor torque feedback is as follows: Figure 7 As shown in the figure, the rising speed of the robot (or machine body) during the leg extension phase changes with the torque of the joint motor. When the torque is greater than the highest torque of the take-off curve, the take-off action can be completed. Therefore, the four joint motors with a maximum torque of 40N.M can be selected to meet the jumping requirements.
[0149] The take-off of the two-wheeled leg robot is divided into three actions: squatting, extending, and retracting. The process of the take-off control strategy is as follows: Figure 8 As shown:
[0150] The squatting phase is a preparatory action before taking off. The robot lowers its center of gravity by squatting, increasing the stroke of the joint motor, so that the motor can exert force over a longer distance. This allows the joint motor to provide torque over a larger range, thereby generating greater thrust when taking off, providing the robot with greater upward gravitational potential energy and increasing the robot's jumping height.
[0151] The leg extension action continuously outputs torque through the joint motor, giving the robot upward kinetic energy. The accumulation of kinetic energy is achieved through the rapid extension of the legs, similar to the release of a spring, but the robot's energy source is the electrical energy of the motor. The robot converts the torque output by the motor into an upward thrust by rapidly extending the leg joints.
[0152] The leg retraction action can further increase the height of the robot's jump when it jumps into the air. In addition, this action also helps to adjust the robot's posture in the air, adjusting the body tilt caused by the robot's take-off through the four joint motors to ensure the stability of the robot's body when it lands.
[0153] The specific take-off control strategy is as follows:
[0154] Take-off preparation stage: The take-off preparation stage requires that the robot can ensure that the fuselage is relatively perpendicular to the ground and has high stability before taking off. The robot can know the current balance state of the fuselage through the data fed back by the IMU. When the pitch angle change amplitude fed back by the IMU is stable within the range of ±0.5°, it can be regarded as that the robot has good balance performance and can complete the squatting action. After the center of gravity of the fuselage is lowered, the controller can adapt to the fuselage with a lower center of gravity, so as to complete the subsequent leg extension and retraction actions.
[0155] Completing the take-off action: The robot can complete the take-off action when it receives the take-off signal and can maintain good balance performance under the low center of gravity. The take-off action is divided into two actions: leg extension and leg retraction. The take-off process requires the continuity of the action and can ensure the smooth communication between the robot controller and the four joint motors. According to the dynamic modeling of the robot's take-off process, the maximum torque calculated is 10N.m to complete the leg extension action. The robot can reach the maximum take-off height h max .
[0156] Robot take-off state determination: Determine the robot's take-off state so that the robot can distinguish its different states during the jump process. The determination method is the Z-axis gravity acceleration of the gyroscope. The robot controller performs Kalman filtering on the acceleration information fed back by the gyroscope, and then determines the current state of the fuselage by the polarity of the Z-axis acceleration. When the robot completes the process of extending and retracting its legs, the polarity of the Z-axis acceleration should be vertically upward. When the robot rises to the highest point of the jump, the Z-axis acceleration is equal to the gravity acceleration, and the polarity is vertically downward. This can determine whether the robot is in the take-off state during the jump.
[0157] The falling strategy process of the two-wheeled leg robot is as follows Fig. 9 After the two-wheeled legged robot completes the take-off action, the controller determines that the robot enters the falling state based on the change in the polarity of the longitudinal acceleration received by the gyroscope. The control strategy for the falling state is mainly divided into two steps:
[0158] 1) Set the height threshold according to the actual jumping height h of the robot 1 The discriminator determines whether the robot's jumping height reaches the threshold. When the robot's jumping height reaches the threshold, the balance controller is disabled to prevent the robot from shaking in the air and causing the balance control algorithm to output excessive current to drive the wheel hub motor, causing the robot to lose control at the moment of landing.
[0159] 2) The actual jumping height h of the robot 1 Calculate the gravitational potential energy of the robot before landing, adjust the position and output torque of the joint motor before landing according to the size of the robot's gravitational potential energy, output different torques for different jumping heights, and achieve the effect of cushioning the robot's landing.
[0160] The establishment of the falling state dynamic modeling and the design of the landing cushioning strategy are as follows:
[0161] The dynamic model of the two-wheeled legged robot falling state is simplified to a single-degree-of-freedom spring damping model, and the modeling assumptions are:
[0162] 1) Robot simplification: Each leg is simplified to a single-degree-of-freedom mass-spring-damper system.
[0163] 2) Ground assumption: The ground is considered flat and rigid.
[0164] 3) Motor control: The motor can output variable torque to adjust the spring stiffness and damping coefficient of the leg.
[0165] 1. Establishment of the kinetic model
[0166] When the robot jumps from a height h max When it starts to fall, the potential energy gradually transforms into kinetic energy. At the moment of landing, the kinetic energy of the body E k Can
[0167] It can be expressed as:
[0168]
[0169] According to the principle of conservation of energy, potential energy is completely converted into kinetic energy:
[0170]
[0171] Solving the equation gives the landing speed v:
[0172]
[0173] Selection of spring stiffness k and damping coefficient c: gradually adjust the k value through experiments, observe the landing effect, and ensure that the spring is compressed and absorbs energy within a controllable range.
[0174] Determine the damping coefficient c by the critical damping method critical :
[0175]
[0176] To ensure that the robot lands smoothly without excessive vibration, the damping coefficient c can be set to a value slightly smaller than the critical damping:
[0177] c=α·c critical
[0178] Here, α is a coefficient less than 1 (such as 0.8 to 1.0), and the specific value can be fine-tuned through experiments.
[0179] Output force F of a single joint motor motor for:
[0180]
[0181] Output torque τ, output force F motor The correlation with leg length L is:
[0182]
[0183] Therefore, the output torque τ of a single joint motor can be expressed as:
[0184]
[0185] The robot can obtain real-time displacement x and speed through sensors Therefore, the acceleration can be approximated numerically by Using Euler's method, we can express the approximate acceleration as:
[0186]
[0187] Therefore, the final motor torque calculation function f is obtained:
[0188]
[0189] The robot's landing buffering strategy includes adjusting its posture in the air to optimize the landing angle, absorbing the impact force through the rapid flexion of the leg joints, and using simulated elastic elements (such as joint motors outputting variable torque) to further mitigate the impact. At the same time, the intelligent control algorithm adjusts the landing action in real time according to sensor data to ensure that the two-wheeled leg robot can smoothly and safely touch the ground when landing. The specific fall control strategy can be as follows:
[0190] Determination of the falling stage: Kalman filter the acceleration information fed back by the IMU, and determine whether the robot is in the falling stage after completing the take-off stage based on the robot's Z-axis gravity acceleration. According to the robot's Z-axis acceleration information, the robot's Z-axis acceleration after completing the take-off action is the gravity acceleration, and the Z-axis acceleration of the robot is less than the gravity acceleration at the moment the robot lands. The process of the robot's Z-axis acceleration change after the take-off stage is the falling stage.
[0191] Balance controller failure: When the robot is in the falling stage, the robot balance controller is temporarily out of control. To prevent the robot balance controller from outputting a large wheel motor control current due to the body tilting during the jump, causing the robot to land uncontrollably, the robot should be dropped from the falling height h max Determine whether it is necessary to suspend the balance controller and restore the control effect after landing.
[0192] Robot landing buffer strategy: After the robot completes the take-off action, the flag position determines that the robot has entered the falling state. The robot calculates the maximum take-off height h max The gravitational potential energy during the fall is calculated, and according to the dynamic model of the robot's fall stage, the gravitational potential energy of the fall state is converted into the robot's kinetic energy. The output torque of the four joint motors of the robot at the moment of landing is calculated to achieve the landing cushioning effect for different jumping heights.
[0193] In order to verify the actual control effect of the above-mentioned jumping control algorithm, a mechanical model assembly diagram of a two-wheeled legged robot is constructed in SolidWorks, as shown in Figure 1 As shown in the figure, a two-wheeled leg robot real machine platform is built based on the mechanical model. To ensure the basic algorithm strategy development space, the two-wheeled leg robot is equipped with a development board with a high-performance STM32F407 main control chip. To ensure fast and stable communication of the joint actuators, the four joint motors use high-torque motors and use the CAN bus communication protocol to ensure real-time communication.
[0194] A Simulink model of a two-wheeled legged robot was established in Matlab, and the real physical parameters and physical constraints of the two-wheeled legged robot were introduced. Specifically, it includes: 1) the properties of the two-wheeled legged robot's leg links, such as the five-link structure of the leg; 2) joint properties, such as the link connection method, degree of freedom, and joint limit; 3) kinematic physical properties, such as mass, inertia, friction coefficient, etc.; 5) dynamic characteristics, such as the dynamic model of the two-wheeled legged robot, etc., and a jumping scene of the two-wheeled legged robot was constructed to verify the reliability of the jumping control algorithm.
[0195] The experiment was conducted on the take-off and falling stages of the two-wheeled leg robot. During the falling stage, the spring stiffness k and the damping coefficient c in the two-wheeled leg landing buffer control strategy were continuously adjusted according to the experimental results to find the optimal parameters that can ensure the system lands smoothly without excessive vibration.
[0196] Take-off phase:
[0197] Smooth jump: From the video, the robot can jump smoothly from the ground without obvious shaking or tilting. Fig.10 As shown;
[0198] Height and distance: The expected height and distance were achieved, which was basically consistent with the model prediction results;
[0199] Joint angles and velocities: Sensor data show that the changing trends of joint angles and velocities are consistent with the predictions of the dynamics model.
[0200] In the take-off phase of the experiment, the two-wheeled leg robot accumulates energy by squatting, then quickly stretches its legs to generate upward thrust, and adjusts its posture in the air by retracting its legs, and finally successfully achieves efficient and stable jumping. The experimental results show that the designed action sequence and control strategy significantly improve the performance of the robot in the take-off phase, and the effectiveness and reliability of the proposed method are verified by real machines.
[0201] Falling stage:
[0202] 1) Record the robot's posture changes in the air;
[0203] 2) Record the impact force during landing and the output torque of the joint motor;
[0204] 3) Pay attention to the effectiveness of the buffering strategy during landing.
[0205] like Fig.11 As shown in the figure, in the experiment of the falling stage, the two-wheeled leg robot successfully achieved a smooth landing by adjusting its posture in real time in the air and utilizing the rapid flexion of the leg joints and the buffering effect of the elastic elements. This effectively reduced the impact force during landing and effectively alleviated the vibration of the robot's body when it landed, verifying the effectiveness and reliability of the falling control strategy.
[0206] This experiment conducted detailed tests on the take-off and fall phases of the two-wheeled legged robot to verify the effectiveness and reliability of the control strategy. The experimental results show that the robot can take off smoothly and reach the expected height and distance during the take-off phase, and the changes in joint angles and speeds are consistent with the model predictions. During the fall phase, the landing cushioning effect was optimized by continuously adjusting the spring stiffness and damping coefficient, effectively reducing the impact force and body vibration, and ensuring a smooth landing. The overall experiment verified the stability and efficiency of the designed jump control method in practical applications.
[0207] In summary, the solution provided by the present application first establishes a dynamic model of the take-off phase of the two-wheeled leg robot, and designs a corresponding control strategy based on this model to ensure that the robot can stably complete the take-off action. The robot's take-off process is divided into three actions: leg retraction, leg extension, and leg extension. The joint motor outputs different control torques to cooperate with the robot's take-off phase dynamics to complete different actions of the robot's legs in the take-off phase, thereby improving the stability of the robot's fuselage in the take-off phase. In addition, during the take-off process, the robot can determine the current state and tilt angle of the fuselage according to the Kalman filter value of the Z-axis feedback data of the IMU, and according to the current state and tilt angle of the fuselage, the robot can adaptively adjust the fuselage tilt angle through the leg retraction action to avoid the robot from losing control in the air due to excessive body tilt angle.
[0208] Secondly, in response to the problem of balance control loss when the robot falls (landed) in the air and transitions to the ground, this application designs a fall control strategy to maintain the stability of the robot in the air and close to the ground. The robot determines the current stage of the robot by the Kalman filter value of the Z-axis feedback data of the IMU. The robot's balance controller is temporarily disabled during the robot's fall, and continues to be effective when it lands. According to the dynamic model of the robot's fall phase, the robot's landing buffer strategy is designed. The robot's four joint motors output variable torque to reduce the robot's landing impact and improve the robot's durability and safety.
[0209] In order to reduce the impact of gravity potential energy on the joint motors when the robot lands, this application also proposes an effective landing buffering strategy. These measures together constitute a comprehensive control framework that aims to improve the jumping performance of the two-wheeled leg robot while protecting its mechanical structure from damage.
[0210] In this embodiment, the processor may be an integrated circuit chip having the ability to process signals. For example, the processor may be a central processing unit (CPU), a digital signal processor (DSP), an application specific integrated circuit (ASIC), a field programmable gate array (FPGA) or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, and may implement or execute the methods, steps and logic block diagrams disclosed in the embodiments of the present application.
[0211] The memory may be, but is not limited to, a random access memory, a read-only memory, a programmable read-only memory, an erasable programmable read-only memory, an electrically erasable programmable read-only memory, etc. In this embodiment, the memory may be used to store the first control model, the second control model, etc. Of course, the memory may also be used to store a program, and the processing module executes the program after receiving the execution instruction.
[0212] Understandably, Figure 1 The robot structure shown in the figure is only a schematic diagram of the structure. The robot can also include Figure 1 More or fewer components as shown.
[0213] In the embodiments provided in the present application, it should be understood that the disclosed robot and method can also be implemented in other ways. The robot and method embodiments described above are merely schematic, for example, the flowcharts and block diagrams in the accompanying drawings show the possible architecture, functions and operations of the robot, method and computer program product according to multiple embodiments of the present application. In this regard, each box in the flowchart or block diagram can represent a part of a module, a program segment or a code, and a part of the module, program segment or code contains one or more executable instructions for implementing a specified logical function. It should also be noted that each box in the block diagram and / or flowchart, and the combination of the boxes in the block diagram and / or flowchart can be implemented by a dedicated hardware-based system that performs a specified function or action, or can be implemented by a combination of dedicated hardware and computer instructions. In addition, each functional module in each embodiment of the present application can be integrated together to form an independent part, or each module can exist separately, or two or more modules can be integrated to form an independent part.
[0214] The above description is only an embodiment of the present application and is not intended to limit the protection scope of the present application. For those skilled in the art, the present application may have various modifications and variations. Any modification, equivalent replacement, improvement, etc. made within the spirit and principle of the present application shall be included in the protection scope of the present application.
Claims
1. A legged robot staged jumping control method based on a bounce closed loop, characterized in that: Applied to a legged robot, the legged robot comprises a machine body and A wheel-leg mechanisms arranged on the machine body, each of the wheel-leg mechanisms comprises a first joint motor and a second joint motor for performing a jumping operation, and A is an integer greater than or equal to 2; the method comprises: Based on the product parameters of the legged robot, a first control model for the legged robot to jump is created, and a second control model for the legged robot to control falling is created; Upon receiving a jump instruction, determining a take-off control strategy of the legged robot based on the first control model, wherein the take-off control strategy includes jump control parameters corresponding to the legged robot performing a squatting action, a leg extension action, and a leg retraction action, and the jump control parameters include the output torque of the first joint motor and the second joint motor in the wheel-leg mechanism; Based on the corresponding jumping control parameters in the take-off control strategy, the first joint motor and the second joint motor are controlled to operate so that the wheel-leg mechanism performs a leg squatting action, a leg extension action, and a leg retraction action to achieve jumping; After the wheel-leg mechanism performs squatting, stretching and retracting leg movements for jumping, based on the highest jumping point of the legged robot, the falling control strategy of the legged robot is determined by the second control model, wherein the falling control parameters include the output torques corresponding to the first joint motor and the second joint motor in the wheel-leg mechanism during the falling state; Based on the fall control parameters in the fall control strategy, the first joint motor and the second joint motor are controlled to operate so as to achieve landing cushioning of the legged robot.
2. The method according to claim 1, characterized in that Each of the wheel-leg mechanisms further comprises a first leg rod, a second leg rod, a third leg rod, a fourth leg rod, a fifth leg rod and a wheel body, one end of the first leg rod is rotatably connected to one end of the second leg rod via a first joint motor, the other end of the first leg rod is rotatably connected to one end of the third leg rod via the second joint motor, the other end of the second leg rod is rotatably connected to the wheel body via the fourth leg rod, the other end of the third leg rod is rotatably connected to the wheel body via the fifth leg rod, and the first leg rod is arranged on the machine body; Creating a first control model for the legged robot to jump, including: Based on the kinetic energy and potential energy of the legged robot, the Lagrangian operator is obtained: Where B refers to the Lagrangian operator; E k refers to the kinetic energy of the legged robot during the leg extension operation phase; V refers to the potential energy of the legged robot; m refers to the mass of the legged robot; refers to the speed of change of the center of mass position of the legged robot; y refers to the height of the center of mass of the legged robot; V=mgy The rotation angle α of the joint motor is taken as the generalized coordinate, the joint motor is the first joint motor or the second joint motor, and the generalized force of the legged robot is the torque τ of 2A joint motors, and the Lagrangian equation is obtained: represents the angular velocity of the joint motor; represents the angular acceleration of the joint motor; The Lagrange equation is expanded to obtain the torque expression of the joint motor output as the first control model: In the formula, y1 is the first-order derivative of y with respect to α; y2 is the first-order derivative of y1 with respect to α; l1 refers to the length of the first leg rod, l1 refers to the length of the second leg rod, and the second leg rod is the same as the length of the third leg rod; l3 refers to the length of the fourth leg rod, and the length of the fourth leg rod is the same as the length of the fifth leg rod.
3. The method according to claim 1, characterized in that Before controlling the first joint motor and the second joint motor to operate based on the corresponding jump control parameters in the take-off control strategy, the method further includes: Detecting the pitch angle of the machine body by means of a posture sensor in the legged robot; When the variation amplitude of the pitch angle within a specified time period is within a preset angle range, it is determined that the legged robot is in a stable state, and the legged robot is allowed to execute steps to control the operation of the first joint motor and the second joint motor based on the corresponding jump control parameters in the take-off control strategy.
4. The method according to claim 1, characterized in that: The method further comprises: After the legged robot performs the leg-stretching action, the motion state of the legged robot is detected by the Z-axis acceleration sensed by the gyroscope in the legged robot, wherein when the Z-axis acceleration is equal to the gravitational acceleration and the polarity of the Z-axis acceleration is perpendicular to the horizontal plane, the legged robot is at the highest point of the jump; When the legged robot has not passed the highest point of the jump, determining that the motion state of the legged robot is an ascending state representing the jump; When the legged robot passes the highest point of the jump, it is determined that the motion state of the legged robot is a falling state.
5. The method according to claim 4, characterized in that A second control model for fall control of the legged robot is created, comprising: The dynamic model of the legged robot is created as: F motor represents the force converted from the torque provided by the joint motor, and the joint motor is the first joint motor or the second joint motor; m represents the mass of the legged robot; x represents the height change of the center of mass of the legged robot during the jump; represents the jumping speed of the legged robot; represents the acceleration of the legged robot jumping; c represents the damping coefficient of the wheel-leg mechanism, represents the damping force of the wheel-leg mechanism; k represents the equivalent spring stiffness of the wheel-leg mechanism, and kx represents the equivalent elastic force of the wheel-leg mechanism; represents the inertia force of the legged robot; g represents the acceleration due to gravity; The output torque τ of a single joint motor is expressed as: Wherein, L refers to the distance between the center of mass of the legged robot and the contact point in the vertical direction, and the contact point is the point where the wheel body of the wheel-leg mechanism contacts the bearing surface; Δt refers to the time step. Based on the output torque τ and acceleration, a second control model is created, which is expressed as: In the formula, Represents the calculation function of the output torque.
6. The method according to claim 5, characterized in that The method further comprises: Detecting the pitch angle of the machine body by means of a posture sensor in the legged robot; When the legged robot is in the falling state and the pitch angle exceeds a preset angle, the wheel-leg mechanism is controlled by a balance controller in the legged robot to perform a leg extension action or a leg retraction action so that the pitch angle is less than or equal to the preset angle.
7. The method according to claim 6, characterized in that The method further comprises: When the falling height of the legged robot exceeds a preset height, the balance controller is controlled to fail, and after the legged robot lands, the balance controller is controlled to take effect.
8. A robot, characterized in that: The robot comprises a processor and a memory coupled to each other, wherein a computer program is stored in the memory. When the computer program is executed by the processor, the robot executes the method according to any one of claims 1 to 7.
9. The robot according to claim 8, characterized in that: The robot also includes a machine body and A wheel-leg mechanisms arranged on the machine body, each of the wheel-leg mechanisms includes a first joint motor and a second joint motor for performing a jumping operation, and A is an integer greater than or equal to 2; Each of the wheel-leg mechanisms also includes a first leg rod, a second leg rod, a third leg rod, a fourth leg rod, a fifth leg rod and a wheel body. One end of the first leg rod is rotatably connected to one end of the second leg rod via a first joint motor, the other end of the first leg rod is rotatably connected to one end of the third leg rod via the second joint motor, the other end of the second leg rod is rotatably connected to the wheel body via the fourth leg rod, the other end of the third leg rod is rotatably connected to the wheel body via the fifth leg rod, and the first leg rod is arranged on the machine body.
10. The robot according to claim 8, characterized in that: The robot also includes a posture sensor for detecting the pitch angle of the machine body.