Multi-legged robot leg position planning method, device and equipment and storage medium

By obtaining the gait sequence and current position of the multi-foot robot, determining the phase and planning the lifting point and foot-falling point, the problem of difficulty in planning the leg position of the foot-type robot in the prior art is solved, and the movement efficiency of the robot is improved and Terrain adaptability.

CN119292319AActive Publication Date: 2025-01-10GUANGZHOU SHIYUAN ELECTRONICS CO LTD +1
View PDF 5 Cites 0 Cited by

Patent Information

Application Number
CN202310782157.3
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2023-06-28
Publication Date
2025-01-10
Estimated Expiration
2043-06-28

AI Technical Summary

Technical Problem

It is difficult to effectively plan the leg lifting points and foot-drop points of foot-type robots in the prior art, which affects their movement efficiency and terrain adaptability.

Method used

By obtaining the target leg gait sequence and current position of the multifoot robot, determine the phase of each time segment, and plan the lifting point and foot drop position according to the phase, the accuracy of the legs of the multifoot robot over a period of time Location planning.

Benefits of technology

The reasonable planning of the legs of the multi-foot robot is achieved for a period of time, and the movement efficiency and terrain adaptability of the robot are improved.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119292319A_ABST
    Figure CN119292319A_ABST
Patent Text Reader

Abstract

The invention provides a multi-legged robot leg position planning method, device and equipment and a storage medium, and the method comprises the steps that a gait sequence of a target leg of a multi-legged robot and a current pose of the multi-legged robot are acquired, and the target leg is any leg of the multi-legged robot; according to the gait sequence, determining the phase of the target leg in each time slice corresponding to the gait sequence; and according to the current pose and the phase, planning a leg lifting point position and a foot falling point position of the target leg in each time slice. According to the technical scheme, the positions of the leg lifting point and the landing point of the legs of the multi-legged robot within a period of time can be planned.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the field of robotics technology, and in particular to a method, device, equipment and storage medium for leg position planning of a multi-legged robot. Background Art

[0002] Ground mobile robots can be divided into tracked, wheeled, legged and composite types according to their structure and movement. Compared with wheeled robots, legged robots have the advantages of strong terrain adaptability and high flexibility, and are widely used in many fields to replace humans to complete various complex tasks.

[0003] When the legged robot is standing or walking, the legged robot obtains joint instructions through motion control algorithms according to user needs, and sends the joint instructions to the joint motors, so that the joint motors rotate or apply a certain torque according to the joint instructions, thereby completing forward, backward, sideways and other operations according to user needs. In some motion algorithms, the joint instructions are calculated based on the end position of the leg of the legged robot in the support section and the leg lifting point and foot landing point in the swing section within a period of time. Therefore, it is necessary to plan the leg lifting point and foot landing point of the leg of the legged robot within a period of time. Summary of the invention

[0004] The present application provides a method, device, equipment and storage medium for planning the leg positions of a multi-legged robot, so as to plan the leg lifting points and foot landing points of the legs of the legged robot within a period of time.

[0005] In a first aspect, a method for planning the position of legs of a multi-legged robot is provided, comprising:

[0006] Acquire a gait sequence of a target leg of a multi-legged robot and a current posture of the multi-legged robot, wherein the target leg is any leg of the multi-legged robot;

[0007] According to the gait sequence, determining the phase of the target leg in each time segment corresponding to the gait sequence;

[0008] According to the current posture and the phase, the leg lifting point position and the foot landing point position of the target leg in each time segment are planned.

[0009] In this technical scheme, the gait sequence of the target legs of the multi-legged robot and the current position of the multi-legged robot are first obtained, and then the phases of the target legs in each time segment corresponding to the gait sequence are determined according to the gait sequence of the target legs. Finally, according to the current posture of the multi-legged robot and the phases of the target legs in each time segment corresponding to the gait sequence, the leg lifting point positions and foot landing point positions of the target legs in each time segment are planned, thereby realizing the planning of the leg lifting point and foot landing point positions of the legs of the multi-legged robot within a period of time.

[0010] In combination with the first aspect, in a possible implementation, planning the leg-lifting point position and the foot-landing point position of the target leg in each time segment according to the current posture and the phase includes: planning the leg-lifting point position of the target leg in each time segment according to the current posture and the phase; planning the foot-landing point position of the target leg in each time segment according to the phase and the leg-lifting point position of the target leg in each time segment. First, the leg-lifting point position of the target leg is planned according to the posture of the multi-legged robot and the phase of each time segment corresponding to the gait sequence of the target leg of the multi-legged robot, and then the foot-landing point position of the target leg is planned according to the phase and the leg-lifting point position of the target leg of the multi-legged robot in each time segment corresponding to the gait sequence, so as to achieve reasonable planning of the leg-lifting point and the foot-landing point.

[0011] In combination with the first aspect, in a possible implementation method, the planning of the leg lifting point position of the target leg in each time segment based on the current posture and the phase includes: if the phase of the target leg in the current time segment in the gait sequence is the support phase, determining the current foot end position of the target leg according to the current posture, and determining the current foot end position of the target leg as the leg lifting point position of the target leg in the current time segment; if the phase of the target leg in the current time segment is the swing phase, determining the foot end position of the target leg at the last moment in the first time segment as the leg lifting point position of the target leg in the current time segment, the first time segment being the previous time segment of the current time segment.

[0012] In combination with the first aspect, in a possible implementation, the determining the foot end position of the target leg at the intermediate moment in the future time segment according to the current posture includes: determining the future posture of the multi-legged robot at the intermediate moment according to the current posture and the movement speed of the multi-legged robot; and determining the foot end position of the target leg at the intermediate moment according to the future posture of the multi-legged robot. The future posture of the multi-legged robot is first determined according to the current posture of the multi-legged robot, and then the foot end position of the leg of the multi-legged robot is determined according to the future posture, so that the foot end position of the leg of the multi-legged robot at the future time can be accurately determined.

[0013] In combination with the first aspect, in a possible implementation method, determining the foot end position of the target leg at the intermediate moment based on the future posture of the multi-legged robot at the intermediate moment includes: performing coordinate transformation on the future posture of the multi-legged robot at the intermediate moment to obtain the foot end position of the target leg at the intermediate moment.

[0014] In combination with the first aspect, in a possible implementation method, the landing point position of the target leg in each time segment is planned based on the phase and the leg lifting point position of the target leg in each time segment, including: if the phase of the target leg in the target time segment is the support phase, the leg lifting point position of the target time segment is determined as the landing point position of the target leg in the target time segment, and the target time segment is any time segment in the gait sequence; if the phase of the target leg in the target time segment is the swing phase, the leg lifting point position of the target leg in the third time segment is determined as the landing point position of the target leg in the target time segment, and the third time segment is the next time segment of the target time segment.

[0015] In combination with the first aspect, in a possible implementation method, the landing point position of the target leg in each time segment is planned based on the phase and the leg lifting point position of the target leg in the each time segment, including: if the phase of the target leg in the target time segment is the support phase, the landing point position of the target leg in the third time segment is determined as the landing point position of the target leg in the target time segment, the target time segment is any time segment in the gait sequence, and the third time segment is the next time segment of the target time segment; if the phase of the target leg in the target time segment is the swing phase, the leg lifting point position of the target leg in the third time segment is determined as the landing point position of the target leg in the target time segment.

[0016] In a second aspect, a multi-legged robot leg position planning device is provided, comprising:

[0017] An acquisition module, used for acquiring a gait sequence of a target leg of a multi-legged robot and a current posture of the multi-legged robot, wherein the target leg is any leg of the multi-legged robot;

[0018] A phase determination module, used to determine the phase of the target leg in each time segment corresponding to the gait sequence according to the gait sequence;

[0019] A planning module is used to plan the leg lifting point position and the foot landing point position of the target leg in each time segment according to the current posture and the phase.

[0020] According to a third aspect, a computer device is provided, comprising a memory and one or more processors, wherein the memory is connected to the one or more processors, and the one or more processors are used to execute one or more computer programs stored in the memory, and when the one or more processors execute the one or more computer programs, the computer device implements the multi-legged robot leg position planning method according to the first aspect.

[0021] In a fourth aspect, a computer-readable storage medium is provided, wherein the computer-readable storage medium stores a computer program, wherein the computer program includes program instructions, and when the program instructions are executed by a processor, the processor executes the multi-legged robot leg position planning method of the first aspect.

[0022] The present application can achieve the following technical effects: realizing the planning of the leg lifting point and foot landing point positions of the legs of a multi-legged robot within a period of time. BRIEF DESCRIPTION OF THE DRAWINGS

[0023] Figure 1 A schematic diagram of a flow chart of a method for planning leg positions of a multi-legged robot provided in an embodiment of the present application;

[0024] Figure 2 The gait sequence of the quadruped robot in gallop gait provided in the embodiment of the present application;

[0025] Figure 3 A schematic diagram of the foot end position provided in an embodiment of the present application;

[0026] Figure 4 It is a structural schematic diagram of a multi-legged robot leg position planning device provided in an embodiment of the present application;

[0027] Figure 5 It is a structural diagram of a computer device provided in an embodiment of the present application. DETAILED DESCRIPTION

[0028] The technical solutions in the embodiments of the present application will be described below in conjunction with the drawings in the embodiments of the present application.

[0029] The technical solution of the present application is applicable to the motion planning scenario of the robot, wherein the technical solution of the present application is used to plan the leg lifting point position and the foot landing point position for each leg of the multi-legged robot within a period of time, so that the multi-legged robot can perform motion planning for a period of time. In the present application, a multi-legged robot refers to a robot with multiple legs, and the multi-legged robot can specifically be a bipedal robot, a quadrupedal robot, a hexapod robot, etc. The leg lifting point position refers to the position where the legs of the multi-legged robot leave the ground, and the foot landing point position refers to the position where the legs of the multi-legged robot touch the ground.

[0030] The technical solution of the present application can be applied to computer equipment. The computer equipment can be a multi-legged robot or a device connected to a multi-legged robot. The device connected to the multi-legged robot can be a background system supporting the multi-legged robot, a cloud server in a cloud platform corresponding to the multi-legged robot, and so on, not limited to the examples given here.

[0031] The technical solution of this application is described in detail below.

[0032] See also Figure 1 , Figure 1 A schematic diagram of a flow chart of a multi-legged robot leg position planning method provided in an embodiment of the present application, such as Figure 1 As shown, the method comprises the following steps:

[0033] S101, obtaining a gait sequence of a target leg of a multi-legged robot and a current posture of the multi-legged robot.

[0034] Here, the target leg can be any leg of the multi-legged robot. For example, if the multi-legged robot is a quadruped robot, the quadruped robot has four legs, namely, a left front leg, a right front leg, a left hind leg, and a right hind leg. Then the target leg can be the left front leg, the right front leg, the left hind leg, or the right hind leg of the quadruped robot.

[0035] The gait sequence of the target leg is used to reflect the leg phase posture of the target leg in the planning time period including the current moment. The gait sequence of the target leg includes a time series and a phase series. The time series includes multiple ordered time points in the planning time period. The time series can be expressed as {t 0 , t 1 , t 2 , t 3 …t n}, the phase sequence includes the gait phase of the target leg in the planning time period. For example, reference may be made to Figure 2 , Figure 2 shows the gait sequence of a quadruped robot in gallop gait, Figure 2 The black area in the figure indicates that the legs are in the support phase during the time segment. The support phase is also called the stance phase, which means that the legs are in contact with the ground. Figure 2 The white area in the figure indicates that the leg is in the swing phase during the time segment. The swing phase can also be called the flying phase, which means that the leg is off the ground and not in contact with the ground. Assuming that the target leg is the right front leg of the quadruped robot, the gait sequence of the quadruped robot is as follows: Figure 2 As shown in , the gait sequence of the target leg is as follows Figure 2 As shown in Q1.

[0036] Specifically, the gait sequence of the multi-legged robot can be obtained according to user input or an upper-level application (here, an application running in the multi-legged robot to achieve a certain function), and then the gait sequence of the target leg of the multi-legged robot can be obtained from the gait sequence of the multi-legged robot.

[0037] Here, the current position and posture of the multi-legged robot is used to represent the position and posture of the multi-legged robot at the current moment, which can be expressed as t c, the current position of the multi-legged robot can be expressed as p c .

[0038] Specifically, the current position and posture of the multi-legged robot can be obtained through various sensors on the multi-legged robot, such as displacement sensors, posture sensors, etc.

[0039] S102, determining the phase of the target leg in each time segment corresponding to the gait sequence of the target leg according to the gait sequence of the target leg.

[0040] Here, the time segment corresponding to the gait sequence of the target leg is divided based on the phase change of the target leg in the planning time period. The two adjacent times when the phase of the target leg changes are the starting point and the end point of the time segment, and the phases of the two adjacent time segments of the target leg in the planning time period are different. In each time segment, the phase of the target leg remains unchanged. Take the gait sequence of the target leg as Figure 2 Take Q1 in the figure as an example, the time point when the phase of Q1 changes is t 2 ,t 7 ,t 10 , then the time segments corresponding to the gait sequence of the target leg are the time segments d11 corresponding to the 0th to 2nd segments, the time segments d12 corresponding to the 3rd to 7th segments, the time segments d13 corresponding to the 8th to 10th segments, and the time segments d14 corresponding to the 11th to 12th segments. It should be understood that the time segments corresponding to the gait sequence of the target leg vary with the gait sequence of the target leg. For example, when the gait sequence of the target leg is Figure 2 When the left front leg is in the gait sequence Q2, the time point when the phase changes in Q2 is t 1 ,t 3 ,t 9 ,t 11 , the time segments corresponding to the gait sequence of the target leg are the time segment d21 corresponding to the 0th to 1st segments, the time segment d22 corresponding to the 2nd to 3rd segments, the time segment d23 corresponding to the 4th to 9th segments, the time segment d24 corresponding to the 10th to 11th segments, and the time segment d25 corresponding to the 12th segment.

[0041] Specifically, two adjacent times at which the phase of the target leg changes can be determined in the gait sequence of the target leg, the time period between the two adjacent times can be determined as each time segment corresponding to the target leg in the gait sequence of the target leg, and then the phase of the target leg between the two adjacent times can be determined to obtain the phase of each time segment corresponding to the gait sequence of the target leg. Figure 2 The time point when the phase of Q1 changes is t 2 ,t 7 ,t10 , according to t 2 ,t 7 ,t 10 The time segment d11(t 2 time period before), time segment d12(t 2 ~t 7 The time period between), time segment d13 (t 7 ~t 10 The time period between t 10 time period thereafter); after determining time segment d11, time segment d12, time segment d13 and time segment d14, it can be determined that the phase of the target leg in time segment d11 is the support phase, the phase in time segment d12 is the swing phase, the phase in time segment d13 is the support phase, and the phase in time segment d14 is the swing phase.

[0042] S103, planning the leg lifting point position and foot landing point position of the target leg in each time segment according to the current posture of the multi-legged robot and the phase of the target leg in each time segment corresponding to the gait sequence of the target leg.

[0043] Here, the leg lifting point position and foot landing point position of the target leg in each time segment can be planned according to the following steps (1)-(2):

[0044] (1) According to the current posture of the multi-legged robot and the phase of the target leg in each time segment corresponding to the gait sequence of the target leg, the position of the leg lifting point of the target leg in each time segment corresponding to the gait sequence of the target leg is planned.

[0045] Here, each time segment corresponding to the gait sequence of the target leg includes a current time segment and a future time segment. The current time segment refers to the time segment currently being experienced, and the current time segment includes the current moment. For example, the current moment t c In Figure 2 t in 0 and t 1 If the target leg is the right front leg, then the time segment d11 is the current time segment. The future time segment refers to the time segment after the current time segment. For example, Figure 2 The time segment d11 in is the current time segment, then Figure 2 The time segments d12, d13 and d14 are all future time segments.

[0046] For the current time segment, the position of the target leg's leg-lifting point in the current time segment can be planned through the following steps A1-A2:

[0047] A1. If the phase of the target leg in the current time segment is the support phase, determine the current foot end position of the target leg according to the current posture of the multi-legged robot, and determine the current foot end position of the target leg as the leg lifting point position of the target leg in the current time segment.

[0048] The current foot position of the target leg refers to the position of the foot of the target leg of the multi-legged robot in the current posture. For example, the current posture of the multi-legged robot is Figure 3 As shown, the target leg is Figure 3 The current foot position of the target leg is T1. Figure 3 The position of the foot end L of T1.

[0049] When the leg is in the support phase, the relative position relationship between the foot end of the leg and the body of the multi-legged robot is fixed. The current position of the multi-legged robot can be transformed to obtain the current foot end position of the target leg. The current position of the multi-legged robot can be transformed according to a preset coordinate transformation formula to obtain the current foot end position of the target leg.

[0050] In a feasible implementation manner, the preset coordinate transformation formula may be a forward kinematics formula, and the forward kinematics formula may be p l =Kin(p,q l ), where p is the position of the multi-legged robot, p l is the foot position of the target leg, q l is the preset target leg joint position, q l It can be obtained by pre-calibration. c After that, the current posture p c Substitute p into the forward kinematics formula and replace the pre-calibrated joint position q l Substituting q into the forward kinematics formula l , then the current posture p c A series of coordinate transformations are performed to obtain the current foot position of the target leg. It should be understood that the target leg is different and its corresponding q l Different, based on the current pose p c The converted current foot position will also be different.

[0051] In another feasible implementation, the preset coordinate transformation formula may also be p l =p+Rp l,hip , where R is the rotation matrix representing the posture of the multi-legged robot body, R is obtained according to the posture of the multi-legged robot, and p l,hip is the position of the center of the hip joint of the target leg in the body coordinates of the multi-legged robot, p l,hipThrough pre-calibration, the target legs are different, then p l,hip different.

[0052] In another feasible implementation, the preset coordinate conversion formula can also be p l= p+Rp l,hip +k(v c -v d ), k is a constant, k can be h is the height of the multi-legged robot body relative to the foot end, g is the gravitational acceleration, v is the c is the estimated velocity of the multi-legged robot in the world coordinate system, v d is the expected velocity of the multi-legged robot body in the world coordinate system.

[0053] Take step A1 as an example to illustrate the situation. For example, the target leg is the right front leg of a quadruped robot, and the gait sequence of the quadruped robot is as follows: Figure 2 As shown, the current time segment is Figure 2 In the time segment d11, since the phase of the time segment d11 is the supporting phase, the leg lifting point position of the time segment d11 is determined as: the current foot end position of the right front leg, and the current foot end position of the right front leg is obtained by performing coordinate transformation on the current posture of the multi-legged robot.

[0054] A2. If the phase of the target leg in the current time segment is the swing phase, the foot end position of the target leg at the last moment in the first time segment is determined as the leg lifting point position of the target leg in the current time segment.

[0055] The first time segment is the previous time segment of the current time segment. For example, the target leg is the left front leg of a quadruped robot, and the gait sequence of the quadruped robot is as follows: Figure 2 As shown, the current time segment is Figure 2 The first time segment is the previous time segment of the time segment d21. Since the phase of the time segment d21 is the swing phase, and the phase of the previous time segment of the time segment d21 is the support phase, the position of the leg-lifting point of the left front leg in the current time segment is determined to be the foot position of the left front leg at the last moment of the previous time segment of the time segment d21, that is, the foot position of the left front leg at the last moment of the previous support phase.

[0056] The foot position of the target leg at the last moment in the first time segment can be directly obtained from the historical records. If the foot position of the target leg at the last moment in the first time segment does not exist in the historical records, the posture of the multi-legged robot at the last moment in the first time segment can also be obtained from the historical records, and the foot position of the target leg at the last moment in the first time segment can be determined based on the posture at the last moment. Among them, the foot position of the target leg at the last moment in the first time segment can be obtained by performing coordinate transformation on the posture at the last moment. The specific implementation method of performing coordinate transformation on the posture at the last moment to obtain the foot position of the target leg at the last moment in the first time segment is similar to the above-mentioned step A1 in which the current posture of the multi-legged robot is transformed to obtain the current foot position of the target leg. Please refer to the description of the above-mentioned step A1 and it will not be repeated here.

[0057] For the future time segment, the position of the target leg's leg-lifting point in the future time segment can be planned through the following steps B1-B2:

[0058] B1. If the phase of the target leg in the future time segment is the supporting phase, determine the foot end position of the target leg at the middle moment in the future time segment according to the current posture of the multi-legged robot, and determine the foot end position of the target leg at the middle moment in the future time segment as the leg lifting point position of the target leg in the future time segment.

[0059] The foot end position of the target leg at the middle moment in the future time segment can be determined by the following steps B21-B22:

[0060] B21. Determine the future position and posture of the multi-legged robot at an intermediate moment in a future time segment based on the current position and movement speed of the multi-legged robot.

[0061] Here, the position and posture of the multi-legged robot in the future time segment can be called the future position and posture. The future position and posture of the multi-legged robot at a certain target time in the future time segment refers to the position and posture of the multi-legged robot at the target time. For example, the future time segment is Figure 2 Time segment d13, time t 8 is the moment in the future time segment, then the multi-legged robot is at time t 8 The future position of the multi-legged robot at time t 8 The corresponding posture.

[0062] The future posture of the multi-legged robot at the middle moment in the future time segment refers to the posture of the multi-legged robot corresponding to the middle moment. The middle moment in the future time segment is the midpoint of the time in the future time segment. The future posture of the multi-legged robot at the middle moment in the future time segment can be obtained by interpolation. The calculation formula for the future posture of the multi-legged robot at the middle moment in the future time segment is as follows:

[0063] p f =p c +v*[(t 终 -t 起 ) / 2-t c ]

[0064] Among them, p f is the future position of the multi-legged robot at the middle moment of the future time segment, v is the movement speed of the multi-legged robot determined based on the user's instructions, and t 起 and t 终 is the start time and end time of the future time segment, p c is the current position of the multi-legged robot.

[0065] B22, based on the future posture of the multi-legged robot at the middle moment in the future time segment, determine the foot end position of the target leg at the middle time in the future time segment.

[0066] Here, the future posture of the multi-legged robot at the middle moment in the future time segment can be coordinate-converted to obtain the foot-end position of the target leg at the middle time in the future time segment. The specific implementation method of coordinate-converting the future posture of the multi-legged robot at the middle moment in the future time segment to obtain the foot-end position of the target leg at the middle time in the future time segment is similar to the coordinate-converting the current posture of the multi-legged robot in the aforementioned step A1 to obtain the current foot-end position of the target leg. Please refer to the description of the aforementioned step A1, which will not be repeated here.

[0067] The future position of the multi-legged robot is first determined according to the current position of the multi-legged robot, and then the foot positions of the legs of the multi-legged robot are determined according to the future position, so that the foot positions of the legs of the multi-legged robot at a future time can be accurately determined.

[0068] The case of step B1 is described by taking an example. For example, the target leg is the left front leg of a quadruped robot, and the gait sequence of the quadruped robot is as follows: Figure 2 As shown, the future time segment is Figure 2 In the time segment d22, since the phase of the time segment d22 is the support phase, the position of the left front leg lifting point in the time segment d22 is determined as: the foot end position of the left front leg at the middle moment of the time segment d22, and the middle moment of the time segment d22 is (t3 -t 1 ) / 2.

[0069] B2. If the phase of the target leg in the future time segment is the swing phase, the leg-lifting point position of the target leg in the second time segment is determined as the leg-lifting point position of the target leg in the future time segment.

[0070] The second time segment is the previous time segment of the future time segment. For example, the target leg is the right front leg of a quadruped robot, and the gait sequence of the quadruped robot is as follows: Figure 2 As shown, the future time segment is Figure 2 The time segment d12 in the second time segment is Figure 2 The time segment d11 in the figure determines the leg-lifting point position of the right front leg in the time segment d12 as: the leg-lifting point position of the right front leg in the time segment d11.

[0071] (2) According to the phase of the target leg in each time segment corresponding to the gait sequence of the target leg and the position of the leg lifting point of the target leg in each time segment corresponding to the gait sequence of the target leg, the landing point position of the target leg in each time segment is planned.

[0072] In a feasible implementation, for each time segment corresponding to the gait sequence of the target leg, the landing point position of the target leg can be planned through the following steps C1-C2:

[0073] C1. If the phase of the target leg in the target time segment is the support phase, the leg lifting point position in the target time segment is determined as the landing point position of the target leg in the target time segment.

[0074] The target time segment is any time segment in the gait sequence of the target leg. For example, the target leg is the right front leg of a quadruped robot, and the gait sequence of the quadruped robot is as follows: Figure 2 As shown, the target time segment can be Figure 2 If the target time segment is the time segment d11, the footfall position of the right front leg in the time segment d11 can be determined as: the leg lift point position of the right front leg at the time point d11.

[0075] C2. If the phase of the target leg in the target time segment is the swing phase, the leg lifting point position of the target leg in the third time segment is determined as the landing point position of the target leg in the target time segment.

[0076] The third time segment is the next time segment of the target time segment. For example, the target leg is the right front leg of a quadruped robot, and the gait sequence of the quadruped robot is as follows: Figure 2 As shown, the target time segment is d12, then Figure 2 The time segment d13 is the third time segment, and the phase of the right front leg in the time segment d12 is the swing phase, so the landing point position of the right front leg in the time segment d12 is determined as: the leg lifting point position of the right front leg in the time segment d13.

[0077] In another feasible implementation, for each time segment corresponding to the gait sequence of the target leg, the landing point position of the target leg may also be planned through the following steps D1-D2:

[0078] D1. If the phase of the target leg in the target time segment is the support phase, the landing point position of the target leg in the third time segment is determined as the landing point position of the target leg in the target time segment.

[0079] For example, the target leg is the right front leg of a quadruped robot, and the gait sequence of the quadruped robot is as follows: Figure 2 As shown, the target time segment is time segment d11, then Figure 2 The time segment d12 in is the third time segment, and the phase of the right front leg in the time segment d11 is the support phase. It can be determined that the landing point position of the right front leg in the time segment d11 is: the landing point position of the time segment d12.

[0080] D2. If the phase of the target leg in the target time segment is the swing phase, the leg lifting point position of the target leg in the third time segment is determined as the landing point position of the target leg in the target time segment.

[0081] Here, the description of step D2 can refer to the description of step C2, which will not be repeated here.

[0082] By first planning the leg-lifting point position of the target leg according to the posture of the multi-legged robot and the phase of the target leg of the multi-legged robot in each time segment corresponding to the gait sequence, and then planning the target leg landing point position according to the phase and leg-lifting point position of the target leg of the multi-legged robot in each time segment corresponding to the gait sequence, reasonable planning of the leg-lifting point and the landing point can be achieved.

[0083] exist Figure 1 In the corresponding technical scheme, the gait sequence of the target legs of the multi-legged robot and the current position of the multi-legged robot are first obtained, and then the phases of the target legs in each time segment corresponding to the gait sequence are determined according to the gait sequence of the target legs. Finally, according to the current posture of the multi-legged robot and the phases of the target legs in each time segment corresponding to the gait sequence, the leg lifting point positions and foot landing point positions of the target legs in each time segment are planned, thereby realizing the planning of the leg lifting point and foot landing point positions of the legs of the multi-legged robot within a period of time.

[0084] The method of the present application is introduced above, and the device of the present application is introduced below.

[0085] See also Figure 4 , Figure 4 Schematic diagram of a multi-legged robot leg position planning device provided in an embodiment of the present application. Figure 4 As shown, the multi-legged robot leg position planning device 20 includes:

[0086] An acquisition module 201 is used to acquire a gait sequence of a target leg of a multi-legged robot and a current posture of the multi-legged robot, wherein the target leg is any leg of the multi-legged robot;

[0087] A phase determination module 202, configured to determine, according to the gait sequence, the phase of the target leg in each time segment corresponding to the gait sequence;

[0088] The planning module 203 is used to plan the leg lifting point position and the foot landing point position of the target leg in each time segment according to the current posture and the phase.

[0089] In a possible design, the above-mentioned planning module 203 is specifically used to: plan the leg-lifting point position of the target leg in the each time segment according to the current posture and the phase; plan the landing point position of the target leg in the each time segment according to the phase and the leg-lifting point position of the target leg in the each time segment.

[0090] In a possible design, the above-mentioned planning module 203 is specifically used for: if the phase of the target leg in the current time segment in the gait sequence is the support phase, the current foot end position of the target leg is determined according to the current posture, and the current foot end position of the target leg is determined as the leg lifting point position of the target leg in the current time segment; if the phase of the target leg in the current time segment is the swing phase, the foot end position of the target leg at the last moment in the first time segment is determined as the leg lifting point position of the target leg in the current time segment, and the first time segment is the previous time segment of the current time segment.

[0091] In a possible design, the above-mentioned planning module 203 is specifically used for: if the phase of the target leg in the future time segment is the support phase, determining the foot end position of the target leg at the middle moment in the future time segment according to the current posture, and determining the foot end position of the target leg at the middle moment in the future time segment as the leg lifting point position of the target leg in the future time segment, and the future time segment is the time segment after the current time segment in the gait sequence; if the phase of the target leg in the future time segment is the swing phase, then determining the leg lifting point position of the target leg in the second time segment as the leg lifting point position of the target leg in the future time segment, and the second time segment is the previous time segment of the future time segment.

[0092] In one possible design, the planning module 203 is specifically used to: determine the future posture of the multi-legged robot at the intermediate moment based on the current posture and the movement speed of the multi-legged robot; determine the foot end position of the target leg at the intermediate moment based on the future posture of the multi-legged robot at the intermediate moment.

[0093] In a possible design, the above-mentioned planning module 203 is specifically used for: if the phase of the target leg in the target time segment is the support phase, the leg lifting point position of the target time segment is determined as the landing point position of the target leg in the target time segment, and the target time segment is any time segment in the gait sequence; if the phase of the target leg in the target time segment is the swing phase, the leg lifting point position of the target leg in the third time segment is determined as the landing point position of the target leg in the target time segment, and the third time segment is the next time segment of the target time segment.

[0094] In a possible design, the above-mentioned planning module 203 is specifically used for: if the phase of the target leg in the target time segment is the support phase, the landing point position of the target leg in the third time segment is determined as the landing point position of the target leg in the target time segment, the target time segment is any time segment in the gait sequence, and the third time segment is the next time segment of the target time segment; if the phase of the target leg in the target time segment is the swing phase, the leg lifting point position of the target leg in the third time segment is determined as the landing point position of the target leg in the target time segment.

[0095] It should be noted that Figure 4 For the contents not mentioned in the corresponding embodiments, please refer to the description of the aforementioned method embodiments, which will not be repeated here.

[0096] The above-mentioned device first obtains the gait sequence of the target leg of the multi-legged robot and the current position of the multi-legged robot, and then determines the phase of the target leg in each time segment corresponding to the gait sequence according to the gait sequence of the target leg. Finally, according to the current posture of the multi-legged robot and the phase of the target leg in each time segment corresponding to the gait sequence, the leg lifting point position and the foot landing point position of the target leg in each time segment are planned, thereby realizing the planning of the leg lifting point and foot landing point positions of the legs of the multi-legged robot within a period of time.

[0097] See also Figure 5 , Figure 5 3 is a schematic diagram of a computer device provided in an embodiment of the present application, wherein the computer device 30 includes a processor 301 and a memory 302. The memory 302 is connected to the processor 301, for example, via a bus.

[0098] The processor 301 is configured to support the computer device 30 to perform the corresponding functions in the method in the above method embodiment. The processor 301 can be a central processing unit (CPU), a network processor (NP), a hardware chip or any combination thereof. The above hardware chip can be an application specific integrated circuit (ASIC), a programmable logic device (PLD) or a combination thereof. The above PLD can be a complex programmable logic device (CPLD), a field-programmable gate array (FPGA), a generic array logic (GAL) or any combination thereof.

[0099] The memory 302 is used to store program codes, etc. The memory 302 may include a volatile memory (VM), such as a random access memory (RAM); the memory 302 may also include a non-volatile memory (NVM), such as a read-only memory (ROM), a flash memory, a hard disk drive (HDD) or a solid-state drive (SSD); the memory 302 may also include a combination of the above-mentioned types of memories.

[0100] The processor 301 may call the program code to perform the following operations:

[0101] Acquire a gait sequence of a target leg of a multi-legged robot and a current posture of the multi-legged robot, wherein the target leg is any leg of the multi-legged robot;

[0102] According to the gait sequence, determining the phase of the target leg in each time segment corresponding to the gait sequence;

[0103] According to the current posture and the phase, the leg lifting point position and the foot landing point position of the target leg in each time segment are planned.

[0104] An embodiment of the present application further provides a computer-readable storage medium, wherein the computer-readable storage medium stores a computer program, wherein the computer program includes program instructions, and when the program instructions are executed by a computer, the computer executes the method described in the above embodiment.

[0105] A person skilled in the art can understand that all or part of the processes in the above-mentioned embodiments can be implemented by instructing the relevant hardware through a computer program, and the program can be stored in a computer-readable storage medium, and when the program is executed, it can include the processes of the embodiments of the above-mentioned methods. The storage medium can be a disk, an optical disk, a read-only memory (ROM) or a random access memory (RAM), etc.

[0106] The above disclosure is only the preferred embodiment of the present application, which certainly cannot be used to limit the scope of rights of the present application. Therefore, equivalent changes made according to the claims of the present application are still within the scope covered by the present application.

Claims

1. A method for planning the position of legs of a multi-legged robot, characterized in that: include: Acquire a gait sequence of a target leg of a multi-legged robot and a current posture of the multi-legged robot, wherein the target leg is any leg of the multi-legged robot; According to the gait sequence, determining the phase of the target leg in each time segment corresponding to the gait sequence; According to the current posture and the phase, the leg lifting point position and the foot landing point position of the target leg in each time segment are planned.

2. The method according to claim 1, characterized in that The step of planning the leg lift point position and the foot landing point position of the target leg in each time segment according to the current posture and the phase includes: Planning the leg-lifting point position of the target leg in each time segment according to the current posture and the phase; The landing point position of the target leg in each time segment is planned according to the phase and the leg lifting point position of the target leg in each time segment.

3. The method according to claim 2, characterized in that The step of planning the leg-lifting point position of the target leg in each time segment according to the current posture and the phase includes: If the phase of the target leg in the current time segment in the gait sequence is the stance phase, determine the current foot end position of the target leg according to the current posture, and determine the current foot end position of the target leg as the leg lifting point position of the target leg in the current time segment; If the phase of the target leg in the current time segment is the swing phase, the foot end position of the target leg at the last moment in the first time segment is determined as the leg lifting point position of the target leg in the current time segment, and the first time segment is the previous time segment of the current time segment.

4. The method according to claim 2, characterized in that: The step of planning the leg-lifting point position of the target leg in each time segment according to the current posture and the phase includes: If the phase of the target leg in the future time segment is the support phase, determine the foot end position of the target leg at the middle moment in the future time segment according to the current posture, and determine the foot end position of the target leg at the middle moment in the future time segment as the leg lifting point position of the target leg in the future time segment, and the future time segment is the time segment after the current time segment in the gait sequence; If the phase of the target leg in the future time segment is the swing phase, the leg lifting point position of the target leg in the second time segment is determined as the leg lifting point position of the target leg in the future time segment, and the second time segment is the previous time segment of the future time segment.

5. The method according to claim 4, characterized in that The step of determining the foot end position of the target leg at an intermediate moment in the future time segment according to the current posture includes: Determining a future posture of the multi-legged robot at the intermediate moment according to the current posture and the movement speed of the multi-legged robot; The foot end position of the target leg at the intermediate moment is determined according to the future posture of the multi-legged robot at the intermediate moment.

6. The method according to claim 5, characterized in that The step of determining the foot end position of the target leg at the intermediate moment according to the future position of the multi-legged robot at the intermediate moment comprises: The future posture of the multi-legged robot at the intermediate moment is subjected to coordinate transformation to obtain the foot end position of the target leg at the intermediate moment.

7. The method according to any one of claims 2 to 6, characterized in that: The step of planning the landing point position of the target leg in each time segment according to the phase and the leg lifting point position of the target leg in each time segment includes: If the phase of the target leg in the target time segment is the stance phase, the leg lifting point position of the target time segment is determined as the landing point position of the target leg in the target time segment, and the target time segment is any time segment in the gait sequence; If the phase of the target leg in the target time segment is the swing phase, the leg lifting point position of the target leg in the third time segment is determined as the landing point position of the target leg in the target time segment, and the third time segment is the next time segment of the target time segment.

8. The method according to any one of claims 2 to 6, characterized in that: The step of planning the landing point position of the target leg in each time segment according to the phase and the leg lifting point position of the target leg in each time segment includes: If the phase of the target leg in the target time segment is the stance phase, the foothold position of the target leg in the third time segment is determined as the foothold position of the target leg in the target time segment, the target time segment is any time segment in the gait sequence, and the third time segment is the next time segment of the target time segment; If the phase of the target leg in the target time segment is the swing phase, the leg lifting point position of the target leg in the third time segment is determined as the landing point position of the target leg in the target time segment.

9. A multi-legged robot leg position planning device, characterized in that: include: An acquisition module, used for acquiring a gait sequence of a target leg of a multi-legged robot and a current posture of the multi-legged robot, wherein the target leg is any leg of the multi-legged robot; A phase determination module, used to determine the phase of the target leg in each time segment corresponding to the gait sequence according to the gait sequence; A planning module is used to plan the leg lifting point position and the foot landing point position of the target leg in each time segment according to the current posture and the phase.

10. A computer device, characterized in that: The method comprises a memory and a processor, wherein the memory and a processor are connected to the processor, and the processor is used to execute one or more computer programs stored in the memory. When the processor executes the one or more computer programs, the computer device implements the method according to any one of claims 1 to 8.

11. A computer-readable storage medium, characterized in that: The computer-readable storage medium stores a computer program, wherein the computer program includes program instructions, and when the program instructions are executed by a processor, the processor is caused to perform the method according to any one of claims 1 to 8.

Citation Information

Patent Citations

  • Planning method for opposite angle trotting gait of large quadruped robot

    CN103955217A

  • Robot state planning method and device based on sequence optimization and storage medium

    CN111664851A

  • Biped robot cascade control method and device based on task hierarchical optimization

    CN115328186A

  • Self-sustained traveling support device

    JP2005351877A

  • Muscular strength assisting robot for knee joint and method for controlling same

    KR101496417B1