Multi-legged robot and its touchdown positioning method

The touchdown positioning method for multi-legged robots addresses the challenge of landing on irregular terrain and maintaining stability by calculating new touchdown positions to avoid obstacles, ensuring stable movement.

JP2025536069AActive Publication Date: 2025-10-30RAINBOW ROBOTICS INC
View PDF 8 Cites 0 Cited by

Patent Information

Application Number
JP2025527104
Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
Priority Date
2022-11-14
Filing Date
2023-09-14
Publication Date
2025-10-30
Estimated Expiration
2043-09-14

AI Technical Summary

Technical Problem

Multi-legged robots face challenges in landing their legs at appropriate positions on irregular terrain and maintaining stability when external disturbances occur during leg swing.

Method used

A touchdown positioning method using a computing device to detect disturbances, calculate new touchdown positions based on robot dynamics, and identify and avoid step obstacle regions by determining a third touchdown position outside the obstacle area.

Benefits of technology

Enables multi-legged robots to land legs appropriately on uneven terrain and maintain stability even when disturbances occur, preventing balance loss and crashes.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 2025536069000001_ABST
    Figure 2025536069000001_ABST
Patent Text Reader

Abstract

A multi-legged robot and a touchdown positioning method thereof are provided. The touchdown positioning method for a robot is performed by a computing device and includes the steps of: detecting a disturbance while a first leg of the robot is swinging toward a first touchdown position; calculating a second touchdown position based on a dynamic state of the robot in response to the detected disturbance; identifying a step obstacle region based on topographical information of the robot and determining whether the second touchdown position belongs to the step obstacle region; and, if the second touchdown position belongs to the step obstacle region, determining a third touchdown position outside the step obstacle region as the touchdown position of the first leg.
Need to check novelty before this filing date? Find Prior Art

Description

[Technical Field]

[0001] The present invention relates to a robot having multiple legs and a touchdown positioning method thereof, and more particularly to a robot having multiple legs and a touchdown positioning method thereof that allows the legs to land at appropriate positions on the ground when the robot swings and starts up. [Background technology]

[0002] A robot is a multi-functional manipulator designed to perform specific actions and tasks through programmed variable motions. Robots are widely used in a variety of industries, including manufacturing, transportation, exploration, medical care, surveillance, and patrol.

[0003] A robot can be configured to be physically fixed in a specific position, like an industrial robot arm, or it can be configured to be mobile by having one or more legs or wheels. Mobile robots can be used in a wider range of applications than fixed robots.

[0004] A typical example of a mobile robot is a multi-legged robot with one or more legs. Multi-legged robots must avoid stepping on or colliding with obstacles as much as possible while moving, and therefore require walking control technology to stably maintain the robot's balance and speed while avoiding contact with obstacles. Summary of the Invention [Problem to be solved by the invention]

[0005] A technical problem to be solved by the embodiments of the present invention is to provide a robot that can walk and move by landing its legs at appropriate positions on the ground even on irregular terrain, and a touchdown positioning method thereof.

[0006] Another technical problem to be solved by the embodiments of the present invention is to provide a robot and a touchdown positioning method thereof that can stably maintain a posture by landing a swinging leg at an appropriate position even when an external disturbance acts on the swinging leg.

[0007] The technical problems of the present invention are not limited to the technical problems mentioned above, and other technical problems not mentioned will be clearly understood by those skilled in the art of the present invention from the following description. [Means for solving the problem]

[0008] To solve the above technical problems, a touchdown positioning method for a robot according to an embodiment of the present invention is performed by a computing device and includes the steps of: detecting a disturbance while a first leg of the robot is swinging toward a first touchdown position; calculating a second touchdown position based on a dynamic state of the robot in response to the detection of the disturbance; identifying a step obstacle region based on terrain information of the robot and determining whether the second touchdown position belongs to the step obstacle region; and, if the second touchdown position belongs to the step obstacle region, determining a third touchdown position outside the step obstacle region as the touchdown position of the first leg.

[0009] In one embodiment, the determining step may include identifying an area where a difference in height from the lifting position of the first leg is equal to or greater than a first critical value as the stepping obstacle area.

[0010] In one embodiment, the determining step may include identifying an area having a slope equal to or greater than a second critical value as the stepping obstacle area.

[0011] In one embodiment, the determining step can selectively identify an area where the height difference from the first touchdown position is equal to or greater than a third critical value as the stepping obstacle area depending on the swing state of the first leg.

[0012] In one embodiment, if the swing state is in a touchdown phase, the determining step may identify an area where a height difference from the first touchdown position is equal to or greater than a third critical value as the step-on obstacle area.

[0013] In one embodiment, if the swing state is in a lifting phase, the determining step may not identify an area where the height difference from the first touchdown position is equal to or greater than the third critical value as the step-on obstacle area.

[0014] In one embodiment, the determining step can include calculating the third touchdown position based on the first touchdown position, the second touchdown position, and the stepping obstacle area.

[0015] In one embodiment, the step of calculating the third touchdown position may include a step of identifying points that do not belong to the step-in obstacle area among points where a line connecting the first touchdown position and the second touchdown position is projected onto the ground.

[0016] In one embodiment, the step of calculating the third touchdown position may calculate, as the third touchdown position, a point among the identified points that is farther away from the stepping obstacle area by a fourth critical value or more and is closest to the second touchdown position.

[0017] To solve the above technical problems, a multi-legged robot according to an embodiment of the present invention includes a processor, a memory for loading a computer program executed by the processor, and a storage for storing the computer program. The computer program may include instructions for executing the following operations: detecting a disturbance while a first leg of the robot swings toward a first touchdown position; calculating a second touchdown position based on a dynamic state of the robot in response to the detection of the disturbance; identifying a step obstacle region based on terrain information of the robot and determining whether the second touchdown position falls within the step obstacle region; and, if the second touchdown position falls within the step obstacle region, determining a third touchdown position outside the step obstacle region as the touchdown position of the first leg. [Effects of the Invention]

[0018] According to the embodiment of the present invention, a robot capable of walking and moving by landing its legs at appropriate positions on the ground even on irregular terrain, and a touchdown positioning method thereof, are provided.

[0019] Furthermore, even if a disturbance occurs while the robot leg is swinging, the swinging leg can land in an appropriate position and maintain a stable posture.

[0020] The technical effects of the present invention are not limited to the above-mentioned technical effects, and other technical effects not mentioned will be clearly understood by those skilled in the art from the following description. [Brief explanation of the drawings]

[0021] [Figure 1] 1 is a schematic diagram illustrating an exemplary configuration of a multi-legged robot, in accordance with an embodiment of the present invention; FIG. [Figure 2] FIG. 10 is a diagram for supplementary explanation of the swing period when the robot is walking. [Figure 3]1 is a flowchart illustrating a touchdown positioning method for a robot, in accordance with one embodiment of the present invention. [Figure 4] 4 is a diagram for supplementing the embodiment of FIG. 3 by giving a specific example. [Figure 5] 4 is a diagram for supplementing the embodiment of FIG. 3 by giving a specific example. [Figure 6] 4 is a diagram for supplementing the embodiment of FIG. 3 by giving a specific example. [Figure 7] 4 is a diagram for supplementing the embodiment of FIG. 3 by giving a specific example. [Figure 8] 4 is a flowchart showing a more specific embodiment of step S400 of FIG. 3. [Figure 9] 9 is a diagram for supplementing the embodiment of FIG. 8 by giving a specific example. [Figure 10] 9 is a diagram for supplementing the embodiment of FIG. 8 by giving a specific example. [Figure 11] 9 is a diagram for supplementing the embodiment of FIG. 8 by giving a specific example. [Figure 12] 9 is a diagram for supplementing the embodiment of FIG. 8 by giving a specific example. [Figure 13] 9 is a diagram for supplementing the embodiment of FIG. 8 by giving a specific example. [Figure 14] 4 is a flowchart showing a more specific embodiment of step S500 of FIG. 3. [Figure 15] 15 is a flowchart showing a more specific embodiment of step S510 of FIG. 14. [Figure 16] 16 is a diagram for supplementary explanation of the embodiment of FIG. 15 by giving a specific example. [Figure 17] 16 is a diagram for supplementary explanation of the embodiment of FIG. 15 by giving a specific example. [Figure 18] 16 is a diagram for supplementary explanation of the embodiment of FIG. 15 by giving a specific example. [Figure 19] 1 is a block diagram illustrating an exemplary hardware configuration of a computing device in which various embodiments of the present invention may be implemented. DETAILED DESCRIPTION OF THE INVENTION

[0022] Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings. Advantages and features of the present invention, as well as methods for achieving them, will become apparent from the following detailed description of the embodiments together with the accompanying drawings. However, the technical concept of the present invention is not limited to the following embodiments and may be embodied in various different forms. The following embodiments are provided merely to complete the technical concept of the present invention and to fully convey the scope of the present invention to those skilled in the art. The technical concept of the present invention is defined only by the scope of the claims.

[0023] In assigning reference numerals to components in each drawing, it should be noted that the same components are assigned the same numerals as much as possible, even if they are displayed in different drawings. Furthermore, in describing the present invention, if a detailed description of related known structures or functions is deemed to obscure the gist of the present invention, the detailed description thereof will be omitted.

[0024] Unless otherwise defined, all terms (including technical and scientific terms) used herein have a meaning that can be commonly understood by a person of ordinary skill in the art to which the present invention belongs. Furthermore, terms defined in commonly used dictionaries are not interpreted ideally or excessively unless explicitly defined otherwise. The terms used herein are intended to describe the embodiments and are not intended to limit the present invention. In this specification, the singular form includes the plural form unless otherwise specified in the text.

[0025] Furthermore, in describing components of the present invention, terms such as first, second, A, B, (a), (b), etc. may be used. These terms are merely used to distinguish the component from other components, and do not limit the nature, order, or sequence of the components. When a component is described as being "coupled," "coupled," or "connected" to another component, it should be understood that the component may be directly coupled or connected to the other component, but that other components may also be "coupled," "coupled," or "connected" between each component.

[0026] Hereinafter, some embodiments of the present invention will be described in detail with reference to the accompanying drawings.

[0027] Figure 1 is a schematic diagram showing an exemplary form of a robot having multiple legs according to an embodiment of the present invention. Referring to Figure 1, robot 100 is a robot capable of walking and may be a humanoid robot having two legs as shown in Figure 1(a) or a dog-horse type robot having four legs as shown in Figure 2(b).

[0028] However, the scope of the present invention is not limited to the robot form shown in Fig. 1. For example, the robot 100 may have three, five, or more legs and may have various shapes other than a humanoid or dog-horse shape.

[0029] 1, the robot 100 includes a body 110 and two or more legs 120. Each leg 120 is coupled to the body 110 and may have an upper and lower portion separated by an ankle joint.

[0030] In one embodiment, the robot 100 may further include one or more appendages, such as an articulated arm, disposed on the body 110 and configured to move relative to the body 110. The end of the articulated arm may be provided with one or more actuators for capturing / grasping an object.

[0031] The robot 100 may include a vision system with an imaging sensor or camera, and each sensor or camera collects image data or sensor data about the environment and terrain surrounding the robot 100. The vision system can pan or tilt the camera to move the field of view of the robot 100 in any direction. The image data or sensor data collected by the camera or sensor of the vision system may be provided to a central processing unit of the robot 100.

[0032] The robot 100 walks by swinging each leg 120 along a pre-planned trajectory. The swing cycle of the leg 120 includes a lifting phase and a touchdown phase. The lifting phase refers to the section from lifting the foot off the ground to the highest point of the swing trajectory, and the touchdown phase refers to the section from the highest point of the swing trajectory until the leg descends and lands (or touches down) on the ground.

[0033] This will be further explained with reference to FIG.

[0034] 2 shows the leg swing cycle when the robot walks. The leg swing cycle begins at time t0 when the leg is in a state of being in a ground state, passes through time t1 when the leg swings and reaches the highest point, and ends at time t2 when the leg lands on the ground again.

[0035] At that time, the section from t0 to t1, in which the leg is lifted from the ground until it reaches the highest point, is the lifting phase, and the section from t1 to t2, in which the leg descends from the highest point until it lands on the ground again, is the touchdown phase.

[0036] 3 is a flowchart illustrating a touchdown positioning method for a robot according to an embodiment of the present invention. The touchdown positioning method of FIG. 3 can be performed by the robot 100 of FIG. 1. Therefore, if the performing entity is not specified in the following steps, it is assumed that the performing entity is the robot 100.

[0037] In step S100, the swing of the first leg of the robot toward a first touchdown position is started. Here, the first touchdown position refers to a position on the ground that is pre-planned as the next position where the first leg of the robot will land. In this case, the first leg may be any one of the legs 120 shown in FIG. 1.

[0038] This will be further explained with reference to Figure 4. Figure 4 shows a terrain including two regions 10 and 20 with different heights. A slope 30 may be formed between the first region 10 and the second region 20.

[0039] At this time, it is assumed that the robot walks from the second area 20 to the first area 10. For this walking movement, the robot can establish its own walking plan by lifting the first leg placed in the second area 20, moving the first leg along a pre-planned swing trajectory, and placing it at a specific position in the first area 10, here, the first touchdown position A.

[0040] In step S200, a disturbance is sensed during the swing of the first leg of the robot toward the first touchdown position.

[0041] While the robot lifts the first leg and swings toward the first touchdown position A according to the gait plan, the robot may sense a disturbance. Here, the disturbance may include an external impact applied to the robot or an operational error of a component inside the robot. The disturbance may affect the gait of the robot depending on its type and magnitude.

[0042] In step S300, a second touchdown position is calculated based on the robot dynamics in response to sensing a disturbance.

[0043] If the sensed disturbance is a minor disturbance that does not affect the robot's walking, the robot can ignore the sensed disturbance and continue walking toward first touchdown position A as pre-planned.

[0044] However, if the detected disturbance affects the robot's walking, the robot needs to re-determine the touchdown position for the first leg based on the detected disturbance in order to maintain a stable posture.

[0045] At this time, the robot calculates the second touchdown position based on its own dynamics as the touchdown position where the first leg will land.

[0046] In one embodiment, the dynamic state may include the posture, position, or state of each joint of the robot, the velocity or acceleration of each component following the joint, the center of gravity of the robot, etc. Specific meanings and types of the dynamic state are well known in the art, and therefore, detailed description thereof will be omitted here.

[0047] A supplementary explanation will be given with reference to Figure 5. Figure 5 shows a second touchdown position B as a touchdown position recalculated based on the dynamic state of the robot.

[0048] If a disturbance of a certain magnitude or greater is detected while the robot is swinging the first leg toward first touchdown position A, continuing to move the first leg toward first touchdown position A may cause the robot's posture to become unstable, which may cause the robot to fall over or other startup problems. Therefore, in such a case, in order to maintain a stable posture of the robot, second touchdown position B is calculated based on the dynamic state of the robot as a new touchdown position for the first leg to land.

[0049] In step S400, a step obstacle region is identified based on the topographical information of the robot, and it is determined whether the second touchdown position belongs to the step obstacle region.

[0050] In one embodiment, the terrain information may be information collected or identified using the vision system described in FIG. 1 and may be information that describes the terrain characteristics of the environment surrounding the robot 100.

[0051] Since second touchdown position B is a position calculated based on the dynamic state of the robot for the purpose of stabilizing the robot's posture, second touchdown position B may be within an obstacle area that the robot must not step into (such as a cliff or manhole). In this case, stepping down with the first leg at second touchdown position B could cause serious problems, such as the robot losing its balance and falling or crashing, so it must be determined whether second touchdown position B belongs to an obstacle area.

[0052] A further explanation will be given with reference to Figure 6. Figure 6 shows a stepping obstacle area 40 identified based on terrain information, along with the second touchdown position B. The stepping obstacle area 40 is a step-avoidance area that the robot must not step into, and may be, for example, an area where the difference in height from the lifting position of the first leg is equal to or greater than a first critical value, an area where the slope of the terrain is equal to or greater than a second critical value, or an area where the difference in height from the first touchdown position A is equal to or greater than a third critical value.

[0053] In this case, the lifting position refers to the position where the first leg lands on the ground just before the swing of the first leg starts, and refers to the position where the lifting (lifting) of the first leg for the swing of the first leg starts. Meanwhile, specific types of the stepping obstacle area 40 and their identification conditions will be described in more detail with reference to FIG. 8 and subsequent figures.

[0054] In this embodiment, it is assumed that the second touchdown position B belongs to the depression obstacle area 40 as shown in FIG.

[0055] In step S500, if the second touchdown position falls within the stepping obstacle area, a third touchdown position outside the stepping obstacle area is finally determined as the touchdown position of the first leg.

[0056] As explained above, when the second touchdown position B is in the stepping obstacle area 40, stepping the first leg onto the second touchdown position B may cause serious problems, such as the robot losing balance and tipping over or crashing.

[0057] Therefore, to avoid this, a predetermined position outside the stepping obstacle area 40 is calculated as the third touchdown position, and the third touchdown position is determined as the final touchdown position where the first leg will land.

[0058] In this regard, a supplementary explanation will be given with reference to Figure 7. Figure 7 shows an example in which, when second touchdown position B belongs to stepping obstacle area 40, a specific point outside stepping obstacle area 40 is calculated as third touchdown position C. In the example of Figure 7, the first leg of the robot 100 moves toward third touchdown position C and lands at third touchdown position C.

[0059] In one embodiment, the third touchdown position C may be a position between the first touchdown position A and the second touchdown position B. A specific method for calculating the third touchdown position C will be described in more detail below with reference to FIG.

[0060] FIG. 8 is a flowchart showing a more specific embodiment of step S400 of FIG. 3. FIG. 8 describes an embodiment relating to a specific method for identifying a step-on obstacle area. In the embodiment of FIG. 8, steps S410 to S440 are described as being performed sequentially, but the scope of the present invention is not limited thereto. For example, the execution procedures of steps S410, S420, and S430 may be switched with each other, or some of steps S410, S420, and S430 may be omitted. Hereinafter, a description will be given with reference to the drawings.

[0061] In step S410, the area where the height difference from the lifting position of the first leg is equal to or greater than a first critical value is identified as a stepping obstacle area.

[0062] As mentioned above, the lifting position is the position where the first leg lands on the ground just before the swing of the first leg begins, and refers to the position where the lifting of the first leg for the swing of the first leg begins.

[0063] Generally, if the difference in height between the lifting position of the first leg of a robot and the position where the first leg touches down is too large, the posture of the robot is likely to be disrupted due to limitations on the swing width of the first leg or instability caused by excessive swing. Therefore, when the robot walks, it is preferable not to step into areas where the difference in height from the lifting position is too large.

[0064] Meanwhile, here, the region where the height difference from the lifting position is equal to or greater than the first critical value includes a region where the height is higher than the lifting position by equal to or greater than the first critical value or a region where the height is lower than the lifting position by equal to or greater than the first critical value.

[0065] For further explanation on this, please refer to FIG.

[0066] 9, there are shown multiple regions 71, 72, and 73 of different heights. The third region 71 is the position where the first leg lands before starting to swing, and includes the first leg's lifting position L. The fourth region 72 is a region that is higher than the third region 71 by a height h1, and the fifth region 73 is a region that is higher than the third region 71 by a height h2.

[0067] At this time, if the first critical value, which is the basis for determining whether a stepping obstacle area exists, is smaller than h1, the fourth area 72 and the fifth area 73 are both identified as stepping obstacle areas.

[0068] As another example, if the first critical value on which the stepping obstacle area determination is based is greater than h1 and less than h2, the fourth area 72 is not identified as a stepping obstacle area, but the fifth area 73 is identified as a stepping obstacle area.

[0069] As another example, if the first critical value, which is the basis for determining whether a stepping obstacle area exists, is greater than h2, the fourth area 72 and the fifth area 73 are not identified as stepping obstacle areas.

[0070] 9 illustrates an example in which an area that is higher than the lifting position by more than the first critical value is identified as a stepping obstacle area, but an area that is lower than the lifting position by more than the first critical value can also be identified as a stepping obstacle area in a similar manner. For a further explanation of this, please refer to FIG. 10.

[0071] In FIG. 10, it is assumed that the lifting position L is included in the fifth region 73.

[0072] At this time, if the first critical value, which is the basis for determining whether a stepping obstacle area exists, is smaller than h2-h1, the third area 71 and the fourth area 72 are both identified as stepping obstacle areas.

[0073] As another example, if the first critical value on which the stepping obstacle area determination is based is greater than h2-h1 and less than h2, the fourth area 72 is not identified as a stepping obstacle area, but the third area 71 is identified as a stepping obstacle area.

[0074] As another example, if the first critical value, which is the basis for determining whether a stepping obstacle area exists, is greater than h2, the third area 71 and the fourth area 72 are not identified as stepping obstacle areas.

[0075] In step S420, the area where the gradient is equal to or greater than the second critical value is identified as a stepping obstacle area.

[0076] If the first leg steps into a steep slope, the first leg may not be able to sufficiently support the load of the robot, or the steep slope may cause the first leg to slip in its stance. Therefore, it is preferable that the robot not step into a steep slope when walking.

[0077] For further explanation in this regard, please refer to FIG.

[0078] 10, there are shown a plurality of regions 81 and 82 with different heights. Between the regions 81 and 82, a sixth region 83 having a steep slope that is nearly vertical is formed.

[0079] At this time, if the first leg of the robot steps into the sixth region 83, which has a steep slope greater than the second critical value (e.g., 40 degrees), the first leg may not be able to adequately support the robot's weight, or the steep slope of the ground may cause the first leg to slip in its stance, making it unable to stably support the robot.

[0080] Therefore, the area 83 having a steepness greater than the second critical value is identified as a step-in obstacle area.

[0081] In step S430, selectively depending on the swing state of the first leg, an area where the difference in height from the first touchdown position is equal to or greater than a third critical value is identified as a stepping obstacle area.

[0082] Here, selectively identifying a specific area as a stepping obstacle area depending on the swing phase of the first leg means that the specific area can be or can not be identified as a stepping obstacle area depending on whether the current swing state of the first leg is in the lifting phase or the touchdown phase. For further explanation of this, please refer to FIG. 12.

[0083] FIG. 12 is a flowchart showing a more specific embodiment of step S430 in FIG.

[0084] First, in step S431, the current swing state of the first leg is identified. If the swing state of the first leg is in the touchdown phase, the present embodiment proceeds to step S432, where a region where the difference in height from the first touchdown position is equal to or greater than a third critical value is identified as a stepping obstacle region. Otherwise, if the swing state of the first leg is not in the touchdown phase (i.e., if the swing state of the first leg is in the lifting phase), the present embodiment proceeds to step S433, where a region where the difference in height from the first touchdown position is equal to or greater than the third critical value is not identified as a stepping obstacle region.

[0085] The reason why the area where the height difference from the first touchdown position is equal to or greater than the third critical value is selectively identified as a stepping obstacle area depending on the swing state of the first leg is that the posture stability of the robot when stepping into an area where the height difference is equal to or greater than the third critical value may differ depending on the swing state of the first leg.

[0086] For example, when the robot's first leg is still in the lifting phase, even if the touchdown position of the first leg is changed, it is possible to adaptively correct the activation of the first leg to match the changed touchdown position. However, when the robot's first leg is in the touchdown phase, the first leg is already descending toward the original touchdown position, which limits the range in which the touchdown position can be changed. In particular, if the height difference between the original touchdown position and the changed touchdown position exceeds a certain level, there is a high possibility that the robot's posture will become significantly unstable when the first leg steps into the changed touchdown position.

[0087] Therefore, the swing state of the first leg is first identified, and if the swing state of the first leg is in the touchdown phase, the area where the height difference from the original touchdown position (e.g., the first touchdown position) is equal to or greater than the third critical value can be identified as a stepping obstacle area. For further explanation of this, please refer to FIG. 13.

[0088] 13 shows multiple regions 91, 92 that are different in height from each other. The first touchdown position A, which is the original touchdown position, is included in the seventh region 92. When a disturbance is detected during activation of the first leg and the second touchdown position B is calculated, it is determined whether the second touchdown position B belongs to the stepping obstacle region.

[0089] In this case, the stepping obstacle area can be identified based on the height difference from the first touchdown position A. For example, area 91, where the height difference from the first touchdown position A is equal to or greater than the third critical value e, is selectively identified as a stepping obstacle area depending on the swing state of the first leg. For example, if the swing state of the first leg is in the lifting phase, it is relatively easy to adaptively correct the activation of the first leg in accordance with the changed touchdown position, so area 91, where the height difference from the first touchdown position A is equal to or greater than the third critical value e, is not identified as a stepping obstacle area. On the other hand, if the swing state of the first leg is in the touchdown phase, the first leg is already descending toward the original touchdown position, so there is a high possibility that the posture of the robot will become significantly unstable when the first leg steps into area 91, where the height difference from the first touchdown position A is equal to or greater than the third critical value e. Therefore, if the swing state of the first leg is in the touchdown phase, area 91, where the height difference from the first touchdown position A is equal to or greater than the third critical value e, is identified as a stepping obstacle area.

[0090] Figure 14 is a flowchart illustrating a more specific embodiment of step S500 of Figure 3. The embodiment of Figure 14 describes an exemplary method for calculating a third touchdown position outside the obstacle area when the second touchdown position belongs to the obstacle area.

[0091] In step S510, a third touchdown position is calculated based on the first touchdown position, the second touchdown position, and the stepping obstacle area, as will be described in detail with reference to FIGS.

[0092] FIG. 15 is a flowchart showing a more specific embodiment of step S510 in FIG.

[0093] First, in step S511, a line connecting the first touchdown position A and the second touchdown position B is identified.

[0094] In step S512, points on the ground corresponding to the identified line, for example, points where the line is projected onto the ground that do not belong to the stepping obstacle area, are identified.

[0095] In step S513, among the identified points, a point that is farther away from the stepping obstacle area by a fourth threshold or more and is closest to the second touchdown position is calculated as a third touchdown position.

[0096] For a supplementary explanation of this embodiment, reference will be made to FIGS.

[0097] 16 shows a terrain displaying a first area 10, a second area 20, a slope 30, and a stepping obstacle area 40. A first touchdown position A, which is the original touchdown position of the first leg, is included in the first area 10. A second touchdown position B, which is calculated based on the robot dynamics when a disturbance is detected during the swing of the first leg, is included in the second area 20. At this time, it is assumed that the second touchdown position B is included in the identified stepping obstacle area 40.

[0098] In this case, it is not desirable to have the first leg land at the second touchdown position B, so the third touchdown position must be determined from among points outside the stepping obstacle area 40.

[0099] For this purpose, first, a line 51 is identified connecting the first touchdown position A and the second touchdown position B. The line 51 may preferably be a straight line.

[0100] However, because the first touchdown position A and the second touchdown position B are both points on the ground, it is not preferable to immediately determine a specific point on the line 51 as the third touchdown position, because the specific point on the line 51 may be a point below the ground or a point floating in the air.

[0101] 17, a projected line 52 is identified by projecting the line 51 onto the ground, and candidate points that do not belong to the obstacle area 40 are identified from among the points on the projected line 52. Since all of the candidate points are on the ground and do not belong to the obstacle area 40, they can be candidates for the third touchdown position.

[0102] Finally, referring to FIG. 18, among the candidate points, the point that is farther away from the stepping obstacle area 40 by a fourth critical value (d) or more and closest to the second touchdown position B is calculated as the third touchdown position C.

[0103] Since the touchdown position calculated based on the dynamic state of the robot is second touchdown position B, taking the dynamic state of the robot into consideration, it is preferable to calculate the point among the candidate points that is closest to second touchdown position B as third touchdown position C. However, if third touchdown position C is too close to the boundary of stepping obstacle area 40, part of the robot's foot may unintentionally step into stepping obstacle area 40, so it is preferable that third touchdown position C be spaced a certain distance or more from stepping obstacle area 40.

[0104] Therefore, among the identified candidate points, the point (C) that is farther away from the stepping obstacle area 40 by the fourth critical value (d) or more and is closest to the second touchdown position B is calculated and determined as the third touchdown position C.

[0105] According to the above-described embodiments of the present invention, a robot that can walk and move by landing its legs at appropriate positions on the ground even on irregular terrain and a touchdown positioning method thereof are provided. Furthermore, even when a disturbance acts on the robot's leg mid-swing, the robot can land the swinging leg at an appropriate position and maintain a stable posture.

[0106] An exemplary computing device 500 for implementing the methods described in various embodiments of the present invention will now be described with reference to Fig. 19. For example, the computing device 500 of Fig. 19 may be the robot 100 of Fig. 1.

[0107] FIG. 19 is an exemplary hardware configuration diagram of a computing device 500.

[0108] As shown in Fig. 19, a computing device 500 may include one or more processors 510, a bus 550, a communication interface 570, a memory 530 into which a computer program 591 executed by the processor 510 is loaded, and a storage 590 for storing the computer program 591. However, Fig. 19 shows only components related to the embodiment of the present invention. Therefore, a person skilled in the art to which the present invention pertains will understand that other general-purpose components may be included in addition to the components shown in Fig. 19.

[0109] The processor 510 controls the overall operation of each component of the computing device 500. The processor 510 may include at least one of a central processing unit (CPU), a microprocessor unit (MPU), a microcontroller unit (MCU), a graphic processing unit (GPU), or any other type of processor well known in the art of the present invention. The processor 510 may also perform calculations for at least one application or program for performing methods / operations according to various embodiments of the present invention. The computing device 500 may include one or more processors.

[0110] The memory 530 stores various data, instructions, and / or information. The memory 530 can load one or more programs 591 from the storage 590 to perform methods / operations according to various embodiments of the present invention. An example of the memory 530 can be, but is not limited to, a RAM.

[0111] The bus 550 provides a communication function between components of the computing device 500. The bus 550 may be implemented as various types of buses such as an address bus, a data bus, and a control bus.

[0112] The communication interface 570 supports wired or wireless Internet communication for the computing device 500. The communication interface 570 may also support various communication methods other than Internet communication. To this end, the communication interface 570 may be configured to include a communication module well known in the art of the present invention.

[0113] The storage 590 can non-temporarily store one or more computer programs 591. The storage 590 can be configured to include a non-volatile memory such as a read only memory (ROM), an erasable programmable ROM (EPROM), an electrically erasable programmable ROM (EEPROM), a flash memory, a hard disk, a removable disk, or any other type of computer-readable recording medium known in the art to which the present invention belongs.

[0114] The computer program 591 may include one or more instructions embodying methods / operations according to various embodiments of the present invention. For example, the computer program 591 may include instructions for executing an operation of detecting a disturbance while a first leg of the robot is swinging toward a first touchdown position, an operation of calculating a second touchdown position based on a dynamic state of the robot in response to the detection of the disturbance, an operation of identifying a step obstacle region based on topographical information of the robot and determining whether the second touchdown position belongs to the step obstacle region, and an operation of determining a third touchdown position different from the second touchdown position as the touchdown position of the first leg if the second touchdown position belongs to the step obstacle region.

[0115] When the computer program 591 is loaded into the memory 530, the processor 510 can execute one or more of the instructions to perform the methods / operations according to various embodiments of the present invention.

[0116] Although the present invention has been described above with reference to the accompanying drawings, those skilled in the art will understand that the present invention may be embodied in other specific forms without changing the technical concept or essential features thereof. Therefore, it should be understood that the above-described embodiments are merely illustrative and not limiting. The scope of protection of the present invention should be interpreted by the following claims, and all technical concepts within the scope equivalent thereto should be interpreted as being included in the scope of rights of the technical concepts defined by the present invention.

Claims

1. 1. A method for touchdown positioning of a robot implemented by a computing device, comprising: sensing a disturbance during a swing of a first leg of the robot toward a first touchdown position; calculating a second touchdown position based on a dynamic state of the robot in response to sensing the disturbance; identifying a step obstacle region based on topographical information of the robot and determining whether the second touchdown position belongs to the step obstacle region; and determining a third touchdown position outside the stepping obstacle area as the touchdown position of the first leg when the second touchdown position falls within the stepping obstacle area; A method for touchdown positioning of a robot, comprising:

2. The determining step includes:

2. The method for touchdown positioning of a robot according to claim 1, further comprising the step of identifying an area where a difference in height from the lifting position of the first leg is equal to or greater than a first critical value as the stepping obstacle area.

3. The determining step includes:

3. The method for touchdown positioning of a robot according to claim 2, further comprising the step of identifying an area where the slope is equal to or greater than a second critical value as the stepping obstacle area.

4. The determining step includes:

3. The method for positioning touchdown for a robot according to claim 2, further comprising selectively identifying, as the step-on obstacle area, an area whose height difference from the first touchdown position is equal to or greater than a third critical value, depending on the swing state of the first leg.

5. The determining step includes:

5. The method for positioning a robot for touchdown according to claim 4, wherein, if the swing state is in a touchdown phase, a region where a difference in height from the first touchdown position is equal to or greater than a third critical value is identified as the stepping obstacle region.

6. The determining step includes:

6. The method for positioning touchdown for a robot according to claim 5, wherein, if the swing state is in a lifting phase, an area whose height difference from the first touchdown position is equal to or greater than the third critical value is not identified as the stepping obstacle area.

7. The determining step includes: The method for positioning a robot for touchdown according to claim 1 , further comprising the step of calculating the third touchdown position based on the first touchdown position, the second touchdown position, and the stepping obstacle area.

8. The determining step includes: The method for positioning a robot for touchdown according to claim 1 , further comprising the step of calculating the third touchdown position based on the first touchdown position, the second touchdown position, and the stepping obstacle area.

9. The step of calculating the third touchdown position includes:

9. The method for positioning touchdown positions for a robot according to claim 8, wherein a point among the identified points that is farther away from the stepping obstacle area by a fourth critical value or more and is closest to the second touchdown position is calculated as the third touchdown position.

10. processor, a memory for loading a computer program to be executed by said processor; and a storage device for storing the computer program; The computer program comprises: sensing a disturbance during a swing of a first leg of the robot toward a first touchdown position; responsive to sensing the disturbance, calculating a second touchdown position based on a dynamic state of the robot; an operation of identifying a step obstacle region based on topographical information of the robot and determining whether the second touchdown position belongs to the step obstacle region; and 1. A robot having multiple legs, comprising instructions for executing an operation of, when the second touchdown position falls within the stepping obstacle area, determining a third touchdown position outside the stepping obstacle area as the touchdown position of the first leg.

Citation Information

Patent Citations

  • Method for planning walking landing position of biped robot

    JP2011200991A

  • Biped walking robot, and method for control of the same

    JP2011206903A

  • Control device of leg type mobile robot

    JP2011255439A

  • Mobile device and mobile device control method

    JP2022110260A

  • Auto-Swing Height Adjustment

    US20200241534A1