Control device and control method

The control device and method address slippage and stability issues in multi-legged robots by distributing the target wrench to contact points, minimizing an objective function to suppress slippage and maintain stability with reduced computational load.

JP2026065986APending Publication Date: 2026-04-16OMRON CORP
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
JP2024175115
Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
Filing Date
2024-10-04
Publication Date
2026-04-16

AI Technical Summary

Technical Problem

Conventional control systems for multi-legged walking robots face issues with slippage and instability when a horizontal force is generated in situations where the vertical load is small, such as when the robot's center of gravity is close to one of its legs, leading to a higher likelihood of tipping over.

Method used

A control device and method that determine a target wrench for the robot's center of gravity by distributing it to contact wrenches at contact points, using a processor to minimize an objective function derived from relational expressions while satisfying constraints, thereby controlling the robot's walking to suppress slippage.

Benefits of technology

The method effectively suppresses slippage and maintains stability by distributing the target wrench to contact points, reducing the likelihood of the robot tipping over without significantly increasing computational load, as demonstrated by simulation results.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 2026065986000001_ABST
    Figure 2026065986000001_ABST
Patent Text Reader

Abstract

The aim is to suppress slippage even when horizontal forces are generated in situations where the vertical load is small, such as on the legs far from the robot's center of gravity. [Solution] The control device includes a processor, which, when a six-dimensional vector combining three-dimensional translational force and three-dimensional rotational moment is used as a wrench, determines, based on the relationship between the robot's center of gravity and the ZMP, and the relationship between the ZMP and one or more contact points, a target wrench to be applied to the robot's center of gravity, by distributing it to one or more contact points, and controls the robot's walking according to the determined contact wrench.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present disclosure relates to a control device and a control method.

Background Art

[0002] Non-Patent Document 1 describes that "For a humanoid robot to work in various environments, multi-contact motion is important. A centroidal online trajectory generation and stabilization control for the dynamic multi-contact motion of a humanoid is proposed. The proposed method significantly reduces the computational cost by using preview control instead of the conventional model predictive control that considers the constraints of all sample times. By combining the centroid state feedback for robustness against disturbances and the wrench distribution for satisfying contact constraints with preview control, it is shown through simulation experiments that the robot can stably execute various multi-contact motions."

Prior Art Documents

Non-Patent Documents

[0003]

Non-Patent Document 1

Non-Patent Document 2

[0004] Conventionally, control systems are known that define a target wrench (force and torque) acting on the center of gravity of a multi-legged walking robot and distribute it to the contact force (see, for example, Non-Patent Document 1). However, conventional techniques have a problem in that when a horizontal force is generated in situations where the vertical load is small, such as on a leg far from the center of gravity of the robot, the leg is likely to slip and the robot will fall over.

[0005] This disclosure is made in view of these circumstances and aims to provide a device and method that can suppress slippage even when the center of gravity of a robot is close to one of its legs. [Means for solving the problem]

[0006] A control device according to a first aspect of this disclosure includes a processor, which, when a six-dimensional vector combining three-dimensional translational force and three-dimensional rotational moment is used as a wrench, determines, based on a relationship between the center of gravity of a multi-legged walking robot and the ZMP (Zero Moment Point), and a relationship between the ZMP and one or more contact wrenches at one or more contact points, a target wrench to be applied to the center of gravity of the robot, by distributing it to one or more contact wrenches at one or more contact points, and controls the walking of the robot according to the determined contact wrenches.

[0007] In a control device according to a second aspect of the present disclosure, the processor determines the two-dimensional component of the six-dimensional target wrench applied to the center of gravity that is parallel to the support surface, using the two relational expressions.

[0008] In the control device according to the third aspect of this disclosure, the processor determines the contact wrench as the solution that minimizes the objective function derived from the two relational expressions while satisfying the constraints.

[0009] In the control device according to the fourth aspect of the present disclosure, the processor determines the contact wrench as a solution that minimizes the objective function, which is expressed in quadratic form derived from the two relational expressions, using constrained quadratic programming while satisfying the constraints.

[0010] A control method according to a fifth aspect of this disclosure involves a computer determining, based on a relationship between the center of gravity of a multi-legged walking robot and the Zero Moment Point (ZMP), and a relationship between the ZMP and the contact wrenches at one or more contact points, by distributing a target wrench applied to the center of gravity of the robot to the contact wrenches at one or more contact points, and controlling the walking of the robot according to the determined contact wrenches.

[0011] According to the control device and control method described herein, even when a horizontal force is generated in a situation where the vertical load is small, such as when the robot's feet are far from its center of gravity, slippage can be suppressed. [Brief explanation of the drawing]

[0012] [Figure 1] This figure shows an example of a schematic configuration of the control system 10 according to this embodiment. [Figure 2] This diagram illustrates the relationship between the center of gravity of robot 50 and the forces at the contact points. [Figure 3]This is a diagram illustrating the ZMP of robot 50. [Figure 4] This figure shows an example of the hardware configuration of the control device 100 according to this embodiment. [Figure 5] This figure shows an example of the functional configuration of the control device 100 according to this embodiment. [Figure 6] This figure shows an example of the processing flow executed by the control device 100 according to this embodiment. [Figure 7] This figure shows an example of the force distribution result using a conventional method. [Figure 8] This figure shows an example of the force distribution results using the proposed method. [Modes for carrying out the invention]

[0013] Hereinafter, an example of an embodiment of this disclosure will be described with reference to the drawings. In each drawing, the same or equivalent components and parts are given the same reference numerals. Also, the dimensional ratios in the drawings are exaggerated for illustrative purposes and may differ from the actual ratios.

[0014] Figure 1 shows an example of a schematic configuration of the control system 10 according to this embodiment. The control system 10 includes a robot 50 and a control device 100.

[0015] Robot 50 is a controlled object that walks using multiple legs. In this figure, the case where robot 50 walks using two legs, i.e., the left and right legs, is shown as an example. However, robot 50 may walk using more than two legs.

[0016] The control device 100 controls the walking of the robot 50. In this figure, the control device 100 is shown as a separate device from the robot 50, and as an example, the control device 100 is shown as being connected to the robot 50 via a wired connection. However, the control device 100 may also be connected to the robot 50 via wireless communication. Alternatively, the control device 100 may be configured as an integrated device with the robot 50.

[0017] Prior to the description of the control system according to this embodiment, the conventional control system will be briefly described. For example, in the control system shown in Non-Patent Document 1, the wrench acting on the center of gravity of the robot 50 is defined as the target wrench and distributed to the contact forces. At this time, λ i , y , z , , , z , x ,

[0020] is the target wrench, and λ C is the contact wrench at the contact point. Then, the two are represented by the following relationship.

Equation

[0018] Here, when the robot 50 walks on two legs, in the double-support phase, the robot 50 contacts the support surface at two locations of the left and right legs. Therefore, the contact wrench is λ C ={λ L ,λ R}. When the number of legs changes, the dimension number of λ C will change according to the number of legs. For example, when the robot 50 has four legs, it may be set to 4 dimensions such as λ C ={λ1,λ2,λ3,λ4}.

[0019] Here, f x , f y , and f z respectively represent the x-axis component, y-axis component, and z-axis component of the force at an arbitrary point. Also, τ x , τ y , and τ z respectively represent the x-axis component, y-axis component, and z-axis component of the moment at an arbitrary point. That is, the wrench λ can be defined as a 6-dimensional vector combining the translational 3-dimensional force and the rotational 3-dimensional moment at an arbitrary point. Also, G is a matrix for calculating the resultant force and the combined moment, and each component is defined by G i .

[0020] Therefore, each contact wrench can be obtained by the following optimization problem. Note that W1 and W2 represent the weight matrix of the norm and can be preset by the user.

number

[0021] Figure 2 illustrates the relationship between the center of gravity of robot 50 and the forces at the contact point. Here, it is assumed that all of robot 50's mass m is concentrated at the center of gravity. The x-axis is defined as the direction of movement of robot 50 on the support surface, the y-axis as the direction perpendicular to the x-axis on the support surface, and the z-axis as the direction perpendicular to the support surface. From here on, we will explain the case where the support surface defined by the x and y axes is horizontal and the z-axis is vertical as an example.

[0022] In this figure, f G,x and f G,z This is the force f at the center of gravity. G The x-axis and z-axis components of are shown, respectively. Also, f L,x and f L,z The force f at the point of contact of the left leg is L The x-axis and z-axis components of are shown, respectively. Also, f R,x and f R,z The force f at the point of contact of the right leg is R The x-axis and z-axis components are shown, respectively.

[0023] Now, let's consider the case where the target value of the moment is 0. As shown in (a), when the center of gravity is in the middle of both legs, the solution to the optimization problem shown in (Equation 2) is f L =f R =(1 / 2)f G This means that during the period of double-leg support, the front leg and the back leg (also called the "kicking leg") exert equal force. On the other hand, as shown in (b), when the center of gravity is close to either leg (in this figure, the front leg, the right leg), the balance of the force in the z-axis (in this figure, the vertical force) changes so that the moment around the center of gravity cancels out. That is, in this figure, the force f at the contact point of the left leg, which is far from the center of gravity. L The z-axis component f L,z However, the force f at the point of contact of the right leg, which is close to the center of gravity. R The z-axis component f R,zIt will become smaller than that.

[0024] However, since the force in the z-axis direction (vertical force in this figure) and the forces in the x-axis and y-axis directions (horizontal forces in this figure) are independent, the solution for the force in the direction of the support surface is f L ≒f R ≈(1 / 2)f G Therefore, in this figure, the force f at the point of contact of the left leg is L x-axis component f L,x The force f at the point of contact with the right leg R x-axis component f R,x They will be close in size.

[0025] As a result, even though the load in the z-axis direction (vertical load in this diagram) is small, the force in the direction of the support surface (horizontal force in this diagram) is required, making the leg (the left leg, which is the rear leg in this diagram) prone to slipping. Therefore, the likelihood of the robot 50 tipping over increases around the start and end times of the two-legged support phase, when the center of gravity is closer to one of the legs.

[0026] As a way to avoid such a situation, for example, as shown in Non-Patent Document 2, a method of considering friction constraints is known. When friction constraints are introduced, the force f included in the contact wrench is i and moment τ i It can be expressed by the following formula.

number

[0027] Here, Φ is the basis vector of the polygonal pyramid placed at the endpoints of the contact surface, representing the polygonal approximation of the friction cone. Also, ρ represents the non-negative coefficient vector. Furthermore, j represents the corner number of the frictional polygonal pyramid. In this case, ρ is constant for all i,j. i,j If the value is >0, the contact force will not extend outside the friction cone.

[0028] By utilizing this property, it is possible to calculate force distribution that takes friction constraints into account by solving the following optimization problem.

number

[0029] Here, if Nc is the number of contact points, then in the optimization problem shown in Non-Patent Document 1, the variables are 6 × N. c The dimensions and inequality constraints are N. c It becomes one. That is, in the case of bipedal locomotion, N c Since this equals 2, the variable has 12 dimensions.

[0030] On the other hand, in the optimization problem shown in Non-Patent Document 2, N j The number of angles of the frictional polygonal pyramid, N e If we let be the number of vertices on the contact surface, then the variable is N j ×N e ×N c It becomes a dimension. That is, if we approximate the friction cone with a square pyramid, N j =4, if the sole of the leg is a rectangle, N e Since the result is 4, the variables have 32 dimensions. Therefore, it is estimated that the conventional force distribution method considering friction constraints requires nearly three times the computation time compared to directly optimizing the wrench.

[0031] Therefore, in the control system according to this embodiment, even when the center of gravity of the robot 50 is close to one of the legs, slippage is suppressed without significantly increasing the computational load (for example, with less computational load than Non-Patent Document 2) (for example, it becomes less prone to slippage than Non-Patent Document 1). This will be explained in detail.

[0032] Figure 3 is a diagram illustrating the ZMP of robot 50. ZMP stands for Zero Moment Point, and it is the center point of the reaction force that robot 50 receives from the support surface.

[0033] In the control system according to this embodiment, the contact wrench at one or more contact points is determined using the relationship between the center of gravity of the robot 50 and ZMP, and the relationship between ZMP and the contact wrench.

[0034] Figure 4 shows an example of the hardware configuration of the control device 100 according to this embodiment. The control device 100 is a computer. The control device 100 includes a processor 101, a ROM (Read Only Memory) 102, a RAM (Random Access Memory) 103, storage 104, a communication interface 105, and a user interface 106. These components are connected to each other so as to be able to communicate with each other via a bus 109.

[0035] The processor 101 executes various programs and controls each component. Here, the processor 101 is assumed to be a CPU (Central Processing Unit). The ROM 102 stores various programs and data. The RAM 103 temporarily stores programs or data as a working area. The storage 104 consists of an HDD (Hard Disk Drive) or SSD (Solid State Drive) and stores various programs and data, including the operating system.

[0036] In the control device 100 according to this embodiment, the control program 107 is stored in the ROM 102 or storage 104. In this figure, the case where the control program 107 is stored in the storage 104 is shown as an example. The processor 101 reads the control program 107 from the ROM 102 or storage 104 and executes it using the RAM 103 as a work area, thereby performing control of each configuration and various calculation processes according to the control program 107.

[0037] The communication interface 105 is an interface for the control device 100 to communicate with other devices, including the robot 50. The user interface 106 is an input / output interface for the control device 100 to exchange information with the user. The user interface 106 may include input devices such as a mouse, keyboard, touch panel, and microphone, and output devices such as a monitor and speaker.

[0038] Figure 5 shows an example of the functional configuration of the control device 100 according to this embodiment. The control device 100 includes an acquisition unit 110, an extraction unit 120, a search unit 130, a determination unit 140, and a control unit 150. These functional configurations may be implemented in the control device 100 by the processor 101 reading the control program 107 from the ROM 102 or storage 104, expanding it into the RAM 103, and executing it.

[0039] The acquisition unit 110 acquires the relationship between the center of gravity of the multi-legged walking robot 50 and the ZMP, and the relationship between the ZMP and the contact wrench at one or more contact points. The formulas will be explained in detail in the flowchart described later. The same applies to other functional units.

[0040] The derivation unit 120 derives the objective function from the two relational expressions obtained by the acquisition unit 110.

[0041] The search unit 130 searches for a solution that minimizes the objective function derived by the derivation unit 120 while satisfying the constraints.

[0042] The determination unit 140 determines the solution that minimizes the objective function searched by the search unit 130 as the contact wrench.

[0043] The control unit 150 controls the walking motion of the robot 50 according to the contact wrench determined by the determination unit 140.

[0044] Figure 6 shows an example of a processing flow executed by the control device 100 according to this embodiment. This flow may be started when the processor 101 reads the control program 107 from the ROM 102 or storage 104, loads it into the RAM 103, and executes it.

[0045] In step S210, the processor 101, as the acquisition unit 110, acquires the relationship between the center of gravity and ZMP. As an example, p G '' is the acceleration of the center of gravity, g is the acceleration due to gravity, z G The height of the center of gravity as viewed from the support surface, ζ2 to g / z G , p G The position of the center of gravity, p Z The position of ZMP, g v When given as the gravity vector, the processor 101 may obtain the centroid-ZMP model shown in the following equation.

number

[0046] In step S220, the processor 101, as the acquisition unit 110, acquires the relationship between ZMP and the contact wrench. For example, n is the unit normal vector with respect to the support surface, and f C The force at the point of contact (also called "contact force"), τ C When is defined as the moment at the contact point (also called the "contact moment"), the processor 101 may obtain the following relation. This indicates that ZMP is a point on the support surface where the moment created by the contact wrench is zero.

number

[0047] Here, when the robot 50 walks using two legs, the contact force and contact moment can be expressed by the following equations.

number

[0048] Therefore, these equations show that changing the contact force changes ZMP, and thereby changes the force acting on the center of gravity. Expanding the above equations, we obtain the following equation.

number

[0049] Here, if robot 50 is a life-size robot, and assuming the coordinate origin is at the point where the center of gravity is projected onto the support surface, then each component at the position of the contact point is, zi ≈ 0m, x i <±0.5m, and y i ≈ ±0.1m. The resultant force of the vertical forces is equal to the body weight (i.e., Σf i Z Since (=mg), when there are contact points, it can be seen that changing the contact force balance in the vertical direction (more precisely, the normal n) can change ZMP more significantly than changing the contact force in the horizontal direction.

[0050] In step S230, the processor 101, as the derivation unit 120, derives the objective function from the two relational expressions obtained in steps S210 and S220. As an example, the processor 101 multiplies (Equation 5) by the mass m of the robot 50 to obtain the force f acting on the target center of gravity. G You can derive the following equation to find it.

number

[0051] Then, processor 101 places (number 9) at position p in the ZMP. z By substituting the result of solving for (Equation 6) into (Equation 6), we can obtain the following equation.

number

[0052] Here, the floor is at a 90-degree angle to the direction of gravity and the center of gravity is not moving up and down, so n T f c ≒mg v Therefore, processor 101 can obtain the following equation.

number

[0053] Then, processor 101 can derive the following optimization problem using the upper two dimensions of the above equation.

number

[0054] Here, .'' C is a contact wrench, and W1 and W2 are the weight matrices of the norm. Also, G z This is a matrix for calculating the resultant force and resultant moment, where each component is G z,i It is defined by [the organization / group].

[0055] Also, η G The target wrench λ is a wrench that acts on the center of gravity of robot 50. G The upper two dimensions of which are replaced, more specifically, force f G The x component of f G,x to -z G f G,x +mgx G , force f G The y component of f G,y to -z G f G,y +mgy G These are the results of replacing each with x. Here, x G ,y G , and z G These represent the components at the position of the centroid, assuming that the coordinate origin is at the point obtained by projecting the centroid onto the support surface. The processor 101 can, for example, derive an objective function for determining the contact wrench from these two relations.

[0056] Furthermore, equation (Equation 12) has the same number of variables and inequality constraints as the optimization problem in Non-Patent Document 1, and it is expected that the time required to solve it will be about the same, i.e., less computational than in Non-Patent Document 2. On the other hand, in order to achieve the target horizontal acceleration, the contact force is determined so as to match the target ZMP. By doing so, horizontal acceleration is achieved not by horizontal contact force, but by the difference in vertical contact force, which is expected to result in a less slippery motion.

[0057] In step S240, the processor 101, as the search unit 130, searches for a solution that minimizes the objective function derived in step S230 while satisfying the constraints.

[0058] In step S250, the processor 101, as a decision unit 140, determines the contact wrench as the solution that minimizes the objective function explored in step S240. More specifically, the processor 101 may determine the contact wrench as the solution that minimizes the objective function, which is expressed in quadratic form derived from two relational equations, using quadratic programming while satisfying the constraints. This allows the processor 101 to determine the two-dimensional component of the six-dimensional target wrench applied to the center of gravity that is parallel to the support surface, using the two relational equations. For example, the processor 101 then determines the target wrench applied to the center of gravity of the robot 50 by distributing it to one or more contact points based on the relational equation between the center of gravity and ZMP, and the relational equation between ZMP and the contact wrench.

[0059] In step S260, the processor 101, acting as the control unit 150, controls the walking of the robot 50 according to the contact wrench determined in step S250.

[0060] In step S270, the processor 101 determines whether or not to terminate the control of the robot 50's walking. If it determines not to terminate (No), the processor 101 returns to step S240 and continues the flow. On the other hand, if it determines to terminate (Yes), the processor 101 terminates this flow.

[0061] Furthermore, if the objective function has already been derived or is stored in advance, the processor 101 may omit the processing in steps S210 to S230.

[0062] Figure 7 shows an example of force distribution results using a conventional method. Specifically, this figure shows the distribution results based on center of gravity dynamics, as in Non-Patent Document 1.

[0063] Figure 8 shows an example of the force distribution result using the proposed method. In other words, this figure shows the distribution result based on this embodiment.

[0064] In both figures, from top to bottom, the x-axis component, y-axis component, and z-axis component of the force, as well as the x-axis component, y-axis component, and z-axis component of the moment, are shown respectively. Also, in both figures, the horizontal axis represents time in seconds. In both figures, the solid line indicates before distribution, the dashed line indicates the right leg, and the dotted-dashed line indicates the left leg respectively. Also, in obtaining the simulation results of both figures, W1 = [1e4, 1e4, 1e-5, 1e-3, 1e-3, 1e5] T , W2 = [1e6, 1e6, 1e0, 1e0, 1e0, 1e0] T were set as settings to suppress the translational force.

[0065] Here, compare Figure 7 and Figure 8. In Figure 7, vertical dotted lines are attached at 7.0 seconds and 7.08 seconds. In Figure 8, vertical dotted lines are attached at 7.0 seconds and 7.154 seconds. In both figures, the period sandwiched between the two dotted lines indicates the double-leg support period.

[0066] Focusing on this double-leg support period, in the conventional method, a horizontal force (f y ) is required, and this is considered to be the cause of slipping. On the other hand, in the proposed method, it can be seen that the translational forces (F x , F y ) are close to zero. Thus, it can be seen that the proposed method can achieve a control that is less likely to slip compared to the conventional method.

[0067] In this way, in the control device 100 according to the present embodiment, in the method of distributing the target center-of-gravity motion from the ZMP to the contact wrench λ C , a Quadratic Programming Problem (QP) is formulated based on the relational expression between the ZMP and the contact force, and the target value of the contact force is obtained. Thus, according to the control device 100 according to the present embodiment, it is possible to realize a motion that suppresses slipping while maintaining the amount of calculation.

[0068] The above-described processing explained so far can also be realized by a dedicated hardware circuit. In this case, it may be executed by one piece of hardware or by a plurality of pieces of hardware.

[0069] Furthermore, in the above explanation, the term "processor" refers to a broad type of processor, including general-purpose processors (e.g., CPU: Central Processing Unit, etc.) and specialized processors (e.g., GPU: Graphics Processing Unit, ASIC: Application Specific Integrated Circuit, FPGA: Field Programmable Gate Array, programmable logic device, etc.).

[0070] Furthermore, the processor operations described above may not be performed by a single processor, but may also be performed by multiple processors located in physically separate locations working together. Also, the order of the processor operations is not limited to the order described above and may be changed as appropriate.

[0071] Furthermore, the aforementioned program may be provided on a computer-readable non-temporary recording medium such as a USB (Universal Serial Bus) memory, flexible disk, or CD-ROM (Compact Disc Read Only Memory), or it may be provided online via a network such as the Internet. In this case, the program recorded on the computer-readable non-temporary recording medium is usually transferred to and stored in memory or storage. This program may also be provided, for example, as a standalone application software, or it may be incorporated into the software of each device as a function of that device.

[0072] Furthermore, the aforementioned program can be provided as a program product. A program product includes any form of product for providing a program. For example, a program product includes a program provided via a network such as the Internet, and non-temporary computer-readable recording media such as CD-ROMs and DVDs on which the program is stored.

[0073] This disclosure is not limited to the foregoing, and it goes without saying that it can be implemented in various modified forms without departing from its intent.

[0074] The following information is also included in this disclosure. (Note 1) The processor comprises, If we consider a wrench as a 6-dimensional vector formed by combining translational 3-dimensional force and rotational 3-dimensional moment, In a multi-legged walking robot, based on the relationship between the robot's center of gravity and the ZMP (Zero Moment Point), and the relationship between the ZMP and the contact wrenches at one or more contact points, the target wrench applied to the robot's center of gravity is distributed and determined to the contact wrenches at one or more contact points. The robot's walking motion is controlled according to the contact wrench determined above. Control device. (Note 2) The processor determines the two-dimensional component of the six-dimensional target wrench applied to the center of gravity that is parallel to the support surface, using the two relational equations. The control device described in Appendix 1. (Note 3) The processor determines the contact wrench as the solution that minimizes the objective function derived from the two relational equations while satisfying the constraints. The control device described in Appendix 1 or 2. (Note 4) The processor determines the contact wrench as a solution that minimizes the objective function, which is expressed in quadratic form derived from the two aforementioned relational equations, using constrained quadratic programming while satisfying the constraints. A control device as described in any one of the appendices 1 to 3. (Note 5) Computers If we consider a wrench as a 6-dimensional vector formed by combining translational 3-dimensional force and rotational 3-dimensional moment, In a multi-legged walking robot, based on the relationship between the robot's center of gravity and the ZMP (Zero Moment Point), and the relationship between the ZMP and the contact wrenches at one or more contact points, the target wrench applied to the robot's center of gravity is distributed and determined to the contact wrenches at one or more contact points. The robot's walking motion is controlled according to the contact wrench determined above. Control method. (Note 6) On the computer, If we consider a wrench as a 6-dimensional vector formed by combining translational 3-dimensional force and rotational 3-dimensional moment, In a multi-legged walking robot, a process is performed to determine the target wrench applied to the robot's center of gravity by distributing it to the contact wrenches at one or more contact points, based on the relationship between the robot's center of gravity and the ZMP (Zero Moment Point), and the relationship between the ZMP and the contact wrenches at one or more contact points. The process of controlling the robot's walking according to the determined contact wrench is performed. Control program. (Note 7) A non-temporary computer-readable medium on which the control program described in Appendix 6 is recorded. [Explanation of Symbols]

[0075] 10 Control Systems 50 robots 100 Control device 101 Processors 102 ROM 103 RAM 104 storage 105 Communication Interface 106 User Interface 107 Control Program 109 Bus 110 Acquisition Department 120 Derivation part 130 Search Department 140 Decision Section 150 Control Unit

Claims

1. The processor comprises, If we consider a wrench as a six-dimensional vector formed by combining translational force in three dimensions and rotational moment in three dimensions, In a multi-legged walking robot, based on the relationship between the robot's center of gravity and the ZMP (Zero Moment Point), and the relationship between the ZMP and the contact wrenches at one or more contact points, the target wrench applied to the robot's center of gravity is distributed and determined to the contact wrenches at one or more contact points. The robot's walking motion is controlled according to the contact wrench determined above. Control device.

2. The processor determines the two-dimensional component of the six-dimensional target wrench applied to the center of gravity that is parallel to the support surface, using the two relational equations. The control device according to claim 1.

3. The processor determines the contact wrench as the solution that minimizes the objective function derived from the two relational equations while satisfying the constraints. The control device according to claim 2.

4. The processor determines the contact wrench as a solution that minimizes the objective function, which is expressed in quadratic form derived from the two aforementioned relational equations, using constrained quadratic programming while satisfying the constraints. The control device according to claim 3.

5. Computers If we consider a wrench as a six-dimensional vector formed by combining translational force in three dimensions and rotational moment in three dimensions, In a multi-legged walking robot, based on the relationship between the robot's center of gravity and the ZMP (Zero Moment Point), and the relationship between the ZMP and the contact wrenches at one or more contact points, the target wrench applied to the robot's center of gravity is distributed and determined to the contact wrenches at one or more contact points. The robot's walking motion is controlled according to the contact wrench determined above. Control method.