A method and device for planning foot trajectory of a foot robot and the foot robot
By generating multiple series of trajectory traction points to plan the foot trajectory of the legged robot, the stability problem of the legged robot when going up and down stairs was solved, and it was able to pass smoothly on steps and obstacles.
Patent Information
- Application Number
- CN202210832831.X
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2022-07-15
- Publication Date
- 2025-12-19
- Estimated Expiration
- 2042-07-15
AI Technical Summary
In existing technologies, legged robots have difficulty effectively avoiding the random crossing of obstacles between their feet and the staircase when going up and down stairs, leading to collisions and instability.
By determining the height and length of the foot in different swing phases, multiple series of trajectory traction points are generated, including retraction, forward swing, and speed control points, to plan the robot's foot trajectory and avoid collisions with stair edges or obstacles.
It improves the stability of legged robots when going up and down stairs and crossing obstacles, reduces collisions, and ensures that the robot moves smoothly.
Smart Images

Figure CN115344040B_ABST
Abstract
Description
TECHNICAL FIELD
[0001] The present application relates to the technical field of robot control, and in particular to a foot-end trajectory planning method and device for a legged robot and the legged robot. BACKGROUND
[0002] With the improvement of computer performance and the development of sensor technology, robot technology has been continuously improved, and various robots have gradually appeared in human life to help humans complete specific work. Compared with traditional wheeled robots and tracked robots, the biggest advantage of legged robots (biped, quadruped and multi-legged robots) is the wide range of accessible areas. The ability of legged robots to go up and down stairs is an advantage that cannot be matched by other robots. How to make legged robots reliably and safely go up and down stairs is a problem that legged robots urgently need to solve.
[0003] In the prior art, a legged robot widely uses a once Bezier curve to plan a trajectory when the robot goes up and down stairs. However, due to the simple curve form, it is difficult to cope with the random crossing of obstacles caused by the foot-end point on the stair position during the process of climbing stairs. For example, if the starting point or the foot landing point is close to the edge of the stairs during the process of the robot going up and down the stairs, the leg may collide with the stairs, which may further cause the robot to fall. SUMMARY
[0004] The present application provides a foot-end trajectory planning method and device for a legged robot and the legged robot, which can make the robot smoothly go up and down stairs and cross obstacles, reduce collisions, and improve the stability of the robot during the process of going up and down stairs and crossing obstacles.
[0005] The first aspect of the present application provides a foot-end trajectory planning method for a legged robot, comprising:
[0006] determining a swing height and a swing length of a foot-end of at least one leg from lifting up to landing on a second step in a first swing phase, the first step being a step on which the foot-end of the supporting leg is located in a first support phase, the first support phase and the first swing phase being continuous in time, and the first support phase being earlier than the first swing phase;
[0007] if the tread of the second step is higher than the tread of the first step, determining a first series of trajectory traction points corresponding to the foot-end according to the swing height and the swing length;
[0008] generating a first foot-end trajectory according to the first series of trajectory traction points, and controlling the foot-end to land on the second step according to the first foot-end trajectory;
[0009] if the tread of the second step is lower than the tread of the first step, determining a second series of trajectory traction points corresponding to the foot end according to the swing height and the swing length;
[0010] generating a second foot end trajectory according to the second series of trajectory traction points, and controlling the foot end to land on the second step according to the second foot end trajectory.
[0011] Optionally, the first series of trajectory traction points comprises at least one first foot end rearward traction point and at least one first foot end forward swing traction point.
[0012] The at least one first foot end rearward traction point is configured to traction the foot end to rearward during the foot end lifting process to prevent the foot end from hitting the kick surface of the second step during the lifting process.
[0013] The at least one first foot end forward swing traction point is configured to traction the foot end to swing forward and bypass the edge of the second step after the lifting height of the foot end exceeds the tread height of the second step.
[0014] The second series of trajectory traction points comprises at least one second foot end forward swing traction point and at least one second foot end rearward traction point.
[0015] The at least one second foot end forward swing traction point is configured to traction the foot end to swing forward and bypass the edge of the first step during the foot end lifting process.
[0016] The at least one second foot end rearward traction point is configured to traction the foot end to rearward during the foot end falling process to prevent the foot end from hitting the edge of the second step during the falling process.
[0017] Optionally, the first series of trajectory traction points further comprises at least one first foot end speed traction point, and the at least one first foot end speed traction point is configured to traction the foot end to reduce the speed and / or acceleration of the foot end landing on the tread of the second step when the distance between the foot end and the tread of the second step is less than a preset distance.
[0018] The second series of trajectory traction points further comprises at least one second foot end speed traction point, and the at least one second foot end speed traction point is configured to traction the foot end to reduce the speed and / or acceleration of the foot end landing on the tread of the second step when the distance between the foot end and the tread of the second step is less than a preset distance.
[0019] Optionally, before the determining the first series of trajectory traction points corresponding to the foot end according to the swing height and the swing length, the method further comprises:
[0020] determining whether the original foot end trajectory intersects with the kick surface or the tread of the second step.
[0021] The determining the first series of trajectory traction points corresponding to the foot end according to the swing height and the swing length comprises:
[0022] If there is intersection, the determining the first series of trajectory traction points corresponding to the foot end according to the swing height and the swing length.
[0023] Or,
[0024] Before the determining the second series of trajectory traction points corresponding to the foot end according to the swing height and the swing length, the method further comprises:
[0025] Judging whether there is intersection between the original foot end trajectory and the kick surface or the tread surface of the first step;
[0026] The determining the second series of trajectory traction points corresponding to the foot end according to the swing height and the swing length comprises:
[0027] If there is intersection, the determining the second series of trajectory traction points corresponding to the foot end according to the swing height and the swing length.
[0028] Optionally, before the determining the first series of trajectory traction points corresponding to the foot end according to the swing height and the swing length, the method further comprises:
[0029] Judging whether the distance between the foot end and the kick surface of the second step is less than a preset distance;
[0030] The determining the first series of trajectory traction points corresponding to the foot end according to the swing height and the swing length comprises:
[0031] If less, the determining the first series of trajectory traction points corresponding to the foot end according to the swing height and the swing length.
[0032] Optionally, the determining the swing height and the swing length of the foot end of at least one leg in the first swing phase from lifting up the first step to falling down the second step comprises:
[0033] If the robot is in a blind climbing mode, receiving an instruction to filter target stair size information in a preset stair size table, and determining the swing height and the swing length of the foot end of at least one leg in the first swing phase from lifting up the first step to falling down the second step according to the target stair size information;
[0034] Or,
[0035] If the robot is in a visual mode, determining the swing height and the swing length of the foot end of at least one leg in the first swing phase from lifting up the first step to falling down the second step according to visual information of the robot.
[0036] The second aspect of the application provides a foot end trajectory planning method of a foot-type robot, comprising:
[0037] determining attribute information of the obstacle when the obstacle is sensed, the attribute information including shape and size information;
[0038] determining whether a preset trajectory switching condition is met according to the attribute information;
[0039] if yes, determining a swing height and a swing length of a foot end of at least one leg from a starting point to a landing point in a second swing phase according to the attribute information, the starting point being a position of the foot end of the supporting leg in a second supporting phase, the second supporting phase and the second swing phase being continuous in time, and the second supporting phase being earlier than the second swing phase;
[0040] generating a third foot end trajectory according to the third series of trajectory traction points, and controlling the foot end to cross the obstacle according to the third foot end trajectory.
[0041] Optionally, the third series of trajectory traction points includes first combined traction points and second combined traction points.
[0042] The first combined traction points include at least one third foot end lifting and retraction traction point, at least one third foot end forward swing traction point, and at least one third foot end landing and retraction traction point.
[0043] The second combined traction points include at least one third foot end lifting and retraction traction point and at least one third foot end forward swing traction point.
[0044] The at least one third foot end lifting and retraction traction point is used to pull the foot end to retract during the lifting of the foot end, so as to prevent the foot end from colliding with the obstacle during the lifting of the foot end.
[0045] The at least one third foot end forward swing traction point is used to pull the foot end to swing forward and bypass the edge of the obstacle after the lifting height of the foot end exceeds the obstacle.
[0046] The at least one third foot end landing and retraction traction point is used to pull the foot end to retract during the landing of the foot end, so as to prevent the foot end from colliding with the edge of the obstacle during the landing of the foot end.
[0047] Optionally, the determining whether the preset trajectory switching condition is met according to the attribute information includes:
[0048] determining whether the original foot end trajectory and the obstacle exist intersection according to the attribute information, and if yes, determining that the preset trajectory switching condition is met.
[0049] or,
[0050] According to the attribute information, it is determined whether a distance between a starting point in the foot end trajectory and the obstacle is less than a preset distance, and if yes, it is determined that the preset trajectory switching condition is met.
[0051] The third aspect of the present application provides a device for foot end trajectory planning of a foot robot, the device comprising: a sensing unit and a control unit.
[0052] The sensing unit is configured to:
[0053] determine a swing height and a swing length of a foot end of at least one leg from a first swing phase, from a first step being lifted to falling to a second step, the first step being a step on which the foot end of the support leg is located in a first support phase, the first support phase and the first swing phase being continuous in time, and the first support phase being earlier than the first swing phase;
[0054] The control unit is configured to:
[0055] if the tread surface of the second step is higher than that of the first step, determine a first series of trajectory traction points corresponding to the foot end according to the swing height and the swing length;
[0056] generate a first foot end trajectory according to the first series of trajectory traction points, and control the foot end to land on the second step according to the first foot end trajectory;
[0057] if the tread surface of the second step is lower than that of the first step, determine a second series of trajectory traction points corresponding to the foot end according to the swing height and the swing length;
[0058] generate a second foot end trajectory according to the second series of trajectory traction points, and control the foot end to land on the second step according to the second foot end trajectory.
[0059] The fourth aspect of the present application provides a device for foot end trajectory planning of a foot robot, the device comprising: a sensing unit and a control unit.
[0060] The sensing unit is configured to:
[0061] when an obstacle is sensed, determine attribute information of the obstacle, the attribute information comprising shape and size information;
[0062] The control unit is configured to:
[0063] determine whether a preset trajectory switching condition is met according to the attribute information;
[0064] The sensing unit is further configured to: when the control unit determines that a preset trajectory switching condition is met according to the attribute information, determine, according to the attribute information, a swing height and a swing length of a foot end of at least one leg from a starting point to a foot landing point in a second swing phase, the starting point being a position of the foot end of the supporting leg in a second supporting phase, the second supporting phase and the second swing phase being continuous in time, and the second supporting phase being earlier than the second swing phase;
[0065] The control unit is further configured to:
[0066] determine a third series of trajectory traction points corresponding to the foot end according to the swing height and the swing length;
[0067] generate a third foot end trajectory according to the third series of trajectory traction points, and control the foot end to cross the obstacle according to the third foot end trajectory.
[0068] The fifth aspect of the present application provides a legged robot, the legged robot comprising:
[0069] a processor, a memory, an input / output unit, and a bus;
[0070] The processor is connected with the memory, the input / output unit, and the bus;
[0071] The memory stores a program, and the processor invokes the program to execute the method for planning a foot end trajectory of a legged robot according to the first aspect and any one of the optional foot end trajectory planning methods of the first aspect.
[0072] From the above technical solutions, the present application has the following advantages:
[0073] When the legged robot climbs up or down a step or crosses an obstacle, the legged robot will design different types of trajectory traction points with variable numbers according to different obstacle types, and then generate a foot end trajectory of the robot based on the designed trajectory traction points. The designed foot end trajectory, i.e., the first foot end trajectory, the second foot end trajectory, and the third foot end trajectory in the present application, can avoid collision between the foot end of the robot and the step or the obstacle, so that the robot can smoothly climb up or down the step and cross the obstacle, and the stability of the robot in the process of marching is improved. BRIEF DESCRIPTION OF DRAWINGS
[0074] In order to more clearly illustrate the technical solutions in the present application, the drawings needed in the embodiments will be briefly introduced as follows. Obviously, the drawings in the following description are only some embodiments of the present application, and other drawings can be obtained by those skilled in the art without any creative effort on the basis of these drawings.
[0075] Figure 1-a andFigure 1-b A schematic diagram of the hardware structure and mechanical structure of the foot robot provided in the present application is provided;
[0076] Figure 2-a A schematic diagram of the foot robot foot trajectory planning method provided in the present application is provided;
[0077] Figure 2-b A schematic diagram of the foot robot foot trajectory planning method provided in the present application is provided;
[0078] Figure 3-a A schematic diagram of the foot robot foot trajectory planning method provided in the present application is provided;
[0079] Figure 3-b A schematic diagram of the foot robot foot trajectory planning method provided in the present application is provided;
[0080] Figure 4-a A schematic diagram of the foot robot foot trajectory planning method provided in the present application is provided;
[0081] Figure 4-b A schematic diagram of the foot robot foot trajectory planning method provided in the present application is provided;
[0082] Figure 5 A schematic diagram of the foot robot provided in the present application is provided. DETAILED DESCRIPTION
[0083] In order to make the objectives, technical solutions and advantages of the present application clearer, the technical solutions of the present application will be described clearly and completely below with reference to the drawings. Obviously, the described embodiments are only a part of the embodiments of the present application, rather than all the embodiments. Based on the embodiments in the present application, all other embodiments obtained by those skilled in the art without creative work fall within the scope of protection of the present application.
[0084] It should be noted that the foot robot foot trajectory planning method, device and foot robot provided in the present application will be described below. The hardware structure and mechanical structure of the robot provided in the present application will be described below. In the subsequent description, the suffixes such as "module", "component" or "unit" used to represent components only serve to facilitate the description of the present application, and have no specific meaning. Therefore, "module", "component" or "unit" can be used interchangeably.
[0085] Please refer to Figure 1-a , Figure 1-aThis is a schematic diagram of the hardware structure of a multi-legged robot 100 according to one embodiment of the present invention. Figure 1-a In the illustrated embodiment, the multi-legged robot 100 includes a mechanical unit 101, a communication unit 102, a sensing unit 103, an interface unit 104, a storage unit 105, a control unit 110, and a power supply 111. The various components of the multi-legged robot 100 can be connected in any way, including wired or wireless connections. Those skilled in the art will understand that... Figure 1-a The specific structure of the multi-legged robot 100 shown does not constitute a limitation on the multi-legged robot 100. The multi-legged robot 100 may include more or fewer parts than shown. Some parts are not essential components of the multi-legged robot 100 and may be omitted or combined as needed without changing the nature of the invention.
[0086] The following is combined Figure 1-a A detailed description of each component of the multi-legged robot 100:
[0087] Mechanical unit 101 is the hardware of multi-legged robot 100. For example... Figure 1-a As shown, the mechanical unit 101 may include a drive board 1011, a motor 1012, and a mechanical structure 1013, such as... Figure 1-b As shown, the mechanical structure 1013 may include a main body 1014, extendable legs 1015, and feet 1016. In other embodiments, the mechanical structure 1013 may also include an extendable robotic arm (not shown), a rotatable head structure 1017, a rocking tail structure 1018, a cargo-carrying structure 1019, a saddle structure 1020, a camera structure 1021, etc. It should be noted that the various component modules of the mechanical unit 101 can be one or multiple, depending on the specific situation. For example, there may be four legs 1015, and each leg 1015 may be equipped with three motors 1012, resulting in a total of twelve motors 1012.
[0088] The communication unit 102 can be used for receiving and sending signals, and can also communicate with networks and other devices. For example, it can receive instructions from a remote control or other multi-legged robot 100 to move in a specific direction at a specific speed according to a specific gait, and then transmit these instructions to the control unit 110 for processing. The communication unit 102 includes modules such as WiFi, 4G, 5G, Bluetooth, and infrared.
[0089] The sensing unit 103 is configured to acquire information data of the environment around the multi-legged robot 100 and monitor parameter data of components inside the multi-legged robot 100, and transmit the acquired information data and the monitored parameter data to the control unit 110. The sensing unit 103 includes various sensors, such as sensors configured to acquire information of the environment around the multi-legged robot 100, such as a laser radar (for long-range object detection, distance determination, and / or speed value determination), a millimeter wave radar (for short-range object detection, distance determination, and / or speed value determination), a camera, an infrared camera, a Global Navigation Satellite System (GNSS), and the like. The sensing unit 103 also includes sensors configured to monitor components inside the multi-legged robot 100, such as an Inertial Measurement Unit (IMU) (for measuring values of speed, acceleration, and angular velocity), a plantar sensor (for monitoring plantar force point position, plantar posture, ground contact force, and direction), and a temperature sensor (for detecting component temperature). The multi-legged robot 100 can also be equipped with a load sensor, a touch sensor, a motor angle sensor, a torque sensor, and other sensors, which are not described herein.
[0090] The interface unit 104 can be configured to receive input (e.g., data information, power, and the like) from an external device and transmit the received input to one or more components inside the multi-legged robot 100, or can be configured to output (e.g., data information, power, and the like) to an external device. The interface unit 104 can include a power supply port, a data port (e.g., a USB port), a memory card port, a port for connecting a device having an identification module, an audio input / output (I / O) port, a video I / O port, and the like.
[0091] The storage unit 105 is configured to store software programs and various data. The storage unit 105 can mainly include a program storage area and a data storage area, wherein the program storage area can store an operating system program, a motion control program, an application program (such as a text editor), and the like; and the data storage area can store data generated by the multi-legged robot 100 during use (such as various sensing data acquired by the sensing unit 103, log file data), and the like. In addition, the storage unit 105 can include a high-speed random access memory, and can also include a non-volatile memory, such as a disk memory, a flash memory, or other volatile solid-state memory.
[0092] The display unit 106 is configured to display information input by a user or information provided to a user. The display unit 106 can include a display panel 1061, which can be configured in the form of a Liquid Crystal Display (LCD), an Organic Light-Emitting Diode (OLED), and the like.
[0093] The input unit 107 can be configured to receive input digital or character information. Specifically, the input unit 107 can include a touch panel 1071 and other input devices 1072. The touch panel 1071, also called a touch screen, can collect touch operations of a user (such as the user's operation on or near the touch panel 1071 using a palm, a finger, or a suitable accessory) and drive the corresponding connection device according to a pre-set program. The touch panel 1071 can include two parts, a touch detection device 1073 and a touch controller 1074. The touch detection device 1073 detects the touch position of the user and detects the signal generated by the touch operation, and transmits the signal to the touch controller 1074; the touch controller 1074 receives the touch information from the touch detection device 1073, converts it into touch coordinates, and sends it to the control unit 110, and can also receive the command from the control unit 110 and execute it. In addition to the touch panel 1071, the input unit 107 can also include other input devices 1072. Specifically, the other input devices 1072 can include one or more of a remote control handle and the like, which are not limited here.
[0094] Further, the touch panel 1071 can cover the display panel 1061, and when the touch panel 1071 detects a touch operation thereon or near it, it transmits to the control unit 110 to determine the type of touch event, and then the control unit 110 provides corresponding visual output on the display panel 1061 according to the type of touch event. Although in the Figure 1-a embodiments, the touch panel 1071 and the display panel 1061 are implemented as two independent components to realize the input and output functions, respectively, in some embodiments, the touch panel 1071 and the display panel 1061 can be integrated to realize the input and output functions, which are not limited here.
[0095] The control unit 110 is the control center of the multi-legged robot 100, which connects all components of the multi-legged robot 100 through various interfaces and lines, and controls the multi-legged robot 100 as a whole by running or executing software programs stored in the storage unit 105 and calling data stored in the storage unit 105.
[0096] The power supply 111 is configured to supply power to each component. The power supply 111 can include a battery and a power control board, which is configured to control the charging, discharging, and power consumption management of the battery. In the embodiment shown in Figure 1-a The power supply 111 is electrically connected to the control unit 110, and in other embodiments, the power supply 111 can also be electrically connected to the sensing unit 103 (such as a camera, a radar, a sound box, etc.) and the motor 1012. It should be noted that each component can be connected to a different power supply 111, or powered by the same power supply 111.
[0097] On the basis of the above-mentioned embodiments, specifically, in some embodiments, the terminal device can be connected in communication with the multi-legged robot 100, and when the terminal device communicates with the multi-legged robot 100, the terminal device can send instruction information to the multi-legged robot 100, the multi-legged robot 100 can receive the instruction information through the communication unit 102, and can transmit the instruction information to the control unit 110 when the instruction information is received, so that the control unit 110 can process the target speed value according to the instruction information. The terminal device includes but is not limited to: a mobile phone with image shooting function, a tablet computer, a server, a personal computer, a wearable smart device, and other electrical appliances.
[0098] The instruction information can be determined according to a preset condition. In an embodiment, the multi-legged robot 100 can include a sensing unit 103, which can generate instruction information according to the current environment in which the multi-legged robot 100 is located. The control unit 110 can determine whether the current speed value of the multi-legged robot 100 meets the corresponding preset condition according to the instruction information. If it meets, the current speed value and the current gait of the multi-legged robot 100 are maintained; if it does not meet, the target speed value and the corresponding target gait are determined according to the corresponding preset condition, so that the multi-legged robot 100 can be controlled to move at the target speed value and the corresponding target gait. The environmental sensor can include a temperature sensor, a barometric pressure sensor, a visual sensor, and a sound sensor. The instruction information can include temperature information, barometric pressure information, image information, and sound information. The communication mode between the environmental sensor and the control unit 110 can be wired communication or wireless communication. The wireless communication mode includes but is not limited to: wireless network, mobile communication network (3G, 4G, 5G, etc.), Bluetooth, and infrared.
[0099] The hardware structure and mechanical structure of the foot-type robot provided in the present application are described above, and the foot-end trajectory planning method of the foot-type robot provided in the present application is described below.
[0100] The present application provides a foot-end trajectory planning method and device of a foot-type robot, and a foot-type robot, which are used to enable the robot to smoothly go up and down stairs and cross obstacles, reduce bumps, and improve the stability of the robot during the process of going up and down stairs and crossing obstacles. The foot-type robot in the present application can be a robot in the form of two legs, three legs, four legs, six legs, eight legs, etc., and the specific form is not limited. For the convenience of description, the following is collectively referred to as a foot-type robot or a robot. The coordinates of the foot-end position in the present application can be the coordinates of the center point of the foot-end, or the coordinates of any point on the surface of the foot-end, or the coordinates of the foot-end contacting the ground, and the specific form is not limited.
[0101] In the present application, different trajectory traction points are designed for different obstacle types. For the convenience of description, the obstacle types are divided into three categories: one is the robot climbing stairs scene; the second is the robot descending stairs scene; and the third is the robot crossing obstacle scene, which will be described below.
[0102] I. Robot climbing stairs scene:
[0103] Please refer to Figure 2-a , Figure 2-a An embodiment of the foot-end trajectory planning method provided by the present application corresponds to the robot climbing stairs scene, and the method comprises:
[0104] 201. Determine the swing height and swing length of the foot-end of at least one leg from the lifting of the first step to the landing on the second step in the first swing phase, the first step being the step on which the foot-end of the support leg is located in the first support phase, the first support phase and the first swing phase being continuous in time, and the first support phase being earlier than the first swing phase;
[0105] The walking cycle of the foot-end robot refers to the time elapsed from the landing of the foot-end of a leg to the landing of the foot-end again during the robot walking process. The foot-end trajectory in a single walking cycle mainly includes two stages. One stage is the time period during which the foot-end contacts the ground to generate force, which is called the support stage or support phase, and refers to the continuous phase change process of the leg from the landing of the foot-end to the lifting of the foot-end again. The other stage is the time period during which the foot-end swings in the air, which is called the swing stage or swing phase, and refers to the continuous phase change process of the leg from the lifting of the foot-end to the landing of the foot-end again. During the robot walking process, the gait of each leg switches between the support phase and the swing phase.
[0106] In the present embodiment, during the robot climbing and descending stairs process, the control unit determines the swing height and swing length of the foot-end of at least one support leg of the robot from the lifting of the first step to the landing on the second step. The foot-end is lifted from the first step, lands on the second step after the first swing phase, the first step being the step on which the foot-end is located in the first support phase, and the second step being the step on which the foot-end lands again after the foot-end leaves the first step and goes through the first swing phase. The swing height depends on the height difference between the first step and the second step in the vertical direction, and the swing length depends on the horizontal distance from the starting point of the support leg on the first step to the landing point on the second step.
[0107] In some specific embodiments, the swing height and the swing length can be determined by the starting point coordinates and the landing point coordinates of the foot end, where the starting point coordinates are the coordinates of the foot end when the foot end is on the first step, and the landing point coordinates are the coordinates of the foot end when the foot end is on the second step. The swing height is the coordinate difference of the starting point and the landing point in the vertical direction, which depends on the height difference of the first step and the second step in the vertical direction, and the swing length is the coordinate difference of the starting point and the landing point in the horizontal direction, which is related to the tread width of the first step and the second step.
[0108] It should be noted that the steps in the present application include single-step, multi-step and house stairs, and are not limited in specific, and are collectively referred to as steps for convenience of description. The kick surface in the present application refers to the vertical surface of the step, and the tread surface refers to the horizontal surface of the step.
[0109] 202、If the tread surface of the second step is higher than the tread surface of the first step, the first series of trajectory traction points corresponding to the foot end are determined according to the swing height and the swing length;
[0110] If the tread surface of the second step is higher than the tread surface of the first step, specifically, the tread surface of the second step is higher than the tread surface of the first step in the vertical direction, corresponding to the scene of the robot climbing the step, if the foot end is close to the second step during the climbing process, the foot end is easy to knock against the vertical kick surface of the second step when it is lifted, and the foot end is easy to knock against the edge of the second step during the forward swing, which will cause the robot to lose stability, and even fall down.
[0111] In order to avoid the foot end from knocking against the second step during the climbing process, the control unit determines the first series of trajectory traction points of the foot end of the support leg according to the swing height and the swing length of the support leg, where the first series of trajectory traction points includes at least one first foot end retraction traction point and at least one first foot end forward swing traction point. The first foot end retraction traction point is used to pull the foot end back during the lifting process to prevent the foot end from knocking against the kick surface of the second step during the lifting process. The first foot end forward swing traction point is used to pull the foot end forward and bypass the edge of the second step after the lifting height of the foot end exceeds the tread surface of the second step.
[0112] Further, due to the large difference in control performance of different foot-type robots, the execution ability of the planned foot end trajectory is also different, in order to let most robots can execute the planned trajectory, the speed and acceleration characteristics of the trajectory need to be more gentle. Based on the above reasons, in some specific embodiments, the first series of trajectory traction points can further include at least one first foot end speed traction point, which is used to pull the speed and / or acceleration of the foot end to reduce when the distance between the foot end and the tread surface of the second step is less than a preset distance, so as to reduce the impact force when the foot end lands, thereby ensuring that the foot end lands stably.
[0113] 203. generate a first foot end trajectory according to the first series of trajectory guide points, and control the foot end to land on the second step according to the first foot end trajectory.
[0114] The control unit generates the first foot end trajectory according to the first series of trajectory guide points corresponding to the step-up scene, that is, at least one first foot end rear collection guide point and at least one first foot end front swing guide point. It should be noted that the trajectory guide points in the present application only play a guiding role for the foot end trajectory, and the actual trajectory of the foot end does not necessarily pass through these trajectory guide points. The purpose of these trajectory guide points is to change the trajectory. The first foot end trajectory generated by the first series of trajectory guide points can make the foot end avoid the step (the second step) during the lifting process, and can avoid the robot kicking or bumping into the vertical plane of the step and the edge of the step during the step-up process, so that the robot can smoothly complete the step-up action.
[0115] For details, please refer to Figure 2-b , Figure 2-b The first series of trajectory guide points corresponding to the step-up scene of the robot and the first foot end trajectory are shown in the figure, wherein c1(x1, y1) is the starting point, located on the first step;
[0116] c2(x1-0.1*L, y1+0.3*h) and c3(x1-0.2*L, y1+1.1*h) correspond to the first foot end rear collection guide point in the embodiment, which is used to make the foot end have a backward displacement in the x direction, and to guide the foot end to collect rearward during the lifting process to avoid the foot end from bumping into the kick surface of the second step during the lifting process;
[0117] c4(x1, y1+1.2*h) corresponds to the first foot end front swing guide point in the embodiment, which is used to guide the foot end to swing forward and avoid the edge of the second step after the height of the foot end exceeds the height of the tread surface of the second step, so as to ensure that the foot end does not bump into the edge of the second step during the swing.
[0118] c5(x1+L, y1+h) is the landing point, located on the second step, and has a certain safety distance from the edge of the second step;
[0119] The foot end speed guide point is specifically set by setting 1 to 3 speed guide points near or coinciding with the landing point of the trajectory to reduce the foot end landing speed. Taking the setting of 2 speed guide points as an example for description: 2 control points c5_2, c5_3 are added near or coinciding with c5, so that the speed and acceleration of the foot end when reaching the landing point can be close to or reduced to 0, so that the foot end can land smoothly on the second step during the step-up process, and the robot can be more stable in tracking and controlling the entire trajectory.
[0120] In some specific embodiments, before determining the first series of trajectory traction points, the control unit can first determine whether the original foot end trajectory intersects with the kick surface or the tread surface of the second step: when it is determined that there is no intersection, it means that the foot end will not collide with the second step, and no intervention is needed; when it is determined that there is an intersection, the foot end will likely collide with the second step, and the original foot end trajectory of the robot needs to be intervened, i.e., the first series of trajectory traction points corresponding to the foot end are determined through steps 202 and 203, and the first foot end trajectory is generated according to the first series of trajectory traction points.
[0121] In other specific embodiments, in the upstairs scene, if the starting point is close to the kick surface of the second step, the foot end is likely to collide with the second step during the lifting process. Therefore, before determining the first series of trajectory traction points, the control unit can first determine whether the distance between the foot end and the kick surface of the second step is less than a preset distance: when it is not less than the preset distance, no intervention is selected; when it is less than the preset distance, the foot end is likely to collide with the second step, and the original foot end trajectory of the robot needs to be intervened, i.e., the first series of trajectory traction points corresponding to the foot end are determined through steps 202 and 203, and the first foot end trajectory is generated according to the first series of trajectory traction points.
[0122] II. Robot downstairs scene
[0123] Please refer to Figure 3-a , Figure 3-a Another embodiment of the method for foot end trajectory planning of a foot-type robot provided in the present application corresponds to a robot downstairs scene, and the method comprises:
[0124] 301. Determine the swing height and swing length of the foot end of at least one leg from the lifting of the foot end from the first step to the falling of the foot end to the second step in the first swing phase, the first step being the step on which the foot end of the supporting leg is located in the first support phase, the first support phase and the first swing phase being continuous in time, and the first support phase being earlier than the first swing phase.
[0125] In this embodiment, step 301 is similar to step 201 of the foregoing embodiment, and will not be described again here.
[0126] 302. If the tread surface of the second step is lower than the tread surface of the first step, determine the second series of trajectory traction points corresponding to the foot end according to the swing height and the swing length.
[0127] If the tread surface of the second step is lower than the tread surface of the first step, specifically, the height of the tread surface of the second step in the vertical direction is lower than the tread surface of the first step, corresponding to the scene of the robot going downstairs, the foot end is likely to collide with the edge of the first step when falling down, and if the foot end steps on the edge of the second step after falling down, the robot will be unstable, and even fall down.
[0128] In order to avoid the foot end from colliding with the first step during the process of descending the step, and to avoid the foot end from stepping on the edge of the second step when falling down, the control unit determines the second series of trajectory traction points of the foot end of the support leg according to the swing height and swing length of the support leg. The second series of trajectory traction points includes at least one second foot end forward swing traction point and at least one second foot end backward retraction traction point. The second foot end forward swing traction point is used to traction the foot end to swing forward and bypass the edge of the first step during the process of lifting the foot end. The second foot end backward retraction traction point is used to traction the foot end to retract backward to avoid the foot end from colliding with the edge of the second step during the process of falling down.
[0129] Further, due to the great difference in the control performance of different foot robots, the execution ability of the planned foot end trajectory is also different. In order to enable most robots to execute the planned trajectory, the speed and acceleration characteristics of the trajectory need to be more gentle. Based on the above reasons, in some specific embodiments, similar to the foot end speed traction point in the first series of trajectory traction points, the second series of trajectory traction points can further include at least one second foot end speed traction point. The second foot end speed traction point is used to traction the foot end to reduce the speed and / or acceleration when the distance between the foot end and the tread surface of the second step is less than a preset distance, so as to reduce the impact force when the foot end falls on the ground, thereby ensuring that the foot end falls stably.
[0130] 303. Generate a second foot end trajectory according to the second series of trajectory traction points, and control the foot end to fall on the second step according to the second foot end trajectory.
[0131] The control unit generates a second foot end trajectory according to the second series of trajectory traction points corresponding to the process of ascending the step, i.e. at least one second foot end forward swing traction point and at least one second foot end backward retraction traction point. It should be noted that the trajectory traction points in the present application only play a traction role on the foot end trajectory, and the actual trajectory of the foot end does not necessarily pass through these trajectory traction points. The purpose of these trajectory traction points is to change the trajectory. The second foot end trajectory generated by the second series of trajectory traction points can make the foot end bypass the edge of the step (the first step) during the process of falling down, avoid the robot from kicking or colliding with the edge of the first step during the process of descending the step, and ensure that the falling point has a certain safety distance from the edge of the second step, so that the robot can smoothly complete the action of descending the step.
[0132] In some specific embodiments, before determining the second series of trajectory traction points, the control unit can first determine whether the original foot end trajectory intersects with the kicking surface or the tread surface of the first step: when it is determined that there is no intersection, it means that the foot end will not collide with the first step, and no intervention is needed; when it is determined that there is an intersection, the foot end will collide with the first step, and the original foot end trajectory of the robot needs to be intervened, i.e., the second series of trajectory traction points corresponding to the foot end is determined through steps 302 and 303, and the second foot end trajectory is generated according to the second series of trajectory traction points.
[0133] For details, please refer to Figure 3-b , Figure 3-b The second series of trajectory traction points and the second foot end trajectory corresponding to the robot stepping down the stairs are shown in the figure, where c1(x1, y1) is the starting point, located on the first step;
[0134] c2(x1+1.0*L, y1+0.2*h) and c3(x1+1.2*L, y1+0.1*h) correspond to the second foot end foreplay traction points in this embodiment, which are used to pull the foot end foreplay and bypass the edge of the first step during the foot end lifting process, to ensure that the foot end does not collide with the edge of the first step during the foreplay process;
[0135] c4(x1+1.1*L, y1-0.7*h) corresponds to the second foot end retraction traction point in this embodiment, which is used to pull the foot end retraction during the foot end falling process, to ensure that the foot end does not step on the edge of the second step after falling;
[0136] c5(x1+L, y1-h) is the foot landing point, located on the second step, and has a certain safety distance from the edge of the second step.
[0137] The foot end speed traction point is specifically set by setting 1 to 3 speed traction points near the foot landing point or at the foot landing point. Taking the setting of 2 speed traction points as an example for illustration: 2 control points c5_2, c5_3 are added near or at c5, so that the speed and acceleration of the foot end when reaching the foot landing point can be close to or reduced to 0, so that the foot end can be smoothly landed on the second step during the stepping down process, and the control and tracking of the robot for the entire trajectory is more stable.
[0138] In some specific embodiments, for steps 201 and 301, the swinging height and length of the foot end of at least one leg from the first step lifting to the second step landing in the first swing phase can be discussed in two cases:
[0139] 1) If the robot is in blind climbing mode, the received instructions are screened in the preset stair size table to obtain target stair size information, and the swing height and swing length of the foot end of at least one leg from the first step lifting to falling on the second step in the first swing phase are determined according to the target stair size information;
[0140] The blind climbing mode specifically refers to that the robot realizes climbing up and down the stairs without the aid of sensor technology and visual information. In the blind climbing mode, the robot cannot use external environment information to realize the judgment of climbing up or down the stairs, but when the robot is in the climbing up or down the stairs scene, the body will tilt, therefore, corresponding to the above blind climbing mode, the application also proposes an adaptive judgment method for the robot climbing up or down the stairs in the blind climbing mode: the pitch angle between the plane of the supporting leg of the robot and the horizontal plane of the ground is calculated to determine whether the robot is currently in the climbing up the stairs scene or the climbing down the stairs scene. When the pitch angle between the plane of the supporting leg and the horizontal plane is greater than a preset angle θ (for example, 15°), it is determined that the robot is in the climbing up the stairs scene, at this time, the robot receives the climbing up the stairs instruction, and adopts the climbing up the stairs strategy corresponding to the embodiment. Figure 2-a When the pitch angle is less than -a preset angle θ (for example, -15°), it is determined that the robot is in the climbing down the stairs scene, at this time, the robot receives the climbing down the stairs instruction, and adopts the climbing down the stairs strategy corresponding to the embodiment. Figure 3-a The climbing down the stairs strategy corresponding to the embodiment.
[0141] Specifically, taking the trot double-leg supporting gait of a quadruped robot as an example, the front and rear legs are always in contact with the ground during movement, and the control unit obtains the plane of the front supporting leg foot_front (x1, y1, z1) and the plane of the rear supporting leg foot_hind (x2, y2, z2). The simplified calculation method of the pitch angle pithc is as follows:
[0142]
[0143] The robot in the blind climbing mode is difficult to cope with the random crossing of obstacles caused by the position of the foot end on the step during the climbing up and down the stairs, but for some standard stairs, especially the stairs in the conventional building, the inclination angle, step height and step width of such stairs are standard sizes based on building specifications, and the preset stair size table stores the relationship between the standard stair inclination angle, step height and step width, therefore, the robot can determine the standard stair inclination angle similar to the calculated pitch angle, then screen the corresponding target stair size information in the preset stair size table according to the standard stair inclination angle, and then determine the swing height and swing length of the foot end according to the target stair size information (step height and step width), so as to realize the climbing up and down the stairs in the blind climbing mode, and the first series of trajectory traction points and the second series of trajectory traction points are used to pull the foot end trajectory, so that the robot can smoothly climb up and down the stairs even in the blind climbing mode.
[0144] 2) If the robot is in vision mode, determining the swing height and swing length of the foot end of the at least one leg in the first swing phase from the first step to the second step according to the vision information of the robot.
[0145] The vision mode of the robot specifically refers to that the robot can obtain vision information through a camera, a laser or an infrared sensor and the like mounted on the robot, and if the robot is in the vision mode, the control unit can directly determine the step height and the step width according to the vision information obtained by the related sensing device, so as to plan the foot end trajectory, and obtain the coordinates of the starting point and the foot landing point of the foot end of the at least one leg in the first swing phase, and then determine the swing height and the swing length of the foot end according to the coordinates of the starting point and the foot landing point, wherein the swing height is the coordinate difference of the starting point and the foot landing point in the vertical direction, and the swing length is the coordinate difference of the starting point and the foot landing point in the horizontal direction.
[0146] III. The robot crossing the obstacle scenario:
[0147] Please refer to Figure 4-a , Figure 4-a Another embodiment of the method for planning the foot end trajectory of the legged robot provided in the present application corresponds to the robot crossing the obstacle scenario, and the method comprises the following steps:
[0148] 401. When the obstacle is sensed, the attribute information of the obstacle is determined, and the attribute information includes shape and size information;
[0149] When the sensing unit of the robot senses the obstacle, the obstacle in the present application specifically refers to an obstacle that can be crossed by the robot, such as a threshold, a stone and the like, and the control unit determines the attribute information of the obstacle according to the sensing information of the sensing unit, including the shape and size information of the obstacle, for example, the control unit determines the shape and size information of the obstacle according to the vision information (ultrasonic wave, infrared, laser and the like) of the robot.
[0150] 402. It is judged whether the preset trajectory switching condition is met according to the attribute information, and if yes, step 403 is executed;
[0151] The control unit judges whether the preset trajectory switching condition is met according to the attribute information of the obstacle, and the purpose is to determine whether the robot has the possibility of knocking when crossing the obstacle according to the original foot end trajectory, and if there is the possibility of knocking, it is determined that the preset trajectory switching condition is met.
[0152] In some specific embodiments, the preset trajectory switching condition can be that the original foot end trajectory intersects with the obstacle, that is, the control unit determines whether the original foot end trajectory intersects with the obstacle according to the attribute information of the obstacle, if there is no intersection, the original foot end trajectory is controlled; if there is intersection, it is determined that the preset trajectory switching condition is met, and step 403 is continued. This is because if there is intersection between the original foot end trajectory and the obstacle, the robot will inevitably collide with the obstacle during the process of stepping over the obstacle, so the subsequent step of intervening in the original foot end trajectory needs to be performed to ensure that the robot can smoothly step over the obstacle.
[0153] In some specific embodiments, the preset trajectory switching condition can be that the original foot end trajectory intersects with the obstacle, that is, the control unit determines whether the original foot end trajectory intersects with the obstacle according to the attribute information of the obstacle, if there is no intersection, the original foot end trajectory is controlled; if there is intersection, it is determined that the preset trajectory switching condition is met, and step 403 is continued. This is because if there is intersection between the original foot end trajectory and the obstacle, the robot will inevitably collide with the obstacle during the process of stepping over the obstacle, so the subsequent step of intervening in the original foot end trajectory needs to be performed to ensure that the robot can smoothly step over the obstacle.
[0154] 403、According to the attribute information, determine the swing height and swing length of the foot end of at least one leg from the starting point to the foot-falling point in the second swing phase, the starting point being the position of the foot end of the supporting leg in the second supporting phase, the second supporting phase and the second swing phase being continuous in time, and the second supporting phase being earlier than the second swing phase;
[0155] The walking cycle of the legged robot refers to the time elapsed from the time when the foot end of a leg of the robot lands to the time when the foot end again lands. In a single walking cycle, the foot end trajectory mainly includes two stages. One stage is the time period during which the foot end contacts the ground to generate force, which is referred to as the supporting stage or the supporting phase, and refers to the continuous phase change process of the leg from the time when the foot end lands to the time when the foot end again lifts off the ground. The other stage is the time period during which the foot end swings in the air, which is referred to as the swing stage or the swing phase, and refers to the continuous phase change process of the leg from the time when the foot end lifts off the ground to the time when the foot end lands after stepping. In the process of walking, the gait of each leg of the robot switches between the supporting phase and the swing phase.
[0156] When the control unit determines that the preset trajectory switching condition is met, the swing height and the swing length of the foot end of at least one leg from a starting point to a landing point are obtained according to the attribute information of the obstacle, the foot end is lifted from the starting point, crosses the obstacle through the second swing phase, and then falls at the landing point. The swing height and the swing length can be determined according to the coordinates of the starting point and the coordinates of the landing point, wherein the coordinates of the starting point are the coordinates before the foot end crosses the obstacle, the coordinates of the landing point are the coordinates after the foot end crosses the obstacle, the swing height is the coordinate difference of the starting point and the landing point in the vertical direction, which is related to the height of the obstacle, and the swing length is the coordinate difference of the starting point and the landing point in the horizontal direction, which is related to the width of the obstacle.
[0157] 404、According to the swing height and the swing length, a third series of trajectory traction points corresponding to the foot end are determined;
[0158] The control unit determines the third series of trajectory traction points of the foot end of the support leg according to the determined swing height and swing length, and the third series of trajectory traction points correspond to the scene of the robot crossing the obstacle.
[0159] The third series of trajectory traction points have two cases, a first combination of traction points and a second combination of traction points, wherein the first combination of traction points includes at least one third foot end lifting and retracting traction point, at least one third foot end forward swing traction point, and at least one third foot end landing and retracting traction point; the second combination of traction points includes at least one third foot end lifting and retracting traction point and at least one third foot end forward swing traction point; the second combination of traction points is different from the first combination of traction points in that there is no third foot end landing and retracting traction point, because if there is enough space in front of the foot end when it lands, the foot end does not need to retract when it lands, and the second combination of traction points can be selected.
[0160] The third foot end lifting and retracting traction point is used to retract the foot end during the lifting of the foot end to prevent the foot end from colliding with the obstacle during the lifting process; the third foot end forward swing traction point is used to swing the foot end forward and bypass the edge of the obstacle after the lifting height of the foot end exceeds the obstacle; and the third foot end landing and retracting traction point is used to retract the foot end during the landing of the foot end to avoid the foot end from colliding with the edge of the obstacle during the landing process.
[0161] Further, due to the large difference in the control performance of different legged robots, the execution ability of the planned foot trajectory is also different. In order to enable most robots to execute the planned trajectory, the speed and acceleration characteristics of the trajectory need to be more gentle. Based on the above reasons, in some specific embodiments, the third series of trajectory traction points can further include at least one third foot end speed traction point, which is used to reduce the speed and / or acceleration of the foot end when the foot end is less than a preset distance from the ground, so as to reduce the impact force when the foot end lands, thereby ensuring that the foot end lands stably.
[0162] 405、According to the third series of trajectory traction points, a third foot end trajectory is generated, and the foot end is controlled to cross the obstacle according to the third foot end trajectory.
[0163] The control unit generates a third foot end trajectory according to the third series of trajectory traction points corresponding to the obstacle crossing scenario, i.e., at least one third foot end lifting and retracting traction point, at least one third foot end swinging forward traction point, and at least one third foot end landing and retracting traction point, or at least one third foot end lifting and retracting traction point and at least one third foot end swinging forward traction point. It should be noted that the trajectory traction points in this application only play a traction role on the foot end trajectory, and the actual trajectory of the foot end does not necessarily pass through these trajectory traction points. The purpose of these trajectory traction points is to change the trajectory. The third foot end trajectory generated by the third series of trajectory traction points can avoid collision with the obstacle during the process of crossing the obstacle, so that the robot can smoothly complete the action of crossing the obstacle.
[0164] For details, please refer to Figure 4-b , Figure 4-b The third series of trajectory traction points corresponding to the obstacle crossing scenario of the robot and the third foot end trajectory are shown in the figure, wherein c1(x1, y1) is the starting point;
[0165] c2(x1-0.1*L, y1+0.3*h) and c3(x1-0.2*L, y1+1.1*h) correspond to the third foot end lifting and retracting traction point in this embodiment, which is used to make the foot end have a backward displacement in the x direction during the lifting process, so as to ensure that the foot end is retracted and avoids collision with the obstacle during the lifting process;
[0166] c4(x1, y1+1.2*h), c5(x1+1*L, y1+1.2*h), and c6(x1+1.2*L, y1+1.1*h) correspond to the third foot end swinging forward traction point in this embodiment, which is used to swing the foot end forward and bypass the edge of the obstacle during the lifting process of the foot end, so as to ensure that the foot end does not collide with the edge of the obstacle during the swinging process;
[0167] c7(x1+1.1*L, y1+0.3*h) corresponds to the third foot end falling after the traction point in the embodiment, the purpose is to ensure that the foot end does not knock the edge of the obstacle during the falling process;
[0168] c8(x1+L, y1) is the foot falling point.
[0169] The foot end speed traction point is specifically set by setting 1 to 3 speed traction points near the foot falling point or at the foot falling point. Taking the setting of 2 speed traction points as an example for description: 2 control points c8_2, c8_3 are added near or at c8, so that the speed and acceleration of the foot end when reaching the foot falling point can be close to or reduced to 0, so that the foot end can land smoothly after crossing the obstacle, and the robot can be more stable for the control and tracking of the entire trajectory.
[0170] It should be noted that the first foot end trajectory, the second foot end trajectory and the third foot end trajectory in the present application are all parameterized descriptions based on the leg swing phase information:
[0171]
[0172]
[0173] wherein is an n-order Bessel polynomial; has n+1 trajectory traction points; C k is the kth trajectory traction point, wherein k∈{0,...8}. In the vertical plane of the leg swing, the x-axis is forward, and the y-axis is upward or downward. The leg swing planning plane is established, and the step information or obstacle information faced by the leg swing is used to design the trajectory traction point to guide the foot end trajectory to deal with the obstacle. For different up and down steps and crossing obstacle scenes, a variable number of trajectory traction points are designed, and then the Bessel leg swing curve of the robot is generated based on the designed trajectory traction points, i.e. the first foot end trajectory, the second foot end trajectory and the third foot end trajectory in the present application, so that the robot can smoothly go up and down the steps and cross the obstacle, reduce the knocking, and improve the stability of the robot in the process of going up and down the steps and crossing the obstacle.
[0174] The method of foot end trajectory planning of the foot-type robot in the present application is described above, and the device for foot end trajectory planning of the foot-type robot provided in the present application is described below.
[0175] The present application also provides an embodiment of a device for foot end trajectory planning of a foot-type robot, which comprises:
[0176] a sensing unit 103 and a control unit 110;
[0177] The sensing unit 103 is configured to:
[0178] determining a swing height and a swing length of the foot end of the at least one leg from the first swing phase, from the first step being lifted up to falling to the second step, the first step being a step on which the foot end of the supporting leg is located in the first support phase, the first support phase and the first swing phase being continuous in time, and the first support phase being earlier than the first swing phase;
[0179] The control unit 110 is configured to:
[0180] if the tread of the second step is higher than the tread of the first step, determining a first series of trajectory traction points corresponding to the foot end according to the swing height and the swing length;
[0181] generating a first foot end trajectory according to the first series of trajectory traction points, and controlling the foot end to land on the second step according to the first foot end trajectory;
[0182] if the tread of the second step is lower than the tread of the first step, determining a second series of trajectory traction points corresponding to the foot end according to the swing height and the swing length;
[0183] generating a second foot end trajectory according to the second series of trajectory traction points, and controlling the foot end to land on the second step according to the second foot end trajectory.
[0184] In the device of the embodiment, the sensing unit 103 and the control unit 110 are as shown in Figure 1-a , the functions of the units correspond to the steps in the method embodiments shown in Figure 2-a and Figure 3-a , and will not be described here.
[0185] The application further provides another embodiment of a device for foot end trajectory planning of a foot robot, which comprises a sensing unit 103 and a control unit 110.
[0186] The sensing unit 103 is configured to:
[0187] when an obstacle is sensed, determining attribute information of the obstacle, the attribute information comprising shape and size information;
[0188] The control unit 110 is configured to:
[0189] judging whether a preset trajectory switching condition is met according to the attribute information;
[0190] The sensing unit 103 is further configured to:
[0191] When the control unit determines that the preset trajectory switching condition is met according to the attribute information, the swing height and the swing length of the foot end of the at least one leg from the starting point to the foot-falling point in the second swing phase are determined according to the attribute information, the starting point is the position of the foot end of the supporting leg in the second supporting phase, the second supporting phase and the second swing phase are continuous in time, and the second supporting phase is earlier than the second swing phase;
[0192] The control unit 110 is further configured to:
[0193] determine a third series of trajectory traction points corresponding to the foot end according to the swing height and the swing length;
[0194] generate a third foot end trajectory according to the third series of trajectory traction points, and control the foot end to cross the obstacle according to the third foot end trajectory.
[0195] In the device of the embodiment, the sensing unit 103 and the control unit 110 are as shown in Figure 1-a , the functions of each unit correspond to the steps in the method embodiment described above, and thus will not be described herein. Figure 4-a
[0196] The application also provides a foot-type robot, please refer to Figure 5 , Figure 5 An embodiment of the foot-type robot provided by the application comprises:
[0197] a processor 501, a memory 502, an input and output unit 503, and a bus 504;
[0198] The processor 501 is connected with the memory 502, the input and output unit 503, and the bus 504;
[0199] The memory 502 stores a program, and the processor 501 invokes the program to execute any of the above foot-type robot foot end trajectory planning methods.
[0200] The application also relates to a computer readable storage medium, and the computer readable storage medium stores a program, characterized in that when the program runs on a computer, the computer executes any of the above foot-type robot foot end trajectory planning methods.
[0201] Those skilled in the art can clearly understand that, for the convenience and brevity of description, the specific working processes of the above-described system, device and unit can refer to the corresponding processes in the foregoing method embodiments, and thus will not be described herein.
[0202] In several embodiments provided in the present application, it should be understood that the disclosed system, device and method can be implemented in other manners. For example, the described device embodiments are merely schematic. The division of the units is merely a logical function division. There can be another division manner for the actual implementation, for example, multiple units or components can be combined or integrated into another system, or some features can be ignored or not executed. In addition, the displayed or discussed mutual couplings or direct couplings or communication connections between the units can be indirect couplings or communication connections through some interfaces, devices or units, and can be electrical, mechanical or in other forms.
[0203] The units described as separate components can or can not be physically separate, and the components shown as units can or can not be physical units, i.e., can be located in one place, or can be distributed on multiple network units. Some or all of the units can be selected according to actual needs to achieve the purpose of the embodiment.
[0204] In addition, each functional unit in the various embodiments of the present application can be integrated into a processing unit, or each unit can be a physically independent unit, or two or more units can be integrated into a unit. The integrated unit can be implemented in the form of hardware or in the form of a software functional unit.
[0205] The integrated unit, if implemented in the form of a software functional unit and sold or used as an independent product, can be stored in a computer readable storage medium. Based on this understanding, the technical solutions of the present application, the essential part or the whole or part of the technical solutions that make contributions to the prior art can be embodied in the form of a software product. The computer software product is stored in a storage medium, and includes a plurality of instructions for causing a computer device (which can be a personal computer, a server, or a network device, etc.) to execute all or part of the steps of the method described in the various embodiments of the present application. The aforementioned storage medium includes: a U disk, a mobile hard disk, a read-only memory (ROM, read-only memory), a random access memory (RAM, random access memory), a magnetic disk or an optical disk, and various program code storage media.
Claims
1. A method for foot trajectory planning of a foot robot, characterized in that, The method comprises: determining a swing height and a swing length of a foot end of at least one leg from a first swing phase, from a first step being lifted to falling to a second step, the first step being a step where the foot end of the supporting leg is located in a first supporting phase, the first supporting phase and the first swing phase being continuous in time, and the first supporting phase being earlier than the first swing phase; if the tread of the second step is higher than the tread of the first step, determining a first series of trajectory traction points corresponding to the foot end according to the swing height and the swing length; generating a first foot end trajectory according to the first series of trajectory traction points, and controlling the foot end to fall on the second step according to the first foot end trajectory, the first series of trajectory traction points being used to pull the shape of the first foot end trajectory to avoid the kick surface and the edge of the second step, and the first foot end trajectory does not necessarily coincide with each point in the first series of trajectory traction points; if the tread of the second step is lower than the tread of the first step, determining a second series of trajectory traction points corresponding to the foot end according to the swing height and the swing length; generating a second foot end trajectory according to the second series of trajectory traction points, and controlling the foot end to fall on the second step according to the second foot end trajectory, the second series of trajectory traction points being used to pull the shape of the second foot end trajectory to avoid the edge of the first step and the second step, and the second foot end trajectory does not necessarily coincide with each point in the second series of trajectory traction points.
2. The method of claim 1, wherein, The first series of trajectory traction points comprises at least one first foot end rear collection traction point and at least one first foot end front swing traction point; The at least one first foot end rear collection traction point is used to pull the foot end to rear collection during the lifting of the foot end, so as to prevent the foot end from colliding with the kick surface of the second step during the lifting; The at least one first foot end front swing traction point is used to pull the foot end to front swing and bypass the edge of the second step after the lifting height of the foot end exceeds the tread height of the second step; The second series of trajectory traction points comprises at least one second foot end front swing traction point and at least one second foot end rear collection traction point; The at least one second foot end front swing traction point is used to pull the foot end to front swing and bypass the edge of the first step during the lifting of the foot end; The at least one second foot end rear collection traction point is used to pull the foot end to rear collection during the falling of the foot end, so as to prevent the foot end from colliding with the edge of the second step during the falling.
3. The method of claim 2, wherein, The first series of trajectory traction points further comprises at least one first foot end speed traction point, and the at least one first foot end speed traction point is used to pull the speed and / or acceleration of the foot end to fall on the tread of the second step when the distance between the foot end and the tread of the second step is less than a preset distance; The second series of trajectory traction points further comprises at least one second foot end speed traction point, and the at least one second foot end speed traction point is used to pull the speed and / or acceleration of the foot end to fall on the tread of the second step when the distance between the foot end and the tread of the second step is less than a preset distance.
4. The method according to claim 2 or 3, characterized in that, Before the determining the first series of trajectory traction points corresponding to the foot end according to the swing height and swing length, the method further comprises: judging whether the original foot end trajectory intersects with the kick surface or the tread surface of the second step; the determining the first series of trajectory traction points corresponding to the foot end according to the swing height and swing length comprises: if there is intersection, determining the first series of trajectory traction points corresponding to the foot end according to the swing height and swing length; or, Before the determining the second series of trajectory traction points corresponding to the foot end according to the swing height and swing length, the method further comprises: judging whether the original foot end trajectory intersects with the kick surface or the tread surface of the first step; the determining the second series of trajectory traction points corresponding to the foot end according to the swing height and swing length comprises: if there is intersection, determining the second series of trajectory traction points corresponding to the foot end according to the swing height and swing length.
5. The method according to claim 2 or 3, characterized in that, Before the determining the first series of trajectory traction points corresponding to the foot end according to the swing height and swing length, the method further comprises: judging whether the distance between the foot end and the kick surface of the second step is less than a preset distance; the determining the first series of trajectory traction points corresponding to the foot end according to the swing height and swing length comprises: if less than, determining the first series of trajectory traction points corresponding to the foot end according to the swing height and swing length.
6. The method of claim 1, wherein, The determining the swing height and swing length of the foot end of at least one leg in the first swing phase from lifting up from the first step to landing on the second step comprises: if the robot is in blind climbing mode, receiving instructions to filter target stair size information in a preset stair size table, and determining the swing height and swing length of the foot end of at least one leg in the first swing phase from lifting up from the first step to landing on the second step according to the target stair size information; or, if the robot is in visual mode, determining the swing height and swing length of the foot end of at least one leg in the first swing phase from lifting up from the first step to landing on the second step according to the visual information of the robot.
7. A method for foot trajectory planning of a foot robot, characterized in that, The method comprises: when the obstacle is sensed, determining attribute information of the obstacle, the attribute information comprising shape and size information; judging whether a preset trajectory switching condition is met according to the attribute information; if yes, determining the swing height and swing length of the foot end of at least one leg in the second swing phase from the starting point to the landing point according to the attribute information, the starting point being the position of the foot end of the supporting leg in the second supporting phase, the second supporting phase and the second swing phase being continuous in time, and the second supporting phase being earlier than the second swing phase; determining a third series of trajectory traction points corresponding to the foot end according to the swing height and swing length; generating a third foot end trajectory according to the third series of trajectory traction points, and controlling the foot end to cross the obstacle according to the third foot end trajectory, the third series of trajectory traction points being used to generate traction effect on the shape of the third foot end trajectory, and the third foot end trajectory not necessarily coinciding with each point in the third series of trajectory traction points.
8. The method of claim 7, wherein, The third series of trajectory traction points comprises a first combined traction point and a second combined traction point; The first combined traction points include at least one third foot end lifting rear traction point, at least one third foot end front swinging traction point and at least one third foot end falling rear traction point; The second combined traction points include at least one third foot end lifting rear traction point and at least one third foot end front swinging traction point; The at least one third foot end lifting rear traction point is used to pull the foot end rearward during the foot end lifting process to prevent the foot end from colliding with the obstacle during the lifting process; The at least one third foot end front swinging traction point is used to pull the foot end to swing forward and bypass the edge of the obstacle after the foot end lifting height exceeds the obstacle; The at least one third foot end falling rear traction point is used to pull the foot end rearward during the foot end falling process to prevent the foot end from colliding with the edge of the obstacle during the falling process.
9. The method according to claim 7 or 8, characterized in that, The determining whether the preset trajectory switching condition is met according to the attribute information includes: determining whether the original foot end trajectory intersects with the obstacle according to the attribute information, and if yes, determining that the preset trajectory switching condition is met; or, determining whether the distance between the starting point in the original foot end trajectory and the obstacle is less than a preset distance according to the attribute information, and if yes, determining that the preset trajectory switching condition is met.
10. A device for planning the trajectory of a legged robot's foot, characterized in that, The device includes a sensing unit and a control unit; The sensing unit is used to: determine the swing height and swing length of the foot end of at least one leg in a first swing phase from lifting from a first step to falling to a second step, the first step being the step on which the foot end of the supporting leg is located in a first supporting phase, the first supporting phase and the first swing phase being continuous in time, and the first supporting phase being earlier than the first swing phase; The control unit is used to: if the tread surface of the second step is higher than that of the first step, determining a first series of trajectory traction points corresponding to the foot end according to the swing height and swing length; generating a first foot end trajectory according to the first series of trajectory traction points, and controlling the foot end to fall on the second step according to the first foot end trajectory, the first series of trajectory traction points being used to pull the shape of the first foot end trajectory to avoid the kick surface and edge of the second step, and the first foot end trajectory not necessarily coinciding with each point in the first series of trajectory traction points; if the tread surface of the second step is lower than that of the first step, determining a second series of trajectory traction points corresponding to the foot end according to the swing height and swing length; generating a second foot end trajectory according to the second series of trajectory traction points, and controlling the foot end to fall on the second step according to the second foot end trajectory, the second series of trajectory traction points being used to pull the shape of the second foot end trajectory to avoid the edges of the first step and the second step, and the second foot end trajectory not necessarily coinciding with each point in the second series of trajectory traction points.
11. An apparatus for foot trajectory planning of a foot robot, the apparatus comprising: The device includes a sensing unit and a control unit; The sensing unit is used to: when sensing an obstacle, determining attribute information of the obstacle, the attribute information including shape and size information; The control unit is used to: determine whether a preset trajectory switching condition is met according to the attribute information; The sensing unit is further configured to: when the control unit determines that the preset trajectory switching condition is met according to the attribute information, determine, according to the attribute information, a swing height and a swing length of a foot end of at least one leg from a starting point to a foot landing point in a second swing phase, the starting point being a position of the foot end of the supporting leg in a second supporting phase, the second supporting phase and the second swing phase being continuous in time, and the second supporting phase being earlier than the second swing phase; The control unit is further configured to: determine a third series of trajectory traction points corresponding to the foot end according to the swing height and the swing length; generate a third foot end trajectory according to the third series of trajectory traction points, and control the foot end to cross the obstacle according to the third foot end trajectory, the third series of trajectory traction points being used to generate traction effect on the shape of the third foot end trajectory, and the third foot end trajectory not necessarily coinciding with each point in the third series of trajectory traction points.
12. A legged robot characterized by comprising: The foot-type robot comprises: a processor, a memory, an input / output unit, and a bus; the processor is connected with the memory, the input / output unit, and the bus; the memory stores a program, and the processor invokes the program to execute the method in any one of claims 1 to 6 or claims 7 to 9.
Citation Information
Patent Citations
Method for reducing shaking of foot type robot and related device
CN114137992A
Leg swing trajectory
CN114401886A
Leg bumping processing method for foot type robot and foot type robot
CN114633826A