Legged robot
The hybrid controller system for legged robots, incorporating auto-balance and pressure center controls, addresses balance maintenance issues by dynamically adjusting joint torques, ensuring stable operation on uneven terrain.
Patent Information
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2024-09-02
- Publication Date
- 2026-03-13
AI Technical Summary
Existing legged robots struggle with maintaining balance, particularly when subjected to external forces, and lack the ability to adjust foot placement based on operator judgment on uneven terrain.
A hybrid controller system that includes an auto-balance controller with independent horizontal, hip-type pressure center, and ankle-type pressure center controllers, along with a vertical controller, to ensure stable balance by adjusting torque commands at the joints based on predetermined positions and strategies.
The system enhances the robot's ability to maintain balance reliably, even on uneven terrain, by dynamically adjusting joint torques to keep the torso vertically aligned and the pressure center within the foot sole, thus improving stability and control.
Smart Images

Figure 2026046233000001_ABST
Abstract
Description
[Technical Field]
[0001] The present invention relates to a legged robot, and more particularly to a legged robot equipped with a hybrid controller that includes a leg controller for controlling the legs based on operator commands and an auto-balance controller for automatically maintaining balance. [Background technology]
[0002] There is a desire for legged robots that can perform various tasks in place of humans in dangerous environments, but many challenges remain before they can achieve complete autonomy. For this reason, the development of remotely controlled legged robots is underway. Known methods for operating remotely controlled legged robots include, for example, the method described in Non-Patent Document 1, in which the operator commands the walking path via a graphical user interface (GUI), and the method described in Non-Patent Document 2, in which the operator's movements captured by motion capture are reflected in the robot.
[0003] Legged robots are generally unstable mechanisms with many degrees of freedom, and walking, one of their basic movements, carries a high risk of falling. To address this problem, methods such as those described in Non-Patent Documents 3 and 4, which automatically and autonomously generate walking patterns in real time, are effective. However, with this method, the operator cannot control the leg movements for walking one by one. Therefore, legged robots to which this method is applied may not be able to make the necessary decisions to change foot placement based on the operator's judgment when walking on uneven terrain such as construction sites or disaster sites.
[0004] Thus, it is desirable for remotely operated legged robots to be equipped with a controller that moves the legs in accordance with the operator's intentions and automatically maintains the overall balance of the robot. As an example of such a legged robot, the one described in Patent Document 1 is known. This legged robot is equipped with a torque command-based auto-balance controller (i.e., an auto-balance controller that outputs torque commands to the ankle joints). This auto-balance controller is configured to be used in combination with any leg controller that outputs torque commands corresponding to the operator's commands. With this auto-balance controller, the operator can move the legs as intended, as long as the output of the leg controller does not interfere with the auto-balance controller, that is, as long as it does not disrupt the balance maintained by the auto-balance controller. [Prior art documents] [Non-patent literature]
[0005] [Non-Patent Document 1] S. Nakaoka, M. Morisawa, K. Kaneko, S. Kajita, and F. Kanehiro: “Development of an indirect-type teleoperation interface for biped humanoid robots,” Proceedings of 2014 IEEE / SICE International Symposium on System Integration, pp.590-596, 2014. [Non-Patent Document 2] I. Almetwally and M. Mallem: “Real-time tele-operation and tele-walking of humanoid robot NAO using Kinect Depth Camera,” Proceedings of 2013 10th IEEE International Conference on Networking, Sensing and Control, pp.463-466, 2013. [Non-Patent Document 3] J. Ding, M. Yang, J. Zhou, D. Yao, and X. Xiao: “Robust real-time walking pattern generation with dynamical consistency: An analytical method combined with optimal solution,” Proceedings of 2017 IEEE International Conference on Robotics and Biomimetics, pp.1806-1811, 2017. [Non-Patent Document 4] T. Sato, S. Sakaino, and K. Ohnishi: “Real-time walking trajectory generation method with three-mass models at constant body height for three-dimensional biped robots,” IEEE Transactions on Industrial Electronics, vol.58, no.2, pp.376-383, 2011. [Patent Documents]
[0006] [Patent Document 1] Patent No. 5268107 [Overview of the project] [Problems that the invention aims to solve]
[0007] However, the auto-balancing controller for a legged robot described in Patent Document 1 sometimes failed to maintain balance in various situations, including when a sustained external force was applied to the robot.
[0008] This invention has been made in view of the above circumstances, and aims to provide a legged robot that maintains balance more reliably than conventional robots. [Means for solving the problem]
[0009] To solve the above problems, the first legged robot according to the present invention is a robot comprising a torso, legs connected to the torso, and a hybrid controller for controlling the legs, wherein the legs include a foot portion having a sole that can contact the ground, a leg portion, and at least one joint, and the hybrid controller includes an auto-balance controller that outputs a first torque command for automatic balance maintenance and a leg controller that outputs a second torque command based on arbitrary control, and is configured to output a torque command indicating the sum of the torque amount indicated by the first torque command and the torque amount indicated by the second torque command as a command for the torque that the actuator of the joint should generate, and the auto-balance controller is an independent water controller that outputs a third torque command The system includes a horizontal controller and a hip-type pressure center controller that outputs a fourth torque command. The system is configured to output a first torque command that represents the sum of the torque amount indicated by the third torque command and the torque amount indicated by the fourth torque command. The third torque command is a command relating to the torque that the joint actuators should generate so that the torso is approximately vertically above the sole of the foot. The fourth torque command is a command relating to the torque that the joint actuators should generate so that the pressure center point of the ground reaction force received by the sole of the foot from the ground, determined based on the hip strategy, is at a predetermined position within the sole of the foot. The torque amount indicated by the fourth torque command is limited so that it does not become infinitely large.
[0010] The autobalancing controller of the first legged robot described above further includes an ankle-type pressure center controller that outputs a fourth torque command, and may be configured to output a first torque command that represents the sum of the torque amount indicated by the third torque command and the torque amount indicated by the fourth torque command output by the hip-type pressure center controller or the ankle-type pressure center controller. The fourth torque command output by the ankle-type pressure center controller is a command relating to the torque that the joint actuators should generate so that the pressure center point of the ground reaction force received by the sole of the foot from the ground is at a predetermined position within the sole of the foot, determined based on the ankle strategy, and the torque amount indicated by the fourth torque command output by the ankle-type pressure center controller is limited so as not to become infinitely large.
[0011] The autobalancing controller of the first legged robot described above further includes a vertical controller that outputs a fifth torque command, and may be configured to output a first torque command that represents the sum of the torque amount indicated by the third torque command, the torque amount indicated by the fourth torque command output by the hip-type pressure center controller or ankle-type pressure center controller, and the torque amount indicated by the fifth torque command. The fifth torque command is a command relating to the torque that the joint actuators should generate in order for the substantially vertical position of the torso to approach a predetermined neutral state, or a command relating to the torque that the joint actuators should generate in order for the displacement of the joint to approach a predetermined neutral state.
[0012] The hip-type and ankle-type pressure center controllers of the first legged robot described above can be limited, for example, by using an imperfect integrator to control the amount of torque indicated by the fourth torque command.
[0013] To solve the above problems, the second legged robot according to the present invention is a robot comprising a torso, a plurality of legs connected to the torso, and a hybrid controller for controlling the plurality of legs, wherein each of the plurality of legs includes a foot portion having a sole that can contact the ground, a leg portion, and at least one joint, and the hybrid controller includes an auto-balance controller that outputs a first torque command for each leg for automatic balance maintenance, and a leg controller that outputs a second torque command for each leg based on arbitrary control, and is configured to output a torque command indicating the sum of the torque amount indicated by the first torque command for the leg and the torque amount indicated by the second torque command for the leg as a command for the torque that the actuator of the joint included in the leg should generate, and the auto-balance controller includes a composite horizontal controller that outputs a third torque command for each leg, and a hip-type pressure center controller that outputs a fourth torque command for each leg, and the third The system is configured to output a first torque command for a leg that indicates the sum of the torque amount indicated by the first torque command and the torque amount indicated by the fourth torque command for that leg. The third torque command is a command concerning the torque that the joint actuator should generate so that the torso is approximately vertically above the sole of the foot of the one supporting leg if there is one supporting leg, and a command concerning the torque that the joint actuator should generate so that the torso is approximately vertically above the polygon formed by connecting the soles of the two or more supporting legs if there are two or more supporting legs. The fourth torque command is a command concerning the torque that the joint actuator should generate so that the pressure center point of the ground reaction force received by the sole of the foot from the ground, determined based on the hip strategy, is at a predetermined position within the sole of the foot. The torque amount indicated by the fourth torque command is limited so that it does not become infinitely large.
[0014] The autobalancing controller for the second legged robot described above may include an ankle-type pressure center controller that outputs a fourth torque command for each leg, replacing the hip-type pressure center controller. The fourth torque command output by the ankle-type pressure center controller is a command relating to the torque that the joint actuators should generate so that the pressure center point of the ground reaction force received by the sole of the foot from the ground is at a predetermined position within the sole of the foot, as determined based on the ankle strategy.
[0015] The autobalancing controller for the second legged robot described above further includes an ankle-type pressure center controller that outputs a fourth torque command for each leg, and may be configured to output a first torque command for the leg that indicates the sum of the torque amount indicated by the third torque command for the leg and the torque amount indicated by the fourth torque command output by the hip-type pressure center controller or ankle-type pressure center controller for the leg. The fourth torque command output by the ankle-type pressure center controller is a command relating to the torque that the joint actuators should generate in order to ensure that the pressure center point of the ground reaction force received by the sole of the foot from the ground is at a predetermined position within the sole of the foot, as determined based on the ankle strategy.
[0016] The autobalancing controller of the second legged robot described above further includes a vertical controller that outputs a fifth torque command for each leg, and may be configured to output a first torque command for the leg that represents the sum of the torque amount indicated by the third torque command for the leg, the torque amount indicated by the fourth torque command output by the hip-type pressure center controller or ankle-type pressure center controller for the leg, and the torque amount indicated by the fifth torque command for the leg. The fifth torque command is a command relating to the torque that the joint actuator should generate in order for the substantially vertical position of the torso to approach a predetermined neutral state, or a command relating to the torque that the joint actuator should generate in order for the displacement of the joint to approach a predetermined neutral state.
[0017] The auto-balancing controller for the second legged robot described above may further include an external force component extraction unit that extracts the external force components of the third torque command, the fourth torque command, and the fifth torque command, and may be configured to output a torque command as the first torque command for the leg, which is the sum of the torque amount indicated by the external force component of the third torque command for the leg, the torque amount indicated by the external force component of the fourth torque command output by the hip-type pressure center controller or ankle-type pressure center controller for the leg, and the torque amount indicated by the external force component of the fifth torque command for the leg.
[0018] The autobalancing controller for the second legged robot described above further includes a ground contact controller that outputs a sixth torque command for each leg, and an internal force component extraction unit that extracts the internal force component of the sixth torque command. The controller may be configured to output a first torque command for the leg that represents the sum of the torque amount indicated by the external force component of the third torque command for the leg, the torque amount indicated by the external force component of the fourth torque command output by the hip-type pressure center controller or ankle-type pressure center controller for the leg, the torque amount indicated by the external force component of the fifth torque command, and the torque amount indicated by the internal force component of the sixth torque command. The sixth torque command is a command relating to the torque that the joint actuators should generate in order to keep the sole of the foot in contact with the ground.
[0019] The hip-type and ankle-type pressure center controllers of the second legged robot described above can be limited, for example, by using an imperfect integrator to control the amount of torque indicated by the fourth torque command.
[0020] The auto-balancing controller for the second legged robot described above may further include a determination device that determines whether each of the multiple legs is a support leg or a free leg.
[0021] The second legged robot determination device described above can determine, for example, that a leg has switched from a support leg to a free leg when the ground reaction force on the leg remains below a preset first threshold for a predetermined period of time, and that a leg has switched from a free leg to a support leg when the ground reaction force on the leg remains above a preset second threshold for a predetermined period of time. [Effects of the Invention]
[0022] According to the present invention, it is possible to provide a legged robot that maintains balance more reliably than conventional robots. [Brief explanation of the drawing]
[0023] [Figure 1] This is a control block diagram of a legged robot according to the first embodiment of the present invention. [Figure 2] This is a schematic diagram illustrating the independent horizontal control of the present invention. [Figure 3] This is a schematic diagram illustrating the hip-type pressure center control of the present invention. [Figure 4] This is a control block diagram of a legged robot according to a second embodiment of the present invention. [Figure 5] This is a schematic diagram illustrating the ankle-type pressure center control of the present invention. [Figure 6] This is a control block diagram of a legged robot according to a third embodiment of the present invention. [Figure 7] This is a schematic diagram illustrating the vertical control of the present invention. [Figure 8] This is a control block diagram of a legged robot according to a fourth embodiment of the present invention. [Figure 9] This is a schematic diagram illustrating the composite horizontal control of the present invention. [Figure 10] This is a control block diagram of a legged robot according to a fifth embodiment of the present invention. [Figure 11] This is a control block diagram of a legged robot according to the sixth embodiment of the present invention. [Figure 12] This is a control block diagram of a legged robot according to the seventh embodiment of the present invention. [Figure 13] This is a schematic diagram illustrating the grounding control of the present invention. [Figure 14] This is a schematic diagram illustrating the external and internal force components. [Modes for carrying out the invention]
[0024] First, we will explain the various definitions and terms used in this specification.
[0025] [1. Various definitions] In this specification, an m × n zero matrix is defined as O m×n , the n-dimensional zero vector o n , the identity matrix of n×n is I n For any 3-dimensional vector x, [a×] represents a 3×3 skew-symmetric matrix that satisfies equation (1).
number
[0026] In this specification, the function ROT(q,p) is defined as shown in equation (2).
number
[0027] In this specification, the generalized saturation function gsat is defined as shown in equation (3).
number
[0028] [2. Incomplete integral] An incomplete integral is the operation represented by equation (4) or equation (5).
number
number
[0029] [3. Kinematics] As will be described in detail later, the legged robot according to the present invention includes a body and at least one leg connected to the body. The leg includes a foot portion having a sole that can apply torque by contacting the ground, a leg portion, and at least one joint.
[0030] In this specification, the coordinate system set on the body (body coordinate system) is represented as B, and the coordinate system set on the foot portion (foot coordinate system) is represented as F. When the legged robot has two legs (left leg and right leg), the coordinate system set on the foot portion of the left leg (left foot coordinate system) is F L , and the coordinate system set on the foot portion of the right leg (right foot coordinate system) is F R . Also, when the legged robot has n legs, the coordinate system set on the foot portion of the k-th leg (k ∈ {1, ···, n}) is represented as F k . However, when distinguishing the plurality of set foot coordinate systems is not necessary, it may be simply represented as the foot coordinate system F.
[0031] In this specification, the 3×3 attitude matrix indicating the attitude of the foot coordinate system F as seen from the body coordinate system B is B R F . Also, the position vector B r FB B v FB This can be expressed as equation (7).
number
number
[0032] In this specification, for example, if a leg has m joints, then the angle vector q of the m joints F This can be expressed as in equation (8).
number
number
number
[0033] [4.Statics] In this specification, for example, if a leg has m joints, then the torque vector τ of the m joints is defined. F Equation (11) shows the generalized force vector that the legs exert on the feet in torso coordinate system B. B φ FB This can be expressed as in equation (12).
number
number
[0034] Torque vector τ F and the generalized force vector B φ FB satisfy the relational expression (13). Note that B J FB is the aforementioned appropriate Jacobian matrix.
Number
[0035] When the generalized force vector applied by the leg (leg part) expressed in the body coordinate system B to the body is B φ BF the generalized force vector B φ BF and the generalized force vector B φ FB satisfy the relational expression (14).
Number
Number
[0036] [5. External force components and internal force components] [5 - 1. Definition] In this specification, when the legged robot is grounded on the ground with n legs out of the legs connected to the body, the external force components of the generalized force vector sequence B φ F1B T , ···, B φ FnB T T based on a certain distance norm of the generalized force vector sequence B φ F1B T , ···,B φ FnB T ] T This is defined as "an infinite number of generalized force vector sequences that can apply an equivalent generalized force to the torso, the one with the smallest norm based on the above distance standard." Furthermore, in this specification, the generalized force vector sequence that each leg applies to the torso based on a certain distance standard [ B φ F1B T ,···, B φ FnB T ] T The internal force components are "generalized force vector sequence[ B φ F1B T ,···, B φ FnB T ] T It is defined as "the result of subtracting the external force component from the total force."
[0037] [5-2. Generalized forces generated by the legs and generalized forces acting on the torso] Generalized force vectors applied by the leg portion of each leg to the foot portion, expressed in torso coordinate system B. B φ F1B ,···, B φ FnB , and the generalized force vectors that each leg exerts on the torso in torso coordinate system B. B φ B1L ,···, B φ BnR Between these two points, as explained using equation (14), relation (16) holds.
number
number
[0038] When the feet of each leg are in contact with the ground, the generalized resultant force vector that each leg exerts on the torso, as expressed in torso coordinate system B. B φ BG This can be expressed as shown in equation (18).
Math
Math
Math
[0039] [5-3. Extraction of External Force Components and Internal Force Components] The aforementioned generalized force vector sequence B φ<00If it is defined as ||, using Equation (22) ||Uφ * || such that the generalized force vector sequence φ * (hereinafter, this is referred to as φ ex ) is obtained.
Number
Number
Number
Number
[0041] [[ID=4E]] is called the "external force component extraction matrix", and φ ex is called the "external force component" of φ. Also, in the present invention, φ in Equation (26) ex is called the "internal force component" of φ. in
Number
[0042] Also, in this specification, using the external force component extraction matrix Φ ex from φ, the external force component φ ex or the internal force component φ inThe process of finding this is called "extraction." When this extraction is expressed in the form of a function, it becomes as shown in equations (27) and (28).
number
number
[0043] The generalized force vector sequence obtained here [ B φ F1B T ,···, B φ FnB T ] T Generalized force vectors that each leg exerts on the torso B φ FkB (k∈{1,···,n}) can be found. Then, as shown in equation (13), this generalized force vector B φ FkB From the joint torque vector τ of each leg Fk The (k∈{1,···,n}) can be determined. More specifically, the joint torque vector τ Fk This can be found using equation (29).
number
number
[0044] [5-4. Simple Extraction Example 1] The concept of extracting external and internal force components is easier to understand when we simplify a legged robot, which has a torso and two legs (left and right), as shown in Figure 14. In Figure 14, there is a point mass in one-dimensional space corresponding to the torso, with actuators corresponding to the left and right legs attached to its left and right sides. In this extraction example, we assume that the rated output of the left and right actuators is the same.
[0045] The force that the left leg actuator applies to the torso is f L The force that the right leg actuator applies to the torso is f R Therefore, the resultant force f acting on the torso B is, f L +f R This is the result. In this case, the matrix Π is [1,1]. Also, in this case, the generalized force vector sequence [f L ,f R ] T The magnitude is simply √(f L 2 +f R 2 If we evaluate it using ), the matrix U becomes as shown in equation (31).
number
[0046] Based on these findings, the external force component extraction matrix Φ ex When we find this, we get equation (32).
number
number
number
[0047] For example, the force command value for each leg is [f L =4N,f R Assuming [f = 2N], the external force component is [f L,ex =3N,f R,ex =3N], and the internal force component is [f L,in =1N,f R,in =-1N]. Also, the force command value for each leg is [f L =4N,f R Assuming that [f = -2N], the external force component is [f L,ex =1N,f R,ex =1N], and the internal force component is [f L,in =3N,f R,in The result is -3N. The external force component can be said to be the average of the force command values for each leg, divided equally between both legs. The internal force component is the component that compresses (or pulls) the torso from both sides with the same force, and does not contribute to the movement of the torso.
[0048] [5-5. Simple Extraction Example 2] In this example, we assume that the rated output of the left leg actuator is twice the rated output of the right leg actuator. In this case, the generalized force vector sequence [f L ,f R ]T The size of √((f L / 2) 2 +f R 2 It is preferable to evaluate using ), in which case the matrix U and the external force component extraction matrix Φ ex This is expressed as in equations (35) and (36).
number
number
number
number
[0049] For example, the force command value for each leg is [f L =4N,f R Assuming [f = 2N], the external force component is [f L,ex =4.8N,f R,ex =1.2N], and the internal force component is [f L,in =-0.8N,f R,in =0.8N]. Also, the force command value for each leg is [f L =4N,f R Assuming that [f = -2N], the external force component is [f L,ex =1.6N,f R,ex =0.4N], and the internal force component is [f L,in =2.4N,f R,in = -2.4N]. The external force component can be said to be the average of the force command values for each leg, taking the rated output of the actuator as a distance reference, and then dividing it equally between both legs. Also, similar to Extraction Example 1, the internal force component is the component that compresses (or pulls) the torso from both sides with the same force, and does not contribute to the movement of the torso.
[0050] Next, the first to seventh embodiments of the legged robot according to the present invention will be described with reference to the attached drawings.
[0051] [6. First Embodiment] [6-1. Overall Structure] Figure 1 shows a legged robot 30A according to a first embodiment of the present invention. The legged robot 30A comprises a body (not shown in Figure 1), a single leg 31 connected to the body, and a hybrid controller 20A that controls the leg 31. The hybrid controller 20A may be integrated with the body or may be located at a position separate from the body.
[0052] The leg 31 includes a foot portion 33 having a sole that can contact the ground 50 and to which torque can be applied, a leg portion 32, and at least one joint. The sole of the foot portion 33 is provided with at least one load cell for measuring the torque applied to the foot portion 33 from the ground 50. Each joint is also provided with an actuator.
[0053] The hybrid controller 20A includes a leg controller 21 that outputs torque commands in response to operator commands, and an auto-balance controller 10A that outputs torque commands for automatic balance maintenance. Furthermore, the auto-balance controller 10A includes an independent horizontal controller 11a and a hip-type pressure center controller 12a. An example of the leg controller 21 is the force-forward bilateral controller proposed by the inventors of this application in Japanese Patent Application No. 2014-093322, etc.
[0054] The leg controller 21 receives torque commands corresponding to force information sent from the leg operating device 40, which is operated by the operator. B φ FB,O It outputs a torque command based on arbitrary control. B φ FB,O The leg controller 21 outputs the angle vector q of the joints included in the leg 31. FThe position information corresponding to the command is appropriately fed back to the leg control device 40. The leg control device 40 may be integrated with the legged robot 30A, or it may be located at a separate location from the legged robot 30A. If the legged robot 30A is a large work machine equipped with a seat, the leg control device 40 can be said to be integrated with the legged robot 30A. B φ FB,O This corresponds to the "first torque command" of the present invention.
[0055] The independent horizontal controller 11a controls the angle vector q of the joint included in the leg 31. F Torque command obtained from B φ FB,A Outputs a torque command. B φ FB,A This corresponds to the "third torque command" of the present invention. What kind of torque command does the independent horizontal controller 11a receive? B φ FB,A We will explain later why this output is used.
[0056] The hip-type pressure center controller 12a controls the angle vector q of the joint included in the leg 31. F and the floor reaction torque vector n relating to the reaction force that the ground 50 applies to the foot 33 FG Torque command obtained from B φ FB,B Outputs a torque command. B φ FB,B This corresponds to the "fourth torque command" of the present invention. What kind of torque command does the hip-type pressure center controller 12a receive? B φ FB,B We will explain later why this output is used.
[0057] The auto-balancing controller 10A receives the torque command B φ FB,A and torque command B φ FB,B It outputs a torque command indicating the sum of the torque amounts shown. This torque command corresponds to the "second torque command" of the present invention.
[0058] The hybrid controller 20A receives the torque command output by the leg controller 21. B φ FB,O A torque command indicating the sum of the torque amounts indicated by the first torque command and the torque command output by the auto-balance controller 10A (second torque command). B φ FB This is output as a command relating to the torque that the actuators of the joints included in leg 31 should generate.
[0059] In this embodiment, the relationship between the torque commands output by each controller can be summarized as shown in equation (39).
number
[0060] [6-2. Independent Horizontal Control Unit] As shown in Figure 2, the independent horizontal controller 11a sends torque commands indicating the amount of torque that the actuators of each joint should generate so that the torso 34 of the legged robot 30A is approximately vertically above the soles of the feet 33. B φ FB,A The output is as follows: The independent horizontal controller 11a can also be described as a controller that ensures the positional relationship between the torso 34 and the leg section 33 in the approximately horizontal direction is a predetermined positional relationship.
[0061] The independent horizontal controller 11a receives the torque command obtained by equation (40). B φ FB,A Outputs.
number
[0062] Torque vector F n BF,A This can be expressed as shown in equation (41).
number
[0063] [6-3. Hip-type pressure center controller] As shown in Figure 3, the hip-type pressure center controller 12a issues a torque command indicating the amount of torque that the actuators of each joint should generate so that the pressure center point (so-called "CoP," hereinafter also referred to as "ZMP") of the ground reaction force received by the sole of the foot 33 from the ground 50 is located in a predetermined position within the sole of the foot.B φ FB,B Outputs.
[0064] The hip-type pressure center controller 12a uses a foot coordinate system F to obtain the floor reaction torque vector from a load cell located on the sole of the foot. F n FG We perform the incomplete integral expressed by equation (42) using this method.
number
[0065] The hip-type pressure center controller 12a, based on the so-called hip strategy, issues a torque command relating to the amount of torque that the leg portion 32 should apply to the foot portion 33, expressed in the foot coordinate system F. F φ FB,B Determine this as shown in equation (43).
number
number
[0066] Torque command output by the hip-type pressure center controller 12a B φ FB,B This is the torque command of equation (43) F φ FB,B This is represented in the fuselage coordinate system B. Torque command B φ FB,B This can be calculated using equation (45).
number
[0067] For example, if the foot portion 33 has toes and a heel, the torso 34 and the leg portion 32 are connected via a hip joint, and an external force applied to the torso 34 causes the ZMP to remain in a position shifted from a predetermined position within the sole of the foot toward the toes, the hip-type pressure center controller 12a generates a torque in the leg 31 (particularly the hip joint actuator) that tilts the torso 34 forward (towards the toes) and a torque that thrusts the hip joint backward (towards the heel). As a result, the ZMP moves closer to its predetermined position within the sole of the foot.
[0068] According to this embodiment, the legged robot 30A can maintain balance more reliably than conventional robots through simultaneous horizontal control and pressure center control.
[0069] [7. Second Example] [7-1. Overall Structure] Figure 4 shows a legged robot 30B according to a second embodiment of the present invention. The legged robot 30B differs from the legged robot 30A in that it is equipped with a hybrid controller 20B instead of the hybrid controller 20A, but is otherwise similar to the legged robot 30A.
[0070] The hybrid controller 20B differs from the hybrid controller 20A in that it includes the auto-balancing controller 10B instead of the auto-balancing controller 10A, but is otherwise identical to the hybrid controller 20A. Furthermore, the auto-balancing controller 10B differs from the auto-balancing controller 10A in that it further includes the uncle-type pressure center controller 12b, but is otherwise identical to the auto-balancing controller 10A (particularly in that it includes the independent horizontal controller 11a and the hip-type pressure center controller 12a).
[0071] The ankle-type pressure center controller 12b controls the angle vector q of the joint included in the leg 31. F and the floor reaction torque vector n relating to the reaction force that the ground 50 applies to the foot 33 FG Torque command obtained from B φ FB,B Outputs a torque command. B φ FB,B This also corresponds to the "fourth torque command" of the present invention. What kind of torque command does the uncle-type pressure center controller 12b receive? B φ FB,B We will explain later why this output is used.
[0072] The auto-balancing controller 10B receives the torque command output by the independent horizontal controller 11a. B φ FB,A The torque amount indicated and the torque command output by the hip-type pressure center controller 12a or the ankle-type pressure center controller 12b B φ FB,B It outputs a torque command that shows the sum of the torque amount indicated by [the other parameter]. This torque command corresponds to the "second torque command" of the present invention.
[0073] The hybrid controller 20B receives the torque command output by the leg controller 21. B φ FB,O A torque command indicating the sum of the torque amounts indicated by the first torque command and the torque command output by the auto-balance controller 10B (second torque command). B φ FBThis is output as a command relating to the torque that the actuators of the joints included in leg 31 should generate.
[0074] In this embodiment, the relationship between the torque commands output by each controller can be summarized as shown in equation (39) above.
[0075] [7-2. Uncle-type pressure center controller] As shown in Figure 5, the ankle-type pressure center controller 12b issues a torque command indicating the amount of torque that the actuators of each joint should generate so that the pressure center point ZMP (CoP) of the ground reaction force received by the sole of the foot 33 from the ground 50 is at a predetermined position within the sole of the foot. B φ FB,B Outputs.
[0076] The ankle-type pressure center controller 12b, like the hip-type pressure center controller 12a, uses a foot coordinate system F obtained from a load cell on the sole of the foot to represent the floor reaction torque vector. F n FG We perform the incomplete integral expressed by equation (42) using this method.
[0077] The ankle-type pressure center controller 12b, based on the so-called ankle strategy, issues a torque command relating to the amount of torque that the leg 32 should apply to the foot 33, expressed in the foot coordinate system F. F φ FB,B Determine this as shown in equation (46).
number
number
[0078] For example, if the foot portion 33 has toes and a heel, and the foot portion 33 and the leg portion 32 are connected via an ankle joint, and the ZMP is persistently in a position shifted from a predetermined position within the sole of the foot toward the toes due to an external force applied to the torso 34, the ankle-type pressure center controller 12b generates a torque in the leg 31 (particularly the ankle joint actuator) that tilts the torso 34 backward (towards the heel). As a result, the ZMP moves closer to its predetermined position within the sole of the foot.
[0079] The legged robot 30B according to this embodiment includes a hip-type pressure center controller 12a based on a hip strategy and an ankle-type pressure center controller 12b based on an ankle strategy. Therefore, the legged robot 30B according to this embodiment can maintain balance more reliably and favorably than the legged robot 30A according to the first embodiment by using the two pressure center controls depending on the situation. The pressure center control based on the hip strategy is particularly effective when it is necessary to correct a posture that has been greatly disrupted by a large external force or when it is necessary to maintain the contact state of the soles of the feet, while the pressure center control based on the ankle strategy is particularly effective when it is necessary to avoid large displacement of the torso (for example, when transporting something that is fragile). The pressure center control based on the ankle strategy also has the advantage that it is less likely to interfere with control by other controllers.
[0080] [8. Third Embodiment] [8-1. Overall Structure] Figure 6 shows a legged robot 30C according to a third embodiment of the present invention. The legged robot 30C differs from the legged robot 30B in that it is equipped with a hybrid controller 20C instead of the hybrid controller 20B, but is otherwise similar to the legged robot 30B.
[0081] The hybrid controller 20C differs from the hybrid controller 20B in that it includes the auto-balancing controller 10C instead of the auto-balancing controller 10B, but is otherwise identical to the hybrid controller 20B. Furthermore, the auto-balancing controller 10C differs from the auto-balancing controller 10B in that it further includes the vertical controller 13, but is otherwise identical to the auto-balancing controller 10B (particularly in that it includes the independent horizontal controller 11a, the hip-type pressure center controller 12a, and the uncle-type pressure center controller 12b).
[0082] The vertical controller 13 controls the angle vector q of the joints included in the leg 31. F Torque command obtained from B φ FB,C Outputs a torque command. B φ FB,C This corresponds to the "fifth torque command" of the present invention. What kind of torque command does the vertical controller 13 use? B φ FB,C We will explain later why this output is used.
[0083] The auto-balancing controller 10C receives the torque command output by the independent horizontal controller 11a. B φ FB,A The torque amount indicated and the torque command output by the hip-type pressure center controller 12a or the ankle-type pressure center controller 12b B φ FB,B The torque amount indicated and the torque command output by the vertical controller 13 B φ FB,C It outputs a torque command that shows the sum of the torque amounts indicated by and . This torque command corresponds to the "second torque command" of the present invention.
[0084] The hybrid controller 20C receives the torque command output by the leg controller 21. B φ FB,O A torque command indicating the sum of the torque amounts indicated by the first torque command and the torque command output by the auto-balance controller 10C (second torque command). B φ FBThis is output as a command relating to the torque that the actuators of the joints included in leg 31 should generate.
[0085] In this embodiment, the relationship between the torque commands output by each controller can be summarized as shown in equation (48).
number
[0086] [8-2. Vertical Control Unit] As shown in Figure 7, the vertical controller 13 sends a torque command indicating the amount of torque that the joint actuators should generate in order to bring the approximately vertical position (i.e., height) of the torso 34 of the legged robot 30C closer to a predetermined neutral state. B φ FB,C The output is as follows: The vertical controller 13 can also be described as a controller that ensures that the approximately vertical positional relationship between the torso 34 and the soles of the feet 33 is a predetermined positional relationship.
[0087] The vertical controller 13 receives the torque command obtained by equation (49). B φ FB,C Outputs.
number
[0088] According to this embodiment, the legged robot 30C can maintain balance more reliably than the legged robot 30B according to the second embodiment by simultaneously performing horizontal control, pressure center control, and vertical control.
[0089] [9. Fourth Embodiment] [9-1. Overall Structure] Figure 8 shows a legged robot 30D according to a fourth embodiment of the present invention. The legged robot 30D comprises a body (not shown in Figure 8), two legs 31L and 31R connected to the body, and a hybrid controller 20D that controls the legs 31L and 31R. The hybrid controller 20D may be integrated with the body or may be located at a position separate from the body.
[0090] The left leg 31L includes a foot 33L having a sole that can contact the ground 50 and to which torque can be applied, a leg 32L, and at least one joint. The sole of the foot 33L is provided with at least one load cell for measuring the torque applied to the foot 33L from the ground 50. Each joint is also provided with an actuator.
[0091] The right leg 31R includes a foot portion 33R having a sole that can contact the ground 50 and to which torque can be applied, a leg portion 32R, and at least one joint. The sole of the foot portion 33R is provided with at least one load cell for measuring the torque applied to the foot portion 33R from the ground 50. Each joint is also provided with an actuator.
[0092] The hybrid controller 20D includes a leg controller 21L for controlling the left leg 31L and a leg controller 21R for controlling the right leg 31R, and an auto-balance controller 10D for automatic balance maintenance. The auto-balance controller 10D also includes a composite horizontal controller 11bL, a hip-type pressure center controller 12aL, and a vertical controller 13L for controlling the left leg 31L, a composite horizontal controller 11bR, a hip-type pressure center controller 12aR, and a vertical controller 13R for controlling the right leg 31R, an external force component extraction matrix calculation unit 14 and external force component extraction units 15, 16, 17 related to the control of both legs 31L, 31R, and a determination unit (not shown).
[0093] The leg controller 21L receives torque commands in response to force information sent from the left leg control unit 40L, which is operated by the operator. B φ FLB,O It outputs the angle vector q of the joint included in the left leg 31L. FL The corresponding position information is fed back to the left leg control device 40L. B φ FLB,O This is the "first torque command" applied to the left leg 31L.
[0094] The leg controller 21R receives torque commands corresponding to force information sent from the right leg control unit 40R operated by the operator. B φ FRB,O It outputs the angle vector q of the joint included in the right leg 31R. FR The corresponding position information is fed back to the right leg control device 40R. B φ FRB,O This is the "first torque command" applied to the right leg 31R.
[0095] The combined horizontal controller 11bL controls the joint angle vector q included in the left leg 31L. FL and the angle vector q of the joint included in the right leg 31R FR Torque command obtained from B φ FLB,A Outputs a torque command. B φ FLB,A This is the "third torque command" for the left leg 31L. What kind of torque command does the combined horizontal controller 11bL issue? B φ FLB,A We will explain later why this output is used.
[0096] The combined horizontal controller 11bR controls the joint angle vector q included in the right leg 31R. FR and the angle vector q of the joint included in the left leg 31L FL Torque command obtained from B φ FRB,A Outputs a torque command. B φ FRB,A This is the "third torque command" for the right leg 31R. What kind of torque command does the composite horizontal controller 11bR issue? B φ FRB,A We will explain later why this output is used.
[0097] The hip-type pressure center controller 12aL controls the joint angle vector q included in the left leg 31L. FL and the floor reaction torque vector n relating to the reaction force that the ground 50 applies to the foot 33L FLG Torque command obtained from B φ FLB,B Outputs a torque command. Bφ FLB,B This is the "fourth torque command" applied to the left leg 31L.
[0098] The hip-type pressure center controller 12aR controls the joint angle vector q included in the right leg 31R. FR and the floor reaction torque vector n relating to the reaction force that the ground 50 applies to the foot 33R FRG Torque command obtained from B φ FRB,B Outputs a torque command. B φ FRB,B This is the "fourth torque command" applied to the right leg 31R.
[0099] The vertical controller 13L controls the angle vector q of the joint included in the left leg 31L. FL Torque command obtained from B φ FLB,C Outputs a torque command. B φ FLB,C This is the "fifth torque command" for the left leg 31L.
[0100] The vertical controller 13R controls the angle vector q of the joint included in the right leg 31R. FR Torque command obtained from B φ FRB,C Outputs a torque command. B φ FRB,C This is the "fifth torque command" applied to the right leg 31R.
[0101] The external force component extraction matrix calculation unit 14 calculates the angle vector q of the joints included in both legs 31L, 31R. FL ,q FR Extraction matrix Φ of external force components ex The external force component extraction matrix calculation unit 14 performs this calculation using equation (24). Note that the matrix Π in equation (24) is defined in equation (19). Also, the matrix in equation (19) B Π FkB This is defined by equation (17). The external force component extraction matrix calculation unit 14 calculates the position vector in equation (17). B r FkB angle vector q FL ,q FR The decision will be made based on the following criteria.
[0102] The external force component extraction unit 15 uses the external force component extraction matrix Φ calculated by the external force component extraction matrix calculation unit 14. ex The torque command output by the combined horizontal controllers 11bL and 11bR was used. B φ FLB,A , B φ FRB,A External force components are extracted from the material. The external force component extraction unit 15 performs this extraction using formula (23).
[0103] The external force component extraction unit 16 uses the external force component extraction matrix Φ calculated by the external force component extraction matrix calculation unit 14. ex The torque command output by the hip-type pressure center controllers 12aL and 12aR was used. B φ FLB,B , B φ FRB,B External force components are extracted from the material. The external force component extraction unit 16 performs this extraction using formula (23).
[0104] Similarly, the external force component extraction unit 17 uses the external force component extraction matrix Φ calculated by the external force component extraction matrix calculation unit 14. ex Using this, the torque commands output by the vertical controllers 13L and 13R B φ FLB,C , B φ FRB,C External force components are extracted from the material. The external force component extraction unit 17 performs this extraction using formula (23).
[0105] The detector obtains the ground reaction torque vector from load cells located on the foot portion 33L of the left leg 31L and the foot portion 33R of the right leg 31R. F n FLG , F n FRG Using this, it is determined whether the left leg 31L and the right leg 31R are support legs or swing legs. Specifically, the determination device uses the ground reaction torque vector of the left leg 31L. F n FLG When the ground reaction torque vector of the left leg 31L remains below a predetermined first threshold for a specified period of time, it is determined that the left leg 31L has switched from the support leg to the swing leg, and the ground reaction torque vector of the left leg 31L is determined. F n FLGThe system determines that the left leg 31L has switched from the swing leg to the support leg when the threshold value remains above a preset second threshold for a predetermined period of time. The system makes the same determination for the right leg 31R. Each controller constituting the auto-balance controller 10D can refer to the determination result made by the system. The first threshold and the second threshold may be the same value or may be different values.
[0106] The auto-balancing controller 10D receives the torque command. B φ FLB,A Torque command B φ FLB,B and torque command B φ FLB,C It outputs a torque command indicating the sum of the torque amounts represented by the external force components. This torque command is the "second torque command" for the left leg 31L.
[0107] Furthermore, the auto-balancing controller 10D receives the torque command. B φ FRB,A Torque command B φ FRB,B and torque command B φ FRB,C It outputs a torque command indicating the sum of the torque amounts represented by the external force components. This torque command is the "second torque command" for the right leg 31R.
[0108] The hybrid controller 20D receives the torque command output by the leg controller 21L. B φ FLB,O A torque command indicating the sum of the torque amounts shown by the (first torque command) and the torque command (second torque command) for the left leg 31L output by the auto-balance controller 10D. B φ FLB This is output as a command regarding the torque that the actuators of the joints included in the left leg 31L should generate.
[0109] Furthermore, the hybrid controller 20D receives the torque command output by the leg controller 21R. B φ FRB,OA torque command indicating the sum of the torque amounts shown by the (first torque command) and the torque command (second torque command) for the right leg 31R output by the auto-balance controller 10D. B φ FRB This is output as a command regarding the torque that the actuator of the joint included in the right leg 31R should generate.
[0110] In this embodiment, the relationship between the torque commands output by each controller can be summarized as shown in equation (50).
number
[0111] [9-2. Combined Horizontal Control Unit] The combined horizontal controller 11bL, when the left leg 31L is the support leg and the other leg (right leg 31R) is the free leg, issues a torque command indicating the amount of torque that the actuators of each joint of the left leg 31L should generate so that the torso 34 is positioned approximately vertically above the sole of the foot 33L. B φ FLB,AThe combined horizontal controller 11bL outputs the following: When the left leg 31L and the other leg (right leg 31R) are support legs, the combined horizontal controller 11bL outputs a torque command indicating the amount of torque that the actuators of each joint of the left leg 31L should generate so that the torso 34 is located approximately vertically above the interval between the division point A:(1-A) and the division point (1-A):A of the line segment connecting the sole of the left leg 31L and the sole of the right leg 31R (i.e., within the hatched plane in Figure 9), as shown in Figure 9. B φ FLB,A The output is as follows: The combined horizontal controller 11bL can also be described as a controller that ensures the positional relationship between the torso 34 and the leg portion 33L (and leg portion 33R) in the approximately horizontal direction is a predetermined positional relationship. Note that A is a constant set to 0 or more and less than 0.5. It is preferable that the constant A is around 0.1.
[0112] The combined horizontal controller 11bL, when the left leg 31L is the support leg and the other leg (right leg 31R) is the free leg, sets the target value for the position vector. F r BF,d Define it as shown in equation (51).
number
[0113] On the other hand, the combined horizontal controller 11bL, when the left leg 31L and the other leg (right leg 31R) are support legs, sets the target value for the position vector. F r BF,d Define it as shown in equation (52).
number
number
[0114] In the combined horizontal controller 11bL, if the left leg 31L is the support leg and the other leg (right leg 31R) is the free leg, the torque command is calculated using equations (51), (54), and (55). B φ FB,A ( B φ FLB,A ) outputs. On the other hand, the combined horizontal controller 11bL outputs the torque command obtained by equations (52), (53), (54), and (55) when the left leg 31L and the other leg (right leg 31R) are support legs. B φ FB,A ( B φ FLB,A Outputs ).
number
number
[0115] The combined horizontal controller 11bR receives the torque command obtained in the same manner. B φ FRB,A The output is as follows. Note that in horizontal control using the combined horizontal controller 11bR, the subscript F indicates the right leg 31R, and the subscript F0 indicates the other leg (left leg 31L).
[0116] According to this embodiment, the legged robot 30D can maintain balance more reliably than conventional robots through simultaneous horizontal control, pressure center control, and vertical control.
[0117] Furthermore, in the legged robot 30D according to this embodiment, instead of directly using the outputs of controllers 11bL, 11bR, 12aL, 12aR, 13L, and 13R included in the auto-balance controller 10D, the external force component of these outputs is used. Therefore, the legged robot 30D can avoid situations in which the left leg 31L and the right leg 31R compress or pull the torso 34 from two directions. This contributes to reducing the burden on the actuators constituting the joints of the left leg 31L and the right leg 31R, as well as reducing the power consumption of these actuators, and can also suppress failure due to interference between the control outputs of different legs.
[0118] [10. Fifth Example] [10-1. Overall Structure] Figure 10 shows a legged robot 30E according to a fifth embodiment of the present invention. The legged robot 30E differs from the legged robot 30D in that it is equipped with a hybrid controller 20E instead of the hybrid controller 20D, but is otherwise similar to the legged robot 30D.
[0119] The hybrid controller 20E differs from the hybrid controller 20D in that it includes the auto-balancing controller 10E instead of the auto-balancing controller 10D, but is otherwise identical to the hybrid controller 20D. Furthermore, the auto-balancing controller 10E differs from the auto-balancing controller 10D in that it includes the ankle-type pressure center controllers 12bL and 12bR instead of the hip-type pressure center controllers 12aL and 12aR, but is otherwise identical to the auto-balancing controller 10D (particularly in that it includes the combined horizontal controllers 11bL and 11bR, the vertical controllers 13L and 13R, the external force component extraction matrix calculation unit 14, and the external force component extraction units 15, 16, and 17).
[0120] The auto-balancing controller 10E receives the torque command B φ FLB,A Torque command B φ FLB,B and torque command B φ FLB,C It outputs a torque command indicating the sum of the torque amounts represented by the external force components. This torque command is the "second torque command" for the left leg 31L.
[0121] Furthermore, the auto-balance controller 10E receives the torque command. B φ FRB,A Torque command B φ FRB,B and torque command B φ FRB,C It outputs a torque command indicating the sum of the torque amounts represented by the external force components. This torque command is the "second torque command" for the right leg 31R.
[0122] The hybrid controller 20E receives the torque command output by the leg controller 21L. B φ FLB,O A torque command indicating the sum of the torque amounts shown by the (first torque command) and the torque command (second torque command) for the left leg 31L output by the auto-balance controller 10E. B φ FLB This is output as a command regarding the torque that the actuators of the joints included in the left leg 31L should generate.
[0123] Furthermore, the hybrid controller 20E receives the torque command output by the leg controller 21R. B φ FRB,O A torque command indicating the sum of the torque amounts shown by the first torque command and the torque command for the right leg 31R output by the auto-balance controller 10E (second torque command). B φ FRB This is output as a command regarding the torque that the actuator of the joint included in the right leg 31R should generate.
[0124] In this embodiment, the relationship between the torque commands output by each controller can be summarized as shown in equation (50) above.
[0125] [11. Sixth Example] [11-1. Overall Structure] Figure 11 shows a legged robot 30F according to the sixth embodiment of the present invention. The legged robot 30F differs from the legged robot 30D in that it is equipped with a hybrid controller 20F instead of the hybrid controller 20D, but is otherwise similar to the legged robot 30D.
[0126] The hybrid controller 20F differs from the hybrid controller 20D in that it includes the auto-balancing controller 10F instead of the auto-balancing controller 10D, but is otherwise identical to the hybrid controller 20D. Furthermore, the auto-balancing controller 10F differs from the auto-balancing controller 10D in that it further includes the uncle-type pressure center controllers 12bL and 12bR, but is otherwise identical to the auto-balancing controller 10D (particularly in that it includes the composite horizontal controllers 11bL and 11bR, the hip-type pressure center controllers 12aL and 12aR, the vertical controllers 13L and 13R, the external force component extraction matrix calculation unit 14, and the external force component extraction units 15, 16, and 17).
[0127] The auto-balancing controller 10F receives the torque command output by the combined horizontal controller 11bL. B φ FLB,AThe torque amount indicated by the external force component and the torque command output by the hip-type pressure center controller 12aL or the ankle-type pressure center controller 12bL B φ FLB,B The torque amount indicated by the external force component and the torque command output by the vertical controller 13L B φ FLB,C It outputs a torque command that shows the sum of the torque amount indicated by the external force component. This torque command is the "second torque command" for the left leg 31L.
[0128] Furthermore, the auto-balancing controller 10F receives the torque command output by the combined horizontal controller 11bR. B φ FRB,A The torque amount indicated by the external force component and the torque command output by the hip-type pressure center controller 12aR or the ankle-type pressure center controller 12bR B φ FRB,B The torque amount indicated by the external force component and the torque command output by the vertical controller 13R B φ FRB,C It outputs a torque command that shows the sum of the torque amount indicated by the external force component. This torque command is the "second torque command" for the right leg 31R.
[0129] The hybrid controller 20F receives the torque command output by the leg controller 21L. B φ FLB,O A torque command indicating the sum of the torque amounts shown by the (first torque command) and the torque command (second torque command) for the left leg 31L output by the auto-balance controller 10F. B φ FLB This is output as a command regarding the torque that the actuators of the joints included in the left leg 31L should generate.
[0130] Furthermore, the hybrid controller 20F receives the torque command output by the leg controller 21R. B φ FRB,O A torque command indicating the sum of the torque amounts shown by the (first torque command) and the torque command (second torque command) for the right leg 31R output by the auto-balance controller 10F. B φ FRBThis is output as a command regarding the torque that the actuator of the joint included in the right leg 31R should generate.
[0131] In this embodiment, the relationship between the torque commands output by each controller can be summarized as shown in equation (50) above.
[0132] [12. Seventh Example] [12-1. Overall Structure] Figure 12 shows a legged robot 30G according to the seventh embodiment of the present invention. The legged robot 30G differs from the legged robot 30F in that it is equipped with a hybrid controller 20G instead of the hybrid controller 20F, but is otherwise similar to the legged robot 30F.
[0133] The hybrid controller 20G differs from the hybrid controller 20F in that it includes the auto-balancing controller 10G instead of the auto-balancing controller 10F, but is otherwise identical to the hybrid controller 20F. Furthermore, the auto-balancing controller 10G differs from the auto-balancing controller 10F in that it further includes a grounding controller 18L for controlling the left leg 31L, a grounding controller 18R for controlling the right leg 31R, and an internal force component extraction unit 19, but is otherwise identical to the auto-balancing controller 10F.
[0134] Grounding controller 18L controls the joint angle vector q included in the left leg 31L. FL and the floor reaction torque vector n relating to the reaction force that the ground 50 applies to the foot 33L FLG Torque command obtained from B φ FLB,D Outputs a torque command. B φ FLB,D This is the "6th torque command" for the left leg 31L. What kind of torque command does the grounding controller 18L issue? B φ FLB,D We will explain later why this output is used.
[0135] Grounding controller 18R controls the joint angle vector q included in the left leg 31R. FRand the floor reaction torque vector n relating to the reaction force that the ground 50 applies to the foot 33R FRG Torque command obtained from B φ FRB,D Outputs a torque command. B φ FRB,D This is the "6th torque command" for the left leg 31R. What kind of torque command does the grounding controller 18R issue? B φ FRB,D We will explain later why this output is used.
[0136] The internal force component extraction unit 19 uses the external force component extraction matrix Φ calculated by the external force component extraction matrix calculation unit 14. ex The torque command output by the grounding controllers 18L and 18R was used. B φ FLB,D , B φ FRB,D The internal force component is extracted from it. The internal force component extraction unit 19 performs this extraction according to formula (26).
[0137] The auto-balancing controller 10G receives the torque command output by the combined horizontal controller 11bL. B φ FLB,A The torque amount indicated by the external force component and the torque command output by the hip-type pressure center controller 12aL or the ankle-type pressure center controller 12bL B φ FLB,B The torque amount indicated by the external force component and the torque command output by the vertical controller 13L B φ FLB,C The torque amount indicated by the external force component and the torque command output by the grounding controller 18L B φ FLB,D It outputs a torque command that shows the sum of the torque amount indicated by the internal force component. This torque command is the "second torque command" for the left leg 31L.
[0138] Furthermore, the auto-balancing controller 10G receives the torque command output by the combined horizontal controller 11bR. B φ FRB,A The torque amount indicated by the external force component and the torque command output by the hip-type pressure center controller 12aR or the ankle-type pressure center controller 12bR B φ FRB,BThe torque amount indicated by the external force component and the torque command output by the vertical controller 13R B φ FRB,C The torque amount indicated by the external force component and the torque command output by the grounding controller 18R B φ FRB,D It outputs a torque command that shows the sum of the torque amount indicated by the internal force component. This torque command is the "second torque command" for the right leg 31R.
[0139] The hybrid controller 20G receives the torque command output by the leg controller 21L. B φ FLB,O A torque command indicating the sum of the torque amounts shown by the (first torque command) and the torque command (second torque command) for the left leg 31L output by the auto-balance controller 10G. B φ FLB This is output as a command regarding the torque that the actuators of the joints included in the left leg 31L should generate.
[0140] Furthermore, the hybrid controller 20G receives the torque command output by the leg controller 21R. B φ FRB,O A torque command indicating the sum of the torque amounts shown by the (first torque command) and the torque command (second torque command) for the right leg 31R output by the auto-balance controller 10G. B φ FRB This is output as a command regarding the torque that the actuator of the joint included in the right leg 31R should generate.
[0141] In this embodiment, the relationship between the torque commands output by each controller can be summarized as shown in equation (56).
number
[0142] [12-2. Grounding Controller] As shown in Figure 13, the grounding controllers 18L and 18R issue torque commands indicating the amount of torque that the joint actuators should generate to prevent the foot 33L or foot 33R from lifting off the ground 50 due to the influence of pressure center control when both the left leg 31L and the right leg 31R are in contact with the ground. B φ FLB,D , B φ FRB,D The output is as follows: The grounding controllers 18L and 18R can also be described as controllers that ensure the soles of the feet 33L and 33R remain in contact with the ground 50.
[0143] The grounding controller 18L obtains the floor reaction torque vector from a load cell located on the sole of the foot 33L. F n FLG We perform the incomplete integral expressed by equation (57) using this method.
number
[0144] The grounding controller 18L is this F n FLGI,D Torque command obtained using equation (58) B φ FLB,D Outputs.
number
[0145] The grounding controller 18R receives the torque command obtained in the same manner. B φ FRB,D Outputs.
[0146] Torque commands output by hip-type pressure center controllers 12aL, 12aR and ankle-type pressure center controllers 12bL, 12bR B φ FLB,B , B φ FRB,B Similarly, torque command B φ FLB,D , B φ FRB,D It can be said that this is restricted by an incomplete integrator.
[0147] According to this embodiment, the legged robot 30G can maintain balance more reliably than the legged robot 30F according to the sixth embodiment through simultaneous horizontal control, pressure center control, vertical control, and ground contact control.
[0148] Furthermore, in the legged robot 30G according to this embodiment, the internal force component of the output of the ground contact controllers 18L and 18R is used instead of using the output directly. Therefore, with the legged robot 30G, the legs 33L and 33R can be kept in contact with the ground without moving the torso 34.
[0149] [13. Variant] The first to seventh embodiments of the legged robot according to the present invention have been described above, but the configuration of the present invention is not limited to these.
[0150] For example, the independent horizontal controller 11a provides a torque command indicating the amount of torque that the actuators of each joint should generate so that the torso 34 is approximately vertically above the soles of the feet 33. B φ FB,A This can also be calculated using equation (59).
number
[0151] Furthermore, the independent horizontal controller 11a according to equation (59) generates only translational force on the foot due to its operation, and does not generate rotational force (torque). This makes it possible to increase the ankle joint torque allocated to the pressure center controller within the range of the "limitation of ankle joint torque to prevent the sole of the foot from lifting off the ground," which is unavoidable in pressure center control as an ankle strategy, and also reduces the maximum torque required for the ankle joint actuator, thereby making the tip of the foot lighter, an advantage not found in the implementation according to equation (40).
[0152] Furthermore, the vertical controllers 13, 13L, and 13R provide torque commands indicating the amount of torque that the joint actuators should generate in order to bring the joint displacements in the legs 31, 31L, and 31R closer to a predetermined neutral state. B φ FB,C It may also output such a torque command. B φ FB,C This can be calculated using equation (60).
number
[0153] Furthermore, the independent horizontal controller 11a and vertical controller 13 can be formally combined into a single unit by setting an appropriate controller, for example, as shown in equation (61).
number
[0154] Furthermore, the imperfect integrators used in the hip-type pressure center controllers 12a, 12aL, 12aR, the uncle-type pressure center controllers 12b, 12bL, 12bR, and the grounding controllers 18L, 18R may be imperfect integrators with limiters. Unlike the output limiting of an input-dependent imperfect integrator, this limiter explicitly limits the output.
[0155] Furthermore, in the legged robot 30D according to the fourth embodiment, the legged robot 30E according to the fifth embodiment, and the legged robot 30F according to the sixth embodiment, some or all of the external force component extraction units 15, 16, and 17 may be omitted. If all of these are omitted, the external force component extraction matrix calculation unit 14 may also be omitted.
[0156] Similarly, in the seventh embodiment of the legged robot 30G, some or all of the external force component extraction units 15, 16, 17 and the internal force component extraction unit 19 may be omitted. If all of these are omitted, the external force component extraction matrix calculation unit 14 may also be omitted.
[0157] Furthermore, in the legged robot 30D according to the fourth embodiment, the legged robot 30E according to the fifth embodiment, the legged robot 30F according to the sixth embodiment, and the legged robot 30G according to the seventh embodiment, the vertical direction controllers 13L and 13R may be omitted. In this case, the external force component extraction unit 17 can also be omitted.
[0158] Furthermore, the foot portions 33, 33L, and 33R in each embodiment may be provided with ground reaction force detection sensors other than load cells. For example, by placing a multi-axis force sensor on the foot portion, the required ground reaction force can be measured.
[0159] Furthermore, the legged robot according to the present invention may have three or more identical or different legs.
[0160] If the legs include the 1st leg, 2nd leg, 3rd leg, 4th leg, ..., nth leg, the composite horizontal controller controlling each leg will use the following torque commands. B φ F*B,A Outputs. (1) When the first leg is the support leg and all other legs (second, third, fourth, ..., nth leg) are free legs: The composite horizontal controller controlling the first leg issues a torque command indicating the amount of torque that the actuators of each joint of the first leg should generate so that the torso is positioned approximately vertically above the sole of the first leg. B φ F1B,A Outputs. (2) When the first and second legs are support legs and all other legs (third, fourth, ..., nth leg) are free legs: The composite horizontal controller controlling the first leg issues a torque command indicating the amount of torque that the actuators of each joint of the first leg should generate so that the torso is approximately vertically above the line segment formed by connecting the soles of the first and second legs. B φ F1B,A It outputs the following. In addition, the composite horizontal controller that controls the second leg outputs a torque command indicating the amount of torque that the actuators of each joint of the second leg should generate so that the fuselage is approximately vertically above the aforementioned line segment. B φ F2B,A Outputs. (3) When the first, second, and third legs are support legs and all other legs (fourth, ..., nth leg) are free legs: The composite horizontal controller controlling the first leg issues a torque command indicating the amount of torque that the actuators of each joint of the first leg should generate so that the torso is approximately vertically above the triangle formed by connecting the soles of the first, second, and third legs. B φ F1B,A The composite horizontal controller that controls the second leg outputs a torque command indicating the amount of torque that the actuators of each joint of the second leg should generate so that the torso is positioned approximately vertically above the aforementioned triangle. B φ F2B,AIt outputs the following. In addition, the composite horizontal controller that controls the third leg outputs a torque command indicating the amount of torque that the actuators of each joint of the third leg should generate so that the torso is approximately vertically above the aforementioned triangle. B φ F3B,A Outputs.
[0161] In summary, a composite horizontal controller can be described as a controller that ensures the torso is positioned approximately vertically above the polygon formed by connecting the soles of all the support legs. The control described in (1) above moves the torso onto a special polygon (=point) with only one vertex, while the control described in (2) above moves the torso onto a special polygon (=line segment) with only two vertices. [Explanation of symbols]
[0162] 10A, 10B, 10C, 10D, 10E, 10F, 10G Auto-balancing controller 11a Independent Horizontal Controller 11bL, 11bR Combined Horizontal Control Unit 12a, 12aL, 12aR Hip-type pressure center controller 12b, 12bL, 12bR Uncle-type pressure center controller 13, 13L, 13R Vertical Direction Controller 14 External force component extraction matrix calculation unit 15 External force component extraction section 16 External force component extraction section 17 External force component extraction section 18L, 18R Grounding Controller 19 Internal force component extraction part 20A, 20B, 20C, 20D, 20E, 20F, 20G Hybrid Controllers 21, 21L, 21R Leg Controllers 30A, 30B, 30C, 30D, 30E, 30F, 30G Legged robots 31 legs 31L left leg 31R right leg 32,32L,32R Legs 33,33L,33R Foot 34 Torso 40-foot operating device 40L Left Foot Operating Device 40R Right Foot Operating Device
Claims
1. A legged robot comprising a torso, legs connected to the torso, and a hybrid controller for controlling the legs, The aforementioned leg is, A foot having a sole that can make contact with the ground, Legs and, At least one joint and Includes, The aforementioned hybrid controller is An auto-balance controller that outputs a first torque command for automatic balance maintenance, A leg controller that outputs a second torque command based on arbitrary control and Includes, The joint actuator is configured to output a torque command indicating the sum of the torque amount indicated by the first torque command and the torque amount indicated by the second torque command, as a command relating to the torque to be generated by the actuator. The aforementioned auto-balancing controller is An independent horizontal controller that outputs a third torque command, A hip-type pressure center controller that outputs the fourth torque command, Includes, The system is configured to output a torque command as the first torque command that represents the sum of the torque amount indicated by the third torque command and the torque amount indicated by the fourth torque command. The third torque command is a command relating to the torque that the joint actuator should generate in order to position the torso approximately vertically above the soles of the feet. The fourth torque command is a command relating to the torque that the joint actuator should generate in order to ensure that the center of pressure of the ground reaction force received by the sole of the foot from the ground is at a predetermined position within the sole of the foot, as determined based on the hip strategy. The torque amount indicated by the fourth torque command is limited so as not to increase indefinitely. A legged robot characterized by the following features.
2. The aforementioned auto-balancing controller is Ankle-type pressure center controller that outputs the fourth torque command. It further includes, The system is configured to output a first torque command that represents the sum of the torque amount indicated by the third torque command and the torque amount indicated by the fourth torque command output by the hip-type pressure center controller or the ankle-type pressure center controller. The fourth torque command output by the ankle-type pressure center controller is a command relating to the torque that the joint actuator should generate in order to ensure that the pressure center point of the ground reaction force received by the sole of the foot from the ground is at a predetermined position within the sole of the foot, as determined based on the ankle strategy. The torque amount indicated by the fourth torque command output by the aforementioned anchor-type pressure center controller is limited so as not to increase indefinitely. The legged robot according to feature 1.
3. The aforementioned auto-balancing controller is Vertical controller that outputs the fifth torque command. It further includes, The system is configured to output a first torque command that represents the sum of the torque amount indicated by the third torque command, the torque amount indicated by the fourth torque command output by the hip-type pressure center controller or the ankle-type pressure center controller, and the torque amount indicated by the fifth torque command. The fifth torque command is a command relating to the torque that the actuator of the joint should generate in order to bring the substantially vertical position of the torso closer to a predetermined neutral state, or a command relating to the torque that the actuator of the joint should generate in order to bring the displacement of the joint closer to a predetermined neutral state. The legged robot according to feature 2.
4. The hip-type pressure center controller and the ankle-type pressure center controller limit the amount of torque indicated by the fourth torque command by using an imperfect integrator. A legged robot as described in claim 2 or 3.
5. A legged robot comprising a torso, a plurality of legs connected to the torso, and a hybrid controller for controlling the plurality of legs, Each of the aforementioned multiple legs is, A foot having a sole that can make contact with the ground, Legs and, At least one joint and Includes, The aforementioned hybrid controller is An auto-balance controller that outputs a first torque command for maintaining automatic balance for each of the legs, A leg controller that outputs a second torque command based on arbitrary control for each leg, Includes, The system is configured to output a torque command indicating the sum of the torque amount indicated by the first torque command for the leg and the torque amount indicated by the second torque command for the leg, as a command for the torque to be generated by the actuator of the joint included in the leg. The aforementioned auto-balancing controller is A composite horizontal controller that outputs a third torque command for each of the legs, A hip-type pressure center controller that outputs a fourth torque command to each of the legs, Includes, The system is configured to output a first torque command for the leg that indicates the sum of the torque amount indicated by the third torque command for the leg and the torque amount indicated by the fourth torque command for the leg. The third torque command is a command relating to the torque that the actuator of the joint should generate so that, when the number of support legs is one, the torso is located approximately vertically above the sole of the one leg; and when the number of support legs is two or more, the command relating to the torque that the actuator of the joint should generate so that the torso is located approximately vertically above the polygon formed by connecting the soles of the two or more legs. The fourth torque command is a command relating to the torque that the joint actuator should generate in order to ensure that the center of pressure of the ground reaction force received by the sole of the foot from the ground is at a predetermined position within the sole of the foot, as determined based on the hip strategy. The torque amount indicated by the fourth torque command is limited so as not to increase indefinitely. A legged robot characterized by the following features.
6. The aforementioned auto-balancing controller is An ankle-type pressure center controller that outputs a fourth torque command for each of the legs, replacing the aforementioned hip-type pressure center controller. Includes, The fourth torque command output by the ankle-type pressure center controller is a command relating to the torque that the joint actuator should generate in order to ensure that the pressure center point of the ground reaction force received by the sole of the foot from the ground is at a predetermined position within the sole of the foot, as determined based on the ankle strategy. The legged robot according to feature 5.
7. The aforementioned auto-balancing controller is Ankle-type pressure center controller that outputs a fourth torque command for each of the aforementioned legs. It further includes, The system is configured to output a first torque command for the leg that represents the sum of the torque amount indicated by the third torque command for the leg and the torque amount indicated by the fourth torque command output by the hip-type pressure center controller or the ankle-type pressure center controller for the leg. The fourth torque command output by the ankle-type pressure center controller is a command relating to the torque that the joint actuator should generate in order to ensure that the pressure center point of the ground reaction force received by the sole of the foot from the ground is at a predetermined position within the sole of the foot, as determined based on the ankle strategy. The legged robot according to feature 5.
8. The aforementioned auto-balancing controller is A vertical control unit that outputs a fifth torque command for each of the aforementioned legs. It further includes, The system is configured to output a first torque command for the leg that represents the sum of the torque amount indicated by the third torque command for the leg, the torque amount indicated by the fourth torque command output by the hip-type pressure center controller or the ankle-type pressure center controller for the leg, and the torque amount indicated by the fifth torque command for the leg. The fifth torque command is a command relating to the torque that the actuator of the joint should generate in order to bring the substantially vertical position of the torso closer to a predetermined neutral state, or a command relating to the torque that the actuator of the joint should generate in order to bring the displacement of the joint closer to a predetermined neutral state. The legged robot according to feature 7.
9. The aforementioned auto-balancing controller is External force component extraction unit for extracting the external force components of the third torque command, the fourth torque command, and the fifth torque command. It further includes, The system is configured to output a first torque command for the leg that represents the sum of the torque amount indicated by the external force component of the third torque command for the leg, the torque amount indicated by the external force component of the fourth torque command output by the hip-type pressure center controller or the ankle-type pressure center controller for the leg, and the torque amount indicated by the external force component of the fifth torque command for the leg. The legged robot according to feature 8.
10. The aforementioned auto-balancing controller is A grounding controller that outputs a sixth torque command for each of the aforementioned legs, An internal force component extraction unit for extracting the internal force component of the sixth torque command, It further includes, The system is configured to output a first torque command for the leg that represents the sum of the torque amount indicated by the external force component of the third torque command for the leg, the torque amount indicated by the external force component of the fourth torque command output by the hip-type pressure center controller or the ankle-type pressure center controller for the leg, the torque amount indicated by the external force component of the fifth torque command, and the torque amount indicated by the internal force component of the sixth torque command. The sixth torque command is a command relating to the torque that the joint actuator should generate in order to keep the sole of the foot in contact with the ground. The legged robot according to feature 9.
11. The hip-type pressure center controller and the ankle-type pressure center controller limit the amount of torque indicated by the fourth torque command by using an imperfect integrator. A legged robot according to any one of claims 6 to 10, characterized in that it is as described above.
12. The aforementioned auto-balancing controller is A determination device that determines whether each of the aforementioned multiple legs is a support leg or a free leg. Includes A legged robot according to any one of claims 5 to 10, characterized by the features described herein.
13. The determination device determines that a leg has switched from being a support leg to being a swing leg when the ground reaction force for that leg remains below a preset first threshold for a predetermined period of time, and determines that a leg has switched from being a swing leg to being a support leg when the ground reaction force for that leg remains above a preset second threshold for a predetermined period of time. The legged robot according to feature 12.
Citation Information
Patent Citations
Aprarutus for preparing methane or synthetic gases from carbonncontaining substance utilizing atomic reactor
JP1977068107A