WO2005000536A1 - 脚式移動ロボットの制御装置 - Google Patents

脚式移動ロボットの制御装置 Download PDF

Info

Publication number
WO2005000536A1
WO2005000536A1 PCT/JP2004/009477 JP2004009477W WO2005000536A1 WO 2005000536 A1 WO2005000536 A1 WO 2005000536A1 JP 2004009477 W JP2004009477 W JP 2004009477W WO 2005000536 A1 WO2005000536 A1 WO 2005000536A1
Authority
WO
WIPO (PCT)
Prior art keywords
gait
reaction force
target
floor reaction
posture
Prior art date
Application number
PCT/JP2004/009477
Other languages
English (en)
French (fr)
Inventor
Toru Takenaka
Takashi Matsumoto
Takahide Yoshiike
Original Assignee
Honda Motor Co., Ltd.
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Honda Motor Co., Ltd. filed Critical Honda Motor Co., Ltd.
Priority to US10/562,327 priority Critical patent/US7603234B2/en
Priority to KR1020057020794A priority patent/KR101083414B1/ko
Priority to EP04746946A priority patent/EP1642689B1/en
Priority to JP2005511139A priority patent/JP4181175B2/ja
Priority to DE602004031425T priority patent/DE602004031425D1/de
Publication of WO2005000536A1 publication Critical patent/WO2005000536A1/ja

Links

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B62LAND VEHICLES FOR TRAVELLING OTHERWISE THAN ON RAILS
    • B62DMOTOR VEHICLES; TRAILERS
    • B62D57/00Vehicles characterised by having other propulsion or other ground- engaging means than wheels or endless track, alone or in addition to wheels or endless track
    • B62D57/02Vehicles characterised by having other propulsion or other ground- engaging means than wheels or endless track, alone or in addition to wheels or endless track with ground-engaging propulsion means, e.g. walking members
    • B62D57/032Vehicles characterised by having other propulsion or other ground- engaging means than wheels or endless track, alone or in addition to wheels or endless track with ground-engaging propulsion means, e.g. walking members with alternately or sequentially lifted supporting base and legs; with alternately or sequentially lifted feet or skid
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J5/00Manipulators mounted on wheels or on carriages
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J13/00Controls for manipulators

Definitions

  • the present invention relates to a gait generator and a control device suitable for not only walking but also running of a legged moving port.
  • a gait target gait
  • the main purpose has been to generate a walking gait.
  • it has been desired to produce a gait that allows the robot to perform not only walking but also running.
  • it is desired to create a gait that can move the robot without any trouble on slippery floors (so-called low mu road) where sufficient frictional force cannot be generated.
  • kanji of “gait” includes “step”, so it is easy to be mistaken that it is limited to walking.
  • “gait” is originally used as a term that refers to the running form of a horse, such as a trot. As described above, the concept also includes running.
  • Figure 51 shows the pattern of the vertical position of the upper body and the floor reaction force vertical component (sum of the floor reaction force vertical components acting on the left and right legs) in a typical run.
  • the figure shows the pattern of the body vertical position and the floor reaction force vertical component in walking.
  • the body vertical position speed means the vertical position of the body representative point and its speed.
  • the body horizontal position speed means the horizontal position of the body representative point and its speed, and the body vertical position speed and the body horizontal position speed are collectively called the body position speed, and the ⁇ floor reaction force vertical Strictly speaking, the term “component” should be described as “translational floor reaction force vertical component” in order to distinguish it from the moment component about the vertical axis of the floor reaction force. "Translation” is omitted.
  • “translational floor reaction force horizontal component” is also described as “floor reaction force horizontal component” with “translation” omitted.
  • the upper body is the highest at the moment when the upper body passes over the supporting legs, and the lowest in running at this moment, that is, in walking and running, The phase of the upper / lower movement pattern is reversed.
  • the floor reaction force is relatively constant in walking, while it fluctuates greatly in running, and the floor reaction force is greatest at the moment when the upper body passes over the supporting legs. And, naturally, the floor reaction force is zero at the moment when all the legs are in the air at the same time.
  • a closer observation shows that a running reaction generates a floor reaction force that is approximately proportional to the amount of contraction of the support leg. In other words, when driving, they are using a leg like a spring to jump and move.
  • Slow jogging has the same upper and lower body movement phase as a typical run. Also, in slow jogging, there is no moment when all the legs are in the air at the same time. In many cases, the floor reaction force is not completely zero but almost zero at the moment when the support leg and the free leg are switched.
  • running is a movement mode in which the floor reaction force becomes 0 or almost 0 at the moment when the support leg is switched. It can be said that it is a moving form (the floor reaction force vertical component is relatively constant).
  • the floor reaction force vertical component sometimes becomes 0 or close to 0, so at that time, even if the friction coefficient is high, the limit of the floor friction force becomes 0 or 0. Get closer. Therefore, the translational floor reaction force horizontal component and floor reaction force moment vertical component of the target gait exceeded the limit, and the robot could slip and fall.
  • the mouth pot may slip and fall.
  • the applicant first generates a desired gait such as in PCT application PCTZJP 0 2/1 3 5 9 6 so that the translational floor reaction force horizontal component of the desired gait does not exceed the allowable range.
  • a technique to swing the arm so as to cancel the vertical component of the moment that occurs in the target gait other than the arm. According to this technique, the occurrence of robot slippage can be suppressed.
  • the allowable range of the translational floor reaction force horizontal component may not match the actual limit of the frictional force of the floor surface, in which case the slip of the mouth pot may occur. There was a fear of doing. If the allowable range of the translational floor reaction force horizontal component is set narrow to avoid this, the posture (tilt angle) of the body tends to fluctuate greatly. In addition, when the leg is shaken vigorously, the arm swings violently to cancel the vertical component of the moment. It is an object of the present invention to provide a control device that can more reliably prevent slippage of a mouth pot and generate a more suitable gait irrespective of a form or a friction state of a floor surface. Disclosure of the invention The first invention of the control device for a legged mobile lopot of the present invention is as follows.
  • a control device that generates a desired gait of a legged locomotion locopot that moves by moving a plurality of legs extended from the upper body and controls the lopot operation to follow the desired gait.
  • Slip determination means for determining occurrence of slip of the robot operating following the desired gait
  • An allowable range setting unit that variably sets an allowable range of the limited target amount according to a determination result of the slip determination unit as the target amount;
  • Provisional motion determining means for determining a provisional motion of the target gait such that a combined force of gravity and inertial force acting on the robot on a predetermined dynamic model satisfies a predetermined dynamic equilibrium condition
  • the robot is controlled so as to limit the limit target amount within the allowable range while satisfying the dynamic equilibrium condition.
  • a provision is made of a provisional movement correcting means for correcting the provisional movement by changing the rate of change of the angular momentum around the center of gravity from the provisional movement and determining the movement of the desired gait.
  • the limited object amount (the horizontal component of the translational floor reaction force, the horizontal component of the translational floor reaction force, or the horizontal component of the floor-parallel component of the translational floor reaction force or the horizontal gravity of the overall center-of-gravity acceleration of the robot) determined by the provisional motion of the desired gait.
  • the provisional motion is corrected to determine the motion of the desired gait.
  • the dynamic equilibrium condition for example, the condition that the horizontal component of the floor reaction force moment around the target ZMP becomes zero
  • the amount to be restricted can be restricted within an allowable range.
  • the rate of change in the angular momentum to be changed may be basically the rate of change in both the angular motion in the roll direction or the pitch direction.
  • the allowable range is variably set according to the determination result of the slip determination means, the target motion can be corrected promptly according to whether or not the actual robot has slipped. . As a result, even if the actual slip of the mouth pot occurs, the motion of the robot is corrected so as to suppress the slip immediately.
  • the actual occurrence of slipping of the mouth pot can be suppressed, and the stability of the posture of the mouth pot can be maintained.
  • the allowable range should be set so as to narrow it, and the same applies to the second to fourth inventions described below.
  • the second invention of the legged mobile robot of the present invention is as follows.
  • a control device that generates a desired gait of a legged locomotion locopot that moves by moving a plurality of legs extended from the upper body and controls the lopot operation to follow the desired gait.
  • Slip determining means for determining occurrence of slip of the lopot operating following the desired gait
  • An allowable range setting unit that variably sets an allowable range of the limited target amount according to a determination result of the slip determination unit, using the directional component as a limited target amount;
  • Provisional motion determining means for determining a provisional motion of the target gait such that a combined force of gravity and inertial force acting on the robot on a predetermined dynamic model satisfies a predetermined dynamic equilibrium condition
  • the limit target amount determined by the provisional exercise of the target gait falls within the allowable range.
  • the provisional motion is corrected by changing the rate of change in the angular momentum of the lopot from the provisional motion so as to limit the amount of restriction to the above-mentioned allowable range while satisfying the dynamic equilibrium condition.
  • temporary motion correcting means for determining the motion of the desired gait.
  • the limited object amount (the vertical component of the floor reaction force moment, the component of the floor reaction force moment in the direction normal to the floor surface, or the angular momentum change of the lopot) determined by the provisional movement of the desired gait.
  • the provisional motion is corrected to determine the motion of the desired gait.
  • the dynamic equilibrium condition for example, the condition that the horizontal component of the floor reaction force moment around the target ZMP becomes zero.
  • the amount to be restricted can be restricted within an allowable range.
  • the rate of change in angular momentum to be changed may be basically the rate of change in angular momentum in one direction, and in this case, the allowable range is variably set according to the determination result of the slip determination means.
  • the target movement can be corrected promptly according to the actual occurrence of slippage of the mouth pot.
  • the robot motion is modified so as to immediately suppress the slippage (especially spin). Therefore, according to the first invention, the actual occurrence of slippage of the mouth pot can be suppressed, and the stability of the posture of the robot can be maintained.
  • the first invention and the second invention may be used in combination.
  • the horizontal component of the translational floor reaction force, the floor-parallel component of the translational floor reaction force, the horizontal component of the total body-gravity acceleration of the lopot, or the floor-parallel component of the overall center-of-gravity acceleration is restricted by one.
  • the vertical component of the floor reaction force moment or the floor component normal direction component of the floor reaction force moment or the vertical component of the angular momentum change rate of the lopot or the floor normal direction of the angular momentum change rate The component is defined as one other target quantity, and these allowable ranges are variably set according to the judgment result of the slip judgment means. It should be fixed. In this case, it is desirable to correct the provisional movement of the target movement when either one of the limited target amounts deviates from the allowable range.
  • the third invention of the control device for the legged mobile robot according to the present invention is as follows.
  • the instantaneous value of the target motion of a legged mobile robot that moves by moving a leg extended from the upper body is calculated using a dynamic model that expresses at least the relationship between the motion of the robot and the floor reaction force.
  • the robot operation is controlled so as to follow the determined instantaneous value of the target motion while sequentially determining the target motion.
  • Slip determining means for determining occurrence of slip of the robot operating following the target motion
  • An allowable range setting unit that variably sets an allowable range of the limited target amount according to a result of the determination by the slip determining unit;
  • the new instantaneous value of the target motion is calculated based on at least the deviation between the target state amount of the robot posture corresponding to the determined instantaneous value of the target motion and the actual state amount of the posture of the robot.
  • a new instantaneous value of the target motion is determined based on the dynamic model corresponding to the new instantaneous value based on at least the deviation related to the state quantity of the posture of the robot.
  • the amount to be restricted (the horizontal component of the translational floor reaction force or the floor parallel component of the translational floor reaction force or the horizontal component of the overall center of gravity acceleration of the lopot or the floor parallel component of the overall center of gravity acceleration) is the allowable amount. It is determined that the deviation falls within the range and the deviation approaches zero. In other words, while keeping the robot posture in the desired posture, the restriction target amount should not deviate from the allowable range.
  • the instantaneous value of the target movement is determined.
  • the allowable range is variably set in accordance with the determination result of the slip determination means. Therefore, the posture Z is responsive to the actual occurrence of slippage of the mouth pot. The instantaneous value of the target motion can be determined so as to satisfy the target quantity condition. As a result, even if the actual slip of the mouth pot occurs, the slip can be immediately suppressed while keeping the posture of the robot in an appropriate posture.
  • the fourth invention of the control device for a legged mobile robot of the present invention includes:
  • the instantaneous value of the target movement and the desired floor reaction force of the leg-type moving locomotive that moves by moving the leg extended from the upper body is used to express at least the relationship between the movement of the lopot and the floor reaction force.
  • the control device of the legged mobile robot which sequentially determines using the dynamic model and controls the operation of the robot so as to follow the determined target motion and the instantaneous value of the desired floor reaction force,
  • Slip determining means for determining the occurrence of slip of the robot operating following the target motion and the target floor reaction force
  • An allowable range setting unit that variably sets an allowable range of the limited target amount according to a result of the determination by the slip determining unit;
  • the target movement and the target floor are determined.
  • a new instantaneous value of the target motion and the desired floor reaction force is calculated based on at least the deviation related to the state quantity of the posture of the robot in accordance with the instantaneous value of the new target motion.
  • the restricted object amount (the horizontal component of the translational floor reaction force, the horizontal component of the translational floor reaction force, or the horizontal component of the overall gravity center acceleration of the robot, or the floor surface of the total gravity center acceleration determined based on the dynamic model) (Parallel component) falls within the allowable range and the deviation approaches zero. In other words, while keeping the posture of the mouth pot in a desired posture, the restriction target amount should not deviate from the allowable range.
  • this condition is referred to as a posture Z restriction target amount condition, similarly to the third invention.
  • the instantaneous values of the target motion and the desired floor reaction force are determined.
  • the allowable range is variably set in accordance with the result of the determination by the slip determination means.
  • the allowable range is promptly determined according to whether or not the robot has actually slipped. Then, the instantaneous values of the target motion and the target floor reaction force can be determined so as to satisfy the posture restriction target amount condition.
  • the slip can be immediately suppressed while keeping the posture of the lopot stable and appropriate. Further, in this case, since both the target motion and the target floor reaction force are regulated by the posture Z restriction target amount condition, slip can be effectively suppressed.
  • the occurrence of slippage can be determined as follows.
  • the slip judging means judges the occurrence of slip based on at least the ground speed of the tip of the leg that is in contact with the ground (fifth invention). In this case, for example, when the absolute value of the ground speed is larger than a predetermined value, slippage occurs. Can be determined.
  • the slip determination means obtains an apparent spring constant of the leg based on at least a temporal change rate of an actual floor reaction force acting on the grounded leg and a ground speed of the tip of the leg.
  • Means for judging occurrence of slip based on at least the apparent spring constant (a sixth invention). In this case, for example, when the apparent spring constant is smaller than a predetermined value, it can be determined that slippage occurs.
  • the slip judging means generates a slip based on at least at least an actual floor reaction force acting on the grounded leg passed through a band bass filter having a frequency passing characteristic in a range near a predetermined frequency.
  • the actual floor reaction force that has passed through the band-pass filter corresponds to the vibration component of the actual floor reaction force when so-called sliding vibration occurs. Then, for example, when the magnitude (absolute value) of the vibration component is larger than a predetermined value, it can be determined that the slip vibration has occurred.
  • the determination of the occurrence of slip can be made in any of the fifth to seventh inventions, but it is also possible to determine the occurrence of slip by combining two or more of the fifth to seventh inventions. Good. Brief Description of Drawings
  • FIG. 1 is a diagram schematically showing the overall configuration of a bipedal locomotion rod as an embodiment of the present invention and a reference example related thereto
  • FIG. 2 is a leg of the robot of FIG.
  • Fig. 3 is a block diagram showing the configuration of the control unit provided in the robot of Fig. 1
  • Fig. 4 is a block diagram showing the functional configuration of the control unit in the first reference example. It is.
  • FIG. 5 is a diagram for explaining a running gait generated in the embodiment and the reference example
  • FIG. Graph showing an example of the vertical reaction path of the floor reaction force
  • Fig. 7 is a graph showing an example of the X and Y components of the target ZMP trajectory
  • FIG. 8 is a diagram for explaining the upper body translation mode of the lopot.
  • Fig. 9 is a diagram for explaining the upper body tilt mode of the lopot
  • Fig. 10 is a diagram for explaining the upper body rotation mode of the mouth pot
  • Fig. 11 (a) is a diagram of the mouth pot. Diagram for explaining the antiphase arm swing mode in plan view.
  • FIG. 11 (b) is a diagram for explaining the antiphase arm swing mode of the mouth pot in side view
  • FIG. 12 is an embodiment.
  • FIG. 3 is a diagram for explaining a dynamic model used.
  • Fig. 13 is a flowchart showing the main routine processing of the gait generator in the first reference example
  • Fig. 14 is a diagram for explaining the divergence state of the lopot
  • FIG. 15 is S0 2 in Fig. 13. 2 is a flowchart showing the subroutine processing
  • FIG. 16 is a diagram for explaining a normal gait and a supporting leg coordinate system
  • FIG. 17 is a diagram illustrating an upper body trajectory and a supporting leg coordinate system of a normal gait
  • Fig. 18 is a graph showing an example of the reference antiphase arm swing angle
  • Fig. 19 is a graph showing an example of setting a desired floor reaction force vertical component trajectory in a normal gait.
  • Fig. 20 is a floor reaction force in a normal gait.
  • FIG. 21 is a graph showing an example of setting an allowable range of floor anti-moment vertical component in a normal gait
  • 02 is a setting of a target ZMP trajectory in a normal gait It is a graph which shows an example.
  • FIG. 23 is a flowchart showing the subroutine processing of S024 of FIG. 13
  • FIG. 24 is a flowchart showing the subroutine processing of S208 of FIG. 23
  • FIG. 25 is a flowchart of FIG.
  • FIG. 26 is a flowchart showing the subroutine processing of S 306 in FIG. 25.
  • Figure 27 is a graph showing an example of the floor reaction force horizontal component without considering the allowable range
  • Figure 28 is a graph showing an example of the floor reaction force horizontal component with the allowable range considered
  • Figure 29 is the body tilt angle
  • Fig. 30 is a graph showing an example of a body tilt recovery moment ZMP converted value for restoring the robot's body tilt angle
  • Fig. 31 is a body tilt recovery moment ZMP converted value.
  • Fig. 32 is a graph showing an example of the floor reaction cam vertical component without considering the allowable range
  • Fig. 33 is a graph showing an example of the floor reaction force moment vertical component considering the allowable range
  • Fig. 34 is Graph showing an example of antiphase arm swing moment
  • Fig. 35 is a graph showing antiphase arm swing angular acceleration corresponding to the antiphase arm swing moment of Fig. 34
  • Fig. 36 is reconstruction of antiphase arm swing angle Graph showing an example of the anti-phase arm swing restoration angular acceleration for the calculation
  • Fig. 37 is a graph showing the anti-phase arm swing restoration moment corresponding to the anti-phase arm swing restoration angular acceleration of Fig. 36.
  • Fig. 3 8 is Fig. 3 37 is a graph showing the floor reaction force moment vertical component obtained by combining the floor reaction force moment vertical component of FIG. 3 and the antiphase arm swing restoration moment of FIG.
  • Fig. 39 is a flowchart showing the subroutine processing of S026 in Fig. 13, Fig.
  • FIG. 40 is a graph showing an example of setting the floor reaction force horizontal component allowable range of the current time's gait
  • Fig. 41 is the current time's gait
  • Fig. 42 is a flow chart showing the subroutine processing of S028 in Fig. 13
  • Fig. 43 is a flow chart showing the subroutine processing of S028 in Fig. 42.
  • Fig. 44 is a graph showing an example of the tentative target ZMP of the current time's gait, the ZMP correction amount, and the target ZMP after correction
  • Fig. 45 is a graph of S0300 in Fig. 13.
  • FIG. 46 is a flowchart showing the subroutine processing
  • FIG. 46 is a flowchart showing the subroutine processing
  • FIG. 46 is a flowchart showing the subroutine processing
  • FIG. 46 is a flowchart showing the subroutine processing
  • FIG. 46 is a flowchart showing the subroutine processing
  • FIG. 46 is a flowchart showing the subroutine processing of S1412 in FIG.
  • Fig. 47 is a graph showing the relationship between the normal gait and the target gait's body position trajectory.
  • Fig. 48 is a diagram showing another example of the body tilt mode (body tilt at the waist). Is a diagram for explaining another example of a dynamic model, FIG. 50 is a diagram showing an example of setting a desired floor reaction force vertical component in a walking gait, and FIG. 51 is a body vertical in a lopot running gait. A diagram showing the relationship between the direction position and the floor reaction force vertical component, and FIG. 52 is a diagram showing the relationship between the body vertical position and the floor reaction force vertical component in the walking gait of the robot.
  • FIG. 53 is a block diagram showing the functional configuration of the control unit in the second reference example
  • Fig. 54 is the processing of the compensating total floor reaction force moment horizontal component distributor shown in Fig. 53
  • Fig. 55 is a block diagram showing the processing of the model-operated floor reaction moment moment vertical component determiner shown in Fig. 53
  • Fig. 56 is the block diagram of the gait generator in the second reference example.
  • a flowchart showing the main routine processing FIG. 57 is a flowchart showing the subroutine processing of S303 in FIG. 56
  • FIG. 58 is a flowchart showing the subroutine processing of S314 in FIG.
  • FIG. 59 is a block diagram showing the functional configuration of the control unit in the third reference example
  • FIG. 60 is a flowchart showing the main routine processing of the gait generator in the second embodiment.
  • 1 is a flowchart showing the subroutine processing of S2033 in FIG. 6.0
  • FIG. 62 is a flowchart showing the subroutine processing of S2114 in FIG.
  • Fig. 63 is a block diagram showing the functional configuration of the gait generator in the fourth reference example
  • Fig. 64 is a diagram showing an example of setting the ZMP allowable range in the fourth reference example
  • Fig. 65 is the fourth reference example.
  • Fig. 66 is a block diagram showing the processing of S3536 in Fig. 65
  • FIG. 70 is a block diagram showing the processing of the perturbation model moment determining unit for reversal phase arm swing angle correction shown in FIG.
  • FIG. 71 is a block diagram showing the processing of S 356 of FIG. 65 in the fifth reference example
  • FIG. 72 is a processing of the antiphase arm swing angle correction perturbation model moment determination unit shown in FIG. 71. It is a block diagram.
  • FIG. 73 is a block diagram showing a functional configuration of the gait generator in the sixth reference example
  • FIG. 74 is a block diagram showing processing of the pseudo-order full model shown in FIG.
  • FIG. 75 is a block diagram showing the processing of S35536 in FIG. 65 in the seventh reference example.
  • FIG. 76 is a block diagram showing a functional configuration of a control unit according to the first embodiment of the present invention
  • FIG. 77 is a main route of the gait generating device according to the first embodiment.
  • FIG. 78 is a flowchart showing the processing of S2334 in FIG. 77
  • FIG. 79 is a flowchart showing the processing of the slip determination unit shown in FIG. FIGS.
  • FIG. 80 to 82 are flowcharts showing the subroutine processing of S520, S522, and S514 in FIG. 79, respectively.
  • FIG. 84 is a block diagram showing an example of a modified embodiment related to the fifth to seventh reference examples
  • FIG. 85 is a diagram showing a fourth reference example. It is a block diagram showing an example of a modification of processing of an antiphase arm swing angle correction perturbation model moment determination part.
  • a two-legged robot is used as an example of a leg-type movable port.
  • FIGS. 1 to 47 a first reference example relating to a control device for a legged moving port according to the present invention will be described. Further, a second reference example is shown with reference to FIGS. 53 to 58, a third reference example is shown with reference to FIGS. 59 to 62, and a fourth reference example is shown with reference to FIGS. 63 to 70. Reference Example, Reference Example 5 with reference to FIGS. 71 and 72, Reference Example 6 with reference to FIGS. 73 and 74, Reference Example 7 with reference to FIG. Is explained.
  • the embodiment of the present invention described later has the same mechanical configuration as that of the first reference example, and only a part of the gait generation processing and the control processing of the mouth pot (specifically, the allowable range setting processing). Is different from any of the first to seventh reference examples. Therefore, in the following description of the embodiment, the description of the first to seventh reference examples is often referred to. Supplementally, matters described with reference to FIG. 1 and FIGS. 2 and 3 and FIGS. 5 to 12 described below are the same in the embodiment described later.
  • FIG. 1 shows a leg-type transfer according to the first reference example.
  • FIG. 2 is a schematic diagram showing the entire bipedal-moving robot as an orifice port.
  • a two-legged port hereinafter referred to as a port 1 is a pair of left and right legs (leg links) extending downward from an upper body (base of the port 1) 2 , 2 are provided.
  • the two legs 2 have the same structure and each have six joints.
  • the six joints are the joints for rotation (rotation) of the crotch (lumbar) (for rotation in one direction with respect to the upper body 3) 10 R, 10 L (signs R and L) in order from the upper body 3 side.
  • joints 12R for the rotation of the crotch (lumbar) in the roll direction (around the X axis).
  • 12 L joints 14 R and 14 L for rotation in the crotch (lumbar) pitch direction (around the Y axis), and joints 16 R and 16 L for rotation in the knee pitch direction
  • joints 18 R and 18 L for rotation of the ankle in the pitch direction and joints 20 R and 20 L for rotation of the ankle in the roll direction.
  • the hip joint (or hip joint) is composed of joints 1 OR (L), 12 R (L), and 14 R (L), and the knee joint is joint 16 R (L ), And the ankle joint is composed of joints 18 R (L) and 20 R (L).
  • the hip joint and the knee joint are connected by a thigh link 24 R (L), and the knee joint and the ankle joint are connected by a lower leg link 26 R (L).
  • the head 4 is arranged at the upper end of the upper body 3.
  • Each arm 5 has a shoulder joint composed of three joints 30 R (L), 32 R (L), and 34 R (L) and an elbow composed of joint 36 R (L). It has a joint, a wrist joint composed of a joint 38 R (L), and a hand portion 40 R (L) connected to the wrist joint. Since the head 4 has no direct relation to the gist of the present invention, a detailed description is omitted.
  • each leg 2 is given six degrees of freedom with respect to the upper body 3.
  • 6 * 2 12 in total for both legs 2 and 2 (in this specification, "*" means multiplication as an operation for scalar and multiplication for vector.
  • the desired motion of both feet 22R and 22L can be performed by driving the joint at an appropriate angle.
  • the mouth port 1 can move arbitrarily in the three-dimensional space.
  • each arm 5 can perform an exercise such as arm swing by rotating its shoulder joint, elbow joint, and wrist joint. ⁇ As shown in FIG.
  • a known 6-axis force sensor 5 is located below the ankle joint 18 R (L) and 20 R (L) of each leg 2 between the leg 22 and the foot 22 R (L). 0 is interposed.
  • the 6-axis force sensor 50 is for detecting the presence / absence of landing of the foot 22 R (L) of each leg 2, the floor reaction force (ground contact load) acting on each leg 2, and the like.
  • the detection signals of the three-directional components Fx, Fy, Fz of the translational force of the floor reaction force and the three-directional components MX, My, Mz of the moment are output to the control unit 60.
  • the upper body 3 includes the inclination angle and its angular velocity of the upper body 3 with respect to the Z axis (vertical direction (gravity direction)), and the rotation angle of the upper body 3 around the Z axis ( ⁇ one angle) and its angular velocity.
  • An attitude sensor 54 for detection is provided, and a detection signal is output from the attitude sensor 54 to the control unit 60.
  • the attitude sensor 54 includes a three-axis acceleration sensor and a three-axis gyro sensor (not shown). It is used to detect the posture angle (tilt angle and angle) of the upper body 3 and its angular velocity, and is used to estimate the self-position and posture of the mouth port 1.
  • each joint of the mouth port 1 has an electric motor 64 (see FIG. 3) for driving the joint, and a rotation amount of the electric motor 64 (see FIG. 3). (Rotational angle of the joint) is provided for detecting the rotation angle of the joint (see FIG. 3), and the detection signal of the encoder 65 is output from the encoder 65 to the control unit 60. Is done.
  • a joystick (operator) 73 is provided at an appropriate position of the robot 1, and by operating the joystick 73, the robot 1 moves straight. It is configured such that a request for the gait of the mouth port 1 can be input to the control unit 60 as needed, for example, by turning the lopot 1 that is running.
  • FIG. 2 is a diagram schematically showing a basic configuration of a tip portion of each leg 2 (including each foot 22 R (L)) in the first reference example.
  • a spring mechanism 70 is provided between the foot and the 6-axis force sensor 50, and a sole (each foot 2) is provided.
  • a bottom elastic body 71 made of rubber or the like is attached to the bottom surface of R (L).
  • the compliance mechanism 72 is constituted by the spring mechanism 70 and the sole elastic body 71.
  • the spring mechanism 70 will be described later in detail, but is attached to the upper surface of the foot 22R (L).
  • a rectangular guide member (not shown), an ankle joint 18 R (L) (ankle joint 2 OR (L) is omitted in FIG. 2) and a 6-axis force sensor 50 side
  • a piston-like member (not shown) which is finely movably housed in the guide member via an elastic material (rubber or spring).
  • the foot 22 R (L) shown by a solid line in FIG. 2 shows a state when no floor reaction force is applied.
  • the spring mechanism 70 of the sensing mechanism 72 and the sole elastic body 71 bend, and the foot 22 R (L) shifts to the position and orientation as exemplified by the dotted line in the figure.
  • the structure of the compliance mechanism 72 is not only for reducing landing impact as described in detail in, for example, Japanese Patent Application Laid-Open No. 5-305584, which was previously proposed by the present applicant. It is also important to improve controllability.
  • FIG. 3 is a block diagram showing the configuration of the control unit 60.
  • the control unit 60 is constituted by a microcomputer, and comprises a first arithmetic unit 90 and a second arithmetic unit 92 composed of a CPU, an AZD converter 80, and a power supply unit 86. , A D / A converter 96, a RAM 84, a ROM 94, and a bus line 82 for exchanging data between them.
  • each leg 2 are converted to AZD converter 8 After being converted to a digital value by 0, it is sent to the RAM 84 via the bus line 82.
  • the output of the encoder 65 of each joint of the lopot 1 (mouth encoder) is input to the RAM 84 via the counter 86.
  • the first arithmetic unit 90 generates a desired gait as described later, calculates an articulation angle displacement command (a displacement angle of each joint or a command value of a rotation angle of each electric motor 64), and stores the RAM. 8 Send to 4.
  • the second arithmetic unit 92 reads the joint angle displacement command from the RAM 84 and the actual measured value of the joint angle detected based on the output signal of the encoder 65, and performs operations necessary for driving each joint. The output is calculated and output to the electric motor 64 that drives each section via the DZA converter 96 and the servo amplifier 64 a.
  • FIG. 4 is a block diagram showing an overall functional configuration of the control device of the legged mobile robot according to the first reference example.
  • the parts other than the “real mouth pot” in FIG. 4 are the processing functions executed by the control unit 60 (primarily the first function).
  • the symbols R and L are omitted.
  • the control unit 60 includes a gait generator 100 that freely and in real time generates and outputs a desired gait of the mouth port 1.
  • the functions constitute each means of the present invention.
  • the desired gait output by the gait generator 100 is a target body position / posture trajectory (trajectory of the target position and target posture of the body 3), a desired foot position / posture trajectory (the target of each foot 22) Orbit of position and target posture), target arm posture trajectory (trajectory of target posture of each arm 5), target total floor reaction force center point (target ZMP) trajectory, and target total floor reaction force trajectory.
  • target body position / posture trajectory trajectory of the target position and target posture of the body 3
  • a desired foot position / posture trajectory the target of each foot 22
  • target arm posture trajectory trajectory of target posture of each arm 5
  • target total floor reaction force center point (target ZMP) trajectory target total floor reaction force trajectory
  • target ZMP target total floor reaction force center point
  • the “trajectory” in the gait means a temporal change pattern (time-series pattern), and in the following description, may be referred to as “pattern” instead of “trajectory”.
  • “posture” means spatial orientation. Specifically, for example, the body posture is the inclination angle of the body 3 in the mouth direction (around the X axis) with respect to the Z axis (vertical axis) and the inclination angle of the body 3 in the pitch direction (around the Y axis).
  • the angle of rotation of the upper body 3 in the ⁇ direction is expressed by the angle of rotation of the upper body 3 (the angle of ⁇ ), and the foot posture is expressed by the spatial azimuth of two axes fixed to each foot 22.
  • the body posture may be referred to as the body posture angle.
  • the posture with respect to the vertical direction may be referred to as the body posture inclination or the body posture inclination angle.
  • the desired floor reaction force is generally expressed by an action point, a translation force and a moment acting on the point. Since the point of action is good for everywhere, countless expressions can be considered for the same desired floor reaction force.
  • the target floor reaction force center point (the target position of the center point of the total floor reaction force) is used as the point of action to achieve the desired floor reaction force.
  • the moment component of the desired floor reaction force is zero except for the vertical component (moment about the vertical axis (Z axis)).
  • the horizontal component of the moment of the desired floor reaction force around the center point of the desired floor reaction force is zero.
  • the ZMP calculated from the target motion trajectory of Robot 1 (the resultant force of inertia and gravity calculated from the target motion trajectory acts around that point)
  • the moment when the moment becomes zero except for the vertical component) and the desired floor reaction force center point coincide, so it is the same as giving the desired ZMP trajectory instead of the desired floor reaction force center point trajectory.
  • a desired gait is a set of a desired motion trajectory and a desired floor reaction force trajectory during one or more steps.
  • a target gait in a narrow sense is a set of a target motion trajectory during one step and its ZMP trajectory.
  • a series of gaits consist of several gaits.
  • the vertical position (body height) of the body 3 of the lopot 1 is determined by the body height determination method previously proposed by the present applicant in Japanese Patent Application Laid-Open No. Hei 10-86080. Then, the translational floor reaction force vertical component is determined dependently. In addition, determine the horizontal position trajectory of mouth port 1 so that the resultant component of inertia and gravity due to the motion of the desired gait has zero horizontal component of the moment generated around the target ZMP. Thus, the translational floor reaction force horizontal component is also determined. For this reason, in the specification of PCT Publication WOZ02Z40224, only the target ZMP was sufficient as a physical quantity to be explicitly set for the floor reaction force of the target gait.
  • the trajectory such as the desired body vertical position of the robot 1 is determined after explicitly setting the target trajectory of the floor reaction force vertical component. Therefore, in the present specification, the following b ′) is used as a definition of a desired gait in a narrow sense.
  • a desired gait in a narrow sense is a set of a desired motion trajectory during one step, and a desired floor reaction force trajectory including at least the desired ZMP trajectory and the desired translational floor reaction force vertical component trajectory.
  • the target gait will be used in the narrow sense of the above-mentioned target gait b ') unless otherwise specified, in order to facilitate understanding.
  • “one step” of the desired gait is used in the meaning from the time when one leg 2 of the mouth pot 1 lands to the time when the other leg 2 lands.
  • the target gait is used in the sense of a gait for one step, but it is not necessarily required to be for one step. Gaits for steps or periods shorter than one step (for example, half a step) It may be.
  • the floor reaction force vertical component means “translational floor reaction force vertical component”
  • the vertical component of the moment of the floor reaction force (the component around the vertical axis) Is distinguished from the term “floor reaction vertical component”.
  • the floor reaction force horizontal component means “translational floor reaction horizontal component”.
  • the period in which Robot 1 supports its own weight with both legs 2 and 2, not to mention both legs in the gait, and the one-leg support period in which robot 1 uses only one leg 2 The aerial period is the period during which both legs 2, 2 are off the floor (floating in the air).
  • the leg 2 on the side that does not support the weight of the robot 1 during the one-leg support period is called a “free leg”.
  • both legs 2 and 2 do not support the weight of mouth port 1 during the aerial period, but leg 2 and the supporting legs that were free legs during the one leg support period immediately before the aerial period.
  • the legs 2 which have been described above are also referred to as a free leg and a supporting leg even in the aerial period.
  • the outline of the target gait generated by the gait generator 100 will be described using the running gait shown in FIG. 5 as an example.
  • the other definitions and details regarding gait are also described in Japanese Patent Application Laid-Open No. H10-86081 proposed by the applicant of the present invention.
  • the contents that are not described in the 081 publication will be mainly described.
  • the running gait shown in FIG. 5 is similar to a normal running gait of a human.
  • the foot 22 of the leg 2 (supporting leg) of only one of the left and right of the mouth pot 1 lands (grounds), and the two legs 2, 2 are in the air.
  • the floating mid-term repeats alternately.
  • the first state in Fig. 5 is the state at the beginning (initial) of the one-leg support period
  • the second state is the state at the midpoint of the one-leg support period
  • the third state is the one following the one-leg support period.
  • the fourth state is at the midpoint of the aerial phase
  • the fifth state is at the end of the aerial phase (the start of the next one-leg support phase) Hour).
  • the robot 1 is in the first state as shown in Fig. 5.
  • the foot on the supporting leg (the front leg 2 in the traveling direction of the robot 1) side. 2 Land on 2 heels.
  • the mouth pot 1 is almost completely landed on the bottom surface of the foot 2 2 that has landed (the foot 22 on the supporting leg side).
  • the toe of the foot 2 2 on the supporting leg side (the foot 2 2 of the leg 2 on the rear side in the traveling direction of the lopot 1 in the third state in FIG. 5) Kicks the floor and jumps into the air. This ends the one-leg support period and starts the aerial period.
  • the free leg in the one-leg support period exists at the back of the support leg at the beginning of the one-leg support period, as shown in the first state in Fig. 5. As shown in the state above, it is swung toward the front of the support leg toward the next scheduled landing position. Then, after the aerial period shown in the fourth state in Fig. 5, the mouth port 1 is the foot of the swing leg (leg 2 that had been a swing leg during the one-leg support period immediately before the start of the aerial period). 22 Landed on the heels of 2 and the next one leg support period begins.
  • the basic outline of the target gait generated by the gait generator 100 will be described in consideration of the running gait of FIG. Although details will be described later, when the gait generator 100 generates the desired gait, the landing position / posture (scheduled landing position / posture) and the landing time (scheduled landing time) of the foot 22 on the swing leg side, etc.
  • the basic required value (required parameter value) for generating the desired gait is given to the gait generator 100 in accordance with the required operation of the joystick 73 or the like. Then, the gait generator 100 generates a desired gait using the required parameters.
  • the gait generator 100 responds to the above-mentioned required parameters by setting a desired gait such as a desired foot position / posture trajectory of the desired gait, a desired floor reaction force vertical component trajectory, or the like. After determining the parameters that define some components of the gait (called gait parameters), the instantaneous value of the desired gait is sequentially determined using the gait parameters, and the target gait is determined. Generate a time series pattern of the gait.
  • a desired gait such as a desired foot position / posture trajectory of the desired gait, a desired floor reaction force vertical component trajectory, or the like.
  • the target foot position / posture trajectory (more specifically, the target trajectory of each spatial component (X-axis component, etc.) of the foot position and posture) is described in, for example, Japanese Patent No. 3233333.
  • This finite-time settling filter has a first-order lag filter with a variable time constant, that is, a filter whose transfer function is expressed in the form of 1 / (1 + s). It is composed of multiple stages (3 stages or more in this first reference example) connected in series, and generates and outputs a trajectory that reaches the specified value at the desired specified time. Is what you can do.
  • the time constant of the unit fill of each stage is sequentially and variably set in accordance with the remaining time until the designated time after the output of the finite time set filter is started to be generated. More specifically, as the remaining time becomes shorter, the value decreases from a predetermined initial value (> 0), and finally, at the specified time when the remaining time becomes 0, the value of Is set to 0.
  • the finite time settling filter is provided with a step input having a height corresponding to the specified value (more specifically, the change amount from the initial value of the output of the finite time settling filter to the specified value).
  • Such a finite-time settling filter not only generates an output that reaches a specified value at a specified time, but also makes the output change speed of the finite-time settling filter at the specified time zero or almost zero. it can.
  • the output change acceleration (differential value of the change speed) of the finite time settling filter can be set to zero or almost zero.
  • the placement / posture trajectory is a target position / posture trajectory of each foot 22 in a support leg coordinate system described later fixed to the floor.
  • the desired foot position / posture trajectory generated as described above is such that the position of each foot 22 is gradually accelerated from its initial contact state (the state at the initial time of the desired gait) to the expected landing position. Generated to start moving.
  • the target foot position / posture trajectory finally gradually reduces the speed of change of the position to 0 or almost 0 by the scheduled landing time, and reaches the scheduled landing position at the scheduled landing time. Generated to stop. For this reason, the ground speed (the speed of change of the position of each foot 22 in the support leg coordinate system fixed to the floor) at the moment of landing of each foot 22 becomes zero or almost zero. Therefore, the landing impact is reduced even if the landing is performed from a state in which all the legs 2, 2 are in the air at the same time in the running gait (a state in the air).
  • the vertical velocity of the upper body 3 becomes downward from the latter half of the aerial period due to the gravity acting on the mouth pot 1, and remains downward even at the time of landing. Therefore, as described above, the desired foot position / posture trajectory is generated so that the ground speed at the moment of landing of each foot 22 is 0 or almost 0, and the dynamic equilibrium condition is satisfied as described later.
  • the target position and attitude trajectory of the upper body 3 is generated, the relative speed of the foot 22 on the swing leg side to the upper body 3 becomes upward immediately before landing. That is, at the moment of landing of the running gait, the desired gait of the robot 1 is a gait that lands while retracting the leg 22 on the free leg side toward the upper body 3 side.
  • the robot 1 is viewed from the upper body 3 so that the ground speed of the foot 22 on the swing leg side becomes 0 or almost 0 at the moment of landing. Then, the foot 22 is pulled up to land. Yotsute to this, landing impact is reduced, ⁇ to wear land impact is to be prevented from becoming excessive
  • the finite time settling filter uses the unit filter Since three or more stages (for example, three stages) are connected in series, the speed of each foot 22 (the speed at which the foot position changes) becomes 0 or almost 0 by the scheduled landing time, The acceleration of each foot 22 also becomes 0 or almost 0 at the scheduled landing time, and stops. That is, the ground acceleration at the moment of landing is also zero or almost zero. Therefore, the landing impact is further reduced. In particular, even if the actual landing time of the robot 1 deviates from the target landing time, the impact does not increase much.
  • the unit of the finite time settling filter may be two, but in this case, the scheduled landing time
  • the acceleration of each foot 22 at is not zero.
  • the foot position orbit was generated using the finite time settling filter.
  • the change speed of the foot position at the scheduled landing time is 0 or
  • the target is set using a function such as a polynomial set so that the change acceleration of the foot position (the time differential value of the change speed) at the landing scheduled time becomes zero or almost zero.
  • a foot position trajectory may be generated. The same is true for generating the desired foot posture trajectory.
  • the change speed of the posture of each foot 22 and the Functions such as polynomials are set so that the change acceleration becomes zero or almost zero. .
  • the desired floor reaction force vertical component trajectory is set, for example, as shown in FIG. Book 1
  • the shape of the desired floor reaction force vertical component trajectory in the running gait (specifically, the shape during the one-leg support period) is defined as a trapezoidal shape (a shape that is convex toward the increasing side of the floor reaction force vertical component).
  • the gait parameters (floor reaction force vertical component trajectory parameters) are determined with the height of the trapezoid and the time of the break point as the gait parameters that define the desired floor reaction force vertical component trajectory.
  • the desired floor reaction force vertical component is constantly set to zero.
  • the desired floor reaction force vertical component trajectory should be set to be substantially continuous (so that the value does not become discontinuous).
  • the target ZMP trajectory is set as follows. In the running gait shown in Fig. 5, as described above, the player lands on the heel of the support leg side foot 22 and then kicks with the toe of the support leg side foot 22 and jumps up into the air. Foot 2 2 Land on the heel. Therefore, the target ZMP trajectory during the one-leg supporting period is, as shown in the upper diagram of FIG. 7, the heel of the supporting leg-side foot 22 as an initial position, and then the bottom of the supporting leg-side foot 22.
  • the upper diagram in FIG. 7 shows the target ZMP trajectory in the X-axis direction (front-back direction), and the lower diagram in FIG. 7 shows the target ZMP trajectory in the Y-axis direction (left-right direction).
  • the target ZMP trajectory in the Y-axis direction during the one-leg support period is set at the same position as the center position of the ankle joint of the supporting leg side leg 2 in the Y-axis direction, as shown in the lower part of Fig. 7. .
  • the target ZMP may be set to be discontinuous.
  • the target ZMP is set so that it does not move from the target ZMP position at the time of leaving the bed (at the end of the one-leg support period).
  • the target ZMP trajectory may be set so as to move in a step-like manner.
  • the position of the target ZMP trajectory in the X-axis direction in the aerial period is It moved continuously from the toe of No. 2 to the landing position of the heel of the swing leg side foot 22.
  • the target ZMP orbital position in the Y-axis direction during the aerial period is the center of the ankle joint of the supporting leg
  • the robot moves continuously from the Y-axis position to the Y-axis position at the center of the ankle joint of the swing leg 2. That is, the target ZMP trajectory was made continuous (substantially continuous) during the entire period of the gait. Then, as described later, the desired gait is generated such that the moment of the resultant of the gravity and the inertial force around the target ZMP (excluding the vertical component) becomes zero (more specifically, Adjust the desired body position / posture trajectory).
  • the target ZMP trajectory is set to be continuous (substantially continuous) even in the aerial period in order to make the generated gait smooth. Is desirable.
  • the horizontal component of the moment around the target ZMP is a certain value (the value is 0 in the first reference example) regardless of the position of the target ZMP.
  • the target gait such that the target gait can be uniquely generated. Therefore, it is not always necessary to keep the target ZMP continuous.
  • the position and time of the break point of the target ZMP trajectory as shown in FIG. 7 are set as parameters of the ZMP trajectory (parameters that define the target ZMP trajectory).
  • the meaning of “substantially continuous” in the ZMP trajectory is the same as that in the case of the floor reaction force vertical component trajectory.
  • the parameters of the ZMP orbit are determined so as to have a high stability margin and to prevent a sudden change.
  • a state in which the target ZMP exists near the center of the smallest convex polygon (so-called supporting polygon) including the ground contact surface of the robot 1 is referred to as having a high stability margin (for details, see Japanese Patent Application Laid-Open No. H10-860). 81 No. 1).
  • the target ZMP trajectory in Fig. 7 is set to satisfy such conditions.
  • the target body position / posture, target foot position / posture, and a reference body posture described later are described in a global coordinate system.
  • the global coordinate system is a coordinate system fixed to the floor. More specifically, a support leg coordinate system described later is used as the global coordinate system.
  • the gait generator 100 generates not only a desired body posture but also a reference body posture.
  • the reference body posture is generated in accordance with a gait requirement (a device such as an action planning unit for the gait generator 100 or a request from the outside (the joystick 73 or the like)). It is a force.
  • the target body posture (hereinafter, when “reference” is not attached, indicates the target body posture) may follow or match the reference body posture in the long term. Generated. In walking, the target body posture should always always match the reference body posture as in the embodiment described in the specification of PCT Publication WO / 02/40224 by the present applicant.
  • PCT Publication WOZ 02Z40224 does not describe the concept of the reference body posture, but since the target body posture pattern was given explicitly and preferentially, the target body posture was given to the reference body posture. This is the same as always having the same posture.
  • gait with an aerial period such as running ⁇
  • simply adjusting the horizontal acceleration of the upper body, etc. will result in a floor reaction force horizontal component and a floor reaction force moment vertical component of the target gait.
  • the dynamic equilibrium condition cannot be satisfied while the value is within the allowable range (or within the friction limit).
  • the target body posture is intentionally shifted from the reference body posture as necessary. More specifically, by generating the motion modes described below in combination, the horizontal component of the floor reaction force and the vertical component of the floor reaction force of the target gait fall within the allowable range (or within the friction limit). The kinetic equilibrium condition was satisfied while existing.
  • the perturbation of the horizontal body acceleration does not perturb the floor reaction force vertical component that dynamically balances the resultant force of the inertia force and gravity of the lopot 1 generated thereby (the Percentage of floor reaction force moment horizontal component (horizontal axis component) and floor reaction force horizontal component around target ZMP (without perturbing vertical acceleration).
  • the motion mode that perturbs the horizontal acceleration of the mouth port 1 in this way is called the body translation mode.
  • the motion that changes the floor reaction camouflage horizontal component and the floor reaction force horizontal component around the target ZMP without changing the floor reaction force vertical component is called the body translation mode.
  • the floor reaction force moment vertical component (the component around the vertical axis) is also perturbed, but we do not pay attention to this point here.
  • a motion that changes the floor reaction force moment horizontal component around the target ZMP without changing the floor reaction force vertical component and the floor reaction force horizontal component is called a body tilt mode.
  • the change of the horizontal component of the floor reaction camouflage per unit angular acceleration is ⁇ M r
  • the change of the horizontal component of the floor reaction force per unit angular acceleration is r.
  • ⁇ Fr is zero.
  • the upper body tilt angle is set so that the upper body 3 tilts forward.
  • ⁇ ⁇ c acts in the direction of the arrow shown in Fig. 9c. Also, as shown in Fig.
  • the perturbation of the angular acceleration of the upper body around the point Pq is the floor reaction force around the target ZMP without perturbing the floor reaction force vertical component, the floor reaction force horizontal component, and the floor reaction camoment horizontal component Perturb the vertical component of the moment.
  • the motion mode that perturbs the robot's one-body angular acceleration in this way is called the one-body rotation mode.
  • the body motion that changes the floor reaction force moment vertical component around the target ZMP without changing the floor reaction force vertical component, floor reaction force horizontal component, and floor reaction force moment horizontal component This is called a single rotation mode.
  • the upper body 3 was rotated so that the positions of the hands of the arms 5, 5 did not change from the supporting leg coordinate system (the coordinate system fixed to the floor).
  • the motion of rotating the arm 5 together with the upper body 3 without changing the relative position and orientation of the arm 5 with respect to the upper body 3 may be defined as the upper body single rotation mode.
  • the equation of motion described later needs to be changed slightly.
  • this motion mode is referred to as an anti-phase arm swing mode.
  • the arm swing motion mode that perturbs the floor reaction force moment vertical component around the target Z MP without perturbing the floor reaction force vertical component, floor reaction force horizontal component, and floor reaction camo Called arm swing mode.
  • FIGS 11 (a) and (b) show the state when the antiphase arm swing angle is ⁇ az.
  • the change in the vertical component of the floor reaction force moment per unit angular acceleration in the antiphase arm swing mode is AMaz, and the change in the horizontal component of the floor reaction force per unit angular acceleration is mu Fa.
  • AFa is zero.
  • the right arm 5R is accelerated forward and the left arm 5L is accelerated backward (shaking with angular acceleration / 3a> 0).
  • the floor reaction force moment vertical component Maz acts in the direction of the arrow shown in (a) (positive direction of the vertical axis).
  • the dynamic model of mouth port 1 used in the first reference example will be described.
  • a simplified (approximate) dynamic model shown below is used.
  • the dynamic model shown below is a kinematics model (a model that represents the structure and dimensions of joints and links, in other words, a model that represents the relationship between joint displacement and the position and orientation of links.) Is also necessary.
  • FIG. 12 shows a dynamic model of the robot 1 used in the first reference example.
  • this kinetic model is composed of two masses 2 m and 2 m corresponding to each leg 2 of the mouth port 1 and a mass 3 m corresponding to the upper body 3, respectively, for a total of three masses.
  • This model is composed of four flywheels F Hx, FHy, F Hbz, and F Haz with inertia and no mass. Flywheels F Hx, F Hy, F Hbz, and F Haz Direction axis), Y axis (lateral axis), ⁇ axis (vertical axis), and ⁇ axis (vertical axis).
  • the decoupled that is, the dynamics of the legs 2 and 2 (the dynamics of each mass 2 m and 2 m) and the dynamics of the upper body 3 (the mass 3 m and the flywheels F Hx, FHy and FHbz) And the dynamics of the arms 5 and 5 (the dynamics of the flywheel F Haz) are mutually incoherent, and the dynamics of the entire mouth pot 1 are represented by their linear combination. expressed.
  • the relationship between the motion of the upper body 3 and the floor reaction force is also described as the relationship between the translational motion of the upper body 3 (upper body translation mode) and the floor reaction force, and the tilt motion of the upper body 3 (upper body tilt mode).
  • the floor reaction force generated by the horizontal motion of the upper body mass point 3 m corresponds to the floor reaction force generated by the horizontal translational motion of the upper body 3 (upper body translation mode)
  • the flywheel FHx and The floor reaction force generated by the rotary motion of FHy corresponds to the floor reaction force generated by the rotary motion of the upper body 3 at the tilt angle (body tilt mode).
  • the rotation of the flywheel F Hx corresponds to the rotation of the body 3 in the roll direction (around the X axis), and the rotation of the flywheel FHy corresponds to the pitch of the body 3 in the pitch direction ( This corresponds to a rotational movement around the Y axis).
  • the floor reaction force generated by the rotational movement of the flywheel F Hbz corresponds to the floor reaction force generated by the one-rotational movement of the upper body 3 (the upper-body one-rotation mode).
  • the floor reaction force generated by the rotational movement of the flywheel F Haz corresponds to the floor reaction force generated by anti-phase arm swing (anti-phase arm swing mode).
  • the mass of the arm of mouth port 1 is assumed to be included in the upper body 3, and the upper body mass 3 m has the mass including the mass of the arms 5 and 5.
  • each mass point 2 m, 2 m, and 3 m is a representative point of the corresponding part or a point that is uniquely determined geometrically from the position and orientation of that part.
  • the position of the mass point 2 m of the supporting leg side leg 2 is a point located a predetermined distance above the representative point on the bottom surface of the foot 22 of the leg 2.
  • Z b Body mass vertical position (Generally different from body vertical position.)
  • Body mass point X position (The body mass position is a point that is offset from the point Pr by a predetermined distance in the forward and rearward direction of the body. The offset is defined by the exact model (The center of gravity and the center of gravity of the dynamic model are determined so as to match each other. The horizontal position of the body is generally different.)
  • J Body moment of inertia (Equivalent moment of inertia in the body tilt mode. That is, the moment of inertia of FHx and; FHy.
  • J bz Body moment of inertia about the vertical axis (Equivalent moment of inertia in the upper body rotation mode. The inertia moment of the upper body 3 parts of the actual mouth pot 1 is generally Do not agree.)
  • J az Moment of inertia around the vertical axis of arm swing (This is the equivalent inertia moment in antiphase arm swing for spin cancellation, that is, the inertia moment of FHz.)
  • Fx Floor reaction force X component (specifically, the longitudinal direction (X axis) component of the translational floor reaction force)
  • Fy Floor reaction force Y component (specifically, the horizontal direction (Y axis) component of the translational floor reaction force)
  • Fz Floor reaction Force vertical component (Specifically, the vertical (Z-axis) component of the translational floor reaction force. In the first reference example, this is equal to the target translational floor reaction force vertical component.)
  • Mx Floor reaction force moment X around the target ZMP (specifically, the component around the longitudinal axis (X axis) of the floor reaction camoment)
  • Mz Floor reaction force moment around the target ZMP Z component (Specifically, the component around the vertical axis (Z axis) of the floor reaction moment)
  • each mass point 2 m and 3 m mean the position in the front-back direction (X-axis direction) and the position in the left-right direction (Y-axis direction).
  • X-axis direction front-back direction
  • Y-axis direction left-right direction
  • the positional relationship between the position of the mass point 2 m of each leg 2 and the position of the foot 22 of the leg 2 is described. Oh It is determined in advance, and if one position is determined, the other position is uniquely determined.
  • the positional relationship between the body mass point 3 m and the position of the body 3 is determined by the posture angle of the body 3 (hereinafter, the posture angle Means the angle of inclination and the angle of the angle.) It is assumed that if one position and the attitude angle are determined, the other position is uniquely determined. I have.
  • dX / dt represents the first derivative of X
  • d2X / dt2 represents the second derivative of X. Therefore, if the variable X is a displacement, dX / dt means velocity and d2X / dt2 means acceleration. g indicates the gravitational acceleration constant. Here, g is a positive value.
  • Equation 01 Equation 02x, Equation 02y, Equation 03x, Equation 03y, and Equation 03z.
  • F z mb * (g + d2Zb / dt2) + msup * (g + d2Zsup / dt2)
  • M z mb * (Xb-Xzmp) * (d2Yb / dt2)-mb * (Yb-Yzmp) (d2Xb / dt2)
  • Equation 0 3 z Further, the following relational expression holds for the position of the center of gravity of the entire lopot.
  • Y Gtotal (mb * Yb + msup * Ysup + mswg * Yswg) / mtotal
  • Equation 0 5 The relationship between the dynamic model and AFp, ⁇ , ⁇ ⁇ ⁇ , ⁇ is shown below.
  • is the perturbation amount of Fx or Fy when d2Xb / dt2 or d2Yb / dt2 is perturbed by a unit amount in the expression 0 2X or the expression 0 2y, and is obtained by the following expression.
  • the change AFp of the floor reaction force horizontal component per unit acceleration in each horizontal axis (X axis, Y axis) in the body translation mode is equivalent to the mass of the body mass point 3m in the above dynamic model.
  • is the perturbation amount of My or Mx when d2Xb / dt2 or d2Yb / dt2 is perturbed by a unit amount in Expression 03y or Expression03X, it is obtained by the following expression.
  • the change ⁇ Mp of the floor reaction force moment horizontal component per unit acceleration in each horizontal axis (X-axis, Y-axis) direction of the upper body translation mode is expressed by the upper body mass mass of the above dynamics model, Multiplied by the height (vertical position) from the target ZMP at the point 3 m.
  • the relationship between the position of the upper body mass point 3 m and the target ZMP and the motion of the upper body mass point 3 m is obtained by associating the upper body mass point 3 m with the inverted pendulum mass point and the target ZMP with the inverted pendulum fulcrum. This corresponds to the behavior of an inverted pendulum.
  • ⁇ in the Y-axis direction is, more accurately, the sign of the right side of Expression 07 inverted.
  • the AFr is a perturbation amount of Fx or Fy when d20by / dt2 is perturbed by a unit amount in Expression 02X or Expression 02y, it can be obtained by the following expression.
  • ⁇ M r is the perturbation amount of Mx or My when d2 0 bx / dt2 or d2 ⁇ by / dt2 is perturbed by a unit amount in the equation 0 3 X or the equation 0 3 y.
  • a Mbz is the perturbation amount of Mz when d20bz / dt2 is perturbed by a unit amount in Expression 03z, and is obtained by the following expression.
  • the change A Mbz of the floor reaction force moment component per unit acceleration in the upper body rotation mode corresponds to the moment of inertia of the flywheel F Hbz corresponding to the upper body rotation.
  • a Maz is a perturbation amount of Mz when d2 / az / dt2 is perturbed by a unit amount in Expression 03z, it is obtained by the following expression.
  • the change A Maz of the floor reaction force moment component per unit angular acceleration of antiphase arm swing corresponds to the inertia moment of the flywheel FHaz corresponding to arm swing.
  • the gait generator 100 in the first reference example is a target gait for one step from the landing of one leg 2 of the mouth pot 1 to the landing of the other leg 2 (as defined in the narrow sense above).
  • the target gait for one step is generated in order with the target gait in the sense of) as a unit. Therefore, in the running gait of FIG. 5 generated in the first reference example, the target gait starts at the start of the one-leg support period and ends at the end of the aerial period that follows.
  • the desired gaits up to (at the start of the next one-leg support period) are sequentially generated.
  • the target gait to be newly generated is called “this time gait”, the next target gait is called “next gait”, and the next target gait is called “next next time gait”. Call it.
  • the target gait generated just before the current gait is called the previous gait.
  • the gait generator 100 When the gait generator 100 newly generates the current time's gait, the gait generator 100 will land the free leg side foot 22 up to two steps ahead of the robot 1.
  • the required values (requests) of the position and orientation and the scheduled landing time are input as the required parameters for the gait (or the gait generator 100 reads the required parameters from the storage device).
  • the gait generator 100 uses these required parameters to calculate the desired body position / posture trajectory, the desired foot position / posture trajectory, the desired ZMP trajectory, the desired floor reaction force vertical component trajectory, and the desired arm posture. Generate trajectories, etc. At this time, part of the gait parameters that define these trajectories is appropriately modified so as to ensure continuity of walking.
  • FIG. 13 is a flowchart (structured front-to-end) showing a main routine of a gait generation process executed by the gait generator 100.
  • various initialization operations such as initializing the time t to 0 in S 0 10 are performed. This process is performed when the gait generator 100 is activated. Next, the process proceeds to SO 14 via SO 12, and the gait generator 100 waits for an interrupt at each control cycle (the arithmetic processing cycle of the flowchart in FIG. 13). The control cycle is At.
  • the process proceeds to S 0 16, where it is determined whether or not the gait is a switch. If the gait is a switch, the process proceeds to S 0 18 and the gait is switched. If not, proceed to SO 30.
  • gait switching point means the timing at which generation of the previous time's gait is completed and generation of the current time's gait is started. The control cycle becomes the gait switching point.
  • the required parameter given to the gait generator 100 from the joystick 73 etc. is scheduled to land on the free leg side foot 22 up to two steps ahead. Position and posture (so that the sole touches the floor almost completely after the foot 2 has landed.
  • the request value of the first step and the request value of the second step correspond to the current time's gait and the next time's gait, respectively, at the start of generation of the current time's gait (the gait of S 016 described above). This is the value given to the gait generator 100 before. These required values can be changed even during the generation of the current time's gait.
  • the next time's gait support leg corresponds to the required value of the scheduled landing position / posture of the first leg of the free leg side 2 2 (the free leg side foot 2 2 in the current time's gait) in the above required parameters.
  • the coordinate system is determined.
  • the required value of the landing position / posture of the free leg side foot 2 2 (22 L in the figure) relating to the current time's gait (the first step) is determined by the support leg side of the current time's gait.
  • the X-axis direction of the gait support leg coordinate system (the front-rear direction of the support leg-side foot 22R of the current gait) and the Y axis Move in xnext and ynext directions in the direction (left and right of the foot 22R of the gait), and ⁇ ⁇ znext around the Z axis (around the vertical axis). It is assumed that the position and orientation have been rotated.
  • the supporting leg coordinate system is such that the supporting leg side foot 22 is in a horizontal posture (more generally, a posture parallel to the floor surface) and almost the entire bottom surface of the supporting leg side foot 22 is on the floor.
  • the point at which the perpendicular extending from the center of the ankle of the supporting leg side leg 2 to the floor intersects with the floor surface in a state of being in contact with (adhering to) the floor surface (this point is an example of the first reference example).
  • the horizontal plane passing through the origin is the XY plane. Coordinate system (coordinate system fixed to the floor).
  • the X-axis direction and the Y-axis direction are the front-rear direction and the left-right direction of the support leg side foot 22, respectively.
  • the origin of the supporting leg coordinate system is not necessarily the representative point of the foot 22 when the entire bottom surface of the supporting foot 22 is in contact with the floor (representing the position of the foot 22). It is not necessary to match with the representative point, and it may be set to a point on the floor different from the representative point.
  • the next time's gait support leg coordinate system is, as shown in the figure, when the foot 22 is landed in accordance with the required value of the scheduled landing position and posture of the free leg side 22 L of the current time's gait (foot).
  • the representative point (more specifically, the point on the floor that matches the representative point) is set as the origin, and the front and rear and left and right directions of the foot 22 L in the horizontal plane passing through the origin are defined as the X′-axis direction and the Y′-axis, respectively. It is a coordinate system to be a direction.
  • the gait support leg coordinate system (see X, Y coordinates in Fig. 16) is determined according to the required value of the expected landing position and posture of the free leg side foot 22 of the second step. .
  • this time's gait cycle is based on the scheduled landing time of the free leg side foot 22 of the first step (this time's gait) from the scheduled landing time of the supporting leg side foot 22 of this time's gait (required value).
  • the next gait cycle is defined as the time from the landing time (required value) of the first step on the free leg side (required value) of the second step. It is determined as the time until the scheduled landing time (required value).
  • the required parameters are input to the gait generator 100 by a required operation of the joystick 73, but the required parameters or the corresponding
  • the position and orientation of the supporting leg coordinate system and the gait cycle may be stored as the movement schedule of the robot 1.
  • the next and next next time gait support leg coordinate system based on a command (request) from a control device such as the joystick 73 and the movement history of the mouth port 1 up to that time, the next and next next time gait support leg coordinate system,.
  • the current and next gait cycles may be determined.
  • the gait generator 100 determines the gait parameters of the normal turning gait as a virtual periodic gait following the current time's gait.
  • the gait parameters include a foot trajectory parameter defining a desired foot position / posture trajectory in a normal turning gait, a reference body posture trajectory parameter defining a reference body posture trajectory, and a reference arm posture trajectory. Including the reference arm posture trajectory that defines the parameter, the target ZMP trajectory parameter, the ZMP trajectory parameter, and the desired floor reaction force vertical component trajectory parameter.
  • parameters defining the allowable range of the floor reaction force horizontal component and the allowable range of the floor reaction force moment vertical component are also included in the gait parameters.
  • the “steady turning gait” refers to the motion state of the robot 1 at the boundary of the gait (the boundary of the gait for each step in the first reference example) when the gait is repeated. It is used to mean a periodic gait that does not cause discontinuity in the foot position / posture, body position / posture, etc.).
  • “normal gait” may be abbreviated as “normal gait”.
  • the normal turning gait which is a periodic gait, is a gait for two steps of the mouth port 1, that is, a first turning gait following the current time gait and the first turning gait.
  • a gait consisting of the following second turning gait is a gait for one cycle of the normal turning gait.
  • the term “turn” is used here because when the turn rate is zero, it means straight ahead, and straight turn can be included in the turn in a broad sense. If the generated desired gait is the running gait of FIG. 5 described above, the current time gait of the desired gait is a running gait having a one-leg support period and an aerial period.
  • Both the first turning gait and the second turning gait are gaits having a one-leg support period and an aerial period, similarly to the current time gait. That is, the basic gaits of the first turning gait and the second turning gait are the same as the current time gait.
  • one cycle of the normal turning gait requires at least two gaits in the narrow sense described above. It is also possible to set a complex stationary turning gait in which gaits of three or more steps are gaits for one cycle.
  • the normal turning gait is used only to determine the divergent component (details will be described later) at the end (end time) of the current time's gait, as described later. For this reason, using a normal turning gait with a gait of three or more steps as one cycle has little effect despite the complicated gait generation processing. Therefore, the gait for one cycle of the normal turning gait in the first reference example is composed of two gaits (first and second turning gaits).
  • a normal turning gait composed of a plurality of gaits in a narrow sense is regarded as one gait.
  • the normal turning gait is provisionally determined by the gait generator 100 in order to determine the divergent component at the end of the current time's gait, the body vertical position speed, the body posture angle, and the motion state of the robot 1 such as its angular velocity.
  • the gait generator 100 does not output the gait generator 100 as it is. .
  • divergence refers to the upper body of the bipedal port 1 as shown in Figure 14. This means that the position of 3 is shifted far away from the position of both feet 22 and 22.
  • the value of the divergent component means that the position of the upper body 3 of the bipedal moving robot 1 is the position of both feet 22 and 22 It is a numerical value that represents how far away from the global coordinate system (the origin of the support leg coordinate system).
  • a gait is generated using a divergent component as an index so that a desired gait is continuously generated without the divergence described above.
  • a typical example of the normal gait (a periodic gait in which the gait of the same pattern can be repeated without generating a discontinuity in the gait trajectory.
  • the normal gait following the current gait to be generated is set according to the required parameters related to the current gait, and the initial divergent component of the normal gait is obtained.
  • This time's gait is generated so that the terminal divergence component of the current time's gait matches the initial divergence component of the normal gait (more generally, the current time's gait is made continuous or close to the normal gait).
  • the basic guideline of such gait generation is the same as that of the PCT publication WOZ 02/40224 previously proposed by the present applicant.
  • the first reference example of the present invention does not use a linear three-mass dynamic model as used in the first embodiment of PCT Publication WOZ02 40224, the divergence component and the convergence component defined by The concept can be applied with sufficient accuracy approximately to the perturbation of the behavior of a nonlinear dynamic model such as the model shown in Fig. 12. Divergent component-body mass point horizontal position + body mass point horizontal velocity / ⁇ ⁇
  • Convergence component upper body mass horizontal position-upper body mass horizontal velocity / ⁇ ⁇ '
  • Equation 1 1 Equation 1 1 where the horizontal position of the upper body mass represents the horizontal position Xb of the upper body mass in the dynamic model shown in FIG.
  • ⁇ 0 and ⁇ ⁇ ′ are certain predetermined values. These ⁇ 0 and ⁇ 0 'values are almost the same, but they are not exactly the same. Then, during running, it is necessary to slightly change the value at the time of generating the walking gait of PCT publication WOZ02Z40224.
  • a gait parameter is set to define the desired floor reaction force vertical component trajectory, and the mouth port 1 is set to dynamically satisfy the desired floor reaction force vertical component. Determine the vertical position of the entire center of gravity.
  • the second-order integral value of the floor reaction force vertical component defines the vertical position of the overall center of gravity of robot 1. If the target floor reaction force vertical component is set incorrectly, the total weight of mouth port 1 will be lost. The vertical position or body vertical position is too high or too low.
  • the section can be applied to a method of determining a desired floor reaction force vertical component for making the body vertical position velocity appropriate with a slight change. .
  • the foot trajectory of the normal gait parameters is set so that the foot position / posture trajectory is connected in the order of the current gait, the first turning gait, and the second turning gait.
  • the parameters are determined.
  • a specific setting method will be described with reference to FIG.
  • the foot 22 of the leg 2 on the supporting leg side is referred to as a supporting leg foot
  • the foot 22 of the leg 2 on the free leg side is referred to as a free leg foot.
  • the “initial” and “end” of a gait mean the start time and end time of the gait, respectively, or the instantaneous gait at those times.
  • the foot trajectory parameters are the position and orientation of the supporting leg foot and the free leg foot at the beginning and end of the first turning gait and the second turning gait, respectively. Consist of the gait cycle of each turning gait Is done.
  • the foot position / posture trajectory (the trajectory viewed from the next time gait support leg coordinate system) leading to the next gait end swing leg foot position / posture determined according to the next time's gait support leg coordinate system It is obtained by generating using the finite time settling filter.
  • the foot 22 is rotated in the pitch direction by a predetermined angle to the horizontal position so that the toe is lowered while keeping the foot 22 in contact with the ground.
  • the position and orientation of the foot at the time of contact are determined so as to match the position and orientation of the next-time gait support leg coordinate system.
  • the next step From the required value of the landing position and posture of the free leg side foot 22 of the second step in the required parameter, the foot 22 is grounded so that the foot 22 is not slipped. This is the position and posture of the foot 22 in a state where the foot 22 is rotated by a predetermined angle in the pitch direction so that the toe is lifted while the toe is raised (the toe is raised and the heel lands).
  • the first turning gait initial support leg foot position / posture is the current gait end free leg foot position / posture viewed from the next time gait support leg coordinate system.
  • the next time gait end free leg foot position / posture is one of the next time gait support leg coordinate system or one of the required parameters corresponding thereto. It is determined according to the required value of the expected free leg landing position / posture of the step (this time's gait). That is, from the position and posture, the foot 22 is rotated from the position and posture to lower the toe while keeping the foot 22 in contact with the ground, and the foot 22 is rotated by lowering the toe.
  • the representative point of the foot when almost the entire bottom surface is brought into contact with the floor surface is determined so as to coincide with the origin of the next time's gait support leg coordinate system.
  • the first turning gait end free leg foot position / posture is calculated in the same way as the method for determining the current gait end free leg foot position / posture and the next time gait end free leg foot position / posture. Is determined based on the position and orientation of the next-time gait support leg coordinate system viewed from the user. More specifically, the foot position and posture of the first swing gait end free leg foot are set at a predetermined angle from the position to the horizontal position so that the foot 22 does not slip while the foot 22 is grounded. The foot position and orientation when rotated are set to match the position and orientation of the next-time gait support leg coordinate system viewed from the next-time gait support leg coordinate system.
  • the supporting leg foot 22 is off the floor and in the air.
  • the first turning gait support leg foot landing scheduled position / posture is set. 1st turning gait support leg foot landing The scheduled position / posture is set based on the position / posture of the next / next gait support leg coordinate system viewed from the next / time gait support leg coordinate system. More specifically, the first turning gait support leg foot landing scheduled position / posture is the position / posture of the next next gait support leg coordinate system viewed from the next time gait support leg coordinate system.
  • the next-next gait support leg coordinate system is based on the relative position and orientation of the next-next gait support leg coordinate system and the next-next gait support leg coordinate system. It is set to match the relative position and orientation relationship with the supporting leg coordinate system.
  • the first turning gait end support leg foot position / posture is calculated from the first turning gait initial support leg foot position / posture in the same manner as when the first turning gait initial support leg foot position / posture is obtained.
  • the foot position and posture trajectory (or more specifically, the trajectory viewed from the next time's gait support leg coordinate system) leading to the first turning gait support leg foot landing scheduled position / posture are converted to the finite time settling filter up to the end of the first turning gait. It is obtained by generating using
  • the initial swing leg foot position / posture of the second turning gait is the foot position / posture of the first turning gait end supporting leg viewed from the next-time gait support leg coordinate system.
  • the initial support leg foot position / posture of the second turning gait is the first turning gait end free leg foot position / posture viewed from the next-time gait support leg coordinate system.
  • the second turning gait end free leg foot position / posture is the current gait end free leg foot position / posture viewed from the gait support leg coordinate system.
  • the second turning gait end support leg foot position / posture is the current gait end support leg foot position / posture viewed from the gait support leg coordinate system.
  • the gait cycle of the first turning gait and the second turning gait is set to be the same as the next time gait cycle.
  • the gait cycles of the first turning gait and the second turning gait are not necessarily required to be the same as each other, but it is important that each cycle is determined at least according to the next gait cycle. preferable.
  • the exercise parameters other than the above for the gait, the first turning gait and the second turning gait both leg supports
  • the gait conditions including the speed of akuchiyue within the allowable range, whether the speed exceeds the movable angle, etc.) (Such as interference with the floor, etc.).
  • a reference body posture trajectory parameter defining a reference body posture trajectory to be followed by the target body posture is determined.
  • the reference body posture is connected between the beginning of the normal gait (the beginning of the first turning gait) and the end (the end of the second turning gait).
  • the posture angle and its angular velocity are set to be equal to each other, it is not necessary to keep the posture constant.
  • the inclination angle ( The posture related to the vertical inclination angle) is set to the upright posture (vertical posture). That is, in the first reference example, the reference body posture regarding the inclination angle of the body 3 is set to the upright posture during the entire period of the normal gait.
  • the angular velocity and the angular acceleration of the inclination angle in the reference body posture are zero.
  • the one corner trajectory of the reference body posture (hereinafter also referred to as the reference one corner trajectory) 0 bz may be, for example, a movement at a constant angular velocity (average turning speed of a normal gait).
  • a sine wave shape may be used as in the example of the reference inversion arm swing trajectory described later (FIG. 18).
  • FOG. 18 reference inversion arm swing trajectory
  • the unilateral trajectory of the target body posture (hereinafter also referred to as the target unilateral trajectory) is made to coincide with the reference unilateral trajectory.
  • the process proceeds to S104, and the reference arm posture trajectory parameters are determined. Specifically, the position of the center of gravity of the entire arms 5, 5 (the position of the center of gravity relative to the upper body 3), the distance between the left and right hands (tips of the arms 5, 5) in the left and right direction, The parameters related to the antiphase arm swing angle are determined.
  • Reference out-of-phase arm swing The corner may be set as shown in FIG. 18 when turning left as shown in FIG. 17, for example. As shown in Fig.
  • the reference antiphase arm swing angle of 0 azi'ef is at the boundary of the gait (the end of the second gait and the boundary of the next first gait) when the normal gait is repeated.
  • Both the antiphase arm swing angle and the angular velocity are continuous, and the relative relationship between the support leg and the antiphase arm swing angle at the beginning of the first turning gait is It is set to match the relative angle. That is, the initial anti-phase arm swing angular velocity of the first turning gait matches the terminal anti-phase arm swing angular velocity of the second turning gait, and the terminal anti-phase arm swing angle of the second turning gait is the normal gait turning.
  • the angle (sum of the turning angles of the first turning gait and the second turning gait) plus the initial antiphase arm swing angle of the first turning gait is set.
  • the reference antiphase arm swing angle Q azref is a sinusoidal waveform, but may be set to a constant angular velocity. Alternatively, it may be the average of the angle of the supporting leg and the angle of the swinging leg.
  • the position of the center of gravity (the relative position with respect to the upper body 3) of the both arms 5 in the target arm posture is set so as to be kept constant with respect to the upper body 3. Is done.
  • a floor reaction force vertical component trajectory parameter is set (in this case, the floor reaction force vertical component trajectory defined by the parameter is set to the first turning gait and the In each of the two turning gaits, the floor reaction force vertical component trajectory parameters are set so as to be substantially continuous (values do not jump in steps) as shown in Fig. 6. That is, a steady turning gait
  • the desired floor reaction force vertical component trajectory is set in a pattern as shown in Fig. 19. In that pattern, the floor reaction force during the one-leg support period in both the first turning gait and the second turning gait
  • the vertical component changes to a trapezoidal shape, and the floor reaction force vertical component is maintained at 0 during the aerial period.
  • the force vertical component orbit is set as the parameter.
  • the total gait of the floor reaction force vertical component (one gait of the normal gait during the period of both the first turning gait and the second turning gait)
  • the average value in the period (period of the cycle) is matched with the weight of the robot. That is, the average value of the vertical component of the floor reaction force is set to be the same as the gravity acting on the mouth port 1 and in the opposite direction.
  • the conditions of the normal gait are all the state variables of the gait (the position of each part of the mouth port 1, the position of the mouth port 1, Stance of the gait viewed from the initial state (posture, speed, etc.) (initial state of the first turning gait) and the next supporting leg coordinate system (supporting leg coordinate system of the next first turning gait) (The end state of the second turning gait) (this condition is sometimes referred to as the boundary condition of the normal gait).
  • the difference between the overall center-of-gravity vertical speed of the mouth port 1 at the end of the normal gait and the overall center-of-gravity vertical speed at the beginning of the normal gait (specifically, the total center-of-gravity vertical speed at the end of the second gait and the first
  • the difference from the vertical velocity of the entire center of gravity at the beginning of a turning gait) must also be zero. Since the above difference is the integral of the difference between the ground reaction force vertical component and gravity (first-order integration value), it is necessary to set the floor reaction force vertical component trajectory as described above to make the difference zero. There is.
  • the average value of the floor reaction force vertical component in each of the first turning gait and the second turning gait is set to match the own weight of the robot 1. More specifically, for example, after setting the time of the break point of the trapezoidal portion of the floor reaction force vertical component trajectory in each turning gait according to the gait cycle of the first turning gait and the second turning gait, The height of the trapezoid was determined so that the average value of the floor reaction force vertical component in each of the first turning gait and the second turning gait in each period coincided with the own weight of Lopot 1. The height of the trapezoid is determined by solving the equation that represents the above-mentioned conditions for matching the average value and the self-weight as unknowns. ).
  • the difference between the overall center-of-gravity vertical speed at the end of the first turning gait and the overall center-of-gravity vertical speed at the beginning of the first turning gait is also zero.
  • the difference from the vertical velocity of the entire center of gravity in the initial stage of the turning gait is also zero.
  • this is not necessary. For example, if the upper body vertical position is too high or too low near the boundary between the first turning gait and the second turning gait and it is likely to be an unreasonable posture, then each turning gait will The height and the like of the trapezoid of the floor reaction force vertical component trajectory of each turning gait may be corrected from the state where the average value and the own weight are matched.
  • the allowable range of the floor reaction force horizontal component [Fxmin, Fxmax] (more specifically, Is set as shown in Fig. 20.
  • the negative line in Fig. 20 indicates the floor reaction force horizontal component allowable lower limit Fxmin, and the positive line indicates the floor reaction force horizontal component allowable upper limit Fxmax.
  • the floor reaction force horizontal component is generated by the friction between the floor and the foot 22, but not all friction can be generated, and there is a limit. Therefore, the floor reaction force horizontal component of the desired gait must always be within the friction limit in order to prevent slipping when the actual lopot 1 moves according to the generated desired gait.
  • the floor reaction force horizontal component allowable range is set, and as described later, the target gait is set so that the floor reaction force horizontal component of the target gait falls within this allowable range.
  • Fxmin is always set to i * floor reaction force vertical component or higher
  • Fxmax is set to: * floor reaction force vertical component or lower. There must be.
  • the simplest setting method is the following formula. Where ka is a positive constant smaller than 1.
  • the floor reaction force horizontal component allowable range shown in FIG. 20 is an example set in accordance with Equation 12.
  • the value and time at the break point such as the trapezoidal waveform in Fig. 20 may be set as the parameters defining the floor reaction force horizontal component allowable range.
  • the value of (ka *) in Equation 12 may be simply set as a parameter.
  • the floor reaction force moment vertical component allowable range [Mzmin, Mzmax] (details in accordance with the floor reaction force vertical component trajectory set as shown in Fig. 19 as described above) Is set as shown in Fig. 21.
  • the polygonal line on the negative side in Fig. 21 represents the floor reaction force moment vertical component allowable lower limit Mzmin, and the polygonal line on the positive side represents the floor reaction force moment vertical component allowable upper limit Mzmax.
  • the vertical component of the floor reaction force moment is generated by friction between the floor and the foot 22, but the friction cannot be generated as much as possible, and there is a limit. Therefore, the vertical component of the floor reaction force moment of the target gait must always be within the friction limit to prevent the spin from occurring when the actual lopot 1 moves according to the generated target gait. . Therefore, in order to satisfy this condition, an allowable range of the floor reaction force moment vertical component is set, and as will be described later, the floor reaction camouflage vertical component of the target gait falls within this allowable range. In this way, we decided to generate a desired gait.
  • r is defined as follows: Mzmin is always set to be equal to or greater than the * * r * floor reaction force vertical component, and Mzmax is set to be equal to or less than * r * floor reaction force vertical component. There must be.
  • the simplest setting method is the following formula. Where ka is a positive constant less than 1.
  • Mzxmin —ka * * r * Floor reaction force vertical component
  • the allowable range of the floor reaction force moment vertical component in Fig. 21 is an example set according to the equation 1 0 12.
  • the value and time at the break point such as the trapezoidal waveform in Fig. 21 may be set as parameters that define the allowable range of the floor reaction force moment vertical component.
  • the value of (ka *) in Equation 101 may simply be set as a parameter.
  • r is preferably calculated at each moment from the target ZMP and the ground contact surface, but may be a constant.
  • the allowable range of the combination of the floor reaction force horizontal component and the floor reaction force vertical component moment is set. You may do it. The reason is that if the floor reaction force horizontal component increases, the allowable range of the floor reaction force moment vertical component narrows, and if the floor reaction force moment vertical component increases, the floor This is because the allowable range of the reaction force horizontal component becomes narrow.
  • a ZMP trajectory parameter that defines a ZMP trajectory of a normal gait combining the first turning gait and the second turning gait is set.
  • the target ZMP trajectory is set so as to have a high stability margin and not to change abruptly as described above.
  • the target ZMP must be within the ground contact. Therefore, in the first reference example, the position of the target ZMP in the X-axis direction of each of the first turning gait and the second turning gait of the normal gait is, as shown in the upper diagram of FIG.
  • the foot 22 With the heel of the support leg foot 22 as an initial position, the foot 22 is set so as to remain at that position until almost the entire bottom surface of the foot 22 is in contact with the ground.
  • the target ZMP moves to the center of the supporting leg foot 22.
  • the foot Z22 moves to the toe until the toe touches the ground, and then the supporting leg foot 22 reaches the floor. It is set to stay in Masaki.
  • the target ZMP is from the toe of the supporting leg foot 22 to the landing position of the heel of the free leg foot 22 by the time the next swing leg foot 22 reaches. It is set to move continuously.
  • the target ZMP trajectory (trajectory in the X-axis direction) of the normal gait consisting of the first turning gait and the second turning gait is as shown in FIG.
  • the time and position of the break point of the target ZMP trajectory are set as parameters of the ZMP trajectory.
  • the time of the turning point is set according to the gait cycle of the first turning gait and the second turning gait determined according to the required parameter, and the position of the turning point is determined by the next turn.
  • the position and orientation of the gait support leg coordinate system and the next-time gait support leg coordinate system These parameters are set according to the required values of the required parameters for the first and second steps on the free leg side foot landing scheduled position / posture that define these coordinate systems.
  • the position of the ZMP trajectory in the Y-axis direction is set in the same manner as that shown in the lower diagram of FIG. More specifically, the trajectory of the target ZMP in the Y-axis direction in the first turning gait is set in the same pattern as that shown in the lower diagram of FIG. 7, and the Y-axis position of the target ZMP in the second turning gait The trajectory is set to the trajectory of the same shape as that of the first turning gait, which is connected to the end of the trajectory.
  • step (one cycle) are redefined as follows.
  • a normal gait must be a gait in which the state variables at the beginning and end are continuously connected.
  • the initial gait of the normal gait is different until the determination of the normal gait.
  • End and period are defined as shown in Figure 19 for convenience. That is, the time at which the floor reaction force vertical component decreases to some extent in the latter half of the one-leg support period of the first turning gait is set as the initial time Ts of the normal gait.
  • the initial time Ts is, as shown in Fig.
  • the relationship between the target ZMP set at S110 and the time Ts shown in FIG. 22 (or FIG. 7) and the time Ts will be described. In the first turning gait, almost the entire bottom surface of the support leg foot 22 is in contact with the ground. After that, it is desirable that the moment when the target ZMP moves to the center of the supporting leg foot 22 and completes the movement to the toe before the toe touches the ground, is the time Ts.
  • Such an initial time Ts is set, for example, in accordance with the previously set target ZMP trajectory parameters.
  • the reason for setting the initial time Ts as described above will be described later.
  • the cycle Tcyc of the normal gait is the sum of the gait cycles of the first turning gait and the second turning gait.
  • Te be the end time of the normal gait, where Te is set to the time obtained by adding Tcyc to Ts.
  • the definitions of the initial and final gaits of the gait are replaced with the definition of the gait in the narrow sense described above. I will return it.
  • the initial time time at the time of landing of the foot 22 on the support leg side
  • Ts initial time used until the normal gait is determined. (Sometimes simply abbreviated as "Ts") to distinguish it from the original initial time 0.
  • the body posture angle and antiphase arm swing angle restoration period [Tm, Ts2] and [Tm2, Te] of the normal gait is repeated.
  • the body posture angle and the antiphase arm swing angle should be continuous at the boundary of the gait.
  • the initial body posture angular velocity of the normal gait and the terminal body posture angular velocity must match, and the initial antiphase arm swing angular velocity and the terminal antiphase arm swing angular velocity of the normal gait must match.
  • the above-mentioned period is a period for adjusting the body posture angle trajectory and the anti-phase arm swing angle trajectory for doing so.
  • a time Tm at which the second turning gait becomes the second turning gait after the aerial period of the first turning gait from the initial time Ts and the floor reaction force vertical component has increased to a predetermined magnitude is set.
  • a time Ts2 at which the floor reaction vertical component decreases to some extent in the latter half of the one-leg support period of the second turning gait is set.
  • the time Tm2 at which the first turning gait becomes the first turning gait after the aerial period of the second turning gait and the vertical component of the floor reaction force increases to a predetermined magnitude is set.
  • the time Tm is desirably set at the moment when almost the entire bottom surface of the support leg foot 22 is touched or immediately thereafter.
  • the time Ts2 is the same as the initial time Ts. It is desirable to set the moment when or almost immediately when the bottom surface of the flat 22 changes from a state in which the entire surface is grounded to a toe ground.
  • the target ZMP of FIG. 22 set in S110 of FIG. 15 and these times Tm, Ts2, and Tm2 will be described.
  • the target ZMP is With the heel of leg foot 22 as the initial position, it stays at that position until almost the entire bottom surface of foot 22 is in contact with the ground, and then the moment when it begins to move to the center of support leg foot 22 is time Tm. It is desirable that the moment when the target ZMP completes its movement to the toe before the toe of the support leg foot 22 touches down is time Ts2.
  • the target ZMP stays at the heel of the support leg foot 22 as an initial position until almost the entire bottom surface of the foot 22 touches the ground, and then the support leg It is desirable that the moment at which the foot 22 begins to move to the center be set to time Tm2.
  • the reason for setting as described above will be described later.
  • the period for restoring (adjusting) the body posture angle and the period for restoring (adjusting) the antiphase arm swing angle may be set separately.
  • the process proceeds to S024, where the initial state of the normal gait is calculated.
  • the initial state calculated here is the initial body horizontal position velocity (initial body position and initial body velocity in the horizontal direction) of the normal gait, and the initial body vertical position velocity (initial upper body velocity in the vertical direction). Body position and initial body velocity), initial divergent component, initial body posture angle, angular velocity, and initial antiphase arm swing angle and angular velocity. The calculation of this initial state is performed exploratively according to the flowchart of FIG.
  • the initial state (state at the initial time Ts) of (tilt angle and angle) is determined.
  • the state represents the position or attitude angle and its rate of change (time derivative).
  • the initial state of the target foot position / posture on the supporting leg side is based on the first supporting gait initial supporting leg foot position / posture of the foot trajectory parameters determined in S100 in FIG. 15 described above.
  • the foot position / posture trajectory (trajectory viewed from the next time's gait support leg coordinate system) leading to the second swing gait end free leg foot position / posture is determined by generating a finite time setting filter until time Ts.
  • the initial state of the desired foot position on the swing leg is from the initial support leg position of the current gait to the next gait support leg coordinate system from the next time's gait support leg coordinate system to the first swing gait end free leg foot position and posture. It is determined by generating the trajectory of the foot position and posture until the time Ts by the finite time settling filter.
  • the initial state of the target arm posture is determined to be the reference arm posture at time Ts obtained based on the reference arm posture trajectory parameters determined in S104 of FIG.
  • the position of the center of gravity of the both arms 5, 5 in the target arm posture (relative position with respect to the upper body 3), the distance between the left and right hands (tips of the both arms 5, 5) in the left and right direction and Antiphase.
  • Arm swing angle ⁇ Angular velocity is determined.
  • the antiphase arm swing angle and angular velocity are corrected so that they continue at the boundary of the gait when the normal gait is repeated, as described later, so here they are only temporarily determined.
  • the initial state of the target body posture angle is such that the reference body posture (tilt angle and angle) and the angular velocity at time Ts determined by the reference body posture trajectory parameter determined in S102 of FIG.
  • the initial state of the desired body posture angle is determined.
  • the initial state of the inclination angle (the inclination angle and its angular velocity) in the target body posture is 0. It is.
  • the target foot position / posture trajectory, the floor reaction force vertical component trajectory, and the target ZMP trajectory of the normal gait are respectively the flow chart in FIG. -The orbit of the foot trajectory, the floor reaction force vertical component trajectory parameters, and the ZMP trajectory parameters are determined independently of each other.
  • the instantaneous desired foot position / posture of the normal gait is determined according to the foot trajectory parameters without depending on the instantaneous value of the floor reaction force vertical component.
  • the initial body horizontal position / velocity candidate ie, body horizontal position / velocity candidate at the initial time Ts
  • Xs, Vxs body horizontal position / velocity candidate at the initial time Ts
  • Xs, Vxs horizontal position
  • Vxs horizontal velocity
  • the candidate (Xs, Vxs) to be provisionally determined here may be arbitrary.
  • the body horizontal position and velocity in the initial state of the normal gait obtained at the time of the previous generation of the gait are assumed to be the provisionally determined candidates (Xs, Vxs). Just fine.
  • the example of searching for the initial state of a normal gait in the X direction (forward and backward) on the sagittal plane is taken as an example. It is necessary to search for the initial state of the normal gait (the initial state that satisfies the boundary conditions of the normal gait) separately in the Y direction (horizontal direction) and the Y direction (lateral direction). ,
  • a pseudo Jacobian sensitivity matrix
  • the next catcher may be determined by the steepest descent method, or the simplex method may be used.
  • the steepest descent method is used.
  • a normal turning gait is temporarily generated (this temporarily generated normal turning gait may be hereinafter referred to as a temporary gait). More specifically, based on the gait parameters of the normal gait determined in S 0 22 of FIG. 13 above, the target ZMP and the target floor reaction at each moment from the initial time Ts to the end time Te Force vertical component, target foot position / posture, reference body posture, target arm posture, floor reaction force horizontal component allowable range and floor reaction force moment vertical component allowable range are sequentially obtained. Then, the dynamic model (the model in Fig. 12) is used to satisfy the dynamic equilibrium condition regarding the obtained target ZMP and the target floor reaction force vertical component and the condition of the floor reaction force horizontal component allowable range.
  • the body position / posture is determined sequentially with the body horizontal position velocity (Xs, Vxs) and the body vertical position velocity (Zs, Vzs) as the initial state (time Ts) of the body 3. Generates a gait from time Ts to end time Te ( at this time, the body posture is generated so as to match the reference body posture as much as possible.,
  • the anti-phase arm swing motion is determined so as to satisfy the condition regarding the floor reaction force moment vertical component, that is, the floor reaction cam moment vertical component allowable range.
  • the gait generation of the normal gait is only performed inside the gait generator 100, and is used as a target value for actually driving the robot 1 as a composite compliance operation determination unit 1 described later. It is never output to 04.
  • the details of the normal gait generation processing by the sequential operation which is the processing of S208 will be described.
  • FIG. 24 is a subroutine flowchart showing the processing.
  • various initializations are performed in S300. Specifically, the initial time Ts is substituted for the provisional gait generation time k. Furthermore, upper body The currently temporarily determined (Xs, Vxs) (determined in S202 of FIG. 23 or S216 or S218 described later) is substituted for the horizontal position velocity. The latest (Zs, Vzs) obtained in S206 is substituted for the body vertical position velocity. In addition, the reference body posture angle initial value (the angle at the initial time Ts) is substituted for the body posture angle, and the reference body posture angular velocity is the reference body body posture angular velocity initial value (the initial time Ts). Angular velocity) is substituted.
  • the reference initial antiphase arm swing angle (angle at initial time Ts) is substituted for the antiphase arm swing angle
  • the reference initial antiphase arm swing angular velocity angular velocity at initial time Ts
  • S304 it is determined whether or not the provisional gait generation time k is before the gait end time (whether or not k ⁇ Ts + Tcyc). If the judgment result is YES, the process proceeds to a subroutine for determining an instantaneous gait of S306, and an instantaneous gait value is determined. Next, the processing of the gait generator 100 proceeds to S308, and after increasing the provisional gait generation time k only, returns to S304.
  • Ak is an interval for generating a provisional gait, and usually may be set to coincide with the control cycle ⁇ t. Note that Ak may be set longer than ⁇ t in order to reduce the amount of computation if the dynamic accuracy of the provisional gait may be reduced.
  • the target floor reaction force vertical component shown in FIG. 19 is calculated based on the normal gait parameters (floor reaction force vertical component trajectory parameters).
  • the value at time k (this time value) is obtained.
  • the value (current value) at the time k of the target ZMP trajectory shown in FIG. Proceeding to S404, based on the normal gait parameters (foot trajectory parameter, reference body posture trajectory parameter overnight, and arm posture trajectory parameter), the target both foot position and posture (support leg side and The values of the target foot position and posture of both the swing leg side), the reference body posture and the reference arm posture (current values) are obtained.
  • the position of the overall center of gravity of the both arms 5, 5 (relative position with respect to the upper body 3), the distance between the left and right hands (tips of the both arms 5, 5) in the left and right direction, and The value of the out-of-phase arm swing angle (current value) is obtained.
  • the current value (the value at time k) of the target foot position / posture is obtained in the same manner as in the case where the foot position / posture at the initial time Ts is obtained in S200 in FIG.
  • the target floor reaction force vertical component (the sum of the vertical inertial force of robot 1 and gravity is balanced with the target floor reaction force vertical component).
  • the value of the vertical position velocity of the center of gravity (this value) is calculated.
  • the total body weight center-of-gravity vertical position velocity is calculated based on Expressions 01 and 04 relating to the dynamic model of FIG.
  • Equations 01 and 04 the sum of the vertical acceleration of gravity and the gravitational acceleration due to the movement of mouth port 1 multiplied by the total mass of rope 1 gives the floor reaction force vertical component. Is obtained (the equation of motion in the vertical direction of the overall center of gravity of the mouth port 1). Therefore, from this relational expression and the desired floor reaction vertical component, the vertical acceleration of all body weights is obtained.
  • the process proceeds to S408, and the body vertical position that satisfies the vertical position of the total body weight center is calculated.
  • the body vertical position is calculated using Expression 04 relating to the model of FIG.
  • the vertical position of the support leg material point 2 m and the free leg material point 2 m of the model in Fig. 12 is obtained from the current values of the target foot position and orientation on the support leg side and the free leg side.
  • a vertical position of 3 m is required.
  • the obtained vertical position of the body mass point of 3 m and the current value of the target body posture angle (the reference body posture angle set in S404 or the previous value determined in S414 described later ( Target body posture angle at time k—A k) A vertical position is required.
  • the current value of the desired body horizontal acceleration and the desired body posture acceleration is determined.
  • the body horizontal acceleration and the body posture angular acceleration are determined so that the floor reaction force horizontal component Fx does not exceed [Fxmin, Fxmax].
  • the current value of the target antiphase arm swing angular acceleration is determined so that the reaction force vertical component Mz does not exceed [Mzmin, Mzmax].
  • one corner is determined to coincide with one of the reference body posture angles.
  • components other than the anti-phase arm swing angle are determined so as to match the reference arm posture.
  • the target body tilt angle and the target antiphase arm swing angle are determined so as to follow the reference body tilt angle and the reference antiphase arm swing angle as much as possible. Is done. The details will be described below.
  • the instantaneous values (current values) of the foot position and posture and the body vertical position have been determined as described above.
  • the arm posture components other than the antiphase arm swing angle are the reference arm posture. T is determined to match that of Therefore, if the remaining horizontal body position, body posture angle, and antiphase arm swing angle are determined, the target motion of robot 1 can be uniquely determined. Therefore, all floor reaction forces are also uniquely determined.
  • the desired floor reaction force vertical component and the desired ZMP of the normal gait are respectively the floor reaction force vertical component trajectory parameters and the desired ZMP trajectory determined in S 0 22 in FIG. Specified by parameters.
  • the target ZMP is satisfied by mainly using the body tilt mode without using the body translation mode so much (the horizontal component of the floor reaction force moment around the target ZMP is set to 0). ) And the upper body posture may swing too much. Therefore, in order to prevent this, the body translation mode should be used as much as possible.
  • the body translation mode involves a change in the floor reaction force horizontal component, if the floor reaction force horizontal component allowable range is narrow, there is a risk of slipping if the body translation mode is strongly activated. In this case, you have to rely on the upper body tilt mode.
  • a gait that generates a floor reaction force horizontal component cannot be generated. I have to rely on the mode.
  • the anti-phase arm swing motion can change only the floor reaction force moment vertical component without changing both the horizontal component of the floor reaction force moment around the target ZMP and the floor reaction force horizontal component. It can be used so that the reaction force moment vertical component does not exceed the floor reaction force moment vertical component allowable range.
  • the body horizontal acceleration, the body posture angular acceleration, and the antiphase arm swing acceleration are determined according to the flowchart shown in FIG.
  • the determination of the body horizontal acceleration and the body posture angular acceleration (angular acceleration of the tilt angle of the body 3) is performed in the X direction (front-back direction) on the sagittal plane.
  • the body horizontal acceleration and the body posture angular acceleration in the Y direction (horizontal direction) are also determined in the same manner as the X direction.
  • the value of the reference body angle at time k is substituted for the target body angle. Also, except the antiphase arm swing angle and angular velocity components of the arm posture. Substitute the value of the reference arm posture at time k into the target arm posture.
  • the current time (the value of the first image for creating a normal gait) k is: body posture angle ⁇ antiphase arm swing angle restoration period (in the case of normal gait, body posture angle ⁇ antiphase It is determined whether or not the arm swing angle restoration period is between the time Tm and the time Ts2 and the time from the time Tm2 to Te.) If the determination result of S520 is NO, the process proceeds to S504, and if the determination result is YES, the process proceeds to S530.
  • the vertical position of the supporting leg material point 2 m and the free leg material point 2 m is obtained using the target foot position and orientation at the current time k (this time).
  • the vertical position of the upper body mass point 3 m is obtained using the floor reaction force vertical position at the current time k (this time), and the time series value of the target body vertical position obtained up to the current time k is used.
  • the vertical acceleration of the upper body mass point 3 m at the current time k is obtained. Then, these calculated values are substituted into the above equation 03 y, and My, d2 0 by / dt2 of the equation 03 y is set to 0.
  • the body mass point horizontal acceleration is obtained as the body horizontal acceleration atmp.
  • a more rigorous dynamic model may be used to search for the body horizontal acceleration a tmp that makes the horizontal component of the floor reaction force moment around the target ZMP zero.
  • the reference body posture regarding the inclination angle of the body 3 is a vertical posture.
  • the body posture angular acceleration (angular acceleration of the inclination angle of the body 3) based on the reference body posture is 0. Therefore, the angular acceleration in the body tilt mode was set to 0, and the body horizontal acceleration a tmp was calculated.
  • the reference body posture trajectory parameter is set so that the inclination angle of the reference body posture changes
  • the reference body posture angular acceleration at the current time k (the body 3 If the reference angular acceleration of the tilt angle is not 0, the angular acceleration in the body tilt mode is set to the non-zero reference body posture angular acceleration, and the body horizontal acceleration a tmp is calculated using the dynamic model.
  • set d2 ⁇ by / dt2 in Equation 0 3 y to a non-zero reference body posture angular acceleration and set the body horizontal acceleration 0!
  • the floor reaction force horizontal component Fxtmp at time k when the body horizontal acceleration is a tmp is obtained using a dynamic model.
  • Fxtmp is obtained by using the equation 02X of the dynamic model. That is, Fxtmp is obtained by the following equation (17).
  • d2XsupZ dt2 and d2Xswg / dt2 represent the horizontal acceleration of the supporting leg foot mass point and the free leg foot mass point at time k, respectively.
  • Figure 27 shows an example of Fxtmp obtained in this way.
  • the portion where Fxtmp exceeds the floor reaction force horizontal component allowable range [Fxmin, Fxmax] is indicated by oblique lines.
  • the body horizontal acceleration in the body translation mode the floor reaction force horizontal component Fx generated thereby, and the body angular acceleration i8 in the body tilt mode are determined as follows. (S508-S516).
  • Fxtmp Fxmin ... Equation 1 9
  • Fxtmp Fxtmp ⁇ ⁇ ⁇ Eq.
  • body posture angular acceleration body inclination angular acceleration
  • AF p, ⁇ , and ⁇ r are determined by the above equations 06, 07, and 09, respectively.
  • Figure 28 shows the Fx obtained as described above.
  • Fx is limited (saturated) so that the value of Fxtmp does not exceed the floor reaction force horizontal component allowable range [Fxmin, Fxmax]. More specifically, when Fxtmp corresponding to the body horizontal acceleration cUmp in only the body translation mode is within the allowable range [Fxmin, Fxmax], Fxtmp becomes Fx as it is. If Fxtmp corresponding to the body horizontal acceleration tmp only in the body translation mode exceeds the upper limit of the allowable range [Fxmin, Fxmax] or falls below the lower limit, Fx is forcibly set to Fxmax, respectively. , Fxmin.
  • FIG. 29 shows the body posture angular acceleration obtained as described above. Insufficient floor reaction force moment by limiting the acceleration in the body translation mode so that the Fx generated by the body translation mode does not exceed the allowable range [Fxmiii, Fxmax] (more specifically, the floor around the target ZMP). From the moment of inertia necessary to reduce the horizontal component of the reaction force moment to zero, the moment obtained by subtracting the moment component due to the restricted horizontal motion and the motion of the two legs 2, 2) This is supplemented by the mode. In the aerial period of the gait, the upper body horizontal acceleration ⁇ in the body translation mode is always limited to 0. Floor reaction moment is compensated for.
  • the upper body horizontal acceleration in the body translation mode is ⁇
  • the upper body angular acceleration (upper body tilt angular acceleration) in the upper body tilt mode is / 3
  • the upper body rotation mode When the upper body acceleration (the upper body angular acceleration) is the reference one angular acceleration d20 bzref / dt2, the antiphase arm swing angular acceleration) 3
  • the exercise is performed with the reference antiphase arm swing angular acceleration d2 ⁇ azref / dt2 Floor of anti-camo vertical component Mztmp.
  • d20 bzref / dt2 is / 3 bref
  • d2 ⁇ azref / dt is ⁇ aref.
  • Mztmp obtained by substituting Expression 1001 into Expression 1004 into Expression 03z is Mztmp.
  • Equation 1 0 0 4
  • x is the X component of the body horizontal acceleration ⁇
  • ay is the body horizontal acceleration Represents the Y component of degree o
  • the body horizontal position at time k-1 is substituted for Xb and Yb, and the value of time k is substituted for Xzmp, Yzmp, Xsup, d2Ysup / dt2, Xswg, and d2Yswg / dt2.
  • Figure 32 shows an example of Mztmp obtained in this way.
  • the part where Mztmp exceeds the floor reaction force moment vertical component allowable range [Mzmin, Mzmax] is shown by hatching.
  • Mztmp> Mzmax the process proceeds to S522, and Mz is determined by the following equation.
  • Mz Mzmax ... Equation 10 18 If Mztinp ⁇ Mzmin, proceed to S524, and Mz is determined by the following equation.
  • Mz Mzmin ... Equation 1 0 1 9 Otherwise, that is, if Mztmp is within the floor reaction force horizontal component allowable range [Mzmin, Mzmax], proceed to S5 26 and Mz is determined by the following equation .
  • Mz Mztmp ⁇ ⁇ ⁇ Equation 1 0 2 0
  • the arm swing angular acceleration jS a is determined.
  • ⁇ 8L ⁇ aref + (Mztmp ⁇ Mz) Z ⁇ Maz Equation 1 0 2 1 where A Maz is determined by Equation 09a.
  • Mz obtained as described above indicates the vertical component of the floor reaction force moment due to the motion of the entire rod including the antiphase arm swing.
  • the antiphase arm swing angular acceleration / 3a is determined so that this Mz does not exceed the floor reaction force moment vertical component allowable range [Mzmin, Mzmax].
  • the antiphase arm swing angular acceleration ⁇ a is calculated by dividing Maz by the equivalent inertia moment A of antiphase arm swing A Maz .
  • the reference antiphase arm swing angular acceleration) 3 aref (Differentiated value). That is, / 3a is obtained by the above equation 1021.
  • Antiphase arm swing angular acceleration ⁇ a Is shown in Figure 35.
  • the vertical component Mz of the floor reaction force moment generated by the motion of the entire rod including the antiphase arm swing does not exceed the allowable range [Mzmin, Mzmax].
  • the antiphase arm swing angle acceleration is matched with the reference antiphase arm swing angular acceleration / 3 aref, the floor reaction force moment vertical component M Z tmp cancels out of excess of the allowable range (cancel )
  • the antiphase arm swing angular acceleration i3 a is determined.
  • make sure that the floor reaction force moment vertical component Mz does not exceed the floor reaction force moment vertical component allowable range [Mzmin, Mzmax] exactly.
  • the determination result of S502 is YESS
  • the following processing is performed. First, proceeding to S530, from the previous instantaneous gait state of the mouth port 1 (the gait state at time k-1), the angular acceleration in the body tilt mode is set to 0, and the motion in the body translation mode is performed. Then, the body horizontal acceleration ⁇ required to satisfy the target ZMP at this time (time k) when is set to mouth port 1 is determined, and this is determined as the final body horizontal acceleration.
  • the process proceeds to S534, and the body posture angular acceleration (body inclination angular acceleration) ⁇ is determined to be 0.
  • the upper body angular acceleration is determined as the reference upper body angular acceleration 3 bref (the second-order derivative of the reference upper body angular).
  • the process proceeds to S 536, and substitutes the reference anti-phase arm swing angular acceleration ⁇ aref (a value obtained by second-order differentiation of the reference anti-phase arm swing angle) into the anti-phase arm swing angular acceleration] 3 a.
  • the body posture angular acceleration (body inclination angle acceleration and body tilt angle acceleration) is used as the reference body posture angular acceleration
  • the antiphase arm swing angular acceleration is used as the reference antiphase arm swing.
  • Match the angular acceleration Even in this case, it is expected that the floor reaction force generated by the movement does not exceed the floor reaction force horizontal component allowable range and the floor reaction camoment vertical component allowable range. No problem.
  • the process proceeds to S416, and the antiphase arm swing velocity is obtained by successively integrating the antiphase arm swing acceleration j8a obtained in S412 (cumulative addition from time Ts to the current time k). Then, by successively integrating these (cumulative addition from time Ts to current time k), antiphase arm swing angle 0 az (this time value) is obtained.
  • the ZMP-converted value of the floor reaction force moment that generates the body posture angular acceleration to return the body posture angular velocity to the initial value (the value at time Ts) by time Te (Hereafter referred to as body posture restoring moment ZMP converted value, abbreviated as ZMPrec).
  • Body posture angle ⁇ By generating body posture angular acceleration by using the body tilt mode during the anti-phase arm swing angle restoration period (the period from time Tm to time Ts2 and the period from time Tm2 to Te).
  • the body tilt mode if the body posture angular acceleration iS (k) is to be generated, the floor reaction force moment 3 (k) * ⁇ ⁇ occurs.
  • the vertical component of the floor reaction force at that moment is Fz (k)
  • Z MP (k) calculated from the motion is shifted by ⁇ Z MP obtained by the following equation.
  • ⁇ ZMP (k) -/ 3 (k) * ⁇ r / Fz (k) ⁇ ⁇ ⁇ Equation 2 3 Therefore, if the pattern of ⁇ M r and the pattern of Fz (k) are determined, (If known), by appropriately setting the pattern of ZMP (k), a body posture angular acceleration pattern that satisfies Equation 23 is generated, and the body posture angular velocity is set to the initial value ( Value at time Ts), that is, the body posture angular velocity in the initial state (time Ts) of the reference body posture trajectory.
  • the body posture restoring moment ZMP converted value means ⁇ ZMP (k) appropriately set in such a manner.
  • fluctuates strictly, but may be approximately a constant value.
  • the normal gait is only generated temporarily, and does not cause the actual mouth pot to follow this gait. This is because the dynamic accuracy of the normal gait does not have to be very high.
  • Fig. 30 shows an example of ZMPrec.
  • a trapezoidal pattern is formed as a pattern of ZMPrec in a period from time Tm to time Ts2 and a period from time Tm2 to Te.
  • the time at the break point of the trapezoid is matched with the time at the break point of the target ZMP pattern during the period between time Tm and time Ts2 and during the period from time Tm2 to Te (see Fig. 22). This is because, as will be described later, it is easy to correct the target ZMP pattern of the gait this time.
  • Equation 24 3 (k) obtained by Equation 24 is as shown by the solid line in FIG.
  • the dotted line in FIG. 31 shows the body posture angular acceleration during the period from time Ts to time Tm and the period from time Tm2 to Te (shown by the solid line in FIG. 29). (Hereafter, the value at time k When it is clear, (k) may be omitted. )
  • the initial (time Ts) body posture angle matches the initial (time Ts) reference body posture angle.
  • the initial body posture angular velocity is determined so as to satisfy Equations 37a and 37. End body posture angle-Initial body posture angle
  • Equation 3 7 a Terminal body posture angular velocity / initial body posture angular velocity
  • First-order integration of body posture angle acceleration determined to satisfy the floor reaction force horizontal component tolerance
  • Equation 37b The integration period of the first term on the right side of each of Eqs. 37a and 37b is the sum of the period from time Ts to Tm and the period from Ts2 to Tm2.
  • the integration period of the second term on the right-hand side is the sum of the period from time Tm to Ts2 and the period from Tm2 to Te.
  • the initial state posture angle and angular velocity of the first turning gait viewed from the supporting leg coordinate system are respectively the same as the first turning gait.
  • Gait support leg coordinate system (next next gait support leg coordinate system) It must match the terminal body posture angle and angular velocity seen from the viewpoint. Therefore, in the first reference example, the initial (time Ts) body posture angle is determined to be the value of the initial (time Ts) reference body posture angle.
  • Equation 3 7 Substitute the initial body posture angle and the end body posture angle on the left side of a. As the body posture angular acceleration relating to the integration of the first term on the right side of each of Expressions 37a and 37b, the one obtained in S518 in FIG. 26 is used.
  • the initial body posture angular velocity of Equations 37a and 37b and the trapezoidal height of ZMP rec (trapezoidal pattern in Fig. 30) related to the integration of the second term on the right side of Equations 37a and 37b
  • an unknown value (however, the time of the break point of the trapezoidal pattern of ZMP rec is predetermined as described above.
  • the initial body posture angular velocity obtained by solving the simultaneous equations of equations 37a and 37b including those unknowns will be used as the new initial body posture angular velocity. decide.
  • the final body posture angular velocity in Equation 37b is obtained by coordinating the unknown initial body posture angular velocity to the value seen from the next support leg coordinate system using a matrix corresponding to the total turning angle of the normal gait. It has been converted.
  • Equation 1 0 2 5
  • the body horizontal acceleration that satisfies the target ZMP when the body tilt restoring moment is not generated is atmp as obtained in S5 32,
  • the body posture angular acceleration iS is changed as described above
  • the acceleration increases by the second term on the right side of the expression 107 according to the body tilt restoration moment ZMP converted value (ZM Prec).
  • the body tilt angle recovery moment ZMP conversion value (ZM Prec) The terminal body horizontal velocity when the body posture angle acceleration) 3 is changed so as to generate a pattern as described above Is the terminal body horizontal velocity when the body tilt restoration moment ZMP converted value (ZM Prec) pattern is not generated, that is, the terminal value of the body horizontal velocity obtained in S414, and the time Ts Add the first order integral of (Z MPrec * FzZAMp) from to Required.
  • the end body horizontal position is the body inclination restoration moment ZMP Converted value (ZMP rec)
  • the end body horizontal position when the pattern is not generated that is, the end value of the body horizontal position obtained in S414, is added to (ZMP rec * FzZ ⁇ ⁇ ⁇ from time Ts to Te. ⁇ ) is obtained by adding the second-order integral of ⁇ ).
  • the process proceeds to S3.14, and the antiphase arm swing restoration angular acceleration (arec) pattern is determined so that the antiphase arm swing angular velocity coincides with the initial and end positions.
  • the antiphase arm swing restoration angular acceleration pattern is set to a trapezoidal shape as shown in Fig. 36, and the trapezoid height azcyc2 during the period from time Tm to Ts2 and the trapezoidal height during the period from time Tm2 to Te azcycl and the integral of i3 arec and the floor reaction force moment vertical component Mz from the time Ts to Te and the integral of the antiphase arm swing acceleration / 3a obtained so as not to exceed the allowable range.
  • the trapezoid heights azcycl and azcyc2 are determined so that the sum of is zero. The height of the trapezoid in both sections does not have to be the same.
  • the floor reaction force moment vertical component (Mazrec) generated by the antiphase arm swing restoration angular acceleration pattern determined in this way is as shown in Fig. 37. Therefore, the vertical component Mz of the floor reaction force moment generated by the movement of the mouth pot including the antiphase arm swing finally becomes Mztmp in Fig. 32 and Maz in Fig. 34, as shown in Fig. 38.
  • the sum of 37 and Mazrec that is, the sum of Mz in Figure 33 and Mazrec in Figure 37.
  • a trapezoidal restoring moment is added.However, these periods are set to periods in which the allowable range is sufficiently wide. Luck luck including antiphase arm swing
  • the vertical component of the floor reaction force moment generated by the motion does not exceed the allowable range.
  • the initial antiphase arm swing angular velocity is determined by the following equation.
  • the anti-phase arm swing angle when iS arec is 0 is the anti-phase arm swing angle obtained in S 4 16 (the anti-phase arm swing angle at time Te) That is.
  • the second-order integral of ⁇ arec is the second-order integral of the antiphase arm swing restoration angular acceleration from time Ts to Te set as shown in Fig. 36.
  • the reference initial antiphase arm swing angular velocity is a value at the time Ts of the reference antiphase arm swing angular velocity (first-order differential value of the reference antiphase arm swing angle 0 aref).
  • the initial anti-phase arm swing angle may be made to match the reference initial anti-phase arm swing angle, or the anti-phase arm swing angular acceleration finally determined (that is, the floor reaction force moment vertical component Mz is within the allowable range).
  • the initial antiphase arm swing angle is calculated as follows. The average value of the difference between the arm swing angle calculated when the reference initial antiphase arm swing angle is matched with the reference antiphase arm swing angle or the average value of the maximum value and the minimum value of the difference is calculated. 1/2 of the average value was subtracted from the reference initial antiphase arm swing angle It may be determined as an initial antiphase arm swing angle. By doing so, it is possible to prevent the absolute value of the difference between the calculated arm swing angle and the reference antiphase arm swing angle from becoming too large.
  • the body posture angular velocity is used as the initial value of the reference body posture trajectory. This is to prevent the floor reaction force horizontal component Fx from exceeding the allowable range [Fxmin, Fxmax] even if the body posture angular acceleration is generated so as to return to the angular velocity.
  • the floor reaction force horizontal component allowable range is sufficiently large, so that the target ZMP is satisfied. Even when the body posture angular acceleration 3 is generated as described above, the floor reaction horizontal component F x does not exceed the allowable range.
  • Another reason for setting the times Ts, Tm, Ts2, and Tm2 as described above is that, in the period from the time Tm to Ts2 and the period from the time Tm2 to Te, the antiphase arm swing angular velocity is set to the reference antiphase arm. Even if antiphase arm swing angular acceleration (3a) is generated so as to return to the initial angular velocity of the swing angle trajectory, the vertical component Mf of the floor reaction force does not exceed the allowable range [Mzmin, Mzmax]. . In other words, during the period from time Tm to Ts2 and the period from time Tm2 to Te, the allowable range of the floor anti-chamoment vertical component is sufficiently large, so that the antiphase arm swing angle velocity is returned. Even when the swing angular acceleration j3 a is generated, the floor reaction force moment vertical component Mz does not exceed the allowable range.
  • the process proceeds to S2114, and it is determined whether or not the calculated body horizontal position / velocity boundary condition error (errx, errvx) is within an allowable range set in advance as appropriate.
  • the difference between the initial divergence component (X s + V xs / ⁇ ) and the terminal divergence component (X e + V xe / ⁇ ) , And whether the difference between the initial convergence component (X s — VX s / ⁇ ') and the terminal convergence component (X e -V xe / ⁇ ') is within a certain allowable range. Is also good.
  • ⁇ 0 and ⁇ ′ are predetermined values as described above.
  • the initial state of the variables other than the body horizontal position velocity is, for example, the initial value candidate for the body horizontal position velocity.
  • each initial value candidate and the corresponding terminal body position / velocity corresponding thereto are further processed by the same processing as in S 2 10. , I.e., for each initial value candidate (Xs + ⁇ Xs, Vs), (Xs, VXs + ⁇ VXs) Horizontal body position and velocity boundary condition error that corresponds is determined for Re respectively.
  • the body horizontal position / velocity boundary condition for (X s, V s) and the nearby initial value candidates (X s + AX s, VX s) and (X s, V xs + ⁇ V xs) respectively.
  • the sensitivity matrix that indicates the degree of change in the body horizontal position / velocity boundary condition error when the body horizontal position and body horizontal speed are slightly changed from the initial value candidates (Xs, VXs), respectively, due to the error. Then, based on the sensitivity matrix, a new initial value candidate (Xs, Vxs) that further reduces the body horizontal position / velocity boundary condition error is determined. And, like this, a new first After the term value candidates (Xs, VXs) are determined, the process returns to S206.
  • (X0, V0) and (Z0, Vz0) are the body inclination restoring moment ZMP conversion value pattern determined in S310, the initial value of the normal gait at time Ts.
  • a gait is generated to satisfy gait conditions based on the body posture angle and angular velocity and the body horizontal position velocity (Xs, Vxs) at time Ts after exiting the loop of S204 The time when the second gait was switched from the second gait to the first gait, that is, the upper body horizontal position velocity and the upper body determined at time k2 Tcyc (time Te—Ts).
  • the body vertical position and the velocity are respectively defined as the support leg coordinate system corresponding to the support leg of one step starting from time Tcyc (that is, the first turning gait for the second time) ( ⁇ "', ⁇ "', ⁇ '"Coordinatesystem” is converted to a value converted from the value.
  • is a certain value as described in the explanation about divergence.
  • Q "[03” also corresponds to the divergent component at the end of the second turning gait viewed from the supporting leg coordinate system ( ⁇ “, ⁇ ", ⁇ "coordinate system in Fig. 17) of the second turning gait. . Therefore, ( ⁇ 0 ", V ⁇ 0") and Q "[0] may be calculated using these properties.
  • the initial antiphase arm swing angle and the angular velocity (0 azO, coazO) at the original initial time 0 are obtained. Find the value (0 az0 ", coazO") as seen from the leg coordinate system.
  • (0 az0, ⁇ azO) is the anti-phase arm swing restoration angular acceleration pattern determined in S 3 14 and S 3 16, the initial (time Ts) anti-phase of the normal gait Satisfies gait conditions based on arm swing angle and angular velocity (More specifically, in the period other than the body posture angle and the antiphase arm swing angle restoration period, the inverse of the floor anti-camoment vertical component should not exceed the allowable range.
  • the phase arm swing angle trajectory is determined, and during the body posture angle and antiphase arm swing angle restoration period, the sum of the reference antiphase arm swing angular acceleration) 3 aref and the antiphase arm swing restoration angular acceleration 3 arec is generated.
  • the antiphase arm swing angle and angular velocity determined in step (1) are calculated using the support leg coordinate system ( ⁇ '”, ⁇ in Fig. 17) corresponding to the support leg of one step starting from time Tcyc (ie, the first turning gait for the second time). '", Z"' coordinate system).
  • the foot trajectory parameters of the current time gait are set so that the foot position / posture trajectory of the current time gait is connected to the foot position / posture trajectory of the normal gait.
  • the initial swing leg foot position / posture of the current time gait (the initial value of the current time gait swing leg foot position / posture) is the current free leg position / posture (previous time gait viewed from the gait support leg coordinate system). (End position of free swing leg).
  • the current gait support leg foot position / posture (the initial value of the current time gait support leg foot position / posture) is the current support leg foot position / posture viewed from the gait support leg coordinate system (previous gait end support leg) (Foot position / posture).
  • the current gait end free leg foot position / posture is based on the next time's gait support leg coordinate system viewed from the current time's gait support leg coordinate system.
  • the support leg foot 22 is off the floor and in the air.
  • Support leg foot 22 In order to determine the trajectory after the foot 2 has left the floor, the support leg foot landing scheduled position and posture are set.
  • the planned landing position / posture of the supporting leg foot corresponds to the coordinates of the next time's gait supporting leg (the required value of the free leg foot position / posture of the second step related to the current time's gait) as viewed from the coordinates of the gait supporting leg this time. Is set. More specifically, the support leg foot landing expected position / posture is determined based on the position / posture, and the foot 22 is placed almost entirely on the floor so that the foot 22 does not slip while keeping the foot 22 in contact with the floor. The representative point of the foot 22 when rotated until it touches the ground is set to match the origin of the next-time gait support leg coordinates viewed from the current time gait support leg coordinates.
  • the current gait end support leg foot position / posture is calculated from the current support leg position / posture (current gait initial support leg foot position / posture) to the foot landing scheduled position / posture corresponding to the next time gait support leg coordinate system (as described above).
  • the foot position / posture trajectory leading to the second leg's free leg side foot landing position / posture in the evening of the parameter is calculated using the finite time settling filter described above until the end of the gait.
  • the process proceeds to S602, where the parameters of the reference body posture trajectory of the current time's gait are determined in the same manner as the first turning gait / the second turning gait of the normal gait.
  • the reference body posture trajectory of the current time's gait is continuously connected to the reference body posture trajectory of the normal gait.
  • the reference body posture angle and angular velocity at the end of the current time's gait are respectively The above parameters are set to match the body posture angle and angular velocity.
  • the body posture is a steady vertical posture in both the current time's gait and the normal gait. Turning gait ⁇ ⁇ ⁇ Determined in the same way as the second turning gait.
  • the initial reference arm posture and the rate of change of the gait this time match the current instantaneous values of the reference arm posture and the change rate, and the arm posture trajectory of the current time gait is continuous with the arm posture trajectory of the normal gait.
  • the arm posture trajectory parameters determined here are the same as in the determination of the normal gait parameters (S104 in Fig. 15).
  • the center of gravity of both arms 5,5 The parameters (position relative to the upper body 3), the distance between the left and right hands (the ends of both arms 5, 5) in the left and right direction, and the parameters related to the antiphase arm swing angle are determined.
  • the position of the center of gravity of the both arms 5, 5 is set so as to be kept constant with respect to the upper body 3.
  • the floor reaction force vertical component trajectory parameter of the current time's gait is defined by the parameters, similarly to the first turning gait / the second turning gait of the normal gait.
  • the floor reaction force vertical component trajectory is set so as to be a substantially continuous trajectory (values do not fly in steps) as shown in Fig. 6.
  • the floor reaction force vertical component trajectory parameters are determined so that both the vertical position velocity of the overall center of gravity of the gait and the floor reaction force vertical component trajectory are continuously connected to the normal gait.
  • the initial body vertical position velocity of the normal gait finally obtained in the processing of S 0 24 in FIG. Based on the values (Z0 ", Vz0") converted into the values viewed from the coordinate system, that is, (Z0 ", Vz0") obtained in S224 of Fig. 23, etc.
  • the initial overall center-of-gravity vertical position velocity of the normal gait viewed from the gait support leg coordinate system is obtained by using, for example, Equation 04 (or the kinematic model of the mouth port 1).
  • the initial time of the normal gait from the gait support leg coordinate system The vertical position of the total body weight center is the vertical position of the upper body mass point of the model in Fig.
  • the gait support is obtained by substituting the leg body mass vertical positions on the support leg side and the free leg side corresponding to the values converted into the values viewed from the gait support leg coordinate system into Equation 04.
  • the vertical velocity of the initial overall center of gravity of the normal gait viewed from the leg coordinate system is the vertical velocity of the body mass point of the model in Fig. 12 corresponding to the vertical velocity VzO "of the normal gait obtained in S224.
  • the vertical velocity of each foot in the initial stage of normal gait is converted to the value viewed from the gait support leg coordinate system this time. It can be obtained by substituting into the equation that differentiates both sides.
  • the calculation of the initial overall center-of-gravity vertical position velocity may be performed using a stricter model.
  • Equations 41a and 41b the initial overall center-of-gravity vertical position velocity of the normal gait obtained in this way is substituted into the final overall center-of-gravity vertical position velocity of the following equations 41a and 41b, and the previous desired gait instantaneous value ( Strictly speaking, the final center gait vertical position and velocity of the last time the desired gait was converted to the current support leg coordinate system) are substituted into the initial overall center of gravity vertical position and velocity in Equations 41a and 41b.
  • the floor reaction force vertical component pattern (more specifically, the parameter value) of the gait is determined so as to satisfy the relationship of Equations 41a and 41b.
  • the integral values in Equations 41a and 4.1b are the integral values during the period from the beginning to the end of the current time's gait.
  • Equation 4 1 b the gravitational acceleration is a negative value.
  • the value of the unknown variable is determined by solving a system of equations consisting of equations 41a and 41b.
  • the height (peak value of the floor reaction force vertical component) and width (single leg support period) of the trapezoid in Fig. 6 may be selected as the parameters of the floor reaction force vertical component as unknown variables.
  • the inclination of both sides of the trapezoid in Fig. 6 should be a value determined in advance according to the gait cycle this time, or the floor reaction force vertical component pattern excluding the time of transition from the one-leg support period to the air period.
  • the time of the point is a value determined in advance according to the current time's gait cycle and the like. Supplementally, assuming one unknown variable, there is generally no solution that satisfies the simultaneous equations of Equations 41a and 41b.
  • the floor reaction force horizontal component allowable range [Fxniin, Fxmax] (specifically, a parameter that defines the pattern of the floor reaction force horizontal component allowable range) is the first time in the normal gait. 1 turning gait / 2nd turning gait.
  • the floor reaction force horizontal component allowable range is set in a pattern as shown in FIG.
  • the floor reaction force horizontal component allowable range is set based on the above equation 12 according to the floor reaction force vertical component pattern previously determined in S606.
  • the process proceeds to S610, where the floor reaction force moment vertical component allowable range [Mzmin, Mzmax] (specifically, the floor reaction force moment vertical component allowable range) Is set in the same way as the first turning gait of the normal gait divided by the second turning gait.
  • the floor reaction force moment vertical component allowable range is set in a pattern as shown in FIG.
  • the floor reaction force moment vertical component allowable range is set based on the above-described expression 1102 according to the floor reaction force vertical component pattern determined in S606 previously.
  • the ZMP trajectory of the current time's gait (specifically, the parameters defining the ZMP trajectory, the time and position of the break point of the trajectory) is changed to the first turning gait of the normal gait ⁇ As in the case of the two-turn gait, the stability is set as shown in FIG. 7 so as to have a high stability margin and prevent a sudden change.
  • the above parameters are set so that the ZMP trajectory of the gait this time is continuously connected to the ZMP trajectory of the normal gait.
  • the ZMP trajectory parameters are determined so that the ZMP position at the end of the gait this time matches the ZMP position at the beginning of the normal gait.
  • the method of setting the time and position of the break point of the ZMP trajectory during the one leg support period may be the same as the method of setting the ZMP trajectory parameters of the normal gait described above. Then, the ZMP trajectory parameters should be set so that the target ZMP trajectory in the aerial period changes linearly and continuously from the start of the aerial period to the ZMP position at the beginning of the normal gait.
  • the parameters of the ZMP trajectory of the current time's gait determined in S612 are only provisionally determined and will be corrected as described later. Therefore, the ZMP trajectory of the current time's gait set above will be referred to as the temporary target ZMP trajectory of the current time's gait.
  • the body posture angle and the antiphase arm swing angle restoration period [Ta, Tb] are set.
  • the body posture angle and the antiphase arm swing angle restoration start time Ta correspond to Tm in the second turning gait of the normal gait
  • the body posture angle and the antiphase arm swing angle restoration completion time Tb are the normal gait Of Ts2 in the second turning gait of That is true.
  • the method of setting these times Ta and Tb is the same as the method of setting Tm and Ts2, respectively.
  • the gait of the current time's gait The parameters (ZMP trajectory parameters) are corrected, and the parameters related to the antiphase arm swing angle are determined.
  • the ZMP trajectory parameters are corrected to make the upper body posture trajectory continuous or close to the normal gait, and the antiphase arm swing angle converges to the antiphase arm swing angle trajectory of the normal gait In this way, the parameters related to the antiphase arm swing angle of the gait this time are determined.
  • FIG. 42 is a subroutine flow chart showing the processing. First, the process proceeds to S702 through S700, and a temporary current time gait up to the current time gait end time is temporarily generated based on the temporary target ZMP pattern and other current time gait parameters.
  • the terminal state of the previous target gait (more specifically, the gait state such as the body horizontal position speed, the body vertical position speed, the body posture angle and its angular velocity, the target foot position / posture, the target arm posture, etc.) Is converted to the support leg coordinate system this time, and this is the initial state of the gait this time.
  • the target arm posture includes the target antiphase arm swing angle and angular velocity.
  • S804 it is determined whether or not the provisional gait generation time k is before the current gait end time Tcui'r (whether or not k ⁇ Tcurr) in S804. If the judgment result is YES, the current time gait of S806 Proceeding to the instantaneous value determination subroutine, the instantaneous value at time k of the current time's gait is determined. In the gait instantaneous value determination subroutine of S806, a provisional gait is generated as shown in FIG. However, this time, the gait parameters are used instead of the normal gait parameters.
  • the process proceeds to S706, where the terminal divergence component Q 0 [k] and the normal gait initial divergence component q "(determined in S224 of FIG. 23) are the terminal divergence components.
  • the error errq is obtained using the formula shown in the figure, and the process proceeds to S708 to determine whether or not the obtained terminal divergence component error errq is within an allowable range (a range near 0).
  • the provisional current time gait up to the end is calculated based on the target ZMP to which the correction is made in the same manner as in S702.
  • a is to make the current time's gait end divergence component match the normal gait initial divergence component as much as possible. This is the height of the trapezoidal pan to correct the tentative target ZMP in order to approach the position and attitude orbit).
  • the provisional target ZMP It is performed during the period when almost the entire bottom surface of the supporting leg foot 22 is in contact with the ground (the period when the sole is fully grounded), that is, during the period when the floor reaction force horizontal component allowable range is sufficiently wide.
  • the time of the break point is set in accordance with the time of the break point of the provisional target ZMP during the period of contact with the entire sole.
  • the terminal divergence component Ql [k] in the provisional current time gait is calculated based on the horizontal body position and velocity (X e1, V xel) at the terminal of the provisional current time gait, as shown in the above equation (formula 10). Required.
  • ⁇ a in S710 is a small constant that is appropriately set.
  • ⁇ a becomes larger.
  • the ⁇ a may be set so as to decrease.
  • the terminal divergence component error err q can be kept within an allowable range by several repetition operations. ⁇ Then, the process proceeds to S714, where the parameter sensitivity r (the terminal The rate of change of the divergent component error) is determined from the equation shown.
  • a — errqZr, that is, the value obtained by dividing the terminal divergence component error errq obtained in S 706 by the parameter sensitivity r obtained in S 714 is defined as height a.
  • the provisional target ZMP pattern is corrected by adding the correction amount of the trapezoidal pattern to the provisional target ZMP pattern according to the relationship shown in FIG. 44 (a new provisional target ZMP pattern is determined).
  • the difference between the terminal body posture angle of the provisional current time gait and the initial body posture angle of the normal gait, and the terminal body posture angular velocity of the provisional current time gait and the initial body of the normal gait Based on the difference from the posture angular velocity, etc., the body posture restoration moment of this gait ZMP converted value (ZMP) so that the body posture angle trajectory of the gait this time approaches the body posture angle trajectory of the normal gait MPrec) pattern is determined.
  • the ZMPrec determined here is used during the generation of the instantaneous gait instantaneous value, which will be described later, during the period in which the floor reaction water water allowable range is sufficiently large (the period during the one-leg support period).
  • This ZMPrec is a trapezoidal pattern similar to that described in the normal gait generation processing, and is specifically determined as follows.
  • the trapezoidal pattern of Z MPrec of the current time's gait is set, and the time of the apex (break point) of the trapezoid is known ( More specifically, set the time of the trapezoidal breakpoint to Z
  • the trapezoid height is set as an unknown value
  • the trapezoid height of ZMPrec is calculated as follows.
  • the time at which the MPrec trapezoidal pattern starts to rise is Ta, and the time at which the trapezoidal pattern returns to 0 is Tb.
  • both the body posture angle and the body posture angular velocity are continuously applied to the normal gait. Connecting is generally not possible. Therefore, in the first reference example, it is generated gradually over multiple steps.
  • the unknown parameters are determined so that the state of the gait approaches the state of the normal gait.
  • the ZM Prec pattern in one gait is complicated, the number of unknown parameters is set to two or more, and both the body posture angle and the body posture angular velocity at the end of the gait are in a regular gait. It may be connected continuously, but the ZMP rec pattern may fluctuate too much zigzag. ,
  • the difference between the terminal body posture angle of the provisional current time's gait obtained with the trapezoid height in the evening set to 0 and the initial body posture angle of the normal gait is calculated, and this is set to 0 err. Further, a difference between the terminal body posture angular velocity of the provisional current time gait and the initial body posture angular velocity of the normal gait is obtained, and the difference is defined as V 0 err .
  • the current time's gait is generated with the trapezoidal height of the ZM Prec pattern as a certain value bcurr, and that the first turning gait is subsequently generated by the same algorithm as the current time's gait.
  • the body posture restoration momentum of the first turning gait ZMP converted value ZM Prec Paddan is the ZMP rec pattern of the first turning gait obtained in S310 of FIG. It is assumed that the sum is the sum of the acycl (the trapezoid pattern in FIG. 30) and a certain value bl.
  • the gait generated in this way is called a ZM Prec corrected gait, and its end (end of the first turning gait) is the body posture angle and the angular velocity are ⁇ 1 and ⁇ 1, respectively.
  • the original normal gait obtained at the completion of the subroutine processing for obtaining the initial state of the normal gait in S024 (the normal gait initial body posture angle finally determined in S310)
  • the angular velocity as the initial value
  • the end of the first turning gait of the ZMP rec pattern (normal gait when the pattern obtained in S310 is the trapezoidal pattern in Fig. 30 where the height is acycl)
  • the body posture angle and the angular velocity are ⁇ lorg and ⁇ lorg, respectively.
  • ⁇ 0 1 and ⁇ 1 are defined as follows.
  • ⁇ ⁇ 1 ⁇ 1— ⁇ lorg... Equation 5 0
  • ⁇ 1 ⁇ 1 ⁇ lorg... Equation 51 mm 01 and ⁇ 01 are the body posture between the ZM Prec corrected gait and the original normal gait up to the end of the first turning gait. It means the difference in angle and the difference in angular velocity. If ⁇ 0 1 and ⁇ v0 1 become 0, following the ZM Prec corrected gait, the trapezoidal height of the ZM Prec pattern is referred to as acyc2 in the second rotation by the same algorithm as this time's gait. When a gait is generated, this gait matches the original normal gait.
  • the current gait trapezoid height bcurr and the first turning gait trapezoid height bl at which ⁇ 1 and ⁇ 1 become 0 are obtained, and the obtained bcurr is finally determined as the trapezoid height of the current gait. good.
  • ⁇ 01 and ⁇ 01 are Bcurr, first turning gait trapezoid height bl, difference between terminal body posture angle of provisional current time gait and initial body posture angle of normal gait err err, terminal body posture angular velocity of provisional current time gait and steady state It has the following relationship with the initial body posture angular velocity difference v0 err of the gait.
  • ⁇ l c21 * bcurr + c22 * bl + e2 * v0 err ... Equation 5 3
  • cll, cl2, c21, c22, el, and e2 are the gait cycle of the current gait, the first turning gait, and Body posture restoring moment ZMP converted value ZM Prec It is a coefficient that is uniquely determined by parameters (especially parameters related to time).
  • the difference err in the body posture angle and the difference V 0err in the angular velocity at the boundary between the provisional current time gait and the normal gait are obtained.
  • the coefficients of 011, cl2, c21, c22, el, and e2 are the gait cycle of this time, the gait of the first turning gait, the body restoring moment, the ZMP converted value, and the parameters of the MPrec pattern. In particular, it is determined based on parameters related to time).
  • Equations 52 and 53 are determined so that the right sides of Equations 52 and 53 become 0. That is, bcurr and bl are obtained by solving simultaneous equations with the left-hand sides of Equations 52 and 53 set to 0.
  • the trapezoidal height of the trapezoidal pattern of the body posture restoring moment ZMP converted value (ZMP rec) of the current time's gait is set to the current time's gait trapezoidal height bcurr obtained above.
  • the process proceeds to S720, where the current provisional target ZMP pattern (the provisional target ZMP pattern obtained when the processing exits the repetition loop of S700) is obtained as described above in S710.
  • the pattern obtained by adding the body posture restoring moment ZMP conversion value pattern is determined as the target ZMP pattern of the current time's gait. This process is the same as the process of adding a trapezoidal pattern of Aa height to the tentative target ZMP pattern in S710.
  • the provisional current time gait generated in the S700 loop was generated with the body posture restoration moment ZMP converted value ZMPrec set to 0 (the height parameter of the trapezoidal pattern of ZMP rec set to 0). Things.
  • the body position speed is continuous or close to the normal gait, but the body posture angle is calculated from the body posture angle of the normal gait Deviation and in some cases divergence.
  • the body posture restoring moment ZMP converted value pattern obtained in S 718 generates a body posture angular acceleration to make the deviation of the body posture angle from the normal gait close to zero.
  • the correction based on the ZMP-converted value pattern obtained from the body posture restoration moment obtained in S718 is generated, to satisfy the dynamic equilibrium condition (the combined force of the gravitational force of the mouth pot and the inertial force is such that the moment acting on the target ZMP becomes zero excluding the vertical component).
  • the body horizontal position trajectory must be shifted from the temporary body gait of the provisional current time gait. Therefore, in the present embodiment, the provisional target ZMP pattern is corrected by ZMP rec so that the body horizontal position trajectory does not need to be shifted from the one finally obtained by the loop of S700. .
  • a body posture angular acceleration corresponding to the body posture restoration moment ZMP conversion value pattern obtained in S 718 is generated, ZMP (gravity generated by the motion) (The point at which the moment excluding the vertical component of the resultant force of inertia force becomes 0) is shifted by the body posture restoration momentum ZMP converted value. Therefore, conversely, the pattern obtained by adding the body posture restoring moment ZMP converted value pattern to the tentative target ZMP pattern is used as the target ZMP pattern, and the body posture restoring moment ZMP converted value pattern obtained in S718. If the current time's gait that satisfies the target ZMP pattern is generated while generating the body posture angular acceleration corresponding to the evening, the body translation will be the same as the temporary current time's gait. '
  • the process proceeds to S722, where the difference between the terminal antiphase arm swing angle of the provisional current time gait and the initial antiphase arm swing angle of the normal gait is Based on the difference between the terminal antiphase arm swing angular velocity of the temporary gait and the initial antiphase arm swing angular velocity of the normal gait, the antiphase arm swing angle trajectory of the current gait is the antiphase arm of the normal gait.
  • the inverted phase arm swing restoration angular acceleration pattern is determined so as to approach the swing angle trajectory.
  • the method of determining this pattern is almost the same as the method of determining the body posture restoring moment ZMP conversion value pattern in S718, except that the variable names are different as follows.
  • the anti-phase arm swing restoration angular acceleration pattern determined here is the period during which the floor reaction force moment vertical component allowable range is sufficiently large in the generation process of the instantaneous gait instantaneous value described later (within the one-leg support period). During this period, the anti-phase arm swing angle trajectory is modified so that it can be connected (closer) to the normal gait.
  • This anti-phase arm swing restoration angular acceleration pattern is a trapezoidal pattern, similar to that described in the normal gait generation processing, and is specifically determined as follows. That is, like the trapezoidal pattern of the antiphase arm swing restoration angular acceleration during the second turning gait in Fig. 36, the trapezoidal pattern of the antiphase arm swing restoration angular acceleration of the current time's gait is set, and the top of the trapezoid is set. The time at the (breakpoint) is known (more specifically, the time at the breakpoint of the trapezoid is adjusted to the breakpoint time of the target ZMP), and the height of the trapezoid is unknown, and the antiphase arm is The trapezoid height (parameter) of the swing restoration angular acceleration is determined. However, the reverse The time at which the trapezoidal pattern of the phase arm swing restoration angular acceleration starts to rise is Ta, and the time at which the trapezoidal pattern returns to 0 is Tb.
  • both the anti-phase arm swing angle and the anti-phase arm swing angular velocity are continuously applied to the normal gait. Generally, they cannot be connected. Therefore, in the first reference example, the unknown parameters are determined so that the state of the generated gait gradually approaches the state of the normal gait over a plurality of steps.
  • the anti-phase arm swing restoration angular acceleration pattern in one gait is complicated, the number of unknown parameters is set to two or more, and the anti-phase arm swing angle and anti-phase arm swing at the end of the gait this time. Both the angular velocity and the gait may be connected continuously to the normal gait, but the antiphase arm swing restoration angular acceleration pattern may fluctuate too much zigzag.
  • the difference between the terminal antiphase arm swing angle of the provisional current time gait and the initial antiphase arm swing angle of the normal gait obtained by setting the trapezoid height of the antiphase arm swing restoration angular acceleration pattern to 0 in S702. And set this to 0 azerr. Further, a difference between the terminal antiphase arm swing angular velocity of the provisional current time gait and the initial antiphase arm swing angular velocity of the normal gait is obtained, and this is defined as v 0 zerr.
  • the current time's gait is generated with the trapezoidal height of the antiphase arm swing restoration angular acceleration pattern as a certain value bzcurr, and that the first turning gait is subsequently generated by the same algorithm as the current time's gait. I do.
  • the anti-phase arm swing restoring angular acceleration pattern of one turning gait is the anti-phase arm swing restoring angular acceleration pattern of the first turning gait obtained in S 3 14 in FIG. 24 (the figure in which the height is the azcycl. 36 trapezoidal pattern) and a certain value bzl.
  • the gait generated in this way is restored to the antiphase arm swing.
  • the end (the end of the first turning gait)
  • the antiphase arm swing angle and the angular velocity are ⁇ zl and ⁇ zl, respectively.
  • ⁇ 0 ⁇ 1 and ⁇ v0 zl are defined as follows.
  • a ⁇ ⁇ 1 ⁇ zl- ⁇ zlorg ... Equation 1 0 5 0
  • ⁇ ⁇ zl ⁇ ⁇ zl ⁇ v ⁇ zlorg ... Equation 1 0 5 1 ⁇ ⁇ ⁇ and ⁇ ⁇ represent the antiphase arm swing restoration angular acceleration corrected gait and the normal steady gait at the end of the first turning gait Means the difference in the antiphase arm swing angle and the difference in angular velocity between the two. If zl and ⁇ 0 become 0, following the anti-phase arm swing restoration angular acceleration correction gait, the trapezoidal height of the anti-phase arm swing restoration angular acceleration pattern is calculated by the azcyc2 When the second turning gait is generated, this gait matches the original normal gait.
  • the current gait trapezoid height bzcurr and the first turning gait trapezoid height bzl at which ⁇ 0 ⁇ 1 and ⁇ ⁇ ⁇ become 0 are obtained, and the obtained bzcurr is finally determined as the trapezoid height of the current gait. Good.
  • the dynamic model regarding the antiphase arm swing angle of the mouth pot 1 has a linear characteristic like the flywheel FHaz shown in FIG. zl and ⁇ 0 ⁇ 1 are the current gait trapezoid height bzcurr, the first turning gait trapezoid height bzl, the terminal antiphase arm swing angle of the provisional current time gait and the initial antiphase arm swing angle of the normal gait
  • the difference ⁇ zerr the difference between the terminal antiphase arm swing angular velocity of the temporary gait and the initial antiphase arm swing angular velocity of the normal gait, v 0 zerr, has the following relationship.
  • ⁇ ⁇ zl czll * bzcurr + czl2 * bzl + Gzerr + ezl * ⁇
  • ⁇ v0zl cz21 * bzcurr + cz22 * bzl + ez2 * vGzerr
  • czll, czl2, cz21, cz22, ezl, ez2 are the gait cycle of the current gait, the first turning gait, and the parameters of the anti-phase arm swing restoration angular acceleration paddane. This is a coefficient uniquely determined by parameters related to time.
  • the coefficients czll, czl2, cz21, cz22, ezl, and ez2 of the equations 1052 and 1053 are the gait of this time, the gait cycle of the first turning gait, and the antiphase arm swing recovery angle. It can be obtained based on acceleration pattern parameters (particularly parameters related to time).
  • Equations 105 and 103 the current time's gait trapezoid height bzcurr and the first turning gait trapezoid height bzl are determined so that the right sides of Equations 105 and 103 become zero. That is, bzcurr and bzl can be obtained by solving a simultaneous equation in which the left-hand sides of Equations 105 and 102 are set to 0.
  • the trapezoidal height of the trapezoidal pattern of the antiphase arm swing restoration angular acceleration of the current time's gait is set to the current time's gait trapezoidal height bzcurr obtained above.
  • the value of the reference body angle at the current time is substituted for the target body angle. Also, the value of the reference arm posture at the current time is substituted for the target arm posture except for the arm posture antiphase arm swing angle and angular velocity.
  • the process proceeds to S 1002, and it is determined whether or not the current time is during the body posture angle / opposite phase arm swing angle restoration period (the period from time Ta to time Tb). If the determination result of S1002 is NO, the process proceeds to S1004, and if the determination result is YESS, the process proceeds to S106.
  • the process proceeds to S 108, and the instantaneous value ZMPrec of the body tilt restoration moment ZMP converted value pattern at the current time is calculated from the parameter relating to the body tilt restoration moment ZMP converted value pattern determined in S 718. Calculate based on evening.
  • the routine proceeds to S 1102, where the body angular acceleration (body tilt angular acceleration) / 3 is determined by the formula shown in the figure.
  • the process proceeds to S144, and the body horizontal acceleration and the body posture angular acceleration are integrated to calculate a body horizontal velocity and a body posture angular velocity (body inclination angular velocity). This is further integrated to determine the body horizontal position and body posture (body tilt angle). Note that the upper body angle of the body posture is determined to be the reference upper body angle in the first reference example.
  • the above is the target gait generation processing in the gait generator 100.
  • the desired gait is generated as described above.
  • the desired body position and posture (trajectory) and the desired arm posture (Orbit) is sent to the mouth-pot geometry model (inverse kinematics operation unit) 102.
  • the desired foot position / posture (trajectory), the desired ZMP trajectory (target total floor reaction force center point trajectory), and the desired total floor reaction force (trajectory) (target floor reaction force horizontal component and target floor reaction force vertical component) Is sent to the composite compliance operation determination unit 104 and also sent to the target floor reaction force distributor 106. Then, the desired floor reaction force distributor 106 distributes the floor reaction force to each foot 22 R, 22 L, and determines the desired foot floor reaction force center point and the desired foot floor reaction force. Is done. The determined target floor floor reaction force center point and the target foot floor reaction force are sent to the composite compliance operation determination unit 104.
  • the modified target foot position / posture (trajectory) with mechanism deformation compensation is sent from the composite compliance operation determination unit 104 to the lopot geometric model 102.
  • the mouth-pot geometric model 102 receives the target body position / posture (trajectory) and the corrected target foot position / posture (trajectory) with mechanical deformation compensation. Calculate the joint displacement commands (values) of the two joints (10 R (L), etc.) and send them to the displacement controller 108.
  • the displacement controller 108 performs tracking control of the displacements of the 12 joints of the robot 1 using the joint displacement command (value) calculated by the geometric model 102 as the target value.
  • the robot geometric model 102 calculates a displacement specification (value) of the arm joint that satisfies the target arm posture and sends it to the displacement controller 108.
  • the displacement controller 108 uses the joint displacement command (value) calculated by the robot geometric model 102 as a target value to control the displacement of the 12 joints of the arm of the mouth port 1.
  • the floor reaction force generated at the mouth port 1 (specifically, the actual floor reaction force of each foot) is detected by the 6-axis force sensor 50. The detected value is sent to the composite compliance operation determination unit 104.
  • the posture inclination angle deviation S errx, ⁇ erry of the actual body posture angle deviation (deviation between the target body posture and the actual body posture (actual posture of the body 3)) generated at the mouth port 1 (Specifically, it is the deviation of the inclination angle of the actual body posture with respect to the vertical direction from the inclination angle of the target body posture with respect to the vertical direction, and the posture inclination angle deviation in the roll direction (around the X axis) is 0 errx.
  • attitude inclination angle deviation in the pitch direction (around the Y axis) is 0 erry) is detected via the attitude sensor 54, and the detected value is sent to the attitude inclination stabilization control calculation unit 112. .
  • the posture tilt stabilization control calculation unit 1 1 2 is used to restore the actual body posture angle of robot 1 to the target body posture angle.
  • the horizontal component of the floor anti-moment is calculated and sent to the composite compliance operation determining unit 104.
  • the compensation total floor reaction force moment water Mdmdxy is determined by the following equation using, for example, a PD control law. Compensation total floor reaction moment horizontal component Mdmdxy.
  • the body posture inclination angular velocity deviation is a time differential value of the body posture inclination angle deviation, and means a deviation of the actual body posture inclination angular velocity with respect to the target body posture inclination angular velocity. More specifically, the body posture inclination angle deviation is defined as the posture inclination angle deviation in the roll direction (around the X axis) of the body 3 of the mouth port 1, the posture inclination angle deviation in the pitch direction (around the Y axis), and the like. It is a vector consisting of
  • the angle deviation ⁇ ⁇ of the actual body posture angle deviation generated at the mouth port 1 (specifically, the figure of the direction of the yaw (about the ⁇ axis) of the actual body posture angle deviation).
  • the attitude sensor 54 Is detected via the attitude sensor 54, and the detected value is sent to the ⁇ stabilization control operation unit 113.
  • the vertical component of the circumference compensation total floor reaction force moment is calculated and sent to the composite compliance operation determination unit 104.
  • the composite compliance operation determination unit 104 calculates the target floor reaction force based on the input value. Specifically, the target floor reaction force is corrected so that the compensating total floor reaction chamoment acts around the target total floor reaction force center point (target ZMP).
  • the compensating total floor reaction force moment vertical component Mdmdz is determined by the following equation using, for example, a PD control law.
  • Compensated total floor reaction moment vertical component Mdmdz K0 bz *
  • the upper body angular velocity deviation is a time derivative of the upper body angular velocity, and means the deviation of the actual body angular velocity from the target upper body angular velocity.
  • K0bz is calculated as follows. Set it to 0. This is because the vertical component of the actual floor reaction force moment tends to increase if the body angle deviation approaches zero.
  • the composite compliance operation determining unit 104 corrects the desired floor reaction force based on the input value. More specifically, around the target total floor reaction force center point (target ZMP) The target floor reaction force moment horizontal component is corrected so that the compensation floor reaction force moment horizontal component acts on the target gait. The target floor reaction force moment vertical component is corrected by additionally adding the compensated total floor reaction moment vertical component to the target floor reaction force vertical component.
  • target ZMP target total floor reaction force center point
  • the composite compliance operation determination unit 104 sets the corrected target foot with the mechanical deformation compensation so that the corrected target floor reaction force matches the actual lopot 1 state and the floor reaction force calculated from the sensor detection value and the like. Determine the flat position and attitude (trajectory). However, it is practically impossible to match all the states to the target, so a trade-off relationship between them should be given to make them compromise. That is, the control deviation for each target is weighted, and control is performed so that the weighted average of the control deviation (or the square of the control deviation) is minimized. As a result, the actual foot position / posture and the total floor reaction force are controlled so as to substantially follow the target foot position / posture and the target total floor reaction force.
  • the gist of the present invention lies in the generation of the gait of the mouth port 1 in the gait generator 100.
  • the configuration and operation of the above-described composite compliance operation determining unit 104 and the like have been described by the present applicant first. The details are described in, for example, Japanese Patent Application Laid-Open No. Hei 11-306661 filed on Apr. 19, 2014, and the description is limited to the above.
  • this time's gait parameters were, as described above, the terminal divergence component of the current time's gait and the initial divergence component d [0] of the normal turning gait viewed from the support leg coordinate system of the current time's gait. It is modified to match the value Q ".
  • the divergent component is the gait generated when a gait is generated according to the gait parameters this time using a dynamic model It is an index for evaluating whether or not the horizontal position of the upper body converges on a steady turning gait.
  • the divergent component at the end of the current time's gait is the divergence component of the steady turning initial divergence Q [0].
  • the divergent component must be defined to match the value of Q ", which is the value seen from the supporting leg coordinate system.
  • the divergent component defined by Equation 10 is actually a divergent component that approximately satisfies the above properties.
  • the gait when the gait is generated according to the current gait parameters using the dynamic model, and the gait is repeatedly generated according to the normal turning gait parameters continuously as it is, It can be said that the gait parameters were corrected this time so that the generated horizontal body position of the gait converged (approached) to the horizontal body position of the normal turning gait. Strictly speaking, however, only the first turning gait immediately after this time's gait needs to be a gait corrected by the first turning gait trapezoidal height bl, bzl determined as described above.
  • the gait parameters are adjusted so that the upper body posture angle of the gait converged (approached) or coincided with the upper body posture angle of the normal gait consisting of the second turning gait and the first turning gait. It has been corrected.
  • the target ZMP pattern in the gait parameters of the current gait is corrected so as to satisfy the condition (the current gait approaches the normal gait). did.
  • the trajectory indicated by reference numeral B in FIG. 47 indicates the body horizontal position trajectory generated such that the divergent components coincide at the boundary of the gait as described above.
  • the trajectory indicated by the symbol A in the figure is the upper body when the current time's gait is generated so that the horizontal position and speed of the upper body at the boundary with the normal turning gait match, and then the normal gait is repeated.
  • the horizontal position trajectory is shown.
  • the trajectory indicated by the symbol B indicates the gait this time and the first steady turning gait.
  • the trajectory generally deviates from the trajectory indicated by the sign A, but then gradually converges (approaches) to the trajectory indicated by the sign A, and the trajectory indicated by the sign A in the next steady turning gait period Almost matches.
  • the gait can be prevented from diverging as in the gait generation method that matches both the position and speed at the gait boundary.
  • the example indicated by reference numeral C in the figure shows an example in which the trajectory is generated without considering them. In such cases, the generated trajectories will diverge over time.
  • the target ZMP pattern may be complicated, and multiple parameters may be adjusted to match both the position and speed.
  • the target ZMP pattern may be zigzag.
  • the divergence component also coincides if both the position and velocity are matched, so the method of matching both position and velocity can be said to be a special case of the method of matching the divergence component.
  • the gait when the gait is generated according to the current gait parameters using the dynamic model, and the gait is repeatedly generated according to the normal turning gait parameters continuously as it is. It can be said that the gait parameters were corrected this time so that the upper body posture angle of the generated gait converged (approached) or matched the upper body posture angle of the normal turning gait.
  • the first turning gait immediately after this time's gait needs to be a gait corrected by the first turning gait trapezoid heights bl and bzl obtained as described above.
  • the floor reaction force horizontal component allowable range can be set independently for the front-rear direction (X-axis direction) component and the left-right direction (Y-axis direction) component.
  • a gait that is more difficult to slip is generated by using the relational expression between the front-back direction and the left-right direction.
  • a so-called friction circle may be set as an allowable range as in the following equation. (X component of floor reaction force horizontal component) * (X component of floor reaction force horizontal component) + (Y component of floor reaction force horizontal component) * (Y component of floor reaction force horizontal component)
  • Equation 59 Fz is the vertical component of the desired floor reaction force, ⁇ is the friction coefficient, and ka is a positive constant of 1 or less.
  • the allowable range of the pair of the floor reaction force horizontal component and the floor reaction moment vertical component is set. You may make it set. As the floor reaction horizontal component increases, the friction limit of the floor reaction moment vertical component decreases. Also, as the vertical component of the floor reaction camouflage increases, the friction limit of the floor reaction force horizontal component decreases. Therefore, in consideration of this, it is better to set the allowable range of the combination of the horizontal component of the floor reaction force and the vertical component of the floor reaction camouflage to set an allowable range closer to the actual friction limit characteristics. Can be. Specifically, an allowable range may be set for the weighted average of the absolute value of the floor reaction force horizontal component and the absolute value of the floor reaction force moment vertical component.
  • a body tilt mode and a body translation mode
  • exercise modes other than these may be used.
  • Fig. 48 when the body posture is rotated around the hip joint, the angular momentum around the entire body weight center changes and the overall center of gravity also changes.
  • this motion is superimposed on the body translation mode at a predetermined ratio (combined), the motion becomes almost the same as the body tilt mode, and the floor reaction water does not occur. Therefore, if this is again regarded as the body tilt mode, a similar gait can be generated according to the algorithm of the first reference example.
  • one of the motion modes is a motion mode that does not generate a floor reaction force horizontal component.
  • any floor reaction This is because a force horizontal component and a floor reaction force moment around the target ZMP can be generated.
  • an exercise mode other than the exercise mode for changing the body posture may be used.
  • a motion mode in which the tip positions of the left and right arms are swung in the same direction, or a motion mode in which the position of a foot that is not touching (present in the air) is perturbed may be used.
  • the amount of perturbation should be returned to substantially zero immediately before landing so that the landing position does not change. It is needless to say that the exercise mode in which the tip positions of the right and left arms are swung in the same direction and the inverted arm swing mode may be used in combination.
  • three or more exercise modes may be used.
  • At least two of the selected motion modes generate the floor reaction force horizontal component of the motion mode and the floor reaction force moment around the target ZMP.
  • the raw ratios need to be different from each other. Otherwise, there is generally no solution to the system of equations (the behavior of each motion mode cannot be uniquely determined).
  • the operation mode in which the floor reaction force moment around the target ZMP can be changed sufficiently large without changing the floor reaction force horizontal component so much, and the floor reaction force moment around the target ZMP should not be changed much It is desirable to combine a motion mode that can change the floor reaction force horizontal component sufficiently large.
  • the upper body rotation mode In order to prevent the vertical component of the floor reaction force moment from exceeding the allowable range (to cancel the spin force), instead of the antiphase arm swing mode, use the upper body rotation mode. Is also good.
  • the upper body rotation mode When the upper body rotation mode is used, the upper body 3 of the robot 1 is moved to the waist (for example, the lower part of the member 54 in FIG. 1) and the upper part thereof (for example, FIG. 1).
  • the upper part of the member should be provided so that the upper part can rotate in the Y direction (for example, around the trunk axis of the upper body 3) with respect to the part near the waist. It is good. By doing so, the upper part of the upper body 3 can be rotated and the vertical component of the floor anti-camoment can be adjusted without affecting the posture of the legs 2.
  • both arms 5, 5 are, for example, upper body 3 What is necessary is just to make the relative position with respect to the upper part constant.
  • an anti-phase arm swing operation of the both arms 5, 5 may be added.
  • a motion mode for displacing parts other than the arm and the upper body may be used.
  • a mode in which the ends of both legs are moved back and forth may be used.
  • a floor anti-camoment vertical component may be used in combination.
  • the anti-phase arm swing mode and the upper body single rotation mode may be used together.
  • the upper body rotation mode and the anti-phase arm swing mode are modes in which the floor reaction force moment vertical component is generated so that the total body weight position does not change (in other words, the floor reaction force horizontal component is not generated). There is, however, a movement in which the position of the center of gravity changes (in other words, a floor reaction force horizontal component is generated). This is because the floor reaction water can be adjusted by combining with the upper body translation mode.
  • the following model may be used.
  • a nonlinear model in which mass points are set for multiple links.
  • Each link in this model may have an inertia (inertia moment).
  • a separable model that has a partial model that represents the relationship between movement and a partial model that represents the relationship between the resultant force and the body posture rotation (the body tilting movement and the body rotation).
  • the mass point shown in Fig. 12 is a partial model representing the relationship between the resultant force and the body translational motion
  • the flywheel shown in Fig. 12 represents the relationship between the resultant force and the body posture rotational motion. It is a partial model.
  • the model used in each process may be the same, or the model may be properly used according to the process.
  • the requirement for the dynamic accuracy of the normal time's gait is smaller than that of the current time's gait. Therefore, for example, in the gait generation process this time, the dynamic model (3 mass points + flywheel model) in Fig. 12 is used, while the normal gait generation process (especially in S408, Fig.
  • the block diagram, the flowchart, the algorithm, and the like may be subjected to equivalent deformation such as changing the operation processing order. Further, a low-pass filter may be appropriately inserted.
  • the present invention can also be applied to a three-legged or more multi-legged lopot.
  • the initial state of the normal gait (mainly the initial body horizontal position velocity, the initial body vertical position velocity, and the inverse phase) is obtained by using the search method or partially using the analysis method.
  • the above-mentioned method is used to calculate various normal gait parameters in advance, and the normal gait parameters and the normal gait are calculated in advance.
  • the relationship between and the initial state of may be mapped or approximated and stored, and at the time of actual movement, the initial value of the normal gait may be determined based on the mapped or approximated relationship.
  • a function obtained by combining the above-described relationship mapped or approximated and the function f may be mapped or approximated and stored. That is, a function for directly calculating the divergent component of the normal gait from the normal gait parameters consisting of the foot trajectory parameters and the floor reaction force vertical trajectory parameters described above is mapped or approximated. You may memorize. For example, a normal gait is generated in advance for each of a plurality of sets of typical normal gait parameters and the initial state of the normal gait for each set of normal gait parameters is set in advance. (Determined by S 0 2 4 in Fig. 13), and a map showing the relationship between the normal gait parameters of each group and the initial state of the normal gait is created in advance. Keep it.
  • the initial state of the normal gait may be determined from the set of the determined normal gait parameters by selection or interpolation based on the map.
  • the target ZMP parameter of the current time's gait is modified as a method of modifying the current time's gait to connect to (close to) a normal gait, but other parameters may be modified.
  • the trajectory of the free leg of the gait this time may be changed in the air.
  • the horizontal position of the torso is likely to shift backward in the normal gait as well, move the swing leg quickly after leaving the floor to shift the center of gravity of the swing leg forward. In this way, the horizontal position of the torso to meet the target ZMP must be accelerated further forward. As a result, the horizontal position of the torso moves further forward at the end of the current time's gait, and can be matched with the normal gait.
  • the gait cycle may be corrected this time. For example, if the horizontal position of the torso is likely to deviate behind the normal gait, the gait cycle may be increased this time. This is because by increasing the cycle of the gait this time, the time required for the horizontal position of the upper body to move increases, and the gait can move forward accordingly.
  • the gait end body level is almost proportional to the correction amount of the target ZMP. Since the position changes, the number of times of searching for the appropriate value can be reduced. On the other hand, when the center of gravity of the swing leg or the cycle of the gait is corrected, the horizontal position of the body at the end of the gait changes considerably non-linearly. Requires more search times.
  • the target ZMP parameter of the current time's gait was corrected.
  • the correction amount of the target ZMP parameter may be excessive in some cases. For example, if a request to move at a high speed (driving request) is given from a gait hopping on the spot, the gait is connected to (close to) a high-speed normal gait (normal gait of running). It is necessary to shift the target ZMP parameter extremely backward in the direction of travel. In this case, the target ZMP parameters It is also desirable to correct gait parameters other than overnight. However, in this case, in fact, it was impossible to request the rapid acceleration itself, so the requested value itself may be corrected.
  • a normal gait that satisfies the request (required parameter overnight) is obtained in accordance with the procedure shown in the first reference example for the time being.
  • the gait parameters are determined, it is determined whether or not the stability margin of the target ZMP trajectory of the gait has become too small this time. If the stability margin becomes too small (when the target ZMP deviates from the so-called support polygon or the target ZMP is located near the end of the support polygon), the request should be modified. You can do it.
  • the allowable range of acceleration / deceleration of the gait (the next gait initial speed-the current gait initial speed) Z the cycle of the current gait), and set the required (request parameters related to the gait period)
  • the acceleration / deceleration corresponding to the request is calculated, and if the calculated acceleration / deceleration exceeds the allowable range, the request may be modified to be within the allowable range.
  • Mbz may be obtained analytically by dynamics calculation when a simple dynamics model is used as described above.However, when a general more complicated dynamics model is used, Mbz The floor reaction force when the body is accelerated by a small amount in the body translation mode or when the body is accelerated by the minute amount in the body tilt mode is calculated, and the difference from the floor reaction force when the body is not accelerated is calculated. It can be obtained by dividing by.
  • the following method may be used to determine the trapezoid height b zcurr of the anti-phase arm swing restoration angular acceleration pattern of the gait this time.
  • the antiphase arm swing angle and angular velocity at the end of the current time gait of the antiphase arm swing restoration angular acceleration corrected gait are ⁇ zcurr and ⁇ ⁇ zcurr, respectively. Let ⁇ ⁇ zcerr and ⁇ ⁇ ⁇ zcerr of these and the antiphase arm swing angle and angular velocity of the normal gait.
  • the gait cycle is set as the interval, and the difference between the terminal antiphase arm swing angle and the angular velocity of the temporary gait and the initial antiphase arm swing angle and angular velocity of the normal gait 0 zerr, ⁇ ⁇ zerr is the previous state, b zcurr is The input, ⁇ ⁇ zcerr, ⁇ ⁇ zcerr are set to the current state.A state equation of a discrete system is set up, and the control is performed using modern control theory or the like so that ⁇ ⁇ zcerr, ⁇ ⁇ zcerr converges to 0. It is also possible to determine the Dobak rule and calculate bzcurr based on this.
  • the anti-phase arm swing restoration angular acceleration ⁇ arec of the current time's gait and / or normal gait is not trapezoidal, but at each moment, the target anti-phase arm swing angle and angular velocity and the reference anti-phase arm swing angle and angular velocity Based on the difference or the like, the value of the reversal phase arm swing restoration angular acceleration ⁇ arec at each instant may be determined using a state feedback rule or the like so that the difference converges to zero.
  • the anti-phase arm swing restoration angular acceleration 3 arec of the current time's gait is not a trapezoidal pattern, and at each moment, based on the target anti-phase arm swing angle and angular velocity of the current time's gait, these are the initial values of the first turning gait.
  • the antiphase arm swing restoration angle acceleration / 3 arec at each instant may be determined using the state feedback rule or the like so as to approach the antiphase arm swing angle / angular velocity.
  • the floor parallel component of the translational floor reaction force (component parallel to the floor), that is, the allowable range of frictional force
  • the allowable range of the floor parallel component of the overall center of gravity acceleration (which is proportional to the frictional force) may be set.
  • the allowable range of the floor parallel component (frictional force) of the translational floor reaction force is set.
  • the floor reaction force moment vertical component can be calculated by Eq. Can be converted into the force normal direction moment, instead of the floor reaction force moment vertical component allowable range, the floor reaction force moment component of the floor normal direction, that is, the floor friction force normal direction moment allowable range
  • the allowable range may be set.
  • Floor friction force normal moment floor reaction force moment vertical component * cos (0 f)
  • the gait modification (redetermining the current time's gait parameters) cannot be made in the current control cycle, the gait that is not to be corrected or the gait that has been temporarily corrected Gait that does not completely satisfy the search completion condition (the gait boundary condition deviation must be within the allowable value) and output it by the next control cycle or multiple control
  • An appropriate (not provisional) corrected gait may be provided by the end of your cycle.
  • the corrected target ZMP trajectory and the desired floor reaction force vertical component trajectory are continuous, and they do not change rapidly after a short time. There is almost no problem, just a slight jagged orbit.
  • the target floor reaction force vertical component may be set in a pattern as shown in FIG. 50, for example, instead of the one shown in FIG.
  • the floor reaction force vertical component trajectory is set to a trapezoidal shape that is convex on the increasing side of the floor reaction force vertical component during the two-leg support period, and is a convex shape that is convex on the decreasing side of the floor reaction force vertical component during the one-leg support period. Set to shape.
  • the actual body posture angle deviation (difference between the target body posture angle and the actual body posture angle ( In addition to manipulating the desired floor reaction force for compliance control, and the desired gait, the deviation of the inclination angle of the body 3 with respect to the vertical direction and the deviation of the angle of the upper body 3). Fix it. In particular, it dynamically balances with the target gait according to the angle component of the body posture deviation and / or its angular velocity (the resultant force of the inertia and the gravity of the motion of the target volume is around the target ZMP). The vertical component of the floor reaction force moment around the target ZMP was also corrected.
  • FIG. 53 is a block diagram showing a functional configuration of the control unit 60 in the second reference example.
  • the points of the functional configuration of the control unit 60 in the second embodiment different from those of the first embodiment (FIG. 4) will be described.
  • the compensating total floor reaction force moment horizontal component Mdmdxy calculated in the posture tilt stabilization control calculation unit 112 is input to the compensating total floor reaction moment horizontal component distributor 110.
  • the compensation total floor reaction force moment horizontal component distributor 110 is a compensating total floor reaction force moment horizontal component.
  • Mdmdxy is distributed between the target floor reaction force moment horizontal component for compliance control and the model operation floor reaction force moment horizontal component.
  • the posture inclination stabilization control calculation unit 1 1 2 and the compensation total floor reaction force moment horizontal component distributor 1 110 provide the target floor reaction force moment for compliance control.
  • the horizontal component and the model operation floor reaction force moment horizontal component are determined.
  • the model operation floor reaction force moment horizontal component is determined by the following equation.
  • the floor reaction force moment horizontal component allowable range is determined by the gait generator 100 as described later.
  • the target floor reaction force moment horizontal component for compliance control is determined by the following equation.
  • Equation d 27 b the target floor reaction force moment horizontal component for compliance control and the The floor reaction camouflage horizontal components are determined so that the difference from the Dell operated floor reaction moment horizontal component is equal to Mdmdxy.
  • FIG. 54 shows a block diagram of the compensating total floor reaction force moment horizontal component distributor 110 performing the above calculation.
  • the compensation total floor anti-camoment vertical component Mdmdz (see the above equation d 26) determined in the Yaw stabilization control calculation unit 113 in the same manner as in the first embodiment is the model operation floor reaction force moment. Input to the vertical component determiner.
  • the model operation floor reaction force moment vertical component determiner 1 1 1 determines the model operation floor reaction force moment vertical component based on the compensated total floor reaction force moment vertical component Mdmdz. In other words, based on the body angle deviation of the actual body posture angle deviation, the compensation is performed by the unit stabilization control calculation unit 113 and the model operation floor anti-camouflage vertical component determiner 111. ⁇
  • Floor reaction force moment vertical component Mdmdz and model operation floor reaction camoment vertical component are determined.
  • model operation floor reaction force moment vertical component determiner 1 1 1 the model operation floor reaction force moment vertical component is determined by the following equation.
  • the floor reaction force moment vertical component compensation amount allowable range is determined by the gait generator 100 as described later.
  • Equation d 2 6 b A block diagram of the model-operated floor anti-camoment vertical component determiner 1 11 1 that performs the above operation is shown in FIG. 55. Therefore, the model operation floor reaction cam vertical component is obtained by reversing the sign of the compensation total floor reaction force moment vertical component M dmdz that deviates from the floor reaction force moment vertical component compensation amount allowable range. Is set to
  • the target floor reaction force moment horizontal component for compliance control and the compensated total floor reaction force moment vertical component Mdmdz are sent to the composite compliance operation determination unit 104.
  • the model operation floor anti-camoment horizontal component and vertical component are sent to the gait generator 100.
  • the sum of the compensating total floor reaction camouflage vertical component Mdmdz and the model operation floor reaction force moment vertical component is used as the target value for compliance control. It may be sent to the antenna operation determining unit 104.
  • the composite compliance motion determining unit 104 makes the gait generator 100 generate a target gait generated by the gait generator 100 while following the motion of the lopot 1 with the motion of the target gait generated by the gait generator 100.
  • the target floor reaction force moment for compliance control is added to the floor reaction force so that the actual floor reaction force approaches the target total floor reaction force corrected by adding the horizontal component of compensation control moment and the compensation total floor reaction moment vertical component Mdmdz.
  • the corrected target foot position / posture (trajectory) with mechanical deformation compensation is determined by correcting the flat position / posture.
  • the gait generator 100 calculates the floor reaction chamfer horizontal component around the target ZMP determined by the gait generator 100 as the model operation floor reaction force moment horizontal.
  • the motion of the target gait (particularly the body position / posture trajectory) is generated using the dynamic model so that it becomes a component.
  • the gait generator 100 is configured to control the target total floor reaction force center point (the target gait) that dynamically balances with the target gait (temporary target gait) generated assuming that the model operation floor reaction chamois is zero.
  • ZMP Correct the gait of the desired gait (particularly the arm swing trajectory) so that the model operation floor reaction moment vertical component is added to the surrounding desired floor reaction moment moment vertical component.
  • control unit 60 is the same as that of the first reference example.
  • desired gait generated in the first reference example is such that the model operation floor reaction force moment horizontal component and the model operation floor reaction force moment vertical component are constantly set to 0. This is the same as the desired gait generated when set.
  • the value obtained by dividing the floor reaction force moment horizontal component by the floor reaction force vertical component represents the deviation of the ZMP (center point of the floor reaction force) from the target ZMP. Therefore, by dividing the floor reaction force moment horizontal component allowable range by the floor reaction force vertical component, the ZMP allowable range converted to the floor reaction force center point (the floor reaction force center point (Allowable range) may be set.
  • the floor reaction force moment vertical component compensation amount is, for example, the floor reaction camoment vertical component is assumed to be the floor reaction camoment vertical component allowable range for gait generation (this is S).
  • the floor reaction force moment vertical component of the floor reaction force moment that can be added to the floor reaction force moment where the motion of the desired gait occurs is set.
  • the allowable range of the floor reaction force moment vertical component compensation amount may be set to be similar to the allowable range of the floor reaction camouflage vertical component for gait generation (see FIG. 41 described above).
  • the floor reaction force moment vertical component compensation amount allowable range for compliance control is set in a region where the upper limit value is 0 and the lower limit value is 0.
  • the instantaneous gait value is determined according to the flowcharts of FIGS. 57 and 58. That is, in S3003, first, the processing from S340 to S3141 in FIG. 57 is executed. The processing from S340 to S3411 is exactly the same as the processing from S140 to S141 in FIG. 45 described above.
  • the obtained floor reaction force moment horizontal component allowable range is sent to the compensating total floor reaction force moment horizontal component distributor 110 (see FIG. 53). Then, the current value (the value at the current time t.) Of the model-operated floor reaction force moment calculated by the distributor d 110 according to the expression d 27 a is provided to the gait generator 100.
  • the obtained floor reaction force moment vertical component compensation volume range is sent to the model operation floor reaction force moment vertical component determiner 111 (see FIG. 53).
  • the current value (the value at the current time t) of the model operation floor reaction force moment vertical component calculated by the model operation floor reaction force moment vertical component determiner 1 11 1 according to the above equation d26b is used as the gait generator. Given to 100.
  • the processing of the gait generator 100 proceeds to S 3 4 14, where the model-operated floor reaction chamois horizontal component given from the compensating total floor reaction force moment distributor 110 is set to the target Z MP
  • the horizontal acceleration of the gait and the acceleration of the body posture tilt angle are determined this time so that they occur around the gait.
  • the floor reaction force horizontal component Fx does not exceed the floor reaction force horizontal component allowable range [Fxmin, Fxmax] determined in S3410
  • the body horizontal acceleration and body posture angular acceleration (body tilt) Angular acceleration) is determined.
  • the moment horizontal component acting around the target ZM P due to the combined force of the inertial force of the motion of the mouth port 1 and the gravity acts around the target ZM P becomes the moment that the sign of the model operation floor reaction force moment is inverted.
  • the body horizontal acceleration and the body posture angle acceleration (body inclination angle acceleration) of the gait are determined.
  • the body horizontal acceleration and the body posture inclination angular acceleration are determined so that the force obtained by inverting the sign of the inertial force horizontal component does not exceed the floor reaction force horizontal component allowable range [Fxmin, Fxmax].
  • the body horizontal acceleration and the body posture angular acceleration are determined according to the flowchart shown in FIG. In this flowchart, the same processes as those in FIG. 26 are performed except for S310 and S310. Unlike S504 and S530 in Fig.
  • the other processing is the same as the processing in FIG. 26.
  • correction amount of the antiphase arm swing angular acceleration corresponding to the model operation floor reaction force moment vertical component) 3 aadd is obtained by the following equation.
  • the desired gait generation processing in the gait generator 100 is performed, and the desired body position and posture, the desired foot position and posture, and the desired arm posture (including the antiphase arm swing angle are included). ), Target.
  • the instantaneous values of the ZMP and the target total floor reaction force are sequentially determined and output.
  • the target total floor reaction force may output only the components necessary for compliance control.
  • the target ZMP is included in the target total floor reaction force, but it is particularly important, so it was daringly listed as an output.
  • the model operation floor reaction force moment horizontal component is not output as the target floor reaction force.
  • the target floor reaction force that aims at the horizontal component of the floor reaction force moment around the target ZMP to become zero (the target floor reaction force that satisfies the target ZMP in the original sense) ) Is output from the gait generator 100.
  • the floor reaction force moment vertical component of the current time's gait corrected in S3034 is output from the gait generator 100 as a target value.
  • the motion of the desired gait is generated so that the model operation floor reaction force moment horizontal component is generated around the target ZMP.
  • Model operation Floor reaction force moment Controlled so that no horizontal component is added. Therefore, the motion of the desired gait and the floor reaction force causess imbalance. This means that the difference between the body posture inclination angle of the real robot 1 and the body posture inclination angle of the desired gait converges to zero.
  • the real mouth port 1 is It is possible to converge to the corrected target gait (a gait that makes the difference between the body posture inclination angle of the actual mouth port 1 and the body posture inclination angle of the target gait converge to 0). That is, the posture inclination of the actual mouth port 1 can be stabilized.
  • the sum of the model operation floor reaction force moment horizontal component with the inverted sign and the target floor reaction force moment horizontal component for compliance control is the total tilt restoring force (the actual body of the mouth pot i).
  • the force to restore the posture inclination angle to the desired body posture inclination angle is the difference between the horizontal floor component of the target floor reaction force moment for compliance control and the horizontal component of the model operation floor reaction force moment.
  • the body translational acceleration and the body posture inclination angular acceleration are determined so that the floor reaction force horizontal component does not exceed the floor reaction force horizontal component allowable range. Therefore, when the robot 1 does not generate a large horizontal component of the floor reaction force, such as immediately before leaving the support leg side leg 2 or immediately after landing in a running gait, or when the robot 1 moves on a floor with a low friction coefficient, Pot 1 slip can be prevented.
  • the allowable range of the floor reaction force horizontal component is
  • the posture and inclination restoration depending on the body tilt mode is automatically performed without depending on the body translation mode according to the algorithm of the second reference example described above, and between the floor and the sole. Posture recovery is performed without depending on the frictional force of the robot. Therefore, even in this period (mid-air period), unlike the method of simply correcting the upper body translation mode, the posture tilt restoration effect works effectively.
  • the floor reaction force horizontal component is generated to be 0, the overall center of gravity horizontal acceleration of the gait is 0.
  • the model-operated floor reaction force moment horizontal component is not output as the desired floor reaction force.
  • the floor reaction force control by the compliance control can be appropriately performed without hindering the floor reaction force control by the compliance control. More specifically, it is possible to prevent or suppress the occurrence of a problem that the original contact property of the foot 22 is deteriorated and the bottom surface of the foot 22 floats.
  • the target floor reaction force moment horizontal component for compliance control around the target ZMP is determined so as not to exceed the floor reaction force moment horizontal component allowable range.
  • the functions 1 to 6 are the same as those of the technique of PCTZJP03 / 004435 previously proposed by the present applicant.
  • the motion of the desired gait is generated such that a vertical component of the model operation floor reaction force moment is additionally generated around the target ZMP, while the actual floor reaction force of the robot 1 is calculated by the gait generator.
  • Model operation floor reaction force by 100
  • the target floor reaction force moment that is balanced with the desired gait to which the moment vertical component has been added, and the total floor reaction force moment vertical component Mdmdz added to the target component are used as the target value.
  • Mdmdz increases, a model operation floor reaction force moment vertical component in the opposite direction to Mdmdz is added to the desired gait, so the actual floor reaction force is controlled so as to approach the target value by compound compliance control.
  • the actual mouth port 1 can be adjusted so that the spin does not occur, and the corrected target gait (the upper body posture of the actual Alternatively, it is possible to converge to a gait in which the difference between the body posture angle angular velocity and the body posture angle of the target gait and / or the angular velocity of the body posture angle converges to zero. In other words, one rotation of the actual robot 1 can be stabilized.
  • the vertical moment component Mdmdz of the total floor reaction force moment becomes the total restoring force.
  • the vertical moment component Mdmdz of the total floor reaction force moment is determined based on the feedback control law so that the angular deviation and / or the angular velocity deviation approach zero, so that the control stability of the angular deviation is guaranteed.
  • One angle deviation and z or one angle velocity deviation can approach zero.
  • the model operation floor reaction force moment vertical component can take any value ignoring the allowable range (or friction limit) of the floor reaction force moment vertical component.
  • One rotation restoring force Can occur.
  • the target floor reaction force moment vertical component is ultimately the range of the sum of the floor reaction camoment vertical component allowable range and the floor reaction force moment vertical component compensation amount allowable range.
  • the vertical component of the large floor reaction force moment cannot be generated, such as immediately before leaving the support leg side leg 2 or immediately after landing in a running gait, or on a floor with a small friction coefficient.
  • the floor reaction force control by the compliance control can be appropriately performed, and the spin of the port 1 can be prevented. More specifically, it is possible to prevent or suppress a problem that the original contact property of the foot 22 is deteriorated and the bottom surface of the foot 22 is raised.
  • the algorithm of the second embodiment described above automatically depends on the antiphase arm swing mode without depending on the actual floor reaction force moment vertical component.
  • One rotation restoration is performed, and one rotation restoration is performed without depending on the frictional force between the floor and the sole. Therefore, even in this period (air period), unlike the method of simply correcting the vertical component of the desired floor reaction force moment of the compliance control, the one-rotation restoring effect works effectively.
  • the gait is generated so that the component becomes the model operation floor reaction moment horizontal component and the model operation floor reaction moment moment vertical component is generated in addition to the moment vertical component generated around the target ZMP.
  • the original gait and the corrected gait The gait is different from the gait. Since the original gait is set to approach the normal gait, the corrected gait is usually a gait that does not asymptotic to the normal gait.
  • the above-described operation 12 is almost the same as the technique of PCTZJP03 / 004435 previously proposed by the present applicant.
  • the following operation also occurs in the second reference example. That is, the normal phase gait in which the antiphase arm swing angle trajectory of the new current time gait is newly set with the end state of the antiphase arm swing angle and angular velocity corrected for the single-angle rotation restoration as the new initial state
  • the parameters related to the antiphase arm swing angle trajectory of the new gait are determined so as to asymptotically approach the antiphase arm swing angle trajectory.
  • the horizontal component of the model operation floor reaction chamoment becomes 0, but the horizontal component of the model operation floor reaction force moment at this time is the state quantity of the dynamic model shown in Fig. 12 (for example, the Position of center of gravity It may be set depending on).
  • the model operation floor reaction force moment vertical component compensation amount becomes zero.
  • the model operation floor anti-camoment vertical component compensation amount at this time is the state quantity of the dynamic model shown in Fig. 12 (for example, the antiphase arm swing angle and angle of robot 1 on the dynamic model). Speed, upper body angle, angular velocity, etc.)
  • FIG. 59 is a block diagram showing a functional configuration of the control unit 60 in the third reference example.
  • the compensated total floor reaction force moment horizontal component Mdmdxy obtained by the posture / inclination stabilization control calculation unit 112 is input to the gait generator 100.
  • the compensated total floor reaction force moment vertical component Mdmdz obtained by the stabilization control calculation unit 113 is also input to the gait generator 100.
  • the compensation total floor reaction force that determines the model operation floor reaction force moment (horizontal component and vertical component) and the target floor reaction force moment for compliance control (horizontal component and vertical component) is calculated.
  • the gait generator 100 is incorporated into the gait generator 100
  • the target floor reaction force moment for compliance control is output from the generator 100 to the composite compliance operation determination unit 104.
  • the compensating total floor reaction force moment distributor 120 in the gait generator 100 includes the compensating total floor reaction force moment horizontal component distributor 110 of the second reference example and the model. Operation floor reaction force moment vertical component determiner 1 1 1 Performs more complicated processing.
  • the functional configuration of the control unit 60 is the same as that of the second reference example.
  • FIG. 60 shows a flowchart of main routine processing of the gait generator 100 in the third reference example.
  • S 210 to S 208 are the same as the processing from S 110 to S 028 in the main flowchart (FIG. 13) of the first reference example. Processing is performed.
  • S800 of the flowchart of FIG. 43 which is a subroutine of S023 (S2028 in the present embodiment)
  • the initial state of the current time's gait is the previous corrected gait (step
  • the terminal state of the gait that is finally output by the gait generator 100 is converted into the supporting leg coordinate system this time.
  • the terminal state of the original gait determined by S203 It is not used in S800 of the subroutine of S208.
  • the process proceeds to S 2 0 32, and the instantaneous value of the original gait (the current value of time t) Is determined.
  • the original gait is a gait generated so that the horizontal component of the floor reaction force moment around the target ZMP becomes zero.
  • This original gait is generated by an algorithm in which a part of the subroutine process of S302 in FIG. 56 of the second reference example is modified. That is, S S3104 and S31 in FIG. 58, which is the subroutine processing in 30332 (specifically, the subroutine processing in S33414 in FIG. 57 which is the subroutine processing in S3302)
  • the body operation horizontal acceleration atmp is determined by assuming that the model operation floor reaction force moment water is 0 (the horizontal component of the desired floor reaction force moment around the target ZMP is 0).
  • Other processing may be the same as the processing of S3032 in FIG.
  • the flow proceeds to S2034, where the instantaneous value of the corrected gait is determined.
  • the corrected gait is a target gait finally output from the gait generator 100.
  • the processing of S203 is performed by a subroutine processing shown by a flowchart in FIG. The details will be described below.
  • the process proceeds to S2112, and the floor reaction force horizontal component allowable range [Mxymin, Mxymax] at the current time is obtained based on the gait parameters. This is performed in the same manner as in the determination of the floor camouflage horizontal component allowable range [Mxymin, Mxymax] in S3412 in FIG.
  • a model horizontal position difference between models which is the difference between the corrected horizontal gait horizontal position and the original gait horizontal position, is determined.
  • the current value of the corrected gait's upper body horizontal position (the value at time t) is still not obtained.
  • the previous value of the corrected gait's upper body horizontal position (the value finally obtained in the control cycle of time t-1 ⁇ t) and the previous value of the original gait's upper body horizontal position are calculated.
  • the model An interbody horizontal position difference is calculated.
  • a model body posture inclination angle difference which is a difference between the corrected gait body posture inclination angle and the original gait body posture inclination angle, is obtained.
  • the previous value of the corrected gait body posture inclination angle and the upper body of the original gait are the same as in the case of the calculation process of the body horizontal position difference between the models in S2200.
  • the difference between the body posture inclination angles between the models is obtained using the previous value or the current value of the posture inclination angle.
  • a model anti-phase arm swing angle difference which is a difference between the anti-phase arm swing angle of the corrected gait and the anti-phase arm swing angle of the original gait.
  • the previous value of the antiphase arm swing angle of the corrected gait and the antiphase of the original gait are the same as in the calculation of the body horizontal position difference between the models in S2200.
  • the anti-phase arm swing angle difference between the models is obtained using the previous value or the current value of the arm swing angle.
  • the process proceeds to S 2 206, and based on the difference in the horizontal body position between the models, the required value Mpfdmd of the model body horizontal position stabilized floor reaction force moment required to converge the difference to 0 is determined.
  • the required value Mpfdmd of the model body horizontal position stabilized floor reaction force moment required to converge the difference to 0 is determined.
  • the upper body horizontal position difference between Dell diverges.
  • the model body horizontal position stabilization floor anti-camouflage required value Mpfdmd is obtained when the body horizontal mode of the corrected gait is returned to the body horizontal position of the original gait in the body translation mode. From the floor reaction force moment that occurs with the upper gait upper body translation mode It has the meaning as a moment that reduced floor anti-chamoment that generates body horizontal acceleration.
  • the required value Mpfdmd of the model body horizontal position stabilization floor reaction force moment is determined, for example, by the following feedback control law.
  • the PD control law is used as the feedback control law
  • other feedback control rules such as PID may be used.
  • Equation d 28 Equation d 28 where Kmp and Kmpv are feedback gains (proportional gains and differential gains).
  • Kmp and Kmpv are feedback gains (proportional gains and differential gains).
  • the process proceeds to S 228, and based on the difference between the body posture inclination angles between the models, the required value of the model body posture inclination angle stabilized floor anti-chamoment required to converge the difference to 0 is Mrfdmd. It is determined.
  • the floor anti-challenge that generates the body posture tilt angle acceleration that simply generates the corrected gait body tilt mode matches the floor reaction force moment that generates the body posture tilt angle acceleration of the original gait mode Then, the body posture inclination angle difference between the models does not converge to zero.
  • the model body posture inclination angle stabilized floor reaction force moment demand value Mrfdmd performs an operation to return the corrected gait body posture inclination angle to the original gait body posture inclination angle in the body inclination mode.
  • the floor reaction force moment which is generated as a result of this, has the meaning as the moment obtained by subtracting the floor reaction camouflage that generates the body posture inclination angle acceleration of the original gait's body inclination mode.
  • the required value of the model body posture inclination angle stabilized floor reaction force moment Mrfdmd is determined by, for example, the following feedback control law.
  • the PD control law is used as the feedback control law.
  • another feedback control law such as PID may be used.
  • Mrfdmd Kmr * Difference in body posture inclination angle between models
  • Equation d2 9 Equation d2 9 where Kmr and Kmrv are feedback gains (proportional gains and differential gains).
  • Kmr and Kmrv are feedback gains (proportional gains and differential gains).
  • the model anti-phase arm swing angle stabilization floor anti-camo required for converging the difference to 0 is required.
  • Mafdmd Is determined.
  • the floor reaction force moment that generates the antiphase arm swing angular acceleration in the antiphase arm swing mode of the modified gait is simply converted to the floor reaction force moment that generates the antiphase arm swing angular acceleration in the antiphase arm swing mode of the original gait. If they match, the anti-phase arm swing angle between models will not converge to zero.
  • the model antiphase arm swing angle stabilized floor reaction force moment demand value Mafdmd operates to return the antiphase arm swing angle of the corrected gait to the antiphase arm swing angle of the original gait in the inverted phase arm swing mode.
  • the moment as the floor reaction force moment generated in this case, the floor reaction chamoment that generates the antiphase arm swing angular acceleration in the antiphase arm swing mode of the original gait is subtracted from the floor reaction force moment generated as a result Have.
  • the required value Mafdmd of the model antiphase arm swing angle stabilized floor reaction force moment is determined by, for example, the following feedback control law.
  • the PD control law is used as the feedback control law, but another feedback control law such as PID may be used.
  • Equation d 2 9 b Equation d 2 9 b
  • Kar and Kav are feedback gains (proportional gain, derivative gain).
  • the floor reaction force that generates the upper body horizontal acceleration of the upper body translation mode of the original gait from the horizontal component of the floor anti-camoment generated in the finally determined corrected gait upper body translation mode The moment with the moment horizontal component reduced is called the model body horizontal position stabilized floor reaction force moment.
  • the body posture inclination angular acceleration of the original gait body leaning motion mode is calculated from the floor reaction force moment horizontal component generated in accordance with the finally determined corrected gait body leaning motion mode.
  • the floor reaction force moment to be generated The moment reduced by the horizontal component is called the model body posture tilt angle stabilized floor reaction force moment.
  • the floor reaction force moment generated in accordance with the finally determined corrected gait anti-phase arm swing mode is used to calculate the anti-phase arm swing mode of the original gait from the vertical component.
  • the generated moment of the floor reaction force moment reduced by the vertical component is called the model inverted phase arm swing angle stabilized floor reaction force moment.
  • Equation d 30 Model body posture tilt angle stabilization floor anti camouflage Equation d 30
  • the body horizontal position stabilized floor reaction force moment is determined to match or as close as possible to the required model body horizontal position stabilized floor reaction force moment Mpfdmd, and the model body posture tilt angle stabilized floor reaction force moment is determined.
  • a body horizontal acceleration and body posture inclination angle acceleration of capacity can converge to the extent possible to the body horizontal acceleration and body posture inclination angular acceleration of the original gait, respectively.
  • the process proceeds to S 2 112, and the model body horizontal position stabilization floor reaction force moment (body body) is set so as to satisfy the following conditions (referred to as restoration conditions) as much as possible.
  • the model body horizontal position stabilization floor reaction force moment, model body posture tilt angle stabilization floor reaction camouflage, and model antiphase arm swing angle stabilization floor reaction force moment must be satisfied.
  • the body horizontal acceleration, the body posture inclination angular acceleration, and the antiphase arm swing angular acceleration of the corrected gait are determined. In the restoring conditions shown below, the lower the number, the higher the priority. Give priority (satisfaction). However, restoration conditions 1, 2, and 3 must be satisfied (established).
  • the model body posture inclination angle stabilized floor reaction force moment should match or be as close as possible to the model body posture inclination angle stabilized floor reaction force moment requirement value Mrfdmd.
  • This condition is a condition for correcting the body posture inclination angle of the corrected gait to the body posture inclination angle of the original gait (the originally planned gait), the restoration condition 5) Model body horizontal position stability
  • the floor reaction force moment should match or be as close as possible to the model floor horizontal position stabilization floor reaction force moment requirement Mpfdmd.
  • This condition is a condition for the corrected horizontal position of the gait to converge to the horizontal position of the original gait (the originally planned gait).
  • the model anti-phase arm swing angle stabilized floor reaction force moment should match or be as close as possible to the model anti-phase arm swing angle stabilized floor reaction force moment required value Mafdmd.
  • This condition is a condition for the anti-phase arm swing angle of the corrected gait to converge to the anti-phase arm swing angle of the original gait (the originally planned gait).
  • Floor reaction force moment, model body horizontal position stabilization floor reaction force moment and model antiphase arm swing angle stability The chemical reaction moments are continuous.
  • the processing of S 2 212 to determine the body horizontal acceleration, the body posture inclination angular acceleration, the anti-phase arm swing angular acceleration, etc. that satisfies the above restoration conditions 1 to 6 is specifically described as, for example, It is performed as follows.
  • model body horizontal position stabilization floor reaction force moment and model body posture inclination angle stabilization floor reaction chamoment are determined so as to satisfy the above restoration conditions 1, 2, 4, and 5.
  • Horizontal acceleration and body posture tilt angle acceleration are determined. The details of this processing are described in the technique of PCT / JP03 / 004435 previously proposed by the applicant of the present application, and therefore the description thereof is omitted here.
  • model anti-phase arm swing stabilized floor reaction force moment is determined so as to satisfy the above restoration conditions 3 and 6, and the anti-phase arm swing angular acceleration is further determined.
  • the process proceeds to S 2 214, and the model operation floor reaction force moment horizontal component is determined by the equation d 30. That is, the sum of the model body horizontal position stabilized floor anti-chamber and the model body posture tilt angle stabilized floor anti-camo obtained in S2208 is the model operation floor reaction force moment level. Determined as a component. It should be noted that the floor reaction chamois around the target ZMP is directly calculated based on the instantaneous value of the corrected gait motion finally determined, and this is also used as the model operation floor reaction force moment. good.
  • the process proceeds to S2216, and the target floor reaction force moment horizontal component for compliance control is determined by the equation d27b.
  • the sum of the compensated total floor reaction force moment horizontal component Mdmdxy and the model operation floor reaction force moment horizontal component obtained in S2214 is determined as the target floor reaction force moment horizontal component for compliance control. .
  • the process proceeds to S2218, and the desired floor reaction force moment vertical component for compliance control is determined by the equation shown in the figure.
  • the floor reaction force moment vertical component that is balanced with the corrected gait in the formula shown is the floor reaction force moment vertical with no correction and the model antiphase arm swing stabilization floor.
  • the floor reaction camom vertical component around the target ZMP may be directly calculated based on the instantaneous value of the motion of the corrected gait finally determined.
  • the processing of S2114 in FIG. 61 ends, and the process proceeds to S2116.
  • the processing of S2116 is the same as S3416 of FIG. 57 in the second reference example, and the current value of the body horizontal position is determined by the second-order integration of the body horizontal acceleration. With the second-order integration of the body posture tilt angle acceleration The current value of the body posture inclination angle is determined.
  • S2118 The processing of S2118 is the same as that of S3418 in FIG. 57 in the first embodiment, and the current value of the antiphase arm swing angle is obtained by the second-order integration of the antiphase arm swing angular acceleration. Is determined.
  • the state quantity of the dynamic model (or the instantaneous gait value of the previous or previous gait) is also required.
  • Two kinetic models are needed, one for generating the original gait.
  • those dynamic models are the dynamic models shown in FIG.
  • the original gait and the corrected gait are generated in parallel, and the corrected gait is corrected to stabilize the posture (tilt angle and angle) of the real robot 1.
  • the corrected gait is corrected to stabilize the posture (tilt angle and angle) of the real robot 1.
  • the floor reaction force moment horizontal component and vertical component
  • use this margin to reduce the original gait as much as possible.
  • the fact that the corrected body posture inclination angle converges to the body posture inclination angle of the original gait (the initially determined gait) is based on the assumption that the corrected body horizontal position is the original gait (the originally determined gait). Gait) has a higher priority than converging to the horizontal position of the upper body (adjustment of the body translation mode motion as much as possible within the range that satisfies the floor reaction force horizontal component allowable range). Large fluctuations can be suppressed.
  • a fourth reference example will be described with reference to FIGS. In the description of the fourth embodiment, the same components or functional parts as those in the first to third embodiments will be described in detail using the same reference numerals as those in the first to third embodiments. Omitted.
  • the functional configuration of the control unit 60 is the same as that of the third embodiment, that is, the one shown in FIG. 59.
  • the gait generation algorithm executed by the gait generator 100 is different from that of the third reference example.
  • the processing of each unit other than the gait generator 100 is the same as that of the third reference example.
  • FIG. 63 is a block diagram illustrating an outline of a process performed by the gait generator 100 in the present embodiment. With reference to FIG. 63, an outline of the processing of the gait generator 100 will be described below. The outline of the processing described below with reference to FIG. 63 is the same for fifth to seventh reference examples described later. Also,
  • the dynamic model shown in FIG. 12 is referred to as a simplified model.
  • the gait generator 100 includes a gait parameter determination unit 100a.
  • the gait parameter determination unit 100a determines the value of the parameter of the target gait (parameters for defining the target gait) or a time-series table. This corresponds to the processing from 3502 to S350.
  • the parameters determined by the gait parameter determination unit 100a include the desired foot position / posture trajectory, the desired arm posture trajectory, the reference body posture trajectory, the desired ZMP trajectory, and the desired floor reaction force.
  • the parameters that define the vertical component trajectory, etc. the parameters that define the floor reaction force horizontal component allowable range, and the ZMP
  • the parameters that define the allowable range (or the floor reaction force moment horizontal component allowable range) and the parameter that specifies the floor reaction force moment vertical component allowable range are included.
  • the allowable floor reaction force horizontal component and the allowable vertical floor reaction component set in the fourth reference example are those for the simplified model gait set in the processing of S 356 described later. And one for gait correction set in S355.
  • the ZMP allowable range (or floor reaction force moment horizontal component allowable range) is only for the full model correction (for gait correction) set in the processing of S350.
  • a parameter that defines the allowable range of the ZMP is set for S3503, but this is a parameter that defines the allowable range of the floor reaction force moment horizontal component.
  • the floor reaction force moment horizontal component divided by the target floor reaction force vertical component is expressed as ZMP (the floor reaction force center). This indicates the amount of deviation from the target ZMP of (point).
  • the gait parameters determined by the gait parameter overnight determining unit 100a are input to the target instantaneous value generating unit 100b.
  • the target instantaneous value generator 100b is based on the input gait parameters, based on the desired gait parameters, the desired foot position and posture, the desired ZMP, the desired floor reaction force vertical component, the desired arm posture, the desired overall center of gravity vertical position, and the desired body vertical Position.
  • the floor reaction force horizontal component allowable range, ZMP allowable range, reference body posture angle, and reference antiphase arm swing angle are sequentially calculated (generated) at the instant t at the current time t. Only the instantaneous value is shown).
  • the processing of the target instantaneous value generator 100 Ob is performed in the processing of S340 to S334 in FIG.
  • the target instantaneous values calculated by the target instantaneous value generator 100b some of the instantaneous values (specifically, the instantaneous value of the target body vertical position) are provisional values. Yes, and will be corrected later.
  • the instantaneous values of the floor reaction force horizontal component allowable range and the floor reaction force moment vertical component allowable range calculated by the target instantaneous value generation unit 100b are a simplified model, the instantaneous value for gait and the instantaneous value for gait correction.
  • the target instantaneous value calculated (generated) by the target instantaneous value generation unit 100b (partially a tentative instantaneous value) is input to the full model correction unit 10.0c.
  • the full model correction unit 100c includes a compensating total floor reaction force moment horizontal component Mdmdxy obtained by the attitude tilt stabilization control calculation unit 112 (see FIG. 59) and the Kyo stabilization control.
  • the compensated total floor reaction moment vertical component Mdmdz calculated by the operation unit 113 (see Fig. 59) is also input.
  • the full model correction unit 100c includes a simplified model 100c1 and a full model 100c2 as dynamic models.
  • the full model correction unit 100c determines the target body position / posture and the provisional instantaneous value of the antiphase arm swing angle from the input values based on the simplified model 100c1, and further determines The estimated instantaneous values of the body position and the antiphase arm swing angle are corrected using the full model 100c2.
  • the full model 100c2 includes either an inverse full model (inverse dynamics full model) or a forward full model (forward dynamics full model), as described later.
  • the full model correction unit 100c basically performs the processing of B so as to satisfy the following conditions A1 to A4. That is, the full model correction unit 100 c
  • A1 Fishing for the motion of the corrected gait generated by the full model correction unit 100c
  • the floor reaction force for compliance control which is obtained by adding the compensating total floor reaction force moment horizontal component Mdmdxy and the compensating total floor reaction camouflage vertical component Mdmdz to the matching floor reaction force moment, is output from the full model correction unit 100c. Matches the moment.
  • the true ZMP (the ZMP that satisfies the original definition modified by generating the target floor reaction force moment for compliance control around the target ZMP) is the ZMP allowable range (a sufficient stability margin can be maintained). It is within the allowable range. .
  • the above condition A2 is equivalent to keeping the floor reaction force moment generated around the target ZMP within the floor reaction camoment horizontal component allowable range corresponding to the ZMP allowable range.
  • the simplified model 100c1 is a dynamic model that emphasizes computational complexity and ease of behavior analysis rather than dynamic accuracy. However, changes in angular momentum around the center of gravity may be ignored), or inconsistencies (less rigorous) may be used.
  • the kinetic model of FIG. 12 (the kinetic model described by the equations 01 to 05) described in the first reference example is used as the simplified model '100c1.
  • the full model 100 c 2 means a robot dynamics model different from the simplified model 100 c 1. It is desirable that this is a Lopot dynamics model with higher approximation accuracy than the simplified model 100 c1.
  • the dynamic model shown in FIG. 12 is used as the simplified model 100 c 1, so that the power with higher approximation accuracy Robot model such as the multi-mass model shown in Fig. 49 (a model having a mass at each link of the mouth port 1) shown in Fig. 49, can be used as the full model 10 Qc2. Desirable ⁇ In this case, the full model 100 c 2 may set a moment of inertia around a mass point.
  • the simplified model 1 0 0 c 1 and the full model 1 0 0 c 2 have the same dynamic equation, but differ in the floor reaction force horizontal component allowable range and / or floor reaction force moment vertical component allowable range. It is sufficient that the allowable range for the simplified model gait and the allowable range for the gait correction (for the full model correction) are different. For example, the floor reaction force horizontal component allowable range and floor reaction camoment vertical component allowable range when generating a gait using the simplified model 100 c1 are increased (the friction limit may be exceeded). ), The floor reaction force horizontal component allowable range and floor reaction force moment vertical component allowable range when correcting the gait using the full model 100c2 so that the slip or spin of the port 1 does not easily occur. It may be just a narrow setting.
  • the body position / posture and antiphase arm swing angle are input (input).
  • the model used to calculate (output) is called the “forward dynamic model”, and the target foot position / posture, target body posture, target Floor reaction force (particularly the floor reaction force moment (horizontal component and vertical component) around the target ZMP or target ZMP) and the floor reaction force horizontal component based on (input) the body position and the antiphase arm swing angle
  • the model used to calculate (output) is called the “inverse dynamics model”.
  • the input of the forward dynamics model includes at least the desired floor reaction force
  • the input of the reverse dynamics model includes at least the target motion.
  • the full model 100 c included in the full model correction unit 100 c is an inverse dynamics full model (often abbreviated as “inverse full model”) or a forward dynamics full model (often abbreviated as “forward full model”) Is provided.
  • inverse full model inverse dynamics full model
  • forward full model forward dynamics full model
  • the computational complexity of the forward dynamics model tends to be larger than that of the inverse dynamics model.
  • the above is the outline of the processing in the gait generator 100 in the fourth reference example.
  • the gait generator 100 in the fourth reference example executes the processing shown in the flowchart of FIG. 65 to generate a gait.
  • the same processing as the processing from S310 to S308 in FIG. 56 described in the second reference example is executed from S350 to S358. Is done.
  • the range may be set so as to exceed the frictional force limit. This is because the floor reaction force horizontal component and floor reaction force moment vertical component are finally limited by the floor reaction force horizontal component allowable range and floor reaction force moment vertical component allowable range for full model correction by the full model correction described later. Because it will be. .
  • the floor model for full model correction (for gait correction) Determine the parameters that specify the allowable range of the horizontal force component and the floor reaction force moment, the allowable range of the vertical component, and the allowable range of the ZMP (floor reaction force center point allowable range).
  • the floor reaction force horizontal component allowable range for the full model correction is, for example, similar to the floor reaction force horizontal component allowable range for the simplified model gait, in the X-axis direction (front-rear direction) and the Y-axis direction (left and right).
  • Direction is set to a pattern as shown in FIG. 30 based on the floor reaction force vertical component trajectory and Equation 12 above.
  • the value of ka * t in Equation 12 is set as a parameter that defines the floor reaction force horizontal component allowable range for full model correction.
  • the allowable range of the floor reaction force horizontal component is surely determined by setting the value of the coefficient ka in Equation 12 smaller than the allowable range of the floor reaction force horizontal component for the simplified model gait. It is desirable to set the range within the limit.
  • the floor reaction force moment vertical component allowable range is set in the same way as the floor reaction force horizontal component allowable range. That is, the pattern is set as shown in FIG.
  • the ZMP allowable range is set in the same manner as in the case of the setting of the floor reaction force moment horizontal component allowable range in S300 of FIG. 56 in the second reference example. It should be noted that, by multiplying the ZMP allowable range by the desired floor reaction force vertical component, the ZMP allowable range may be converted into an equivalent floor reaction force moment horizontal component allowable range.
  • S3552 the instantaneous gait instantaneous value (the value at the current time t) is determined using the simplified model (the dynamic model in FIG. 12).
  • the processing of S3552 is the same as the processing of SO30 of FIG. 13 in the first reference example.
  • the instantaneous value of the gait at the current time t generated by the processing up to S3552 described above is hereinafter referred to as a simplified model gait instantaneous value.
  • the instantaneous value of the simplified model gait is expressed by the simplified model (the dynamic model in Fig. 12). (Dynamic model) so that the resultant force of the inertial force and gravity generated by the motion in the mouth pot 1 becomes zero in the floor reaction force moment water generated around the target ZMP. (To satisfy the equilibrium condition).
  • the instantaneous values of the body horizontal position and the body posture inclination angle, the instantaneous value of the body vertical position, and the instantaneous value of the antiphase arm swing angle are provisional instantaneous. This value is corrected by the full model correction described later.
  • the instantaneous value of the horizontal component of the desired floor anti-camoment around the target ZMP is constantly 0.
  • the target floor reaction force moment horizontal component for compliance control is generated as the target value of the floor reaction force moment horizontal component generated around.
  • the parameters (S) that define the allowable range of the floor reaction force for the gait correction (for the full model correction), the allowable range of the horizontal component, the anti-chamber vertical component, and the ZMP allowable range are set. (Set at 3 5 3 0)), the instantaneous value of the floor reaction force horizontal component allowable range, floor reaction force moment vertical component allowable range and ZMP allowable range for gait correction (current time t value) Is required.
  • the process proceeds to S35536, in which a corrected gait is generated (gait correction) using the full model, and the final instantaneous value of the final desired gait is determined. That is, as described with reference to FIG. 63, as the corrected target body position / posture, the capture target antiphase arm swing angle, and the target floor reaction force moment (horizontal component and vertical component) around the target ZMP. The calculation (determination) of the target floor anti-chamoment (horizontal component and vertical component) for compliance control is performed.
  • the process proceeds to S 358, increases the time t by ⁇ t, returns to S 354 again, and repeats the processing from S 355 to S 358.
  • the processing of S 355 6 described above is a characteristic part of the fourth reference example.
  • the process will be described in detail below.
  • the gait correction method of the device according to the fourth reference example is a full model feedforward correction type.
  • this method uses the inverse dynamics full model (inverse full model), does not correct the input of the simplified model gait, and uses the perturbation model.
  • FIG. 66 shows the operation of the gait generator 100 according to the fourth reference example, specifically.
  • FIG. 66 is a flow chart of FIG. It is a block diagram.
  • the simplified model 200 in FIG. 66 is not only a dynamic model, but also the processing from S 3 5.10 to S 3 52, that is, the instantaneous value of the simplified model gait. Represents the calculation (decision) process. Therefore, in FIG. 66, the part after the simplified model 200 corresponds to the processing of S355.
  • the processing for determining the instantaneous values of the floor reaction force horizontal component allowable range and the ZMP allowable range for gait correction (for full model correction) is performed by using the reference numeral S3553 in the flowchart of FIG. Is shown.
  • the block diagram Since the actual processing is executed by one computer, the block diagram is discretized and then executed sequentially from upstream to downstream (gait output side) in the block diagram.
  • the feedback amount returning to the upstream side uses the value (state quantity) calculated in the previous control cycle (time t- ⁇ t with respect to the current time t).
  • the value calculated in the previous control cycle (time t-At) will be abbreviated as the previous value.
  • the target body posture angle of the simplified model gait obtained as described above (hereinafter referred to as the simplified model body posture angle.
  • Target body horizontal position (hereinafter referred to as simplified model body horizontal position), target center of gravity position, target foot
  • motion variables representing motion such as flat position / posture, target arm posture (including target antiphase arm swing angle) and the instantaneous value of target ZMP are the inverse dynamics full model. (Reverse full model) Input to 201.
  • the floor reaction force horizontal component and the floor reaction force moment around the target ZMP (horizontal component and vertical component) are balanced by the motion represented by the input motion variables (that is, the motion generates a full model).
  • the floor reaction force moment horizontal component around the target ZMP in the simplified model gait is 0, the floor reaction force around the target ZMP calculated by the inverse full model 210 is obtained.
  • the moment horizontal component has a meaning as an error of the simplified model gait.
  • the floor reaction force horizontal component, floor reaction moment horizontal component, and floor reaction force moment vertical component obtained by the inverse full model 201 are referred to as the “full model floor reaction force horizontal component” and “full model floor reaction force,” respectively. It is called “Moment horizontal component” and “Full model floor reaction force moment vertical component”.
  • the full model floor reaction force horizontal component is often abbreviated as FfulL
  • the full model floor reaction force moment horizontal component is Mfullxy
  • the full model floor reaction force moment vertical component is Mfullz. 1 calculates the body vertical position that satisfies the target center of gravity position.
  • the inverse full model 201 also calculates the horizontal position of the center of gravity.
  • the target overall center of gravity vertical position is input, and the desired floor reaction force vertical component is obtained from the second derivative of the target overall center of gravity vertical position.
  • the target floor reaction force vertical component may be input to the full model for reasons such as reducing the number of calculations even if it is redundant.
  • the perturbation model is a perturbation model for body horizontal position correction 202, body posture inclination It is composed of a perturbation model for angle correction 203 and a perturbation model for anti-phase arm swing angle correction 231. Note that the perturbation model may be a single model as shown in Fig. 12 without being separated into three models in this way.
  • the body posture inclination angle correction perturbation model 203 is abbreviated to the body posture angle correction perturbation model 203 in the figure.
  • the body horizontal position correction perturbation model 202 represents the relationship between the perturbation of the floor reaction force and the perturbation of the body horizontal position in the body translation mode.
  • the perturbation model for body horizontal position correction 20.2 inputs the correction amount of the target floor reaction force moment and calculates the correction amount of the target body horizontal position that is dynamically balanced with this. This input (correction amount of the desired floor reaction force moment) is called the perturbation model moment Mp for body horizontal position correction. Also, the output of the perturbation model 202 for body horizontal position correction (correction amount of the target body horizontal position) is called the correction perturbation model body horizontal position Xc.
  • the floor reaction force horizontal component generated by the body horizontal position correction perturbation model 202 is referred to as a body horizontal position correction perturbation model floor reaction horizontal component Fp.
  • the perturbation model for body horizontal position correction 202 is represented by an inverted pendulum consisting of a fulcrum, an inverted pendulum mass (upper mass), and a telescopic support rod connecting these.
  • the horizontal position of the fulcrum coincides with the horizontal position of the origin of the support leg coordinate system of the current time's gait, and the fulcrum position is set so that the vertical position of the fulcrum coincides with the vertical position of the target ZMP.
  • the mass mb of the inverted pendulum mass is the same as the mass of the upper mass of the simplified model (3 mass points + flywheel model) shown in Fig. 12.
  • the vertical position Zc of the inverted pendulum mass point is the same as the vertical position Zb of the upper body mass position of the simplified model shown in Fig. 12 corresponding to the simplified gait. '
  • the perturbation model for body horizontal position correction 202 is a perturbation A My of the floor reaction force moment and a perturbation A Xb of the horizontal position of the body mass point in the simplified model. Represents the relationship with
  • ⁇ My — mb * ⁇ Xb * (g + d2Zb / dt2) + mb * (Zb-Zzmp) * d2 ⁇ Xb / dt2
  • Body translation mode floor reaction force ratio h which is the ratio of ⁇ generated by body horizontal acceleration to AFp, is the body horizontal of the right-hand side of equation al 2 Since it is the ratio of the term generated by acceleration (that is, the second term) and equation al3, the following equation is obtained.
  • h (Zb-Zzmp) Equation al 4 That is, the body translation mode floor reaction force ratio h is equivalent to the height from the fulcrum of the upper body mass point (inverted pendulum mass point) of the simplified model.
  • the body floor reaction force vertical component Fbz the floor reaction force vertical component that balances the translational force vertical component of the resultant force of gravity and inertial force acting on the upper body mass point (inverted pendulum mass point) is called the body body floor reaction force vertical component Fbz. That is, the body floor reaction force vertical component Fbz is defined by the following equation.
  • Fbz Fz-msup * (g + d2Zsup / dt2)-mswg * (g + d2Zswg / dt2)
  • the body floor reaction force vertical component is the floor reaction force vertical component Fz and the gravity acting on both legs mass points of the simplified model (3 mass points + flywheel model) shown in Fig. 12.
  • the translational force of the resultant force with the inertial force Equal to the sum of the vertical component.
  • the perturbation of the body mass position and the perturbation of the body position are regarded as coincident, but strictly speaking, they do not always coincide. Therefore, in order to find the relationship between Mp, Fp and Xc, a model representing the geometric relationship between the horizontal position of the body mass point and the body position is needed.
  • a perturbation model for body posture tilt angle correction 2.03 represents the relationship between the perturbation of the floor reaction force and the perturbation of the body posture inclination angle in the body inclination mode.
  • the body posture tilt angle correction perturbation model 203 receives the correction amount of the floor reaction force moment water, and calculates the correction amount of the target body posture tilt angle that is dynamically balanced with this.
  • This input (correction amount of the floor reaction force moment) is referred to as a body posture inclination angle correction perturbation model moment Mr (sometimes abbreviated as body posture angle correction perturbation model Mr).
  • the output of the perturbation model 203 for body posture tilt angle correction (correction amount of the target body posture tilt angle) is referred to as the perturbation model body posture tilt angle 0c for correction.
  • the floor reaction force horizontal component generated by the body posture tilt angle correction perturbation model 203 is referred to as a body horizontal position correction perturbation model floor reaction horizontal component Fr. Fr is 0 as described above.
  • the perturbation model for body posture tilt angle correction 203 is represented by a flywheel as shown in Fig. 68. Supplementally, in Fig. 68, only the flywheel rotating around the Y axis is shown, but the perturbation model 203 for correcting the body posture inclination angle is not limited to the flyhole rotating around the Y axis. It also requires a flywheel that rotates around the X axis. The inertia of these flywheels is the same as the flywheels FHx and FHy of the simplified model (3 mass model + flywheel) shown in Fig. 12.
  • the rotation angle of the flywheel of this body posture tilt angle correction perturbation model 203 is the correction perturbation model body posture tilt angle 0c, and the horizontal component of the floor anti-chamoment generated by the flywheel is the body posture tilt.
  • a flywheel rotating around the Y-axis will be mainly described, but the same applies to a flywheel rotating around the X-axis.
  • the perturbation model for body posture tilt angle correction 203 (more specifically, the model relating to the sagittal plane) is expressed by the above-mentioned equation 03 y of the dynamic equation of the simplified model (the model of 3 mass points + flywheel). It shows the relationship between the perturbation ⁇ My of the floor reaction force moment and the perturbation ⁇ ⁇ by of the body posture tilt angle. Therefore, the relation between the floor reaction force moment water perturbation ⁇ My and the perturbation ⁇ 0 by of the body posture inclination angle is calculated from Equation 0 3 y, assuming that the values other than My and 6 by are constants. Is obtained.
  • the anti-phase arm swing angle correction perturbation model 2 31 represents the relationship between the perturbation of the floor reaction force and the anti-phase arm swing angle perturbation in the anti-phase arm swing mode.
  • the antiphase arm swing angle correction perturbation model 2 3 1 receives the correction amount of the vertical component of the floor reaction force moment, and calculates the correction amount of the target antiphase arm swing angle that is dynamically balanced. This input (correction amount of the floor reaction force moment vertical component) is called the anti-phase arm swing angle correction perturbation model moment Ma.
  • the output of the antiphase arm swing angle correction perturbation model 203 (the target antiphase arm swing angle correction amount) is referred to as the correction perturbation model antiphase arm swing angle 0 ca.
  • the floor reaction force horizontal component generated by the antiphase arm swing angle correction perturbation model is called the antiphase arm swing angle correction perturbation model floor reaction force horizontal component Fa.
  • the anti-phase arm swing angle correction perturbation model 2 31 is represented by a flywheel as shown in Fig. 69.
  • the inertia of the flywheel is the same as the flywheel FHaz of the simplified model (3 mass model + flywheel) shown in Fig. 12.
  • the rotation angle of the flywheel of this anti-phase arm swing angle correction perturbation model 2 3 1 is the correction perturbation model anti-phase arm swing angle S ca
  • the anti-chamber vertical component generated by the flywheel is the anti-phase arm Corresponds to swing angle correction perturbation model moment Ma.
  • the antiphase arm swing angle correction perturbation model 2 3 1 is the inverse of the perturbation ⁇ of the floor reaction force moment in the equation 0.3 Z of the dynamic equation of the simplified model (3 mass points + flywheel model). It shows the relationship between the phase arm swing angle and the perturbation ⁇ 0 az.
  • Equation a2 2c ⁇ c in equation a2 2c corresponds to antiphase arm swing angle correction perturbation model moment Ma, and ⁇ az correction perturbation model antiphase arm swing angle 0 ca Then, the following equation is obtained.
  • the antiphase arm swing angle correction perturbation model 2 31 is expressed by the equation a2 3c.
  • a corrected gait (more specifically, a target instantaneous value obtained by correcting an instantaneous value of a part of the simplified model gait) is finally generated (output) in S35536.
  • the desired body posture inclination angle of the corrected gait (hereinafter, referred to as the corrected target body posture inclination angle) is the instantaneous value of the obtained simplified model body posture inclination angle (calculated by S35332).
  • the instantaneous value of the desired body posture inclination angle at the current time t of the current time's gait) and the correction perturbation model body posture inclination angle ⁇ c (a value obtained in the control cycle of the current time t) are calculated by the calculation unit 2 It is obtained by adding at 04.
  • the desired body horizontal position of the corrected gait (hereinafter referred to as the corrected desired body horizontal position) is the instantaneous value of the simplified model body horizontal position obtained above (this time's gait obtained in S3552).
  • the instantaneous value of the target body horizontal position at the current time t) is obtained by adding the correction perturbation model body horizontal position Xc (the value obtained in the control cycle at the current time t) to the arithmetic unit 205. .
  • the target antiphase arm swing angle of the corrected gait (hereinafter, referred to as the corrected target antiphase arm swing angle) is the instantaneous value of the obtained simplified model antiphase arm swing angle (S 353 2
  • the calculated perturbation model antiphase arm swing angle 0 ca (the value obtained in the control cycle at the current time t) is used to calculate the instantaneous value of the target antiphase arm swing angle at the current time t of the current time's gait. 3 Obtained by adding in 2.
  • the desired floor reaction force of the corrected gait is also corrected. Specifically, the floor reaction force moment horizontal component around the target ZMP is no longer 0, and the target floor reaction force moment horizontal component for compliance control is output as the target value. Also, the desired floor reaction force horizontal component is corrected to the corrected desired floor reaction force horizontal component and output. The desired floor reaction force moment vertical component is also corrected to the corrected desired floor reaction force moment vertical component and output.
  • the motion of the corrected gait is based on the motion of the simplified model gait and the motion of the perturbation model (specifically, the perturbation model for body horizontal position correction). And the motion of the perturbation model 203 for correcting the body posture tilt angle and the motion of the perturbation model 231 for correcting the anti-phase arm swing angle).
  • the floor reaction force generated by adding a certain perturbation motion to a certain reference motion is generated by the floor reaction force generated by the reference motion (the floor reaction force that balances the gravitational and inertial forces generated by the motion) and the perturbation perturbation. It is approximated by the sum of the perturbation of the generated floor reaction force.
  • the floor reaction force horizontal component in which the body tilt mode occurs the floor reaction camouflage vertical component in which the body tilt mode occurs, the floor reaction force horizontal component and the antiphase arm swing mode in which the antiphase arm swing mode occurs
  • the horizontal component of the floor reaction camouflage at which the first glide occurs is 0, the motion of the corrected gait is inversely full.
  • the floor reaction force moment balanced on the model 210 is compensated for the total floor reaction force moment.
  • the sum of the horizontal component Mdmdxy and the compensation total floor reaction force moment vertical component Mdmdz to match the corrected target floor reaction chamoment (satisfies the condition of A1 above), the following three equations must be satisfied.
  • the vertical component of the perturbation model moment for body horizontal position correction Mpz is the floor reaction force moment vertical component generated on the inverse full model 201 by the motion of the perturbation model for body horizontal position correction. is there.
  • the moments in the equations h5 and hi06 are moments around the original (simplified model) target ZMP.
  • the corrected target gait around the true ZMP of the corrected gait The vertical component may be calculated.
  • the corrected desired floor reaction force moment vertical component around the true ZMP of the corrected gait is the difference between the true ZMP of the corrected gait and the desired ZMP of the moment around the original target ZMP, and the corrected target floor calculated by the equation h6. This is the sum of the cross product with the horizontal component of the reaction force.
  • the true ZMP of the corrected gait determined from equation h7 must be within the ZMP tolerance. This is called a ZMP constraint.
  • the corrected desired floor reaction force horizontal component must be within the allowable range of the floor reaction force horizontal component for gait correction (for full model correction). This is called the floor reaction water equilibrium constraint.
  • the corrected desired floor reaction force moment vertical component must be within the allowable range of the floor reaction force moment vertical component for gait correction (for full model correction). This is called the floor reaction camouflage vertical component constraint condition. .
  • the corrected gait is calculated using the equations h5, h6, hl06, and ZMP constraints (the range of the true ZMP of the corrected gait obtained from equation h7).
  • the condition and the floor reaction force moment vertical component constraint must be satisfied.
  • the state quantities of the perturbation model 202 for body horizontal position correction, the perturbation model 203 for body posture tilt angle correction, and the perturbation model 2301 for antiphase arm swing angle correction (more specifically, Is based on the correction perturbation model body horizontal position velocity, the correction perturbation model body posture inclination angle ⁇ angular velocity, the correction perturbation model antiphase arm swing angle ⁇ angular velocity, etc.).
  • the correction perturbation model 202, 203, 231 Perform stabilization control.
  • the control law for converging (stabilizing) the body horizontal position correction perturbation model 202 to the target settling position is called the body horizontal position correction perturbation model control law 206, and the feedback determined by this control law
  • the amount (operating amount) is called the required perturbation model stabilization moment Mpfdmd for body horizontal position correction.
  • the ⁇ required value '' is added so that the true ZMP is within the ZMP allowable range and the floor reaction force horizontal component is within the floor reaction force horizontal component allowable range, as described later.
  • the value determined by the above control law is restricted and corrected.
  • the corrected moment with the restriction added is called the perturbation model stabilization moment Mpf for upper body horizontal position correction.
  • equation h10 is used as the perturbation model control rule 206 for body horizontal position correction.
  • the target settling position is given by equation h8.
  • Nitotal is the total weight of the robot
  • mb is the mass of the upper body mass (inverted pendulum mass)
  • XGf is the horizontal center of gravity calculated using the full model based on the instantaneous posture of the simplified model gait.
  • the position that is, the horizontal position of the center of gravity calculated by the inverse full model.
  • Kpp and ⁇ are gains for feedback control.
  • Target settling position —mtotal / mb * (XGf— XGs)...
  • Mpfdmd Kpp * (Perturbation model body horizontal position for correction Xc—Target Settling position)
  • the perturbation model stabilization moment requirement value for the upper body horizontal position correction To obtain the component around the X-axis (front-rear axis) of Mpfdmd, the correction perturbation model body horizontal position velocity and target settling position are Y
  • the axial (left-right) component is used.
  • the correction perturbation model body horizontal position speed and target set position are in the X-axis direction (front-back direction) ) Substitute “+” for “1” in the third paragraph on the right side using the component.
  • the corrected target body posture tilt angle that is, the corrected perturbation model body posture tilt angle obtained by adding the corrected target body posture tilt angle based on the simplified model
  • the amount of feedback is determined by the feedback control law, such as PI control, according to the state of the perturbation model for body posture tilt angle correction 203. Input additionally to the angle correction perturbation model 203.
  • This control law is called the body posture tilt angle correction perturbation model control law 207 (sometimes abbreviated as body posture angle correction perturbation model control law 207), and the feedback amount (operating amount) ) Is called the perturbation model stabilization moment required for body posture tilt angle correction Mrfdmd.
  • body posture tilt angle correction perturbation model control law 207 sometimes abbreviated as body posture angle correction perturbation model control law 207
  • the feedback amount (operating amount) ) Is called the perturbation model stabilization moment required for body posture tilt angle correction Mrfdmd.
  • “required value” is attached This is for the same reason as the required perturbation model stabilization moment Mpfdmd for body horizontal position correction.
  • the corrected moment with the restriction is called the perturbation model stabilization moment Mrf for upper body inclination correction.
  • the perturbation model stabilization perturbation model control rule 207 for determining the body posture inclination angle correction perturbation model stabilization moment request value Mrfdmd may be specifically expressed by the following equation.
  • Perturbation model stabilization moment demand value for body posture tilt angle correction Mi'fdmd Krp * (correction perturbation model body posture tilt angle 0 c
  • the upper body is obtained by the perturbation model control rule for body horizontal position correction 200 (formula hl O).
  • the required value Mpfdmd is obtained for the perturbation model stabilization moment for horizontal position correction.
  • the required body posture inclination angle correction perturbation model stabilization moment required value Mrfdmd is obtained by the above-mentioned body posture inclination angle correction perturbation model control rule 2 07 (formula h11).
  • the floor reaction force estimation (calculation) value F0 of the body position correction perturbation model assuming that the body horizontal position correction perturbation model stabilization moment Mpf was 0, is obtained by the F0 calculation unit 208.
  • the perturbation model for body horizontal position correction 202 is obtained by adding the full model floor reaction force moment horizontal component Mfullxy to the perturbation model stabilization model for body horizontal position correction Mopf. Therefore, F0 is the perturbation model for body horizontal position correction 20 0 when only the inverse of the sign of the full model floor reaction force moment horizontal component Mfullxy is input to the perturbation model for body horizontal position correction 202 2 is the floor reaction force generated.
  • F0 is obtained by the following equation.
  • the second term on the right-hand side is directly generated in the perturbation model 202 for body horizontal position correction by the previous perturbation model stabilization moment Mpf for body horizontal position correction. Represents the force horizontal component.
  • the previous perturbation model stabilization moment Mpf By dividing the value by the body translation mode floor reaction force ratio h, the estimated value of the floor reaction force F0 of the perturbation model for body position correction when Mpf is assumed to be 0 is obtained.
  • the perturbation model stabilization moment Mpf for body horizontal position correction is calculated as the required value Mpfdmd
  • the perturbation model stabilizing moment Mrf for body posture tilt angle correction is matched with the required value of the perturbation model stabilization moment for body posture tilt angle correction Mrfdmd, and the target floor camo around the target ZMP Mensui Heisei
  • the floor reaction moment generated around the target ZMP assuming that the target floor reaction force moment for compliance control as the minute is equal to the sum of the compensation total floor reaction moment horizontal component Mdmdxy, Mpf, and Mrf
  • the component Min is obtained by the Min operation unit 209.
  • This horizontal component of the floor reaction force moment is referred to as an unlimited corrected target floor reaction force moment horizontal component Min.
  • the uncorrected corrected desired floor reaction force moment horizontal component Min is obtained by the following equation.
  • the corrected target floor anti-camo-mend horizontal component Min is the required value of the perturbation model stabilization moment Mpfdmd for body horizontal position correction and the perturbation for body posture tilt angle correction It is obtained by adding the required model stabilization moment Mrfdmd and the compensation total floor reaction force moment horizontal component Mdmdxy.
  • the perturbation model stabilization moment Mpf for body horizontal position correction is changed to the perturbation model stabilization moment request value Mpfdmd for body horizontal position correction.
  • the perturbation model stabilizing moment for body posture inclination angle correction, Mrf is matched with the required perturbation model stabilization moment for body posture inclination angle correction, Mrfdmd, and the target floor anti-camera for compliance control is matched.
  • the horizontal component is equal to the sum of the compensation total floor reaction moment horizontal components Mdmdxy, Mpf and Mrf
  • the generated floor reaction force horizontal component Fin is obtained by the Fin calculation unit 210.
  • This floor reaction force horizontal component is called the unlimited correction target floor reaction force horizontal component Fin. .
  • the corrected desired floor reaction force horizontal component is obtained by the above equation h6.
  • a floor reaction force horizontal component does not occur in the body posture inclination angle correction perturbation model 203 due to the behavior of the body posture inclination angle correction perturbation model 203, that is, Fr is zero. Therefore, the uncorrected corrected desired floor reaction force horizontal component Fin is calculated as the corrected desired floor reaction force horizontal component when the perturbation model stabilization moment Mpf for the body horizontal position correction is assumed to be 0.
  • the perturbation model stabilization moment Mpf from 0 to the required perturbation model stabilization moment Mpfdmd for body horizontal position correction, the floor reaction force horizontal component that increases due to the change is added.
  • the floor reaction force horizontal component that increases by changing the perturbation model stabilization moment Mpf for the upper body horizontal position correction from 0 to the required value of the perturbation model stabilization moment Mpfdmd for the upper body horizontal position is The value obtained by dividing the required perturbation model stabilization moment Mpfdmd for the horizontal position correction by the body translation mode floor reaction force ratio h.
  • the unlimited corrected target floor reaction force horizontal component Fin is calculated by dividing the perturbation model stabilization moment requirement Mpfdmd for the body horizontal position correction by the body translation mode floor reaction force ratio h as shown in equation hi5.
  • the obtained full model floor reaction force horizontal component Ffull is added to the obtained value, and the upper body horizontal 'position correction is used.
  • the perturbation model stabilization moment Mpf is assumed to be 0. It is obtained by adding the calculated value F0 of the floor reaction force of the perturbation model.
  • the limiting means (limit processing unit) 2 1 1, the uncorrected target floor reaction force moment horizontal component Min and the unlimited corrected target floor reaction force horizontal component This is a value obtained by adding a limit to these from Fin and (around the target ZMP)
  • the limit correction target floor reaction force moment horizontal component Mltd and the limit correction target floor reaction force horizontal component Fltd are determined.
  • the horizontal component of the target floor reaction camouflage for compliance control is equal to the limit corrected target floor reaction force moment water level Mltd, and the floor reaction force horizontal component of the corrected gait is the restricted corrected target floor reaction force.
  • the horizontal component matches Fltd.
  • Limit correction target floor reaction force moment horizontal component Mltd and limit correction target floor reaction force horizontal component Fltd are the true ZMP of the correction gait (including the target floor reaction camo horizontal component for compliance control) and the ZMP allowable range. And the floor reaction force horizontal component of the corrected gait is determined to be within the floor reaction force horizontal component allowable range. That is, Mltd and Fltd are determined so as to satisfy the ZMP constraint condition and the floor reaction force horizontal component constraint condition.
  • the perturbation model stabilization moment for body horizontal position correction Mp should be as close to or as close as possible to the required perturbation model stabilization moment for body horizontal position correction value Mpfdmd. Is determined.
  • the body posture inclination angle correction perturbation model stabilization moment Mr is determined to be as close to or as close as possible to the body posture inclination angle correction perturbation model stabilization moment required value Mrfdmd. . This stabilizes the correction perturbation model body position Xc and the correction perturbation model body posture inclination angle, and prevents divergence.
  • Restriction means (restriction processing section) 2 1
  • P Restriction processing section
  • Mrf Mltd—Mpf-Mdmdxy equation h 2 1 That is, the Mpf calculation unit 2 1 2 subtracts the full model floor reaction force horizontal component Ffull from the limit correction target floor reaction force horizontal component Fltd, and Mp is 0.
  • the perturbation for body horizontal position correction is obtained by multiplying the value obtained by subtracting the calculated value F0 of the floor reaction force of the body position correction perturbation model 202 assuming the body body translation mode floor reaction force ratio h assuming:
  • the model stabilization moment Mpf is obtained.
  • the Mrf calculation unit 2 13 calculates the perturbation model stabilization moment Mpf for the body horizontal position correction from the limit correction target floor reaction force moment horizontal component Mltd around the target ZMP.
  • the perturbation model stabilization moment Mrf for body posture tilt angle correction can be obtained by subtracting the compensating total floor reaction force moment horizontal component Mdmdxy.
  • Mr Mrf 'Equation h2 3
  • the perturbation model for body horizontal position correction floor anti-camoment Mp is obtained.
  • the perturbation model floor The force moment Mr is set to the same value as the perturbation model stabilization moment Mrf for body posture inclination angle correction.
  • the perturbation model floor reaction force moment Mp for body horizontal position correction is input to the perturbation model 202 for body position correction, and the perturbation model body position for correction balanced with the input floor reaction force moment.
  • Xc is calculated.
  • the perturbation model floor reaction force moment Mr for body posture tilt angle correction is input to the perturbation model 203 for body posture tilt angle correction, and the perturbation model The body posture inclination angle 0c is calculated.
  • the calculation units 205 and 204 determine the correction target body horizontal position and the correction target body posture inclination angle according to the following equations h24 and h25, respectively. Are output as the final target instantaneous values of the body horizontal position and orientation. Correction target body horizontal position.
  • the corrected target body horizontal position is obtained by adding the correction perturbation model body position Xc to the simplified model body horizontal position, and this is output as the final target body horizontal position.
  • the correction target is obtained by adding the correction perturbation model body posture inclination angle 0 c to the simplified model body posture inclination angle. The elevation angle of the body posture is obtained, and this is output as the final target body inclination angle.
  • the limit correction target floor reaction force moment horizontal component Mltd is output as the target floor reaction force moment horizontal component for compliance control around the target ZMP, and the limit correction target floor reaction force water is output as the correction target floor reaction force horizontal component.
  • the flat component Fltd is output.
  • the corrected target floor reaction force horizontal component and the corrected target floor reaction camoment horizontal component around the target ZMP are respectively the floor reaction force horizontal component and the floor reaction force moment horizontal component (target (Horizontal component of moment around ZMP) is determined as the final target instantaneous value, and these are output.
  • the antiphase arm swing angle correction perturbation model moment determiner 230 further outputs the antiphase arm swing angle correction perturbation model Model moment Ma and desired floor reaction force Moment vertical component is determined.
  • an anti-phase arm swing angle correction perturbation The model moment Ma is input to the anti-phase arm swing angle correction perturbation model 231, and the correction perturbation model anti-phase arm swing angle 0 ca is determined.
  • the antiphase arm swing angle correction perturbation model moment determination unit 230 is based on the reference antiphase arm swing angle output from the target instantaneous value generation unit 100b (obtained in S3404 in Fig. 57). Or the corrected antiphase arm swing angle based on the simplified model (determined in S3114 in Fig. 57) and the corrected antiphase arm swing angle, that is, the target antiphase based on the simplified model.
  • PI control and other controls are performed so that the arm swing angle plus the correction perturbation model anti-phase arm swing angle is settled or followed.
  • the feedback amount (operating amount) is determined by the feedback control law, and this is additionally input to the anti-phase arm swing angle correction perturbation model 2 31.
  • This control law is called the anti-phase arm swing angle correction perturbation model control law, and this feedback amount (operating amount) is called the anti-phase arm swing angle correction perturbation model stabilization moment required value Mafdmd.
  • the “required value” is given here for the same reason as the required value of the perturbation model stabilizing moment Mpfdmd for body horizontal position correction.
  • the moment corrected by the restriction is called the anti-phase arm swing angle correction perturbation model stabilization moment Maf.
  • this Maf is input to the anti-phase arm swing angle correction perturbation model 231, as the anti-phase arm swing angle correction perturbation model moment Ma.
  • the antiphase arm swing angle correction perturbation model control law for determining the antiphase arm swing angle correction perturbation model stabilization moment request value Mafdmd may be specifically expressed by the following equation.
  • Required value of stabilizing moment for anti-phase arm swing angle correction perturbation model Mafdmd Kap * (correction perturbation model anti-phase arm swing angle 0 ca One (reference anti-phase arm swing angle-target anti-phase arm swing angle by simplified model)
  • Equation h3 0
  • Kap and Kav are the gains of the feedback control law.
  • 0 may be used instead of (reference antiphase arm swing angle—target antiphase arm swing angle by a simplified model).
  • FIG. 70 is a functional block diagram thereof.
  • the required perturbation model stabilization moment Mafdmd for anti-phase arm swing angle correction is obtained by the perturbation model control law for correction '230a (equation h30).
  • the floor reaction force moment vertical component due to the body horizontal position correction using the body horizontal position correction perturbation model 202 is perturbed to the floor reaction force moment vertical component due to the body horizontal position correction. It is obtained by the perturbation amount calculation section 230b.
  • the antiphase arm swing angle correction perturbation model stabilization moment Maf is replaced by the antiphase arm swing angle correction perturbation model stabilization moment.
  • the required floor reaction force moment for compliance control as a vertical component of the desired floor reaction force moment around the target ZMP is compensated for the total floor reaction force moment.
  • the vertical components Mdmdz, Maf, Mfullz, Mpz and If it is assumed that the sum is equal to the sum of the above, the vertical motion component Minz generated around the target ZMP is calculated by the arithmetic unit 230c.
  • the vertical component of the floor reaction force moment is called the corrected target floor reaction camo vertical component Minz when there is no restriction.
  • the unlimited time corrected target floor reaction force moment vertical component Minz is obtained by the following equation.
  • Minz Mafdmd + Mdmdz + Mfullz + Mpz ...
  • H 3 Reaction component moment vertical component Mdmdz and full model floor reaction force moment The vertical component is obtained by adding Mfullz and the perturbation model moment for body horizontal position correction Vertical component Mpz.
  • the restriction means (restriction processing unit) 230 d is a value obtained by adding restrictions to the corrected target floor reaction force moment vertical component Minz at the time of unrestriction (around the target ZMP).
  • the reaction force vertical component Mltdz is determined.
  • the vertical floor component of the target floor reaction chamoment for compliance control matches the vertical floor component Mltdz of the limit corrected target floor reaction force moment.
  • the limit correction target floor reaction force moment vertical component Mltdz is determined to be within the floor reaction force moment vertical component allowable range. That is, Mltdz is determined to satisfy the floor reaction force moment vertical component constraint.
  • the anti-phase arm swing angle correction perturbation model stabilization moment Maf is set to the anti-phase arm swing angle correction perturbation model stabilization moment required value Mafdmd as much as possible. Determined to be equal or close. This stabilizes the correction perturbation model antiphase arm swing angle 0 ca and prevents divergence.
  • Restriction means (restriction processing unit) 230 d is a function having a saturation characteristic shown by the following equation. Minz> When the upper limit of the floor anti-camoment vertical component allowable range is exceeded
  • the vertical axis component of the compensation total floor reaction force moment is calculated from the limit correction target floor reaction force moment vertical component Mltdz.
  • Mdmdz and full model floor reaction force moment vertical component Mfullz and perturbation model moment vertical component Mpz are subtracted to obtain the antiphase arm swing as a perturbation model stabilization moment Maf for antiphase arm swing angle correction.
  • An angle correction perturbation model moment Ma is obtained.
  • the limit corrected target floor reaction force moment vertical component Mltd is output as the target floor reaction force moment vertical component for compliance control around the target ZMP.
  • the corrected desired floor reaction force moment vertical component around the target ZMP is determined as the final target instantaneous value of the floor reaction force moment vertical component (moment vertical component around the target ZMP) according to the following equation h35. Is output.
  • the calculation unit 232 determines the corrected target antiphase arm swing angle according to the following equation h37, and outputs this as the final target instantaneous value of the antiphase arm swing angle. Correction target arm swing angle
  • Equation h 3 7 That is, the corrected target antiphase arm swing angle is obtained by adding the correction perturbation model antiphase arm swing angle 0 ca to the simplified model antiphase arm swing angle. Output as swing angle.
  • the gait correction in S3533 is performed.
  • the fourth reference example is a feedforward correction.
  • the perturbation dynamics model is not an exact model. Therefore, even if the gait is corrected to satisfy the equations h5, h6, and hi06 as described above, strictly speaking, it does not satisfy the dynamic equilibrium condition, Satisfies the dynamic equilibrium condition.
  • a perturbation model 202 for body horizontal position correction and a body posture inclination angle correction are used.
  • the rotation angle of the flywheel of the perturbation model for body posture tilt angle correction 203 and the rotation angle of the flywheel of the perturbation model 2301 for antiphase arm swing angle correction are the state quantities of the simplified model 200.
  • the state quantities of the simplified model 200 at the end of the gait this time are in antiphase with the body motion and body posture inclination angle correction perturbation model 203 It is corrected to the state quantity with the arm swing angle correction perturbation model 2 3 1.
  • each perturbation model 202, 203, 231 is initialized (for example, the horizontal position of the upper body mass point (inverted pendulum mass point) of the perturbation model 202 for upper body horizontal position correction)
  • the rotation angle of the flyhole of the perturbation model 203 for correcting the body posture inclination angle and the rotation angle of the flyhole of the perturbation model 231 for correcting the antiphase arm swing angle are reset to 0.
  • the correction perturbation model body horizontal position Xc, the correction perturbation model body posture tilt angle ⁇ c, and the correction perturbation model antiphase arm swing angle 0 ca are calculated by 1.
  • each perturbation model 202, 203, 231 can be further enhanced.
  • the correction of the state quantity of the simplified model 200 as described above may be appropriately performed during the generation of the gait.
  • the correction of the state quantity of the simplified model 200 and the reset of the perturbation model as described above need not be performed during the generation of the gait.
  • the fourth reference example all the restoring conditions are satisfied. Therefore, the same operation and effect as those of the third reference example can be obtained. Furthermore, in addition to the operation and effect of the third reference example, the amount of calculation is relatively small when determining the body horizontal position, the body posture inclination angle, and the antiphase arm swing angle so as to satisfy the above-described restoration condition. be able to.
  • the correction method of the device according to the fifth reference example differs from that of the fourth reference example only in the processing of the gait generator 100 (the processing of S35536 in FIG. 65). It is a full model feedback correction type. It is a method that uses the inverse dynamics full model (inverse full model), does not correct the input of the simplified model gait, and uses a perturbation model.
  • FIG. 71 is a functional block diagram for explaining the operation of the device according to the fifth reference example, specifically, the method of correcting the gait of S35536 in the flowchart of FIG.
  • the simplified model 200 in FIG. 71 is not only a kinetic model, but also the processing from S 3 50 to S 3 52 in FIG. This represents the calculation (decision) processing of the instantaneous value of the simplified model gait. Therefore, in FIG. 71, the part after the simplified model 200 corresponds to the processing of S 356. Note that among the functional parts in FIG. 71, the same reference numerals as in FIG. 66 are used for the same functional parts as in FIG. 66 according to the fourth reference example, and detailed description thereof will be omitted.
  • the final target body posture inclination angle (corrected target body posture inclination angle) is calculated by adding the correction perturbation model body posture inclination angle ⁇ c calculated in ) Is required.
  • the instantaneous value of the target antiphase arm swing angle (temporary instantaneous value obtained in the control cycle at the current time t) of the simplified model gait obtained in S3532 of FIG.
  • the final target antiphase arm swing angle (corrected target antiphase arm swing) is calculated by adding the correction perturbation model antiphase arm swing angle 0 ca Angle) is required.
  • the corrected target body horizontal position, the corrected target body posture inclination angle, and the corrected target antiphase arm swing angle are the final values of the body horizontal position, the body posture inclination angle, and the antiphase arm swing angle, respectively. It is output as the target instantaneous value.
  • the desired body horizontal position corrected desired body horizontal position
  • the desired body posture inclination angle corrected desired body posture inclination angle
  • the target reverse obtained by correcting the simplified model gait as described above.
  • the phase arm swing angle corrected target antiphase arm swing angle
  • the instantaneous values of the motion variables such as the target center of gravity position, target foot position, and target arm posture of the simplified model gait obtained as described above
  • the target ZMP Is input to the inverse dynamics full model 201 described above, and balances the motion represented by the input motion variables (that is, the motion generates the inverse full model 201).
  • the horizontal component and the floor reaction force moment around the target ZMP are calculated.
  • the full model 201 includes the perturbation model body horizontal position Xc for correction and the perturbation model body posture inclination angle for correction.
  • ⁇ c and the correction perturbation model antiphase arm swing angle S ea are additionally input.
  • the floor reaction force horizontal component, the floor reaction force moment horizontal component, and the floor reaction force moment vertical component calculated by the inverse full model 201 are respectively used as the full model floor reaction force horizontal component Ffullxy,
  • the full model floor reaction force moment horizontal component Mfullxy is called the full model floor reaction force moment vertical component Mfullz.
  • the full model floor reaction force horizontal component Ffull is output as the corrected desired floor reaction force horizontal component (final target instantaneous value of the floor reaction force horizontal component at the current time t).
  • the corrected target floor reaction force horizontal component is determined and output by the following equation.
  • Corrected desired floor reaction force horizontal component full model floor reaction force horizontal component Ffull
  • the full model corrected gait is the behavior of the body horizontal position correction perturbation model 202 and the body posture in the simplified model gait.
  • the behavior of the tilt angle correction perturbation model 203 and the behavior of the antiphase arm swing angle correction perturbation model 230 are added.
  • the simplified model floor reaction force horizontal component is a translational force horizontal component obtained by calculating the floor reaction force generated by the motion of the simplified model gait using the inverse full model 201.
  • the required perturbation model stabilizing moment Mpfdmd for the body horizontal position correction is determined by the perturbation model control rule 206 for the body horizontal position correction.
  • the perturbation model control rule 206 for body horizontal position correction in the present embodiment is set as proposed by the applicant of the present application in Japanese Patent Application No. 2000-131.
  • the control rule 206 is determined as in the following equation. Perturbation model stabilization moment required for body horizontal position correction Mpfdmd
  • Center of gravity difference Full model center of gravity horizontal position-Simplified model center of gravity horizontal position
  • Eq. H5 K Kpg and Kv in Eq. H52 are the gains of the feedback control law, and the full model horizontal center of gravity, the simplified model horizontal center of gravity, and the perturbation model body horizontal velocity dXc / dt are respectively
  • the gravity center horizontal position XGs) calculated using the simplified model and the correction perturbation model body horizontal velocity dXc / dt are shown below.
  • the feedback amount for perturbation model control (operation ) Is calculated.
  • the temporal average value of the difference in the center of gravity can be controlled to almost zero.
  • the body posture correction perturbation model stabilization moment request value Mrfdmd is determined according to the body posture inclination angle correction perturbation model control rule 207, which uses the same control law as in the fourth reference example. Good. Therefore, for example, the above-mentioned expression h i 1 is used as the control rule 207.
  • the unlimited corrected target floor reaction force moment Min is obtained (estimated) by the Min calculation unit 209.
  • the target floor reaction force moment Min during unrestricted capture ignores the aforementioned constraints (ZMP constraint condition and floor reaction force horizontal component constraint condition) and stabilizes the perturbation model for body horizontal position correction.
  • the moment Mpf is matched with the perturbation model stabilization moment required for the body horizontal position correction Mpfdmd, and the body posture inclination angle correction perturbation model stabilization moment Mrf is used as the body posture inclination correction perturbation model stabilization model.
  • the unrestricted corrected desired floor reaction force moment horizontal component Min is obtained by the calculation of the above-mentioned expression hi3, as in the fourth reference example.
  • the uncorrected corrected desired floor reaction force moment horizontal component Min is compensated by the required perturbation model stabilization moment Mpfdmd for body horizontal position correction and the required perturbation model stabilization moment for body posture tilt angle Mrfdmd.
  • Total floor reaction force moment horizontal It is obtained by adding the component Mdmdxy.

Abstract

目標歩容に追従して動作しているロボットの滑りの発生を判断し、ロボットに作用させる床反力水平成分や床反力モーメント鉛直成分等の制限対象量の許容範囲を滑りの判断結果に応じて可変的に設定する。目標歩容の仮運動を動力学モデルを用いて決定し、その仮運動により定まる制限対象量が許容範囲を逸脱したとき、動力学的平衡条件を満たしつつ、制限対象量を許容範囲内に制限するようにロボットの角運動量変化率を仮運動から変化させることにより該仮運動を修正して目標歩容の運動を決定する。

Description

明 細 書 脚式移動ロポッ 卜の制御装置 技術分野
本発明は、 脚式移動口ポッ トの歩行のみならず、 走行にも適した歩容 生成装置および制御装置に関する。 背景技術
脚式移動ロポッ ト、 例えば 2足移動ロポッ トの移動動作を行わせるた めの歩容 (目標歩容) の生成は、 従来、 主に口ポッ トにスムーズな歩行 動作を行なわせる歩容 (歩行歩容) を生成することを主目的として行な われてきた。 しかし、 近年では、 脚式移動口.ポッ トの開発が進むにつれ て、 該ロボッ トに歩行だけでなく、 走行も行なわせることができる歩容 を生'成することが望まれている。 さらには、 十分な摩擦力を発生できな い滑りやすい床 (いわゆる低ミュー路) 上でもロボッ トを支障なく移動 させることができる歩容を生成することが望まれている。
尚、 「歩容」 という漢字に 「歩」 が入っているので歩行に限定される と誤解されやすいが、 本来 「歩容」 とは、 トロッ トなど、 馬の走行形態 を指す言葉として用いられているように、 走行も含んだ概念である。
ここで、 歩行と走行の特徴の違いを説明しておく。
同時に全脚が空中に存在する瞬間がある移動形態を走行と定義すること が一般的ではある。 しかし、 この定義によって歩行と走行が明確に区別 できるとは限らない。 たとえば、 速いジョギングでは、 ほとんどの人間 において、 同時に全脚が空中に存在する瞬間があるが、 遅いジョギング では、 かなりの人間において、 常にいずれかの脚が接地している。 速い ジョギングは走行であるのに遅いジョギングは歩行である、 と定義する のは、 感覚的に少し無理がある。
図 5 1に、 典型的な走行における上体鉛直位置と床反力鉛直成分 (左 右の脚に作用する床反力鉛直成分の和) のパターンを示し、 図 5 2には. 典型的な歩行における上体鉛直位置と床反力鉛直成分のパターンを示す, 尚、 上体鉛直位置速度は、 上体代表点の鉛直位置とその速度を意味す る。 上体水平位置速度は、 上体代表点の水平位置とその速度を意味する, 上体鉛直位置速度と上体水平位置速度を合わせて、 上体位置速度と呼ぶ, また、 「床反力鉛直成分」 は、 厳密には、 床反力の鉛直軸まわりのモ —メント成分と区別するために、 「並進床反力鉛直成分」 と記述すべき であるが、 言葉が長くなるので、 ここでは 「並進」 を省略する。 以降、 「並進床反力水平成分」 も 「並進」 を省略して 「床反力水平成分」 と記 述する。
まず上体の動きを見てみると、 歩行においては、 支持脚の上を上体が 通過する瞬間に上体は最も高く、 走行においては、 この瞬間に最も低い, すなわち、 歩行と走行では、 上体の上下動パターンの位相が反転してい る。
一方、 床反力に関しては、 歩行では比較的一定であるのに対し、 走行 においては、 大きく変動し、 支持脚の上を上体が通過する瞬間に床反力 は最も大きい。 また、 当然のことながら、 同時に全脚が空中に存在する 瞬間において床反力は 0になっている。 より詳しく観察すると、 走行で は、 支持脚を縮めた量にほぼ比例した大きさの床反力が発生する。 言い かえると、 走行では、 脚をばねのように使って跳ねながら移動している と Θ る
遅いジョギングでは、 典型的な走行と同じ上体上下動の位相を持つ。 また、 遅いジョギングでは、 同時に全脚が空中に存在する瞬間がない場 合が多いが、 その場合でも、 支持脚と遊脚の切り換えが行われる瞬間に おいて、 床反力は、 完全には 0にならないがほぼ 0になっている。
したがって、 以上のように、 上体の上下動や床反力のパターンの上記 特徴から歩行と走行を区別した方が、 遅いジョギングも走行とみなされ. 感覚とも一致して、 より適切と言えよう。
特に、 最も特徴的な点で両者を区別するならば、 走行とは、 支持脚の 切り換えが行われる瞬間において、 床反力が 0またはほぼ 0になる移動 形態であり、 歩行は、 それ以外の移動形態 (床反力鉛直成分が比較的一 定) であると言えよう。
ところで、 本出願人は先に P C T公開公報 WOZ 02/ 40224において. 脚式移動口ポッ トの床反力を含む歩容を、 動力学的平衡条件 (目標歩容 の重力と慣性力と床反力との釣り合い条件のことである。 狭義では、 目 標歩容の運動による重力と慣性力との合力が目標 Z M Pまわりに作用す るモーメントの水平成分が 0であること。 詳細は後述する。) をほぼ満 '足しながら、 自在かつリアルタイムに生成する技術を先に提案した。 こ の技術や、 特開平 1 0— 8 6 0 8 1号公報、 特開平 1 0— 2 7 7 9 6 9 号公報などにて本出願人が提案してきた一連の脚式移動ロポッ トの制御 装置は、 歩行のみならず走行にも適用できるものである。
しかしながら、 この技術においては、 目標歩容の並進床反力水平成分 や目標歩容の Z M Pまわりの床反カモ一メント鉛直成分の大きさを考慮 していなかった。 このため、 摩擦の限界を超えて、 口ポッ トの支持脚足 平の滑り (床面に並行な方向のスリップやスピン) が発生するおそれが あった。 なお、 スピンとは、 実際の口ポッ トのョ一角 (鉛直軸まわり回 転角) 速度が目標ョー角速度からずれることを言う。 - 摩擦係数の高い床面を歩行する塲合 (この場合、 少なくとも 1つの脚 体は常時接地している) には、 床反力鉛直成分が常にほぼ口ポッ トの自 重相当であるので、 摩擦力の限界が高い。 このため、 口ポッ トの滑りは 発生しにくい。
しかるに、 走行においては、 床反力鉛直成分が 0になる、 または 0に 近くなる時があるので、 その時には、 たとえ摩擦係数が高くとも、 床面 の摩擦力の限界が 0になるまたは 0に近くなる。 したがって、 目標歩容 の並進床反力水平成分や床反力モーメント鉛直成分が限界を超え、 ロボ ッ トが滑って転倒する恐れがあった。
また、 歩行の場合でも、 床の摩擦係数が低い場合には、 口ポッ トの滑 りが発生して転倒する恐れがあった。
一方、 本出願人は先に、 例えば P C T出願 P C T Z J P 0 2 / 1 3 5 9 6等において、 目標歩容の並進床反力水平成分が許容範囲を超えない ように、 目標歩容を生成したり、 目標歩容において腕以外が発生するモ —メント鉛直成分を打ち消すように、 腕を振るようにする技術を提案し た。 この技術によれば、 ロボッ トの滑りの発生を抑制できる。
- しかるに、 床面の状態などによっては、 並進床反力水平成分の許容範 囲が実際の床面の摩擦力の限界と整合しない場合もあり、 その場合には, 口ポッ トの滑りが発生する恐れがあった。 そして、 これを回避するため に、 並進床反力水平成分の許容範囲を狭めに設定すると、 上体の姿勢 (傾斜角) の大きく変動しやすい。 また、 脚を激しく振って移動する場 合には、 モーメント鉛直成分を打ち消すために、 腕の振りも激しくなる したがって、 本発明の目的は、 上記の問題点を解消し、 歩行、 走行等 の歩容形態や床面の摩擦状態によらずに、 口ポッ トの滑りの発生をより 確実に防止し、 より一層好適な歩容を生成することができる制御装置を 提供することにある。 発明の開示 本発明の脚式移動ロポッ トの制御装置の第 1発明は、
上体から延設された複数の脚体を運動させて移動する脚式移動ロポッ トの目標歩容を生成し、 その目標歩容に追従するようにロポッ トの動作 を制御する制御装置において、
前記目標歩容に追従して動作している前記ロボッ 卜の滑りの発生を判 断する滑り判断手段と、
前記ロボッ トに作用させる並進床反力の水平成分又は該並進床反力の 床面平行成分又は該ロポッ トの全体重.心加速度の水平成分又は該全体重 心加速度の床面平行成分を制限対象量として、 該制限対象量の許容範囲 を前記滑り判断手段の判断結果に応じて可変的に設定する許容範囲設定 手段と、
所定の動力学モデル上で前記ロボッ トに作用する重力と慣性力との合 力が所定の動力学的平衡条件を満たすように前記目標歩容の仮運動を決 定する仮運動決定手段と、
前記目標歩容の仮運動により定まる前記制限対象量が前記許容範囲を 逸脱したとき、 前記動力学的平衡条件を満たしつつ、 該制限対象量を前 記許容範囲内に制限するようにロボッ トの重心回りの角運動量変化率を 前記仮運動から変化させることにより該仮運動を修正して目標歩容の運 動を決定する仮運動修正手段とを備えたことを特徴とする。
この第 1発明によれば、 目標歩容の仮運動により定まる前記制限対象 量 (並進床反力の水平成分又は該並進床反力の床面平行成分又は該ロボ ッ トの全体重心加速度の水平成分又は該全体重心加速度の床面平行成 分) が前記許容範囲を逸脱したとき、 該仮運動を修正して目標歩容の運 動を決定する。 この場合、 口ポッ トの重心回りの角運動量変化率を前記 仮運動から変化させるので、 動力学的平衡条件 (例えば目標 Z M Pまわ りの床反力モーメント水平成分が 0になるなどの条件) を満たしつつ、 制限対象量を許容範囲内に制限することができる。 なお、 変化させる角 運動量変化率は、 基本的にはロール方向、 あるいはピッチ方向の角運動 両変化率でよい。 そして、 この場合、 前記許容範囲は、 前記滑り判断手 段の判断結果に応じて可変的に設定されるので、 実際のロボッ トの滑り の発生の有無に応じて即応的に目標運動を修正できる。 この結果、 実際 の口ポッ トの滑りが発生しても、 直ちにその滑りを抑制するようにロボ ッ トの運動が修正される。 従って、 第 1発明によれば、 実際の口ポッ ト の滑りの発生を抑制でき、 口ポッ トの姿勢の安定性を保つことができる, なお、 滑りの発生が有ると判断されたときには、 前記許容範囲は、 それ を狭めるように設定されるべきであり、 このことは、 以下に説明する第 2〜第 4発明においても同様である。
次に本発明の脚式移動ロボッ 卜の第 2発明は、
上体から延設された複数の脚体を運動させて移動する脚式移動ロポッ トの目標歩容を生成し、 その目標歩容に追従するようにロポッ トの動作 を制御する制御装置において、
前記目標歩容に追従して動作している前記ロポッ トの滑りの発生を判 断する滑り判断手段と、
前記ロポッ トに作用させる床反カモ一メントの鉛直成分又は該床反力 モーメントの床面法線方向成分又は該ロポッ トの角運動量変化率の鉛直 成分又は該角運動量変化率の床面法線方向成分を制限対象量として、 該 制限対象量の許容範囲を前記滑り判断手段の判断結果に応じて可変的に 設定する許容範囲設定手段と、
所定の動力学モデル上で前記ロボッ トに作用する重力と慣性力との合 力が所定の動力学的平衡条件を満たすように前記目標歩容の仮運動を決 定する仮運動決定手段と、
前記目標歩容の仮運動により定まる前記制限対象量が前記許容範囲を 逸脱したとき、 前記動力学的平衡条件を満たしつつ、 該制限対象量を前 記許容範囲内に制限するようにロポッ トの角運動量変化率を前記仮運動 から変化させることにより該仮運動を修正して目標歩容の運動を決定す る仮運動修正手段とを備えたことを特徴とする。
この第 2発明によれば、 目標歩容の仮運動により定まる前記制限対象 量 (床反力モーメントの鉛直成分又は該床反力モーメントの床面法線方 向成分又は該ロポッ トの角運動量変化率の鉛直成分又は該角運動量変化 率の床面法線方向成分) が前記許容範囲を逸脱したとき、 該仮運動を修 正して目標歩容の運動を決定する。 この場合、 口ポッ トの角運動量変化 率を前記仮運動から変化させるので、 動力学的平衡条件 (例えば目標 Z M Pまわりの床反力モーメント水平成分が 0になるなどの条件) を満た しつつ、 制限対象量を許容範囲内に制限することができる。 なお、 変化 させる角運動量変化率は、 基本的にはョ一方向の角運動量変化率でよい, そして、 この場合、 前記許容範囲は、 前記滑り判断手段の判断結果に応 じて可変的に設定されるので、 実際の口ポッ トの滑りの発生の有無に応 じて即応的に目標運動を修正できる。 この結果、 実際の口ポッ トの滑り が発生しても、 直ちにその滑り (特にスピン) を抑制するようにロボッ トの運動が修正される。 従って、 第 1発明によれば、 実際の口ポッ トの 滑りの発生を抑制でき、 ロボッ トの姿勢の安定性を保つことができる。 なお、 第 1発明と第 2発明とは、 併用してもよい。 この場合には、 並 進床反力の水平成分又は該並進床反力の床面平行成分又は該ロポッ 卜の 全体重心加速度の水平成分又は該全体重心加速度の床面平行成分を 1つ の制限対象量とすると共に、 床反力モーメントの鉛直成分又は該床反力 モーメントの床面法線方向成分又は該ロポッ トの角運動量変化率の鉛直 成分又は該角運動量変化率の床面法線方向成分を他の 1つの制限対象量 とし、 これらの許容範囲を滑り判断手段の判断結果に応じて可変的に設 定すればよい。 この場合には、 いずれか一方の制限対象量が許容範囲を 逸脱したときに、 目標運動の仮運動を修正することが望ましい。
次に、 本発明に脚式移動ロポッ 卜の制御装置の第 3発明は、
上体から延設された脚体を運動させて移動する脚式移動ロボッ 卜の目 標運動の瞬時値を、 少なくとも該ロポッ トの運動と床反力との関係を表 す動力学モデルを用いて逐次決定しつつ、 その決定した目標運動の瞬時 値に追従させるように前記ロボッ 卜の動作を制御する脚式移動ロボッ ト の制御装置において、 .
前記目標運動に追従して動作しているロボッ トの滑りの発生を判断す る滑り判断手段と、
少なくとも前記ロポッ トに作用させる並進床反力の水平成分又は該並 進床反力の床面平行成分又は該ロポッ 卜の全体重心加速度の水平成分又 は該全体重心加速度の床面平行成分を制限対象量として、 該制限対象量 の許容範囲を前記滑り判断手段の判断結果に応じて可変的に設定する許 容範囲設定手段と、
少なくとも前記決定された目標運動の瞬時値に対応するロボッ 卜の姿 勢の目標状態量と該ロポッ トの姿勢の実状態量との偏差に基づいて、 前 記目標運動の新たな瞬時値を、 該新たな瞬時値に対応して前記動力学モ デルに基づき定まる前記制限対象量が前記許容範囲内に収まると共に前 記偏差が 0に近づくように決定する目標瞬時値決定手段とを備えたこと を特徴とする。
この第 3発明によれば、 少なくともロポッ 卜の姿勢の状態量に関する 前記偏差に基づいて、 前記目標運動の新たな瞬時値を、 該新たな瞬時値 に対応して前記動力学モデルに基づき定まる前記制限対象量 (並進床反 力の水平成分又は該並進床反力の床面平行成分又は該ロポッ トの全体重 心加速度の水平成分又は該全体重心加速度の床面平行成分) が前記許容 範囲内に収まると共に前記偏差が 0に近づくように決定する。 つまり、 ロボッ トの姿勢を所望の姿勢に保つようにしつつ、 制限対象量が許容範 囲を逸脱しないように (以下、 この条件を、 ここでの説明では姿勢 Z制 限対象量条件ということがある) 目標運動の瞬時値が決定される。 そし て、 この場合、 前記許容範囲は、 前記滑り判断手段の判断結果に応じて 可変的に設定されるので、 実際の口ポッ トの滑りの発生の有無に応じて 即応的に、 前記姿勢 Z制限対象量条件を満たすように目標運動の瞬時値 を決定できる。 この結果、 実際の口ポッ トの滑りが発生しても、 該ロボ ッ トの姿勢を適切な姿勢に安定に保ちつつ、 直ちにその滑りを抑制する ことができる。
また、 本発明の脚式移動ロボッ トの制御装置の第 4発明は、
上体から延設された脚体を運動させて移動する脚式移動ロポッ 卜の目 標運動及び目標床反力の瞬時値を、 少なくとも該ロポッ トの運動と床反 力との関係を表す動力学モデルを用いて逐次決定しつつ、 その決定した 目標運動及び目標床反力の瞬時値に追従させるように前記ロボッ 卜の動 作を制御する脚式移動ロボッ 卜の制御装置において、
前記目標運動及び目標床反力に追従して動作しているロボッ トの滑り の発生を判断する滑り判断手段と、
少なくとも前記ロポッ トに作用させる並進床反力の水平成分又は該並 進床反力の床面平行成分又は該ロポッ 卜の全体重心加速度の水平成分又 は該全体重心加速度の床面平行成分を制限対象量として、 該制限対象量 の許容範囲を前記滑り判断手段の判断結果に応じて可変的に設定する許 容範囲設定手段と、
少なくとも前記決定された目標運動及び目標床反力の瞬時値に対応す るロポッ トの姿勢の目標状態量と該ロポッ トの姿勢の実状態量との偏差 に基づいて、 前記目標運動及び目標床反力の新たな瞬時値を、 該新たな 目標運動の瞬時値に対応して前記動力学モデルに基づき定まる前記制限 対象量が前記許容範囲内に収まると共に前記偏差が 0に近づくように決 定する目標瞬時値決定手段とを備えたことを特徴とする。
この第 4発明によれば、 少なくともロポッ 卜の姿勢の状態量に関する 前記偏差に基づいて、 前記目標運動及び目標床反力の新たな瞬時値を、 該新たな目標運動の瞬時値に対応して前記動力学モデルに基づき定まる 前記制限対象量 (並進床反力の水平成分又は該並進床反力の床面平行成 分又は該ロボッ トの全体重心加速度の水平成分又は該全体重心加速度の 床面平行成分) が前記許容範囲内に収まると共に前記偏差が 0に近づく ように決定する。 つまり、 口ポッ トの姿勢を所望の姿勢に保つようにし つつ、 制限対象量が許容範囲を逸脱しないように' (以下、 この条件を、 第 3発明と同様に、 姿勢 Z制限対象量条件ということがある) 目標運動 および目標床反力の瞬時値が決定される。 そして、 この場合、 前記許容 範囲は、 前記滑り判断手段の判断結果に応じて可変的に設定されるので. 前記第 3発明と同様、 実際のロボッ トの滑りの発生の有無に応じて即応 的に、 前記姿勢 制限対象量条件を満たすように目標運動及び目標床反 力の瞬時値を決定できる。 この結果、 実際の口ポッ トの滑りが発生して も、 該ロポッ トの姿勢を適切な姿勢に安定に保ちつつ、 直ちにその滑り を抑制することができる。 また、 この場合、 目標運動と目標床反力との 両者が前記姿勢 Z制限対象量条件によって規制されるので、 効果的に滑 りを抑制できる。
前記第 1〜第 4発明では、 例えば、 例えば、 次のようにして、 滑りの 発生を判断することができる。
すなわち、 前記滑り判断手段は、 少なくとも接地している脚体の先端 部の対地速度に基づき滑りの発生を判断する (第 5発明)。 この場合、 例えば該対地速度の絶対値が所定値よりも大きいときには、 滑りの発生 が有ると判断することができる。
あるいは、 前記滑り判断手段は、 少なくとも接地している脚体に作用 する実床反力の時間的変化率と該脚体の先端部の対地速度とに基づき、 該脚体の見かけばね定数を求める手段を備え、 少なくとも該見かけばね 定数に基づき滑りの発生を判断する (第 6発明)。 この場合、 例えば該 見かけばね定数が所定値よりも小さいときには、 滑りの発生が有ると判 断することができる。
あるいは、 前記滑り判断手段は、 少.なく とも接地している脚体に作用 する実床反力を、 所定周波数の近傍範囲に周波数通過特性を有するパン ドバスフィル夕に通したものに基づき滑りの発生を判断する (第 7発 明)。 この場合、 前記実床反力をバンドパスフィルタに通したものは、 いわゆる滑り振動が発生しているときの、 実床反力の振動成分に相当す るものとなる。 そして、 例えばこの振動成分の大きさ (絶対値) が所定 値よりも大きいときには、 滑り振動の発生が有ると判断することができ る。
なお、 滑りの発生の判断は、 第 5〜第 7発明のいずれでも行なうこと ができるが、 これらの第 5〜第 7発明の 2つ以上を組み合わせて滑りの 発生の判断を行なうようにしてもよい。 図面の簡単な説明
図 1は本発明の実施形態およびこれに関連する参考例における脚式移 動ロポッ トとしての 2足移動ロポッ トの全体構成を概略的に示す図、 図 2は図 1のロボッ トの脚体の先端部の構造を示す図、 図 3は図 1のロボ ッ 卜に備えた制御ュニッ 卜の構成を示すブロック図、 図 4は第 1参考例 における制御ユニッ トの機能的構成を示すブロック図である。 図 5は実 施形態および参考例で生成する走行歩容を説明するための図、 図 6は目 標床反力鉛直成分軌道の例を示すグラフ、 図 7は目標 Z M P軌道の X成 分および Y成分の例を示すグラフ、 図 8はロポッ トの上体並進モ一ドを 説明するための図、 図 9はロポッ トの上体傾斜モードを説明するための 図、 図 1 0は口ポッ トの上体ョ一回転モードを説明するための図、 図 1 1 ( a ) は口ポッ トの逆位相腕振りモードを平面視で説明するための図. 図 1 1 ( b ) は口ポッ トの逆位相腕振りモ一ドを側面視で説明するため の図、 図 1 2は実施形態で用いる動力学モデルを説明するための図であ る。 図 1 3は第 1参考例における歩容生成装置のメインルーチン処理を 示すフローチヤ一ト、 図 1 4はロポッ トの発散状態を説明するための図, 図 1 5は図 1 3の S 0 2 2のサブルーチン処理を示すフローチャート、 図 1 6は定常歩容と支持脚座標系とを説明するための図、 図 1 7は定常 歩容の上体軌道と支持脚座標系とを例示する図、 図 1 8は基準逆位相腕 振り角の例を示すグラフ、 図 1 9は定常歩容における目標床反力鉛直成 分軌道の設定例を示すグラフ、 図 2 0は定常歩容における床反力水平成 '分許容範囲の設定例を示すグラフ、 図 2 1は定常歩容における床反カモ ーメント鉛直成分許容範囲の設定例を示すグラフ、 0 2 2は定常歩容に おける目標 Z M P軌道の設定例を示すグラフである。 図 2 3は図 1 3の S 0 2 4のサブルーチン処理を示すフローチヤ一ト、 図 2 4は図 2 3の S 2 0 8のサブルーチン処理を示すフローチヤ一ト、 図 2 5は図 2 4の S 3 0 6のサブルーチン処理を示すフローチャート、 図 2 6は図 2 5の S 4 1 2のサブルーチン処理を示すフローチヤ一トである。 図 2 7は許 容範囲を考慮しない床反力水平成分の例を示すグラフ、 図 2 8は許容範 囲を考慮した床反力水平成分の例を示すグラフ、 図 2 9は上体傾斜角加 速度の例を示すグラフ、 図 3 0はロボッ 卜の上体傾斜角を復元するため の上体傾斜復元モーメント Z M P換算値の例を示すグラフ、 図 3 1は上 体傾斜復元モーメント Z M P換算値を加味した上体傾斜角加速度の例を 示すグラフ、 図 3 2は許容範囲を考慮しない床反カモ一メント鉛直成分 の例を示すグラフ、 図 3 3は許容範囲を考慮した床反力モーメント鉛直 成分の例を示すグラフ、 図 3 4は逆位相腕振りモーメントの例を示すグ ラフ、 図 3 5は図 3 4の逆位相腕振りモーメントに対応する逆位相腕振 り角加速度を示すグラフ、 図 3 6は逆位相腕振り角を復元するための逆 位相腕振り復元角加速度の例を示すグラフ、 図 3 7は図 3 6の逆位相腕 振り復元角加速度に対応する逆位相腕振り復元モーメントを示すグラフ. 図 3 8は図 3 3の床反力モーメント鉛直成分と図 3 7の逆位相腕振り復 元モーメントとを合成してなる床反力モーメント鉛直成分を示すグラフ である。 図 3 9は図 1 3の S 0 2 6のサブルーチン処理を示すフローチ ヤート、 図 4 0は今回歩容の床反力水平成分許容範囲の設定例を示すグ ラフ、 図 4 1は今回歩容の床反力モーメント鉛直成分許容範囲の設定例 を示すグラフ、 図 4 2は図 1 3の S 0 2 8のサブルーチン処理を示すフ ローチャート、 図 4 3は図 4 2の S 7 0 2のサブルーチン処理を示すフ ローチヤ一卜、 図 4 4は今回歩容の仮目標 Z M Pと Z M P修正量と修正 後の目標 Z M Pとの例を示すグラフ、 図 4 5は図 1 3の S 0 3 0のサブ ルーチン処理を示すフローチャート、 図 4 6は図 4 5の S 1 4 1 2のサ ブルーチン処理を示すフロ一チヤ一トである。 図 4 7は定常歩容と目標 歩容の上体位置軌道との関係を示すグラフ、 図 4 8は上体傾斜モード (腰中心の上体傾斜) の他の例を示す図、 図 4 9は動力学モデルの他の 例を説明するための図、 図 5 0は歩行歩容における目標床反力鉛直成分 の設定例を示す図、 図 5 1はロポッ トの走行歩容における上体鉛直方向 位置と床反力鉛直成分との関係を示す図、 図 5 2はロボットの歩行歩容 における上体鉛直方向位置と床反力鉛直成分との関係を示す図である。 図 5 3は第 2参考例における制御ュニッ トの機能的構成を示すブロック 図、 図 5 4は図 5 3に示す補償全床反力モーメント水平成分分配器の処 理を示すブロック図、 図 5 5は図 5 3.に示すモデル操作床反力モーメン ト鉛直成分決定器の処理を示すブロック図、 図 5 6は第 2参考例におけ る歩容生成装置のメインルーチン処理を示すフローチャート、 図 5 7は 図 5 6の S 3 0 3 2のサブルーチン処理を示すフローチャート、 図 5 8 は図 5 7の S 3 4 1 4のサブルーチン処理を示すフロ一チヤ一トである, 図 5 9は第 3参考例における制御ュニッ トの機能的構成を示すブロック 図、 図 6 0は第 2実施形態における歩容生成装置のメインルーチン処理 を示すフ口一チャート、 図 6 1は図 6 .0の S 2 0 3 4のサブル一チン処 理を示すフローチヤ一ト、 図 6 2は図 6 1の S 2 1 1 4のサブルーチン 処理を示すフローチャートである。 図 6 3は第 4参考例における歩容生 成装置の機能的構成を示すブロック図、 図 6 4は第 4参考例における Z M P許容範囲の設定例を示す図、 図 6 5は第 4参考例における歩容生成 装置のメインルーチン処理を示すフローチャート、 図 6 6は図 6 5の S 3 5 3 6の処理を示すブロック図、 図 6 7は図 6 6に示す上体水平位置 摂動用モデルを説明するための図、 図 6 8は図 6 6に示す上体姿勢角補 正用摂動モデルの説明するための図、 図 6 9は図 6 6に示す逆位相腕振 り角補正用摂動モデルを説明するための図、 図 7 0は図 6 6に示す逆位 相腕振り角補正用摂動モデルモーメント決定部の処理を示すプロック図 である。 図 7 1は第 5参考例における図 6 5の S 3 5 3 6の処理を示す ブロック図、 図 7 2は図 7 1に示す逆位相腕振り角補正用摂動モデルモ ーメント決定部の処理を示すブロック図である。 図 7 3は第 6参考例に おける歩容生成装置の機能的構成を示すブロック図、 図 7 4は図 7 3に 示す擬似順フルモデルの処理を示すブロック図である。 図 7 5は第 7参 考例における図 6 5の S 3 5 3 6の処理を示すブロック図である。 図 7 6は本発明の第 1実施形態における制御ュニッ トの機能的構成を示すブ ロック図、 図 7 7は第 1実施形態における歩容生成装置のメインルーチ ン処理を示すフローチヤ一ト、 図 7 8は図 7 7の S 2 3 3 4の処理を示 すフローチャート、 図 7 9は図 7 6に示す滑り判定部の処理を示すフロ —チヤ一ト、 図 8 0〜図 8 2はそれぞれ図 7 9の S 5 2 1 0、 S 5 2 1 2、 S 5 2 1 4のサブルーチン処理を示すフローチャート、 図 8 3は滑 り判定部の判定結果と、 許容範囲の低減率と、 床反力許容範囲との例を 示すグラフ、 図 8 4は第 5〜第 7参考例に関する変形態様の例を示すブ ロック図、 図 8 5は第 4参考例に関する逆位相腕振り角補正用摂動モデ ルモーメント決定部の処理の変形態様の例を示すブロック図である。 発明を実施するための最良の形態
以下、 添付図面を参照してこの発明の実施形態に係る脚式移動ロポッ トの制御装置を説明する。 尚、 脚式移動口ポッ トとしては 2足移動ロボ ッ 卜を例にとる。
まず、 図 1〜図 4 7を参照して、 本発明の脚式移動口ポッ トの制御装 置に関連する第 1参考例を説明しておく。 さらに、 図 5 3〜図 5 8を参 照して第 2参考例を、 図 5 9〜図 6 2を参照して第 3参考例を、 図 6 3 〜図 7 0を参照して第 4参考例を、 図 7 1及び図 7 2を参照して第 5参 考例を、 図 7 3及び図 7 4を参照して第 6参考例を、 図 7 5を参照して 第 7参考例を説明しておく。 後述する本発明の実施形態は、 その機構的 構成は第 1参考例と同一であり、 また、 口ポッ トの歩容生成処理および 制御処理の一部 (具体的には許容範囲設定処理) のみが第 1〜第 7参考 例のいずれかと相違するものである。 従って、 後述する実施形態の説明 では、 この第 1〜第 7参考例の説明をしばしば援用する。 補足すると、 図 1 と後述の図 2、 図 3並びに図 5〜図 1 2を参照して説明する事項は、 後述の実施形態においても同一である。
まず、 第 1参考例を説明する。 図 1は、 この第 1参考例に係る脚式移 動口ポッ トとしての 2足移動ロボッ トを全体的に示す概略図である。 図示の如く、 2足移動口ポッ ト (以下、 口ポッ トという) 1 は上体 (口ポッ ト 1の基体) 3から下方に延設された左右一対の脚体 (脚部リ ンク) 2, 2を備える。 両脚体 2 , 2は同一構造であり、 それぞれ 6個 の関節を備える。 その 6個の関節は上体 3側から順に、 股 (腰部) の回 旋 (回転) 用 (上体 3に対するョ一方向の回転用) の関節 1 0 R, 1 0 L (符号 R, Lはそれぞれ右側脚体、 左側脚体に対応するものであるこ とを意味する符号である。 以下同じ) .と、 股 (腰部) のロール方向 (X 軸まわり) の回転用の関節 1 2 R, 1 2 Lと、 股 (腰部) のピッチ方向 (Y軸まわり) の回転用の関節 1 4 R, 1 4 Lと、 膝部のピッチ方向の 回転用の関節 1 6 R, 1 6 Lと、 足首のピッチ方向の回転用の関節 1 8 R, 1 8 Lと、 足首のロール方向の回転用の関節 2 0 R, 2 0 Lとから 構成される。
各脚体 2の足首の 2つの関節 1 8 R (L ), 2 O R (L) の下部には、 各脚体 2の先端部を構成する足平 (足部) 2.2 R (L) が取着されると 共に、 両脚体 2 , 2の最上位には、 各脚体 2の股の 3つの関節 1 O R (L), 1 2 R (L), 1 4 R (L) を介して前記上体 3が取り付けられ ている。 上体 3の内部には、 詳細を後述する制御ユニッ ト 6 0などが格 納される。 なお、 図 1では図示の便宜上、 制御ユニッ ト 6 0を上体 3の 外部に記載している。
上記構成の各脚体 2においては、 股関節 (あるいは腰関節) は関節 1 O R (L), 1 2 R (L), 1 4 R (L) から構成され、 膝関節は関節 1 6 R (L) から構成され、 足首関節は関節 1 8 R (L), 2 0 R (L) から構成される。 また股関節と膝関節とは大腿リンク 2 4 R (L) で連 結され、 膝関節と足首関節とは下腿リンク 2 6 R (L) で連結される。 上体 3の上部の両側部には左右一対の腕体 5 , 5が取り付けられると 共に、 上体 3の上端部には頭部 4が配置される。 各腕体 5は、 3つの関 節 3 0 R (L), 3 2 R (L), 3 4 R (L) から構成された肩関節と、 関節 3 6 R (L) から構成された肘関節と、 関節 3 8 R (L) から構成 された手首関節と、 この手首関節に連結された手先部 4 0 R (L) とを 備えている。 なお、 頭部 4は、 本発明の要旨と直接的な関連を有しない ため詳細な説明を省略する。
上記の構成により、 各脚体 2の足平 2 2 R (L) は、 上体 3に対して 6つの自由度を与えられている。 そして、 口ポッ ト 1の歩行等の移動中 に、 両脚体 2 , 2を合わせて 6 * 2 = 1 2個 (この明細書で 「*」 はス カラに対する演算としては乗算を、 ベク トルに対する演算としては外積 を示す) の関節を適宜な角度で駆動することで、 両足平 2 2 R, 2 2 L の所望の運動を行うことができる。 これにより、 口ポッ ト 1は任意に 3 次元空間を移動することができる。 また、 各腕体 5は、 その肩関節、 肘 関節、 手首関節の回転によって、 腕振り等の運動を行うことができる。 · 図 1 に示す如く、 各脚体 2の足首関節 1 8 R (L), 2 0 R (L) の 下方には足平 2 2 R (L) との間に公知の 6軸力センサ 5 0が介装され ている。 該 6軸力センサ 5 0は、 各脚体 2の足平 2 2 R (L) の着地の 有無、 および各脚体 2に作用する床反力 (接地荷重) 等を検出するため のものであり、 該床反力の並進力の 3方向成分 F x, F y , F z並びに モーメントの 3方向成分 M X , My, M zの検出信号を制御ユニッ ト 6 0に出力する。 また、 上体 3には、 Z軸 (鉛直方向 (重力方向)) に対 する上体 3の傾斜角およびその角速度、 並びに Z軸回りの上体 3の回転 角 (ョ一角) およびその角速度を検出するための姿勢センサ 5 4が備え られ、 その検出信号が該姿勢センサ 5 4から制御ュニッ ト 6 0に出力さ れる。 この姿勢センサ 5 4は、 図示を省略する 3軸方向の加速度センサ および 3軸方向のジャィ口センサを備え、 これらのセンサの検出信号が 上体 3の姿勢角 (傾斜角およびョ一角) およびその角速度を検出するた めに用いられると共に、 口ポッ ト 1の自己位置姿勢を推定するために用 いられる。 また、 詳細構造の図示は省略するが、 口ポッ ト 1の各関節に は、 それを駆動するための電動モータ 6 4 (図 3参照) と、 その電動モ 一夕 6 4の回転量 (各関節の回転角) を検出するためのエンコーダ (口 一夕リエンコーダ) 6 5 (図 3参照) とが設けられ、 該エンコーダ 6 5 の検出信号が該エンコーダ 6 5から制御ュニッ ト 6 0に出力される。 さらに、 図 1では図示を省略するが、 ロボッ ト 1の適宜な位置にはジ ョィスティック (操作器) 7 3 (図 3参照) が設けられ、 そのジョイス ティック 7 3を操作することで、 直進移動しているロポッ ト 1を旋回さ せるなど、 口ポッ ト 1の歩容に対する要求を必要に応じて制御ュニッ ト 6 0に入力できるように構成されている。
図 2 は本第 1参考例における各脚体 2 の先端部分 (各足平 2 2 R ( L ) を含む) の基本構成を概略的に示す図である。 同図に示すように. 各足平 2 2 R ( L ) の上方には、 前記 6軸力センサ 5 0との間にばね機 構 7 0が装備されると共に、 足底 (各足平 2 2 R ( L ) の底面) にはゴ ムなどからなる足底弾性体 7 1が貼られている。 これらのばね機構 7 0 及び足底弾性体 7 1によりコンプライアンス機構 7 2が構成されている < ばね機構 7 0は詳細は後述するが、 足平 2 2 R ( L ) の上面部に取り付 けられた方形状のガイ ド部材 (図示省略) と、 足首関節 1 8 R ( L ) (図 2では足首関節 2 O R ( L ) を省略している) および 6軸力センサ 5 0側に取り付けられ、 前記ガイ ド部材に弹性材 (ゴムやばね) を介し て微動自在に収納されるピストン状部材 (図示省略) とから構成されて いる。
図 2に実線で表示された足平 2 2 R ( L ) は、 床反力を受けていない ときの状態を示している。 各脚体 2が床反力を受けると、 コンプライア ンス機構 7 2のばね機構 7 0と足底弾性体 7 1 とがたわみ、 足平 2 2 R (L) は図中に点線で例示したような位置姿勢に移る。 このコンプライ ンァス機構 7 2の構造は、 例えば本出願人が先に提案した特開平 5— 3 0 5 5 8 4号公報に詳細に説明されている如く、 着地衝撃を緩和するた めだけでなく、 制御性を高めるためにも重要なものである。
図 3は制御ュニッ ト 6 0の構成を示すブロック図である。 該制御ュニ ッ ト 6 0はマイクロコンピュータにより構成されており、 C PUからな る第 1の演算装置 9 0及び第 2の演算装置 9 2、 AZD変換器 8 0、 力 ゥン夕 8 6、 D/A変換器 9 6、 RAM 8 4 , ROM 9 4、 並びにこれ らの間のデータ授受を行うバスライン 8 2を備えている。 この制御ュニ ッ ト 6 0では、 各脚体 2の 6軸力センサ 5 0、 姿勢センサ 5 4 (加速度 センサおよびレートジャィ口センサ)、 ジョイスティ ック 7 3等の出力 信号は AZD変換器 8 0でデジタル値に変換された後、 バスライン 8 2 を介して RAM 8 4に送られる。 またロポッ ト 1の各関節のエンコーダ 6 5 (口一夕リーエンコーダ) の出力は、 カウン夕 8 6を介して RAM 84に入力される。
前記第 1の演算装置 9 0は後述の如く 目標歩容を生成すると共に、 関 節角変位指令 (各関節の変位角もしくは各電動モータ 6 4の回転角の指 令値) を算出し、 RAM 8 4に送出する。 また第 2の演算装置 9 2は R AM 84から関節角変位指令と、 前記エンコーダ 6 5の出力信号に基づ いて検出された関節角の実測値とを読み出し、 各関節の駆動に必要な操 作量を算出して DZ A変換器 9 6とサーポアンプ 6 4 aとを介して各関 節を駆動する電動モータ 6 4に出力する。
図 4は、 この第 1参考例に係る脚式移動ロポッ 卜の制御装置の機能的 構成を全体的に示すブロック図である。 この図 4中の 「実口ポッ ト」 の 部分以外の部分が制御ュニッ ト 6 0が実行する処理機能 (主として第 1 の演算装置 9 0及び第 2の演算装置 9 2の機能) によって構成されるも のである。 なお、 以下の説明では、 脚体 2および腕体 5の左右を特に区 別する必要がないときは、 前記符号 R , Lを省略する。
以下説明すると、 制御ユニッ ト 6 0は、 口ポッ ト 1の目標歩容を自在 かつリアルタイムに生成して出力する歩容生成装置 1 0 0を備えている, 該歩容生成装置 1 0 0は、 その機能によって、 本願発明の各手段を構成 するものである。 この歩容生成装置 1 0 0が出力する目標歩容は、 目標 上体位置姿勢軌道 (上体 3の目標位置及び目標姿勢の軌道)、 目標足平 位置姿勢軌道 (各足平 2 2の目標位置及び目標姿勢の軌道)、 目標腕姿 勢軌道 (各腕体 5の目標姿勢の軌道)、 目標全床反力中心点 (目標 Z M P ) 軌道、 目標全床反力軌道から構成される。 なお、 脚体 2や腕体 5以 外に上体 3に対して可動な部位を備える場合には、 その可動部位の目標 位置姿勢軌道が目標歩容に加えられる。
ここで、 上記歩容における 「軌道」 は時間的変化のパターン (時系列 パターン) を意味し、 以下の説明では、 「軌道」 の代わりに 「パター ン」 と称することもある。 また、 「姿勢」 は空間的な向きを意味する。 具体的には、 例えば上体姿勢は Z軸 (鉛直軸) に対する口一ル方向 (X 軸まわり) の上体 3の傾斜角とピッチ方向 (Y軸まわり) の上体 3の傾 斜角とョー方向 (Z軸まわり) の上体 3の回転角 (ョ一角) とで表され, 足平姿勢は各足平 2 2に固定的に設定された 2軸の空間的な方位角で表 される。 本明細書では、 上体姿勢は上体姿勢角ということもある。 また、 上体姿勢のうち、 鉛直方向に対する姿勢を上体姿勢傾斜もしくは上体姿 勢傾斜角ということもある。
尚、 以下の説明では、 誤解を生じるおそれがない場合には、 しばしば 「目標」 を省略する。 また、 歩容のうちの、 床反力に係わる構成要素以 外の構成要素、 すなわち足平位置姿勢、 上体位置姿勢等、 口ポッ ト 1の 運動に係わる歩容を総称的に 「運動」 という。 また、 各足平 2 2に作用 する床反力 (並進力及びモーメントからなる床反力) を 「各足平床反 力」 と呼び、 口ポッ ト 1の全て ( 2つ) の足平 2 2 R, 2 2 Lについて の 「各足平床反力」 の合力を 「全床反力」 という。 ただし、 以下の説明 においては、 各足平床反力はほとんど言及しないので、 特に断らない限 り、 「床反力」 は 「全床反力」 と同義として扱う。
目標床反力は、 一般的には、 作用点とその点に作用する並進力及びモ —メントによって表現される。 作用点はどこにとっても良いので、 同一 の目標床反力でも無数の表現が考えられるが、 特に目標床反力中心点 (全床反力の中心点の目標位置) を作用点にして目標床反力を表現する と、 目標床反力のモーメント成分は、 鉛直成分 (鉛直軸 (Z軸) まわり のモーメント) を除いて零になる。 換言すれば、 目標床反力中心点まわ りの目標床反力のモーメントの水平成分 (水平軸 (X軸及び Y軸) 回り のモーメント) は零になる。
· 尚、 動力学的平衡条件を満足する歩容では、 ロボッ ト 1の目標運動軌 道から算出される Z M P (目標運動軌道から算出される慣性力と重力と の合力がその点まわりに作用するモーメントが、 鉛直成分を除いて零に なる点) と目標床反力中心点は一致することから、 目標床反力中心点軌 道の代わりに目標 Z M P軌道を与えると言っても同じ'ことである (詳細 は、 本願出願人による P C T公開公報 WOZ02Z40224等を参照)。
このような背景から、 上記 P C T公開公報 WOZ02Z40224の明細書 では目標歩容を、 次のように定義していた。
a ) 広義の目標歩容とは、 1歩ないしは複数歩の期間の目標運動軌道と その目標床反力軌道との組である。
b ) 狭義の目標歩容とは、 1歩の期間の目標運動軌道とその Z M P軌道 との組である。 c )一連の歩容は、 いくつかの歩容がつながったものとする。
歩行においては、 本出願人が先に特開平 1 0— 8 6 0 8 0号公報で提 案した上体高さ決定手法によってロポッ ト 1の上体 3の鉛直位置 (上体 高さ) が決定されると、 並進床反力鉛直成分は従属的に決定される。 さ らに、 目標歩容の運動による慣性力と重力との合力が目標 Z M Pまわり に発生するモーメン卜の水平成分が零になるように口ポッ ト 1の上体水 平位置軌道を決定することで、 並進床反力水平成分も決定される。 この ため、 P C T公開公報 WOZ 02Z40224の明細書では、 目標歩容の床反 力に関して明示的に設定すべき物理量としては、 目標 Z M Pだけで十分 であった。 したがって、 狭義の目標歩容の定義としては、 上記の b ) で 十分であった。 それに対し、 本第 1参考例で説明する口ポッ ト 1の走行 歩容 (詳細は後述する) においては、 床反力鉛直成分 (並進床反力鉛直 成分) も制御上重要である。 このため本発明では、 この床反力鉛直成分 の目標軌道を明示的に設定した上で、 ロボッ ト 1の目標上体鉛直位置等 の軌道を決定する。 そこで、 本明細書では、 狭義の目標歩容の定義とし て、 次の b ' ) を用いる。
b ' ) 狭義の目標歩容とは、 1歩の期間の目標運動軌道と、 その目標 Z M P軌道と目標並進床反力鉛直成分軌道とを少なくとも含む目標床反力 軌道との組である。
この明細書では以降、 理解を容易にするために、 特にことわらない限 り、 目標歩容は上記 b ' ) の狭義の目標歩容の意味で使用する。 この場 合、 目標歩容の 「 1歩」 は、 口ポッ ト 1の片方の脚体 2が着地してから もう一方の脚体 2が着地するまでの意味で使用する。 補足すると、 本明 細書の参考例および実施形態では、 目標歩容は 1歩の期間分の歩容の意 味で使用するが、 それは必ずしも 1歩の期間分のものである必要はなく、 複数歩分、 あるいは 1歩よりも短い (例えば半歩など) の期間分の歩容 であってもよい。 尚、 以下の説明では、 「床反力鉛直成分」 は 「並進床 反力鉛直成分」 を意味するものとし、 床反力のうちのモーメントの鉛直 成分 (鉛直軸回り成分) は、 「モーメント」 という用語を用いて 「床反 力鉛直成分」 と区別をする。 同様に、 「床反力水平成分」 は 「並進床反 力水平成分」 を意味するものとする。
また、 歩容における両脚支持期とは言うまでもなく、 ロボッ ト 1がそ の自重を両脚体 2, 2で支持する期間、 片脚支持期とはいずれか一方の みの脚体 2でロボッ ト 1の自重を支持する期間、 空中期とは両脚体 2 , 2が床から離れている (空中に浮いている) 期間を言う。 片脚支持期に おいてロボッ ト 1の自重を支持しない側の脚体 2を 「遊脚」 と呼ぶ。 尚. 本第 1参考例で説明する走行歩容では、 両脚支持期は無く、 片脚支持期
(着地期) と空中期とが交互に繰り返される。 この場合、 空中期では両 脚体 2 , 2 とも、 口ポッ ト 1の自重を支持しないこととなるが、 該空中 期の直前の片脚支持期において遊脚であった脚体 2、 支持脚であった脚 体 2をそれぞれ該空中期においても遊脚、 支持脚と呼ぶ。
図 5に示す走行歩容を例にして、 歩容生成装置 1 0 0が生成する目標 歩容の概要を説明する。 なお、 歩容に関するその他の定義および詳細は, 先に本願出願人が提案した特開平 1 0 — 8 6 0 8 1号公報にも記載され ているので、 以下では、 特開平 1 0— 8 6 0 8 1号公報に記載されてい ない内容を主に説明する。
まず、 図 5に示す走行歩容を説明する。 この走行歩容は、 人間の通常 的な走行歩容と同様の歩容である。 この走行歩容では、 口ポッ ト 1の左 右いずれか一方のみの脚体 2 (支持脚) の足平 2 2が着地 (接地) する 片脚支持期と、 両脚体 2, 2が空中に浮く空中期とが交互に繰り返され る。 図 5の 1番目の状態は片脚支持期の開始時 (初期) の状態、 2番目 の状態は片脚支持期の中間時点の状態、 3番目の状態は片脚支持期に続 く空中期の開始時 (片脚支持期の終了時) の状態、 4番目の状態は空中 期の中間時点の状態、 5番目の状態は空中期の終了時 (次の片脚支持期 の開始時) の状態を示している。
この走行歩容では、 ロボッ ト 1は、 図 5の 1番目の状態で示すように. 片脚支持期の開始時において支持脚 (ロボッ ト 1の進行方向前側の脚体 2 ) 側の足平 2 2のかかとで着地する。 続いて、 図 5の 2番目の状態で 示すように、 口ポッ ト 1は、 着地した足平 2 2 (支持脚側の足平 2 2 ) の底面のほぼ全面を着地させた後、 図. 5の 3番目の状態で示すように、 その支持脚側の足平 2 2 (図 5の 3番目の状態におけるロポッ ト 1の進 行方向後側の脚体 2の足平 2 2 ) のつま先で床を蹴って空中に飛び上が る。 これより片脚支持期が終了すると共に空中期が開始する。 尚、 片脚 支持期における遊脚は、 図 5の 1番目の状態で示すように、 片脚支持期 の開始時では、 支持脚の後側に存在するが、 図 5の 2番目及び 3番目の 状態で示すように次の着地予定位置に向かって支持脚の前側に振り出さ れる。 次いで、 図 5の 4番目の状態で示す空中期を経た後、 口ポッ ト 1 は、 遊脚 (空中期の開始直前の片脚支持期で遊脚となっていた脚体 2 ) の足平 2 2のかかとで着地し、 次の片脚支持期が開始される。
図 5の走行歩容を考慮しつつ、 前記歩容生成装置 1 0 0が生成する目 標歩容の基本的な概要を説明する。 詳細は後述するが、 歩容生成装置 1 0 0が目標歩容を生成するとき、 遊脚側の足平 2 2の着地位置姿勢 (着 地予定位置姿勢) や着地時刻 (着地予定時刻) 等の目標歩容生成用の基 本的な要求値 (要求パラメ一夕) が、 前記ジョイスティック 7 3の所要 の操作等に応じて歩容生成装置 1 0 0に与えられる。 そして、 歩容生成 装置 1 0 0は、 その要求パラメ一夕を用いて目標歩容を生成する。 より 詳しく言えば、 歩容生成装置 1 0 0は、 上記要求パラメ一夕に応じて、 目標歩容の目標足平位置姿勢軌道、 目標床反力鉛直成分軌道等、 目標歩 容の一部の構成要素を規定するパラメ一夕 (歩容パラメ一夕という) を 決定した上で、 その歩容パラメ一夕を用いて目標歩容の瞬時値を逐次決 定し、 該目標歩容の時系列パターンを生成する。
この場合、 目標足平位置姿勢軌道 (より詳しくは、 足平の位置及び姿 勢の空間的な各成分 (X軸成分等) の目標軌道) は、 例えば本出願人が 特許第 3 2 3 3 4 5 0号にて提案した有限時間整定フィル夕を用いて各 足平 2 2毎に生成される。 この有限時間整定フィルタは、 可変時定数の 1次遅れフィル夕、 すなわち、 伝達関数が 1 / ( 1 + て s ) の形で表さ れるフィル夕 ( ては可変の時定数。 以下、 この'フィル夕を単位フィル夕 という) を複数段 (本第 1参考例では 3段以上)、 直列に接続したもの であり、 所望の指定時刻に指定値に到達するような軌道を生成 · 出力す ることができるものである。 この場合、 各段の単位フィル夕の時定数て は、 いずれも、 有限時間整定フィル夕の出力生成を開始してから、 上記 指定時刻までの残時間に応じて逐次可変的に設定される。 より詳しくは, 該残時間が短くなるに伴いての値が所定の初期値 ( > 0 ) から減少され ていき、 最終的には、 該残時間が 0になる指定時刻にて、 て の値が 0に なるように設定される。 そして、 有限時間整定フィルタには、 前記指定 値 (より詳しくは、 有限時間整定フィル夕の出力の初期値から前記指定 値への変化量) に応じた高さのステップ入力が与えられる。 このような 有限時間整定フィルタは、 指定時刻にて指定値に達するような出力が生 成されるだけでなく、 指定時刻における有限時間整定フィルタの出力の 変化速度を 0もしくはほぼ 0にすることができる。 特に、 単位フィルタ を 3段以上 ( 3段でよい)、 接続した場合には、 有限時間整定フィル夕 の出力の変化加速度 (変化速度の微分値) をも 0もしくはほぼ 0にする ことができる。
尚、 上記のように有限時間整定フィル夕により生成される目標足平位 置姿勢軌道は、 床面に固定された後述の支持脚座標系での各足平 2 2の 目標位置姿勢軌道である。
上述のように生成される目標足平位置姿勢軌道は、 各足平 2 2の位置 が、 その初期接地状態 (目標歩容の初期時刻の状態) から着地予定位置 に向かって徐々に加速しながら移動を開始するように生成される。 そし て、 該目標足平位置姿勢軌道は、 最終的に着地予定時刻までに徐々に位 置の変化速度を 0またはほぼ 0にまで減速し、 着地予定時刻にて着地予 定位置に到達して停止するように生成される。 このため、 各足平 2 2の 着地瞬間における対地速度 (床に固定された支持脚座標系での各足平 2 2の位置の変化速度) が 0またはほぼ 0になる。 したがって、 走行歩容 において同時に全脚体 2 , 2が空中に存在する状態 (空中期での状態) から着地しても、 着地衝撃が小さくなる。
前記走行歩容においては、 口ポッ ト 1に作用する重力によって空中期 後半から上体 3の鉛直速度は下向きになり、 着地時でも下向きのままで ある。 したがって、 上記のように各足平 2 2.の着地瞬間における対地速 度が 0またはほぼ 0になるように目標足平位置姿勢軌道を生成すると共 に、 後述する如く動力学的平衡条件を満たすように上体 3の目標位置姿 勢軌道を生成したとき、 着地直前において、 上体 3に対する遊脚側の足 平 2 2の相対速度は、 上向きになる。 すなわち、 走行歩容の着地瞬間で は、 ロボッ ト 1の目標歩容は遊脚側の脚体 2 2を上体 3側に引っ込めな がら着地するような歩容となる。 言い換えれば、 本第 1参考例での目標 歩容では、 ロボッ ト 1は、 着地瞬間において、 遊脚側の足平 2 2の対地 速度が 0またはほぼ 0になるように、 上体 3から見て該足平 2 2を引き 上げるようにして着地する。 これによつて、 着地衝撃は小さくなり、 着 地衝撃が過大になるのを防止するようにしている ώ
また、 本第 1参考例では、 有限時間整定フィルタは、 単位フィル夕を 3段以上 (例えば 3段)、 直列に接続したものであるため、 着地予定時 刻までに各足平 2 2の速度 (足平位置の変化速度) が 0またはほぼ 0に なるだけでなく、 各足平 2 2は、 その加速度も着地予定時刻にて 0また はほぼ 0になって停止する。 つまり、 着地瞬間における対地加速度も 0 またはほぼ 0になる。 したがって、 着地衝撃がより一層小さくなる。 特 に、 実際のロボッ ト 1の着地時刻が目標の着地時刻からずれても、 衝撃 があまり増大しなくなる。 補足すると、 着地予定時刻にて各足平 2 2の 対地速度を 0またはほぼ 0にする上では、 有限時間整定フィルタの単位 フィルタの段数は 2段でもよいが、 この場合には、 着地予定時刻での各 足平 2 2の加速度は一般には 0にならない。
尚、 足平姿勢に関しては、 各足平 2 2が着地予定時刻にてその踵で着 地した後、 該足平 2 2の底面のほぼ全面が床に接地するまで動き続ける < このため、 該足平 2 2の底面のほぼ全面が床に接地する時刻を前記指定 時刻に設定して、 前記有限時間整定フィル夕により足平姿勢軌道が生成 される。
また、 本第 1参考例では、 有限時間整定フィルタを用いて足平位置軌 道を生成したが、 着地予定時刻での足平位置の変化速度 (足平位置の時 間微分値) が 0またはほぼ 0になるように、 さらには、 該着地予定時刻 での足平位置の変化加速度 (変化速度の時間微分値) が 0またはほぼ 0 になるように設定された多項式などの関数を用いて目標足平位置軌道を 生成するようにしても良い。 このことは、 目標足平姿勢軌道の生成に関 しても同様である。 但し、 該目標足平姿勢軌道の生成に関しては、 上述 の如く、 各足平 2 2の底面のほぼ全面が床に設置する時刻にて、 各足平 2 2の姿勢の変化速度、 さらにはその変化加速度が 0またはほぼ 0にな るように多項式などの関数が設定される。 .
目標床反力鉛直成分軌道は、 例えば図 6のように設定される。 本第 1 参考例では、 走行歩容における目標床反力鉛直成分軌道の形状 (詳しく は片脚支持期での形状) は、 台形状 (床反力鉛直成分の増加側に凸の形 状) に定められており、 その台形の高さ、 折れ点の時刻を目標床反力鉛 直成分軌道を規定する歩容パラメ一夕として、 それらの歩容パラメータ (床反力鉛直成分軌道パラメータ) が決定される。 尚、 走行歩容の空中 期では、 目標床反力鉛直成分は定常的に 0に設定される。 この例のよう に、 目標床反力鉛直成分軌道は、 実質的に連続になるように (値が不達 続にならないように) 設定するのが良い。 これは床反力を制御する際の ロボッ ト 1の関節の動作を滑らかにするためである。 尚、 「実質的に連 続」 というのは、 アナログ的に連続な軌道 (真の意味での連続な軌道) を離散時間系でデジタル表現したときに必然的に生じる値の飛びは、 該 軌道の連続性を失わせるものではないということを意味するものである, 目標 Z M P軌道は次のように設定される。 図 5の走行歩容においては. 前記したように支持脚側足平 2 2のかかとで着地し、 次にその支持脚側 足平 2 2のつま先で蹴って空中に飛び上がり、 最後に遊脚側足平 2 2の かかとで着地する。 したがって、 片脚支持期での目標 Z M P軌道は、 図 7の上段図に示すように、 支持脚側足平 2 2のかかとを初期位置として, 次に支持脚側足平 2 2の底面のほぼ全面が接地する期間において該足平 2 2の前後方向の中央に移動し、 その後、 離床時までに支持脚側足平 2 2のつまさきに移動するように設定される。 ここで、 図 7の上段図は、 X軸方向 (前後方向) の目標 Z M P軌道を示すものであり、 図 7の下段 図は Y軸方向 (左右方向) の目標 Z M P軌道を示すものである。 尚、 片 脚支持期における Y軸方向の目標 Z M P軌道は、 図 7の下段図に示すよ うに、 Y軸方向での支持脚側脚体 2の足首関節の中心位置と同じ位置に 設定される。
走行歩容では、 さらに片脚支持期の終了後、 両脚体 2, 2が床から離 れ、 床反力鉛直成分が 0になる。 床反力鉛直成分が 0の時、 すなわち空 中期には、 ロボッ ト 1の全体重心は自由落下運動をし、 全体重心まわり の角運動量変化は零である。 この時、 床の任意の点において、 口ポッ ト 1に作用する重力と慣性力との合力のモーメントは 0であるので、 目標 ZMPは不定である。 すなわち、 床のいずれの点も、 「重力と慣性力と の合力が作用するモーメン卜の水平成分が 0である作用点」 という ZM Pの条件を満たす。 言いかえれば、 任意の点に目標 Z MPを設定しても 上記合力が目標 Z MP回りに作用する.モ一メントの水平成分が 0である という動力学的平衡条件を満足する。 したがって、 目標 ZMPを不連続 に設定しても構わない。 例えば、 空中期では、 目標 Z MPを、 離床時 (片脚支持期の終了時) の目標 Z MP位置から移動しないように設定し. 空中期終端において、 着地時の目標 ZMP位置に不連続 (ステップ状) に移動するように該目標 Z MP軌道を設定しても構わない。 しかし本第 1参考例では、 図 7の上段図に示すように、 空中期における目標 Z MP 軌道の X軸方向位置は、 次の遊脚側脚体 2の着地までに支持脚側足平 2 2のつまさきから遊脚側足平 2 2のかかとの着地位置まで連続.的に移動 するようにした。 また、 図 7の下段図に示すように、 空中期における目 標 ZMP軌道の Y軸方向位置は、 次の遊脚側脚体 2の着地までに支持脚 側脚体 2の足首関節の中心の Y軸方向位置から遊脚側脚体 2の足首関節 の中心の Y軸方向位置まで連続的に移動するようにした。 すなわち、 歩 容の全期間において目標 ZMP軌道を連続 (実質的に連続) にした。 そ して、 後述するように、 目標 Z MPまわりの重力と慣性力との合力のモ 一メント (鉛直成分を除く) が零になるように目標歩容を生成する (よ り具体的には目標上体位置姿勢軌道を調整する) ようにした。 モデルの 近似誤差を考慮すると、 生成された歩容が滑らかになるようにするため に、 空中期においても目標 ZMP軌道を連続 (実質的に連続) にしてお くのが望ましい。 但し、 本第 1参考例で用いる後述の動力学モデルでは. 目標 Z M Pの位置によらずに、 目標 Z M P回りのモ一メン卜の水平成分 をある値 (その値は本第 1参考例では 0であるが、 後述の実施形態では 必ずしも 0ではない) にするような目標歩容を一義的に生成できるので. 必ずしも目標 Z M Pを連続にしておく必要はない。
尚、 本第 1参考例では、 図 7に示したような目標 Z M P軌道の折れ点 の位置や時刻が、 Z M P軌道パラメ一夕 (目標 Z M P軌道を規定するパ ラメ一夕) として設定される。 また、 .上記した Z M P軌道の 「実質的に 連続」 の意味は、 前記床反力鉛直成分軌道の場合と同様である。
Z M P軌道パラメ一夕は、 安定余裕が高く、 かつ急激な変化をしない ように決定される。 ここで、 ロボッ ト 1の接地面を含む最小の凸多角形 (いわゆる支持多角形) の中央付近に目標 Z M Pが存在する状態を安定 余裕が高いと言う (詳細は特開平 1 0— 8 6 0 8 1号公報を参照)。 図 7の目標 Z M P軌道はこのような条件を満たすように設定したものであ る。
また、 目標上体位置姿勢、 目標足平位置姿勢および後述の基準上体姿 勢はグローバル座標系で記述される。 グローバル座標系は床に固定され た座標系である。 グローバル座標系としては、 より具体的には、 後述す る支持脚座標系が用いられる。
本第 1参考例では、 歩容生成装置 1 0 0は、 目標上体姿勢だけでなく , 基準上体姿勢も生成する。 この基準上体姿勢は、 歩容に対する要求 (歩 容生成装置 1 0 0に対する行動計画部などの装置または外部 (前記ジョ ィスティック 7 3等) からの要求) にそのまま従って生成される上体姿 勢である。
目標上体姿勢 (以降、 「基準」 が付いていない場合には、 目標上体姿 勢を表す) は、 長期的には基準上体姿勢に追従するかまたは一致するよ うに生成される。 . 目標上体姿勢は、 歩行においては、 本願出願人による P C T公開公報 WO/02/40224 の明細書に記載した実施形態のごとく通常、 常に基準 上体姿勢に一致させておけば良い。 P C T公開公報 WOZ 02Z40224で は、 基準上体姿勢という概念は記載されていないが、 目標上体姿勢パ夕 ーンを、 明示的かつ優先的に与えていたので、 基準上体姿勢に目標上体 姿勢が常に一致していることと同じことである。
しかし、 走行など空中期がある歩容ゃ低摩擦床面での歩行においては, 単に上体水平加速度等を調整するだけでは、 目標歩容の床反力水平成分 と床反力モーメント鉛直成分とが許容範囲以内 (あるいは摩擦限界以 内) に存在するようにしつつ動力学的平衡条件を満足することができな い。
そこで、 本第 1参考例においては、 目標上体姿勢を必要に応じて基準 上体姿勢から故意にずらすこととした。 より具体的には、 以下に説明す る運動モードを複合的に発生させることにより、 目標歩容の床反力水平 成分や床反力モーメント鉛直成分が許容範囲以内 (あるいは摩擦限界以 内) に存在しつつ動力学的平衡条件を満足させるようにした。
図 8のように、 口ポッ ト 1のある運動状態から、 上体水平加速度だけ を摂動 (微小変化) させると、 口ポッ ト 1の全体重心水平加速度と全体 重心まわりの角運動量が摂動する。 すなわち、 上体水平加速度の摂動は、 それによつて発生するロポッ ト 1の慣性力と重力との合力に対して動力 学的に釣り合う床反力鉛直成分を摂動させずに (口ポッ ト 1の全体重心 鉛直加速度を摂動させずに)、 目標 Z M Pまわりの床反力モーメント水 平成分 (水平軸まわり成分) と床反力水平成分とを摂動させる。 このよ うに口ポッ ト 1の上体水平加速度を摂動させる運動モードを上体並進モ 一ドと呼ぶ。 言いかえると、 床反力鉛直成分を変化させずに、 目標 Z M Pまわりの 床反カモ一メント水平成分と床反力水平成分とを変化させる運動を上体 並進モードと呼ぶ。 尚、 上体並進モードでは、 床反力モーメント鉛直成 分 (鉛直軸まわり成分) も摂動するが、 ここではこの点に注目しない。
この時の単位加速度当たりの床反力モ一メント水平成分の変化を Δ Μ P、 単位加速度当たりの床反力水平成分の変化を A Fp とする。 図 8に 示す状況で上体 3を前方に水平加速すると、 Δ Μ ρと A Fp は図 8に示 す矢印の向きに作用する。
感覚的に判り易くするために、 運動によって発生する慣性力と重力と の合力に釣り合う床反力を用いて表現したが、 慣性力と重力との合力を 用いて表現した方が、 理論的には的確である。 なお、 上記合力と床反力 とは、 互いに大きさが同じで向きが逆になつている。
それに対し、 図 9のように、 口ポッ ト 1のある運動状態から、 ある点 P rまわりに上体傾斜角加速度 (上体 3の傾斜角の角加速度) を摂動さ せると、 口ポッ ト 1の全体重心は摂動せずに、 全体重心まわりの角運動 量 (鉛直軸まわり成分を除く) が摂動する。 すなわち、 点 P rまわりの 上体傾斜角加速度の摂動は、 床反力鉛直成分と床反力水平成分とを摂動 させずに、 目標 Z M Pまわりの床反力モーメント水平成分を摂動させる。 このように口ポッ ト 1の上体傾斜角加速度を摂動させる運動モードを上 体傾斜モードと呼ぶ。
言いかえると、 床反力鉛直成分と床反力水平成分を変化させずに、 目 標 Z M Pまわりの床反力モーメント水平成分を変化させる運動を上体傾 斜モードと呼ぶ。
この時の単位角加速度当たりの床反カモ一メント水平成分の変化を△ M r、 単位角加速度当たりの床反力水平成分の変化を r とする。 Δ F rは零である。 図 9に示す状況で上体 3が前傾するように上体傾斜角 の角加速度を発生させると、 Δ Μ Γは図 9に示す矢印の向きに作用する c また、 図 1 0のように、 口ポッ ト 1のある運動状態から、 ある点 Pq まわりに上体ョ一角加速度 (上体 3の鉛直軸まわりの回転角加速度) を 摂動させると、 口ポッ ト 1の全体重心は摂動せずに、 全体重心まわりの 角運動量鉛直成分が摂動する。 ところで、 ロボッ ト 1の全体重心が摂動 しなければ、 角運動量鉛直成分の摂動は、 作用点に依存しない。 したが つて、 点 Pq まわりの上体ョ一角加速度の摂動は、 床反力鉛直成分、 床 反力水平成分および床反カモ一メン卜水平成分を摂動させずに、 目標 Z M Pまわりの床反力モーメント鉛直成分を摂動させる。 このようにロボ ッ ト 1の上体ョ一角加速度を摂動させる運動モ一ドを上体ョ一回転モー ドと呼ぶ。
言いかえると、 床反力鉛直成分、 床反力水平成分および床反力モーメ ント水平成分を変化させずに、 目標 Z M Pまわりの床反力モーメント鉛 直成分を変化させる上体運動を上体ョ一回転モードと呼ぶ。
この時の単位角加速度当たりの床反カモ一メント鉛直成分の変化を Δ Mbz、 単位角加速度当たりの ^反力水平成分の変化を A Fb とする。 Δ Fb は零である。 図 1 0に示す状況で上体 3を矢印の向きに単位角加速 度で回転させる (角加速度 /3 b=l で回転させる) と、 A Mbz は図 1 0 に示す矢印の向きに作用する。
尚、 図 1 0に示す運動では、 両腕体 5, 5の手先位置が支持脚座標系 (床に固定された座標系) から見て変わらないように、 上体 3を回転さ せたが、 上体 3に対する腕体 5の相対位置姿勢を変えずに、 上体 3と共 に腕体 5を回転させる運動を上体ョ一回転モードと定義しても良い。 た だし、 この場合には、 後述する運動方程式に若干変更が必要である。
また、 図 1 1 ( a ), ( b ) のように、 口ポッ ト .1のある運動状態から、 両腕体 5, 5の先端を互いに前後に逆方向に摂動させると、 口ポッ ト 1 の全体重心は摂動せずに、 全体重心まわりの角運動量鉛直成分が摂動す る。 以降、 この運動モードを逆位相腕振りモードと呼ぶ。 言い換えると 床反力鉛直成分、 床反力水平成分および床反カモ一メント水平成分を摂 動させずに、 目標 Z MPまわりの床反力モーメント鉛直成分を摂動させ る腕振り運動モードを逆位相腕振りモ一ドと呼ぶ。
右腕体 5 Rを前側に単位量移動させ、 左腕体 5 Lを後ろに単位量移動 させる動作を、 単位角度の逆位相腕振りと呼ぶ。 図 1 1 ( a), (b) は. 逆位相腕振り角度が Θ azの状態を表す。
逆位相腕振りモ一ドの単位角加速度当たりの床反力モーメント鉛直成 分の変化を AMaz、 単位角加速度当たりの床反力水平成分の変化を厶 Fa とする。 AFaは零である。 図 1 1 ( a), (b) に示す状況で右腕体 5 Rを前側に加速し、 左腕体 5 Lを後ろ側に加速する (角加速度 /3 a> 0 で振る) と、 図 1 1 ( a) に示す矢印の向き (鉛直軸の正の向き) に 床反力モ一メント鉛直成分 Mazが作用する。
· 次に、 本第 1参考例に用いられる口ポッ ト 1の動力学モデルについて 説明する。 本第 1参考例では単純化された (近似された) 以下に示す動 力学モデルを用いる。 ただし、 以下に示す動力学モデルに関しては、 キ ネマテイクスモデル (関節、 リンクの構造や寸法を表すモデルであり、 言い換えると、 関節変位とリンクの位置姿勢との関係を表すモデルであ る。) も必要である。
図 1 2は、 本第 1参考例に用いられるロポッ ト 1の動力学モデルであ る。 図示の如く、 この動力学モデルは、 口ポッ ト 1の各脚体 2にそれぞ れ対応する 2つの質点 2 m, 2m、 及び上体 3に対応する質点 3 mから なる合計 3質点と、 イナーシャがあって質量のない 4つのフライホイ一 ル F Hx、 FHy、 F Hbz、 F Haz とから構成されるモデルである。 フ ライホイール F Hx、 F Hy、 F Hbz、 F Haz は、 それぞれ X軸 (前後 方向軸)、 Y軸 (左右方向軸)、 Ζ軸 (鉛直軸)、 Ζ軸 (鉛直軸) の回り に回転可能なものである。 この動力学モデルでは、 デカップルド、 即ち. 脚体 2 , 2の動力学 (各質点 2 m, 2 mの動力学) と上体 3の動力学 (質点 3 m及びフライホイール F Hx、 FHy および FHbz の動力学) と腕体 5, 5の動力学 (フライホイ一ル F Haz の動力学) とが相互に 非干渉に構成されると共に、 口ポッ ト 1全体の動力学は、 それらの線形 結合で表される。 また、 さらに、 上体 3の運動と床反力との関係も、 上 体 3の並進運動 (上体並進モード) と床反力との関係、 上体 3の傾斜運 動 (上体傾斜モード) と床反力との関係、 上体 3のョ一回転運動 (上体 ョ一回転モード) と床反力との関係、 並びに両腕体 5, 5の逆位相腕振 り運動 (逆位相腕振りモード) と床反力との関係に分離される。 具体的 には、 上体質点 3 mの水平運動によって発生する床反力は、 上体 3の水 平方向並進運動 (上体並進モード) によって発生する床反力に対応し、 フライホイール FHx および FHy の回転運動によって発生する床反力 は、 上体 3の傾斜角の回転運動 (上体傾斜モード) によって発生する床 反力に対応する。 なお、 フライホイール F Hx の回転運動は、 上体 3の 傾斜角のロール方向 (X軸回り) の回転運動に対応し、 フライホイール FHy の回転運動は、 上体 3の傾斜角のピッチ方向 (Y軸回り) の回転 運動に対応している。 また、 フライホイール F Hbz の回転運動によつ て発生する床反力は、 上体 3のョ一回転運動 (上体ョ一回転モード) に よって発生する床反力に対応する。 また、 フライホイール F Haz の回 転運動によって発生する床反力は、 逆位相腕振り (逆位相腕振りモー ド) によって発生する床反力に対応する。
尚、 口ポッ ト 1の腕体の質量は上体 3に含まれるものとし、 上体質点 3 mは腕体 5, 5の質量を含む質量をもつ。
説明の便宜上、 動力学モデルに関する変数およびパラメ一夕を以下の ように定義する。 なお、 各質点 2 m, 2 m, 3 mはそれが対応する部位 の代表点であるか、 あるいはその部位の位置姿勢から幾何学的に一義的 に決定される点に相当する。 例えば、 支持脚側脚体 2の質点 2 mの位置 は、 該脚体 2の足平 2 2の底面の前記代表点から所定の距離だけ上方の 点とする。
Z sup: 支持脚質点鉛直位置
Z swg: 遊脚質点鉛直位置
Z b: 上体質点鉛直位置 (上体鉛直位置とは一般的には異なる。)
Z Gtotal: 全体重心鉛直位置
Xsup: 支持脚質点 X位置
Ysup: 支持脚質点 Y位置
Xswg : 遊脚質点 X位置
Yswg: 遊脚質点 Y位置
Xb : 上体質点 X位置 (上体質点位置は、 前記点 P rから上体の前後方 向にある所定の距離だけオフセッ トした点である。 オフセッ 卜は、 直立 時などにおいて、 厳密モデルの重心位置と、 本動力学モデルの重心位置 がなるベく一致するように、 決定される。 上体水平位置とは一般的には 異なる。)
Yb: 上体質点 Y位置
XGtotal: 全体重心水平 X位置
Y Gtotal: 全体重心水平 Y位置
9 bx: 鉛直方向に対する X軸回りの上体傾斜角
6 hy: 鉛直方向に対する Y軸回りの上体傾斜角
Θ bz: 上体ョ一回転角
Θ az: 逆位相腕振り角 .
mb: 上体質点質量 msup: 支持脚質点質量
mswg: 遊脚質点質量
mtotal: 口ポッ ト総質量 (= mtotal + msup + mswg)
J : 上体慣性モーメント (上体傾斜モードにおける等価慣性モーメント である。 すなわち、 FHxおよび ; FHy の慣性モーメントである。 実ロボ ッ ト 1の上体 3部位の慣性モ一メントとは一般的には一致しない。) J bz: 鉛直軸まわり上体慣性モーメント (上体ョ一回転モードにおけ る等価慣性モ一メントである。 実口ポッ ト 1の上体 3部位の慣性モーメ ントとは一般的には一致しない。)
J az: 腕振り鉛直軸まわり慣性モーメント (スピンキャンセルのため の逆位相腕振りにおける等価慣性モーメントである。 すなわち、 FHz の慣性モーメントである。)
Fx: 床反力 X成分 (詳しくは並進床反力の前後方向 ( X軸) 成分) Fy : 床反力 Y成分 (詳しくは並進床反力の左右方向 (Y軸) 成分) Fz : 床反力鉛直成分 (詳しくは並進床反力の鉛直方向 ( Z軸) 成分。 本第 1参考例では、 これは目標並進床反力鉛直成分に等しい)
Mx: 目標 Z M Pまわりの床反力モーメント X成分 (詳しくは床反カモ 一メントの前後軸 (X軸) まわり成分)
My : 目標 Z M Pまわりの床反力モーメント Y成分 (詳しくは床反カモ 一メントの左右軸 (Y軸) まわり成分)
Mz: 目標 Z M Pまわりの床反力モーメント Z成分 (詳しくは床反カモ ーメン卜の鉛直軸 (Z軸) まわり成分)
なお、 各質点 2 m, 3 mの X位置、 Y位置はそれぞれ前後方向 (X軸 方向) の位置、 左右方向 (Y軸方向) の位置を意味している。 また、 本 第 1参考例では、 各脚体 2の質点 2 mの位置と、 その脚体 2の足平 2 2 の位置 (足平 2 2のあらかじめ定めた代表点の位置) との位置関係はあ らかじめ定められており、 一方の位置が決まれば、 他方の位置は一義的 に定まるものとされている。 また、 上体質点 3 mと、 上体 3の位置 (上 体 3のあらかじめ定められた代表点の位置) との位置関係は、 上体 3の 姿勢角 (以降、 上体に関しては、 姿勢角とは、 傾斜角とョ一角を意味す るものとする。) に応じてあらかじめ定められており、 一方の位置と姿 勢角とが決まれば、 他方の位置は一義的に定まるものとされている。
また、 任意の変数 Xに対して、 dX/dt は Xの 1階微分を表わし、 d2X/dt2 は Xの 2階微分を表わす。 し.たがって、 変数 Xが変位ならば、 dX/dt は速度、 d2X/dt2 は加速度を意味する。 gは重力加速度定数を示 す。 ここでは、 gは正の値とする。
上記動力学モデルの運動方程式 (動力学的平衡条件を表す式) は、 式 0 1、 式 0 2 x、 式 0 2 y、 式 0 3 x、 式 0 3 y、 式 0 3 zで表される。 F z = mb * (g+d2Zb/dt2) + msup * (g+d2Zsup/dt2)
+ mswg * (g+d2Zswg/dt2) 式 0 1
F x= mb * d2Xb/dt2 + msup * d2Xsup/dt2 + mswg * d2Xswg/dt2
式 0 2 x
F y= mb * d2Yb/dt2 + msup * d2Ysup/dt2 + mswg * d2Yswg/dt2
……式 0 2 y
M x= mb * (Yb - Yzmp) * (g+d2Zb/dt2)
- mb * (Zb一 Zzmp) * (d2Yb/dt2)
+ msup * (Ysup一 Yzmp) * (g+d2Zsup/dt2)
- msup * (Zsup― Zzmp) * (d2Ysup/dt2)
+ mswg * (Yswg— Yzmp) * (g+d2Zswg/dt2) 一 mswg * (Zswg - Zzmp) * (d2Yswg/dt2) + J * d2 Θ bx/dt2
……式 0 3 x
M y= - mb * (Xb― Xzmp) * (g+d2Zb/dt2)
+ mb * (Zb一 Zzmp) ホ (d2Xb/dt2)
― msup * (Xsup一 Xzmp) * (g+d2Zsup/dt2)
+ msup * (Zsup - Zzmp) * (d2Xsup/dt2)
― mswg * (Xswg— Xzmp) * (g+d2Zswg/dt2)
+ mswg * (Zswg - Zzmp) * (d2Xswg/dt2) + J * d2 0 by/dt2
……式 0 3 y
M z = mb * (Xb - Xzmp) * (d2Yb/dt2) - mb * (Yb - Yzmp) (d2Xb/dt2)
+ msup * (Xsup― Xzmp) * (d2Ysup/dt2)
一 msup * (Ysup一 Yzmp) * (d2Xsup/dt2)
+ mswg * (Xswg - Xzmp) * (d2Yswg/dt2)
― mswg * (Yswg- Yzmp) * (d2Xswg/dt2)
+ Jbz * d2 0 bz/dt2 + Jaz*d2 Θ az/dt2
式 0 3 z また、 ロポッ ト全体重心位置には次の関係式が成立する。
Z Gtotal= (mb * Zb + msup * Zsup + mswg * Zswg) / mtotal
式 0 4
X Gtotal= (mb * Xb + msup * Xsup + mswg * Xswg)/ mtotal
式 0 5 x
Y Gtotal= (mb * Yb + msup * Ysup + mswg * Yswg)/ mtotal
式 0 5 y 以下に上記動力学モデルと前記 AFp、 ΔΜρ、 Α¥τ , ΔΜ Γの関係 を示す。
前記 ΔΡρ は、 式 0 2 Xまたは式 0 2 yにおいて、 d2Xb/dt2 または d2Yb/dt2を単位量だけ摂動させたときの Fxまたは Fyの摂動量である から、 次式によって求められる。
AFp = mb …式 0 6
すなわち、 上体並進モードの各水平軸 (X軸、 Y軸) 方向の単位加速度 当たりの床反力水平成分の変化 AFp は、 上記動力学モデルの上体質点 3mの質量に相当する。
前記 ΔΜρ は、 式 0 3 yまたは式 0 3 Xにおいて、 d2Xb/dt2 または d2Yb/dt2 を単位量だけ摂動させたときの My または Mxの摂動量であ るから、 次式によって求められる。
AMp = mb * (Zb一 Zzmp) …式 0 7
すなわち、 上体並進モードの各水平軸 (X軸、 Y軸) 方向の単位加速度 当たりの床反力モ一メント水平成分の変化 Δ Mpは、 上記動力学モデル の上体質点質量に、 上体質点 3 mの目標 Z MPからの高さ (鉛直位置) を乗じたものになる。 このときの上体質点 3 m及び目標 Z M Pの位置と, 上体質点 3 mの運動との関係は、 上体質点 3 mを倒立振子質点、 目標 Z MPを倒立振子支点に対応づけたときの倒立振子の挙動に相当する。 な お、 Y軸方向の ΔΜρ は、 より正確には、 式 0 7の右辺の符号を反転さ せたものである。
前記 AFrは、 式 0 2 Xまたは式 0 2 yにおいて、 d20by/dt2 を単位 量だけ摂動させたときの Fx または Fy の摂動量であるから、 次式によ つて求められる。
AFr =0 …式 0 8 すなわち、 上体傾斜モードの各水平軸 (X軸、 Y軸) 方向の単位加速度 当たりの床反力水平成分の変化 A Frは、 0である。
前記 Δ M rは、 式 0 3 Xまたは式 0 3 yにおいて、 d2 0 bx/dt2または d2 Θ by/dt2を単位量だけ摂動させたときの Mxまたは Myの摂動量であ るから、 次式によって求められる。
Δ Μ r = J …式 0 9
すなわち、 上体傾斜モードの各水平軸 (X軸、 Y軸) 方向の単位加速度 当たりの床反力モーメント水平成分の.変化 Δ Mr は、 水平軸フライホイ ール (FHxおよび Fhy) の慣性モーメントに相当する。
前記 A Mbz は、 式 0 3 z において、 d2 0 bz/dt2 を単位量だけ摂動さ せたときの Mzの摂動量であるから、 次式によって求められる。
A Mbz= J bz …式 0 9 b
すなわち、 上体ョ一回転モ一ドの単位加速度当たりの床反力モ一メント 成分の変化 A Mbz は、 上体ョ一回転に対応するフライホイール F Hbz の慣性モーメントに相当する。
前記 A Maz は、 式 0 3 z において、 d2 Θ az/dt2 を単位量だけ摂動さ せたときの Mzの摂動量であるから、 次式によって求められる。
A Maz= J az …式 0 9 a
すなわち、 逆位相腕振りの単位角加速度当たりの床反力モーメント成分 の変化 A Maz は、 腕振りに対応するフライホイール FHaz の慣性モー メントに相当する。
本第 1参考例における歩容生成装置 1 0 0は、 口ポッ ト 1の片方の脚 体 2が着地してから他方の脚体 2が着地するまでの 1歩分の目標歩容 (前記狭義の意味での目標歩容) を単位として、 その 1歩分の目標歩容 を順番に生成する。 従って、 本第 1参考例で生成する図 5の走行歩容で は、 該目標歩容は片脚支持期の開始時から、 これに続く空中期の終了時 (次の片脚支持期の開始時) までの目標歩容が順番に生成される。 ここ で、 新たに生成しょうとしている目標歩容を 「今回歩容」、 その次の目 標歩容を 「次回歩容」、 さらにその次の目標歩容を 「次次回歩容」、 とい うように呼ぶ。 また、 「今回歩容」 の一つ前に生成した目標歩容を 「前 回歩容」 と呼ぶ。
また、 歩容生成装置 1 0 0が今回歩容を新たに生成するとき、 該歩容 生成装置 1 0 0には、 ロボッ ト 1の 2歩先までの遊脚側足平 2 2の着地 予定位置姿勢、 着地予定時刻の要求値 (要求) が歩容に対する要求パラ メータとして入力される (あるいは歩容生成装置 1 0 0が記憶装置から 要求パラメ一夕を読み込む)。 そして、 歩容生成装置 1 0 0は、 これら の要求パラメ一夕を用いて、 目標上体位置姿勢軌道、 目標足平位置姿勢 軌道、 目標 Z M P軌道、 目標床反力鉛直成分軌道、 目標腕姿勢軌道等を 生成する。 このとき、 これらの軌道を規定する歩容パラメ一夕の一部は. 歩行の継続性を確保するように適宜修正される。
以下に図 5の走行歩容を生成することを例にして、 本第 1参考例にお ける歩容生成装置 1 0 0の歩容生成処理の詳細を図 1 3〜図 4 6を参照 しつつ説明する。 図 1 3は、 その歩容生成装置 1 0 0が実行する歩容生 成処理のメインルーチンを示すフローチャート (構造化フ口一チヤ一 ト) である。
まず S 0 1 0において時刻 tを 0に初期化するなど種々の初期化作業 が行なわれる。 この処理は、 歩容生成装置 1 0 0の起動時等に行なわれ る。 次いで、 S O 1 2を経て S O 1 4に進み、 歩容生成装置 1 0 0は、 制御周期 (図 1 3のフローチヤ一卜の演算処理周期) 毎の夕イマ割り込 みを待つ。 制御周期は A tである。
次いで、 S 0 1 6に進み、 歩容の切り替わり目であるか否かが判断さ れ、 歩容の切り替わり目であるときは S 0 1 8に進むと共に、 切り替わ り目でないときは S O 3 0に進む。 ここで、 上記 「歩容の切り替わり 目」 は、 前回歩容の生成が完了し、 今回歩容の生成を開始するタイミン グを意味し、 例えば前回歩容の生成を完了した制御周期の次の制御周期 が歩容の切り替わり目になる。
S 0 1 8に進むときは時刻 tが 0に初期化され、 次いで S 0 2 0に進 み、 次回歩容支持脚座標系、 次次回歩容支持脚座標系、 今回歩容周期お よび次回歩容周期が読み込まれる。 これらの支持脚座標系及び歩容周期 は、 前記要求パラメ一夕により定まる.ものである。 すなわち、 本第 1参 考例では、 歩容生成装置 1 0 0にジョイスティ ック 7 3等から与えらる 要求パラメ一夕は、 2歩先までの遊脚側足平 2 2の着地予定位置姿勢 (足平 2 2が着地してから足底を床面にほぼ全面的に接触させるように. 滑らさずに回転させた状態での足平位置姿勢)、 着地予定時刻の要求値 を含んでおり、 その 1歩目の要求値、 2歩目の要求値がそれぞれ、 今回 歩容、 次回歩容に対応するものとして、 今回歩容の生成開始時 (前記 S 0 1 6の歩容の切り替わり目) 以前に歩容生成装置 1 0 0に与えられた ものである。 なお、 これらの要求値は今回歩容の生成途中でも変更する ことは可能である。
そして、 上記要求パラメ一タにおける 1歩目の遊脚側足平 2 2 (今回 歩容での遊脚側足平 2 2 ) の着地予定位置姿勢の要求値に対応して次回 歩容支持脚座標系が定まる。
例えば図 1 6を参照して、 今回歩容 ( 1歩目) に係わる遊脚側足平 2 2 (図では 2 2 L ) の着地予定位置姿勢の要求値が、 今回歩容の支持脚 側足平 2 2 (図では 2 2 R ) の着地位置姿勢に対して、 今回歩容支持脚 座標系の X軸方向 (今回歩容の支持脚側足平 2 2 Rの前後方向) 及び Y 軸方向 (今回歩容の支持脚側足平 2 2 Rの左右方向) に、 それぞれ xnext、 ynext だけ移動し、 且つ Z軸回り (鉛直軸回り) に Θ znext だ け回転させた位置姿勢であるとする。 ここで、 支持脚座標系は、 支持脚 側足平 2 2を水平姿勢 (より一般的には床面に平行な姿勢) にして該支 持脚側足平 2 2の底面のほぼ全面を床面に接触 (密着) させた状態にお いて、 該支持脚側脚体 2の足首中心から床面に延ばした垂線が該床面と 交わる点 (この点は、 本第 1参考例の例では支持脚側足平 2 2の底面の ほぼ全面を床面に接触させた状態では、 該足平 2 2の代表点と合致す る) を原点とし、 その原点を通る水平面を X Y平面とするグローバル座 標系 (床に固定された座標系) である。 この場合、 X軸方向、 Y軸方向 は、 それぞれ支持脚側足平 2 2の前後方向、 左右方向である。 尚、 支持 脚座標系の原点は、 必ずしも支持脚側足平 2 2の底面のほぼ全面を床面 に接触させた状態での該足平 2 2の代表点 (足平 2 2の位置を代表する 点) に合致する必要はなく、 該代表点と異なる床面上の点に設定されて もよい。
このとさ、 次回歩容支持脚座標系は、 図示のように今回歩容の遊脚側 足平 2 2 Lの着地予定位置姿勢の要求値に従って該足平 2 2を着地させ た場合 (足平 2 2の代表点を着地予定位置の要求値に一致させ、 且つ、 足平 2 2の姿勢 (向き) を着地予定姿勢の要求値に一致させた場合) に おける該足平 2 2 Lの代表点 (より詳しくは該代表点に合致する床上の 点) を原点とし、 該原点を通る水平面内における該足平 2 2 Lの前後方 向、 左右方向をそれぞれ X ' 軸方向、 Y ' 軸方向とする座標系である。 上記と同様に、 2歩目の遊脚側足平 2 2の着地予定位置姿勢の要求値 に応じて次々回歩容支持脚座標系 (図 1 6の X " Y " 座標を参照) が定 まる。 また、 今回歩容周期は、 今回歩容の支持脚側足平 2 2の着地予定 時刻 (要求値) から、 1歩目 (今回歩容) の遊脚側足平 2 2の着地予定 時刻 (要求値) までの時間として定まり、 次回歩容周期は、 1歩目の遊 脚側足平 2 2の着地予定時刻 (要求値) から 2歩目の遊脚側足平 2 2の 着地予定時刻 (要求値) までの時間として定まる。
尚、 前記要求パラメータは、 本第 1参考例ではジョイスティ ック 7 3 の所要の操作によって歩容生成装置 1 0 0に入力されるものであるが、 あらかじめ該要求パラメータあるいはこれに対応する上記の支持脚座標 系の位置姿勢及び歩容周期をロポッ ト 1の移動スケジュールとして記憶 しておいても良い。 あるいは、 ジョイスティ ック 7 3などの操縦装置か らの指令 (要求) とそのときまでの口ポッ トの 1の移動履歴とを基に前 記次回及び次次回歩容支持脚座標系、 .並びに今回及び次回歩容周期を決 定しても良い。
次いで S 0 2 2に進み、 歩容生成装置 1 0 0は、 今回歩容に続く仮想 的な周期的歩容としての定常旋回歩容の歩容パラメータを決定する。 該 歩容パラメ一夕は、 定常旋回歩容における目標足平位置姿勢軌道を規定 する足平軌道パラメータ、 基準とする上体姿勢軌道を規定する基準上体 姿勢軌道パラメータ、 基準とする腕姿勢軌道を規定する基準腕姿勢軌道 パラメ一夕、 目標 Z M P軌道を規定する Z M P軌道パラメ一夕、 目標床 反力鉛直成分軌道を規定する床反力鉛直成分軌道パラメ一夕を含む。 さ らに、 床反力水平成分許容範囲および床反力モーメント鉛直成分許容範 囲を規定するパラメータも歩容パラメ一夕に含まれる。
尚、 この明細書で 「定常旋回歩容」 は、 その歩容を繰り返したときに 歩容の境界 (本第 1参考例では 1歩毎の歩容の境界) においてロボッ ト 1の運動状態 (足平位置姿勢、 上体位置姿勢等の状態) に不連続が生じ ないような周期的歩容を意味するものとして使用する。 以降、 「定常旋 回歩容」 を 「定常歩容」 と略す場合もある。
周期的歩容である定常旋回歩容は、 本第 1参考例では、 口ポッ ト 1の 2歩分の歩容、 すなわち今回歩容に続く第 1旋回歩容と該第 1旋回歩容 に続く第 2旋回歩容とからなる歩容を該定常旋回歩容の 1周期分の歩容 として、 その 1周期分の歩容を繰り返す歩容である。 尚、 ここで 「旋 回」 なる用語を用いたのは、 旋回率を零とするときは直進を意味するの で、 直進も広義の意味で旋回に含ませることができるからである。 また 生成する目標歩容が前記図 5の走行歩容であると、 その目標歩容の今回 歩容は、 片脚支持期及び空中期を有する走行歩容であるので、 定常旋回 歩容の第 1旋回歩容及び第 2旋回歩容は、 いずれも今回歩容と同様に片 脚支持期と空中期とを有する歩容である。 つまり、 第 1旋回歩容及び第 2旋回歩容の基本的な歩容形態は今回歩容と同一である。
定常旋回歩容について補足すると、 2足移動口ポッ トでは、 定常旋回 歩容の 1周期分は、 前記した狭義の意味での歩容が、 少なくとも 2歩分. 必要である。 そして、 3歩以上の歩容を 1周期分の歩容とする複雑な定 常旋回歩容を設定することも可能である。 但し、 定常旋回歩容は、 後述 の如く、 今回歩容の終端 (終了時刻) における発散成分 (詳細は後述す る) を決定するためだけに用いられる。 このため、 3歩以上の歩容を 1 周期とする定常旋回歩容を用いることは、 歩容生成の処理が煩雑となる にも関わらず、 効果は少ない。 そこで、 本第 1参考例での定常旋回歩容 の 1周期分の歩容を 2歩分の歩容 (第 1及び第 2旋回歩容) により構成 するようにしている。 尚、 3足以上の脚式移動口ポッ トにあっては、 そ れに応じて定常旋回歩容を定義するに足る歩容数が増加する。 以下では, 説明の便宜上、 複数の狭義の歩容 (本第 1参考例では 2歩分の歩容) か ら成る定常旋回歩容を 1歩の歩容とみなす。
定常旋回歩容は、 歩容生成装置 1 0 0で今回歩容の終端における発散 成分や上体鉛直位置速度、 上体姿勢角及びその角速度等のロポッ ト 1の 運動状態を決定するために暫定的に作成されるものであり、 歩容生成装 置 1 0 0からそのまま出力されるものではない。 .
尚、 「発散」 とは、 図 1 4に示すように、 2足移動口ポッ ト 1 の上体 3の位置が両足平 2 2, 2 2の位置からかけ離れた位置にずれてしまう ことを意味する。 発散成分の値とは、 2足移動ロボッ ト 1の上体 3の位 置が両足平 2 2, 2 2の位置 (より具体的には、 支持脚側足平 2 2の接 地面に設定されたグローバル座標系 (支持脚座標系) の原点) からかけ 離れていく具合を表す数値である。
本第 1参考例では、 目標歩容が、 前記発散を生じることなく、 継続的 に生成されるように、 発散成分を指標にして歩容を生成するようにした, ただし、 継続的な歩容の代表例である定常歩容 (歩容の軌道の不連続を 発生することなく、 同じパターンの歩容を繰り返すことができる周期的 歩容であり、 原理上、 無限回繰り返しても発散しない歩容) の初期発散 成分 (定常歩容の初期時刻での発散成分) であっても、 単純に 0ではな く、 定常歩容のパラメ一夕が変われば、 その初期発散成分も変わる。 す なわち、 歩き方あるいは走り方等の歩容形態によって、 適切な発散成分 が変わる。 そこで、 本第 1参考例では、 これから生成しょうとする今回 歩容の後に続く定常歩容が前記今回歩容に係わる要求パラメータに応じ て設定され、 定常歩容の初期発散成分を求めてから、 今回歩容の終端発 散成分を定常歩容の初期発散成分に一致させる (より一般的には、 今回 歩容を定常歩容に連続させもしくは近づける) ように、 今回歩容を生成 する。 これのような歩容生成の基本的な指針は本出願人が先に提案した P C T公開公報 WOZ 02/40224のものと同様である。
本発明の第 1参考例では、 P C T公開公報 WOZ02 40224の第 1実 施形態で用いたような線形な 3質点動力学モデルを用いていないが、 次 式で定義される発散成分および収束成分の概念は、 図 1 2に示したモデ ルのような非線形な動力学モデルの挙動の摂動分に対しても、 近似的に 十分な精度で適用することができる。 発散成分-上体質点水平位置 +上体質点水平速度/ ω θ
…式 1 0 収束成分 =上体質点水平位置一上体質点水平速度/ ω θ '
…式 1 1 ただし、 ここでの上体質点水平位置は、 図 1 2に示す前記動力学モデ ルにおいては、 上体質点水平位置 Xbを表す。
また、 ω 0、 ω θ ' はある所定の値である。 これらの ω 0、 ω 0 ' 値は ほぼ同じ値であるが、 厳密には一致レない。 そして、 走行時では、 P C T公開公報 WOZ02Z40224の歩行歩容生成時の値に対して若干変更す る必要がある。
発散成分および収束成分に関するその他の詳細は、 P C T公開公報 WO/02/ 40224 に記述されているので、 ここではこれ以上言及しない, 本第 1参考例においては、 P C T公開公報 WOZ02Z40224に示した 方式に加え、 さらに、 後述するように、 目標床反力鉛直成分軌道を規定 · する歩容パラメ一夕を設定し、 この目標床反力鉛直成分を動力学的に満 足するように口ポッ ト 1の全体重心鉛直位置を決定する。 この場合、 床 反力鉛直成分の 2階積分値がロボッ ト 1の全体重心鉛直位置を規定する ものになるので、 目標床反力鉛直成分の設定が悪いと、 口ポッ ト 1の全 体重心鉛直位置もしくは上体鉛直位置が高くなり過ぎたり低くなり過ぎ たりする。 したがって、 目標床反力鉛直成分の設定方法も重要な課題で ある。 しかし、 床反力鉛直成分と上体鉛直位置との関係は、 Z M Pと上 体水平位置との関係に似ているので、 上体水平位置速度を適切にするた めの目標 Z M P決定手法の一部を、 以下の本第 1参考例に示すように、 少し変更するだけで、 上体鉛直位置速度を適切にするための目標床反力 鉛直成分の決定手法に適用することができる。 .
本題に戻り、 S 0 2 2では、 図 1 5に示すフローチャートに従って、 以下の処理が行われる。
まず、 S 1 0 0において、 今回歩容、 第 1旋回歩容、 第 2旋回歩容の 順に足平位置姿勢軌道がつながるように、 定常歩容の歩容パラメ一夕の うちの足平軌道パラメータが決定される。 以下に具体的な設定方法を図 1 6を参照して説明する。 尚、 以降の説明では、 支持脚側の脚体 2の足 平 2 2を支持脚足平と称し、 遊脚側の脚体 2の足平 2 2を遊脚足平を称 する。 また、 歩容の 「初期」、 「終端」 はそれぞれ歩容の開始時刻、 終了 時刻もしくはそれらの時刻における瞬時歩容を意味する。
足平軌道パラメータは、 第 1旋回歩容および第 2旋回歩容の初期及び 終端のそれぞれにおける支持脚足平及び遊脚足平のそれぞれの位置姿勢. 各旋回歩容の歩容周期等から構成される。 この足平軌道パラメ一夕のう ち、 第 1旋回歩容初期遊脚足平位置姿勢は、.次回歩容支持脚座標系から 見た今回歩容終端支持脚足平位置姿勢とされる。 この場合、 走行歩容で は、 今回歩容終端における支持脚足平 2 2は、 空中に移動している。 そ して、 今回歩容終端支持脚足平位置姿勢は、 .今回歩容初期支持脚足平位 置姿勢 (=前回歩容終端遊脚足平位置姿勢) から、 前記要求パラメータ における 2歩目の遊脚側足平 2 2の着地予定位置姿勢の要求値 (今回歩 容の支持脚足平 2 2の次回歩容における着地予定位置姿勢の要求値) も しくは該要求値に対応する次次回歩容支持脚座標系に応じて定まる次回 歩容終端遊脚足平位置姿勢に至る足平位置姿勢軌道 (詳しくは次回歩容 支持脚座標系から見た軌道) を、 今回歩容終端まで前記有限時間整定フ ィルタを用いて生成することにより求められる。
尚、 次回歩容終端遊脚足平位置姿勢は、 その位置姿勢から足平 2 2を 接地させたまま、 つま先を下げるように該足平 2 2を水平姿勢までピッ チ方向に所定角度回転させたときの該足平の位置姿勢が次次回歩容支持 脚座標系の位置姿勢に合致するように決定される。 換言すれば、 次回歩 容終端遊脚足平位置姿勢は、 前記要求パラメ一夕における 2歩目の遊脚 側足平 2 2の着地位置姿勢の要求値から、 該足平 2 2をすベらないよう に接地させたまま、 つま先を持ち上げるように該足平 2 2をピッチ方向 に所定角度回転させた状態 (つま先を上げてかかとを着地させた状態) での該足平 2 2の位置姿勢である。
また、 第 1旋回歩容初期支持脚足平位置姿勢は、 次回歩容支持脚座標 系から見た今回歩容終端遊脚足平位置姿勢とされる。 この場合、 今回歩 容終端遊脚足平位置姿勢は、 前記次回歩容終端遊脚足平位置姿勢の場合 と同様、 前記次回歩容支持脚座標系もしくはこれに対応する前記要求パ ラメータの 1歩目 (今回歩容) の遊脚着地予定位置姿勢の要求値に応じ て定まるものである。 すなわち、 該今回歩容終端遊脚足平位置姿勢は、 その位置姿勢から、 足平 2 2を接地させたまま、 つま先を下げるように 該足平 2 2を回転させて該足平 2 2の底面のほぼ全面を床面に接地させ たときの該足平の代表点が次回歩容支持脚座標系の原点に合致するよう に決定される。
第 1旋回歩容終端遊脚足平位置姿勢は、 今回歩容終端遊脚足平位置姿 勢や次回歩容終端遊脚足平位置姿勢の決定手法と同様に、 次回歩容支持 脚座標系から見た次次回歩容支持脚座標系の位置姿勢に基づいて決定さ れる。 より具体的には、 第 1旋回歩容終端遊脚足平位置姿勢は、 その位 置姿勢から足平 2 2を接地させたまま、 すべらないように該足平 2 2を 水平姿勢まで所定角度回転させたときの足平位置姿勢が、 次回歩容支持 脚座標系から見た次次回歩容支持脚座標系の位置姿勢に合致するように 設定される。
第 1旋回歩容終端では、 支持脚足平 2 2は離床して空中にある。 支持 脚足平 2 2が離床してから後の軌道を決定するために、 第 1旋回歩容支 持脚足平着地予定位置姿勢が設定される。 第 1旋回歩容支持脚足平着地 予定位置姿勢は、 次回歩容支持脚座標系から見た次次次回歩容支持脚座 標系の位置姿勢に基づいて設定される。 より具体的には、 第 1旋回歩容 支持脚足平着地予定位置姿勢は、 次回歩容支持脚座標系から見た次次次 回歩容支持脚座標系の位置姿勢である。 なお、 次次次回歩容支持脚座標 系は、 次次回歩容支持脚座標系と次次次回歩容支持脚座標系との相対的 位置姿勢関係が、 今回歩容支持脚座標系と次回歩容支持脚座標系との相 対的位置姿勢関係と一致するように設定される。
第 1旋回歩容終端支持脚足平位置姿勢は、 第 1旋回歩容初期支持脚足 平位置姿勢を求めた場合と同様に、 第 1旋回歩容初期支持脚足平位置姿 勢から、 前記第 1旋回歩容支持脚足平着地予定位置姿勢に至る足平位置 姿勢軌道 (より詳しくは次回歩容支持脚座標系から見た軌道) を、 第 1 旋回歩容終端まで前記有限時間整定フィルタを用いて生成することによ り求められる。
第 2旋回歩容初期遊脚足平位置姿勢は、 次次回歩容支持脚座標系から 見た第 1旋回歩容終端支持脚足平位置姿勢と.される。 第 2旋回歩容初期 支持脚足平位置姿勢は、 次次回歩容支持脚座標系から見た第 1旋回歩容 終端遊脚足平位置姿勢とされる。
第 2旋回歩容終端遊脚足平位置姿勢は、 今回歩容支持脚座標系から見 た今回歩容終端遊脚足平位置姿勢とされる。 第 2旋回歩容終端支持脚足 平位置姿勢は、 今回歩容支持脚座標系から見た今回歩容終端支持脚足平 位置姿勢とされる。
第 1旋回歩容および第 2旋回歩容の歩容周期は、 次回歩容周期と同一 に設定される。 これらの第 1旋回歩容及び第 2旋回歩容の歩容周期は、 互いに同一にすることは必ずしも必要ではないが、 いずれの周期も、 少 なくとも次回歩容周期に応じて決定するのが好ましい。 尚、 今回歩容、 第 1旋回歩容および第 2旋回歩容の上記以外の運動パラメ一夕 (両脚支 持期時間などの時間パラメ一夕を含む) は、 上記決定されたパラメータ に応じて、 歩容の条件 (ァクチユエ一夕の速度が許容範囲に入っている か、 可動角を超えていないか、 床などと干渉していないかなど) を満足 するように適宜決定する。
次に、 S 1 0 2に進み、 目標上体姿勢が追従すべき基準上体姿勢軌道 を規定する基準上体姿勢軌道パラメータが決定される。 基準上体姿勢は 定常歩容の初期 (第 1旋回歩容の初期) と終端 (第 2旋回歩容の終端) とでつながるように (定常歩容の初期、 終端での基準上体姿勢の姿勢角 及びその角速度が一致するように) に設定されている限り、 一定姿勢で ある必要はないが、 本第 1参考例では理解を容易にするため、 基準上体 姿勢のうちの傾斜角 (鉛直方向に対する傾斜角) に係わる姿勢は、 直立 姿勢 (鉛直姿勢) に設定される。 つまり、 本第 1参考例では、 上体 3の 傾斜角に関する基準上体姿勢は、 定常歩容の全期間において直立姿勢に 設定される。 従って、 本第 1参考例では、 基準上体姿勢のうちの傾斜角 の角速度及び角加速度は 0である。 基準上体姿勢のうちのョ一角軌道 (以降、 基準ョ一角軌道とも呼ぶ) 0 bz は、 例えば一定角速度 (定常 歩容の平均旋回速度) の運動にすれば良い。 あるいは、 後述の基準逆位 相腕振り軌道の例 (図 1 8 ) のようにサイン波状にしても良い。 ただし. 定常歩容を繰り返した時に基準ョ一角およびその角速度が連続となるよ うに設定する。
尚、 本第 1参考例では、 目標上体姿勢のうちのョ一角軌道 (以降、 目 標ョ一角軌道とも呼ぶ) は、 基準ョ一角軌道に一致させるものとする。 次に、 S 1 0 4に進み、 基準腕姿勢軌道パラメ一夕が決定される。 具 体的には、 両腕体 5, 5の全体の重心位置 (上体 3に対する相対的な重 心位置)、 左右の手先 (両腕体 5, 5の先端) の左右方向の間隔、 およ び逆位相腕振り角に関するパラメータが決定される。 基準逆位相腕振り 角は、 たとえば図 1 7のように左旋回する場合には、 図 1 8のように設 定すれば良い。 図 1 8のように、 基準逆位相腕振り角 0 azi'ef は、 定常 歩容を繰り返した時に歩容の境界 (第 2旋回歩容の終端と次の第 1旋回 歩容の境界) において逆位相腕振り角および角速度が共に連続になり、 かつ第 1旋回歩容初期における支持脚と逆位相腕振り角の相対関係が、 次の第 1旋回歩容初期における支持脚と逆位相腕振り角の相対関係に一 致するように設定される。 すなわち、 第 1旋回歩容の初期逆位相腕振り 角速度と第 2旋回歩容の終端逆位相腕振り角速度が一致し、 第 2旋回歩 容の終端逆位相腕振り角は、 定常歩容の旋回角 (第 1旋回歩容と第 2旋 回歩容の旋回角の和) に第 1旋回歩容初期逆位相腕振り角を加えた値に 設定される。 図 1 8では基準逆位相腕振り角 Q azref をサイン波状の波 形としたが、 一定角速度に設定しても良い。 .あるいは、 支持脚のョ一角 と遊脚のョ一角の平均の値としても良い。
尚、 本第 1参考例では、 目標腕姿勢の両腕体 5, 5の全体の重心位置 (上体 3に対する相対位置) は、 上体 3に対,して一定に維持されるよう に設定される。
次に、 S 1 0 6に進み、 床反力鉛直成分軌道パラメ一夕が設定される ( この場合、 該パラメ一夕により規定される床反力鉛直成分軌道が、 第 1 旋回歩容および第 2旋回歩容のいずれにおいても図 6のように実質的に 連続な (値がステップ状に飛ばない) ものとなるように床反力鉛直成分 軌道パラメータが設定される。 すなわち、 定常旋回歩容の目標床反力鉛 直成分軌道は図 1 9のようなパターンで設定される。 そのパターンでは、 第 1旋回歩容及び第 2旋回歩容のいずれにおいても、 片脚支持期では床 反力鉛直成分が台形状に変化し、 空中期では床反力鉛直成分が 0に維持 される。 そして、 このパターンの折れ点の時刻や、. 台形部分の高さ (ピ ーク値) が床反力鉛直成分軌道パラメ一夕として設定される。 この床反力鉛直成分軌道パラメータの設定に際しては、 床反力鉛直成 分の歩容全期間 (第 1旋回歩容と第 2旋回歩容両方の期間を合わせた期 間で定常歩容の 1周期の期間) における平均値をロポッ ト 1の自重と一 致させる。 すなわち、 床反力鉛直成分の平均値が口ポッ ト 1に作用する 重力と同じ大きさで反対向きになるようにする。
上記のごとく床反力鉛直成分軌道を設定することは、 定常歩容の条件 を満たすために必要である。 定常歩容の条件とは、 支持脚座標系 (支持 脚側足平 2 2の接地面に設定された座標系) から見た歩容のあらゆる状 態変数 (口ポッ ト 1の各部の位置、 姿勢、 速度等) の初期状態 (第 1旋 回歩容の初期状態) と次の支持脚座標系 (次の第 1旋回歩容の支持脚座 標系) から見た歩'容の終端状態 (第 2旋回歩容の終端状態) がー致して いることである (以下、 この条件を定常歩容の境界条件ということがあ る)。 したがって、 定常歩容終端における口ポッ ト 1の全体重心鉛直速 度と定常歩容初期における全体重心鉛直速度との差 (詳細には、 第 2旋 回歩容終端の全体重心鉛直速度と第 1旋回歩容初期の全体重心鉛直速度 との差) も零でなければならない。 上記差は床反力鉛直成分と重力との 差の積分値 ( 1階積分値) であるから、 上記差を零にするためには、 上 記のごとく床反力鉛直成分軌道を設定する必要がある。
尚、 本第 1参考例では、 床反力鉛直成分の第 1旋回歩容、 第 2旋回歩 容それぞれの期間における平均値をロボッ ト 1の自重と一致させるよう にした。 より具体的には、 例えば第 1旋回歩容及び第 2旋回歩容の歩容 周期に応じて各旋回歩容における床反力鉛直成分軌道の台形部分の折れ 点の時刻を設定した上で、 その台形部分の高さを、 床反力鉛直成分の第 1旋回歩容、 第 2旋回歩容それぞれの期間における平均値がロポッ ト 1 の自重と一致するように決定した (台形の高さを未知数として、 上記平 均値及ぴ自重の一致条件を表す方程式を解く ことで台形の高さを求め る)。
こうすることにより、 第 1旋回歩容終端の全体重心鉛直速度と第 1旋 回歩容初期の全体重心鉛直速度との差も 0、 第 2旋回歩容終端の全体重 心鉛直速度と第 2旋回歩容初期の全体重心鉛直速度との差も 0になる。 ただし、 このようにする必然性はない。 例えば、 第 1旋回歩容と第 2旋 回歩容との境界あたりで上体鉛直位置が高くなり過ぎたり低くなり過ぎ たりして無理な姿勢になりそうな場合には、 各旋回歩容で上記平均値及 び自重を一致させた状態から各旋回歩容の床反力鉛直成分軌道の台形の 高さ等を修正するようにしてもよい。
次に、 S 1 0 8に進み、 上記のごとく図 1 9のように設定された床反 力鉛直成分軌道に応じて、 床反力水平成分の許容範囲 [Fxmin, Fxmax] (より詳しくはこれを規定するパラメ一夕).が図 2 0のように設定され る。 図 2 0の負側の折れ線が床反力水平成分許容下限値 Fxmin、 正側 の折れ線が床反力水平成分許容上限値 Fxmax を表す。 これらの設定方 法に関して以下に補足する。 以下では、 床面が水平である場合について 説明する。
床反力水平成分は、 床と足平 2 2との間の摩擦によって発生するが、 摩擦はいく らでも発生できるわけではなく、 限界がある。 したがって、 生成された目標歩容に従って実際のロポッ ト 1が移動した時にスリップ しないようにするためには、 目標歩容の床反力水平成分が、 常に摩擦限 界以内になければならない。 そこで、 この条件を満足させるために、 床 反力水平成分許容範囲を設定し、 後述するように、 目標歩容の床反力水 平成分がこの許容範囲内になるように、 目標歩容を生成することとした c 床と足平 2 2 との間の摩擦係数を とすると、 Fxmin は、 常に i *床反力鉛直成分以上に、 Fxmax は; *床反力鉛直成分以下に設定さ れなければならない。 最も単純な設定方法は、 次式による設定である。 ただし、 kaは 1より小さい正の定数である。
Fxmin=— ka * H *床反力鉛直成分
Fxmax= ka * *床反力鉛直成分
…式 1 2
図 2 0の床反力水平成分許容範囲は、 式 1 2にしたがって設定した例 である。 床反力水平成分許容範囲を規定するパラメータとして、 図 2 0 の台形波形などの折れ点での値と時刻を設定してもよいが、 式 1 2によ り床反力水平成分許容範囲を決定するときには、 単に式 1 2における (ka * )の値をパラメ一夕として設定するだけでも良い。
尚、 上記条件 (目標歩容の床反力水平成分を常に摩擦限界以内にする という条件) を満足しているならば、 他の設定方法で床反力水平成分許 容範囲を設定するようにしても構わない。 .
次に、 S 1 0 9に進み、 上記のごとく図 1 9のように設定された床反 力鉛直成分軌道などに応じて、 床反力モーメント鉛直成分の許容範囲 [Mzmin , Mzmax] (より詳しくはこれを規定するパラメ一夕) が図 2 1のように設定される。 図 2 1の負側の折れ線が床反力モーメント鉛直 成分許容下限値 Mzmin、 正側の折れ線が床反力モーメント鉛直成分許 容上限値 Mzmax を表す。 これらの設定方法に関して以下に補足する。 以下では、 床面が水平である場合について説明する。
床反力モーメント鉛直成分は、 床と足平 2 2との間の摩擦によって発 生するが、 摩擦はいく らでも発生できるわけではなく、 限界がある。 し たがって、 生成された目標歩容に従って実際のロポッ ト 1が移動した時 にスピンしないようにするためには、 目標歩容の床反力モーメント鉛直 成分が、 常に摩擦限界以内になければならない。 そこで、 この条件を満 足させるために、 床反力モーメント鉛直成分許容範囲を設定し、 後述す るように、 目標歩容の床反カモ一メント鉛直成分がこの許容範囲内にな るように、 目標歩容を生成することとした。
床と足平 2 2 との間の摩擦係数を 、 モーメント鉛直成分を発生する ための床と足平 2 2との間の接触面の有効半径 (あるいは床と足平 2 2 との間の接触面の目標 Z M Pまわりの断面 2次モ一メントの平方根) を r とすると、 Mzmin は、 常に— * r *床反力鉛直成分以上に、 Mzmaxは * r *床反力鉛直成分以下に設定されなければならない。 最 も単純な設定方法は、 次式による設定である。 ただし、 ka は 1より小 さい正の定数である。
Mzxmin=—ka * * r *床反力鉛直成分
Mzmax= ka * * r *床反力鉛直成分
…式 1 0 1 2 図 2 1の床反力モーメント鉛直成分許容範囲は、 式 1 0 1 2にしたが つて設定した例である。 床反力モーメント鉛直成分許容範囲を規定する パラメータとして、 図 2 1の台形波形などの折れ点での値と時刻を設定 してもよいが、 式 1 0 1 2により床反力モーメント鉛直成分許容範囲を 決定するときには、 単に式 1 0 1 2における(ka * )の値をパラメータ として設定するだけでも良い。 rは、 各瞬間において目標 Z M Pと接地 面から算出するのが良いが、 定数としても構わない。
尚、 上記条件 (目標歩容の床反力モーメント鉛直成分を常に摩擦限界 以内にするという条件) を満足しているならば、 他の設定方法で床反力 モーメント鉛直成分許容範囲を設定するようにしても構わない。
さらには、 床反力水平成分許容範囲と床反カモ一メント鉛直成分許容 範囲を独立に設定するのではなく、 床反力水平成分と床反力鉛直成分モ ーメン卜の組み合わせの許容範囲を設定するようにしても良い。 なぜな ら、 床反力水平成分が大きくなると、 床反力モーメント鉛直成分の許容 範囲が狭くなり、 また、 床反力モーメント鉛直成分が大きくなると、 床 反力水平成分の許容範囲が狭くなるからである。
次に、 S 1 1 0に進み、 第 1旋回歩容および第 2旋回歩容を合わせた 定常歩容の Z M P軌道を規定する Z M P軌道パラメ一夕が設定される。 この場合、 目標 Z M P軌道は、 前述したように安定余裕が高くかつ急激 な変化をしないように設定される。
さらに詳細には、 図 5の走行歩容においては、 支持脚足平 2 2のかか とで着地した後、 しばらくして該支持脚足平 2 2の底面のほぼ全面が接 地し、 さらにしばらく して、 支持脚足平 2 2のつま先だけが接地する。 そして、 次に支持脚足平 2 2のつま先で蹴って空中に飛び上がり、 最後 に遊脚足平 2 2のかかとで着地する。 また、 目標 Z M Pは接地面内に存 在しなければならない。 そこで、 本第 1参考例では、 定常歩容の第 1旋 回歩容及び第 2旋回歩容のそれぞれの目標 Z M Pの X軸方向の位置は、 前記図 7の上段図に示したように、 支持脚足平 2 2のかかとを初期位置 として、 該足平 2 2の底面のほぼ全体が接地するまでその位置に留まる ように設定される。 次に、 目標 Z M Pは支持脚足平 2 2の中央に移動し. 該足平 2 2がつま先接地状態になるまでにつま先に移動し、 その後、 離 床時まで支持脚足平 2 2のつまさきに留まるように設定される。 さらに その後は、 目標 Z M Pは、 前述のごとく、 次の遊脚足平 2 2の着地まで に目標 Z M Pが、 支持脚足平 2 2のつまさきから遊脚足平 2 2のかかと の着地位置まで連続的に移動するように設定される。 したがって、 第 1 旋回歩容と第 2旋回歩容とから成る定常歩容の目標 Z M P軌道 (X軸方 向の軌道) は、 図 2 2のようになる。 そして、 この目標 Z M P軌道の折 れ点の時刻及び位置が Z M P軌道パラメ一夕として設定される。 この場 合、 折れ点の時刻は、 前記要求パラメ一夕に応じて定めた第 1旋回歩容 及び第 2旋回歩容の歩容周期に応じて設定され、 該折れ点の位置は、 次 回歩容支持脚座標系及び次次回歩容支持脚座標系の位置姿勢あるいはこ れらの座標系を規定する要求パラメータの 1歩目及び 2歩目の遊脚側足 平着地予定位置姿勢の要求値に応じて設定される。 尚、 Z M P軌道の Y 軸方向の位置は、 前記図 7の下段図に示したものと同様に設定される。 より詳しくは、 第 1旋回歩容における目標 Z M Pの Y軸方向位置の軌道 は、 図 7の下段図のものと同一パターンで設定され、 第 2旋回歩容にお ける目標 Z M Pの Y軸方向位置の軌道は、 第 1旋回歩容のものと同じ形 の軌道で、 該軌道の終端につながるものに設定される。
次に、 S 1 1 2に進み、 定常歩容 1.歩 ( 1周期) の初期時刻、 終端時 刻、 期間が以下のように再定義される。
定常歩容は、 その初期と終端での状態変数が連続的につながる歩容で なければならない。 このような歩容の決定を容易にするために、 本第 1 参考例では、 定常歩容を決定するまでは、 前述の狭義の歩容の定義とは 異なり、 定常歩容の 1歩の初期、 終端、 期間を便宜上、 図 1 9のように 定める。 すなわち、 第 1旋回歩容の片脚支持期の後半において床反力鉛 直成分がある程度減少した時刻を定常歩容の初期時刻 Ts として設定す る。 なお、 初期時刻 Ts は、 図 7に示すように、 支持脚足平 2 2の底面 のほぼ全面が接地した状態からつま先接地に変わる瞬間あるいはその直 前の時刻 (図 7の足底全面接地期間の終了時刻もしくはその直前の時 刻) に設定するのが望ましい。 また、 S 1 1 0において設定した図 2 2 (または図 7 ) に示す目標 Z M Pと時刻 Ts との関係を説明すると、 第 1旋回歩容において支持脚足平 2 2の底面のほぼ全面が接地した後に、 目標 Z M Pが支持脚足平 2 2の中央に移動し、 つま先接地状態になるま でにつま先に移動を完了した瞬間が、 時刻 Ts となっているのが望まし い。 このような初期時刻 Ts は例えば先に設定した目標 Z M P軌道パラ メータに応じて設定される。 上記のごとく初期時刻 Ts を設定する理由 は後述する。 また、 図 1 9に示すように、 定常歩容の周期 Tcyc は第 1旋回歩容と 第 2旋回歩容の歩容周期の和である。 定常歩容の終端時刻を Te とする, Teは、 Tsに Tcycを加えた時刻に設定される。
定常歩容が決定された時点 (後述の図 2 3の S 2 0 4のループを抜け た時点) から、 改めて、 歩容の初期、 終端等の定義を、 前述の狭義の歩 容の定義に戻すこととする。 以下の説明では、 前述の狭義の歩容の定義 による初期時刻 (支持脚側足平 2 2の着地当初の時刻) を 0 とし、 定常 歩容を決定するまで用いる上記初期時刻 Ts を参照符号 Ts を用いて (単に 「Ts」 と省略することもある) 本来の初期時刻 0と区別する。 最後に S 1 1 4に進み、 定常歩容の上体姿勢角 ·逆位相腕振り角復元 期間 [Tm, Ts2]および [Tm2, Te]を設定する。 補足すると、 定常歩容を 繰り返した時に歩容の境界において上体姿勢角および逆位相腕振り角は 連続であるべきである。 そのためには、 定常歩容の初期上体姿勢角速度 と終端上体姿勢角速度が一致し、 定常歩容の初期逆位相腕振り角速度と 終端逆位相腕振り角速度が一致しなければならない。 前記期間は、 その ようにするための、 上体姿勢角軌道と逆位相腕振り角軌道を調整する期 間である。
具体的には、 初期時刻 Ts から第 1旋回歩容の空中期を経て第 2旋回 歩容になり、 床反力鉛直成分がある所定の大きさまで増加した時刻 Tm が設定される。 さらに、 第 2旋回歩容の片脚支持期の後半において床反 力鉛直成分がある程度減少した時刻 Ts2 が設定される。 さらに、 第 2 旋回歩容の空中期を経て第 1旋回歩容になり、 床反力鉛直成分がある所 定の大きさまで増加した時刻 Tm2が設定される。
図 1 9にこれらの時刻を示す。 時刻 Tmは、 支持脚足平 2 2の底面の ほぼ全面が接地した瞬間あるいはその直後に設定するのが望ましい。 時 刻 Tm2 も同様である。 また、 時刻 Ts2 は、 前記初期時刻 Ts 同様、 足 平 2 2の底面のほぼ全面が接地した状態からつま先接地に変わる瞬間あ るいはその直前に設定するのが望ましい。
また、 前記図 1 5の S 1 1 0において設定した図 2 2の目標 Z M Pと これらの時刻 Tm, Ts2, Tm2 との関係を説明すると、 第 2旋回歩容に おいて、 目標 Z M Pが、 支持脚足平 2 2のかかとを初期位置として、 該 足平 2 2の底面のほぼ全体が接地するまでその位置に留まり、 次に支持 脚足平 2 2の中央に移動し始める瞬間を時刻 Tm とすることが望ましい, その後、 支持脚足平 2 2のつま先だけ接地した状態になるまでに、 目標 Z M Pがつま先に移動を完了した瞬間を、 時刻 Ts2 とすることが望ま しい。 さらに次の第 1旋回歩容において、 目標 Z M Pが、 支持脚足平 2 2のかかとを初期位置として該足平 2 2の底面のほぼ全体が接地するま でその位置に留まり、 次に支持脚足平 2 2の中央に移動し始める瞬間を 時刻 Tm2とすることが望ましい。
上記のごとく設定する理由は後述する。 尚、 上体姿勢角を復元 (調 整) する期間と逆位相腕振り角を復元 (調整) する期間を別々に設定し ても良い。
図 1 3の S 0 1 0から S 0 2 2までに示す処理が行われた後、 S 0 2 4に進み、 定常歩容の初期状態が算出される。 ここで算出される初期状 態は、 定常歩容の初期上体水平位置速度 (水平方向での初期上体位置及 び初期上体速度)、 初期上体鉛直位置速度 (鉛直方向での初期上体位置 及び初期上体速度)、 初期発散成分、 初期上体姿勢角、 角速度、 および 初期逆位相腕振り角、 角速度である。 この初期状態の算出は、 図 2 3の フローチャートに従って、 探索的に行なわれる。
図 2 3のフローチャートにおいては、 先ず、 S 2 0 0において、 定常 歩容の歩容パラメータ (前記図 1 3の S 0 2 2で設定したパラメータ) に基づいて、 目標足平位置姿勢、 目標腕姿勢、 および目標上体姿勢角 (傾斜角とョ一角) の初期状態 (初期時刻 Ts での状態) が決定される, ここで状態とは、 位置や姿勢角とその変化率 (時間微分) とを表す。 この場合、 支持脚側の目標足平位置姿勢の初期状態は、 前記図 1 5の S 1 0 0で決定した足平軌道パラメ一夕の第 1旋回歩容初期支持脚足平 位置姿勢から、 第 2旋回歩容終端遊脚足平位置姿勢に至る足平位置姿勢 軌道 (次回歩容支持脚座標系から見た軌道) を時刻 Ts まで有限時間整 定フィルタにより生成することにより決定される。 遊脚側の目標足平位 置姿勢の初期状態は、 次回歩容支持脚座標系から見た今回歩容初期支持 脚足平位置姿勢から、 第 1旋回歩容終端遊脚足平位置姿勢に至る足平位 置姿勢軌道を時刻 Ts まで有限時間整定フィル夕により生成することに より決定される。 また、 目標腕姿勢の初期状態は、 図 1 5の S 1 0 4で 決定した基準腕姿勢軌道パラメ一夕に基づいて求められる時刻 Ts にお ける基準腕姿勢に決定される。 より具体的には、 目標腕姿勢の両腕体 5, 5の全体重心位置 (上体 3に対する相対位置)、 左右の手先 (両腕体 5 , · 5の先端部) の左右方向の間隔および逆位相.腕振り角 · 角速度が決定さ れる。 但し、 逆位相腕振り角 · 角速度は、 後述するように、 定常歩容を 繰り返した時に歩容の境界で連続するように修正されるので、 ここでは まだ仮に決定されただけである。
また、 目標上体姿勢角の初期状態は、 図 1 5の S 1 0 2で決定した基 準上体姿勢軌道パラメータにより定まる時刻 Ts における基準上体姿勢 (傾斜角およびョ一角) 及びその角速度が該目標上体姿勢角の初期状態 として決定される。 なお、 本第 1参考例では、 上体 3の傾斜角に係る基 準上体姿勢は鉛直姿勢であるので、 目標上体姿勢のうちの傾斜角の初期 状態 (傾斜角及びその角速度) は 0である。
また、 本第 1参考例では、 定常歩容の目標足平位置姿勢軌道、 床反力 鉛直成分軌道、 及び目標 Z M P軌道は、 それぞれ、 図 1 5のフローチヤ ―トで決定した足平軌道パラメ一夕、 床反力鉛直成分軌道パラメータ、 Z MP軌道パラメ一夕により互いに独立的に決定される。 例えば定常歩 容の瞬時瞬時の目標足平位置姿勢は、 床反力鉛直成分の瞬時値に依存す ることなく足平軌道パラメ一夕に応じて決定される。
次いで S 2 0 2において初期上体水平位置速度の候補 (すなわち初期 時刻 Tsでの上体水平位置速度候補) である (Xs, Vxs) (Xs : 水平位 置、 Vxs : 水平速度) が仮決めされる。 ここで仮決めする候補 (Xs, Vxs) は、 任意でよいが、 例えば前回歩容の生成時に求めた定常歩容の 初期状態における上体水平位置速度を仮決め候補 (Xs, Vxs) とすれ ばよい。
尚、 説明を簡略にするため、 サジタルプレーン上で X方向 (前後方 向) での定常歩容の初期状態を探索する場合を例にとるが、 実際には位 置 · 速度とも X方向 (前後方向), Y方向 (左右方向) を別々にあるい は同時に定常歩容の初期状態 (定常歩容の前記境界条件を満たす初期状 態) を探索する必要がある。 ,
補足すると、 サジタルプレーン上では、 ョ一回転やモーメント鉛直成 分など鉛直軸まわりに関する概念は存在しないので、 少なくともョ一回 転やモーメント鉛直成分に関しては、 3次元空間で演算される。
探索的な決定手法としては、 擬似ヤコビアン (感度マトリックス) を 求め、 最急降下法などにより次候捕を決定する方法や、 シンプレックス 法などを用いれば良い。 本実施例では、 最急降下法を用いる。
次いで、 S 2 0 4を経て S 2 0 6において、 定常歩容を繰り返した時 に上体鉛直位置速度が連続になり、 かつ、 膝等の関節角が伸び過ぎたり 縮み過ぎたりしないように、 初期 (時刻 Ts) 上体鉛直位置速度 (Zs, Vzs) (Zs : 鉛直位置、 Vzs : 鉛直速度) が、 決定される。 これについ ての詳細は、 例えば本願出願人が先に出願した P CTZ J P 0 2 Z 1 3 5 9 2に記載されているので、 ここでは省略する。
S 2 0 6の処理の後、 次いで S 2 0 8に進み、 定常旋回歩容が仮に生 成される (この仮生成される定常旋回歩容を以降、 仮歩容ということが ある)。 より具体的には、 前記図 1 3の S 0 2 2で決定した定常歩容の 歩容パラメ一夕を基に、 初期時刻 Ts から終端時刻 Te までの各瞬間に おける目標 Z M P、 目標床反力鉛直成分、 目標足平位置姿勢、 基準上体 姿勢、 目標腕姿勢、 床反力水平成分許容範囲および床反力モーメント鉛 直成分許容範囲が逐次求められる。 そして、 求めた目標 Z M Pと目標床 反力鉛直成分とに関する動力学的平衡条件、 並びに床反力水平成分許容 範囲の条件を満足するように、 前記動力学モデル (図 1 2のモデル) を 用いて、 前記上体水平位置速度 (X s, V x s)、 上体鉛直位置速度 (Zs, V z s) を上体 3の初期 (時刻 Ts) 状態として、 上体位置姿勢を逐次決 定することによって、 時刻 Ts から終端時刻 Te までの歩容を生成する ( また、 この時、 上体姿勢は、 基準上体姿勢になるべく一致するように生 成される。 ,
また、 床反力モーメント鉛直成分に関する条件、 すなわち、 床反カモ ーメント鉛直成分許容範囲を満足するように、 逆位相腕振り動作が決定 される。
尚、 この定常歩容の歩容生成は歩容生成装置 1 0 0の内部で行われる だけであって、 実際のロボッ ト 1を駆動するための目標値として、 後述 する複合コンプライアンス動作決定部 1 0 4に出力されることはない。 以下に、 S 2 0 8の処理である逐次演算による定常歩容生成処理の詳 細を説明する。
図 2 4はその処理を示すサブルーチンフローチヤ一トである。
以下説明すると、 S 3 0 0において、 諸々の初期化が行われる。 具体 的には、 仮歩容生成用時刻 kに初期時刻 Ts を代入する。 さらに、 上体 水平位置速度に、 現在仮決定されている (Xs, V xs) (図 2 3の S 2 0 2もしくは後述の S 2 1 6もしくは S 2 1 8で決定されたもの) が代 入され、 上体鉛直位置速度に、 前記 S 2 0 6で求めた最新の (Zs, V z s) が代入される。 また、 上体姿勢角には、 基準上体姿勢角初期値 (初期時刻 Ts での角度) が代入され、 上体姿勢角速度には、 基準上体 上体姿勢角速度初期値 (初期時刻 Tsでの角速度) が代入される。
逆位相腕振り角には、 基準初期逆位相腕振り角 (初期時刻 Ts での角 度) 逆位相腕振り角速度には、 基準初期逆位相腕振り角速度 (初期時刻 Tsでの角速度) が代入される。
次いで、 S 3 0 2を経て S 3 0 4において、 仮歩容生成用時刻 k が 歩容終端時刻以前であるか否か (k ≤ Ts + Tcyc であるか否か) が判 断され、 その判断結果が Y E Sである場合には、 S 3 0 6の歩容瞬時値 決定サブルーチンに進み、 歩容瞬時値が決定される。 次いで歩容生成装 置 1 0 0の処理は、 S 3 0 8に進み、 仮歩容生成用時刻 kを だけ増 やした後、 S 3 0 4に戻る。
ここで、 Ak は、 仮歩容生成のインターバルであり、 通常、 制御周期 Δ t と一致させておけば良い。 なお、 は、 仮歩容の動力学的精度を 落としても良いならば、 演算量を低減するために、 Ak を Δ tよりも長 く設定しても良い。
S 3 0 4の判断結果が NOである場合には、 S 3 1 0に進む。 以上の 処理により、 S 3 1 0に進むまでに定常歩容 (仮歩容) が初期から終端 まで生成される。
以下に、 S 3 0 6の歩容瞬時値決定サブルーチンの詳細を図 2 5を参 照して説明する。
まず図 2 5の S 4 0 0において、 定常歩容パラメ一夕 (床反力鉛直成 分軌道パラメータ) を基に、 前記図 1 9に示した目標床反力鉛直成分の 時刻 k における値 (今回値) が求められる。 さらに、 S 4 0 2におい て、 定常歩容パラメ一夕 (Z M P軌道パラメ一夕) を基に、 前記図 2 2 に示した目標 Z M P軌道の時刻 k における値 (今回値) が求められる, 次いで S 4 0 4に進み、 定常歩容パラメータ (足平軌道パラメータ、 基準上体姿勢軌道パラメ一夕、 及び腕姿勢軌道パラメータ) を基に、 時 刻 k における目標両足平位置姿勢 (支持脚側及び遊脚側の両者の目標 足平位置姿勢)、 基準上体姿勢および基準腕姿勢の値 (今回値) が求め られる。 基準腕姿勢に関しては、 具体的には、 両腕体 5, 5の全体重心 位置 (上体 3 に対する相対位置)、 左右の手先 (両腕体 5, 5の先端 部) の左右方向の間隔および逆位相腕振り角の値 (今回値) が求められ る。
尚、 目標足平位置姿勢の今回値 (時刻 kでの値) は、 前記図 2 3の S 2 0 0で初期時刻 Ts での足平位置姿勢を求めた場合と同様に求められ る。
次いで S 4 0 6に進み、 目標床反力鉛直成分を満足する (ロボッ ト 1 の鉛直方向の慣性力と重力との和を目標床反力鉛直成分に釣り合わせ る) ような時刻 k における全体重心鉛直位置速度の値 (今回値) が算 出される。 具体的には、 例えば前記図 1 2の動力学モデルに係わる前記 式 0 1 と式 0 4とに基づいて、 全体重心鉛直位置速度が算出される。 す なわち、 式 0 1 と式 0 4とによれば、 口ポッ ト 1の運動による全体重心 鉛直加速度と重力加速度との和にロポッ 卜 1の全体質量を乗算したもの が床反力鉛直成分に等しいという関係式 (口ポッ ト 1の全体重心の鉛直 方向に関する運動方程式) が得られる。 従って、 この関係式と目標床反 力鉛直成分とから、 全体重心鉛直加速度が求められる。
尚、 この関係式自体は、 ロボッ ト 1のモデルに依存することなく一般 的に成立するものである。 そして、 この求めた全体重心鉛直加速度を積 分することにより、 全体重心鉛直速度が算出され、 さらにその全体重心 鉛直速度を積分することにより、 全体重心鉛直位置が算出される。 これ らの算出は、 より一般的には、 次式 1 5および式 1 6で表される動力学 関係式 (ニュートンの運動方程式を離散化した式) を用いて行なわれる, 時刻 kにおける全体重心鉛直速度
=時刻(k一 A k)における全体重心鉛直速度
+ ((床反力鉛直成分 Zロポッ トの全体質量) +重力加速度) *厶 k
(ただし、 重力加速度は負の値とする。)
…式 1 5 時刻 kにおける全体重心鉛直位置
=時刻(k一 A k)における全体重心鉛直位置
+時刻 kにおける全体重心鉛直速度 * A k
式 1 6 次いで S 4 0 8に進み、 全体重心鉛直位置を満足する上体鉛直位置が 算出される。 具体的には、 例えば前記図 1 2のモデルに係わる式 0 4を 用いて上体鉛直位置が算出される。 すなわち、 支持脚側及び遊脚側の目 標足平位置姿勢の今回値から、 図 1 2のモデルの支持脚質点 2 m及び遊 脚質点 2 mの鉛直位置が求められる。 そして、 これらの求めた支持脚質 点 2 m及び遊脚質点 2 mの鉛直位置と、 S 4 0 7で求めた全体重心鉛直 位置の今回値とを式 0 4に適用することで、 上体質点 3 mの鉛直位置が 求められる。 さらに、 この求めた上体質点 3 mの鉛直位置と目標上体姿 勢角の現在値 (S 4 0 4で設定された基準上体姿勢角または後述の S 4 1 4で決定された前回 (時刻 k— A k ) の目標上体姿勢角) とから上体 鉛直位置が求められる。
次いで S 4 1 0に進み、 前記図 1 5の S 1 0 8で決定した歩容パラメ —夕 (床反力水平成分許容範囲を規定するパラメータ) に基づいて、 図 2 0に示した床反力水平成分許容範囲 [Fxmin, Fxmax]の時刻 k におけ る値 (今回値) が求められる。
次いで S 4 1 1に進み、 前記図 1 5の S 1 0 9で決定した歩容パラメ 一夕 (床反力モーメント鉛直成分許容範囲を規定するパラメ一夕) に基 づいて、 図 2 1 に示した床反力モーメント鉛直成分許容範囲 [Mzmin, Mzmax]の時刻 kにおける値 (今回値) が求められる。
次いで S 4 1 2に進み、 目標 Z M Pに関する動力学的平衡条件 (ロボ ッ ト 1の慣性力と重力との合力が目標 Z M Pまわりに発生するモーメン トの水平成分が 0であるという条件) を満足するように、 目標上体水平 加速度と目標上体姿勢加速度との今回値が決定される。 ただし、 床反力 水平成分 Fx が [Fxmin, Fxmax]を越えないように、 上体水平加速度と 上体姿勢角加速度 (より詳しくは、 上体傾斜角加速度) とが決定される, また、 床反力モーメント鉛直成分 Mzが [Mzmin, Mzmax]を越えないよ うに、 目標逆位相腕振り角加速度の今回値が決定される。
尚、 上体姿勢角のうち、 ョ一角は基準上体姿勢角のうちのョ一角に一 致するように決定される。 また、 目標腕姿勢に関しては、 逆位相腕振り 角以外の成分は、 基準腕姿勢に一致するように決定される。 また、 この 際、 上記条件を満足しつつも、 目標上体傾斜角と目標逆位相腕振り角と は、 それぞれ基準上体傾斜角と基準逆位相腕振り角とになるべく追従す るように決定される。 以下にこの詳細を説明する。
この時点において、 前記の如く足平位置姿勢および上体鉛直位置の瞬 時値 (今回値) が決定されており、 また、 腕姿勢に関して、 逆位相腕振 り角以外の成分は、 基準腕姿勢のそれに一致するように決定されている t このため、 残りの上体水平位置と上体姿勢角と逆位相腕振り角とを決定 すれば、 ロボッ ト 1の目標運動は一義的に決定できる。 したがって、 す ベての床反力も一義的に決定される。 なお、 本第 1参考例では、 定常歩 容の目標床反力鉛直成分及び目標 Z M Pは、 それぞれ前記図 1 3の S 0 2 2で決定した床反力鉛直成分軌道パラメ一夕及び目標 Z M P軌道パラ メ一夕によって規定される。
ところで、 歩容生成において、 前記上体並進モードをあまり用いずに 主に上体傾斜モードを用いることにより、 目標 Z M Pを満足させる (目 標 Z M Pまわりの床反力モーメントの水平成分を 0にする) と、 上体姿 勢角が大きく振れ過ぎてしまう恐れがある。 したがって、 これを防ぐた めには、 なるべく上体並進モードを用いるべきである。 しかし、 上体並 進モードは、 床反力水平成分の変化を伴うので、 床反力水平成分許容範 囲が狭い場合には、 上体並進モードを強く働かせるとスリップする恐れ がある。 この場合には、 上体傾斜モードに頼るしかない。 特に、 前記走 行歩容のように床反力水平成分許容範囲が 0.となる期間では、 床反力水 平成分を発生させるような歩容を生成することはできないので、 上体傾 斜モードに頼らざるを得ない。
一方、 逆位相腕振り運動は、 目標 Z M Pまわりの床反力モーメントの 水平成分および床反力水平成分のいずれも変化させることなく、 床反力 モーメント鉛直成分のみを変化させることができるので、 床反力モーメ ント鉛直成分が前記床反力モーメント鉛直成分許容範囲を越えないよう にするために用いることができる。 以上のことを考慮し、 本第 1参考例 では、 図 2 6に示すフローチャートに従って、 上体水平加速度と上体姿 勢角加速度と逆位相腕振り加速度とが決定される。 尚、 理解の便宜上、 上体水平加速度と上体姿勢角加速度 (上体 3の傾斜角の角加速度) の決 定に関しては、 サジタルプレーン上で X方向 (前後方向) での上体水平 加速度および上体姿勢角加速度を決定する場合を例にとって説明するが. 実際には Y方向 (左右方向) の上体水平加速度および上体姿勢角加速度 も X方向と同様に決定される。
まず S 5 0 0において、 目標上体ョ一角に時刻 k での基準上体ョ一 角の値を代入する。 また、 腕姿勢の逆位相腕振り角 · 角速度成分を除き. 目標腕姿勢に時刻 kでの基準腕姿勢の値を代入する。
次に S 5 0 2において現在時刻 (定常歩容作成用夕イマ一の値) k が. 上体姿勢角 · 逆位相腕振り角復元期間 (定常歩容の場合、 上体姿勢角 · 逆位相腕振り角復元期間は、 時刻 Tm から時刻 Ts2 の期間および時刻 Tm2 から Te までの期間である。) の間にあるか否かが判定される。 S 5 0 2の判定結果が N Oであるならば、 S 5 0 4に進み、 Y E Sである ならば S 5 3 0に進む。
S 5 0 4では、 ロボッ ト 1の前回瞬時歩容状態 (時刻 k 一 1の歩容状 態) から、 仮に、 上体傾斜モードの角加速度を 0にして、 上体並進モ一 ドの運動をロボッ ト 1 にさせた場合に今回 (時刻 k ) の目標 Z M Pを満 足するために必要な上体水平加速度 a tm が求められる。 乙の a tmp は、 例えば前記図 1 2の動力学モデルに係わる前記式 0 3 yを用いて求 められる。 より具体的には、 例えば、 現在時刻 kまでに求められた目標 足平位置姿勢の時系列値を用いて、 現在時刻 kにおける支持脚質点 2 m 及び遊脚質点 2 mの鉛直加速度が求められると共に、 現在時刻 k (今 回) の目標足平位置姿勢を用いて支持脚質点 2 m及び遊脚質点 2 mの鉛 直位置が求められる。 また、 現在時刻 k (今回) の床反力鉛直位置を用 いて上体質点 3 mの鉛直位置が求められると共に、 現在時刻 kまでに求 めた目標上体鉛直位置の時系列値を用いて現在時刻 kにおける上体質点 3 mの鉛直加速度が求められる。 そして、 これらの求めた値を前記式 0 3 yに代入すると共に、 同式 0 3 yの My、 d2 0 by/dt2を 0にしてなる 式を、 d2Xb/dt2 について解く ことにより、 上体質点水平加速度が上体 水平加速度 a tmp として求められる。 尚、 より厳密な動力学モデルを 用いて、 目標 Z M P回りの床反力モーメントの水平成分を零にするよう な上体水平加速度 a tmp を探索的に求めるようにしてもよい。 また、 本第 1参考例では、 上体 3の傾斜角に関する基準上体姿勢が鉛直姿勢で. 該基準上体姿勢による上体姿勢角加速度 (上体 3の傾斜角の角加速度) が 0であるため、 上体傾斜モードの角加速度を 0にして上体水平加速度 a tmp を求めるようにした。 但し、 基準上体姿勢のうちの傾斜角が変 化するように該基準上体姿勢軌道パラメ一夕を設定した場合で、 それに より定まる現在時刻 kにおける基準上体姿勢角加速度 (上体 3の傾斜角 の基準角加速度) が 0でない場合には、 上体傾斜モードの角加速度をそ の 0でない基準上体姿勢角加速度の値にして、 上体水平加速度 a tmp を動力学モデルを用いて求める (例えば式 0 3 yの d2 Θ by/dt2 を 0で ない基準上体姿勢角加速度に設定して上記と同様に上体水平加速度 0!
•tmpを求める) ようにすればよい。
次に、 S 5 0 6に進み、 上体水平加速度が a tmp の場合の時刻 kに おける床反力水平成分 Fxtmp が動力学モデルを用いて求められる。 本 第 1参考例においては、 前記動力学モデルの式 0 2 Xを用いて Fxtmp が求められる。 すなわち、 次式 1 7によって Fxtmp が求められる。 伹 し、 d2XsupZ dt2および d2Xswg/ dt2 はそれぞれ時刻 kにおける支持 脚足平質点水平加速度、 遊脚足平質点水平加速度を表す。
Fxtmp = mb * a tmp + msup * d2Xsup/ dt2
+ msw * d2Xswg/ dt2 …式 1 7 このようにして求められる Fxtmp の例を図 2 7に示す。 図 2 7に、 Fxtmpが床反力水平成分許容範囲 [Fxmin, Fxmax]を越えている部分を 斜線で示す。
次に、 S 5 0 8に進み、 上体並進モードの上体水平加速度ひ 、 これに よって発生する床反力水平成分 Fx、 上体傾斜モードの上体角加速度 i8 が次のように決定される (S 5 0 8〜 S 5 1 6 )。
すなわち、
Fxtmp >Fxmax ならば、 S 5 1 0に進み、 次式により Fx が決定され る。 . Fx=Fxmax …式 1 8
Fxtmp < Fxminならば、 S 5 1 2に進み、 次式により Fxが決定される ( Fx= Fxmin …式 1 9 それ以外、 すなわち、 Fxtmp が、 床反力水平成分許容範囲 [Fxmin, Fxmax]内に存するならば、 S 5 1 4に進み、 次式により Fx が決定さ れる。 Fx = Fxtmp …式 2 0 いずれの場合においても、 次いで S 5 1 6に進み、 次式により上体水 平加速度ひ 、 上体姿勢角加速度 (上体傾斜角加速度) )3が決定される。 = tmp + (Fx- Fxtmp)/ Δ Fp …式 2 1 '
β =( tmp - «)* ΔΜΡ ΔΜ Γ …式 2 2 ただし、 A F p、 Δ Μ ρおよび Δ Μ rはそれぞれ前記式 0 6、 0 7、 および式 0 9により決定される。
補足すると、 より動力学演算の精度を高めようとするならば、 上記の ごとく上体角加速度 ]3を求めた後、 上体並進モードと上記求めた上体角 加速度 ]3の上体傾斜モードとを合成した運動が目標 Z M Pを満足するよ うに、 上体並進モードの上体水平加速度 c¾を、 より厳密な動力学モデル を用いて解析的あるいは探索的に決定した方が良い。 なお、 探索的な決 定法としては、 擬似ヤコビアン (感度マトリックス) を求め、 擬似ニュ 一トン法などにより次候補を決定する方法や、 シンプレックス法などを 用いれば良い。
さ らに床反力水平成分 Fx が床反力水.平成分許容範囲 [Fxmin , Fxmax]を厳密に越えないようにするために、 S 5 1 0においては、 Fx = Fxmax かつ目標 Z M Pまわりの床反力モーメン卜の水平成分が 0に なるように、 S 5 1 2においては、 Fx= Fxmin かつ目標 Z M Pまわり の床反カモ一メン卜の水平成分が 0になるように、 上体水平加速度 と 上体角加速度 |Sとの組を探索的に求めても良い。
上記のように求められる Fx を図 2 8に示す。 Fx は、 Fxtmp の値を 床反力水平成分許容範囲 [Fxmin, Fxmax]から越えないように制限 (飽 和) させたものになっている。 より詳しくは、 上体並進モードのみによ る上体水平加速度 cUmp に応じた Fxtmp が許容範囲 [Fxmin, Fxmax] 内にある場合には、 Fxtmpがそのまま Fxとなる。 また、 上体並進モー ドのみによる上体水平加速度 tmp に応じた Fxtmpが許容範囲 [Fxmin, Fxmax]の上限を超え、 もしくは下限を下回った場合には、 それぞれ ; Fx は、 それぞれ強制的に Fxmax、 Fxmin に制限される。 特に走行歩容の 空中期では、 常に、 Fxmax= Fxmin= 0であるので、 Fx= 0となる。 また、 上記のように求められる上体姿勢角加速度 ]3を図 2 9に示す。 上体並進モードによって発生する Fx が許容範囲 [Fxmiii, Fxmax]を越 えないように、 上体並進モードの加速度を制限したことによって不足し た床反力モーメント (より詳しくは目標 Z M P回りの床反力モーメント の水平成分を 0にする上で必要な慣性カモ一メン卜から、 制限した上体 水平運動と両脚体 2, 2の運動とによるモーメント成分を差し引いたモ ーメント) を、 上体傾斜モードで補ったことになる。 なお、 走行歩容の 空中期では、 上体並進モードによる上体水平加速度 αは常に 0に制限さ れることとなるので、 上体傾斜モードによる上体姿勢角加速度 iSのみに よって、 上記不足分の床反力モーメン卜が補われることとなる。
次に、 S 5 1 8に進み、 仮に上体並進モードの上体水平加速度が α、 上体傾斜モードの上体角加速度 (上体傾斜角加速度) が /3、 上体ョ一回 転モードの上体加速度 (上体ョ一角加速度) が基準ョ一角加速度 d20 bzref/dt2, 逆位相腕振り角加速度 )3 a が基準逆位相腕振り角加速度 d2 Θ azref/dt2 である運動をさせた場合の床.反カモ一メン ト鉛直成分 Mztmp を求める。 以降、 d20 bzref/dt2 を /3 bref、 d2 Θ azref/dt を β aref とする。
具体的には、 式 0 3 z に、 式 1 0 0 1から式 1 0 0 4を代入すること によって得られる Mzが Mztmpである。 d2Xb/dt2= x …式 1 0 0 1 d2Yb/dt2= o; y …式 1 0 0 2 d20 bz/dt2=i3 bref …式 1 0 0 3 d2 Θ
Figure imgf000076_0001
aref …式 1 0 0 4 ただし、 ひ x は、 上体水平加速度 αの X成分、 a y は、 上体水平加速 度 o;の Y成分を表す。 また、 Xb、 Yb には時刻 k一 1における上体水平 位置 を代入 し 、 Xzmp、 Yzmp、 Xsup、 d2Ysup/dt2、 Xswg 、 d2Yswg/dt2には、 時刻 kの値を代入するものとする。
このようにして求められる Mztmp の例を図 3 2に示す。 図 3 2に、 Mztmp が床反力モーメント鉛直成分許容範囲 [Mzmin, Mzmax]を越え ている部分を斜線で示す。
次に、 S 5 2 0に進み、 逆位相腕振り角加速度 /3 a が次のように決定 される (S 5 2 0〜 S 5 2 8 )。
すなわち、
Mztmp >Mzmax ならば、 S 5 2 2に進み、 次式により Mz が決定され る。
Mz = Mzmax …式 1 0 1 8 Mztinp< Mzmin ならば、 S 5 2 4に進み、 次式により Mz が決定され る。
Mz= Mzmin …式 1 0 1 9 それ以外、 すなわち、 Mztmp が、 床反力水平成分許容範囲 [Mzmin, Mzmax]内に存するならば、 S 5 2 6に進み、 次式により Mz が決定さ れる。
Mz = Mztmp …式 1 0 2 0 いずれの場合においても、 次いで S 5 2 8に進み、 次式により逆位相 腕振り角加速度 jS aが決定される。 β 8L = β aref + (Mztmp - Mz) Z Δ Maz 式 1 0 2 1 ただし、 A Mazは式 0 9 aにより決定される。
以下に S 5 1 8から S 5 2 8までの処理を解説する。
上記のように求められる Mzは、 逆位相腕振りを含めたロポッ ト全体 の運動による床反力モーメント鉛直成分を示している。
上記処理では、 この Mz が床反力モーメ ン ト鉛直成分許容範囲 [Mzmin, Mzmax]を越えないように逆位相腕振り角加速度 /3 aが決定さ れている。 具体的には、 Mz は、 図 3 3に示すように、 Mztmp の値を 床反力水平成分許容範囲 [Mzmin , Mzmax]から越えないよう に制限 (飽和) させたものに決定されている。 より詳しくは、 Mztmp が許容 範囲 [Mzmin, Mzmax]内にある場合には、 Mztmp がそのまま Mz とな り、 Mztmp が許容範囲 [Mzmin, Mzmax]の.上限を越え、 もしくは下限 を下回った場合には、 それぞれ Mz は、 それぞれ強制的に Mzmax、 Mzmin に制限される。 特に走行歩容の空中期では、 常に、 Mzmax = Mzmin= 0であるので、 Mz = 0となる。
Mz が床反力モーメント鉛直成分許容範囲 [Mzmin, Mzmax]を越えな いようにするために、 逆位相腕振りによって発生すべきモーメント鉛直 成分 Mazは、 (Mz— Mztmp)である。 Maz(= Mz— Mztmp)を図 3 4に示 す。
逆位相腕振り角加速度 β aは、 Mazを逆位相腕振りの等価慣性モ一メ ント A Maz で割ったものを基準逆位相腕振り角加速度 ) 3 aref (基準逆 位相腕振り角を 2階微分した値) に加えることによって得られる。 すな わち、 /3 aは前記式 1 0 2 1で求められる。 逆位相腕振り角加速度 β a を図 3 5に示す。
以上のごとく S 5 0 4から S 5 2 8までの処理では、 逆位相腕振りを 含めたロポッ ト全体の運動によって発生する床反力モーメント鉛直成分 Mz が許容範囲 [Mzmin, Mzmax]を越えないように (逆位相腕振り角加 速度を基準逆位相腕振り角加速度 /3 aref に一致させた場合に発生する 床反力モーメント鉛直成分 MZtmp が許容範囲を越えた分を打ち消す (キャンセルする) ように)、 逆位相腕振り角加速度 i3 a が決定される, 補足すると、 床反力モーメント鉛直成分 Mzが床反力モーメント鉛直 成分許容範囲 [Mzmin, Mzmax]を厳密に越えないようにするために、 S 5 0 4から S 5 2 8までの処理の代わりに、 逆位相腕振り角加速度) 3 a を、 より厳密な動力学モデルを用いて解析的あるいは探索的に決定し た方が良い。 なお、 探索的な決定法としては、 擬似ヤコビアン (感度マ 卜リックス) を求め、 擬似ニュートン法などにより次候補を決定する方 法や、 シンプレツクス法などを用いれば良い。
· 以上が、 時刻 kが上体姿勢角 ·逆位相腕振り角復元期間の間にない場 合の処理である。
S 5 0 2の判定結果が Y E Sである場合には以下の処理が行われる。 まず、 S 5 3 0に進み、 口ポッ ト 1の前回瞬時歩容状態 (時刻 k一 1の 歩容状態) から、 上体傾斜モードの角加速度を 0にして、 上体並進モー ドの運動を口ポッ ト 1 にさせた場合に今回 (時刻 k ) の目標 Z M Pを満 足するために必要な上体水平加速度 αが求め、 これを最終的な上体水平 加速度と決定する。
次に、 S 5 3 2に進み、 上記場合に床反力水平成分 Fxを求める。
次に、 S 5 3 4に進み、 上体姿勢角加速度 (上体傾斜角加速度) βを 0に決定する。 なお、 上体ョ一角加速度は、 基準上体ョ一角加速度 3 bref (基準上体ョ一角を 2階微分した値) に決定される。 次いで最後に、 S 5 3 6に進み、 逆位相腕振り角加速度 ]3 a に、 基準 逆位相腕振り角加速度 β aref (基準逆位相腕振り角を 2階微分した値) を代入する。
以上が、 S 5 0 2の判定結果が Y E Sである場合の処理である。 すな わち、 この場合には、 上体姿勢角加速度 (上体傾斜角加速度および上体 ョ一角加速度) を基準上体姿勢角加速度に、 逆位相腕振り角加速度を基 準逆位相腕振り角加速度に一致させる。 このようにしても運動によって 発生する床反力が、 床反力水平成分許容範囲および床反カモ一メント鉛 直成分許容範囲のいずれも越えないと予想されているので、 このように 決定しても問題ない。
S 5 2 8または S 5 3 6の処理の後、 図 2 5の S 4 1 4に進み、 S 4 1 2で求めた上体水平加速度を逐次積分する (時刻 Ts から現在時刻 k まで累積加算する) ことにより上体水平速度が求められ、 さらにその上 体水平速度を逐次積分する (時刻 Ts から現在時刻 kまで累積加算す る) ことにより、 上体水平位置 (今回値) が求められる。 また、 S 4 1 2で求めた上体姿勢角加速度を逐次積分する (時刻 Ts から現在時刻 k まで累積加算する) ことにより上体姿勢角速度が求められ、 さらにその 上体姿勢角速度を逐次積分する (時刻 Ts から現在時刻 kまで累積加算 する) ことにより、 上体姿勢角 (今回値) が求められる。
次に S 4 1 6に進み、 S 4 1 2で求めた逆位相腕振り加速度 j8 a を逐 次積分する (時刻 Ts から現在時刻 kまで累積加算する) ことにより逆 位相腕振り速度が求められ、 さらにこれを逐次積分する (時刻 Ts から 現在時刻 kまで累積加算する) ことにより、 逆位相腕振り角 0 az (今 回値) が求められる。
以上のごとく図 2 4の S 3 0 6の定常歩容瞬時値決定サブルーチンが 実行された後、 S 3 0 8に進み、 歩容生成用時刻 k の値が歩容生成ィ ン夕一バル△ kだけ増加される。 次いで S 3 0 4に戻り、 S 3 0 4に示 す条件が成立している限り、 S 3 0 6 と S 3 0 8の処理が繰り返され、 S 3 0 4に示す条件が成立しなくなったら、 すなわち終端 (時刻 Te = Ts + Tcyc) まで仮歩容の生成が完了したら、 S 3 1 0に進む。
定常歩容では、 それを繰り返したときに境界でロボッ ト 1の運動状態 が不連続にならないように、 初期上体姿勢角及びその角速度を決定する 必要がある。
そのために、 S 3 1 0では、 上体姿勢角速度を、 時刻 Te までに、 初 期値 (時刻 Ts での値) に戻すための上体姿勢角加速度を発生させる床 反力モーメントの ZMP換算値 (以降、 上体姿勢復元モーメント Z MP 換算値と呼び、 Z MPrecと略す) のパターンを設定する。
これについて以下に詳細に説明する。
上体姿勢角 ·逆位相腕振り角復元期間 (時刻 Tm から時刻 Ts2 の期 間および時刻 Tm2 から Te までの期間) に、 上体傾斜モードを用いて 上体姿勢角加速度を発生させることにより、 上体姿勢角速度を初期値 (時刻 Ts での値) に戻すことを考える。 このための上体姿勢角加速度 パターンを、 3 (k)とする。 なお、 上記期間以外では、 /3(k)=0 とする, 上体傾斜モードでは、 上体姿勢角加速度 iS (k)を発生させようとする と、 床反力モーメント 3 (k)* ΔΜ Γが発生する。 この結果、 その瞬間 における床反力鉛直成分が Fz(k)であるとすると、 (目標 Z M Pでな く) 運動から算出される Z MP (k)は、 次式で求められる Δ Z M Pだけ ずれる。
Δ ZMP(k)= - /3 (k)* ΔΜ r /Fz(k) …式 2 3 したがって、 △ M rのパターンと Fz( k )のパ夕一ンが決まっていれば (既知であれば)、 △ Z MP(k)のパターンを適当に設定することによ つて、 式 2 3を満足する上体姿勢角加速度パターンを発生させて、 上体 姿勢角速度を初期値 (時刻 Ts での値)、 すなわち基準上体姿勢軌道の 初期 (時刻 Ts)状態における上体姿勢角速度に戻すことができる。
前記上体姿勢復元モーメント Z M P換算値 (Z MPrec) は、 そのよ うに適切に設定された Δ ZMP(k)を意味する。 前記式 2 3を用いて上 体姿勢復元モーメント Z M P換算値を設定する際に、 ΔΜ Γは厳密には 変動するが、 近似的に一定値としても良い。 定常歩容は仮に生成される だけであり、 実際の口ポッ トをこの歩容に追従させるわけではないので. 定常歩容の動力学的精度はあまり高くなくても良いからである。
図 3 0に Z M P rec の一例を示す。 図 3 0では、 Z M P rec のパタ一 ンとして、 時刻 Tmから時刻 Ts2 の期間および時刻 Tm2から Te まで の期間に台形パターンが形成されている。 その台形部の折れ点の時刻は. 時刻 Tm と時刻 Ts2 との間の期間および時刻 Tm2から Te までの期間 における目標 Z M Pパターンの折れ点の時刻 (図 2 2参照) に一致させ てある。 これは、 後述するが、 今回歩容の目標 Z M Pパターンの修正が 簡単になるからである。
式 2 3の Δ Z MP(k)に ZMPrec(k)を代入することにょり次式が得 られる。 i3 (k) = - Z M Prec(k)* Fz(k)/ ΔΜ r …式 2 4 したがって、 この式 2 4で求められる 3 (k)は、 図 3 1の実線で示す ようになる。 なお、 図 3 1の点線で示すものは、 時刻 Ts から時刻 Tm までの期間および時刻 Tm2 から Te までの期間の上体姿勢角加速度 (図 2 9の実線示のもの) である。 (以降、 時刻 kでの値であることが 明らかな場合には、 (k )を省略する場合がある。)
初期 (時刻 Ts) 上体姿勢角は、 初期 (時刻 Ts) 基準上体姿勢角に一 致させる。
また、 初期上体姿勢角速度は、 式 3 7 a、 3 7 を満たすように決定 する。 終端上体姿勢角一初期上体姿勢角
=床反力水平成分許容範囲を満たすように決定された上体姿勢角加速 度の 2階積分
+ Z M P recによって発生する上体姿勢角加速度の 2階積分
+初期上体姿勢角速度 *定常歩容の周期
……式 3 7 a 終端上体姿勢角速度一初期上体姿勢角速度
· =床反力水平成分許容範囲を満たすように決定された上体姿勢角加速 度の 1階積分
+ Z M P recによって発生する上体姿勢角加速度の 1階積分
……式 3 7 b なお、 式 3 7 a、 3 7 bのそれぞれの右辺第 1項の積分期間は、 時刻 Tsから Tm までの期間と、 Ts2から Tm2 までの期間とを合わせた期間 であり、 右辺第 2項の積分期間は、 時刻 Tm から Ts2 までの期間と Tm2から Teまでの期間とを合わせた期間である。
より具体的に説明すると定常歩容では、 第 1旋回歩容の支持脚座標系 (次回歩容支持客座標系) から見た初期状態姿勢角及び角速度が、 それ ぞれ、 次の第 1旋回歩容の支持脚座標系 (次次次回歩容支持脚座標系) から見た終端上体姿勢角および角速度に一致していなければならない。 そこで、 本第 1参考例では、 初期 (時刻 Ts) 上体姿勢角は、 初期 (時 刻 Ts) 基準上体姿勢角の値に決定し、 これと、 これを定常歩容におけ る口ポッ ト 1のトータルの旋回角 (鉛直軸回りの旋回角) に応じたマト リクス (回転座標変換のマトリクス) により次回歩容支持脚座標系から 見た値に座標変換したものとをそれぞれ式 3 7 aの左辺の初期上体姿勢 角、 終端上体姿勢角に代入する。 また、 式 3 7 a, 3 7 bのそれぞれの 右辺第 1項の積分に係る上体姿勢角加速度は、 前記図 2 6の S 5 1 8で 求められたものが用いられる。
そして、 式 3 7 a , 3 7 bの初期上体姿勢角速度と、 式 3 7 a, 3 7 bの右辺第 2項の積分に係る Z M P rec (図 3 0の台形状のパターン) の台形高さをと未知数として (但し、 Z M P rec の台形パターンの折れ 点の時刻は前記のごとくあらかじめ定める。 また、 第 1旋回歩容の Z M P rec の台形高さ acycl と第 2旋回歩容の Z M P rec の台形高さ acyc2 を同一値とする。)、 それらの未知数を含む式 3 7 a , 3 7 bの連立方程 式を解くことにより求められる初期上体姿勢角速度を新たな初期上体姿 勢角速度として決定する。 この場合、 式 3 7 bの終端上体姿勢角速度は, 未知数である初期上体姿勢角速度を、 定常歩容の上記トータルの旋回角 に応じたマトリクスにより次回支持脚座標系から見た値に座標変換した ものである。
次いで S 3 1 2に進み、 上体傾斜復元モ一メント Z M P換算値 (Z M P rec) パターンを基に、 これによる上体水平位置 · 速度への影響量を 求め、 終端上体水平位置 ·速度に加算する。
この処理について解説する。 なお、 その詳細は、 本願出願人の P C T Z J P 0 2 1 3 5 9 2にて説明されているので、' ここでは簡略な説明 に留める。 時刻 Tsから Tm の期間および時刻 Ts2から Te の期間において、 上 記のごとく上体傾斜復元モーメント Z MP換算値 ( Z MPrec) パター ンを発生するように上体姿勢角加速度 /3を変化させると、 上体姿勢角加 速度 βは、 次式のようになる。 β =— ZMPrecネ FZ/ ΔΜ Γ …式 1 0 2 5 上体傾斜復元モーメントを発生させない場合に目標 Z MPを満足する 上体水平加速度は、 S 5 3 2において求めたごとく atmp であるが、 上記のごとく上体姿勢角加速度 iSを変化させると、 目標 Z MPを満足す るために必要な上体水平加速度 は、 次式のようになる。 = a t v- Δ M r / Δ Mp ) * β 式 1 0 2 6 · 式 1 0 2 5および 1 0 2 6より、 , a = a tmp + Z M P rec * Fz/ Δ M p …式 1 0 2 7 すなわち、 上体傾斜復元モーメント Z M P換算値 ( Z M Prec) によつ て、 加速度が式 1 0 2 7の右辺第 2項分だけ増加する。
式が線形であることを利用すると、 上記のごとく上体傾斜復元モーメ ント Z M P換算値 (Z M Prec) パターンを発生するように上体姿勢角 加速度 )3を変化させた場合の終端上体水平速度は、 上体傾斜復元モーメ ント Z MP換算値 ( Z M Prec) パターンを発生させなかった場合の終 端上体水平速度、 すなわち S 4 1 4で求めた上体水平速度の終端値に、 時刻 Tsから Te までの (Z MPrec* FzZAMp) の 1階積分を加算し たものとして求められる。 また、 上記のごとく上体傾斜復元モーメント Z M P換算値 ( Z M P rec) パターンを発生するように上体姿勢角加速 度 /3を変化させた場合の終端上体水平位置は、 上体傾斜復元モーメント Z M P換算値 ( Z M P rec) パターンを発生させなかった場合の終端上 体水平位置、 すなわち S 4 1 4で求めた上体水平位置の終端値に、 時刻 Ts から Te までの ( Z M P rec * FzZ Δ Μ ρ ) の 2階積分を加算したも のとして求められる。
S 3 1 2の処理を完了した後、 S 3. 1 4に進み、 逆位相腕振り角速度 が初期と終端で一致するように逆位相腕振り復元角加速度 ( arec) パ ターンを決定する。
具体的には、 逆位相腕振り復元角加速度パターンを図 3 6のように台 形状に設定し、 時刻 Tmから Ts2 までの期間の台形高さ azcyc2 と時刻 Tm2 から Te までの期間の台形高さ azcycl を同一とし、 時刻 Ts から Te までの i3 arec の積分値と床反力モーメント鉛直成分 Mz が許容範囲 を越えないようにするための前記求めた逆位相腕振り加速度 /3 a の積分 値との和が 0となるように台形高さ azcycl、 azcyc2 を決定する。 なお. 両区間の台形高さは、 同一でなくても構わない。
補足すると、 このように決定した逆位相腕振り復元角加速度パターン によって発生する床反力モーメント鉛直成分 (Mazrec) は、 図 3 7の ようになる。 したがって、 逆位相腕振りを含む口ポッ トの運動によって 発生する床反力モーメント鉛直成分 Mzは、 最終的には、 図 3 8に示す ごとく、 図 3 2の Mztmp と図 3 4の Mazと図 3 7の Mazrecとの和、 すなわち、 図 3 3の Mz と図 3 7の Mazrec との和になる。 時刻 Tmか ら Ts2 までの期間および時刻 Tm2 から Te までの期間においては、 台 形状の復元モーメントが加算されるが、 これらの期間は、 許容範囲が十 分に広い期間に設定されているので、 逆位相腕振りを含むロポッ 卜の運 動によって発生する床反力モーメント鉛直成分は、 許容範囲を越えるこ とはない。
次に S 3 1 6に進み、 定常歩容の初期 (時刻 Ts) 逆位相腕振り角お よび角速度を決定する。
具体的には、 初期逆位相腕振り角速度は、 以下の式によって決定する 初期逆位相腕振り角速度
=基準初期逆位相腕振り角速度
- ( /3 arecが 0の場合の逆位相腕振り角
+ )3 arecパターンの 2階積分) ノ Tcyc
…式 1 0 3 0 ただし、 上式において、 iS arec が 0の場合の逆位相腕振り角とは、 S 4 1 6において求めた逆位相腕振り角 (時刻 Te における逆位相腕振 り角) のことである。 また、 β arec の 2階積分とは、 図 3 6のように 設定した逆位相腕振り復元角加速度の時刻 Ts から Te までの 2階積分 値である。 また、 基準初期逆位相腕振り角速度は前記基準逆位相腕振り 角速度 (基準逆位相腕振り角 0 aref の 1階微分値) の時刻 Ts での値で ある
初期逆位相腕振り角は、 基準初期逆位相腕振り角に一致させれば良い, または、 最終的に決定された逆位相腕振り角加速度 (すなわち、 床反力 モーメント鉛直成分 Mzが許容範囲を越えないようにするための前記求 めた逆位相腕振り加速度 j8 aと復元角加速度) 3 arecの和) と上記求めた 初期逆位相腕振り角速度を基に、 仮に初期逆位相腕振り角を基準初期逆 位相腕振り角に一致させた場合に算出される腕振り角と基準逆位相腕振 り角との差の平均値または前記差の最大値と最小値の平均値を求め、 求 めた平均値の 2分の 1を基準初期逆位相腕振り角から減じた値を最終的 な初期逆位相腕振り角として決定しても良い。 このようにすることで、 算出される腕振り角と基準逆位相腕振り角との差の絶対値が大きくなり 過ぎることを防止することができる。
時刻 Ts、 Tm、 Ts2 および Tm2 を前記のごとく設定した理由のひと つは、 時刻 Tmから Ts2 までの期間と時刻 Tm2から Te までの期間と において、 上体姿勢角速度を基準上体姿勢軌道の初期角速度に戻すよう に上体姿勢角加速度 を発生させても、 床反力水平成分 Fx が許容範囲 [Fxmin, Fxmax]を越えないようにするためである。 換言すれば、 時刻 Tmから Ts2までの期間と時刻 Tm2から Teまでの期間とにおいては、 床反力水平成分許容範囲が十分に大きいため、 目標 Z M Pを満足しつつ. 上体姿勢角速度を'戻すように上体姿勢角加速度 3を発生させても、 床反 力水平成分 F xは、 許容範囲を越えることがない。
また時刻 Ts、 Tm、 Ts2 および Tm2 を前記のごとく設定したもうひ とつの理由は、 時刻 Tmから Ts2 までの期間と時刻 Tm2から Te まで の期間とにおいて、 逆位相腕振り角速度を基準逆位相腕振り角軌道の初 期角速度に戻すように逆位相腕振り角加速度) 3 a を発生させても、 床反 力モーメント鉛直成分 Mzが許容範囲 [Mzmin, Mzmax]を越えないよう にするためである。 換言すれば、 時刻 Tm から Ts2 までの期間と時刻 Tm2から Te までの期間とにおいては、 床反カモ一メント鉛直成分許容 範囲が十分に大きいため、 逆位相腕振り角速度を戻すように逆位相腕振 り角加速度 j3 a を発生させても、 床反力モーメント鉛直成分 Mz は、 許 容範囲を越えることがない。
以上のごとく図 2 4の S 3 1 6の処理が完了した後、 図 2 3の S 2 1 0に進み、 生成した歩容 (仮定常歩容) の終端上体水平位置 ·速度を、 その瞬間の支持脚に対応する支持脚座標系 (図 1. 7の Χ "', Υ '" , Ζ'" 座標系) から見た値に変換し、 その値を (X e, V e ) とする (X e : 終端上体水平位置、 V x e :終端上体水平速度)。
次いで S 2 1 2に進み、 図示の如く、 初期上体水平位置速度 (X s , V x s ) と終端上体水平位置速度 (X e , V e ) との差を算出する。 この差 (X s — X e, V x s - Vx e ) を上体水平位置速度境界条件誤 差 (errx, errvx) と呼ぶ。 定常歩容では、 前記境界条件を満たす必要 があるので、 (X s, V X s ) と (X e, V e ) とが一致していなけ ればならない。 従って、 上体水平位置速度境界条件誤差 (errx, errvx) が零またはほぼ零でなければならない。 本第 1参考例では、 以 下のように、 上体水平位置速度境界条件誤差 (errx, errvx) がほぼ零 となる (X s, V x s ) が探索的に求められる。
次いで S 2 1 4に進み、 算出した上体水平位置速度境界条件誤差 (errx, errvx) が、 あらかじめ適宜設定された許容範囲内にあるか否 かが判断される。 尚、 このように上体水平位置速度境界条件誤差の許容 範囲を設定する代わりに、 初期発散成分 (X s + V x s /ωΟ) と終端 発散成分 (X e + V x e /ωΟ) との差、 および初期収束成分 (X s — V X s /ωθ') と終端収束成分 (X e - V x e /ωθ') との差がそれ ぞれある許容範囲内にあるか否か判断するようにしても良い。 ただし ω 0, ωθ' は、 前述したように、 ある所定の値である。
S 2 1 4の判断結果が Ν Οであるときには S 2 1 6に進む。 この S 2 1 6では、 (X s, V X s ) の付近に複数 (本第 1参考例では 2つ) の 初期値候補 (X s + A X s , V X s ), (X s , V x s + A V x s ) が決 定される。 ここで、 A X s , A V x sは、 それぞれ X s, V x sに対す る所定の微小変化量を意味している。 そして、 これらの初期値候補のそ れぞれを上体水平位置速度の初期状態として、 前記 S 2 0 8と同様の処 理によって定常歩容が歩容パラメータを用いて生成される。 さらに、 そ の生成された定常歩容の終端上体位置速度を、 その瞬間の支持脚に対応 する支持脚座標系 (図 1 7の X"', Υ'" , Ζ'"座標系) から見た値に変 換した値 (X e + A X e l, V x e +厶 V x e l ), ( X e + Δ X e 2 , V x e + A V x e 2 ) が求められる。 ここで、 (X e + A X e l, V x e + Δ V x e 1 ) は (X s + A X s, V x s ) に対応する終端上体位置 速度を意味し、 (X e + A X e 2, V x e + A V x e 2 ) は (X s, V x s + Δ V x s ) に対応する終端上体位置速度を意味している。 なお、 この場合の定常歩容 (仮歩容) の生成処理では、 上体水平位置速度以外 の変数の初期状態 (時刻 T sでの状態) は、 例えば上体水平位置速度の 初期値候補を (X s , V X s ) とした場合と同一に設定すればよい。 S 2 1 6ではさらに、 前記 S 2 1 0と同様の処理によって、 各初期値候補 とこれに対応する終端上体位置速度との差、 すなわち、 各初期値候補 (X s + Δ X s , V s ), (X s , V X s + Δ V X s ) のそれぞれに対 応する上体水平位置速度境界条件誤差が求められる。
次いで S 2 1 8に進み、 (X s , V X s ) およびその付近の初期値候 補 (X s + A X s, V X s ), (X s , V x s.+ A V x s ) のそれぞれに 対する上体水平位置速度境界条件誤差を基に、 (X s, V X s ) の次の 初期値候補が探索法 (擬似ヤコビアン (感度マトリックス) を求め、 最 急降下法などにより次候補を決定する方法や、 シンプレックス法など) により決定される。 すなわち、 (X s, V s ) およびその付近の初期 値候補 (X s + A X s , V X s ), (X s, V x s + Δ V x s ) のそれぞ れに対する上体水平位置速度境界条件誤差によって、 上体水平位置及び 上体水平速度をそれぞれ初期値候補 (X s , V X s ) から微小変化させ たときの、 上体水平位置速度境界条件誤差の変化度合いを示す感度マト リックスが求められ、 その感度マトリックスに基づいて、 上体水平位置 速度境界条件誤差をより小さくするような初期値候補 (X s, V x s ) が新たに決定される。 そして、 このように上体水平位置速度の新たな初 期値候補 (X s, V X s ) が決定された後、 S 2 0 6に戻る。
S 2 1 4の判断結果が NOとなる限りは上記した処理 (S 2 0 6〜S 2 1 8の処理) が繰り返される。 なお、 この場合、 上体水平位置速度の 新たな初期値候補 (X s, V X s ) に対応する定常歩容の生成処理 (S 2 0 8 ) における S 3 0 0 (図 2 4参照) では、 上体姿勢角速度の初期 値は、 基準上体姿勢角速度の初期値ではなく、 上体水平位置速度の前回 の初期値候補 (X s, V s ) に対応する S 2 0 8の処理における S 3 1 0 (図 2 4参照) で決定したものに設定される。 そして、 S 2 1 4の 判断結果が YE Sになると、 繰り返しループ (S 2 0 4) を抜けて S 2 2 0に進む。 なお、 S 2 0 4の繰り返しループを抜けたときの直前に生 成された仮定常歩容が、 境界条件を満たす定常歩容として得られること となる。
S 2 2 0では、 本来の初期時刻 0 (今回歩容の終端時刻) における初 期上体水平位置速度 (X0, V0) と初期時刻 0における初期上体鉛直 位置速度 ( Z0、 V z 0) と初期時刻 0における初期上体姿勢角および 角速度が求められる。
具体的には、 (X0, V0) と (Z0, V z 0) は、 S 3 1 0において決 定された上体傾斜復元モーメント Z MP換算値パターン、 時刻 Ts にお ける定常歩容の初期上体姿勢角および角速度と、 S 2 0 4のループを抜 けた後の時刻 Ts における上体水平位置速度(Xs,Vxs)を基に、 歩容の条 件を満足するように歩容を生成した場合における、 第 2旋回歩容から第 1旋回歩容に切り換わった瞬間の時刻、 すなわち、 時刻 k二 Tcyc (時 刻 Te— Ts) であるときに決定される上体水平位置速度と上体鉛直位置 速度とを、 それぞれ時刻 Tcyc から始まる一歩 (すなわち 2度目の第 1 旋回歩容) の支持脚に対応する支持脚座標系 (図.1 7の Χ"', Υ"', Ζ'" 座標系) から見た値に変換した値に決定される。 同様に、 初期状態姿勢 角および角速度は、 時刻 k =Tcyc (時刻 Te— Ts) であるときに決定さ れる上体姿勢角及び角加速度を、 時刻 Tcyc から始まる一歩 (すなわち 2度目の第 1旋回歩容) の支持脚に対応する支持脚座標系 (図 1 7の X "', Υ'", Ζ'"座標系) から見た値に変換した値に決定される。
次いで S 2 2 2に進み、 定常歩容初期発散成分 q [ 0 ] が次式から求 められる。 q [0]=X0+ VO/ωΟ …式 4 0
ただし ωθ は、 発散についての解説で述べたように、 ある所定の値であ る。
次に S 2 2 4に進み、 定常歩容初期発散成分 d [ 0 ] が今回歩容支持 脚座標系から見た値に変換され、 これが q " [ 0 ] として求められる。 また、 初期上体鉛直位置速度 (Z 0 , V z 0 ) が今回歩容支持脚座標系 から見た値に変換され、 これが (Z0 ", V z 0 ") として求められる。 · 補足すると、 ( Z 0 ", V z 0 ") は、 第 2旋回歩容の支持脚座標系 (図 1 7の X", Y", Ζ" 座標系) から見た第 2旋回歩容終端上体鉛直 位置速度に一致している。 また、 Q " [ 03 も第 2旋回歩容の支持脚座 標系 (図 1 7の Χ", Υ", Ζ" 座標系) から見た第 2旋回歩容終端発散 成分に一致している。 したがって、 これらの性質を用いて、 (Ζ 0 ", V ζ 0 ") および Q" [ 0 ] を算出するようにしても良い。
さらに、 S 2 2 6に進み、 本来の初期時刻 0 (今回歩容の終端時刻) における初期逆位相腕振り角および角速度(0 azO, coazO)を求め、 さら に、 これを今回歩容の支持脚座標系から見た値である(0 az0", coazO") を求める。 具体的には、 (0 az0, ω azO)は、 S 3 1 4および S 3 1 6に おいて決定された逆位相腕振り復元角加速度パタ ン、 定常歩容の初期 (時刻 Ts) 逆位相腕振り角および角速度とを基に、 歩容の条件を満足 するように歩容を生成した場合における (より具体的には、 上体姿勢 角 ·逆位相腕振り角復元期間以外では、 床反カモ一メント鉛直成分が許 容範囲を越えないように、 逆位相腕振り角軌道を決定し、 上体姿勢角 · 逆位相腕振り角復元期間では、 前記基準逆位相腕振り角加速度 )3 aref と逆位相腕振り復元角加速度 3 arec の和が発生するように逆位相腕振 り角軌道を決定した場合における) 第 2旋回歩容から第 1旋回歩容に切 り換わった瞬間の時刻、 すなわち、 時刻 k = Tcyc (時刻 Te— Ts) であ るときに決定される逆位相腕振り角および角速度を、 時刻 Tcyc から始 まる一歩 (すなわち 2度目の第 1旋回歩容) の支持脚に対応する支持脚 座標系 (図 1 7の Χ '", Υ '", Z"'座標系) から見た値に変換した値に決 定される。
以上により、 図 1 3の S 0 2 4の処理、 すなわち定常歩容の初期状態 を求めるサブルーチン処理が終了する。
次いで、 図 1 3の S O 2 6に進み、 今回歩容の歩容パラメ一夕を決定 (一部は仮決定) する。 S O 2 6では、 より具体的には、 図 3 9に示す フローチャートに従って、 以下の処理が行われる。
まず、 S 6 0 0において、 今回歩容の足平位置姿勢軌道が定常歩容の 足平位置姿勢軌道につながるように、 今回歩容の足平軌道パラメータが 設定される。
具体的には、 今回歩容初期遊脚足平位置姿勢 (今回歩容遊脚足平位置 姿勢の初期値) は、 今回歩容支持脚座標系から見た現在遊脚位置姿勢 (前回歩容終端遊脚位置姿勢) に設定される。 今回歩容初期支持脚足平 位置姿勢 (今回歩容支持脚足平位置姿勢の初期値) は、 今回歩容支持脚 座標系から見た現在支持脚足平位置姿勢 (前回歩容終端支持脚足平位置 姿勢) に設定される。 また、 今回歩容終端遊脚足平位置姿勢は、 今回歩 容支持脚座標系から見た次回歩容支持脚座標系 (今回歩容に係わる 1歩 目の遊脚着床位置姿勢の要求値) に対応して決定される。 すなわち、 今 回歩容終端遊脚足平位置姿勢から遊脚足平 2 2を床に接触させたまま、 すべらないように該足平 2 2をその底面のほぼ全面が接地するまで回転 させたときの、 該足平 2 2の代表点が今回歩容支持脚座標系から見た次 回歩容支持脚座標系の原点に合致するように今回歩容終端遊脚足平位置 姿勢が決定される。
今回歩容終端では、 支持脚足平 2 2は離床して空中にある。 支持脚足 平 2 2が離床してから後の軌道を決定するために、 支持脚足平着地予定 位置姿勢を設定する。 支持脚足平着地予定位置姿勢は、 今回歩容支持脚 座標から見た次次回歩容支持脚座標 (今回歩容に係わる 2歩目の遊脚足 平位置姿勢の要求値) に対応して設定される。 より具体的には、 支持脚 足平着地予定位置姿勢は、 その位置姿勢から、 足平 2 2を床に接触させ たまま、 すべらないように該足平 2 2をその底面のほぼ全面が床に接地 するまで回転させたときの該足平 2 2の代表点が今回歩容支持脚座標か ら見た次次回歩容支持脚座標の原点に合致す.るように設定される。
今回歩容終端支持脚足平位置姿勢は、 現在支持脚位置姿勢 (今回歩容 初期支持脚足平位置姿勢) から、 次回歩容支持脚座標系に対応する足平 着地予定位置姿勢 (前記要求パラメ一夕における 2歩目の遊脚側足平着 地位置姿勢の要求値) に至る足平位置姿勢軌道を、 今回歩容終端まで前 記有限時間整定フィル夕により生成することにより求められる。
次いで、 S 6 0 2に進み、 今回歩容の基準上体姿勢軌道パラメ一夕が、 定常歩容の第 1旋回歩容ゃ第 2旋回歩容と同様に決定される。 ただし、 今回歩容の基準上体姿勢軌道が前記定常歩容の基準上体姿勢軌道に連続 してつながる (今回歩容終端での基準上体姿勢角及び角速度がそれぞれ 定常歩容初期の基準上体姿勢角及び角速度に一致する) ように上記パラ メータが設定される。 なお、 本第 1参考例では、 傾斜角に関する基準上 体姿勢は、 今回歩容及び定常歩容のいずれでも定常的な鉛直姿勢である, 次いで、 S 6 0 4に進み、 今回歩容の基準腕姿勢軌道パラメ一夕が、 定常歩容の第 1旋回歩容ゃ第 2旋回歩容と同様に決定される。 ただし、 今回歩容の初期基準腕姿勢およびその変化率が基準腕姿勢および変化率 の現在瞬間値に一致し、 かつ、 今回歩容の腕姿勢軌道が前記定常歩容の 腕姿勢軌道に連続してつながるように上記パラメ一夕を設定する。 なお ここで決定される腕姿勢軌道パラメ一夕は、 定常歩容パラメ一夕の決定 (図 1 5の S 1 0 4 ) の場合と同様、 .たとえば、 両腕体 5, 5の全体の 重心位置 (上体 3に対する相対位置)、 左右の手先 (両腕体 5, 5の先 端) の左右方向の間隔および逆位相腕振り角に関するパラメ一夕が決定 される。 尚、 本第 1参考例では、 両腕体 5 , 5の全体の重心位置は、 上 体 3に対して一定に維持されるように設定される。
次いで、 S 6 0 6に進み、 今回歩容の床反力鉛直成分軌道パラメ一夕 が、 定常歩容の第 1旋回歩容ゃ第 2旋回歩容と同様、 該パラメータによ り規定される床反力鉛直成分軌道が前記図.6のように実質的に連続な (値がステップ状に飛ばない) 軌道になるように設定される。
ただし、 床反力鉛直成分軌道パラメ一夕は、 今回歩容の全体重心鉛直 位置速度と床反力鉛直成分軌道とのいずれもが、 前記定常歩容と連続し てつながるように決定される。
具体的には、 まず、 前記図 1 3の S 0 2 4の処理 (定常歩容初期状態 の決定処理) で最終的に求めた定常歩容の初期上体鉛直位置速度を今回 歩容支持脚座標系から見た値に変換した値 (Z 0 ", V z 0 ")、 すなわ ち、 図 2 3の S 2 2 4で求めた (Z 0 ", V z 0 ") 等を基に、 例えば前 記式 0 4 (あるいは口ポッ ト 1のキネマテイクスモデル) を用いて、 今 回歩容支持脚座標系から見た定常歩容の初期全体重心鉛直位置速度が求 められる。 具体的には、 今回歩容支持脚座標系から見た定常歩容の初期 全体重心鉛直位置は、 S 2 2 4で求めた定常歩容の上体鉛直位置 Z0" に対応する図 1 2のモデルの上体質点鉛直位置と、 定常歩容初期の各足 平位置を今回歩容支持脚座標系から見た値に変換したものに対応する支 持脚側及び遊脚側の脚体質点鉛直位置とを式 0 4に代入することで求め られる。 また、 今回歩容支持脚座標系から見た定常歩容の初期全体重心 鉛直速度は、 S 2 2 4で求めた定常歩容の上体鉛直速度 VzO" に対応す る図 1 2のモデルの上体質点鉛直速度と、 定常歩容初期の各足平鉛直速 度を今回歩容支持脚座標系から見た値に変換したものに対応する支持脚 側及び遊脚側の脚体質点鉛直速度とを式 0 4の両辺を微分してなる式に 代入することにより求められる。 なお、 この初期全体重心鉛直位置速度 の算出は、 より厳密なモデルを用いて行なうようにしてもよい。
そして、 このようにして求めた定常歩容の初期全体重心鉛直位置速度 を、 次式 4 1 a、 4 1 bの終端全体重心鉛直位置速度に代入すると共に, 前回の目標歩容瞬時値 (より厳密には、 前回目標歩容の終端状態を今回 支持脚座標系に変換したもの) の全体重心鉛直位置および速度を、 式 4 1 a、 4 1 bの初期全体重心鉛直位置および速度に代入し、 式 4 1 a、 4 1 bの関係を満足するように、 今回歩容の床反力鉛直成分パターン (より具体的にはパラメ一夕値) が決定される。 ただし、 式 4 1 a、 4 . 1 bにおける積分値は今回歩容の初期から終端までの期間の積分値とす る。 終端全体重心鉛直位置一初期全体重心鉛直位置
= (床反力鉛直成分 Z口ポッ トの全体質量) の 2階積分
+重力加速度の 2階積分
+初期全体重心鉛直速度 * 1歩の時間
…式 4 1 a 終端全体重心鉛直速度 -初期全体重心鉛直速度
= (床反力鉛直成分/口ポッ トの全体質量) の 1階積分
+重力加速度の 1階積分
…式 4 1 b ただし、 重力加速度は負の値とする。
より具体的には、 まず、 図 6のような床反力鉛直成分パターンを規定 する床反力鉛直成分パラメ一夕 (折れ点の時刻等) のうちの、 少なくと も 2つのパラメ一夕を独立な未知変数として、 その未知変数の値を、 式 4 1 a、 4 1 bからなる連立方程式を解いて決定する。
未知変数とする床反力鉛直成分パラメ一夕には、 例えば、 図 6の台形 の高さ (床反力鉛直成分のピーク値) と幅 (片脚支持期時間) とを選択 すれば良い。 この場合、 図 6の台形の両側部分の傾きは今回歩容周期等 に応じてあらかじめ定めた値とし、 あるいは、 片脚支持期から空中期に 移行する時刻を除く床反力鉛直成分パターンの折れ点の時刻を今回歩容 周期等に応じてあらかじめ定めた値とする。 補足すると、 未知変数を 1 つとすると、 一般的には式 4 1 a、 4 1 bの連立方程式を満足する解が 存在しない。
次いで、 S 6 0 8に進み、 床反力水平成分許容範囲 [Fxniin, Fxmax] (具体的には該床反力水平成分許容範囲のパターンを規定するパラメ一 夕) が、 定常歩容の第 1旋回歩容ゃ第 2旋回歩容と同様に設定される。 たとえば図 4 0に示すようなパターンで床反力水平成分許容範囲が設定 される。 本第 1参考例では、 先に S 6 0 6で決定した床反力鉛直成分パ ターンに応じて前記式 1 2に基づいて床反力水平成分許容範囲が設定さ れる。
次いで、 S 6 1 0 に進み、 床反力モーメン ト鉛直成分許容範囲 [Mzmin, Mzmax] (具体的には該床反力モーメント鉛直成分許容範囲 のパターンを規定するパラメ一夕) が、 定常歩容の第 1旋回歩容ゃ第 2 旋回歩容と同様に設定される。 たとえば図 4 1に示すようなパターンで 床反力モーメント鉛直成分許容範囲が設定される。 本第 1参考例では、 先に S 6 0 6で決定した床反力鉛直成分パターンに応じて前記式 1 0 1 2に基づいて床反力モーメント鉛直成分許容範囲が設定される
次いで、 S 6 1 2に進み、 今回歩容の Z M P軌道 (具体的には Z M P 軌道を規定するパラメータで、 軌道の折れ点の時刻や位置) が、 定常歩 容の第 1旋回歩容ゃ第 2旋回歩容と同様、 安定余裕が高くかつ急激な変 化をしないように、 前記図 7に示すごとく設定される。 ただし、 今回歩 容の Z MP軌道が前記定常歩容の Z MP軌道に連続してつながるように 上記パラメ一夕を設定される。 つまり、 今回歩容終端における Z MPの 位置が定常歩容初期の Z MP位置に一致するように、 Z MP軌道パラメ 一夕が決定される。 この場合、 走行歩容では、 片脚支持期における ZM P軌道の折れ点の時刻や位置の設定の仕方は、 前述した定常歩容の Z M P軌道パラメ一夕の設定の仕方と同様でよい.。 そして、 空中期における 目標 Z MP軌道が、 空中期開始時から、 定常歩容初期の Z MP位置まで. 直線的に連続して変化するように Z MP軌道パラメータを設定すればよ い。
なお、 S 6 1 2で決定される今回歩容の ZMP軌道パラメ一夕は、 仮 決定されただけであり、 後述するように修正される。 そこで、 上記のご とく設定した今回歩容の ZMP軌道を、 以降、 今回歩容の仮目標 Z MP 軌道と呼ぶこととする。
最後に、 S 6 1 4に進み、 上体姿勢角 , 逆位相腕振り角復元期間 [Ta, Tb]が設定される。 上体姿勢角 , 逆位相腕振り角復元開始時刻 Ta は、 定常歩容の第 2旋回歩容における Tmに相当し、 上体姿勢角 · 逆位相腕 振り角復元修了時刻 Tbは、 定常歩容の第 2旋回歩容における Ts2 に相 当するものである。 これらの時刻 Ta, Tb の設定の仕方は、 それぞれ Tmおよび Ts2の設定の仕方と同様である。
図 1 3の説明に戻って、 上記のごとく S 0 2 6に示す処理 (今回歩容 の歩容パラメ一夕決定処理) を行って後、 次いで S O 2 8に進み、 今回 歩容の歩容パラメ一夕 (Z M P軌道パラメータ) が修正され、 また、 逆 位相腕振り角に関するパラメータが決定される。 この処理では、 上体位 置姿勢軌道を定常歩容に連続させ、 もしくは近づけるべく Z M P軌道パ ラメ一夕が修正され、 かつ、 逆位相腕振り角が定常歩容の逆位相腕振り 角軌道に収束するように今回歩容の逆位相腕振り角に関するパラメ一夕 が決定される。
図 4 2はその処理を示すサブルーチン · フロー ' チャートである。 まず S 7 0 0を経て S 7 0 2に進み、 仮目標 Z M Pパターンとその他 の今回歩容パラメータを基に、 今回歩容終端時刻までの仮今回歩容が仮 生成される。
S 7 0 2では、 図 4 3に示すフローチヤ一.卜に従って、 以下の処理が 行われる。
以下説明すると、 S 8 0 0において、 諸々の初期化が行われる。 具体 的には、 仮歩容生成用時刻 k に 0が代入される。 また、 前回目標歩容 の終端状態 (より具体的には、 上体水平位置速度、 上体鉛直位置速度、 上体姿勢角及びその角速度、 目標足平位置姿勢、 目標腕姿勢などの歩容 状態の終端値) を今回支持脚座標系に変換したものを、 今回歩容初期状 態とする。
補足すると、 目標腕姿勢は、 目標逆位相腕振り角 · 角速度を含む。 次いで、 S 8 0 2を経て S 8 0 4において、 仮歩容生成用時刻 k が 今回歩容終端時刻 Tcui'r 以前であるか否か (k^ Tcurr であるか否か) が判断され、 その判断結果が Y E Sある場合には、 S 8 0 6の今回歩容 瞬時値決定サブルーチンに進み、 今回歩容の時刻 k の瞬時値が決定さ れる。 S 8 0 6の歩容瞬時値決定サブルーチンでは、 前述の S 3 0 6と 同様、 図 2 5に示すごとく仮歩容を生成する。 ただし、 歩容パラメ一夕 として、 定常歩容パラメ一夕の代わりに今回歩容パラメ一夕が用いられ る。
次いで S 8 0 8に進み、 仮歩容生成用時刻 kが だけ増加され、 S 8 0 4に戻る。
S 8 0 4の判断結果が N Oである場合には、 図 4 3に示すフローチヤ 一トの処理が完了する。
以上の処理により、 仮の今回歩容が初期から終端まで生成される。 次いで S 7 0 4に進み、 上記のごとく S 7 0 2で求めた今回歩容終端 での上体水平位置速度 (X e, V X e ) から、 終端発散成分 q 0[k] (k=Tcurr) が図示の式 (前記式 1 0 ) を用いて求められる。
次いで S 7 0 6に進み、 今回歩容終端発散成分 Q 0[k]と定常歩容初期 発散成分 q " (図 2 3の S 2 2 4で求めたもの) との差である終端発散 成分誤差 errq が図示の式を用いて求められる。 さらに、 S 7 0 8に進 んで、 その求めた終端発散成分誤差 errq が許容範囲内 ( 0近傍の範 囲) にあるか否か判断する。
S 7 0 8の判断結果が N Oであるときは S 7 1 0に進み、 a = A a ( Δ aは所定の微小量) とし、 図 4 4の関係に従って現在の仮目標 Z M Pパターンに台形状の修正を加えた目標 Z M Pを基に、 前記 S 7 0 2と 同様に、 終端までの仮今回歩容を計算する。 ここで、 図 4 4を参照して、 aは、 今回歩容終端発散成分を定常歩容初期発散成分にできるだけ一致 させる (今回歩容の上体水平位置姿勢軌道を定常歩容の上体水平位置姿 勢軌道に近づける) ために、 仮目標 Z M Pを修正するための台形パ夕一 ンの高さである。 この場合、 本第 1参考例では、 仮目標 Z M Pの修正は、 支持脚足平 2 2の底面のほぼ全面が接地する期間 (足底全面接地期間) すなわち、 床反力水平成分許容範囲が十分に広いものとなる期間におい て行なうようにしており、 上記台形パターンの折れ点の時刻は、 足底全 面接地期間における仮目標 ZM Pの折れ点の時刻に合わせて設定されて いる。 なお、 S 7 1 0で a = z\ aとするのは、 現在の仮目標 Z MP軌道 を上記台形パターンによって微小量、 修正したときの前記終端発散成分 誤差 errqの変化を観測するためである。
上記のように S 7 1 0にて、 a = A aとして仮目標 ZMP軌道を修正 したときの仮今回歩容を終端まで生成した後、 さらに S 7 1 2に進み、 S 7 1 0で求めた仮今回歩容終端での上体水平位置速度 (X e 1, V x e l) を基に、 この仮今回歩容における終端発散成分 Q l[k]が図示の式 (前記式 1 0 ) を用いて求められる。
尚、 S 7 1 0において Δ aは、 本第 1参考例では、 適宜に設定される 微小量の定数としたが、 以下に説明する繰り返し演算によって終端発散 成分誤差 errq が小さくなるにつれて Δ aを減少させるように該 Δ aを 設定するようにしても良い。 ただし、 定数にしておいても、 数回の繰り 返し演算で終端発散成分誤差 errq を許容範囲内に収めることができる < 次いで S 7 1 4に進み、 パラメ一夕感度 r (Δ aに対する終端発散成 分誤差の変化の割合) が図示の式から求められる。 さらに、 S 7 1 6に 進み、 a =— errqZr、 すなわち S 7 0 6で求めた終端発散成分誤差 errq を、 S 7 1 4で求めたパラメータ感度 rで割った値を高さ aとす る台形パターンの修正量を図 44の関係に従って仮目標 Z MPパターン に加えることにより、 仮目標 ZMPパターンが修正される (新たな仮目 標 Z MPパターンが決定される)。
次いで S 7 0 2に戻る。 そして、 S 7 0 8の判断結果が N Oである限 りは、 上記した S 7 0 2〜S 7 1 6の処理が繰り返され、 S 7 0 8の判 断結果が YE Sになったときには、 その繰り返しループ (S 7 0 0 ) を 抜けて S 7 1 8に進む。
S 7 1 8では、 仮今回歩容の終端上体姿勢角と定常歩容の初期上体姿 勢角との差、 および仮今回歩容の終端上体姿勢角速度と定常歩容の初期 上体姿勢角速度との差などを基に、 今回歩容の上体姿勢角軌道が定常歩 容の上体姿勢角軌道に近づくように、 今回歩容の上体姿勢復元モーメン ト Z MP換算値 (Z MPrec) のパターンが決定される。 ここで決定す る ZMPrec は、 後述する今回歩容瞬時値の生成処理で、 床反力水平成 分許容範囲が十分に大きいものとなる期間 (片脚支持期内の期間) にお いて、 上体姿勢角軌道を定常歩容につながらせる (近づける) ように上 体姿勢角加速度を発生させても、 今回歩容終端発散成分と定常歩容初期 発散成分との一致性 (S 7 0 8の条件) を維持できるように、 仮目標 Z
MPを修正するためのものである。
この ZMPrec は、 前記定常歩容生成処理で説明したものと同様に台 形状のパターンであり、 具体的には次のように決定される。 すなわち、 図 3 0における第 2旋回歩容の期間の Z M Prec の台形パターンと同様 に、 今回歩容の Z MPrec の台形パターンを設定し、 台形の頂点 (折れ 点) の時刻は既知とする (より具体的には台形の折れ点の時刻を目標 Z
MPの折れ点時刻に合わせる) と共に、 台形高さを未知数とし、 以下の ように ZMPrec の台形高さ (パラメ一夕) が求められる。 ただし、 Z
MPrec の台形パターンが立ち上がり始める時刻を Ta とし、 台形パ夕 ーンから 0に戻る時刻を Tb とする。
上記のように上体姿勢復元モーメント Z M P換算値パターンの未知パ ラメ一夕がひとつの場合には、 今回歩容の終端において上体姿勢角と上 体姿勢角速度の両方を定常歩容に連続につなげることは一般的にはで.き ない。 そこで、 本第 1参考例では、 複数歩に渡って徐々に、 生成される 歩容の状態が定常歩容の状態に近づけるように、 未知パラメ一夕を決定 することとする。
補足すると、 1歩容の中での Z M Prec パターンを複雑にし、 未知パ ラメ一夕を 2つ以上にして、 今回歩容の終端において上体姿勢角と上体 姿勢角速度との両者を定常歩容に連続につなげても良いが、 Z M P rec パターンがジグザグに大きく変動し過ぎる恐れがある。、
以下では、 算出原理を説明した後、 算出手順を説明する。
前述のごとく S 7 0 2で Z M Precノ、。夕一ンの台形高さを 0 として求 めた仮今回歩容の終端上体姿勢角と定常歩容の初期上体姿勢角との差を 求め、 これを 0 err とする。 また、 仮今回歩容の終端上体姿勢角速度と 定常歩容の初期上体姿勢角速度との差を求め、 ごれを V0 errとする。
ここで、 Z M Precパ夕一ンの台形高さをある値 bcurr として今回歩 容が生成され、 引き続いて、 今回歩容と同様のアルゴリズムによって第 1旋回歩容が生成されると想定する。 ただし、 第 1旋回歩容の上体姿勢 復元モ一メン卜 Z M P換算値 Z M Prec パダーンは、 図 2 4の S 3 1 0 において求められた第 1旋回歩容の Z M P rec パターン (高さが前記 acyclである図 3 0の台形パターン) とある値 blの和であるとする。
このようにして生成された歩容を Z M Prec 修正歩容と呼び、 その終 端 (第 1旋回歩容の終端) 上体姿勢角と角速度をそれぞれ Θ 1、 νθ 1 と する。
S 0 2 4における定常歩容の初期状態を求めるサブルーチンの処理が 完了した時点で求められた本来の定常歩容 (最終的に S 3 1 0において 決定された定常歩容初期上体姿勢角および角速度を初期値とし、 Z M P recパターンを S 3 1 0において求められたパターン (高さが acycl で ある図 3 0の台形パターン) とした場合の定常歩容) の第 1旋回歩容終 端上体姿勢角と角速度をそれぞれ Θ lorg、 νθ lorgとする。 ここで、 Δ 0 1、 Δνθ 1を次のように定義する。
Α θ 1 =θ 1— Θ lorg …式 5 0
Ανθ 1 =νθ 1-νθ lorg …式 5 1 厶 0 1および Δν01 は、 Z M Prec修正歩容と本来の定常歩容を第 1 旋回歩容の終端まで生成した時点において、 両者間における上体姿勢角 の差及び角速度の差を意味する。 もし、 Δ 0 1 および Δ v0 1 が 0にな れば、 Z M Prec 修正歩容に引き続いて、 今回歩容と同様のァルゴリズ ムによって、 Z M Precパターンの台形高さを前記 acyc2 として第 2旋 回歩容が生成されると、 この歩容は、 本来の定常歩容に一致する。
したがって、 Δ θ 1および Δνθ 1が 0となる今回歩容台形高さ bcurr、 第 1旋回歩容台形高さ bl を求め、 求めた bcurr を今回歩容の台形高さ として最終的に決定すれば良い。
- ところで、 口ポッ ト 1の上体姿勢角に関する動力学モデルが図 1 2に 示すフライホイール FHx、 FHy のような線形特性を持つことから、 Δ 0 1および Δν0 1は、 今回歩容台形高さ bcurr、 第 1旋回歩容台形高さ bl、 仮今回歩容の終端上体姿勢角と定常歩容の初期上体姿勢角の差 Θ err, 仮今回歩容の終端上体姿勢角速度と定常歩容の初期上体姿勢角速 度の差 v0 errと以下の関係を持つ。
Δ Θ l = cll * bcurr+cl2* bl+ Θ err+el * ν0 err …式 5 2
Ανθ l = c21* bcurr +c22* bl + e2* v0 err …式 5 3 だだし、 cll、 cl2、 c21、 c22、 el、 e2 は、 今回歩容、 第 1旋回歩容の 歩容周期、 上体姿勢復元モーメント Z M P換算値 Z M Prec パターンの パラメ一夕 (特に時間に関するパラメ一夕) などによって一義的に決定 される係数である。
以上の原理に基づき、 算出手順として、 まず、 仮今回歩容と定常歩容 との境界での上体姿勢角の差 err と角速度の差 V 0err が求められる, 次いで、 式 5 2, 5 3の係数でぁる 011、 cl2、 c21、 c22、 el、 e2 が. 今回歩容、 第 1旋回歩容の歩容周期、 上体姿勢復元モーメント Z MP換 算値 Z MPrec パターンのパラメ一夕 (特に時間に関するパラメータ) などを基に求められる。
次いで式 5 2、 式 5 3の右辺が 0 となるように今回歩容台形高さ bcurr, 第 1旋回歩容台形高さ bl が決定される。 すなわち、 式 5 2、 式 5 3の左辺を 0とした連立方程式を解く ことによって、 bcurr、 bl が 求められる。
最後に、 今回歩容の上体姿勢復元モーメント Z M P換算値 ( Z MP rec) の台形パターンの台形高さが、 上記求めた今回歩容台形高さ bcurrに設定される。
次いで S 7 2 0に進み、 現在の仮目標 Z MPパターン (S 7 0 0の繰 り返しループを抜けたときの仮目標 ZMPパターン) に、 S 7 1 8で上 記のように求めた上体姿勢復元モーメント Z M P換算値パターンを加算 してなるパターンが今回歩容の目標 Z MPパターンとして決定される。 なお、 この処理は、 S 7 1 0において Aa の高さの台形パターンを仮目 標 Z MPパターンに加える処理と同様である。
以下に仮目標 Z MPパターンに上体姿勢復元モーメント Z MP換算値 パターンを加算した理由を述べる。
S 7 0 0のループにおいて生成される仮今回歩容は、 上体姿勢復元モ 一メント Z MP換算値 ZMPrec を 0 ( Z M P rec の台形パターンの高 さパラメ一夕を 0 ) にして生成されたものである。 このようにして S 7 0 0のループで最終的に生成された仮今回歩容では、 その上体位置速度 は、 定常歩容に連続し、 もしくは近づくが、 上体姿勢角は、 定常歩容の 上体姿勢角からずれ、 場合によっては発散してしまう。
S 7 1 8で求められた上体姿勢復元モーメント Z MP換算値パターン は、 上体姿勢角の定常歩容に対するずれを 0に近づけるための上体姿勢 角加速度を発生させるものである。
しかし、 S 7 0 0のループで最終的に得られた仮目標 Z MPパターン を修正することなく、 S 7 1 8で求められた上体姿勢復元モ一メント Z MP換算値パターンに応じた上体姿勢角加速度を発生させると、 動力学 的平衡条件 (口ポッ トの重力と慣性力との合力が目標 ZMPに作用する モーメントが鉛直成分を除いて 0になること) を満足させるために、 上 体水平位置軌道を前記仮今回歩容の上体水平位置軌道からずらさざるを 得なくなる。 そこで、 本実施例では、 上体水平位置軌道を S 7 0 0のル ープで最終的に得られるものからずらさなくて済むように、 Z M P rec によって仮目標 Z MPパターンを修正することとした。
前記仮今回歩容の運動に加えて、 S 7 1 8で求めた上体姿勢復元モー メント Z MP換算値パターンに対応する上体姿勢角加速度を発生させる と、 Z MP (運動によって発生する重力と慣性力の合力の鉛直成分を除 くモーメントが 0になる点) は上体姿勢復元モ一メント Z MP換算値だ けずれる。 したがって、 逆に、 仮目標 ZMPパターンに上体姿勢復元モ 一メント Z MP換算値パターンを加算したパターンを目標 Z MPパター ンとして、 S 7 1 8で求めた上体姿勢復元モーメント Z M P換算値パ夕 —ンに対応する上体傾斜モードの上体姿勢角加速度を発生させながら、 目標 Z MPパターンを満足する今回歩容を生成すれば、 前記仮今回歩容 と同じ上体並進運動となる。 '
以上が、 仮目標 Z MPパターンに上体姿勢復元モーメント Z MP換算 値パターンを加算したパターンを目標 Z M Pパターンとした理由である, 次いで S 7 2 2に進み、 仮今回歩容の終端逆位相腕振り角と定常歩容 の初期逆位相腕振り角との差および仮今回歩容の終端逆位相腕振り角速 度と定常歩容の初期逆位相腕振り角速度との差を基に、 今回歩容の逆位 相腕振り角軌道が定常歩容の逆位相腕振り角軌道に近づくように、 逆位 相腕振り復元角加速度パターンが決定される。 このパターンの決定方法 は、 S 7 1 8で上体姿勢復元モーメント Z M P換算値パターンを決定す る方法と、 変数名が次のように異なること以外は、 ほぼ同じである。 上体姿勢復元モーメント Z M P換算値パターン—逆位相腕振り復元角加 速度パターン
水平成分—モーメント鉛直成分 以下に詳細を説明する。 ここで決定する逆位相腕振り復元角加速度パ ターンは、 後述する今回歩容瞬時値の生成処理で、 床反力モーメント鉛 直成分許容範囲が十分に大きいものとなる期間 (片脚支持期内の期間) において、 逆位相腕振り角軌道を定常歩容につながらせる (近づける) ように修正するためのものである。
この逆位相腕振り復元角加速度パターンは、 前記定常歩容生成処理で 説明したものと同様に台形状のパターンであり、 具体的には次のように 決定される。 すなわち、 図 3 6における第 2旋回歩容の期間の逆位相腕 振り復元角加速度の台形パターンと同様に、 今回歩容の逆位相腕振り復 元角加速度の台形パターンを設定し、 台形の頂点 (折れ点) の時刻は既 知とする (より具体的には台形の折れ点の時刻を目標 Z M Pの折れ点時 刻に合わせる) と共に、 台形高さを未知数とし、 以下のように逆位相腕 振り復元角加速度の台形高さ (パラメータ) が求められる。 ただし、 逆 位相腕振り復元角加速度の台形パターンが立ち上がり始める時刻を Ta とし、 台形パターンから 0に戻る時刻を Tbとする。
上記のように逆位相腕振り復元角加速度パターンの未知パラメ一夕が ひとつの場合には、 今回歩容の終端において逆位相腕振り角と逆位相腕 振り角速度の両方を定常歩容に連続につなげることは一般的にはできな レ 。 そこで、 本第 1参考例では、 複数歩に渡って徐々に、 生成される歩 容の状態が定常歩容の状態に近づけるように、 未知パラメータを決定す ることとする。
補足すると、 1歩容の中での逆位相腕振り復元角加速度パターンを複 雑にし、 未知パラメ一夕を 2つ以上にして、 今回歩容の終端において逆 位相腕振り角と逆位相腕振り角速度との両者を定常歩容に連続につなげ ても良いが、 逆位相腕振り復元角加速度パターンがジグザグに大きく変 動し過ぎる恐れがある。
前述のごとく S 7 0 2で逆位相腕振り復元角加速度パターンの台形高 さを 0として求めた仮今回歩容の終端逆位相腕振り角と定常歩容の初期 逆位相腕振り角との差を求め、 これを 0 azerr とする。 また、 仮今回歩 容の終端逆位相腕振り角速度と定常歩容の初期逆位相腕振り角速度との 差を求め、 これを v 0 zerrとする。
ここで、 逆位相腕振り復元角加速度パターンの台形高さをある値 bzcurr として今回歩容が生成され、 引き続いて、 今回歩容と同様のァ ルゴリズムによって第 1旋回歩容が生成されると想定する。 ただし、 第
1旋回歩容の逆位相腕振り復元角加速度パターンは、 図 2 4の S 3 1 4 において求められた第 1旋回歩容の逆位相腕振り復元角加速度パターン (高さが前記 azcyclである図 3 6の台形パターン) とある値 bzl の和 であるとする。
このようにして生成された歩容を逆位相腕振り復元角加速度修正歩容 と呼び、 その終端 (第 1旋回歩容の終端) 逆位相腕振り角と角速度をそ れぞれ θ zl、 νθ zlとする。
S 0 2 4における定常歩容の初期状態を求めるサブルーチンの処理が 完了した時点で求められた本来の定常歩容 (最終的に S 3 1 4において 決定された定常歩容初期逆位相腕振り角および角速度を初期値とし、 逆 位相腕振り復元角加速度パターンを S 3 1 4において求められたパター ン (高さが azcycl である図 3 6の台形パターン) とした場合の定常歩. 容) の第 1旋回歩容終端逆位相腕振り角と角速度をそれぞれ 0 zlorg, V Θ zlorgとする。
ここで、 Δ 0 ζ1、 Δ v0 zlを次のように定義する。
A θ ζ1 =θ zl- Θ zlorg …式 1 0 5 0
ν Θ zl =ν θ zl~v θ zlorg …式 1 0 5 1 Α θ ζΐ および Δνθ ζΐ は、 逆位相腕振り復元角加速度修正歩容と本 来の定常歩容を第 1旋回歩容の終端まで生成した時点において、 両者間 における逆位相腕振り角の差及び角速度の差を意味する。 もし、 zl および Δν ζΐ が 0になれば、 逆位相腕振り復元角加速度修正歩容 に引き続いて、 今回歩容と同様のアルゴリズムによって、 逆位相腕振り 復元角加速度パターンの台形高さを前記 azcyc2 として第 2旋回歩容が 生成されると、 この歩容は、 本来の定常歩容に一致する。
したがって、 Δ 0 ζ1 および Δν θ ζΐ が 0 となる今回歩容台形高さ bzcurr, 第 1旋回歩容台形高さ bzl を求め、 求めた bzcurr を今回歩容 の台形高さとして最終的に決定すれば良い。
ところで、 口ポット 1の逆位相腕振り角に関する動力学モデルが図 1 2に示すフライホイール FHazのような線形特性を持つことから、 Δ 0 zl および Δ ν 0 ζ 1 は、 今回歩容台形高さ bzcurr、 第 1旋回歩容台形高 さ bzl、 仮今回歩容の終端逆位相腕振り角と定常歩容の初期逆位相腕振 り角の差 Θ zerr, 仮今回歩容の終端逆位相腕振り角速度と定常歩容の初 期逆位相腕振り角速度の差 v 0 zerrと以下の関係を持つ。
Δ Θ zl = czll * bzcurr + czl2 * bzl + Gzerr + ezl * νθζβιτ
…式 1 0 5 2
Δ v0zl = cz21 * bzcurr + cz22 * bzl + ez2 * vGzerr
…式 1 0 5 3 だだし、 czll、 czl2、 cz21、 cz22、 ezl、 ez2 は、 今回歩容、 第 1旋回 歩容の歩容周期、 逆位相腕振り復元角加速度パダーンのパラメ一夕 (特 に時間に関するパラメータ) などによって一義的に決定される係数であ る。
以上の原理に基づき、 算出手順として、 まず、 仮今回歩容と定常歩容 との境界での逆位相腕振り角の差 0 zerr と角速度の差 v 0 zerr が求め られる。
次いで、 式 1 0 5 2 , 1 0 5 3の係数である czll、 czl2、 cz21、 cz22、 ezl、 ez2 が、 今回歩容、 第 1旋回歩容の歩容周期、 逆位相腕振 り復元角加速度パターンのパラメータ (特に時間に関するパラメータ) などを基に求められる。
次いで式 1 0 5 2、 式 1 0 5 3の右辺が 0となるように今回歩容台形 高さ bzcurr、 第 1旋回歩容台形高さ bzl が決定される。 すなわち、 式 1 0 5 2、 式 1 0 5 3の左辺を 0とした連立方程式を解くことによって、 bzcurr, bzlが求められる。
最後に、 今回歩容の逆位相腕振り復元角加速度の台形パターンの台形 高さが、 上記求めた今回歩容台形高さ bzcurrに設定される。 図 1 3に戻って、 上記のごとく S 0 2 8において今回歩容パラメ一夕 を修正した後、 あるいは S 0 1 6の判断結果が NOである場合には、 S 0 3 0に進み、 今回歩容瞬時値が決定される。
S O 3 0では、 そのサブル一チンである図 4 5の処理が実行される。 図 4 5の S 1 4 0 0から S 1 4 1 1までは、 図 2 5の S 4 0 0から S 4 1 1までと同一の処理が行なわれ、 次に、 S 1 4 1 2のサブルーチン である図 4 6の S 1 0 0 0〜S 1 0 1 8の処理が行なわれる。
具体的には、 まず S 1 0 0 0におい.て、 目標上体ョ一角に現在時刻で の基準上体ョ一角の値を代入する。 また、 腕姿勢逆位相腕振り角 · 角速 度を除き、 目標腕姿勢に現在時刻での基準腕姿勢の値を代入する。
次いで S 1 0 0 2に進み、 現在時刻が、 上体姿勢角 · 逆位相腕振り角 復元期間 (時刻 Ta から時刻 Tb の期間) の間にあるか否かが判定され る。 S 1 0 0 2の判定結果が NOであるならば、 S 1 0 0 4に進み、 Y E Sであるならば S 1 0 0 6に進む。
· S 1 0 0 4では、 上体傾斜角 ·逆位相腕振り角復元期間でない場合の 上体水平加速度ひ、 上体角加速度 /3、 逆位相腕振り角加速度) 3 a 算出処 理 (図 2 6の S 5 0 4から S 5 2 8 ) と同様の処理を行う。
S 1 0 0 6に進む場合では、 まず、 S 1 0 0 6において、 仮に上体並 進モードの運動をさせた場合に今回 (時刻 k) 目標 Z MPを満足するた めに必要な上体水平加速度 atmpを求める。
次いで S 1 0 0 8に進み、 現在時刻における上体傾斜復元モーメント ZMP換算値パターンの瞬間値 ZMPrec を、 S 7 1 8において決定し た上体傾斜復元モ一メント Z MP換算値パターンに関するパラメ一夕を 基に算出する。
次いで S 1 0 1 0に進み、 現在時刻における逆位相腕振り復元角加速 度パターンの瞬間値 j8 arec を、 S 7 2 2において決定した逆位相腕振 り復元角加速度パターンに関するパラメ一夕を基に算出する。
次いで S 1 0 1 2に進み、 図示する式によって、 上体傾斜モードの上 体角加速度 (上体傾斜角加速度) /3が決定される。
次いで S 1 0 1 4に進み、 図示する式によって、 上体水平加速度 αが 決定される。
次いで S 1 0 1 6に進み、 S 1 0 1 0で算出した逆位相腕振り復元角 加速度パターンの瞬間値 3 arec と基準逆位相腕振り角加速度 |3 aref (基準逆位相腕振り角を 2階微分した値) の和を目標逆位相腕振り角加 速度 i8 aに代入する。
次いで S 1 0 1 8に進み、 上体水平加速度が αの場合の床反力水平成 分 Fxを求める。
次いで S 1 4 1 4に進み、 上体水平加速度と上体姿勢角加速度を積分 して上体水平速度と上体姿勢角速度 (上体傾斜角速度) を算出する。 こ れをさらに積分して、 上体水平位置と上体姿勢 (上体傾斜角) を決定す る。 なお、 上体姿勢のうちの上体ョ一角は、.本第 1参考例では基準上体 ョ一角に決定される。
次いで S 1 4 1 6に進み、 逆位相腕振り加速度を積分して逆位相腕振 り角速度を算出する。 これをさらに積分して、 逆位相腕振り角を決定す る。
以上のごとく、 図 1 3の S 0 3 0の処理が完了する。
次いで S 0 3 2に進み、 歩容生成用時刻 tを Δ tだけ増やし、 S 0 1 4に戻り、 以上のごとく歩容生成を続ける。
以上が、 歩容生成装置 1 0 0における目標歩容生成処理である。
図 4を参照して本第 1参考例に係る装置の動作をさらに説明すると、 歩容生成装置 1 0 0において、 上記したように目標歩容が生成される。 生成された目標歩容のうち、 目標上体位置姿勢 (軌道)、 目標腕姿勢 (軌道) が、 口ポッ ト幾何学モデル (逆キネマテイクス演算部) 1 0 2 に送出される。
また、 目標足平位置姿勢 (軌道)、 目標 Z M P軌道 (目標全床反力中 心点軌道)、 および目標全床反力 (軌道) (目標床反力水平成分と目標床 反力鉛直成分) は、 複合コンプライアンス動作決定部 1 0 4に送られる と共に、 目標床反力分配器 1 0 6にも送られる。 そして、 目標床反力分 配器 1 0 6で、 床反力は各足平 2 2 R, 2 2 Lに分配され、 目標各足平 床反力中心点および目標各足平床反力.が決定される。 この決定された目 標各足平床反力中心点および目標各足平床反力は複合コンプライアンス 動作決定部 1 0 4に送られる。
複合コンプライアンス動作決定部 1 0 4から、 機構変形補償付き修正 目標足平位置姿勢 (軌道) がロポッ ト幾何学モデル 1 0 2に送られる。 口ポッ ト幾何学モデル 1 0 2は、 目標上体位置姿勢 (軌道) と機構変形 補償付き修正目標足平位置姿勢 (軌道) を入力されると、 それらを満足 する脚体 2 , 2の 1 2個の関節 ( 1 0 R ( L ) など) の関節変位指令 (値) を算出して変位コントローラ 1 0 8に送る。 変位コントローラ 1 0 8は、 ロポッ ト幾何学モデル 1 0 2で算出された関節変位指令 (値) を目標値としてロボッ ト 1の 1 2個の関節の変位を追従制御する。 また、 ロボッ ト幾何学モデル 1 0 2は、 目標腕姿勢を満足する腕関節の変位指 定 (値) を算出して変位コントローラ 1 0 8に送る。 変位コントローラ 1 0 8 は、 ロボッ ト幾何学モデル 1 0 2で算出された関節変位指令 (値) を目標値として口ポッ ト 1の腕体の 1 2個の関節の変位を追従制 御する。
口ポッ ト 1に生じた床反力 (詳しくは実各足床反力) は 6軸力センサ 5 0によって検出される。 その検出値は前記複合コンプライアンス動作 決定部 1 0 4に送られる。 また、 口ポッ ト 1に生じた実上体姿勢角偏差 (目標上体姿勢と実上体 姿勢 (上体 3の実際の姿勢) との偏差) のうちの姿勢傾斜角偏差 S errx, Θ erry (詳しくは目標上体姿勢のうちの鉛直方向に対する傾斜角に対す る実上体姿勢のうちの鉛直方向に対する傾斜角の偏差で、 ロール方向 ( X軸回り) の姿勢傾斜角偏差が 0 errx であり、 ピッチ方向 (Y軸回 り) の姿勢傾斜角偏差が 0 erry である) が姿勢センサ 5 4を介して検 出され、 その検出値は姿勢傾斜安定化制御演算部 1 1 2に送られる。 こ の姿勢傾斜安定化制御演算部 1 1 2で、 ロボッ ト 1の実上体姿勢角を目 標上体姿勢角に復元するための目標全床反力中心点 (目標 Z M P ) まわ り補償全床反カモ一メント水平成分が算出されて複合コンプライアンス 動作決定部 1 0 4に送られる。
より具体的には、 本第 1参考例では、 補償全床反力モーメント水平成 分 Mdmdxyは、 例えば P D制御則を用いて次式により決定される。 辅償全床反力モーメント水平成分 Mdmdxy .
= K 0 b *上体姿勢傾斜角偏差
+ K c b *上体姿勢傾斜角速度偏差
d 2 5 ここで、 K 0 b、 Κ ω bは所定のゲインである。 また、 上体姿勢傾斜 角速度偏差は、 上体姿勢傾斜角偏差の時間微分値であり、 目標上体姿勢 傾斜角速度に対する実上体姿勢傾斜角速度の偏差を意味する。 また、 上 体姿勢傾斜角偏差は、 より詳しくは、 口ポッ ト 1の上体 3のロール方向 ( X軸回り) の姿勢傾斜角偏差と、 ピッチ方向 (Y軸回り) の姿勢傾斜 角偏差とからなるべク トルである。
また、 口ポッ ト 1に生じた前記.実上体姿勢角偏差のうちのョ一角偏差 θ βννζ (詳しくは実上体姿勢角偏差のうちのョー方向 (Ζ軸回り) の姿 勢角偏差が Θ errz である) が姿勢センサ 5 4を介して検出され、 その 検出値はョー安定化制御演算部 1 1 3に送られる。 このョー安定化制御 演算部 1 1 3で、 ロポッ ト 1の実上体ョ一角および/"または角速度を目 標上体ョ一角および Zまたは角速度に収束させるための目標全床反力中 心点 (目標 Z MP) まわり補償全床反力モーメント鉛直成分が算出され て複合コンプライアンス動作決定部 1 0 4に送られる。 複合コンプライ アンス動作決定部 1 0 4は、 入力値に基づいて目標床反力を修正する。 具体的には、 目標全床反力中心点 (目.標 Z MP) 回りに補償全床反カモ —メントが作用するように目標床反力を修正する。
より具体的には、 本第 1参考例では、 補償全床反力モーメント鉛直成 分 Mdmdzは、 例えば P D制御則を用いて次式により決定される。 補償全床反力モーメント鉛直成分 Mdmdz = K0 bz*上体ョ一角偏差
+ K obz*上体ョー角速度偏差 …… d 2 6 ここで、 Κ Θ bz、 Kc bz は所定のゲインである。 また、 上体ョ一角 速度偏差は、 上体ョ一角偏差の時間微分値であり、 目標上体ョ一角速度 に対する実上体ョー角速度の偏差を意味する。
補足すると、 補償全床反力モーメント鉛直成分 Mdmdz を前記式 d 2 6により求めるとき、 足平 2 2と床の間の鉛直軸まわり回転滑りまたは 鉛直軸まわり回転振動を防止したいだけなら、 K 0 bz を 0にすれば良 い。 上体ョ一角偏差までも 0に近づけようとすると、 実床反力モーメン ト鉛直成分が大きくなる傾向があるからである。
複合コンプライアンス動作決定部 1 0 4は、 入力値に基づいて目標床 反力を修正する。 具体的には、 目標全床反力中心点 (目標 Z MP) 回り に補償全床反力モーメント水平成分が作用するように目標床反力モーメ ント水平成分を修正し、 さらに、 目標歩容に動力学的に釣り合う目標全 床反力中心点 (目標 Z M P ) 回りの目標床反力鉛直成分に補償全床反力 モ一メント鉛直成分を付加的に追加することによって目標床反力モーメ ント鉛直成分を修正する。
複合コンプライアンス動作決定部 1 0 4は、 修正された目標床反力に センサ検出値などから算出される実ロポッ ト 1の状態および床反力を一 致させようと上記機構変形補償付き修正目標足平位置姿勢 (軌道) を決 定する。 ただしすベての状態を目標に一致させることは事実上不可能で あるので、 これらの間にトレードオフ関係を与えて妥協的になるベく一 致させる。 すなわち、 各目標に対する制御偏差に重みを与えて、 制御偏 差 (あるいは制御偏差の 2乗) の重み付き平均が最小になるように制御 する。 これにより、 実際の足平位置姿勢と全床反力とが目標足平位置姿 勢と目標全床反力とに概ね従うように制御される。
尚、 この発明の要旨は歩容生成装置 1 0 0.における口ポッ ト 1の歩容 生成にあり、 上記した複合コンプライアンス動作決定部 1 0 4などの構 成および動作は、 本出願人が先に出願した特開平 1 1— 3 0 0 6 6 1号 公報などに詳細に記載されているので、 説明を以上に留める。
S O 2 8において、 今回歩容パラメ一夕は、 前述のごとく、 今回歩容 の終端発散成分が、 定常旋回歩容の初期発散成分 d [ 0 ] を今回歩容の 支持脚座標系から見た値である Q " に一致するように修正される。
実は、 発散成分とは、 動力学モデルを用いて今回歩容パラメータに従 つて歩容を生成し、 そのまま連続して定常旋回歩容パラメ一夕に従って 歩容を繰り返し生成したとき、 生成した歩容の上体水平位置が定常旋回 歩容に収束するか否かを評価する指標である。 収束する場合にちょうど、 今回歩容の終端発散成分が、 定常旋回初期発散成分 Q [ 0 ] を今回歩容 の支持脚座標系から見た値である Q " に一致するように、 本来、 発散成 分は定義されなければならない。
式 1 0で定義した発散成分は、 実は、 上記の性質を近似的に満足する 発散成分である。
したがって、 本第 1参考例においては、 動力学モデルを用いて今回歩 容パラメ一夕に従って歩容を生成し、 そのまま連続して定常旋回歩容パ ラメ一夕に従って歩容を繰り返し生成したとき、 生成した歩容の上体水 平位置が定常旋回歩容の上体水平位置に収束する (近づく) ように、 今 回歩容パラメ一夕を修正した、 と言える。 但し、 厳密には、 今回歩容直 後の第 1旋回歩容だけは、 前記の如く求めた第 1旋回歩容台形高さ bl, bzl によって修正された歩容にする必要がある。 別の言い方をすれば、 今回歩容と第 1旋回歩容とを合わせた歩容を今回歩容と見なせば、 本参 考例においては、 上記の如く歩容を繰り返し生成したとき、 生成した歩 容の上体姿勢角が第 2旋回歩容と第 1旋回歩容とからなる定常歩容の上 体姿勢角に収束し (近づき)、 もしくは一致するように、 今回歩容パラ メータを修正した、 と言える。
これは、 P C T公開公報 WO/ 02/ 40224のものと同様である。
特に、 本第 1参考例においては、 その条件 (今回歩容が定常歩容に近 づく) を満足するように、 今回歩容の歩容パラメ一夕のうちの目標 Z M Pパターンを修正するようにした。 図 4 7を参照して説明すると、 同図 に符合 Bで示す軌道は、 上記したように歩容の境界において発散成分が 一致するように生成した上体水平位置軌道を示す。
同図に符合 Aで示す軌道は、 定常旋回歩容との境界における上体水平 位置速度が一致するように今回歩容を生成し、 続いて定常歩容を繰り返 し生成した場合の上体水平位置軌道を示す。
図示の如く、 符合 Bで示す軌道は、 今回歩容と最初の定常旋回歩容と の境界においては、 一般的に符合 Aで示す軌道からずれているが、 その 後、 徐々に符合 Aで示す軌道に収束し (近づき)、 次の定常旋回歩容時 期において符合 Aで示す軌道にほぼ一致する。 このように、 歩容境界で 発散成分のみを一致させる歩容生成手法でも、 歩容境界で位置速度両方 を一致させる歩容生成手法と同様、 歩容の発散を防止することができる, 尚、 同図に符合 Cで示す例は、 それらを考慮せずに軌道を生成した場合 の例を示す。 このような場合は、 生成した軌道は経時的に発散してしま う。 当然、 目標 Z M Pパターンを複雑なものにし、 複数のパラメ一夕を 調整して、 位置速度両方を一致させても良いが、 目標 Z M Pパターンが ジグザグになる恐れがある。 なお、 位置速度両方を一致させれば、 発散 成分も一致するから、 位置速度両方を一致させる方法も発散成分を一致 させる方法の特殊例であると言える。
またさらに、 本第 1参考例においては、 動力学モデルを用いて今回歩 容パラメ一夕に従って歩容を生成し、 そのまま連続して定常旋回歩容パ ラメ一夕に従って歩容を繰り返し生成したとき、 生成した歩容の上体姿 勢角が定常旋回歩容の上体姿勢角に収束し (近づき)、 もしくは一致す るように、 今回歩容パラメ一夕を修正した、 と言える。 但し、 厳密には, 今回歩容直後の第 1旋回歩容だけは、 前記の如く求めた第 1旋回歩容台 形高さ bl, bzlによって修正された歩容にする必要がある。
次に、 本第 1参考例の変形態様を以下にいくつか説明する。 なお、 以 下に説明する変形態様は、 後述の各実施形態においても同様である。
本第 1参考例では、 理解を容易にするために、 床反力水平成分許容範 囲は、 前後方向 (X軸方向) 成分と左右方向 (Y軸方向) 成分それぞれ 独立に設定できることとしたが、 前後方向と左右方向の関係式で表した 方が、 よりスリップし難い歩容が生成される。 ,
例えば、 次式のようにいわゆる摩擦円を許容範囲としても良い。 (床反力水平成分の X成分) * (床反力水平成分の X成分) + (床反力水平成分の Y成分) * (床反力水平成分の Y成分)
≤ (ka * * Fz) * (ka * * Fz)
…式 5 9 ただし、 Fz は、 目標床反力鉛直成分を ^は摩擦係数、 ka は 1以下の 正の定数を表す。
ただし、 以上のように、 床反力水平成分許容範囲を前後方向と左右方 向の関係式で表す場合、 許容範囲を同時にあるいは交互に満足するよう に、 サジタルプレーン上での運動とラテラルプレーン上での運動を同時 あるいは交互に求める必要がある。
また、 床反力水平成分許容範囲と床反力モーメント鉛直成分許容範囲 とを上記のごとく別々に設定する代わりに、 床反力水平成分と床反カモ ーメン卜鉛直成分との組の許容範囲を設定するようにしても良い。 床反 力水平成分が大きくなるにつれ、 床反力モー.メント鉛直成分の摩擦限界 は、 小さくなる。 また、 床反カモ一メント鉛直成分が大きくなるにつれ. 床反力水平成分の摩擦限界は、 小さくなる。 したがって、 このことを鑑 みて床反力水平成分と床反カモ一メント鉛直成分との組の許容範囲を設 定するようにした方が、 より現実の摩擦限界特性に近い許容範囲を設定 することができる。 具体的には、 床反力水平成分の絶対値と床反力モー メント鉛直成分の絶対値との重み付き平均に対して許容範囲を設定して も良い。
前記第 1参考例では、 床反力水平成分と目標 Z M Pまわりの床反カモ ーメント水平成分を適切な値にするために、 上体傾斜モードと上体並進 モードとの 2つの運動モードを用いたが、 これら以外の運動モードを用 いても良い。 例えば、 図 4 8のように、 股関節を中心に上体姿勢を回転させると、 全体重心まわりの角運動量が変化すると共に全体重心も変化する。 この 運動と前記上体並進モードをある所定の割合で重ね合わせると (合成す ると)、 前記上体傾斜モードとほとんど同じ運動になり、 床反力水平成 分が発生しなくなる。 したがって、 これを改めて前記上体傾斜モードと みなせば、 本第 1参考例のアルゴリズムにしたがって、 同様の歩容を生 成することができる。
したがって、 運動モードのひとつが床反力水平成分を発生しない運動 モードである必要もない。 いかなるモードの組み合わせであっても、 床 反力水平成分と目標 Z M Pまわりの床反力モーメントとの発生の割合が 異なるふたつの運動モードを用いさえすれば、 上記例のように、 任意の 床反力水平成分と目標 Z M Pまわりの床反力モーメントとを発生させる ことができるからである。
また、 上体姿勢を変化させる運動モード以外の運動モードを用いても 良い。 ただし、 なるべく小さい変位で大きな床反力水平成分または目標 Z M Pまわりの床反力モ一メントが発生できる運動モードを選ぶことが 好ましい。
例えば、 左右の腕体の先端位置を同一方向に振りまわす運動モード、 接地していない (空中に存在する) 足平の位置を摂動させる運動モード でも良い。 ただし、 遊脚軌道を摂動させる場合には、 着地位置が変わら ないように着地直前までには、 摂動量を実質的に 0に戻すべきである。 なお、 左右の腕体の先端位置を同一方向に振りまわす運動モードと逆位 相腕振りモードとを併用してもよいことはもちろんである。
また、 3つ以上の運動モードを用いても良い。
また、 選択した運動モードのうちの少なくとも 2つは、 その運動モ一 ドによる床反力水平成分と目標 Z M Pまわりの床反力モーメントとの発 生比率が、 互いに異なるものである必要がある。 そうでないと、 一般的 に連立方程式の解がなくなる (各運動モードの挙動を一義的に決定でき ない) からである。
さらにできる限り、 床反力水平成分をあまり変化させないで目標 Z M Pまわりの床反力モーメントを十分に大きく変化させることができる運 動モードと、 目標 Z M Pまわりの床反力モーメントをあまり変化させな いで床反力水平成分を十分に大きく変化させることができる運動モード とを組み合わせることが望ましい。 .
言いかえると、 全体重心をあまり変化させないで角運動量を十分に大 きく変化させることができる運動モードと、 角運動量をあまり変化させ ないで全体重心を十分に大きく変化させることができる運動モードとを 組み合わせることが望ましい。 このようにすると、 運動モードの変位が 小さくなるからである。
また、 床反力モーメント鉛直成分が許容範囲を越えないようにするた めに (スピン力をキャンセルするために)、 .逆位相腕振りモードの代わ りに、 上体ョ一回転モードを用いても良い。 上体ョ一回転モードを用い る場合には、 ロボッ ト 1の上体 3を腰寄りの部分 (例えば図 1の 5 4の 部材の下側の部分) とその上側の部分 (例えば図 1の 5 4の部材の上側 の部分) とに分割し、 上側の部分が腰寄りの部分に対してョー方向に (例えば上体 3の体幹軸回り) に回転し得るように設けておくことが好 ましい。 このようにすると、 脚体 2, 2の姿勢に影響を及ぼすことなく、 上体 3の上側の部分を回転させて、 床反カモ一メント鉛直成分を調整す ることができる。 このようにした場合の参考例は、 例えば前記第 1参考 例で逆位相腕振り角、 その角速度およびその角加速度を決定する代わり に、 上体 3の上側の部分の回転角、 その角速度およびその角加速度を決 定するようにすればよい。 この場合、 両腕体 5, 5は、 例えば上体 3の 上側の部分に対する相対位置を一定とすればよい。 但し、 上体 3の上側 の部分のョ一回転に加えて、 両腕体 5, 5の逆位相腕振り動作を加えて もよいことはもちろんである。
また、 床反力モーメント鉛直成分が発生するものであれば、 腕、 上体 以外の部位を変位させる運動モードを用いても良い。
例えば、 空中期において、 両脚先端を前後逆方向に動かすモードを用 いても良い。
あるいは、 床反カモ一メント鉛直成分が発生するいくつかの運動モー ドを併用しても良い。 例えば、 逆位相腕振りモードと上体ョ一回転モー ドを併用しても良い。
また、 上体ョ一回転モードおよび逆位相腕振りモードは、 全体重心位 置が変わらないように (言い換えると床反力水平成分を発生させずに) 床反力モーメント鉛直成分を発生させるモードであるが、 全体重心位置 が変わってしまう (言い換えると床反力水平成分を発生してしまう) 運 動でも良い。 上体並進モードと組み合わせることにより、 床反力水平成 分を調整することができるからである。
前記第 1参考例に用いた動力学モデル (図 1 2の動力学モデル) 以外 にも以下のモデルを用いても良い。
1 ) 図 4 9に示したように複数のリンクに質点を設定した非線形なモデ ル (多質点モデル)。 このモデルの各リンクには、 イナーシャ (慣性モ —メント) が設定されていてもよい。
2 ) 本願出願人による P C T公開公報 WOZ 02/ 40224に示された 3質 点モデル
3 ) 上体ョ一回転モードあるいは逆位相腕振りモードによって生じる慣 性力のモーメントを無視したモデル。 '
4 ) 重力と慣性力との合力 (またはこれと釣り合う床反力) と上体並進 運動との関係を表す部分モデルと、 上記合力と上体姿勢回転運動 (上体 傾斜運動と上体ョー回転運動) の関係を表す部分モデルとを分離して持 つ分離型モデル。 例えば、 図 1 2に示す質点は、 上記合力と上体並進運 動との関係を表す部分モデルであり、 図 1 2に示すフライホイールは、 上記合力と上体姿勢回転運動との関係を表す部分モデルである。
なお、 上記 1 ) 〜 4 ) のいずれの場合でも、 慣性力のモーメント鉛直 成分を発生させる運動モードは必要である。
また、 各処理で用いられるモデルは同一でも良いし、 処理に応じて適 宜、 モデルを使い分けても良い。 例えば、 前記定常歩容は今回歩容の終 端状態を決定するためだけに生成されるものであるので、 その定常歩容 の動力学的な精度に対する要求は、 今回歩容に比べて小さい。 そこで、 例えば、 今回歩容の生成処理では、 図 1 2の動力学モデル ( 3質点 +フ ライホイールのモデル) を用いる一方、 定常歩容の生成処理 (特に図 2 1の S 4 0 8、 S 4 1 2 ) では、 各脚体 2の質量を無視し、 上体 3に対 応する上体質点 3 mと、 フライホール FHx、 F Hy F Haz、 F Hbz と で構成される動力学モデル (図 1 2のモデルで脚質点 2 m , 2 mを除去 した 1質点 +フライホイールのモデル) を用いて定常歩容を生成するよ うにしてもよい。 この場合の定常歩容の生成処理では、 前記第 1参考例 において、 脚質点 2 mの質量を 0として前記図 2 5の S 4 0 8、 S 4 1 2の処理を行なうようにすればよい。 このようにすると、 定常歩容の生 成処理における演算量を大幅に削減できる。
尚、 前記第 1参考例において、 ブロック線図、 フローチャート、 およ びアルゴリズムなどは、 演算処理順序を変えるなどの等価変形をしても 良い。 また、 適宜ローパスフィルタを挿入しても良い。
また、 前記第 1参考例を 2足移動口ポッ トに関して説明してきたが、 3足以上の多脚ロポッ トにも応用することができる。 前記第 1参考例のごとく、 探索手法を用いたり、 部分的に解析手法を 用いたりして、 定常歩容の初期状態 (主に初期上体水平位置速度、 初期 上体鉛直位置速度および逆位相腕振り角 · 角速度のこと) を決定する手 法の代わりに、 あらかじめ、 上記手法を用いて様々な定常歩容パラメ一 夕に対して計算しておき、 定常歩容パラメ一夕と定常歩容の初期状態と の関係をマツプ化あるいは近似式化して記憶して置き、 実移動時には、 マツプ化あるいは近似式化された上記関係を基に、 定常歩容の初期値を 決定しても良い。
さらには、 マツプ化あるいは近似式化された上記関係と上記関数 f を 合成した関数をマップ化あるいは近似式化して記憶しても良い。 すなわ ち、 前記した足平軌道パラメータ、 床反力鉛直軌道パラメ一夕等からな る定常歩容パラメ一夕から、 定常歩容の発散成分を直接求める関数をマ ップ化あるいは近似式化して記憶しても良い。 例えば、 複数種類の代表 的な定常歩容パラメ一夕の組のそれぞれに対して、 事前に定常歩容を生 成しておき、 各組の定常歩容パラメ一夕に対する定常歩容の初期状態 (図 1 3の S 0 2 4で求めるもの) を求めておき、 さらにその各組の定 常歩容パラメ一夕と、 定常歩容初期状態との関係を表すマツプをあらか じめ作成しておく。 そして、 目標歩容を生成する際に、 決定された定常 歩容パラメ一夕の組から、 上記マツプに基づいて選択あるいは補間によ つて定常歩容初期状態を求めるようにすればよい。 このようにすれば、 今回歩容の生成毎に、 定常歩容を生成する必要がなくなり、 目標歩容生 成処理の演算量を大幅に削減できる。
定常歩容につなげる (近づける) ための今回歩容の修正方法として、 本第 1参考例では、 今回歩容の目標 Z M Pパラメータを修正したが、 そ れ以外のパラメ タを修正しても良い。
たとえば、 今回歩容の遊脚の空中での軌道を変えても良い。 また、 た とえば、 上体水平位置が定常歩容ょりも後方にずれてしまいそうな場合 には、 遊脚を離床後すばやく前方に移動させて遊脚重心位置を前方にず らす。 こうすることにより、 目標 Z M Pを満足するための上体水平位置 は、 前方により一層加速せざるを得なくなる。 この結果、 上体水平位置 が今回歩容終端において、 より一層前方に移動し、 定常歩容に一致させ ることができる。
また、 目標 Z M Pパラメ一夕を修正する代わりに、 今回歩容の周期を 修正しても良い。 たとえば、 上体水平位置が定常歩容よりも後方にずれ てしまいそうな場合には、 今回歩容の周期を長くすれば良い。 今回歩容 の周期を長く ことで、 上体水平位置が移動する時間が延び、 それだけ前 方に移動できるからである。
ただし、 探索手法によって、 上体水平位 g等の適正値を決定するとき に、 目標 Z M Pパラメ一夕を修正する場合では、 目標 Z M Pの修正量に ほぼ比例して、 今回歩容終端上体水平位置が変化するので、 上記適正値 の探索回数が少なくて済む。 これに対して、 .遊脚重心軌道や歩容の周期 を修正する場合には、 その修正に対して、 今回歩容終端上体水平位置が. かなり非線形に変化するので、 上記適正値の探索により多くの探索回数 を要する。
定常歩容につなげる (近づける) ための今回歩容の修正方法として、 本第 1参考例では、 今回歩容の目標 Z M Pパラメ一夕を修正した。 この 方法では、 場合によっては、 目標 Z M Pパラメータの修正量 (前記図 3 4の修正量 a) が過大になることがある。 たとえば、 その場でホッピン グしている歩容からいきなり高速で移動する要求 (走行要求) が与えら れると、 高速の定常歩容 (走行の定常歩容) につなげる (近づける) た めに、 目標 Z M Pパラメータは、 進行方向に対して後ろに極端に大きく ずらす必要が生じる。 この場合には、 上記したように目標 Z M Pパラメ 一夕以外の歩容パラメ一夕も修正することが望ましい。 但し、 この場合 では、 実は、 急激な加速を要求すること自体に無理があったわけである から、 要求値自身を修正しても良い。
要求値の修正を行なう場合には、 例えば、 とりあえず本第 1参考例に 示した手順に従って、 要求 (要求パラメ一夕) を満足する定常歩容を求 め、 この定常歩容につながるように今回歩容パラメータを決定した時点 で、 今回歩容の目標 Z MP軌道の安定余裕が少なくなり過ぎたか否かを 判定する。 そして、 安定余裕が少なぐなり過ぎた場合 (いわゆる支持多 角形から目標 Z MPが外れたり、 支持多角形の端部付近に目標 Z MPが 位置するような場合) には、 要求を修正するようにすれば良い。
または、 あらかじめ歩容の加減速度 (次回歩容初期速度一今回歩容初 期速度) Z今回歩容の周期) の許容範囲を設定して置き、 要求 (歩容周 期に関する要求パラメ一夕) を受けた時点で、 該要求に対応する加減速 度を求め、 その求めた加減速度が許容範囲を越えていたら、 許容範囲に なるように、 要求を修正しても良い。
補足すると、 前記 ΔΜρ、 Δ Fp, ΔΜ r , Δ F r , Δ Maz および Δ
Mbz は、 上記のごとく単純な動力学モデルを用いる場合には、 動力学 演算により解析的に求めても良いが、 一般的なより複雑な動力学モデル を用いる場合には、 上体 3を上体並進モードで微小量だけ加速または上 体傾斜モードで微小量だけ加速させた場合の床反力を求め、 加速させな かった場合の床反力との差を求め、 この差を上記微小量で割ることによ つて求めれば良い。
また、 あらかじめ標準的な歩容における ΔΜΡ、 AFp、 ΔΜ Γ 、 Δ F r、 AMaz、 Δ Mbz および Δ M p Z Δ M rなどのそれぞれの平均値を求 めておいて、 それを用いても良い。 ΔΜρ、 AFp AMr、 AFr、 Δ
Maz、 AMbz および ΔΜρ ΖΔΜΓは、 状態 (姿勢とその変化率) によ つて変わるので、 各瞬間の状態ごとに求める方法に較べて、 精度は若干 低下するが、 上記モデルよりも複雑なモデルを用いた場合には、 演算量 を大幅に低減できる。
今回歩容の逆位相腕振り復元角加速度パターンの台形高さ b zcurr を 決定する方法として、 以下の方法を用いても良い。
前記逆位相腕振り復元角加速度修正歩容 (図 4 2の S 7 2 2の説明を 参照) の今回歩容終端時点での逆位相腕振り角と角速度をそれぞれ Θ zcurr、 ν θ zcurr とし、 これらと、 定常歩容の逆位相腕振り角、 角速度 との △ Θ zcerr、 Α ν Θ zcerrとする。
歩容周期をインターバルとし、 仮今回歩容の終端逆位相腕振り角、 角 速度と定常歩容の初期逆位相腕振り角、 角速度との差 0 zerr、 ν Θ zerr を前回状態、 b zcurr を入力、 Δ Θ zcerr、 Α ν θ zcerr を今回状態とする 離散系の状態方程式を立てて、 Δ Θ zcerr、 Α ν θ zcerr を 0に収束させ るように、 現代制御理論等を用いてフィ一ドバック則を決定し、 これに 基づいて bzcurrを求めても良い。
今回歩容およびまたは定常歩容の逆位相腕振り復元角加速度 β arec は、 台形パターンとせず、 各瞬間において、 目標逆位相腕振り角 · 角速 度と基準逆位相腕振り角 · 角速度との差などを基に、 その差が 0に収束 するように、 状態フィードバック則などを用いて、 各瞬間における逆位 相腕振り復元角加速度 β arecの値を決定しても良い。
今回歩容の逆位相腕振り復元角加速度 3 arec は、 台形パターンとせ ず、 各瞬間において今回歩容の目標逆位相腕振り角 · 角速度を基に、 こ れらが第 1旋回歩容の初期逆位相腕振り角 · 角速度に近づくように、 状 態フィードパック則などを用いて、 各瞬間における逆位相腕振り復元角 加速度 /3 arecを決定しても良い。
斜面移動時 (傾斜した床面で口ポッ ト 1を移動させるとき) の歩容生 成においては、 床反力水平成分許容範囲や全体重心加速度水平成分許容 範囲の代わりに、 並進床反力の床面平行成分 (床面に平行な成分)、 す なわち摩擦力の許容範囲、 あるいは全体重心加速度の床面平行成分 (こ れは摩擦力に比例する) の許容範囲を設定するようにしてもよい。 例え ば、 並進床反力の床面平行成分 (摩擦力) の許容範囲を設定する場合に 関して説明 (この説明は全体重心加速度の床面平行成分の許容範囲を設 定する場合でも同様である) すると、 該摩擦力は、 床面の水平面に対す る傾斜角度 0 f (ロボッ ト 1の進行方向に向かって前下がり斜面の場合 を正とする) とすると、 次式 7 2の関係が成立する。 従って、 前記第 1 参考例と同様のアルゴリズムに歩容を生成する場合、 この式 7 2の関係 を用いて、 摩擦力許容範囲を床反力水平成分許容範囲に変換することで, 該床反力水平成分許容範囲を設定するようにすればよい。 なお、 この場 合、 式 7 2の床反力鉛直成分には、 目標床反力鉛直成分を用いればよい ( 摩擦力 =床反力水平成分 * cos( 0 f)—床反力鉛直成分 * sin( 0 f)
…式 7 2 また、 斜面移動時 (傾斜した床面でロボッ ト 1 を移動させるとき) の 歩容生成においては、 床反力モーメント鉛直成分は、 式 1 0 7 2によつ て床面摩擦力法線方向モーメントに変換することができるので、 床反力 モーメント鉛直成分許容範囲の代わりに、 床反力モーメントの床面法線 方向成分、 すなわち床面摩擦力法線方向モーメントの許容範囲の許容範 囲を設定するようにしてもよい。 床面摩擦力法線方向モーメント=床反力モ一メント鉛直成分 * cos( 0 f)
…式 1 0 7 2 今回歩容のパラメ一夕決定は、 前記第 1参考例のように前回歩容が完 了した時点で行う以外に、 本願出願人による P C T公開公報 WOZ02Z 40224に記述されているように、 今回歩容の生成途中で、 再決定しても 良い。 こうすることにより、 演算量は増えるが、 歩容に対する要求に変 更があった時に即応できるからである。
また、 歩容の修正 (今回歩容パラメータを再決定すること) が、 今回 制御周期で間に合わない場合には、 とりあえず今回は、 修正しない歩容 あるいは暫定的に修正した歩容 (探索途中の歩容であって、 完全には、 探索完了条件 (歩容境界条件のずれが許容値以内に入っていること) を 満足していない歩容) を出力し、 次回制御周期までに、 あるいは複数制 御周期後までに (暫定的でない) 適切な修正歩容にしても良い。 修正さ れた目標 Z M P軌道と目標床反力鉛直成分軌道は連続であり、 短時間後 では、 これらが急激に変化することはないので、 今回歩容の目標 Z M P 軌道と目標床反力鉛直成分軌道が若干ぎざぎざになるだけで、 ほとんど 問題はない。
また、 前記第 1参考例では、 図 5の走行歩容を生成する場合を例に採 つて説明したが、 ロボッ ト 1の歩行歩容を生成する場合でも、 前記第 1 参考例と同様に目標歩容を生成できる。 この場合には、 例えば前記第 1 参考例において、 目標床反力鉛直成分を前記図 6に示したものに代えて, 例えば図 5 0に示すようなパターンで設定すればよい。 この例では、 床 反力鉛直成分軌道は、 両脚支持期では床反力鉛直成分の増加側に凸の台 形状に設定され、 片脚支持期では床反力鉛直成分の減少側に凸の台形状 に設定される。 なお、 台形部分の高さ C l、 C 2 の設定方法などの詳細 は、 例えば本願出願人による P C T公開公報 WOZ03Z 057425ZA1 に 詳細に説明されているのでここでの説明は省略する。 次に、 以上説明した第 1参考例およびその変形態様を基礎として、 第 2参考例を図 5 3〜図 5 8を参照して説明する。 なお、 本第 2参考例の 説明において、 前記第 1参考例と同一構成部分もしくは同一機能部分に ついては前記第 1参考例と同一の参照符号を用いて説明を省略する。 特 に、 本第 2参考例は、 先にも述べたように、 前記図 1〜図 3および図 5 〜図 1 2を参照して説明した事項は、.前記第 1参考例と同一である。 本第 2参考例が前記第 1参考例と相違する点の概要を説明すると、 本 第 2参考例では、 目標上体姿勢角と実上体姿勢角の差である実上体姿勢 角偏差 (上体 3の鉛直方向に対する傾き角の偏差およびョ一角の偏差). 及び Z又はその変化率を 0に近づけるために、 コンプライアンス制御へ の目標床反力を操作することに加え、 目標歩容も修正するようにした。 特に、 実上体姿勢偏差のうちのョ一角成分及び/又はその角速度に応じ て、 目標歩容に動力学的に釣り合う (目標桊容の運動の慣性力と重力と の合力が目標 Z M Pまわりに発生するモーメン トの鉛直成分に釣り合 う) 目標 Z M Pまわりの床反力モーメントの鉛直成分も修正するように した。
本第 2参考例における制御ュニッ ト 6 0の機能的構成を表すブロック 図を図 5 3に示す。 以下、 本第 2参考例における制御ュニッ ト 6 0の機 能的構成が前記第 1参考例のもの (図 4のもの) と相違する点を説明す る。
本第 2参考例においては、 姿勢傾斜安定化制御演算部 1 1 2において 算出される補償全床反力モーメント水平成分 Mdmdxy は、 補償全床反 力モーメント水平成分分配器 1 1 0に入力される 捕償全床反力モーメ ン ト水平成分分配器 1 1 0 は、 補償全床反力モーメ ン ト水平成分 Mdmdxy を、 コンプライアンス制御用目標床反力モーメント水平成分 とモデル操作床反力モーメント水平成分とに分配する。 換言すれば、 実 上体姿勢傾斜角偏差を基に、 姿勢傾斜安定化制御演算部 1 1 2及び補償 全床反力モーメン卜水平成分分配器 1 1 0により、 コンプライアンス制 御用目標床反力モーメント水平成分とモデル操作床反力モーメント水平 成分とが決定される。
具体的には、 補償全床反力モーメント水平成分分配器 1 1 0において は、 まず、 モデル操作床反力モーメント水平成分が次式で決定される。 なお、 床反力モーメント水平成分許容範囲は、 後述するごとく歩容生成 装置 1 0 0において決定される。
Mdmdxy>床反力モ一メント水平成分許容範囲上限値である場合
モデル操作床反力モーメント水平成分 =—Mdmdxy
+床反カモ一メント水平成分許容範囲上限値 Mdmdxy<床反力モーメント水平成分許容範囲下限値である場合
モデル操作床反力モーメント水平成分 =—Mdmdxy
+床反カモ一メント水平成分許容範囲下限値 床反力モ一メ ン ト水平成分許容範囲下限値≤ Mdmdxy、 且つ、 Mdmdxy≤床反力モーメント水平成分許容範囲上限値である場合
モデル操作床反カモ一メン卜水平成分 = 0
……式 d 2 7 a 次に、 コンプライアンス制御用目標床反力モーメント水平成分が次式 で決定される。
コンプライアンス制御用目標床反力モーメント水平成分
= Mdmdxy +モデル操作床反力モーメント水平成分
式 d 2 7 b 従って、 コンプライアンス制御用目標床反力モーメント水平成分とモ デル操作床反力モーメン卜水平成分との差が Mdmdxy に等しくなるよ うにそれらの床反カモ一メン卜水平成分が決定される。
上記のような演算を行なう補償全床反力モ一メント水平成分分配器 1 1 0をブロック図で表すと、 図 5 4に示すようになる。
また、 ョー安定化制御演算部 1 1 3において前記第 1参考例と同様に 決定された補償全床反カモ一メント鉛直成分 Mdmdz (前記式 d 2 6を 参照) は、 モデル操作床反力モーメント鉛直成分決定器 1 1 1に入力さ れる。 モデル操作床反力モーメント鉛直成分決定器 1 1 1は、 補償全床 反力モーメント鉛直成分 Mdmdz を基に、 モデル操作床反力モーメント 鉛直成分を決定する。 換言すれば、 実上体姿勢角偏差のうちの上体ョー 角偏差を基に、 ョ一安定化制御演算部 1 1 3及びモデル操作床反カモ一 メント鉛直成分決定器 1 1 1により、 補償垒床反力モーメント鉛直成分 Mdmdzとモデル操作床反カモ一メント鉛直成分とが決定される。
具体的には、 モデル操作床反力モーメント鉛直成分決定器 1 1 1 にお いて、 モデル操作床反力モーメント鉛直成分が次式で決定される。 なお. 床反力モーメント鉛直成分補償量許容範囲は、 後述するごとく歩容生成 装置 1 0 0において決定される。
Mdmdz>床反力モ一メント鉛直成分補償量許容範囲上限値である場 モデル操作床反力モーメント鉛直成分 =—Mdmdz
+床反力モーメント鉛直成分補償量許容範囲上限値 Mdmdz<床反力モーメント鉛直成分補償量許容範囲下限値である場 合
モデル操作床反力モーメント鉛直成分 = — Mdmdz
+床反力モーメント鉛直成分補償量許容範囲下限値 床反力モーメント鉛直成分補償量許容範囲下限値≤MdmdZ、 且つ、 Mdmdz≤床反力モーメント鉛直成分補償量許容範囲上限値である場合 モデル操作床反力モーメント鉛直成分 = 0
…式 d 2 6 b 上記のような演算を行なうモデル操作床反カモ一メント鉛直成分決定 器 1 1 1をブロック図で表すと、 図 5 5に示すようになる。 従って、 モ デル操作床反カモ一メント鉛直成分は、 補償全床反力モーメント鉛直成 分 M dmdz のうち、 床反力モーメント鉛直成分補償量許容範囲を逸脱し た分の符号を反転させたものに設定される。
コンプライアンス制御用目標床反力モーメント水平成分および補償全 床反力モーメント鉛直成分 Mdmdzは、 複合コンプライアンス動作決定 部 1 0 4に送られる。
モデル操作床反カモ一メント水平成分および鉛直成分は、 歩容生成装 置 1 0 0に送られる。
尚、 補償全床反力モーメント鉛直成分 Mdmdzの代わりに、 補償全床 反カモ一メント鉛直成分 Mdmdz とモデル操作床反力モーメン卜鉛直成 分との和を、 コンプライアンス制御用目標値として、 複合コンプライア ンス動作決定部 1 0 4に送っても良い。
複合コンプライアンス動作決定部 1 0 4は、 歩容生成装置 1 0 0が生 成する目標歩容の運動にロポッ ト 1の運動を追従させつつ、 歩容生成装 置 1 0 0が生成する目標全床反力にコンプライアンス制御用目標床反力 モーメント水平成分と補償全床反力モーメント鉛直成分 Mdmdz を加え ることによって修正される目標全床反力に実床反力が近づくように、 目 標足平位置姿勢を修正することにより、 機構変形補償付き修正目標足平 位置姿勢 (軌道) を決定する。
この場合、 口ポッ ト 1の足平位置姿勢や床反力の全ての状態を目標に 一致させることは事実上不可能であるので、 前記第 1参考例と同様、 こ れらの間にトレードオフ関係を与えて妥協的になるベく一致させる。 詳細は後述するが、 歩容生成装置 1 0 0は、 該歩容生成装置 1 0 0に おいて決定される目標 Z M Pまわりの床反カモ一メン卜水平成分がモデ ル操作床反力モーメント水平成分となるように動力学モデルを用いて目 標歩容の運動 (特に上体位置姿勢軌道) を生成する。 さらに、 歩容生成 装置 1 0 0は、 モデル操作床反カモ一メントが 0であるとして生成され た目標歩容 (仮目標歩容) に動力学的に釣り合う目標全床反力中心点 (目標 Z M P ) 回りの目標床反力モー.メント鉛直成分にモデル操作床反 力モーメント鉛直成分が付加的に発生するように目標歩容の運動 (特に 腕振り軌道) を修正する。
これら以外の、 制御ユニッ ト 6 0の機能的構成は、 前記第 1参考例と 同一である。 補足すると、 前記第 1参考例で生成した目標歩容は、 本第 2参考例で、 前記モデル操作床反力モーメント水平成分と、 モデル操作 床反力モーメン卜鉛直成分とを定常的に 0に設定した場合に生成される 目標歩容と同じである。
第 2参考例における歩容生成装置 1 0 0の動作 (歩容生成処理) をそ のメインフローチャートである図 5 6を用いて以下に詳説する。 S 3 0 1 0から S 3 0 2 8までは、 前記第 1参考例の図 1 3の S 0 1 0から S 0 2 8 と同様の処理を行う。
次いで、 S 3 0 3 0に進み、 コンプライアンス制御用の目標 Z M Pま わりの床反カモ一メント水平成分と床反カモ一メント鉛直成分補償量の 許容範囲を規定するパラメ一夕が決定される。
なお、 床反力モーメント水平成分を、 床反力鉛直成分で割ったものが. Z M P (床反力中心点) の目標 Z M Pからのずれ量を表すものとなる。 従って、 床反力モーメント水平成分許容範囲を、 床反力鉛直成分で割る ことによって、 床反力中心点に変換した Z M P許容範囲 (床反力中心点 許容範囲) のパラメータを設定するようにしてもよい。
補足すると、 S 3 0 3 0で決定するコンプライアンス制御用の床反力 モ一メント水平成分許容範囲と床反力モーメント鉛直成分補償量許容範 囲のパラメ一夕とを基に、 後述する今回歩容瞬時値決定サブルーチン ( S 3 0 3 2のサブルーチン) において、 それらの許容範囲の瞬時値が 決定され、 それが、 前記補償全床反力モーメント水平成分分配器 1 1 0 およびモデル操作床反力モーメント鉛直成分決定器 1 1 1における前記 の処理に用いられる。
この床反力モーメント水平成分許容範囲については、 本願出願人によ る P C T出願 P C T Z J P 0 3 Z 0 0 4 3 5に床反力モ一メント許容範 囲として設定方法が詳細に記載されているので、 本明細書では、 これ以 上の説明を省略する。
前記床反力モーメント鉛直成分補償量は、 歩容生成装置 1 0 0におい て、 仮に、 床反カモ一メント鉛直成分が歩容生成用の床反カモ一メン卜 鉛直成分許容範囲 (これは S 3 0 2 6において設定される) 内に制限さ れた目標歩容を生成した場合に、 目標歩容の運動が発生する床反力モー メントに付加することができる床反力モーメント鉛直成分の補償量を意 味する。 したがって、 歩容生成用の床反力モーメント鉛直成分許容範囲 が実際の摩擦限界よりも十分に狭く設定されていなければ、 床反力モー メント鉛直成分補償量許容範囲を広く設定することはできない。
床反力モーメント鉛直成分補償量許容範囲は、 歩容生成用の床反カモ 一メント鉛直成分許容範囲 (前記図 4 1を参照) と相似形に設定すれば 良い。 また、 前記図 5の走行歩容の空中期では、 コンプライアンス制御 用の床反力モーメント鉛直成分補償量許容範囲は、 上限値が 0、 下限値 が 0の領域に設定される。
図 5 6に戻って、 上記のごとく S 3 0 3 0においてコンプライアンス 制御用の目標 Z MPまわりの床反カモ一メント水平成分と床反力モーメ ント鉛直成分補償量の許容範囲を規定するパラメ一夕を決定した後、 あ るいは S 3 0 1 6の判断結果が N〇である場合には、 S 3 0 3 2に進み. 今回歩容瞬時値が決定される。 S 3 0 3 2では、 目標 ZMPまわりに前 記式 d 2 7 aに従って決定されるモデル操作床反力モーメント水平成分 が発生するように今回歩容瞬時値が決定される。 ただし、 今回歩容に釣 り合う (今回歩容の運動の慣性力と重力との合力が目標 Z MPまわりに 発生する慣性力モーメントの鉛直成分に釣り合う) 床反力モーメント鉛 直成分が床反カモ一メント鉛直成分許容範囲を越えないように今回歩容 瞬時値が決定される。
具体的には、 図 5 7、 図 5 8のフローチヤ一トにしたがって歩容瞬時 値が決定される。 すなわち、 S 3 0 3 0では、 まず、 図 5 7の S 3 4 0 0から S 3 4 1 1までの処理が実行される。 これらの S 3 4 0 0から S 34 1 1までの処理は、 前述した図 4 5の S 1 4 0 0から S 1 4 1 1ま での処理と全く同一である。
次いで、 S 3 4 1 2に進み、 前記図 5 6の S 3 0 3 0で決定したコン プライアンス制御用の床反カモ一メント水平成分許容範囲および床反力 モ一メント鉛直成分補償量容範囲のパラメ一夕を基に、 現在時刻での床 反カモ一メント水平成分許容範囲 [Mxymin, Mxymax]と床反力モーメ ント鉛直成分補償量許容範囲 [Mzcmin, Mzcmax]の瞬時値 (現在時刻 tの今回値) が求められる。
求められた床反力モーメント水平成分許容範囲は、 前記補償全床反力 モーメント水平成分分配器 1 1 0 (図 5 3参照) に送られる。 そして、 この分配器 1 1 0で前記式 d 2 7 aにより算出されたモデル操作床反力 モーメントの今回値 (現在時刻 t.の値) が歩容生成装置 1 0 0に与えら れる。 また、 求められた床反力モーメント鉛直成分補償量容範囲は、 前記モ デル操作床反力モーメント鉛直成分決定器 1 1 1 (図 5 3参照) に送ら れる。 そして、 このモデル操作床反力モーメント鉛直成分決定器 1 1 1 で前記式 d 2 6b により算出されたモデル操作床反力モーメント鉛直成 分の今回値 (現在時刻 tの値) が歩容生成装置 1 0 0に与えられる。 次いで、 歩容生成装置 1 0 0の処理は、 S 3 4 1 4に進み、 補償全床 反力モーメント分配器 1 1 0から与えられたモデル操作床反カモ一メン ト水平成分が目標 Z MPまわりに発生するように、 今回歩容の上体水平 加速度と上体姿勢傾斜角加速とが決定される。 ただし、 床反力水平成分 Fx が、 S 3 4 1 0で決定された床反力水平成分許容範囲 [Fxmin, Fxmax]を越えないように上体水平加速度および上体姿勢角加速度 (上 体傾斜角加速度) が決定される。
言い換えると、 口ポッ ト 1の運動の慣性力と重力との合力が目標 ZM Pまわりに作用するモーメン卜水平成分がモデル操作床反力モーメント 水平成分の符号を反転したモーメントになるように、 今回歩容の上体水 平加速度と上体姿勢角加速 (上体傾斜角加速度) とが決定される。 ただ し、 慣性力水平成分の符号を反転した力が床反力水平成分許容範囲 [Fxmin, Fxmax]を越えないように上体水平加速度および上体姿勢傾斜 角加速度が決定される。
S3 4 1 4では、 具体的には、 図 5 8に示すフローチャートに従って. 上体水平加速度と上体姿勢角加速度とが決定される。 本フローチャート は、 S 3 1 0 4および S 3 1 3 0を除いて、 前記図 2 6と同様の処理が 行われる。 S3 1 0 4および S3 1 3 0では、 図 2 6の S5 0 4および S 5 3 0と異なり、 口ポッ ト 1の前回瞬時歩容状態 (時刻 k一 1の歩容 状態) から、 上体傾斜モードの角加速度を 0にして (より正確には上体 傾斜モードの角加速度を基準上体姿勢角加速度に一致させて)、 上体並 進モードの運動をロボッ ト 1にさせた場合に今回 (時刻 k ) の目標 Z M Pまわりに前記モデル操作床反カモ一メント水平成分が発生するために 必要な上体水平加速度 ( S 3 1 0 4では a tmp、 S 3 1 3 0では ο; ) が 求められる。
これ以外の処理は図 2 6の処理と同じである。
以上のごとく S 3 4 1 4の処理を行った後、 S 3 4 1 6に進み、 図 4 5の S 1 4 1 4と同一の処理が実行され、 今回歩容の上体水平位置およ び上体姿勢傾斜角 (詳しくはそれらの現在時刻 t における今回値) が決 定される。
次いで S 3 4 1 8に進み、 図 4 5の S 1 4 1 6と同一の処理が実行さ れ、 今回歩容の逆'位相腕振り角および角速度 (詳しくはそれらの現在時 刻 t における今回値) が決定される。
これにより、 図 5 6の S 3 0 3 2の処理が完了する。
次いで図 5 6の S 3 0 3 4に進み、 目標 Z M Pまわりにモデル操作床 反力モーメント鉛直成分が付加的に発生するように、 S 3 0 3 2で生成 した今回歩容瞬時値を修正する。
具体的には、 モデル操作床反力モーメント鉛直成分に対応する逆位相 腕振り角加速度の修正量) 3 aaddを次式によって求める。 逆位相腕振り角加速度の修正量 β aadd
=モデル操作床反力モーメント鉛直成分
Z逆位相腕振り運動の等価慣性モーメント A Maz さらに、 jS aadd を制御周期の期間積分して、 逆位相腕振り角速度の 修正量を求め、 さらにこれを積分して逆位相腕振り角の修正量を求める ( 最後に、 S 3 0 3 2で生成した今回歩容の逆位相腕振り角および角速 度にそれぞれ、 逆位相腕振り角速度の修正量および逆位相腕振り角の修 正量を加えることにより、 今回歩容の逆位相腕振り角および角速度を修 正する。
次いで S 3 0 3 6に進み、 時刻 t に制御周期△ tを加え、 再び、 S 3 0 1 4に戻り、 制御周期毎のタイマー割り込みを待つ。
第 2参考例では、 以上のごとく、 歩容生成装置 1 0 0における目標歩 容生成処理が行なわれ、 目標上体位置姿勢、 目標足平位置姿勢、 目標腕 姿勢 (逆位相腕振り角を含む)、 目標. Z M Pおよび目標全床反力の瞬時 値が逐次決定されて出力される。
この場合、 目標全床反力は、 コンプライアンス制御に必要な成分だけ を出力しても良い。 なお、 目標 Z M Pは、 目標全床反力に含まれるが特 に重要であるので、 あえて出力として挙げた。 また、 複合コンプライア ンス制御装置 (図 5 3の点線で囲った部分) に対しては、 モデル操作床 反力モーメント水平成分は、 目標床反力として出力されない。 すなわち コンプライアンス制御に対しては、 目標 Z M Pまわりの床反力モ一メン ト水平成分が 0になることを目標とする目標床反力 (本来の意味での目 標 Z M Pを満足する目標床反力) が、 歩容生成装置 1 0 0から出力され る。
また、 複合コンプライアンス制御装置に対しては、 S 3 0 3 4におい て修正された今回歩容の床反力モーメント鉛直成分が目標値として歩容 生成装置 1 0 0から出力される。
以上説明した第 2参考例の作用 1 として、 目標歩容の運動は、 モデル 操作床反力モーメント水平成分が目標 Z M Pまわりに発生するように生 成されつつ、 実際のロポッ 1の床反力は、 モデル操作床反力モーメント 水平成分が付加されないように制御される。 したがって、 差し引きモデ ル操作床反力モーメント水平成分の分だけ、 目標歩容の運動と床反力の 不平衡 (アンバランス) を生じる。 このことは、 実ロボッ ト 1の上体姿 勢傾斜角と目標歩容の上体姿勢傾斜角との差を 0に収束させる効果に関 して言えば、 モデル操作床反力モーメント水平成分の符号を反転した床 反カモ一メント水平成分を実ロボッ ト 1に作用させることと等価である, つまり、 モデル操作床反力モーメント水平成分を適宜決定することに より、 実口ポッ ト 1を、 修正目標歩容 (実口ポッ ト 1の上体姿勢傾斜角 と目標歩容の上体姿勢傾斜角との差を 0に収束させる歩容) に収束させ ることができる。 つまり、 実口ポッ ト 1の姿勢傾斜を安定化させること ができる。
作用 2として、 モデル操作床反力モーメント水平成分の符号を反転し たモ一メントとコンプライアンス制御用目標床反力モーメント水平成分 との和がトータルの傾斜復元力 (口ポッ ト iの実上体姿勢傾斜角を目標 上体姿勢傾斜角に復元させる力) になる。 すなわち、 コンプライアンス 制御用目標床反力モーメント水平成分とモデル操作床反力モーメント水 平成分との差がトータルの姿勢傾斜復元力になる。
また、 作用 3として、 モデル操作床反力モーメント水平成分は、 Z M P存在可能範囲を無視していかなる値でも取ることが可能であるので、 非常に高い姿勢傾斜復元力を発生することができる。
また、 作用 4として、 床反力水平成分が、 床反力水平成分許容範囲を 越えないように上体並進モードの上体並進加速度と上体傾斜モードの上 体姿勢傾斜角加速度とが決定されるので、 走行歩容における支持脚側脚 体 2の離床直前や着床直後など、 大きな床反力水平成分を発生できない 時期や、 摩擦係数の小さい床をロボッ ト 1が移動する場合においても口 ポッ ト 1のスリップを防止することができる。
また、 作用 5として、 床反力の並進力鉛直成分が 0の時期、 すなわち, 両脚がいずれも接地していない時期では、 床反力水平成分の許容範囲が 0に設定されることにより、 前記した第 2参考例のアルゴリズムにより 自動的に、 上体並進モードに依存せずに上体傾斜モードに依存した姿勢 傾斜復元が行われ、 床と足底の間の摩擦力に依存せずに姿勢復元が行わ れる。 したがって、 この時期 (空中期) においても、 単に、 上体並進モ —ドを修正するだけの方式と異なり、 有効に姿勢傾斜復元作用が働く。 なお、 この時には、 床反力水平成分が 0になるように生成されるから、 歩容の全体重心水平加速度は 0となる。
また、 作用 6として、 上記したごと.く、 コンプライアンス制御に対し ては、 モデル操作床反力モーメント水平成分は、 目標床反力として出力 されない。 すなわち、 目標 Z M Pまわりにモデル操作床反力モーメント 水平成分を発生させるように歩容生成が行なわれても、 コンプライアン ス制御に対しては、 目標 Z M Pまわりの床反.カモ一メント水平成分が 0 になることを目標とする目標床反力が、 歩容生成装置 1 0 0から与えら れる。 したがって、 コンプライアンス制御による床反力制御を妨げず、 コンプライアンス制御による床反力制御を適切に行うことができる。 よ り具体的には、 足平 2 2の本来の接地性が低下したり、 足平 2 2の底面 が浮いてしまうような不具合が発生することを防止または抑制すること ができる。
なお、 後述するように、 第 3参考例以降でも、 目標 Z M Pまわりのコ ンプライアンス制御用目標床反力モーメント水平成分は、 床反力モーメ ント水平成分許容範囲を越えないように決定される。
なお、 作用 1から 6は、 本願出願人が先に提案した P C T Z J P 0 3 / 0 0 4 3 5の技術と同様である。
作用 7として、 目標歩容の運動は、 モデル操作床反力モーメント鉛直 成分が目標 Z M Pまわりに付加的に発生するように生成されつつ、 実際 のロボッ ト 1の床反力は、 歩容生成装置 1 0 0によりモデル操作床反力 モ一メント鉛直成分が付加された目標歩容に釣り合う目標床反力モーメ ント鉛直成分に補償全床反力モーメント鉛直成分 Mdmdz を加えたもの を目標値として、 複合コンプライアンス制御により前記目標値に近づく ように実床反力が制御される。 Mdmdzが大きくなつてくると、 Mdmdz と逆方向のモデル操作床反力モーメント鉛直成分が目標歩容に付加され ることから、 複合コンプライアンス制御により前記目標値に近づくよう に実床反力を制御するようにしても、 実床反力のモーメントの鉛直成分 が過大になることがなく、 その結果、 .実ロボッ ト 1のスピンを生じるこ となく、 実ロボッ ト 1の上体姿勢ョ一角及び 又は上体姿勢ョ一角速度 と目標歩容の上体姿勢ョ一角及び Z又はョー角速度との差を 0に収束さ せる効果を奏することができる。
つまり、 モデル操作床反力モーメント鉛直成分を適宜決定することに より、 実口ポッ ト 1を、 そのスピンが生じないようにしつつ、 修正目標 歩容 (実ロポッ ト 1の上体姿勢ョ一角及び 又は上体姿勢ョー角速度と 目標歩容の上体姿勢ョ一角及び/又は上体姿勢ョ一角速度との差を 0に 収束させる歩容) に収束させることができる。 つまり、 実ロボッ ト 1の ョ一回転を安定化させることができる。
作用 8として、 補償全床反力モーメント鉛直成分 Mdmdzがトータル のョ一回転復元力になる。 補償全床反力モーメント鉛直成分 Mdmdzは ョ一角偏差および またはョ一角速度偏差を 0に近づけるようにフィー ドバック制御則に基づき決定されるので、 ョ一角偏差の制御的な安定性 が保証されつつ、 ョ一角偏差および zまたはョ一角速度偏差を 0に近づ けることができる。
また、 作用 9として、 モデル操作床反力モーメント鉛直成分は、 床反 力モーメント鉛直成分の許容範囲 (あるいは摩擦限界) を無視していか なる値でも取ることが可能であるので、 非常に高い姿勢ョ一回転復元力 を発生することができる。
また、 作用 1 0として、 コンプライアンス制御に対しては、 最終的に 目標床反力モーメント鉛直成分が、 床反カモ一メント鉛直成分許容範囲 と床反力モーメント鉛直成分補償量許容範囲の和の範囲を越えないよう に決定されるので、 走行歩容における支持脚側脚体 2の離床直前や着床 直後など、 大きな床反力モーメント鉛直成分を発生できない時期や、 摩 擦係数の小さい床を口ポッ ト 1が移動する場合においてもコンプライア ンス制御による床反力制御を適切に行うことができ、 口ポッ ト 1のスピ ンを防止することができる。 より具体的には、 足平 2 2の本来の接地性 が低下したり、 足平 2 2の底面が浮いてしまうような不具合が発生する ことを防止または抑制することができる。
また、 作用 1 1 として、 床反力の並進力鉛直成分が 0の時期、 すなわ ち、 両脚がいずれも接地していない時期では、 床反力モーメント鉛直成 分許容範囲と床反力モーメント鉛直成分補償量許容範囲が 0に設定され ることにより、 前記した本第 2参考例のアルゴリズムにより自動的に、 実床反力モーメント鉛直成分に依存せずに逆位相腕振りモードに依存し たョ一回転復元が行われ、 床と足底の間の摩擦力に依存せずにョ一回転 復元が行われる。 したがって、 この時期 (空中期) においても、 単に、 コンプライアンス制御の目標床反力モーメント鉛直成分を修正するだけ の方式と異なり、 有効にョ一回転復元作用が働く。
作用 1 2 として、 目標 Z M Pまわりに発生するモーメント水平成分が 0になるように生成したとした場合の歩容を元歩容、 前記第 2参考例の 如く 目標 Z M Pまわりに発生するモ一メント水平成分がモデル操作床反 力モーメント水平成分になり、 且つ、 目標 Z M Pまわりに発生するモー メント鉛直成分に付加的にモデル操作床反力モー'メント鉛直成分が発生 するように生成される歩容を修正歩容と呼ぶと、 通常、 元歩容と修正歩 容とは異なる歩容となる。 元歩容は定常歩容に漸近するように設定され ているので、 修正歩容は、 通常、 定常歩容に漸近しない歩容となる。
しかし、 今回歩容 (修正歩容) の生成が完了した直後に、 再び S 3 0 2 0から S 3 0 2 8が実行され、 修正歩容の終端状態を新たな初期状態 とした新たな今回歩容が、 新たに設定される定常歩容に漸近するように, 新たな今回歩容パラメ一夕が決定されるので、 継続的に (長期的に) 安 定性が保証された歩容を生成し続けることができる。
上記した作用 1 2は、 本願出願人が先に提案した P C T Z J P 0 3 / 0 0 4 3 5の技術とほぼ同様である。 但し、 これに加えて本第 2参考例 では、 次のような作用も発生する。 すなわち、 ョ一角回転復元のために 修正された逆位相腕振り角および角速度の終端状態を新たな初期状態と した新たな今回歩容の逆位相腕振り角軌道が新たに設定される定常歩容 の逆位相腕振り角軌道に漸近するように、 新たな今回歩容の逆位相腕振 り角軌道に関するパラメータが決定されるので、 継続的に (長期的に) 逆位相腕振り角の安定性が保証された歩容を生成し続けることができる c なお、 本第 2参考例では、 補償全床反力モーメ ン ト水平成分 Mdmdxy が床反力モーメント水平成分許容範囲内の値であるときには, モデル操作床反カモ一メント水平成分は 0になるが、 このときのモデル 操作床反力モーメント水平成分を図 1 2の動力学モデルの状態量 (例え ば動力学モデル上での口ポッ トの重心位置や、 上体質点 3 mの位置等) に応じて設定するようにしてもよい。
また、 本第 2参考例では、 補償全床反力モーメント鉛直成分 Mdmdz が床反力モーメント鉛直成分補償量許容範囲内の値であるときには、 モ デル操作床反力モーメント鉛直成分補償量は 0になるが、 このときのモ デル操作床反カモ一メント鉛直成分補償量を図 1 2の動力学モデルの状 態量 (例えば動力学モデル上でのロボッ ト 1の逆位相腕振り角および角 速度、 上体ョ一角および角速度等) に応じて設定するようにしてもよい
次に本発明の第 3参考例を図 5 9〜図 6 2を参照して説明する。 なお. 第 3参考例の説明において、 前記第 1参考例もしくは前記第 2参考例と 同一構成部分もしくは同一機能部分については前記第 1参考例もしくは 第 2参考例と同一の参照符号を用いて説明を省略する。 第 3参考例は、 前記第 1参考例で前記図 1〜図 3および図 5〜図 1 2を参照して説明し た事項は、 前記第 1参考例と同一である。
第 3参考例が前記第 1参考例および第 2参考例と相違する点の概要を 説明すると、 元歩容と修正歩容が同時に生成される。 修正歩容は、 実口 ポッ ト 1の上体姿勢 (傾斜角およびョ一角).の安定化のために元歩容か ら修正される。 さらに、 該修正歩容は、 コンプライアンス制御により姿 勢復元に必要な床反カモ一メントを発生してもまだ余裕がある (目標 Z M Pまわりに発生可能な床反カモ一メントに余裕がある) 場合には、 こ の余裕を用いて、 可能な範囲で元歩容に収束するように決定される。 第 3参考例における制御ュニッ ト 6 0の機能的構成を表すプロック図 を図 5 9に示す。 第 3参考例では、 姿勢傾斜安定化制御演算部 1 1 2が 求める補償全床反力モーメント水平成分 Mdmdxy は、 歩容生成装置 1 0 0に入力される。
また、 ョー安定化制御演算部 1 1 3が求める補償全床反力モーメント 鉛直成分 Mdmdzも、 歩容生成装置 1 0 0に入力される。
そして、 この Mdmdxy および Mdmdz を基にモデル操作床反力モー メント (水平成分および鉛直成分) とコンプライアンス制御用目標床反 力モーメント (水平成分および鉛直成分) とを決定する補償全床反カ乇 —メント分配器 1 2 0が、 歩容生成装置 1 0 0に組み込まれ、 該歩容生 成装置 1 0 0からコンプライアンス制御用目標床反力モーメントが複合 コンプライアンス動作決定部 1 0 4に出力される。 そして、 歩容生成装 置 1 0 0内の補償全床反力モーメント分配器 1 2 0は後述するように、 前記第 2参考例の補償全床反力モーメント水平成分分配器 1 1 0および モデル操作床反力モーメント鉛直成分決定器 1 1 1よりも複雑な処理を 行う。 これ以外の、 制御ユニッ ト 6 0の機能的構成は、 前記第 2参考例 と同一である。
図 6 0に第 3参考例における歩容生成装置 1 0 0のメインル一チン処 理のフ口一チャートを示す。
同図 6 0おいて、 S 2 0 1 0から S 2 0 2 8までは、 前記第 1参考例 のメインフローチャート (図 1 3) の S 0 1 0から S 0 2 8までの処理 と同一の処理が行なわれる。 なお、 S 0 2 3 (本実施形態では S 2 0 2 8 ) のサブルーチンである図 4 3のフローチャートの S 8 0 0における 初期化においては、 今回歩容初期状態は、 前回修正歩容 (歩容生成装置 1 0 0が最終的に出力する歩容) の終端状態を今回支持脚座標系に変換 したものであり、 後述の S 2 0 3 2で決定される元歩容の終端状態は、 S 2 0 2 8のサブルーチンの S 8 0 0では用いられない。
次いで S 2 0 3 0に進み、 コンプライアンス制御用の床反力モ一メン ト水平成分許容範囲を決定する。 この床反カモ一メント水平成分許容範 囲の決定方法は、 第 2参考例の S 3 0 3 2 (図 5 6 ) と同様である。
S 2 0 3 0の処理を完了した後、 あるいは S 2 0 1 6の判断結果が N Oである場合には、 S 2 0 3 2に進み、 元歩容の瞬時値 (時刻 tの今回 値) が決定される。 元歩容は、 目標 Z MPまわりの床反力モーメント水 平成分が 0になるように生成される歩容である。
この元歩容は、 前記第 2参考例の図 5 6の S 3 0 3 2のサブルーチン 処理の一部を変更したアルゴリズムによって生成される。 すなわち、 S 3 0 3 2内のサブルーチン処理 (詳しくは S 3 0 3 2のサブルーチン処 理である図 5 7の S 3 4 1 4のサブルーチン処理) である図 5 8の S 3 1 0 4および S 3 1 3 0において、 モデル操作床反力モ一メント水平成 分を 0 として (目標 Z MPまわりの目標床反力モーメント水平成分を 0 として)、 上体水平加速度 atmp が求められる。 これ以外の処理は、 図 5 6の S 3 0 3 2の処理と同一でよい。
次いで、 S 2 0 3 4に進み、 修正歩容の瞬時値を決定する。 なお、 修 正歩容は、 歩容生成装置 1 0 0から最終的に出力される目標歩容である, S 2 0 34の処理は、 図 6 1のフローチヤ一トで示すサブルーチン処 理により行なわれ、 以下にその詳細を説明する。
まず S 2 1 0 0から S 2 1 1 1までは、 第 2参考例で説明した図 5 7 の S 3 4 0 0から S 3 4 1 1 と同一の処理が実行される。
次いで、 S 2 1 1 2に進み、 歩容パラメ一夕を基に現在時刻での床反 力モーメント水平成分許容範囲 [Mxymin, Mxymax]を求める。 これは, 図 5 7の S 3 4 1 2での床反カモ一メント水平成分許容範囲 [Mxymin, Mxymax]の決定と同様に行われる。
次いで、 S 2 1 1 4に進み、 床反カモ一メント水平成分許容範囲と床 反力モーメント鉛直成分許容範囲と床反力水平成分許容範囲との条件を 満足するように、 モデル操作床反力モーメント (水平成分および鉛直成 分)、 コンプライアンス制御用目標床反力モーメント、 上体水平加速度, 上体姿勢傾斜角加速および逆位相腕振り角加速度が決定される。
S 2 1 1 4の詳細を、 その処理を示す図 6 2のフローチャートを用い て、 以下に説明する。
まず、 S 2 2 0 0において、 修正歩容の上体水平位置と元歩容の上体 水平位置との差であるモデル間上体水平位置差が求められる。 この時点 では、 修正歩容の上体水平位置の今回値 (時刻 tでの値) は未だ求めら れていない。 そこで、 S 2 2 0 0では、 修正歩容の上体水平位置の前回 値 (時刻 t 一 Δ tの制御周期で最終的に求められた値) と、 元歩容の上 体水平位置の前回値 (時刻 t 一△ tの制御周期で S 2 0 3 2において求 められた値) あるいは今回値 (時刻 tの制御周期で S 2 0 3 2において 求められた値) とを用いて、 モデル間上体水平位置差が算出される。 次いで、 S 2 2 0 2に進み、 修正歩容の上体姿勢傾斜角と元歩容の上 体姿勢傾斜角との差であるモデル間上体姿勢傾斜角差が求められる。 こ の S 2 2 0 2では、 S 2 2 0 0のモデル間上体水平位置差の算出処理の 場合と同様、 修正歩容の上体姿勢傾斜角の前回値と、 元歩容の上体姿勢 傾斜角の前回値又は今回値とを用いてモデル間上体姿勢傾斜角差が求め られる。
次いで、 S 2 2 0 4に進み、 修正歩容の逆位相腕振り角と元歩容の逆 位相腕振り角との差であるモデル間逆位相腕振り角差が求められる。 こ の S 2 2 0 4では、 S 2 2 0 0のモデル間上体水平位置差の算出処理の 場合と同様、 修正歩容の逆位相腕振り角の前回値と、 元歩容の逆位相腕 振り角の前回値又は今回値とを用いてモデル間逆位相腕振り角差が求め られる。
次いで、 S 2 2 0 6に進み、 モデル間上体水平位置差を基に、 その差 を 0に収束させるために必要なモデル上体水平位置安定化床反力モーメ ント要求値 Mpfdmd が決定される。 単に修正歩容の上体並進モードの 上体水平加速度を発生させる床反力モーメントを元歩容の上体並進モー ドの上体水平加速度を発生させる床反カモ一メントに一致させると、 モ デル間上体水平位置差は発散する。 モデル上体水平位置安定化床反カモ —メント要求値 Mpfdmd は、 前記上体並進モードによって修正歩容の 上体水平位置を元歩容の上体水平位置に戻すよう動作を行った時に、 こ れに伴って発生する床反力モーメントから元歩容の上体並進モ一ドの上 体水平加速度を発生させる床反カモ一メントを減じたモーメントとして の意味を持つ。
具体的には、 モデル上体水平位置安定化床反力モーメン ト要求値 Mpfdmd は、 例えば次式のフィードバック制御則によって決定される, この例では、 フィードバック制御則として、 P D制御則を用いているが. P I D等、 他のフィードバック制御則を用いてもよい。
Mpfdmd = Kmp *モデル間上体水平位置差
+ Kmpv *モデル間上体水平位置差の時間微分値
式 d 2 8 但し、 Kmp、 Kmpv はフィードバックゲイン (比例ゲイン、 微分ゲイ ン) である。 次いで、 S 2 2 0 8に進み、 モデル間上体姿勢傾斜角差を基に、 その 差を 0に収束させるために必要なモデル上体姿勢傾斜角安定化床反カモ 一メント要求値 Mrfdmd が決定される。 単に修正歩容の上体傾斜モー ドの上体姿勢傾斜角加速度を発生させる床反カモ一メントを元歩容の上 体傾斜モードの上体姿勢傾斜角加速度を発生させる床反力モーメントに 一致させると、 モデル間上体姿勢傾斜角差は 0に収束しない。 モデル上 体姿勢傾斜角安定化床反力モーメント要求値 Mrfdmd は、 上体傾斜モ 一ドによって修正歩容の上体姿勢傾斜角を元歩容の上体姿勢傾斜角に戻 すよう動作を行った時に、 これに伴って発生する床反力モーメントから 元歩容の上体傾斜モードの上体姿勢傾斜角加速度を発生させる床反カモ 一メントを減じたモーメントとしての意味を持つ。
具体的には、 モデル上体姿勢傾斜角安定化床反力モーメント要求値 Mrfdmdは、 例えば次式のフィードバック制御則によって決定される。 この例では、 フィードバック制御則として、 P D制御則を用いているが. P I D等、 他のフィードバック制御則を用いてもよい。
Mrfdmd= Kmr *モデル間上体姿勢傾斜角差
+ Kmrv *モデル間上体姿勢傾斜角差の時間微分値
……式 d 2 9 但し、 Kmr、 Kmrv はフィードバックゲイン (比例ゲイン、 微分ゲイ ン) である。 . 次いで、 S 2 2 1 0に進み、 モデル間逆位相腕振り角差を基に、 その 差を 0に収束させるために必要なモデル逆位相腕振り角安定化床反カモ —メント要求値 Mafdmd が決定される。 単に修正歩容の逆位相腕振り モードの逆位相腕振り角加速度を発生させる床反力モーメントを元歩容 の逆位相腕振りモードの逆位相腕振り角加速度を発生させる床反力モー メントに一致させると、 モデル間逆位相腕振り角は 0に収束しない。 モ デル逆位相腕振り角安定化床反力モーメント要求値 Mafdmd は、 逆位 相腕振りモードによつて修正歩容の逆位相腕振り角を元歩容の逆位相腕 振り角に戻すよう動作を行った時に、 これに伴って発生する床反力モー メン卜から元歩容の逆位相腕振りモードの逆位相腕振り角加速度を発生 させる床反カモ一メントを減じたモーメントとしての意味を持つ。
具体的には、 モデル逆位相腕振り角安定化床反力モーメント要求値 Mafdmdは、 例えば次式のフィードバック制御則によって決定される。 この例では、 フィードバック制御則として、 P D制御則を用いているが、 P I D等、 他のフィードバック制御則を用いてもよい。
Mafdmd= Ka *モデル間逆位相腕振り角差 + Kav *モデル間逆位相腕振り角差の時間微分値
……式 d 2 9 b 但し、 Kar、 Kav はフィードバックゲイン (比例ゲイン、 微分ゲイン) である。 ところで、 最終的に決定された修正歩容の上体並進モードに伴って発 生する床反カモ一メント水平成分から元歩容の上体並進モードの上体水 平加速度を発生させる床反力モーメント水平成分を減じたモ一メントを モデル上体水平位置安定化床反力モーメントと呼ぶ。 また、 最終的に決 定された修正歩容の上体傾斜運動モ一ドに伴って発生する床反力モーメ ント水平成分から元歩容の上体傾斜運動モードの上体姿勢傾斜角加速度 を発生させる床反力モーメント水平成分を減じたモーメントを、 モデル 上体姿勢傾斜角安定化床反力モーメン卜と呼ぶ。 また、 最終的に決定さ れた修正歩容の逆位相腕振りモードに伴って発生する床反力モーメント 鉛直成分から元歩容の逆位相腕振りモ一ドの.逆位相腕振り角加速度を発 生させる床反力モーメン卜鉛直成分を減じたモーメントを、 モデル逆位 相腕振り角安定化床反力モーメントと呼ぶ。
一方、 摂動運動と摂動床反力とには線形性が近似的に成立する、 すな わち、 異なる摂動運動を元歩容の運動に加えた運動の床反力は、 元歩容 の床反力にそれぞれの摂動運動が発生する摂動床反力を加えたものにほ ぼ一致する。 また、 逆位相腕振りモードでは、 床反力モーメント水平成 分は変化しない。 したがって、 次式が近似的に成立する。 モデル操作床反力モーメント水平成分
=モデル上体水平位置安定化床反力モーメント .
+モデル上体姿勢傾斜角安定化床反カモ一メント 式 d 3 0 この式 d 3 0が近似的に成立することと、 逆位相腕振り角加速度に比 例して床反カモ一メン卜鉛直成分が変化することとを考慮しつつ、 モデ ル上体水平位置安定化床反力モーメントをモデル上体水平位置安定化床 反力モーメント要求値 Mpfdmd に一致またはなるべく近くなるように 決定し、 かつ、 モデル上体姿勢傾斜角安定化床反力モーメントをモデル 上体姿勢傾斜角安定化床反力モーメント要求値 Mrfdmd に一致または なるべく近くなるように決定しつつ、 かつ、 モデル逆位相腕振り角安定 化床反力モーメントをモデル逆位相腕振り角安定化床反力モーメント要 求値 Mafdmd に一致またはなるべく近くなるように決定すれば、 修正 歩容に適切なモデル操作床反カモ一メントを発生させて、 以下に示す復 元条件を満足しつつ、 修正歩容の上体水平加速度と上体姿勢傾斜角加速 度とを、 それぞれ元歩容の上体水平加速度と上体姿勢傾斜角加速度とに 可能な範囲で収束させることができる。
そこで、 S 2 2 1 0の後、 S 2 2 1 2に進み、 以下の条件 (これらを 復元条件と呼ぶ) をできる限り満足するようにモデル上体水平位置安定 化床反力モーメント (上体並進モードの床反力モーメント) とモデル上 体姿勢傾斜角安定化床反力モーメント (上体傾斜モードの床反力モ一メ ント) とモデル逆位相腕振り角安定化床反力モーメントとを決定する。 さらに、 上記のモデル上体水平位置安定化床反力モーメントとモデル上 体姿勢傾斜角安定化床反カモ一メントとモデル逆位相腕振り角安定化床 反力モーメントとの定義を満足するように、 修正歩容の上体水平加速度 と上体姿勢傾斜角加速度と逆位相腕振り角加速度とを決定する。 なお、 以下に示す復元条件は、 番号が小さい条件ほど優先度が高いものとする, つまり相反して両立できない条件がある場合には、 番号が小さい条件を 優先して満足 (成立) させる。 ただし、 復元条件 1、 2および 3は必ず 満足 (成立) させる。
復元条件 1 ) 補償全床反力モーメント水平成分 Mdmdxy とモデル操 作床反力モーメントの和 (これは、 前記式 d 2 7 bが成立する場合には コンプライアンス制御用目標床反力モーメント水平成分に相当する) が 床反力モーメント水平成分許容範囲を越えないこと。
復元条件 2 ) 修正歩容の床反力水平成分が床反力水平成分許容範囲を 越えないこと。
復元条件 3 ) 修正歩容の床反カモ一メント鉛直成分と補償全床反カモ 一メント鉛直成分 Mdmdzの和 (これは、 コンプライアンス制御用目標 床反力モーメント鉛直成分に相当する) が、 床反力モーメント鉛直成分 許容範囲を越えないこと。
復元条件 4 ) モデル上体姿勢傾斜角安定化床反力モーメントが、 モデ ル上体姿勢傾斜角安定化床反力モーメント要求値 Mrfdmd に一致また はできる限り近いこと。 この条件は、 修正歩.容の上体姿勢傾斜角が元歩 容 (当初予定した歩容) の上体姿勢傾斜角に収束するための条件である, 復元条件 5 ) モデル上体水平位置安定化床反力モーメントが、 モデル 上体水平位置安定化床反力モーメント要求値 Mpfdmd に一致またはで きる限り近いこと。 この条件は、 修正歩容の上体水平位置が元歩容 (当 初予定した歩容) の上体水平位置に収束するための条件である。
復元条件 6 ) モデル逆位相腕振り角安定化床反力モーメントが、 モデ ル逆位相腕振り角安定化床反力モーメント要求値 Mafdmd に一致また はできる限り近いこと。 この条件は、 修正歩容の逆位相腕振り角が元歩 容 (当初予定した歩容) の逆位相腕振り角に収束するための条件である, 復元条件 7 ) モデル上体姿勢傾斜角安定化床反力モーメント、 モデル 上体水平位置安定化床反力モーメントおよびモデル逆位相腕振り角安定 化床反力モーメントがそれぞれ連続であること。
上記のような復元条件 1 〜 6を満足するような上体水平加速度、 上体 姿勢傾斜角加速度、 逆位相腕振り角加速度等を決定する S 2 2 1 2の処 理は具体的には例えば次のように実行される。
まず、 上記復元条件 1 、 2、 4および 5を満足するように、 モデル上 体水平位置安定化床反力モーメントおよびモデル上体姿勢傾斜角安定化 床反カモ一メントが決定され、 さらに上体水平加速度および上体姿勢傾 斜角加速度が決定される。 この処理の詳細は、 本願出願人が先に提案し た P C T / J P 0 3 / 0 0 4 3 5の技術に記載されているので、 ここで は説明を省略する。
次いで、 上記復元条件 3および 6を満足するようにモデル逆位相腕振 り安定化床反力モーメントが決定され、 さらに逆位相腕振り角加速度が 決定される。
具体的には、 上記のごとく決定された上体水平加速度および上体姿勢 傾斜角加速度と元歩容の逆位相腕振り角加速度 β aorg で仮に運動した 場合に発生する (運動に動力学的に釣り合う) 目標 Z M Pまわりの床反 力モーメント鉛直成分を求める。 以降、 これを無補正時床反力モーメン ト鉛直成分と呼ぶ。
次いで、 次式のように、 無補正時床反力モーメント鉛直成分とモデル 逆位相腕振り角安定化床反力モーメント要求値 Mafdmd と補償全床反 力モーメント鉛直成分 Mdmdzとの和 Msumzを求める。
Msumz=無補正時床反力モーメント鉛直成分
+ Mafdmd + Mdmdz 次いで、 次式により、 モデル逆位相腕振り安定化床反力モーメントが 決定される。
Msumz>床反力モーメント鉛直成分許容範囲上限値である場合
モデル逆位相腕振り安定化床反力モーメント =— Mdmdz
一無補正時床反力モーメント鉛直成分
+床反力モーメント鉛直成分許容範囲上限値
Msumz<床反力モーメント鉛直成分許容範囲下限値である場合
モデル逆位相腕振り安定化床反力モ一メント=一 Mdmdz
一無補正時床反力モーメント鉛直成分
+床反力モーメント鉛直成分許容範囲下限値 床反力モーメント鉛直成分許容範囲下限値≤Msmnz、 且つ、 Msumz≤ 床反力モーメン卜鉛直成分許容範囲上限値である場合
モデル逆位相腕振り安定化床反力モーメント
· =モデル逆位相腕振り角安定化床反力.モーメント要求値 Mafdmd
……式 d 2 6 c 次いで、 修正歩容の逆位相腕振り角加速度が次式によって求められる 修正歩容の逆位相腕振り角加速度
=元歩容の逆位相腕振り角加速度 β aorg
+モデル逆位相腕振り安定化床反力モーメント
宛振り運動の等価慣性モーメント A Maz 修正歩容の床反力モーメント鉛直成分は、 元歩容の逆位相腕振り角加 速度 0 aorg とモデル逆位相腕振り安定化床反力モ一メントの和である ことから、 上式のごとくモデル逆位相腕振り安定化床反力モ一メントを 決定することにより、 上記復元条件 3が満足される。
上述したように S 2 2 1 2の処理を実行した後、 S 2 2 1 4に進み、 前記式 d 3 0により、 モデル操作床反力モーメント水平成分が決定され る。 すなねち、 S 2 2 0 8で求めたモデル上体水平位置安定化床反カモ ーメントとモデル上体姿勢傾斜角安定化床反カモ一メントとの和がモデ ル操作床反力モーメント水平成分として決定される。 なお、 最終的に決 定される修正歩容の運動の今回瞬時値に基づいて目標 Z M Pまわりの床 反カモ一メントを直接算出して、 これをもってモデル操作床反力モ一メ ン卜としても良い。
次いで、 S 2 2 1 6に進み、 前記式 d 2 7 bにより、 コンプライアン ス制御用目標床反力モーメント水平成分が決定される。 すなわち、 補償 全床反力モーメント水平成分 Mdmdxy と S 2 2 1 4で求めたモデル操 作床反力モーメント水平成分との和がコンプライアンス制御用目標床反 力モーメント水平成分として決定される。 .
次いで、 S 2 2 1 8に進み、 図示する式によって、 コンプライアンス 制御用目標床反力モーメント鉛直成分を決定する。 なお、 図示する式に おける修正歩容に釣り合う (修正歩容の運動に動力学的に釣り合う) 床 反力モーメント鉛直成分は、 無補正時床反力モーメント鉛直とモデル逆 位相腕振り安定化床反力モーメントの和であるが、 最終的に決定される 修正歩容の運動の今回瞬時値に基づいて目標 Z M Pまわりの床反カモ一 メント鉛直成分を直接算出しても良い。
以上により、 図 6 1の S 2 1 1 4の処理が終了し、 次に、 S 2 1 1 6 に進む。 この S 2 1 1 6の処理は、 前記第 2参考例における図 5 7の S 3 4 1 6と同一であり、 上体水平加速度の 2階積分により上体水平位置 の今回値が決定されると共に、 上体姿勢傾斜角加速度の 2階積分により 上体姿勢傾斜角の今回値が決定される。
次に、 S 2 1 1 8に進む。 この S 2 1 1 8の処理は、 前記第 1実施形 態における図 5 7の S 3 4 1 8 と同一であり、 逆位相腕振り角加速度の 2階積分により逆位相腕振り角の今回値が決定される。
次いで、 図 6 0の S 2 0 3 6に進んで、 時刻 t に制御周期 Δ t を加え 再び、 S 2 0 1 4に戻り、 制御周期毎のタイマー割り込みを待つ。
補足すると、 第 3参考例における動力学モデルによる歩容瞬時値決定 においては、 動力学モデルの状態量 (あるいは前回、 前前回の歩容瞬時 値) も必要であるので、 修正歩容生成用と元歩容生成用との 2つの動力 学モデルが必要である。 第 3参考例では、 それらの動力学モデルは図 1 2に示した動力学モデルである。
本実施形態においては、 上記のごとく、 元歩容と修正歩容とが並列的 に生成され、 修正歩容は、 実ロボッ ト 1の姿勢 (傾斜角およびョ一角) 安定化のために修正されると共に、 コンプライアンス制御により姿勢復 元に必要な床反力モーメント (水平成分および鉛直成分) を発生しても まだ余裕がある場合には、 この余裕を用いて、 可能な範囲で元歩容に収 束するようにしている。 このため、 前記第 2参考例の作用効果に加え、 当初設定した元歩容に近い、 すなわち、 当初の要求通りの歩容に近い歩 容を生成することができる。 したがって、 あらかじめ設定された移動経 路がある場合には、 移動経路から大きくずれることを防止することが可 能となる。 また、 修正歩容の上体姿勢傾斜角が元歩容 (当初決定した歩 容) の上体姿勢傾斜角に収束することを、 修正歩容の上体水平位置が元 歩容 (当初決定した歩容) の上体水平位置に収束することよりも優先し た (床反力水平成分許容範囲を満たす範囲で可能な限り上体並進モード の運動を調整した) ので、 上体姿勢傾斜角が大きく変動することを抑制 することができる。 次に第 4参考例を図 6 3〜図 7 0を参照して説明する。 なお、 本第 4 参考例の説明で、 前記第 1〜第 3参考例と同一構成部分もしくは同一機 能部分については該第 1〜第 3参考例と同一の参照符号を用いて詳細な 説明を省略する。
本第 4参考例では、 制御ユニッ ト 6 0の機能的構成は、 前記第 3参考 例のもの、 すなわち前記図 5 9に示したものと同一である。 但し、 第 4 参考例では、 歩容生成装置 1 0 0が実行する歩容生成のアルゴリズムは. 前記第 3参考例のものと相違している。 そして、 歩容生成装置 1 0 0以 外の各部の処理は、 前記第 3参考例と同一である。
図 6 3は、 本実施形態における歩容生成装置 1 0 0の処理の概要を示 すブロック図である。 この図 6 3を参照して、 歩容生成装置 1 0 0の処 理の概要を以下に説明する。 なお、 図 6 3を用いて以下に説明する処理 の概要は、 後述する第 5〜第 7参考例についても同様である。 また、 第
4参考例および後述の第 5〜第 7参考例では、 前記図 1 2の動力学モデ ルを単純化モデルと称する。
図示の如く、 歩容生成装置 1 0 0は歩容パラメータ決定部 1 0 0 aを 備える。 歩容パラメータ決定部 1 0 0 aは、 目標歩容のパラメータ (目 標歩容を規定するパラメ一夕) の値あるいは時系列テーブルを決定する < これは、 後述の図 6 5のフローチャートの S 3 5 2 0から S 3 5 3 0ま での処理に相当する。
詳細は後述するが、 歩容パラメータ決定部 1 0 0 aが決定するパラメ 一夕には、 目標足平位置姿勢軌道、 目標腕姿勢軌道、 基準上体姿勢軌道, 目標 Z M P軌道、 目標床反力鉛直成分軌道等を規定するパラメ一夕が含 まれる他、 床反力水平成分許容範囲を規定するパラメ一夕と、 Z M P許 容範囲 (もしくは床反力モーメント水平成分許容範囲) を規定するパラ メータと、 床反力モーメント鉛直成分許容範囲を規定するパラメ一夕と が含まれる。 この場合、 第 4参考例で設定する床反力水平成分許容範囲 および床反カモ一メント鉛直成分許容範囲は、 後述の S 3 5 2 6の処理 で設定される単純化モデル歩容用のものと、 S 3 5 3 0で設定される歩 容補正用のものとの 2種類がある。 一方、 ZMP許容範囲 (もしくは床 反力モーメント水平成分許容範囲) は、 S 3 5 3 0の処理で設定される フルモデル補正用 (歩容補正用) のものだけである。 なお、 第 4参考例 では、 S 3 5 3 0では ZMP許容範囲を規定するパラメ一夕を設定する が、 これは、 床反力モーメント水平成分許容範囲を規定するパラメ一夕 と設定することと同等である。 これは、 前記第 2参考例の図 5 6の S 3 0 3 0に関して説明した如く、 床反力モーメント水平成分を、 目標床反 力鉛直成分で割ったものが、 Z MP (床反力中心点) の目標 Z M Pから のずれ量を表すものとなるからである。
· ここで、 第 4参考例で設定する Z M P許容範囲は、 図 6 4の如く設定 される。 詳細は、 P C T/ J P 0 3 / 0 0 4 3 5に詳細に記載されてい るのでここでは、 これ以上の説明を省略する。
歩容パラメ一夕決定部 1 0 0 aで決定された歩容パラメータは目標瞬 時値発生部 1 0 0 bに入力される。 目標瞬時値発生部 1 0 0 bは入力さ れた歩容パラメータに基づき、 目標足平位置姿勢、 目標 ZMP、 目標床 反力鉛直成分、 目標腕姿勢、 目標全体重心鉛直位置、 目標上体鉛直位置. 床反力水平成分許容範囲、 ZMP許容範囲、 基準上体姿勢角および基準 逆位相腕振り角の、 現在時刻 t における瞬時値を逐次算出 (発生) する (図 6 3では一部の目標瞬時値のみを記載している)。 この目標瞬時値 発生部 1 0 O bの処理は、 後述の図 6 5のフローチャート S 3 5 3 2の 処理のなかで実行される図 5 7の S 3 4 0 0〜S 3 4 1 2の処理、 並び に、 図 6 5の S 3 5 3 4の処理に相当する。 なお、 第 4参考例では、 目 標瞬時値発生部 1 0 0 bが算出する目標瞬時値のうち、 一部の瞬時値 (具体的には目標上体鉛直位置の瞬時値) は仮値であり、 後に修正され る。 また、 目標瞬時値発生部 1 0 0 bが算出する床反力水平成分許容範 囲および床反力モーメント鉛直成分許容範囲の瞬時値は、 単純化モデル 歩容用の瞬時値と歩容補正用の瞬時値とがある。
目標瞬時値発生部 1 0 0 bで算出 (発生) された目標瞬時値 (一部は 仮瞬時値) は、 フルモデル補正部 1 0. 0 cに入力される。 また、 フルモ デル補正部 1 0 0 cには、 前記姿勢傾斜安定化制御演算部 1 1 2 (図 5 9を参照) で求められる補償全床反力モーメント水平成分 Mdmdxy お よび前記ョー安定化制御演算部 1 1 3 (図 5 9を参照) で求められる補 償全床反力モ一メント鉛直成分 Mdmdz も入力される。 フルモデル補正 部 1 0 0 cは、 動力学モデルとして、 単純化モデル 1 0 0 c 1 とフルモ デル 1 0 0 c 2とを備える。 該フルモデル補正部 1 0 0 cは、 単純化モ デル 1 0 0 c 1に基づいて、 入力値から目標上体位置姿勢および逆位相 腕振り角の仮瞬時値等を決定すると共に、 さらに決定された上体位置姿 勢および逆位相腕振り角の仮瞬時値等をフルモデル 1 0 0 c 2を用いて 修正する。
尚、 単純化モデル 1 0 0 c 1をフル.モデル補正部 1 0 0 c 2に含ませ ない構成も可能である。 また、 フルモデル 1 0 0 c 2は、 後述するよう に、 逆フルモデル (逆動力学フルモデル) と順フルモデル (順動力学フ ルモデル) とのいずれかを含む。
フルモデル補正部 1 0 0 cは、 基本的には、 次の A1〜A4の条件を満 足するように、 B の処理を実行する。 すなわち、 フルモデル補正部 1 0 0 cは、 '
A1) フルモデル補正部 1 0 0 cにより生成される補正歩容の運動に釣 り合う床反力モーメントに補償全床反力モーメント水平成分 Mdmdxy と補償全床反カモ一メント鉛直成分 Mdmdz とを加えたものがフルモデ ル補正部 1 0 0 cから出力するコンプライアンス制御用床反力モ一メン トに一致する。
A2) 真の Z M P (目標 Z MPのまわりにコンプライアンス制御用目標 床反力モーメントを発生させることによって修正された本来の定義を満 足する ZMP) は、 Z MP許容範囲 (安定余裕が十分維持できる許容範 囲) に存在する。 .
A3) 床反力水平成分は歩容補正用の床反力水平成分許容範囲内にある c A4) 目標 Z M Pのまわりに発生すべきコンプライアンス制御用目標床 反力モーメント鉛直成分が床反力モーメント鉛直成分許容範囲内にある c という条件を満足するように、
B) 単純化モデルを用いて決定された単純化モデル歩容の上体位置姿勢 を補正すると共に、 目標 Z MPまわりのコンプライアンス制御用目標床 反力モーメン卜を出力する。
なお、 上記条件 A2 は、 目標 Z MPまわりに発生させる床反力モ一メ ントを ZMP許容範囲に対応する床反カモ一メント水平成分許容範囲内 に収めることと同等である。
ここで、 上記単純化モデル 1 0 0 c 1 とフルモデル 1 0 0 c 2とにつ いて説明しておく。 単純化モデル 1 0 0 c 1は、 動力学的精度よりも、 演算量低減や挙動解析のし易さに重点を置いた動力学モデルであり、 動 力学的に一部無視があったり (例えば、 重心まわりの角運動量変化を無 視したり)、 矛盾があるもの (厳密さを欠くもの) でも良い。 第 4参考 例では前記第 1参考例で説明した図 1 2の動力学モデル (前記式 0 1〜 0 5で記述される動力学モデル) が単純化モデル' 1 0 0 c 1 として用い られる。 また、 フルモデル 1 0 0 c 2は、 単純化モデル 1 0 0 c 1 とは異なる ロボッ ト動力学モデルを意味する。 これは、 単純化モデル 1 0 0 c 1よ りも近似精度の高いロポッ ト動力学モデルであることが望ましい。 図示 例で説明すれば、 第 4参考例では先に述べたように前記図 1 2に示した 動力学モデルを単純化モデル 1 0 0 c 1 として用いるので、 それよりも- 近似精度の高い動力学モデル、 例えば前記図 4 9に示した多質点モデル (口ポッ ト 1の各リンクにそれぞれ質点を有するモデル) のようなロボ ッ ト動力学モデルをフルモデル 1 0 Q c 2として用いることが望ましい < この場合、 該フルモデル 1 0 0 c 2は、 質点のまわりに慣性モーメント を設定するものであっても良い。
しかし、 単純化モデル 1 0 0 c 1 とフルモデル 1 0 0 c 2とは、 必ず しもモデルの近似精度が異なる必要はない。 単純化モデル 1 0 0 c 1 と フルモデル 1 0 0 c 2 とは、 動力学方程式が同じで、 床反力水平成分許 容範囲およびまたは床反力モーメント鉛直成分許容範囲が異なっている. すなわち、 単純化モデル歩容用の許容範囲と、 歩容補正用 (フルモデル 補正用) の許容範囲とが異なっているだけでも良い。 たとえば、 単純化 モデル 1 0 0 c 1を用いた歩容を生成する際の床反力水平成分許容範囲 および床反カモ一メント鉛直成分許容範囲を大きくとり (摩擦限界を越 えていても良い)、 フルモデル 1 0 0 c 2を用いて歩容を修正する際の 床反力水平成分許容範囲および床反力モーメント鉛直成分許容範囲を口 ポッ ト 1のスリップもしくはスピンが発生しにくいように狭く設定する だけでも良い。
尚、 この明細書において、 目標足平位置姿勢、 目標床反力 (特に、 目 標 Z M Pと目標床反力鉛直成分) に基づいて (入力して) 上体位置姿勢 および逆位相腕振り角を算出する (出力させる) のに使用するモデルを 「順動力学モデル」 と呼び、 目標足平位置姿勢、 目標上体姿勢、 目標上 体位置および逆位相腕振り角に基づいて (入力して) 床反力 (特に、 目 標 Z M Pもしくは目標 Z M Pまわりの床反力モーメント (水平成分およ び鉛直成分) と床反力水平成分) を算出する (出力させる) のに使用す るモデルを 「逆動力学モデル」 と呼ぶ。 順動力学モデルの入力には、 少 なく とも目標床反力が含まれ、 逆動力学モデルの入力には、 少なく とも 目標運動が含まれる。
フルモデル補正部 1 0 0 cが備えるフルモデル 1 0 0 c 2は、 逆動力 学フルモデル (しばしば 「逆フルモデル」 と略称) または順動力学フル モデル (しばしば 「順フルモデル」 と略称) を備える。 一般的には、 逆 動力学モデルの演算に比べ、 順動力学モデルの演算は、 演算量が多くな りがちである。
以上が第 4参考例での歩容生成装置 1 0 0における処理の概要である, 次に、 第 4参考例における歩容生成装置 1 0 0の処理を詳説する。 第 4参考例における歩容生成装置 1 0 0は、 図 6 5のフローチャートに示 す処理を実行して、 歩容を生成する。
まず、 S 3 5 1 0から S 3 5 2 8までにて、 前記第 2参考例で説明し た図 5 6の S 3 0 1 0から S 3 0 2 8までの処理と同一の処理が実行さ れる。 なお、 S 3 0 2 6のサブルーチンである図 3 9の S 6 0 8で決定 する今回歩容の床反力水平成分許容範囲および S 6 1 0で決定する床反 力モーメント鉛直成分許容範囲は、 前記第 1参考例〜第 3参考例の場合 よりも厳密に摩擦力限界を考慮せずともよく、 摩擦力限界を超えるよう な範囲に設定してもよい。 これは、 後述するフルモデル補正によって、 床反力水平成分および床反力モーメント鉛直成分は最終的にフルモデル 補正用の床反力水平成分許容範囲および床反力モーメント鉛直成分許容 範囲によって制限されることとなるからである。 .
次いで、 S 3 5 3 0に進み、 フルモデル補正用 (歩容補正用) の床反 力水平成分許容範囲と床反力モーメント鉛直成分許容範囲と Z M P許容 範囲 (床反力中心点許容範囲) とをそれぞれ規定するパラメ一夕を決定 する。 この場合、 フルモデル補正用の床反力水平成分許容範囲は、 例え ば前記単純化モデル歩容用の床反力水平成分許容範囲と同様、 X軸方向 (前後方向)、 Y軸方向 (左右方向) のそれぞれについて、 床反力鉛直 成分軌道と、 前記式 1 2とに基づいて、 前記図 3 0に示したようなパ夕 ーンに設定される。 そして、 例えば、 前記式 1 2の ka * tの値がフル モデル補正用の床反力水平成分許容範囲を規定するパラメータとして設 定される。 但し、 この床反力水平成分許容範囲は、 式 1 2の係数 k a の 値を、 単純化モデル歩容用の床反力水平成分許容範囲よりも小さめに設 定する等して、 確実に摩擦限界内の範囲に設定することが望ましい。 床反力モーメント鉛直成分許容範囲に関しても床反力水平成分許容範 囲と同様に設定される。 すなわち、 前記式 1 0 1 2に基づいて、 前記図 4 1に示したようなパターンに設定される。
また、 Z M P許容範囲は、 前記第 2参考例における図 5 6の S 3 0 3 0で床反力モーメント水平成分許容範囲の設定に関して説明した場合と 同様に設定される。 なお、 Z M P許容範囲に目標床反力鉛直成分を乗じ ることで、 Z M P許容範囲をこれと等価な床反力モーメント水平成分許 容範囲に変換してもよいことはもちろんである。
次いで、 S 3 5 3 2に進み今回歩容瞬時値 (現在時刻 tの値) が前記 単純化モデル (図 1 2の動力学モデル) を用いて決定される。 この S 3 5 3 2の処理は、 前記第 1参考例における図 1 3の S O 3 0の処理と同 一である。
以上説明した S 3 5 3 2までの処理によって生成された現在時刻 tに おける歩容の瞬時値を、 以降、 単純化モデル歩容瞬時値という。 第 4参 考例では、 この単純化モデル歩容瞬時値は、 単純化モデル (図 1 2の動 力学モデル) を用いて、 口ポッ ト 1にその運動によって発生する慣性力 と重力との合力が目標 Z M Pまわりに発生する床反力モーメント水平成 分が 0になるように (目標 Z M Pに関する動力学的平衡条件を満たすよ うに) 決定される。
この場合、 単純化モデル歩容瞬時値のうちの、 上体水平位置および上 体姿勢傾斜角の瞬時値と、 上体鉛直位置の瞬時値と、 逆位相腕振り角の 瞬時値とは仮瞬時値であり、 後述するフルモデル補正によって補正され るものである。 また、 第 4参考例における単純化モデル歩容瞬時値のう ち、 目標 Z M Pまわりの目標床反カモ一メント水平成分の瞬時値は定常 的に 0であるが、 後述するフルモデル補正によって目標 Z M Pまわりに 発生させる床反力モーメント水平成分の目標値としてのコンプライアン ス制御用目標床反力モーメント水平成分が生成される。
次に、 S 3 5 3 4に進み、 歩容補正用 (フルモデル補正用) の床反力 水平成分許容範囲と床反カモ一メント鉛直成分許容範囲と Z M P許容範 囲を規定するパラメータ (S 3 5 3 0で設定したもの) を基に、 歩容補 正用の床反力水平成分許容範囲と床反力モーメント鉛直成分許容範囲と Z M P許容範囲との瞬時値 (現在時刻 tの値) が求められる。
次いで、 S 3 5 3 6に進み、 フルモデルを用いて補正歩容の発生 (歩 容の補正) を行い、 最終的な目標歩容の瞬時値が決定される。 すなわち- 前記図 6 3を参照して説明したように、 補正目標上体位置姿勢、 捕正目 標逆位相腕振り角や、 目標 Z M Pまわりの目標床反力モーメント (水平 成分および鉛直成分) としてのコンプライアンス制御用目標床反カモ一 メント (水平成分および鉛直成分) の算出 (決定) などが実行される。 次いで、 S 3 5 3 8に進み、 時刻 tを Δ tだけ増やし、 再び S 3 5 1 4に戻り、 S 3 5 1 4から S 3 5 3 8までの処理が繰り返される。
上記 S 3 5 3 6の処理は、 第 4参考例の特徴をなす部分であり、 以下 にその処理を詳説する。 第 4参考例に係る装置の歩容補正手法は、 フル モデルフィードフォワード補正型である。 また、 逆動力学フルモデル (逆フルモデル) を用いる手法で、 かつ単純化モデル歩容の入力を補正 しない手法であり、 かつ摂動モデルを用いる手法である。
図 6 6は、 第 4参考例に係る歩容生成装置 1 0 0の動作、 具体的には. 図 6 5のフロー · チャートの S 3 5 3 6の歩容の修正手法を説明する機 能ブロック図である。 ただし、 図 6 6の単純化モデル 2 0 0は、 単に動 力学モデルだけでなく、 前述の S 3 5. 1 0から S 3 5 3 2の処理、 すな わち単純化モデル歩容瞬時値の算出 (決定) 処理を表す。 したがって、 図 6 6において、 単純化モデル 2 0 0から先の部分が S 3 5 3 6の処理 に相当する。
尚、 歩容補正用 (フルモデル補正用) の床反力水平成分許容範囲と Z M P許容範囲の瞬時値を決定する処理は、 図 6 5のフローチャートの参 照符号 S 3 5 3 4を用いて示している。
実際の処理はひとつのコンピュータで実行されるので、 ブロック図を 離散化した後、 ブロック図の上流側から下流側 (歩容出力側) に向かつ て順に実行される。 ただし、 上流側に戻るフィードバック量は、 前回制 御周期 (現在時刻 t に対して時刻 t— Δ t ) に算出した値 (状態量) を 用いることとする。 尚、 以降、 前回制御周期 (時刻 t — A t ) に算出し た値を前回値と略す。
S 3 5 3 6の処理が実行される毎に、 ブロック図の 1制御周期分の演 算が実行される。
S 3 5 3 6では、 まず、 上記のごとく得られた単純化モデル歩容の目 標上体姿勢角 (以降、 単純化モデル上体姿勢角と呼ぶ。 また、 このうち の傾斜角成分を単純化モデル上体姿勢傾斜角と呼ぶ。)、 目標上体水平位 置 (以降、 単純化モデル上体水平位置と呼ぶ)、 目標重心位置、 目標足 平位置姿勢、 目標腕姿勢 (目標逆位相腕振り角を含む) などの運動を表 す変数 (これを運動変数と呼ぶ) の瞬時値と、 目標 Z M Pの瞬時値とが 前記逆動力学フルモデル (逆フルモデル) 2 0 1に入力される。 入力さ れた運動変数で表される運動に釣り合う (すなわち運動によってフルモ デルが発生する) 床反力水平成分と目標 Z M Pまわりの床反力モーメン ト (水平成分および鉛直成分) が、 逆フルモデル 2 0 1の演算処理によ つて算出される。 なお、 第 4参考例では、 単純化モデル歩容における目 標 Z M Pまわりの床反力モ一メント水平成分は 0であるので、 逆フルモ デル 2 0 1によって算出される目標 Z M Pまわりの床反力モーメント水 平成分は、 単純化モデル歩容の誤差としての意味を持つものである。 なお、 逆フルモデル 2 0 1により求められた床反力水平成分と床反カモ ーメント水平成分と床反力モーメント鉛直成分とをそれぞれ 「フルモデ ル床反力水平成分」、 「フルモデル床反力モーメン卜水平成分」、 「フルモ デル床反力モーメント鉛直成分」 と呼ぶ。 また、 以降、 しばしば、 フル モデル床反力水平成分を FfulL フルモデル床反力モ一メント水平成分 を Mfullxy、 フルモデル床反力モーメント鉛直成分を Mfullz、 と略す < また、 前記逆フルモデル 2 0 1は、 目標重心位置を満足する上体鉛直 位置を算出する。 さらに、 図示は省略しているが、 逆フルモデル 2 0 1 は、 重心水平位置も算出する。
補足すると、 フルモデルには目標全体重心鉛直位置を入力しており、 また目標床反力鉛直成分は目標全体重心鉛直位置の 2階微分値から求め られるので、 フルモデルには、 特に目標床反力鉛直成分を入力する必要 はない。 冗長であっても演算を減らすためなどの理由で、 フルモデルに 目標床反力鉛直成分を入力しても良い。
ここで、 歩容補正に用いられる摂動モデルについて説明する。
摂動モデルは、 上体水平位置補正用摂動モデル 2 0 2、 上体姿勢傾斜 角補正用摂動モデル 2 0 3および逆位相腕振り角補正用摂動モデル 2 3 1から成る。 尚、 摂動モデルは、 このように 3つのモデルに分離しない で、 図 1 2のようなひとつのモデルにしても良い。 また、 上体姿勢傾斜 角補正用摂動モデル 2 0 3は図では上体姿勢角補正用摂動モデル 2 0 3 と略す。
上体水平位置補正用摂動モデル 2 0 2は、 前記上体並進モードにおけ る床反力の摂動と上体水平位置の摂動との関係を表す。
上体水平位置補正用摂動モデル 2 0. 2は、 目標床反力モーメン卜の補 正量を入力し、 これに動力学的に釣り合う目標上体水平位置の補正量を 算出する。 この入力 (目標床反力モーメントの補正量) を、 上体水平位 置補正用摂動モデルモーメント Mp と呼ぶ。 また、 上体水平位置補正用 摂動モデル 2 0 2の出力 (目標上体水平位置の補正量) を、 補正用摂動 モデル上体水平位置 Xc と呼ぶ。 また、 上体水平位置補正用摂動モデル 2 0 2が発生する床反力水平成分を上体水平位置補正用摂動モデル床反 力水平成分 Fpと呼ぶ。
上体水平位置補正用摂動モデル 2 0 2は、 図 6 7のように、 支点と倒 立振子質点 (上体質点) とこれらを結合する伸縮自在な支持棒から成る 倒立振子で表される。 支点の水平位置は前記した今回歩容の支持脚座標 系の原点の水平位置に一致し、 支点の鉛直位置は目標 Z M Pの鉛直位置 に一致するように支点の位置が設定されている。 倒立振子質点の質量 mb は、 図 1 2に示す前記単純化モデル ( 3質点 +フライホイールのモ デル) の上体質点質量と同じである。 倒立振子質点の鉛直位置 Zc は、 単純化歩容に対応する図 1 2に示す単純化モデルの上体質点位置の鉛直 位置 Zbと同一とする。 '
この上体水平位置補正用摂動モデル 2 0 2は、 前記単純化モデルにお いて、 床反力モーメントの摂動 A My と上体質点水平位置の摂動 A Xb との関係を表す。
そこで、 My、 Xb、 Zb 以外は定数とみなして、 床反力モーメントの 摂動 ΔΜγと上体質点水平位置の摂動 AXb との関係を前記式 0 3yから 求めると、 次式が得られる。
△ My =— mb * Δ Xb * (g+d2Zb/dt2) + mb * (Zb - Zzmp) * d2△ Xb/dt2
…式 a 1 2 同様に、 Fx、 Xb 以外は定数とみなして、 床反力水平成分の摂動 AFx と上体質点水平位置の摂動 AXb の関係を前記式 0 2 Xから求めると、 次式が得られる。
AFx=mb* ά2Δ Xb/dt2 …式 a 1 3 · 上体水平加速度によって発生する ΔΜρと AFp の比である上体並進 モード床反力比率 hは、 式 al 2の右辺のうちの上体水平加速度によつ て発生する項 (すなわち第 2項) と式 al 3との比であるから、 次式が 得られる。 h=(Zb-Zzmp) …式 al 4 すなわち、 上体並進モード床反力比率 hは、 単純化モデルの上体質点 (倒立振子質点) の支点からの高さに相当する。
よって、 式 al 2と式 al 4とより次式が得られる。
△ My =— mb * Δ Xb * (g+d2Zb/dt2) + mb* h* d2A Xb/dt2 …式 a 1 5 一方、 上体質点 (倒立振子質点) に作用する重力と慣性力との合力の 並進力鉛直成分に釣り合う床反力鉛直成分を上体床反力鉛直成分 Fbz と呼ぶ。 すなわち、 上体床反力鉛直成分 Fbzは、 次式で定義される。
Fbz=mb* (g+d2Zb/dt2) …式 al 6 そして、 この式 a l 6と前記式 0 1.とから、 上体床反力鉛直成分 Fbz は次式となる。
Fbz=Fz一 msup * (g+d2Zsup/dt2)― mswg * (g+d2Zswg/dt2)
…式 al 7 言い換えると、 上体床反力鉛直成分は、 床反力鉛直成分 Fz と図 1 2 に示す前記単純化モデル ( 3質点 +フライホイールのモデル) の両脚質 点に作用する重力と慣性力との合力の並進力.鉛直成分との和に等しい。 式 al 6を式 al 5に代入することにより、 次式が得られる。
ΔΜν= - Fbz* AXb+mb* h* d2AXb/dt2 …式 a 1 8 式 al 8の AMy を上体水平位置補正用摂動モデルモーメント Mp、
△ Xb を補正用摂動モデル上体水平位置 Xc に対応させることにより (式 al 8の AMy に上体水平位置補正用摂動モデルモーメント Mp、
△ Xb に補正用摂動モデル上体水平位置 Xc を代入することにより)、 次 式が得られる。
Μυ = - Fbz * Xc + mb * h * d2Xc/dt2 …式 al 9 すなわち、 上体水平位置補正用摂動モデル 2 0 2は、 式 a 1 4によつ て求められる上体並進モード床反力比率 hと式 a l 7によって求められ る上体床反力鉛直成分 Fbzを用いて、 式 a l 9で表される。
また、 式 a l 3の A Fx を上体水平位置補正用摂動モデル床反力水平 成分 Fpに対応させることにより、 次式が得られる。
Fp = mb * d2Xc/dt2 …式 a 2 0 すなわち、 式 a l 4、 式 a l 7、 式 a l 9、 式 a 2 0によって上体水 平位置補正用摂動モデル 2 0 2が記述される。
補足すると、 ここでは、 上体質点位置の摂動と上体位置 (上体代表点 位置) の摂動は一致するものとみなしているが、 厳密には、 一致すると は限らない。 従って、 Mp、 Fp と Xc の関係を求めるためには、 さらに 上体質点水平位置と上体位置の幾何学的関係を表すモデルが必要である, · 一方、 上体姿勢傾斜角補正用摂動モデル 2. 0 3は、 前記上体傾斜モー ドにおける床反力の摂動と上体姿勢傾斜角の摂動の関係を表す。
上体姿勢傾斜角補正用摂動モデル 2 0 3は、 床反力モーメント水平成 分の補正量が入力され、 これに動力学的に釣り合う目標上体姿勢傾斜角 の補正量を算出する。 この入力 (床反力モーメントの補正量) を、 上体 姿勢傾斜角補正用摂動モデルモーメント Mr (上体姿勢角補正用摂動モ デル M r と略すこともある) と呼ぶ。 また、 上体姿勢傾斜角補正用摂動 モデル 2 0 3の出力 (目標上体姿勢傾斜角の補正量) を補正用摂動モデ ル上体姿勢傾斜角 0 c と呼ぶ。 また、 上体姿勢傾斜角補正用摂動モデル 2 0 3が発生する床反力水平成分を上体水平位置補正用摂動モデル床反 力水平成分 Frと呼ぶ。 Frは前述したごとく 0である。 すなわち、 次式 が常に成立する。 Fr= 0 …式 a 2 1 上体姿勢傾斜角補正用摂動モデル 2 0 3は、 図 6 8のように、 フライ ホイールで表される。 補足すると、 図 6 8では、 Y軸まわり回転のフラ ィホイールのみを示したが、 上体姿勢傾斜角補正用摂動モデル 2 0 3は. 実際には、 Y軸まわり回転のフライホールだけでなく、 X軸まわり回転 のフラ一ホイールも必要とする。 それ.らのフライホイールのイナーシャ は、 図 1 2に示した前記単純化モデル ( 3質点モデル +フライホイ一 ル) のフライホイール FHx、 FHy と同じである。 この上体姿勢傾斜角 補正用摂動モデル 2 0 3のフライホイールの回転角度が補正用摂動モデ ル上体姿勢傾斜角 0 c、 そのフライホイールによって発生する床反カモ ーメント水平成分が上体姿勢傾斜角補正用摂動モデルモ一メント Mr に 相当する。 なお、 以下の説明では理解の便宜上、 Y軸まわり回転のフラ ィホイールを中心に説明するが、 X軸まわり回転のフライホイ一ルにつ いても同様である。
この上体姿勢傾斜角補正用摂動モデル 2 0 3 (より詳しくはサジタル プレーンに関するモデル) は、 前記単純化モデル ( 3質点 +フライホイ ールのモデル) の動力学方程式の前記式 0 3 yにおいて、 床反力モーメ ントの摂動 Δ Myと上体姿勢傾斜角の摂動 Δ Θ byの関係を表している。 そこで、 My、 6 by 以外は定数とみなして、 床反力モーメント水平成 分の摂動 Δ My と上体姿勢傾斜角の摂動 Δ 0 byの関係を式 0 3 yから求 めると、 次式が得られる。 A My= J * ά2 Δ Θ by/dt2 …式 a 2 2 ' 式 a 2 2の A My を上体姿勢傾斜角補正用摂動モデルモーメント Mr Δ Θ by を補正用摂動モデル上体姿勢傾斜角 0 c に対応させることによ り、 次式が得られる。 Mr = J * d2 A Θ c/dt2 …式 a 2 3 すなわち、 上体姿勢傾斜角補正用摂動モデル 2 0 3は、 式 a 2 3で表 される。 また、 上体水平位置補正用摂動モデル床反力水平成分 Fr は上 記したごとく式 a 2 1のようになる (F r= 0 )。 なお、 上記では、 上体 姿勢傾斜角補正用摂動モデル 2 0 3の動力学をサジタルプレーン上で説 明したが、 ラテラルプレーン上での動力学も、 式 a 2 3と同じ形の式で 表される。
また、 逆位相腕振り角補正用摂動モデル 2 3 1は、 前記逆位相腕振り モードにおける床反力の摂動と逆位相腕振り角の摂動との関係を表す。 · 逆位相腕振り角補正用摂動モデル 2 3 1は.、 床反力モーメント鉛直成 分の補正量が入力され、 これに動力学的に釣り合う目標逆位相腕振り角 の補正量を算出する。 この入力 (床反力モーメント鉛直成分の補正量) を、 逆位相腕振り角補正用摂動モデルモーメント Maと呼ぶ。 また、 逆 位相腕振り角補正用摂動モデル 2 0 3の出力 (目標逆位相腕振り角の補 正量) を補正用摂動モデル逆位相腕振り角 0 ca と呼ぶ。 また、 逆位相 腕振り角補正用摂動モデルが発生する床反力水平成分を逆位相腕振り角 補正用摂動モデル床反力水平成分 Fa と呼ぶ。 Fa は前述したごとく 0 である。 すなわち、 次式が常に成立する。 Fa = 0 …式 a 2 1 c 逆位相腕振り角補正用摂動モデル 2 3 1は、 図 6 9のように、 フライ ホイールで表される。 フライホイールのイナーシャは、 図 1 2に示した 前記単純化モデル ( 3質点モデル +フライホイール) のフライホイール FHaz と同じである。 この逆位相腕振り角補正用摂動モデル 2 3 1のフ ライホイールの回転角度が補正用摂動モデル逆位相腕振り角 S ca、 その フライホイールによって発生する床反カモ一メント鉛直成分が逆位相腕 振り角補正用摂動モデルモ一メント Maに相当する。
この逆位相腕振り角補正用摂動モデル 2 3 1は、 前記単純化モデル ( 3質点 +フライホイールのモデル) の動力学方程式の前記式 0.3 Z に おいて、 床反力モーメントの摂動 ΔΜζ と逆位相腕振り角の摂動△ 0 az との関係を表している。
そこで、 Μζ、 Θ az 以外は定数とみなして、 床反力モーメントの摂動 ΔΜζ と逆位相腕振り角の摂動 A S azの関係を式 0 3 z ら求めると、 次 式が得られる。
ΔΜζ = Jaz* ά2Δ Θ az/dt2 …式 a2 2 c 式 a2 2 cの ΔΜζ を逆位相腕振り角補正用摂動モデルモーメント Ma、 Δ Θ azを補正用摂動モデル逆位相腕振り角 0 caに対応させること により、 次式が得られる。
Ma= Jaz* ά2Α Θ ca/dt2 …式 a2 3 c すなわち、 逆位相腕振り角補正用摂動モデル 2 3 1は、 式 a2 3 c で 表される。 また、 逆位相腕振り角補正用摂動モデル床反力水平成分 Fr は上記したごとく式 a 2 1 cのようになる (Fa= 0 )。 後述するように、 S 3 5 3 6では、 最終的に、 補正歩容 (より詳しく は、 単純化モデル歩容の一部の瞬時値を補正した目標瞬時値) が生成 (出力) される。 補正歩容の目標上体姿勢傾斜角 (これを以降、 補正目 標上体姿勢傾斜角と呼ぶ) は、 前記求めた単純化モデル上体姿勢傾斜角 の瞬時値 ( S 3 5 3 2で求めた今回歩容の現在時刻 tでの目標上体姿勢 傾斜角の瞬時値) に前記補正用摂動モデル上体姿勢傾斜角 Θ c (現在時 刻 tの制御周期で求められる値) を演算部 2 0 4で加えることにより得 られる。 補正歩容の目標上体水平位置 (これを以降、 補正目標上体水平 位置と呼ぶ) は、 前記求めた単純化モデル上体水平位置の瞬時値 (S 3 5 3 2で求めた今回歩容の現在時刻 tでの目標上体水平位置の瞬時値) に補正用摂動モデル上体水平位置 Xc (現在時刻 tの制御周期で求めら れる値) を演算部 2 0 5で加えることにより得られる。 また、 補正歩容 の目標逆位相腕振り角 (これを以降、 補正目標逆位相腕振り角と呼ぶ) は、 前記求めた単純化モデル逆位相腕振り角の瞬時値 (S 3 5 3 2で求 めた今回歩容の現在時刻 tでの目標逆位相腕振り角の瞬時値) に補正用 摂動モデル逆位相腕振り角 0 ca (現在時刻 tの制御周期で求められる 値) を演算部 2 3 2で加えることにより得られる。
補正歩容の目標床反力も修正される。 具体的には、 目標 Z M Pまわり の床反力モーメント水平成分が 0でなくなり、 コンプライアンス制御用 目標床反力モーメント水平成分が目標値として出力される。 また、 目標 床反力水平成分も、 補正目標床反力水平成分に修正され、 出力される。 また、 目標床反力モーメント鉛直成分も、 補正目標床反力モーメント鉛 直成分に修正され、 出力される。
ところで、 上記のごとく、 補正歩容の運動は、 単純化モデル歩容の運 動に摂動モデルの運動 (詳しくは上体水平位置補正用摂動モデル 2 0 2 と上体姿勢傾斜角補正用摂動モデル 2 0 3の運動と逆位相腕振り角補正 用摂動モデル 2 3 1の運動) を加えた (合成した) 運動である。
一般に、 ある基準運動に、 ある摂動運動を加えた運動が発生する床反 力は、 基準運動が発生する床反力 (運動によって発生する重力と慣性力 に釣り合う床反力) と摂動蓮動によって発生する床反力の摂動分の和で 近似される。
また、 上体傾斜モードが発生する床反力水平成分、 上体傾斜モードが 発生する床反カモ一メント鉛直成分、 .逆位相腕振りモードが発生する床 反力水平成分および逆位相腕振りモ一ドが発生する床反カモ一メント水 平成分がいずれも 0であることを考慮すると、 補正歩容の運動に逆フル モデル 2 0 1上で釣り合う床反力モーメントに補償全床反力モーメント 水平成分 Mdmdxy と補償全床反力モーメント鉛直成分 Mdmdz とを加 えたものが補正目標床反カモ一メントに一致する (前記 A1 の条件を満 たす) ためには、 以下の 3つの式を満足しなければならない。 フルモデル床反力モーメント水平成分 Mfullxy
+上体水平位置補正用摂動モデルモーメント Mp
+上体姿勢傾斜角補正用摂動モデルモーメント Mr
+補償全床反力モーメント水平成分 Mdmdxy
= 補正目標床反力モーメント水平成分
…式 h 5 フルモデル床反力水平成分 Ffull
+上体水平位置補正用摂動モデル床反力水平成分 Fp
= 補正目標床反力水平成分 '
…式 h 6 フルモデル床反力モ一メント鉛直成分 Mfullz
+上体水平位置補正用摂動モデルモーメント鉛直成分 Mpz
+逆位相腕振り角補正用摂動モデルモーメント鉛直成分 Maz
+補償全床反力モーメント鉛直成分 Mdmdz
= 補正目標床反カモ一メント鉛直成分
…式 hi 0 0 6 ただし、 上体水平位置補正用摂動モデルモーメント鉛直成分 Mpz は. 上体水平位置補正用摂動モデルの運動によって逆フルモデル 2 0 1上で 発生する床反力モーメント鉛直成分である。 また、 式 h5、 式 hi 0 0 6のモーメントは、 元の (単純化モデルの) 目標 Z MPまわりのモ一メ ントである。
また、 補正歩容の真の ZMPは、 補正目標床反力モーメントを目標床 反力鉛直成分で割った値だけ、 単純化モデル歩容の目標 ZMP (理想目 標 Z M P ) からずれた点に変更される。 補正歩容の真の Z MP =目標 ZMP
+補正目標床反力モーメント Z目標床反力鉛直成分
…式 h7 尚、 補正歩容の真の Z MPの X 方向 (前後方向) 成分を算出する場 合には、 補正目標床反力モーメントの Y 軸 (左右方向軸) まわり成分 を用いる。 また、 補正歩容の真の Z MPの Y 方向成分を算出する場合 には、 補正目標床反力モーメントの X 軸 (前後軸) まわり成分を用い る。 ただし、 補正歩容の真の ZMPの Y 方向成分を算出する場合には. 式 h7の右辺の 「十」 は 「一」 にしなければならない。
補足すると、 補正歩容の真の ZMPまわりの補正目標床反カモ一メン ト鉛直成分を算出するようにしても良い。
補正歩容の真の Z M Pまわりの補正目標床反力モーメント鉛直成分は. 元の目標 ZMPまわりのモーメントに補正歩容の真の Z MPと目標 Z M Pの差と式 h 6で求めた補正目標床反力水平成分との外積を加えたもの となる。
式 h7から求められる補正歩容の真の Z M Pは、 ZMP許容範囲内に なければならない。 これを Z MP制約条件と呼ぶ。
また、 補正目標床反力水平成分は、 .歩容補正用 (フルモデル補正用) の床反力水平成分許容範囲内になければならない。 これを床反力水平成 分制約条件と呼ぶ。
また、 補正目標床反力モーメント鉛直成分は、 歩容補正用 (フルモデ ル補正用) の床反力モーメント鉛直成分許容範囲内になければならない, これを床反カモ一メント鉛直成分制約条件と呼ぶ。
以上のように、 補正歩容は、 式 h5、 式 h6、 式 hl 0 0 6、 ZMP 制約条件 (式 h7から得られる補正歩容の真の Z MPの存在範囲条件) 床反力水平成分制約条件および床反力モーメント鉛直成分制約条件を満 足しなければならない。
しかし、 単に、 これらの式や条件を満足するだけでは、 前記補正用摂 動モデル上体位置と前記補正用摂動モデル上体姿勢傾斜角と前記補正用 摂動モデル逆位相腕振り角が発散してしまう。
そこで、 前記上体水平位置補正用摂動モデル 2 0 2と前記上体姿勢傾 斜角補正用摂動モデル 2 0 3と前記逆位相腕振り角補正用摂動モデル 2 3 1の状態量 (より具体的には、 補正用摂動モデル上体水平位置速度、 補正用摂動モデル上体姿勢傾斜角 · 角速度、 補正用摂動モデル逆位相腕 振り角 ·角速度など) を基に、 これらの状態量がある所定の状態に収束 する (安定する) ように、 補正用摂動モデル 2 0 2, 2 0 3 , 2 3 1の 安定化制御を行う。
まず、 上体水平位置補正用摂動モデル 2 0 2の安定化制御について詳 細を説明する。
上体水平位置補正用摂動モデル 2 0 2を目標整定位置に収束 (安定) させるための制御則を上体水平位置補正用摂動モデル制御則 2 0 6と呼 び、 この制御則が決定するフィードバック量 (操作量) を上体水平位置 補正用摂動モデル安定化モーメント要求値 Mpfdmd と呼ぶ。 ここで 「要求値」 を付けたのは、 後述するように、 真の Z M Pが前記 Z M P許 容範囲内に存在し、 かつ、 床反力水平成分が床反力水平成分許容範囲内 になるように、 上記制御則で決定された値に制限が加えられて修正され るからである。 制限が加えられて修正されたモーメントを、 上体水平位 置補正用摂動モデル安定化モ一メント Mpf と呼ぶ。
具体的に上体水平位置補正用摂動モデル制御則 2 0 6としては、 式 h 1 0を用いる。 ただし、 目標整定位置は、 式 h 8で与えられる。 また、 nitotal は前記ロボッ ト総重量、 mb は前記上体質点質量 (倒立振子質 量) であり、 XGf は、 単純化モデル歩容の瞬間姿勢を基にフルモデル を用いて計算される重心水平位置、 すなわち、 前記逆フルモデルが算出 する重心水平位置である。 また、 Kpp、 Κρνはフィードバック制御のゲ ィンである。 目標整定位置 =—mtotal/mb * (XGf— XGs) …式 h 8 上体水平位置補正用摂動モデル安定化モ一メント要求値 Mpfdmd = Kpp * (捕正用摂動モデル上体水平位置 Xc—目標整定位置)
+ Kpv *補正用摂動モデル上体水平速度 dXc/dt ■
一補正用摂動モデル上体水平位置 Xc *上体床反力鉛直成分 Fbz …式 h 1 0 上体水平位置補正用摂動モデル安定化モーメント要求値 Mpfdmd の X軸 (前後方向軸) まわり成分を求める場合には、 補正用摂動モデル上 体水平位置速度および目標整定位置は Y 軸方向 (左右方向) 成分を用 いる。
上体水平位置補正用摂動モデル安定化モーメント要求値 Mpfdmd の Y軸 (左右方向軸) まわり成分を求める場合には、 補正用摂動モデル上 体水平位置速度および目標整定位置は X 軸方向 (前後方向) 成分を用 い、 右辺第 3項の 「一」 を 「+」 に代える。
詳細は、 先に本出願人が提案した P C T / J P 0 3 / 0 0 4 3 5に記 載されているので、 ここではこれ以上の説明を省略する。
次に、 上体姿勢傾斜角補正用摂動モデル 2 0 3の安定化制御について 詳細を説明する。
· 目標瞬時値発生部 1 0 0 bが出力する基準上体姿勢傾斜角 (図 5 7の S 3 4 0 4で求められたもの) あるいは単純化モデルによる目標上体姿 勢傾斜角 (図 5 7の S 3 4 1 4で求められたもの) に、 補正目標上体姿 勢傾斜角、 すなわち、 単純化モデルによる目標上体姿勢傾斜角に補正用 摂動モデル上体姿勢傾斜角を加えたものが整定あるいは追従するように. 上体姿勢傾斜角補正用摂動モデル 2 0 3の状態に応じて、 P I制御など のフィードバック制御則によってフィードバック量 (操作量) を決定し. これを上体姿勢傾斜角補正用摂動モデル 2 0 3に付加的に入力する。 この制御則を上体姿勢傾斜角補正用摂動モデル制御則 2 0 7 (上体姿 勢角補正用摂動モデル制御則 2 0 7 と略すこともある) と呼び、 このフ イードバック量 (操作量) を上体姿勢傾斜角補正用摂動モデル安定化モ —メント要求値 Mrfdmd と呼ぶ。 ここで 「要求値」 を付けたのは、 上 体水平位置補正用摂動モデル安定化モーメント要求値 Mpfdmd と同様 の理由からである。 制限が加えられて修正されたモーメントを、 上体姿 勢傾斜角補正用摂動モデル安定化モ一メント Mrf と呼ぶ。
上体姿勢傾斜角補正用摂動モデル安定化モ一メント要求値 Mrfdmd を決定する上体姿勢傾斜角補正用摂動モデル制御則 2 0 7は、 具体的に は、 次式のようにすれば良い。 上体姿勢傾斜角補正用摂動モデル安定化モーメント要求値 Mi'fdmd = Krp * (補正用摂動モデル上体姿勢傾斜角 0 c
― (基準上体姿勢傾斜角—単純化モデルによる目標上体姿勢傾 斜角))
+ Krv *補正用摂動モデル上体姿勢傾斜角速度 d 0 c/dt
…式 h i 1 ただし、 Ki'p、 Krvはフィードバック制御のゲインである。 なお、 式 h i 1 において、 (基準上体姿勢傾斜角一単純化モデルによ る目標上体姿勢傾斜角) の代わりに 0としてもよい。
再び、 図 6 6の機能ブロック図を用いて S 3 5 3 6の処理を説明する と、 上記のごとく、 前記上体水平位置補正用摂動モデル制御則 2 0 6 (式 h l O ) によって上体水平位置補正用摂動モデル安定化モーメント 要求値 Mpfdmd が求められる。 また、 前記上体姿勢傾斜角補正用摂動 モデル制御則 2 0 7 (式 h l l ) によって上体姿勢傾斜角補正用摂動モ デル安定化モーメント要求値 Mrfdmdが求められる。
次いで、 上体水平位置補正用摂動モデル安定化モーメント Mpf が 0 であったと仮定した場合の上体位置補正用摂動モデルの床反力推定 (算 出) 値 F0 が F0 演算部 2 0 8により求められる。 後述するように、 上 体水平位置補正用摂動モデル 2 0 2には、 フルモデル床反力モーメント 水平成分 Mfullxy に、 上体水平位置補正用摂動モデル安定化モ一メン ト Mpf を加えられたものが入力される。 したがって、 F0 は、 上体水平 位置補正用摂動モデル 2 0 2にフルモデル床反力モーメント水平成分 Mfullxy の符号を反転させたものだけが入力された場合に上体水平位置 補正用摂動モデル 2 0 2が発生する床反力である。
具体的には、 次式によって F0が求められる。
F0= mb * d2Xc/dt2 - l/h * Mpf …式 h i 2 右辺第 1項は、 前回 (時刻 t 一 A t ) の上体水平位置補正用摂動モデ ル 2 0 2の床反力水平成分を表す。
右辺第 2項は、 前回の上体水平位置補正用摂動モデル安定化モーメン ト Mpf によって、 上体水平位置補正用摂動モデル 2 0 2に直接的に発 '生した (すなわち直達項の) 床反力水平成分を表す。
すなわち、 上体水平位置補正用摂動モデル 2 0 2の前回の上体質点水 平加速度に上体質点の質量 mb を乗じた値から、 前回の上体水平位置補 正用摂動モデル安定化モーメント Mpf を上体並進モード床反力比率 h で割った値を減じることによって、 Mpf が 0であつたと仮定した場合 の上体位置補正用摂動モデルの床反力 F0の推定値が求められる。
次に、 前記制約 (床反力水平成分制約条件および Z M P制約条件) を 無視して、 上体水平位置補正用摂動モデル安定化モーメント Mpf を上 体水平位置補正用摂動モデル安定化モーメント要求値 Mpfdmd に一致 させ、 かつ、 上体姿勢傾斜角補正用摂動モデル安定化モーメント Mrf を、 上体姿勢傾斜角補正用摂動モデル安定化モーメント要求値 Mrfdmd に一致させると共に、 目標 Z M Pまわりの目標床反カモ一メント水平成 分としてのコンプライアンス制御用目標床反力モーメントを補償全床反 力モーメン卜水平成分 Mdmdxy と Mpf と Mrf との総和に一致させたと 仮定した場合に、 目標 Z M Pまわりに発生する床反カモ一メント水平成 分 Minが Min演算部 2 0 9により求められる。 この床反力モ一メント 水平成分を無制限時補正目標床反力モーメント水平成分 Min と呼ぶ。 無制限時補正目標床反力モーメント水平成分 Min は、 次式によって求 められる。
Min= Mpfdmd + Mrfdmd + Mdmdxy …式 h i 3 すなわち、 無制限時補正目標床反カモ一メンド水平成分 Min は、 上 体水平位置補正用摂動モデル安定化モーメント要求値 Mpfdmd と上体 姿勢傾斜角補正用摂動モデル安定化モーメント要求値 Mrfdmd と補償 全床反力モーメント水平成分 Mdmdxy とを加算することにより得られ る。
次いで、 前記制約 (床反力水平成分制約条件および Z M P制約条件) を無視して、 上体水平位置補正用摂動モデル安定化モーメント Mpf を 上体水平位置補正用摂動モデル安定化モーメント要求値 Mpfdmd に一 致させ、 かつ、 上体姿勢傾斜角補正用摂動モデル安定化モーメント Mrf を、 上体姿勢傾斜角補正用摂動モデル安定化モーメント要求値 Mrfdmd に一致させると共に、 コンプライアンス制御用目標床反カモ一メント水 平成分を補償全床反力モーメント水平成分 Mdmdxyと Mpf と Mrf との 総和に一致させたと仮定した場合に、 発生する床反力水平成分 Fin が Fin演算部 2 1 0により求められる。 この床反力水平成分を無制限時補 正目標床反力水平成分 Finと呼ぶ。 .
補正目標床反力水平成分は、 前記式 h 6によって得られるが、 前述の ごとく、 上体姿勢傾斜角補正用摂動モデル 2 0 3の挙動によって上体姿 勢傾斜角補正用摂動モデル 2 0 3には床反力水平成分は発生しない、 す なわち Fr は 0である。 したがって、 無制限時補正目標床反力水平成分 Fin は、 上体水平位置補正用摂動モデル安定化モーメント Mpf が 0で あつたと仮定した場合の補正目標床反力水平成分に、 上体水平位置補正 用摂動モデル安定化モ一メント Mpf を 0から上体水平位置補正用摂動 モデル安定化モーメント要求値 Mpfdmd に変更したことによって増加 する床反力水平成分を加えたものになる。
ところで、 上体水平位置補正用摂動モデル安定化モーメント Mpf を 0 か ら上体水平位置補正用摂動モデル安定化モーメ ン ト要求値 Mpfdmd に変更したことによって増加する床反力水平成分は、 上体水 平位置補正用摂動モデル安定化モーメント要求値 Mpfdmd を上体並進 モード床反力比率 hで割った値になる。
したがって、 無制限時補正目標床反力水平成分 Finは、 式 h i 5に示 すように、 上体水平位置補正用摂動モデル安定化モーメン ト要求値 Mpfdmd を上体並進モード床反力比率 hで割った値に、 前記求めたフ ルモデル床反力水平成分 Ffull を加算し、 さらに、 上体水平'位置補正用 摂動モデル安定化モ一メント Mpf が 0であったと仮定した場合の上体 位置補正用摂動モデルの床反力の算出値 F0 を加算することによって得 られる。
Fin= 1/h * Mpfdmd + Ffull + F0 …式 h i 5 次いで、 制限手段 (制限処理部) 2 1 1によって、 無制限時補正目標 床反力モーメント水平成分 Min と無制限時補正目標床反力水平成分 Fin とから、 これらに制限を加えた値である (目標 Z M Pまわりの) 制 限補正目標床反力モーメント水平成分 Mltd と制限補正目標床反力水平 成分 Fltd が決定される。 本実施形態では、 コンプライアンス制御用目 標床反カモ一メント水平成分は、 制限補正目標床反力モーメント水平成 分 Mltd に一致し、 補正歩容の床反力水平成分は制限補正目標床反力水 平成分 Fltdに一致する。
制限補正目標床反力モーメント水平成分 Mltd と制限補正目標床反力 水平成分 Fltd とは、 補正歩容 (コンプライアンス制御用目標床反カモ —メント水平成分を含む) の真の Z M Pが前記 Z M P許容範囲内に存在 し、 かつ、 補正歩容の床反力水平成分が床反力水平成分許容範囲内にな るように決定される。 すなわち、 Mltdおよび Fltdは Z M P制約条件お よび床反力水平成分制約条件を満足するように決定される。
また、 上記制約条件下で、 上体水平位置補正用摂動モデル安定化モー メント Mpは、 可能な限り、 上体水平位置補正用摂動モデル安定化モー メント要求値 Mpfdmd に一致または近い値になるように決定される。 同様に、 上体姿勢傾斜角補正用摂動モデル安定化モーメント Mrは、 可 能な限り上体姿勢傾斜角補正用摂動モデル安定化モーメン ト要求値 Mrfdmd に一致または近い値になるように決定される。 これにより、 前 記補正用摂動モデル上体位置 Xc と前記補正用摂動モデル上体姿勢傾斜 角 とを安定化し、 発散することを防止する。
制限手段 (制限処理部) 2 1 1の詳細は、 先に本出願人が提案した P
C T J P 0 3 / 0 0 4 3 5に記載されているので、 ここではこれ以上 の説明を省略する。
次いで、 以下の式により、 上体水平位置補正用摂動モデル安定化モー メント Mpf、 および上体姿勢傾斜角捕正用摂動モデル安定化モーメン ト Mrf がそれぞれ Mpf 演算部 2 1 2 、 Mrf 演算部 2 1 3により求めら れる。 8 4
Mpf= (Fltd— Ffull - FO) * h 式 h 2 0
Mrf= Mltd— Mpf- Mdmdxy 式 h 2 1 すなわち、 Mpf 演算部 2 1 2では、 制限補正目標床反力水平成分 Fltdから、 フルモデル床反力水平成分 Ffull を減じ、 Mp が 0であった と仮定した場合の上体位置補正用摂動モデル 2 0 2の床反力の算出値 F0 を減じた値に、 上体並進モード床反力比率 hを乗じることにより、 前記上体水平位置補正用摂動モデル安定化モーメント Mpf が得られる, また、 Mrf 演算部 2 1 3では、 目標 Z M Pまわりの制限補正目標床反力 モーメント水平成分 Mltdから前記上体水平位置補正用摂動モデル安定 化モ一メント Mpf と補償全床反力モ一メント水平成分 Mdmdxy とを減 じることにより、 上体姿勢傾斜角補正用摂動モデル安定化モーメント Mrfが得られる。
次いで、 以下の式により、 上体水平位置補正用摂動モデル床反力モー メント Mp、 および上体姿勢傾斜角補正用摂動モデル床反力モーメント Mrが求められる。 Mp = Mpf- Mfull 式 1ι 2 2
Mr= Mrf '式 h 2 3 すなわち、 Mp 演算部 2 1 4にて、 上体水平位置補正用摂動モデル安 定化モーメ ン ト Mpf からフルモデル床反力モーメ ン ト水平成分 Mfullxy を減じることにより、 上体水平位置補正用摂動モデル床反カモ 一メント Mpが得られる。 また、 上体姿勢傾斜角補正用摂動モデル床反 力モーメント Mrは、 上体姿勢傾斜角補正用摂動モデル安定化モ一メン ト Mrf と同一の値とされる。
次いで、 上体水平位置補正用摂動モデル床反力モーメント Mpが上体 位置補正用摂動モデル 2 0 2に入力され、 その入力された床反力モ一メ ントに釣り合う補正用摂動モデル上体位置 Xcが算出される。
また、 上体姿勢傾斜角補正用摂動モデル床反力モーメント Mrが上体 姿勢傾斜角補正用摂動モデル 2 0 3に入力され、 その入力された床反力 モーメント水平成分に釣り合う補正用摂動モデル上体姿勢傾斜角 0 c が 算出される。
次いで、 演算部 2 0 5, 2 0 4にて、 それぞれ次式 h 2 4、 式 h 2 5 に従つて、 補正目標上体水平位置と補正目標上体姿勢傾斜角とが決定さ れ、 これらがそれぞれ上体水平位置姿勢の最終的な目標瞬時値として出 力される。 補正目標上体水平位置 .
=単純化モデル上体水平位置 +補正用摂動モデル上体位置 Xc
…式 h 2 4 補正目標上体姿勢傾斜角
=単純化モデル上体姿勢傾斜角 +補正用摂動モデル上体姿勢傾斜角 Θ c
…式 h 2 5 すなわち、 単純化モデル上体水平位置に補正用摂動モデル上体位置 Xc を加えることにより補正目標上体水平位置が得られ、 これが最終的 な目標上体水平位置として出力される。 また、 単純化モデル上体姿勢傾 斜角に補正用摂動モデル上体姿勢傾斜角 0 c を加えることにより補正目 標上体姿勢傾斜角が得られ、 これが最終的な目標上体姿勢傾斜角として 出力される。
また、 目標 ZMPまわりのコンプライアンス制御用目標床反力モーメ ント水平成分として制限補正目標床反力モーメント水平成分 Mltd が出 力されると共に、 補正目標床反力水平成分として制限補正目標床反力水 平成分 Fltdが出力される。
すなわち、 次式 h2 6、 式 h2 7に従って、 補正目標床反力水平成分 と目標 ZMPまわりの補正目標床反カモ一メント水平成分とがそれぞれ 床反力水平成分および床反力モーメント水平成分 (目標 ZMPまわりの モーメント水平成分) の最終的な目標瞬時値として決定され、 これらが 出力される。 コンプライアンス制御用目標床反カモ一メント水平成分
=制限補正目標床反力モーメント水平成分 Mltd
…式 h2 6 補正目標床反力水平成分
=制限補正目標床反力水平成分 Fltd
…式 h2 7
S 3 5 3 6における以上までの処理は、 本願出願人による P C T/ J P 0 3 / 0 0 4 3 5の通りであるので、 ここでの説明は以上に留める。 第 4参考例ではさらに、 逆位相腕振り角補正用摂動モデルモーメント 決定部 2 3 0において、 逆位相腕振り角補正用摂動モデル 2 3 1への入 力である逆位相腕振り角補正用摂動モデルモーメント Maと目標床反力 モーメント鉛直成分が決定される。 次いで、 逆位相腕振り角補正用摂動 モデルモーメント Maは、 逆位相腕振り角補正用摂動モデル 2 3 1 に入 力され、 補正用摂動モデル逆位相腕振り角 0 caが決定される。
補足すると、 逆位相腕振り角補正用摂動モデルモーメント決定部 2 3 0は、 目標瞬時値発生部 1 0 0 bが出力する基準逆位相腕振り角 (図 5 7の S 3 4 0 4で求められたもの) あるいは単純化モデルによる目標逆 位相腕振り角 (図 5 7の S 3 4 1 4で求められたもの) に、 補正目標逆 位相腕振り角、 すなわち、 単純化モデルによる目標逆位相腕振り角に補 正用摂動モデル逆位相腕振り角を加え.たものが整定あるいは追従するよ うに、 逆位相腕振り角補正用摂動モデル 2 3 1の状態に応じて、 P I制 御などのフィードパック制御則によってフィードバック量 (操作量) を 決定し、 これを逆位相腕振り角補正用摂動モデル 2 3 1に付加的に入力 する。
この制御則を逆位相腕振り角補正用摂動モデル制御則と呼び、 このフ イードバック量 (操作量) を逆位相腕振り角補正用摂動モデル安定化モ 一メント要求値 Mafdmd と呼ぶ。 ここで 「要求値」 を付けたのは、 上 体水平位置補正用摂動モデル安定化モーメント要求値 Mpfdmd と同様 の理由からである。 制限が加えられて修正されたモーメントを、 逆位相 腕振り角補正用摂動モデル安定化モーメント Maf と呼ぶ。 なお、 本実 施形態では、 この M af が、 逆位相腕振り角補正用摂動モデルモ一メン ト Maとして、 逆位相腕振り角補正用摂動モデル 2 3 1に入力される。 逆位相腕振り角補正用摂動モデル安定化モーメント要求値 Mafdmd を決定する逆位相腕振り角補正用摂動モデル制御則は、 具体的には、 次 式のようにすれば良い。 逆位相腕振り角補正用摂動モデル安定化モーメント要求値 Mafdmd = Kap * (補正用摂動モデル逆位相腕振り角 0 ca 一 (基準逆位相腕振り角一単純化モデルによる目標逆位相腕振 り角))
+ Kav*補正用摂動モデル逆位相腕振り角速度 d0 ca/dt
…式 h3 0 ただし、 Kap、 Kavはフィードバック制御則のゲインである。 なお、 式 h3 0において、 (基準逆位相腕振り角一単純化モデルによ る目標逆位相腕振り角) の代わりに 0.としてもよい。
以下に、 逆位相腕振り角補正用摂動モデルモーメント決定部 2 3 0の 動作についてその機能ブロック図である図 7 0を用いて詳細を説明する, まず、 上記のごとく、 前記逆位相腕振り角補正'用摂動モデル制御則 2 3 0 a (式 h3 0 ) によって逆位相腕振り角補正用摂動モデル安定化モ ーメント要求値 Mafdmdが求められる。
次いで、 上体水平位置補正用摂動モデル 2 0 2を用いた上体水平位置 補正に起因する床反力モーメント鉛直成分摂動量 Mpz が、 上体水平位 置補正に起因する床反力モーメント鉛直成分摂動量算出部 2 3 0 bによ つて求められる。
具体的には、 次式によって求められる。 Mpz= (単純モデル上体質点位置
+補正用摂動モデル上体位置 Xc—目標 ZMP) * (単純モデル上体質点水平加速度
+補正用摂動モデル上体加速度 d2Xc/dt2)
一 (単純モデル上体質点位置 一 目標 Z MP)
* (単純モデル上体質点水平加速度) .
…式 h3 1 あるいは、 上式を近似した以下の式を用いても良い。 補正用摂動モデル上体位置 Xc
* (単純モデル上体質点水平加速度
+補正用摂動モデル上体加速度 d2Xc/dt2)
+ (単純モデル上体質点位置一目標 Z M P )
* 補正用摂動モデル上体加速度 d2Xc/dt2)
…式 h 3 2 次に、 前記床反力モーメント鉛直成分制約条件を無視して、 逆位相腕 振り角補正用摂動モデル安定化モーメント Maf を、 逆位相腕振り角補 正用摂動モデル安定化モーメント要求値 Mafdmd に一致させると共に 目標 Z M Pまわりの目標床反力モ一メント鉛直成分としてのコンプライ アンス制御用目標床反力モーメント鉛直成分を補償全床反力モーメント 鉛直成分 Mdmdz と Maf と Mfullz と Mpz との総和に一致させたと仮 定した場合に、 目標 Z M Pまわりに発生する床反カモ一メント鉛直成分 Minz が演算部 2 3 0 cにより求められる。 この床反力モーメント鉛直 成分を無制限時補正目標床反カモ一メント鉛直成分 Minz と呼ぶ。 無制 限時補正目標床反力モーメント鉛直成分 Minz は、 次式によって求めら れる。
Minz = Mafdmd + Mdmdz + Mfullz + Mpz …式 h 3 3 すなわち、 無制限時補正目標床反力モーメント鉛直成分 Minz は、 逆 位相腕振り角補正用摂動モデル安定化モーメント'要求値 Mafdmd と補 償全床反力モーメント鉛直成分 Mdmdz とフルモデル床反力モーメント 鉛直成分を Mfullz と上体水平位置補正用摂動モデルモーメント鉛直成 分 Mpzとを加算することにより得られる。
次いで、 制限手段 (制限処理部) 2 3 0 dによって、 無制限時補正目 標床反力モ一メント鉛直成分 Minzから、 これに制限を加えた値である (目標 Z M Pまわりの) 制限補正目標床反力モーメント鉛直成分 Mltdz が決定される。 第 4参考例では、 コンプライアンス制御用目標床反カモ 一メント鉛直成分は、 制限補正目標床反力モーメント鉛直成分 Mltdz に一致する。
制限補正目標床反力モーメント鉛直成分 Mltdz は、 床反力モ一メン ト鉛直成分許容範囲内になるように決定される。 すなわち、 Mltdz は床 反力モーメント鉛直成分制約条件を満足するように決定される。
また、 上記床反力モーメント鉛直成分制約条件下で、 逆位相腕振り角 補正用摂動モデル安定化モーメント Maf は、 可能な限り、 逆位相腕振 り角補正用摂動モデル安定化モーメント要求値 Mafdmd に一致または 近い値になるように決定される。 これにより.、 前記補正用摂動モデル逆 位相腕振り角 0 caを安定化し、 発散することを防止する。
制限手段 (制限処理部) 2 3 0 dは、 次式に示す飽和特性を持った関 数である。 Minz>床反カモ一メント鉛直成分許容範囲上限値である場合
Mltdz=床反力モ一メント鉛直成分許容範囲上限値
Minz<床反力モーメント鉛直成分許容範囲下限値である場合
Mltdz=床反力モーメント鉛直成分許容範囲下限値
床反力モーメント鉛直成分許容範囲下限値≤Minz、 且つ、 Minz≤床反 力モーメント鉛直成分許容範囲上限値である場合 '
Mltdz = Minz 式 h 3 4 次いで、 以下の式により、 逆位相腕振り角補正用摂動モデルモ一メン ト Ma ( =逆位相腕振り角補正用摂動モデル安定化モーメント Maf) が Maf演算部 2 3 0 eにより求められる。
Ma= Mltdz - (Mdmdz + Mfullz + Mpz) …式 h 3 5 すなわち、 Maf 演算部 2 3 0 eでは、 制限補正目標床反力モ一メン ト鉛直成分 Mltdzから、 補償全床反力モーメント鉛直成分 Mdmdzとフ ルモデル床反力モーメント鉛直成分 Mfullz と上体水平位置補正用摂動 モデルモーメント鉛直成分 Mpz とを減じることによって、 逆位相腕振 り角補正用摂動モデル安定化モーメント Maf としての逆位相腕振り角 補正用摂動モデルモ一メント Maが得られる。
一方、 目標 Z M Pまわりのコンプライアンス制御用目標床反力モーメ ント鉛直成分として制限補正目標床反力モーメント鉛直成分 Mltd が出 力される。
すなわち、 次式 h 3 5に従って、 目標 Z M Pまわりの補正目標床反力 モーメント鉛直成分が床反力モーメント鉛直成分 (目標 Z M Pまわりの モーメント鉛直成分) の最終的な目標瞬時値として決定され、 これらが 出力される。 コンプライアンス制御用目標床反力モーメント鉛直成分
=制限補正目標床反力モーメント鉛直成分 Mltdz
…式 h 3 6 以上のごとく、 逆位相腕振り角補正用摂動モデルモーメント 2 3 0の 処理が行われた後、 逆位相腕振り角補正用摂動モデルモーメント Maは 図 6 6の逆位相腕振り角補正用モデル 2 3 1に入力され、 その入力され た逆位相腕振り角補正用摂動モデルモーメント Maに釣り合う補正用摂 動モデル逆位相腕振り角 0 caが、 式 a 2 3 c を用いて (積分することに よって) 算出される。
次いで、 演算部 2 3 2にて、 次式 h 3 7に従って、 補正目標逆位相腕 振り角が決定され、 これが逆位相腕振.り角の最終的な目標瞬時値として 出力される。 補正目標逆位相腕振り角
=単純化モデル逆位相腕振り角
+補正用摂動モデル逆位相腕振り角 0 ca
…式 h 3 7 すなわち、 単純化モデル逆位相腕振り角に補正用摂動モデル逆位相腕 振り角 0 ca を加えることにより補正目標逆位相腕振り角が得られる、 これが最終的な目標逆位相腕振り角として出力される。
以上のごとく、 S 3 5 3 6の歩容補正が行われる。
尚、 補足すると、 第 4参考例は、 フィードフォワード型の補正であり . また、 摂動動力学モデルは厳密モデルではない。 このため、 上記のごと く式 h 5、 式 h 6および式 h i 0 0 6を満足するように歩容を補正して も、 厳密には、 動力学平衡条件を満足するするわけではなく、 近似的に 動力学平衡条件を満足する。
また、 第 4参考例では、 例えば 1歩の歩容の終端 (今回歩容終端) に おいて、 上体水平位置補正用摂動モデル 2 0 2と上体姿勢傾斜角補正用 摂動モデル 2 0 3 と逆位相腕振り角補正用摂動モデル 2 3 1 との状態量. 例えば上体水平位置補正用摂動モデル 2 0 2の上体質点 (倒立振子質 点) の水平位置や、 上体姿勢傾斜角補正用摂動モデル 2 0 3のフライホ ールの回転角や、 逆位相腕振り角補正用摂動モデル 2 3 1のフライホー ルの回転角は、 単純化モデル 2 0 0の状態量として追加される。 つまり . 今回歩容終端における単純化モデル 2 0 0の状態量が、 上体水平位置補 正用摂動モデル 2 0 2の上体運動と上体姿勢傾斜角補正用摂動モデル 2 0 3と逆位相腕振り角補正用摂動モデル 2 3 1 との状態量を加えたもの に修正される。 さらに、 各摂動モデル 2 0 2 , 2 0 3 , 2 3 1の状態量 は初期化される (例えば上体水平位置補正用摂動モデル 2 0 2の上体質 点 (倒立振子質点) の水平位置や、 上体姿勢傾斜角補正用摂動モデル 2 0 3のフライホールの回転角や、 逆位相腕振り角補正用摂動モデル 2 3 1のフライホールの回転角が 0にリセッ トされる)。 そして、 上記の如 く修正した単純化モデル 2 0 0の状態量を次回歩容の初期値として、 次 回歩容の生成が行なわれると共に、 各摂動モデル 2 0 2, 2 0 3 , 2 3 1 による補正用摂動モデル上体水平位置 Xc、 補正用摂動モデル上体姿 勢傾斜角 Θ cおよび補正用摂動モデル逆位相腕振り角 0 caの算出が行な われる。 これにより各摂動モデル 2 0 2, 2 0 3 , 2 3 1の挙動の安定 性をより一層高めることができる。 なお、 上記のような単純化モデル 2 0 0の状態量の修正は、 歩容の生成途中で適宜行なってもよい。 逆に、 上記のような単純化モデル 2 0 0の状態量の修正や摂動モデルのリセッ トを、 歩容の生成途中に行なわなくてもよい。
また、 上記のような単純化モデル 2 0 0の状態量の修正は、 後述する 第 5、 第 6参考例においても同様に行なわれる。
第 4参考例では、 前記復元条件すベてを満足する。 したがって、 前記 第 3参考例と同様の作用効果を奏することができる。 さらに、 第 3参考例の作用効果に加え、 前記復元条件を満足するよう に上体水平位置、 上体姿勢傾斜角および逆位相腕振り角を決定する際に 演算量を比較的少ないものとすることができる。
次に第 5参考例を以下に図 7 1及び図 7 2を参照して説明する。 第 5 参考例に係る装置の補正手法は、 前記第 4参考例のものと歩容生成装置 1 0 0の処理 (図 6 5の S 3 5 3 6の処理) のみが相違するものであり . フルモデルフィードバック補正型である。 また、 逆動力学フルモデル (逆フルモデル) を用いる手法で、 かつ単純化モデル歩容の入力を補正 しない手法であり、 かつ摂動モデルを用いる手法である。
図 7 1は、 この第 5参考例に係る装置の動作、 具体的には、 図 6 5の フローチャートの S 3 5 3 6の歩容の修正手法を説明する機能プロック 図である。 ただし、 図 7 1の単純化モデル 2 0 0は、 前記第 4参考例と 同様、 単に動力学モデルだけでなく、 図 6 5.の S 3 5 1 0から S 3 5 3 2の処理、 すなわち単純化モデル歩容瞬時値の算出 (決定) 処理を表す, したがって、 図 7 1において、 単純化モデル 2 0 0から先の部分が S 3 5 3 6の処理に相当する。 なお、 図 7 1の機能部分のうち、 第 4参考例 に係る図 6 6 と同一の機能分については、 図 6 6と同一の参照符号を用 い、 詳細な説明を省略する。
S 3 5 3 6の処理以外の構成は第 4参考例と同じであるので説明を省 略し、 以下に図 7 1を用いて S 3 5 3 6の処理を詳細に説明する。
S 3 5 3 6では、 まず、 前述のごとく図 6 5の S 3 5 3 2で求めた単 純化モデル歩容の目標上体水平位置の瞬時値 (現在時刻 tの制御周期で 求めた仮瞬時値) に、 前回制御周期 (時刻 t 一 A t ) で後述のごとく算 出した補正用摂動モデル上体水平位置 Xc を演算部 2 0 5により加える ことにより、 最終的な目標上体水平位置 (補正目標上体水平位置) が求 められる。 また、 図 6 5の S 3 5 3 2で求めた単純化モデル歩容の目標 上体姿勢傾斜角の瞬時値 (現在時刻 tの制御周期で求めた仮瞬時値) に、 前回制御周期 (時刻 t 一 A t ) で算出した後述する補正用摂動モデル上 体姿勢傾斜角 Θ c を演算部 2 0 4により加えることにより、 最終的な目 標上体姿勢傾斜角 (補正目標上体姿勢傾斜角) が求められる。 また、 図 6 5の S 3 5 3 2で求めた単純化モデル歩容の目標逆位相腕振り角の瞬 時値 (現在時刻 tの制御周期で求めた仮瞬時値) に、 前回制御周期 (時 刻 t 一 Δ t ) で算出した後述する補正用摂動モデル逆位相腕振り角 0 ca を演算部 2 3 2により加えることにより、 最終的な目標逆位相腕振り角 (補正目標逆位相腕振り角) が求められる。
そして、 これらの補正目標上体水平位置、 補正目標上体姿勢傾斜角お よび補正目標逆位相腕振り角が、 それぞれ上体水平位置、 上体姿勢傾斜 角および逆位相腕振り角の最終的な目標瞬時値として出力される。
- すなわち、 前記式 h 2 4、 式 h 2 5、 式 h 3 7により、 補正目標上体 水平位置と補正目標上体姿勢傾斜角と補正目標逆位相腕振り角とが求め られる。
次いで、 上記の如く単純化モデル歩容を補正して得られた目標上体水 平位置 (補正目標上体水平位置)、 目標上体姿勢傾斜角 (補正目標上体 姿勢傾斜角)、 目標逆位相腕振り角 (補正目標逆位相腕振り角)、 および 前述のごとく得られた単純化モデル歩容の目標重心位置、 目標足平位置 姿勢、 目標腕姿勢などの運動変数の瞬時値と目標 Z M Pの瞬時値とを、 前記逆動力学フルモデル 2 0 1に入力し、 その入力された運動変数で表 される運動に釣り合う (すなわち運動によって逆フルモデル 2 0 1が発 生する) 床反力水平成分と目標 Z M Pまわりの床反力モーメント (水平 成分および鉛直成分) とが算出される。 従って、 本第 5参考例では、 逆 フルモデル 2 0 1には、 単純化モデル上体水平位置、 上体姿勢傾斜角、 逆位相腕振り角に加えて、 補正用摂動モデル上体水平位置 Xc と補正用 摂動モデル上体姿勢傾斜角 Θ c と補正用摂動モデル逆位相腕振り角 S ea とが追加的に入力される。 以降、 第 4参考例と同様、 逆フルモデル 2 0 1により算出された床反力水平成分、 床反力モーメント水平成分、 床反 力モーメント鉛直成分、 をそれぞれフルモデル床反力水平成分 Ffullxy , フルモデル床反力モーメント水平成分 Mfullxy、 フルモデル床反力モー メント鉛直成分 Mfullzと呼ぶ。
フルモデル床反力水平成分 Ffull は、 補正目標床反力水平成分 (現在 時刻 t における床反力水平成分の最終的な目標瞬時値) として出力され る。
すなわち、 以下の式により、 補正目標床反力水平成分が決定されて出 力される。 補正目標床反力水平成分 =フルモデル床反ガ水平成分 Ffull
…式 h 4 8 以上の処理からわかるように、 本第 5参考例では、 フルモデル補正歩 容は、 単純化モデル歩容に上体水平位置補正用摂動モデル 2 0 2の挙動 と上体姿勢傾斜角補正用摂動モデル 2 0 3の挙動と逆位相腕振り角補正 用摂動モデル 2 3 1の挙動とを加えたものになる。 さらに、 上体傾斜モ 一ドが発生する床反力水平成分および逆位相腕振りモードが発生する床 反力水平成分がいずれも 0であることを考慮すると、 次式が成立する。 ただし、 単純化モデル床反力水平成分は、 単純化モデル歩容の運動によ つて発生する床反力を逆フルモデル 2 0 1を用いて算出したものの並進 力水平成分である。 フルモデル床反力水平成分 Ffull
=単純化モデル床反力水平成分
+上体水平位置補正用摂動モデル床反力水平成分 Fp
…式 h 5 1 次いで、 上体水平位置補正用摂動モデル制御則 2 0 6により、 上体水 平位置補正用摂動モデル安定化モーメント要求値 Mpfdmd が決定され る。 本実施形態における上体水平位置補正用摂動モデル制御則 2 0 6は. 特願 2 0 0 1 - 1 3 3 6 2 1号で本願出願人が提案した如く、 設定され る。 例えば、 次式のように該制御則 2 0 6が決定される。 上体水平位置補正用摂動モデル安定化モーメント要求値 Mpfdmd
= Kpg *重心差 + Kvg *補正用摂動モデル上体水平速度 dXc/dt
…式 h 5 2 ただし、 重心差は、 次式で求められる。 重心差 =フルモデル重心水平位置 -単純化モデル重心水平位置
…式 h 5 ύ 式 h 5 2における Kpg、 Kv はフ ードバック制御則のゲインであり, フルモデル重心水平位置、 単純化モデル重心水平位置および補正用摂動 モデル上体水平速度 dXc/dt は、 それぞれ、 前回 (時刻 t— Δ t ) に後 述のごとく算出したフルモデル歩容瞬時値の重心水平位置、 単純化モデ ル歩容瞬時値の重心水平位置 (単純化モデル歩容の瞬間姿勢を基に単純 化モデルを用いて計算される重心水平位置 XGs) および補正用摂動モ デル上体水平速度 dXc/dtである。 即ち、 フルモデル重心水平位置から単純化モデル重心水平位置を減算 して得た重心差と摂動モデルの状態量のひとつである摂動モデル上体速 度とに基づいて摂動モデル制御用フィードバック量 (操作量) を演算す るようにした。 かかる摂動モデル制御則により、 前記重心差の時間的平 均値を、 ほぼ 0に制御することができる。
次いで、 上体姿勢傾斜角補正用摂動モデル制御則 2 0 7により、 上体 姿勢補正用摂動モデル安定化モーメント要求値 Mrfdmd が決定される, これは、 第 4参考例と同様の制御則を用いれば良い。 従って、 該制御則 2 0 7 としては、 例えば前記式 h i 1が用いられる。
次いで、 無制限時補正目標床反力モーメント Minが Min演算部 2 0 9により求められる (推定される)。 無制限時捕正目標床反力モーメン ト Min は、 第 4参考例と同様、 前記制約 (Z M P制約条件および床反 力水平成分制約条件) を無視して、 上体水平位置補正用摂動モデル安定 化モーメント Mpf を上体水平位置補正用摂動モデル安定化モーメント 要求値 Mpfdmd に一致させ、 かつ、 上体姿勢傾斜角補正用摂動モデル 安定化モーメント Mrf を、 上体姿勢傾斜角補正用摂動モデル安定化モ —メント要求値 Mrfdmd に一致させると共に、 目標 Z M Pまわりの目 標床反力モーメントとしてのコンプライアンス制御用目標床反力モーメ ント水平成分を補償全床反力モーメント水平成分 Mdmdxy と Mpf と Mrf との総和に一致させた場合に、 目標 Z M Pまわりに発生する床反力 モーメント水平成分である。
無制限時補正目標床反力モーメント水平成分 Min は、 第 4参考例と 同様、 前記式 h i 3の演算によって求められる。 すなわち、 無制限時補 正目標床反力モーメント水平成分 Min は、 上体水平位置補正用摂動モ デル安定化モーメント要求値 Mpfdmd と上体姿勢傾斜角補正用摂動モ デル安定化モーメント要求値 Mrfdmd と補償全床反力モーメント水平 成分 Mdmdxyとを加算することにより得られる。
さらに、 Fin 演算部 2 1 0により、 無制限時補正目標床反力水平成分 Fin も求められる (推定される)。 無制限時補正目標床反力水平成分 Fin は、 第 4参考例と同様、 前記制約 (Z M P制約条件および床反力水 平成分制約条件) を無視して、 上体水平位置補正用摂動モデル安定化モ —メント Mpf を上体水平位置補正用摂動モデル安定化モーメント要求 値 Mpfdmd に一致させ、 かつ、 上体姿勢傾斜角補正用摂動モデル安定 化モーメント Mrf を、 上体姿勢傾斜角補正用摂動モデル安定化モーメ ント要求値 Mrfdmd に一致させると共に、 コンプライアンス制御用目 標床反力モーメ ン ト水平成分を補償全床反力モーメン ト水平成分 Mdmdxy と Mpf と Mrf との総和に一致させたとした場合に、 逆フルモ デル 2 0 1が発生する床反力水平成分 ( Ffullに相当) である。
無制限時補正目標床反力水平成分 Fin は、 第 4参考例とは異なり、 次式により求められる。 無制限時補正目標床反力水平成分 Fin
=フルモデル床反力水平成分 Ffull
+ 1/h
* (上体水平位置補正用摂動モデル安定化モーメント要求値 Mpfdmd 一上体水平位置補正用摂動モデル安定化モーメント Mpf)
…式 h 5 4 ただし、 上体水平位置補正用摂動モデル安定化モーメント Mpf は前 回値 (時刻 t — A tでの値) が用いられる。 すなわち、 上体水平位置補 正用摂動モデル安定化モーメント要求値 Mpfdmd と上体水平位置補正 用摂動モデル安定化モーメント Mpf の差を求め、. 上体水平位置補正用 摂動モデルの入力を前記差だけ増加させることに起因するフルモデル床 反力水平成分 : Ffull の増加量を、 前記差を上体並進モ一ド床反力比率 h で割ることにより推定する。 さらに、 これにフルモデル床反力水平成分 Ffull を加えることにより、 無制限時補正目標床反力水平成分 Fin が推 定される。
次いで、 第 4参考例と同様の制限手段 (制限処理部 2 1 1 ) によって、 無制限時補正目標床反力モーメント水平成分 Min と無制限時補正目標 床反力水平成分 Fin とから、 前記制約 (Z M P制約条件および床反力 水平成分制約条件) を満足するように、 これらに制限を加えた値である (目標 Z M Pまわりの) 制限補正目標床反力モーメント水平成分 Mltd と制限補正目標床反力水平成分 Fltd とが決定される。 この処理手法は、 第 4参考例と同一である。
第 5参考例においても、 コンプライアンス制御用目標床反力モーメン ト水平成分は制限補正目標床反力モーメント水平成分 Mltd に一致され、 また、 補正目標床反力水平成分は制限補正目標床反力水平成分 Fltd に ほぼ一致するので、 上記のごとく制限補正目標床反力モーメント水平成 分 Mltd と制限補正目標床反力水平成分 : Fltd とを決定することによつ て、 コンプライアンス制御用目標床反力モーメント水平成分および補正 目標床反力水平成分は、 それぞれ Z M P制約条件および床反力水平成分 制約条件をほぼ満足する。
次いで、 Mpf 演算部 2 1 5によって、 上体水平位置補正用摂動モデ ル安定化モーメント Mpf が求められる。 さらに詳細には、 制限補正目 標床反力水平成分 Fltd からフルモデル床反力水平成分 Ffull を減じた 値にゲイン Kc を乗じたものを積分器 2 1 5 aにて積分し、 さらに得ら れた積分値に上体並進モード床反力比率 hを乗じることにより、 上体水 平位置補正用摂動モデル安定化モーメント Mpf が求められる。 すなわ ち、 次式により、 上体水平位置補正用摂動モデル安定化モーメント Mpfが得られる。
Mpf= h * S Kc(Fltd- Ffull)dt …式 h 5 5 次いで、 Mrf 演算部 2 1 4によって、 制限補正目標床反カモ一メント 水平成分 Mltd から上体水平位置補正用摂動モデル安定化モーメント Mpf と補償全床反カモ一メント水平成分 Mdmdxy とを減じることによ り、 上体姿勢傾斜角補正用摂動モデル安定化モーメント Mrf が求めら れる。 すなわち、 前記式 h 2 1により、 上体姿勢傾斜角補正用摂動モデ ル安定化モーメント Mrfが得られる。
さらに、 前記式 h 2 3により、 上体姿勢傾斜角補正用摂動モデル床反 力モーメント Mrが決定される。 すなわち、. Mrf 演算部 2 1 4の出力で ある上体姿勢傾斜角補正用摂動モデル安定化モーメント Mrf がそのま ま上体姿勢傾斜角補正用摂動モデル床反カモ一メント Mr として決定さ れる。
次いで、 次式で定義されるフルモデル床反力モーメント誤差 Merrが Merr演算部 2 1 6により算出される。 フルモデル床反力モーメント誤差 Merr
=フルモデル床反力モーメント水平成分 Mfullxy
一制限補正目標床反力モーメント水平成分 Mltd
…式 h 5 6 次いで、 Mp 演算部 2 1 7により、 次式に従って、 上体水平位置補正 用摂動モデル床反カモ一メント Mpが求められる ά Mp = Mpf— S Km*Merr dt …式 h 5 7 すなわち、 フルモデル床反力モーメント誤差 Merr に積分ゲイン Km を乗じた値を積分器 2 1 7 aにて積分すると共に、 その積分値の符号を 反転する。 さらに、 該積分器 2 1 7 aの出力を上体水平位置補正用摂動 モデル安定化モーメント Mpf に加えることにより、 上体水平位置補正 用摂動モデル床反力モーメント Mpが求められる。
次いで、 上体水平位置補正用摂動モ.デル床反力モーメント Mp を上体 位置補正用摂動モデル 2 0 2に入力して、 入力された床反力モーメント 水平成分に釣り合う補正用摂動モデル上体位置 Xcが算出される。
また、 上体姿勢傾斜角補正用摂動モデル床反力モーメント Mr を上体 姿勢傾斜角補正用摂動モデル 2 0 3に入カレて、 入力された床反力モー メント水平成分に釣り合う補正用摂動モデル上体姿勢傾斜角 0 c が算出 される。
S 3 5 3 6における以上までの処理は、 P C T / J P 0 3 / 0 0 4 3 5の通りであるので、 ここでの説明は以上に留める。
第 5参考例ではさらに、 逆位相腕振り角補正用摂動モデルモーメント 決定部 2 3 0において、 逆位相腕振り角モーメント補正用摂動モデル Maが決定される。
さらに逆位相腕振り角補正用摂動モデルモーメント Maが逆位相腕振 り角補正用摂動モデルに入力されて、 捕正用摂動モデル逆位相腕振り角 Θ caが決定される。
以下に、 第 5参考例での逆位相腕振り角補正用摂動モデルモ一メント 決定部 2 3 0の動作についてその機能ブロック図である図 7 2を用いて 詳細を説明する。 .
まず、 逆位相腕振り角補正用摂動モデル制御則により、 逆位相腕振り 角補正用摂動モデル安定化モーメント要求値 Mafdmd が決定される。 これは、 第 4参考例と同様の制御則を用いれば良い。 従って、 該制御則 としては、 例えば前記式 h 3 0が用いられる。
次いで、 演算部 2 3 0 gにおいて、 フルモデル床反力モーメント鉛直 成分 Mfullz と補償全床反力モーメント鉛直成分 Mdmdz と逆位相腕振 り角補正用摂動モデル安定化モーメント要求値 Mafdmd との和から逆 位相腕振り補正用摂動モデルモ一メント Maの前回値 (後述する積分器 の出力) を減じることによって無制限時補正目標床反力モーメント鉛直 成分 Minz を求める。 次いで、 制限手段 (制限処理部) 2 3 O hにおい て、 無制限時補正目標床反力モーメント鉛直成分 Minz を床反力鉛直成 分モ一メント許容範囲を越えないように制限を加えることにより (すな わち図示する飽和特性関数に通して)、 制限時補正目標床反力モーメン ト鉛直成分 Mltdz を求める。 次いで、 フルモデル床反力モ一メント鉛 直成分 Mfullz と補償全床反力モーメント鉛直成分 Mdmdz と逆位相腕 振り角補正用摂動モデル安定化モーメント要求値 Mafdmd との和を制 限時補正目標床反力モーメント鉛直成分 Mltdz から減じた値を積分器
2 3 0 i により、 積分ゲイン Kaで積分することにより逆位相腕振り補 正用摂動モデルモーメント Maを求めて、 これを出力する。 また、 制限 時補正目標床反力モーメント鉛直成分 Mltdz をコンプライアンス制御 用目標床反力モーメント鉛直成分として出力する。
以上のごとく、 逆位相腕振り角補正用摂動モデルモーメント決定部 2
3 0において、 逆位相腕振り補正用摂動モデルモーメント Ma とコンプ ライアンス制御用目標床反力モーメント鉛直成分が決定される。
求めた補正用摂動モデル上体位置 Xc、 補正用摂動モデル上体姿勢傾 斜角 0 c、 補正用摂動モデル逆位相腕振り角 0 ca、' 上体水平位置補正用 摂動モデル安定化モーメント Mpf および逆位相腕振り補正用摂動モデ ルモ一メン卜 Maは、 前述のごとく次回制御周期 (時刻 t + Δ t ) にお いて、 前回値として用いられる。
残余の構成および処理は、 第 4参考例と同一である。 この第 5参考例 によれば、 第 4参考例と同様の作用効果を奏することができる。
次に、 第 6参考例を図 7 3および図 7 4を参照して説明する。 第 6参 考例は、 前記第 4および第 5参考例で用いた逆動力学フルモデル (逆フ ルモデル) 2 0 1に代えて、 順動力学モデル (より正確には擬似順動力 学モデル) を用いて歩容を修正しつつ生成する手法である。
図 7 3は、 この第 6参考例に係る装置の動作を説明する機能ブロック 図である。 同図 7 3に示すように、 本第 6参考例では、 擬似順フルモデ ル (擬似順動力学フルモデル) 2 2 2を備えている。
この擬似順フルモデル 2 2 2は、 上体水平位置安定化モーメン卜要求 値 Mpfdmd、 上体姿勢傾斜角安定化モーメント要求値 Mrfdmd、 逆位相 腕振り角安定化モーメント要求値 Mafdmd、 目標 Z M P、 目標床反力鉛 直成分、 補償全床反力モーメント水平成分 Mdmdxy および補償全床反 力モーメント鉛直成分 Mdmdz と、 目標足平位置姿勢および目標腕姿勢 など上体 3を除く部位の運動状態とを入力として、 目標上体鉛直位置、 目標上体水平位置、 目標上体姿勢傾斜角、 目標逆位相腕振り角、 目標 Z M Pまわりの目標床反力モーメントとしてのコンプライアンス制御用目 標床反力モーメント (水平成分および鉛直成分)、 および目標床反力水 平成分を出力するモデルである。 なお、 擬似順フルモデル 2 2 2の目標 値入力は、 前記図 6 3を参照して説明した如く、 歩容パラメータ決定部 1 0 0 aで決定される歩容パラメータを基に、 目標瞬時値発生部 1 0 0 により生成される。 上記擬似順フルモデル 2 2 2は、 具体的には図 7 4の機能ブロック図 で表され、 図 7 4の破線で囲った部分が擬似順フルモデル 2 2 2に相当 する。 なお、 この機能ブロック図で前記第 5参考例の図 7 1 と同一機能 部分については、 図 7 1 と同一の参照符号を用いている。
ここで、 同図 7 4の単純化モデル 2 0 0は、 単に動力学モデルだけで なく、 前述の図 6 5の S 3 5 1 0から S 3 5 3 2の処理、 すなわち単純 化モデル歩容瞬時値の算出 (決定) 処理を表す。 また、 S 3 5 3 2の今 回歩容瞬時値 (単純化モデル歩容瞬時値) の算出 (決定) 処理において は、 前記第 4参考例で説明したように目標 Z M Pまわりのモデル操作床 反力モーメント水平成分を 0として歩容の瞬時値を生成した上で、 さら に第 3実施形態において述べた上体姿勢傾斜角補正用摂動モデルモ一メ ント Mr に相当する単純化歩容上体姿勢傾斜角補正用モーメント Mr (前回値) を発生する上体傾斜モードの摂動運動と第 3実施形態におい て述べた上体水平位置補正用摂動モデルモ一メント Mp に相当する単純 化モデル上体水平位置補正用モーメント Mp (前回値) を発生する上体 並進モ一ドの摂動運動と第 4参考例において述べた逆位相腕振り角補正 用摂動モデルモ一メント Maに相当する単純化モデル逆位相腕振り角補 正用モーメント Ma (前回値) を発生する逆位相腕振りモードの摂動運 動を付加する。 これにより、 単純化モデル 2 0 0が出力する歩容の瞬時 値を補正する。
より具体的に説明すると、 本第 6参考例における図 6 5の S 3 5 3 2 の処理においては、 そのサブルーチン処理である図 5 7の S 3 4 1 4と S 3 4 1 6において、 単純化モデル 2 0 0で求めた上体水平加速度に、 前記式 0 3 y の右辺第 2項を Mp (前回値) に等しいとした式、 すなわ ち Mp = mb * (Zb— Zzmp) * (d2Xb/dt2)という式に基づいて求められる 上体水平加速度(d2Xb/dt2)を摂動分として加えてなる上体水平加速度を 今回歩容の初期から現在時刻 t まで 2階積分することにより、 現在時刻 tにおける上体水平位置の瞬時値が求められる。 また、 図 5 7の S 3 4 1 4において、 単純化モデル 2 0 0で求めた上体姿勢傾斜角加速度に、 前記式 0 3 y の右辺第 7項を Mi' (前回値) に等しいとした式、 すなわ ち、 Mr = J * d2 0 by/dt2 という式に基づいて求められる上体姿勢傾斜 角加速度 (d2 0 by/dt2) を摂動分として加えてなる上体姿勢傾斜角加 速度を今回歩容の初期から現在時刻 tまで 2階積分することにより、 現 在時刻 tにおける上体姿勢傾斜角の瞬時値が求められる。 また、 図 5 7 の S 3 4 1 4において、 単純化モデル 2 0 0で求めた逆位相腕振り角加 速度に、 前記式 0 3 Z の右辺第 8項を Ma (前回値) に等しいとした式. すなわち、 Ma = Jaz * d2 0 az/dt2 という式に基づいて求められる逆位 相腕振り角加速度 (d2 0 az/dt2)を摂動分として加えてなる逆位相腕振 り角加速度を今回歩容の初期から現在時刻 t まで 2階積分することによ り、 現在時刻 tにおける逆位相腕振り角の瞬時値が求められる。
補足すると、 上体水平位置と上体姿勢傾斜角については、 サジタルブ レーン上の瞬時値について述べたが、 ラテラルプレーン上の瞬時値も同 様に求める。
図 7 4において、 単純化モデル 2 0 0から先の部分が S 3 5 3 6の処 理に相当する処理を実行する部分である。 以下に図 7 4を用いて S 3 5 3 6の処理を詳細に説明する。
S 3 5 3 6では、 まず、 S 3 0 3 2において上記の如く単純化モデル 上体水平位置補正用モ一メント Mp (詳しくは時刻 ( t _ Δ t ) の制御 周期での前回値) を基に補正された単純化モデル水平上体位置が目標上 体水平位置 (時刻 tでの上体水平位置の最終的な目標瞬時値) として出 力される。 また、 単純化モデル上体姿勢傾斜角補正用モーメント Mr (詳しくは時刻 ( t — A t ) の制御周期での前回値) を基に補正された 単純化モデル上体姿勢傾斜角が目標上体姿勢傾斜角 (時刻 tでの上体姿 勢傾斜角の最終的な目標瞬時値) として出力される。 また、 単純化モデ ル逆位相腕振り角補正用摂動モデルモーメント Ma (詳しくは時刻 ( t - A t ) の制御周期での前回値) を基に補正された単純化モデル逆位相 腕振り角が目標逆位相腕振り角 (時刻 tでの逆位相腕振り角の最終的な 目標瞬時値) として出力される。
すなわち、 式 hl 0 0、 式 hl 0 1、 式 hl 0 2により、 最終的な目 標上体水平位置と目標上体姿勢傾斜角.とが決定される。 目標上体水平位置 =単純化モデル上体水平位置 …式 hi 0 0 目標上体姿勢傾斜角 =単純化モデル上体姿勢傾斜角 …式 hi 0 1 目標逆位相腕振り角 =単純化モデル逆位相腕振り角 …式 hi 0 2 次いで、 目標上体水平位置 (すなわち単純化モデル上体水平位置)、 '目標上体姿勢傾斜角 (すなわち単純化モデル上体姿勢傾斜角)、 目標逆 位相腕振り角 (すなわち単純化モデル逆位相腕振り角) および前述のご とく得られた単純化モデル歩容の目標全体重心位置、 目標足平位置姿勢, 目標腕姿勢などの運動変数の瞬時値と目標 Z MPの瞬時値とを、 前記逆 動力学フルモデル (逆フルモデル) 2 0 1に入力し、 入力された運動変 数で表される運動に釣り合う (すなわち運動によって逆フルモデル 2 0 1が発生する) 床反力水平成分と目標 Z MPまわりの床反力モーメント (水平成分および鉛直成分) とが算出される。 以降、 第 5参考例と同様, これらの算出された床反力水平成分、 床反カモ一メン卜水平成分および 床反力モーメント鉛直成分をそれぞれフルモデル床反力水平成分 FfulL フルモデル床反力モーメント水平成分 Mfullxy、 床反力モーメント鉛直 成分 Mfullzと呼ぶ。 第 5参考例と同様、 フルモデル床反力水平成分 Ffullは、 目標床反力 水平成分 (時刻 tでの床反力水平成分の最終的な目標瞬時値) として出 力される。
本第 6参考例では、 上体姿勢傾斜角補正用摂動モデルと上体水平位置 補正用摂動モデルと逆位相腕振り角補正用摂動モデルとを備えないので, 上体水平位置補正用摂動モデル制御則と上体姿勢傾斜角補正用摂動モデ ル制御則と逆位相腕振り角補正用摂動モデル制御則とに相当する処理は, 後述するように、 第 5参考例とは異なる。
このことを除けば、 上記処理以降、 単純化モデル上体姿勢傾斜角補正 用モ一メント Mr と単純化モデル上体水平位置補正用モ一メント Mp と 単純化モデル逆位相腕振り角補正用モーメント Ma とを決定するまでは, 第 5参考例において、 上体姿勢傾斜角補正用摂動モデルモーメント Mr と上体水平位置補正用摂動モデルモーメント Mp と逆位相腕振り角補正 用摂動モデルモーメント Maとを決定する処理と同一の処理が実行され る。 すなわち、 Min演算部 2 0 9 、 Fin演算部 2 1 0、 制限処理部 2 1 1 (制限手段)、 Mpf 演算部 2 1 5 、 Merr 演算部 2 1 6 、 Mrf 演算部 2 1 7 ( = Mr演算部)、 Mp演算部 2 1 4の処理は、 第 5参考例と同一 である。 さらに、 逆位相腕振り角補正用摂動モデル制御則とに相当する 処理を除けば、 単純化モデル逆位相腕振り角補正用モ一メント決定部 2 3 0の処理は、 前記第 5参考例における逆位相腕振り角補正用摂動モデ ルモーメント決定部 2 3 0の処理と同一である。 なお、 本第 6参考例で は、 Mr、 Mpおよび Maは、 それぞれ第 5参考例における上体姿勢傾斜 角補正用摂動モデルモーメント Mr と上体水平位置補正用摂動モデルモ —メント Mp と逆位相腕振り角補正用摂動モデルモーメント Maとにそ れぞれ対応するものであるが、 第 5参考例のように摂動モデルに入力す るものではなく、 単純化モデル 2 0 0に入力するものである。 このため、 Mr, Mpおよび Maの名称を本第 6参考例では、 単純化モデル上体姿勢 傾斜角補正用モ一メント、 単純化モデル上体水平位置補正用モ一メント, 単純化モデル逆位相腕振り角補正用モ一メントと称している。
上記のごとく求められた単純化モデル上体姿勢傾斜角補正用モーメン ト Mr と単純化モデル上体水平位置補正用モーメント Mp と単純化モデ ル逆位相腕振り角補正用モーメント Maとは、 前述のごとく次回制御周 期 (時刻 t + A t ) に、 単純化モデル歩容瞬時値の決定 (生成) 時に前 回値として用いられる。
残余の構成及び処理は、 第 5参考例と同一である。
以下に、 上体姿勢傾斜角安定化モーメント要求値 Mrfdmd と上体水 平位置安定化モーメント要求値 Mpfdmd と逆位相腕振り角安定化モー メント要求値 Mafdmd との決定処理について図 7 3を参照して説明す る。
図 7 3に示すように、 第 6参考例では、 前述したように擬似順フルモ デル 2 2 2に備える単純化モデル 2 0 0とは別の単純化モデル 2 2 3を 備えている。 この単純化モデル 2 2 3は、 本第 6参考例でのその機能は, 前述した単純化モデル 2 0 0 と同一であり、 単に動力学モデルだけでな く、 前述の図 6 5の S 3 5 1 0から S 3 5 3 2の処理、 すなわち単純化 モデル歩容瞬時値の算出 (決定) 処理を表すものである。 なお、 単純化 モデル 2 2 3は、 実際上は、 上体姿勢傾斜角の瞬時値と、 上体水平位置 の瞬時値とを決定できればよく、 必ずしも図 6 5の S 3 5 1 0から S 3 5 3 2の処理の全てを行なう必要はない。
以下に図 7 3を用いて第 6参考例における Mpfdmd および Mrfdmd の決定処理を詳細に説明する。
本第 6参考例においては、 単純化モデル 2 2 3を用いて生成される歩 容と前記擬似順動力学フルモデル 2 2 2を用いて前述の通り算出される 歩容との間の上体水平位置、 上体姿勢傾斜角および逆位相腕振り角のそ れぞれの差が演算部 2 2 4, 2 2 5、 2 2 8により求められる。 そして. これらの差に応じて、 これらの差が 0に収束するように P I Dなどのフ イー ドバック制御則によつて上体水平位置安定化モーメン ト要求値 Mpfdmd, 上体姿勢傾斜角安定化モーメント要求値 Mrfdmdおよび逆位 相腕振り角安定化モーメント要求値 Mafdmd が決定される。 すなわち. 単純化モデル 2 2 3による上体水平位置と擬似順フルモデル 2 2 2によ る上体水平位置との差に応じて、 フィードバック制御則からなる上体水 平位置安定化制御則 2 2 6によって、 Mpfdmd が求められる。 また、 単純化モデル 2 2 3による上体姿勢傾斜角と擬似順フルモデル 2 2 2に よる上体姿勢傾斜角との差に応じて、 フィードバック制御則からなる上 体姿勢傾斜角安定化制御則 2 2 7によって、 Mrfdmdが求められる。 ま た、 単純化モデル 2 2 3による逆位相腕振り角と擬似順フルモデル 2 2 2による逆位相腕振り角との差に応じて、 フィ一ドバック制御則からな 'る逆位相腕振り角安定化制御則によって、 Mafdmdが求められる。 そし て、 この決定された Mpfdmd、 Mrfdmd 及び Mafdmd が、 前記擬似順 動力学フルモデルにフィ一ドバックされて入力される。
なお、 第 6参考例では、 歩容生成装置 1 0 0は、 前記擬似順動力学フ ルモデル 2 2 2への入力の一部である目標 Z M P、 目標床反力鉛直成分, 目標足平位置姿勢および目標腕姿勢などと、 前記擬似順動力学フルモデ ル 2 2 2からの出力である目標上体鉛直位置、 目標上体水平位置、 目標 上体姿勢傾斜角、 目標逆位相腕振り角、 目標床反力水平成分およびコン プライアンス制御用目標床反力モーメント (水平成分および鉛直成分) を最終的な今回歩容の目標瞬時値として出力する。
以上説明した第 6参考例によれば、 前記第 5参考例と同様の作用効果 を奏することができる。 なお、 前記第 6参考例では、 上体姿勢傾斜角安定モーメント要求値 Mrfdmd、 上体水平位置安定化モーメント要求値 Mpfdmdおよび逆位相 腕振り角安定化モーメント要求値 Mafdmd を擬似順フルモデル 2 2 2 のみに入力するようにしたが、 Mrfdmd、 Mpfdmdおよび Mafdmdを単 純化モデル 2 2 3に入力するようにしてもよく、 あるいは、 単純化モデ ル 2 2 3と擬似順フルモデル 2 2 2とに分配 · 供給するようにしてもよ い。 また、 補償全床反力モーメント鉛直成分 Mdmdz を単純化モデル 2 2 3に入力し、 この Mdmdzが付加的に発生するように単純化モデル逆 位相腕振り角を決定するようにしてもよい。
次に、 本発明の第 7参考例を図 7 5を参照して説明する。 図 7 5は、 この第 7参考例に係る装置の動作、 具体的には、 図 6 5のフローチヤ一 トの S 3 5 3 6の歩容の修正手法を説明する機能プロック図である。 な 'お、 図 7 5では、 第 4参考例もしくは第 5参考例と同一機能部分につい ては、 図 6 6又は図 7 1 と同一の参照符号を用いる。
第 7参考例においては、 上体水平位置補正用摂動モデル 2 0 2 と上体 姿勢傾斜角補正用摂動モデル 2 0 3と逆位相腕振り角補正用摂動モデル 2 3 1 とを備える。 また、 3つの分配器 2 2 0 , 2 2 1 , 2 4 1を備え る。
分配器 2 2 0 , 2 2 1 , 2 4 1を定義すると、 いずれも、 1入力 2出 力の伝達ブロックであり、 入力に応じて、 一方の出力を決定し (例えば, 入力に周波数特性、 不感帯特性、 飽和特性などの信号処理を行って一方 の出力を決定し)、 2つの出力の和が入力に一致またはほぼ一致するよ うに、 他方の出力を決定する伝達ブロックである ό
分配器 2 2 0には、 制限補正目標床反力モーメント水平成分 Mltdxy から、 上体水平位置補正用摂動モデル安定化モーメント Mpf と補償全 床反力モーメント水平成分 Mdmdxyとを減じたもの (Mr演算部 2 1 4 の出力) である上体姿勢傾斜角補正用モーメント Mrが入力され、 上体 姿勢傾斜角補正用摂動モデル 2 0 3に入力する上体姿勢傾斜角補正用摂 動モデル入力 Mri と、 単純化モデル 2 0 0に入力する単純化モデル上 体姿勢傾斜角補正用モーメント Mrs とに分配される。 この時、 上体姿 勢傾斜角補正用摂動モデル入力 Mri と単純化モデル上体姿勢傾斜角補 正用モーメント Mrs との和が上体姿勢傾斜角補正用モーメント Mr に 一致するように、 上体姿勢傾斜角補正用摂動モデル入力 Mri と単純化 モデル上体姿勢傾斜角補正用モーメント Mrs とが決定される (出力さ れる)。
より具体的には、 上体姿勢傾斜角補正用モーメント Mr に応じて、 上 体姿勢傾斜角補正用摂動モデル入力 Mri が決定される。 例えば、 上体 姿勢傾斜角補正用モーメント Mr を不感帯特性、 飽和特性、 あるいは周 波数特性を持つ信号処理を通して、 上体姿勢傾斜角補正用摂動モデル入 力 Mri が決定される。 また、 上体姿勢傾斜角補正用モーメント Mr か ら上体姿勢傾斜角補正用摂動モデル入力 Mri を差し引いたものが、 単 純化モデル上体姿勢傾斜角補正用モーメント Mrs として決定される。 さらに具体的に説明すると、 第 7参考例では、 分配器 2 2 0は、 例えば. 入力 (上体姿勢傾斜角補正用モーメント Mr = Mltd—Mpf—Mdmdxy) をローパスフィルタに通してなる低周波成分 (直流分) を単純化モデル 上体姿勢傾斜角補正用モーメント Mrs として出力すると共に、 その入 力 (上体姿勢傾斜角補正用モーメント Mr) から Mrsを差し引いた成分 が上体姿勢傾斜角補正用摂動モデル入力 Mri として出力される。 この 場合、 低周波成分 (直流分) である単純化モデル上体姿勢傾斜角補正用 モーメント Mrs に関しては、 不感帯特性を持たせておき、 上記ローパ スフィル夕の出力が、 ある所定値を中心とする所定範囲内に存在する状 態では、 Mi'sが該所定値 (例えば 0 ) に維持されるようにしておく。 分配器 2 2 0の出力である上体姿勢傾斜角補正用摂動モデル入力 Mri は、 前記上体姿勢傾斜角補正用摂動モデル 2 0 3に入力され、 上体姿勢 傾斜角補正用摂動モデル 2 0 3により補正用摂動モデル上体姿勢傾斜角 Θ cが決定される。
分配器 2 2 0のもうひとつの出力である単純化モデル上体姿勢傾斜角 補正用モーメント Mrs は単純化モデル 2 0 0に入力される。 これは、 前記第 6参考例における図 7 4において、 単純化モデル上体姿勢傾斜角 補正用モ一メント Mr を単純化モデル 2 0 0に入力することに相当する ものである。
分配器 2 2 1においては、 フルモデル床反力モーメント水平成分誤差 Merr にゲイン Km を乗じた値を積分器 2 1 7 aによつて積分し、 さら に符号を反転した値を入力とする。
分配器 2 2 1の入力は、 分配器 2 2 0 と同様、 単純化モデル 2 0 0に 入力する単純化モデル上体水平位置補正用モーメント Mps と、 上体水 平位置補正用摂動モデル 2 0 2に入力する誤差補正モーメント Me とに 分配される。 より具体的には、 積分器 2 1 7 aの出力に応じて、 誤差補 正モーメント Meが決定される。 例えば、 積分器 2 1 7 aの出力 (分配 器 2 2 0の入力) を不感帯特性、 飽和特性、 あるいは周波数特性を持つ 信号処理を通して、 誤差補正モーメント Meが決定される。 また、 積分 器 2 1 7 aの出力から、 誤差補正モーメント Me を差し引いたものが、 単純化モデル上体姿勢傾斜角補正用モーメント Mrs として決定される。 さらに具体的に説明すると、 本第 7参考例では、 分配器 2 2 1は、 例え ば、 入力 (積分器 2 1 7 aの出力) をローパスフィル夕に通してなる低 周波成分 (直流分) を単純化モデル上体水平位置補正用モーメン ト Mps として出力すると共に、 その入力 (積分器 2 1 7 aの出力) から Mps を差し引いた成分を誤差補正モーメント Me として出力する。 こ の場合、 低周波成分 (直流分) である単純化モデル上体水平位置補正用 モーメント Mps に関しては、 不感帯特性を持たせておき、 上記ローパ スフィルタの出力が、 ある所定値を中心とする所定範囲内に存在する状 態では、 Mpsが該所定値 (例えば 0 ) に維持されるようにしておく。 分配器 2 2 1の出力である誤差補正モーメント Me に上体水平位置補 正用モデル安定化モ メント Mpf を .Mp 演算部 2 1 7 bで加算するこ とにより上体水平位置補正用摂動モデルモーメント Mpが求められる。 そして、 上体水平位置補正用摂動モデルモーメント Mpは、 上体水平位 置補正用摂動モデル 2 0 2に入力され、 上体水平位置補正用摂動モデル 2 0 2により補正用摂動モデル上体水平位置 Xcが決定される。
分配器 2 2 1のもうひとつの出力である単純化モデル上体水平位置補 正用モーメン卜 Mps は単純化モデル 2 0 0に入力される。 これは、 前 記第 6参考例の図 7 4において、 単純化モデル上体水平位置補正用モー メント Mpを単純化モデル 2 0 0に入力することに相当するものである, 逆位相腕振り角補正用摂動モデルモーメント決定部 2 3 0は、 第 5参 考例において用いた図 7 2に示す逆位相腕振り角補正用摂動モデルモー メント決定部と同一である。 ただし、 図 7 2の出力である逆位相腕振り 角補正用摂動モデルモーメント Maは、 逆位相腕振り角補正用摂動モデ ル 2 3 1に直接入力されず、 分配器 2 4 1に入力される。 そこで、 本第 7参考例では逆位相腕振り角補正用摂動モデルモーメント Maは、 名称 を改めて逆位相腕振り角補正用モデルモーメント Maと呼ぶ。
分配器 2 4 1においては、 逆位相腕振り角補正用摂動モデルモ一メン ト決定部 2 3 0が決定した逆位相腕振り角補正用モデルモーメント Ma を入力とする。 分配器 2 4 1の入力は、 分配器 2 2 0 と同様、 単純化モデル 2 0 0に 入力する単純化モデル逆位相腕振り角補正用モーメント Mas と、 逆位 相腕振り角補正用摂動モデル 2 3 1に入力する逆位相腕振り角補正用摂 動モデル入力 Maiとに分配される。
この時、 逆位相腕振り角補正用摂動モデル入力 Mai と単純化モデル 逆位相腕振り角補正用モーメント Mas との和が逆位相腕振り角補正用 モデルモーメント Maに一致するように、 逆位相腕振り角補正用摂動モ デル入力 Mai と単純化モデル逆位相腕振り角補正用モ一メント Mas と が決定される (出力される)。
より具体的には、 逆位相腕振り角補正用モデルモーメント Maに応じ て、 逆位相腕振り角補正用摂動モデル入力 Mai が決定される。 例えば. 逆位相腕振り角補正用モデルモーメント Ma.を不感帯特性、 飽和特性、 あるいは周波数特性を持つ信号処理を通して、 逆位相腕振り角補正用摂 動モデル入力 Mai が決定される。 また、 逆位相腕振り角補正用モデル モーメント Ma から逆位相腕振り角補正用摂動モデル入力 Mai を差し 引いたものが、 単純化モデル逆位相腕振り角補正用モーメント Mas と して決定される。 さらに具体的に説明すると、 第 7参考例では、 分配器 2 4 1 は、 例えば、 入力 (逆位相腕振り角補正用モデルモーメント Ma) を口一パスフィルタに通してなる低周波成分 (直流分) を単純化 モデル逆位相腕振り角補正用モーメント Mas として出力すると共に、 その入力 (逆位相腕振り角補正用モデルモーメント Ma) から Mas を 差し引いた成分が逆位相腕振り角補正用摂動モデル入力 Mai として出 力される。 この場合、 低周波成分 (直流分) である単純化モデル逆位相 腕振り角補正用モーメント Mas に関しては、 不感帯特性を持たせてお き、 上記ローパスフィル夕の出力が、 ある所定値を中心とする所定範囲 内に存在する状態では、 Mas が該所定値 (例えば 0 ) に維持されるよ うにしておく。
分配器 2 4 1 の出力である逆位相腕振り角補正用摂動モデル入力 Mai は、 前記逆位相腕振り角補正用摂動モデル 2 3 1 に入力され、 逆 位相腕振り角補正用摂動モデル 2 3 1により補正用摂動モデル逆位相腕 振り角 0 caが決定される。
分配器 2 4 1のもうひとつの出力である単純化モデル逆位相腕振り角 補正用モーメント Mas は単純化モデル 2 0 0に入力される。 これは、 前記第 6参考例における図 7 4において、 単純化モデル逆位相腕振り角 補正用モーメント Maを単純化モデル 2 0 0に入力することに相当する ものである。
単純化モデル 2 0 0は、 前記第 6参考例と同様、 単純化モデル歩容瞬 時値の算出 (決定) 処理において、 目標 Z M Pまわりに床反力モーメン ト水平成分が発生しないように (モデル操作床反カモ一メン卜を 0とし て) 歩容の瞬時値を生成した上で、 単純化モデル上体姿勢傾斜角補正用 モーメント Mrs (前回値) を発生する上体.傾斜モードの摂動運動を付 加し、 単純化モデル上体水平位置補正用モーメント Mps (前回値) を 発生する上体並進モードの摂動運動を付加し、 さらに単純化モデル逆位 相腕振り角補正用モーメント Mas を発生する逆位相腕振りモードの摂 動運動を付加して、 歩容の瞬時値を補正する。
なお、 本第 7参考例では、 図 6 5の S 3 5 2 8の処理の一部である図 4 3の S 8 0 0において、 前回歩容の終端状態として、 前回歩容終端に おける単純化モデルの状態量を用いる。 従って、 分配器 2 2 0, 2 2 1, 2 4 1から単純化モデルに出力される Mrs、 Mps及び Masが 0以外の 値となる時があれば、 単純化モデルは当初の挙動からずれるので、 これ に応じて S 3 5 2 8において、 歩容パラメ一夕が適宜修正される。 また, 前記不感帯の領域を大きく設定すると、 Mrs、 Mps 及び Mas の絶対値 が小さくなるので、 歩容パラメ一夕の修正量の絶対値も小さくなる。 その他の構成及び処理は、 第 5参考例と同一である。 より詳しくは、 演算部 2 0 4, 2 0 5 , 目標上体水平位置を演算する演算部、 Merr 演 算部 2 1 6、 上体姿勢傾斜角補正用摂動モデル制御則 2 0 7、 上体水平 位置補正用摂動モデル制御則 2 0 6、 Min演算部 2 0 9、 Fin演算部 2 1 0、 制限処理部 2 1 1 、 Mpf 演算部 2 1 5、 逆位相腕振り角補正用 摂動モデルモーメント決定部 2 4 0の処理は、 前記第 5参考例と同一で ある。 .
なお、 本第 7参考例では、 前記第 4参考例で説明したように今回歩容 の終端等で各摂動モデル 2 0 2、 2 0 3、 2 3 1の状態量により単純化 モデル 2 0 0の状態量を修正するような処理は行なう必要はない。 これ は、 分配器 2 2 0, 2 2 1, 2 4 1から単純化モデル上体姿勢傾斜角補 正用モーメント Mrs、 単純化モデル上体水平位置補正用モーメント Mps 及び単純化モデル逆位相腕振り角補正用モーメント Mas が追加入 力されるからである。
かかる本実施形態では、 前記第 5参考例あるいは第 6参考例と同様の 作用効果を奏することができる。
なお、 本第 7参考例では、 各分配器 2 2 0, 2 2 1、 2 4 1の 2つの 出力のうち一方を 0とし、 他方を入力に一致させるようにしても良い。
この場合、 例えば分配器 2 2 0の出力である単純化モデル上体姿勢傾 斜角補正用モーメント Mrs を 0にし、 分配器 2 2 1の出力である単純 化モデル上体水平位置補正用モーメント Mps を 0にし、 分配器 2 4 1 の出力である単純化モデル逆位相腕振り角補正用モーメント Mas を 0 にすると、 第 5参考例と同一の作用効果を奏することとなる (事実上、 第 5参考例のものと同一構成となる)。 '
また、 誤差補正モーメント Me に上体水平位置補正用モデル安定化モ 一メント Mpf を加算した値を図示しない第 3の分配器に入力し、 その 出力の一方を上体水平位置補正用摂動モデルに入力し、 もう一方の出力 を単純化モデル上体水平位置補正用モーメント Mps に加算しても良い, この場合、 分配器 2 2 1の出力である単純化モデル上体水平位置補正用 モーメント Mps を 0にしても良い。 すなわち、 分配器 2 2 1を省略し フルモデル床反力モーメント誤差 Merrにゲイン Kmを乗じた値を積分 して符号を反転した値を上体水平位置補正用モデル安定化モーメント Mpf に加算した値を第 3の分配器に入力しても良い。
なお、 以上説明した第 4〜第 7参考例では、 図 6 5の S 3 5 3 2にお いて、 目標 Z M Pを満足するように、 すなわち、 目標 Z M Pまわりの床 反力モーメント水平成分が 0になるように、 今回歩容瞬時値 (目標運動 の仮瞬時値) を決定するようにしたが、 これに代えて、 第 2参考例にお ける図 5 6の S 3 0 3 2のように、 目標 Z M Pまわりにモデル操作床反 カモ一メント水平成分が発生するように今回歩容瞬時値を決定するよう にしてもよい。 この場合には、 図 5 3に示す如く、 歩容生成装置 1 0 0 に補償全床反力モーメント水平成分分配器 1 1 0からモデル操作床反力 モーメント水平成分を与えるようにすればよい。
また、 以上説明した第 1〜第 7参考例においては、 補償全床反力モー メント水平成分 Mdmdxy は、 上体姿勢角 · 角速度の代わりに、 全体重 心水平位置 · 速度など、 口ポッ ト 1の他の姿勢に関する状態量に基づい て決定しても良い。
次に、 本発明の第 1実施形態を図 7 6から図 8 3を参照して説明する 本実施形態における制御ュニッ ト 6 0の機能ブロック図を図 7 6に示 す。 なお、 本実施形態では、 前記第 3参考例と同一構成部分もしくは同 一機能部分については第 3参考例と同一の参照符号を用いる。
本実施形態では、 第 3参考例 (図 5 9参照) に比較して、 実ロボッ ト 1の滑りの有無を判定する滑り判定部 1 1 4が追加されている。 また、 滑り判定部 1 1 4から出力される滑り判定結果が歩容生成装置 1 0 0に 入力される。 歩容生成装置 1 0 0においては、 滑り判定結果が滑りあり と判定されると、 歩容パラメータを基に決定される床反力水平成分許容 範囲および床反力モーメント鉛直成分許容範囲を狭める。 また、 歩容生 成装置 1 0 0は、 滑り判定結果が滑りなしと判定されると、 歩容パラメ 一夕を基に決定される床反力水平成分許容範囲および床反力モーメント 鉛直成分許容範囲に戻す。 他の構成および処理に関しては、 前記第 3参 考例と同一である。
滑り判定部 1 1 4を、 その処理を表すフローチヤ一トである図 7 9を 用いて詳細に説明すると、 まず、 S 5 2 1 0において、 スピン判定サブ ル一チンが実行される。 スピン判定サブルーチンでは、 そのフローチヤ ートである図 8 0の S 5 3 1 0に進み、 実上体姿勢角速度および関節角 指令 (検出値) を基に支持脚足平 2 2の対地角速度鉛直成分 co supz を 求める。 次いで S 5 3 1 2に進み、 足平 2 2の 6軸力センサ 5 0の検出 値 (実床反力) を基に、 支持脚に作用している実床反力モーメント鉛直 成分の時間的な変化率である支持脚床反力モーメント鉛直成分の変化率 dMsupactz/dt を求める。 次いで S 5 3 1 4に進み、 前記支持脚足平 2 2の対地角速度鉛直成分 supz の絶対値がある所定の値 o> e を越えて いるか否かを判定する。 越えている場合には、 S 5 3 1 6に進み、 前記 支持脚床反力モーメント鉛直成分の変化率 dMsupactz/dt を前記支持脚 足平の対地角速度鉛直成分 co supz で割って符号を反転した値である、 支持脚の見かけねじりばね定数 Ksupt を求める。 次いで S 5 3 1 8に 進み、 Ksupt がある所定の値 Ksuptmin よりも小さいか否かを判定し. 小さい場合には、 S 5 3 2 0に進み、 スピン判定結果を、 スピンありと 判定し、 そうでない場合には、 S 5 3 2 2に進み、 スピン判定結果を、 スピンなしと判定する。 また、 S 5 3 1 4において、 前記支持脚足平の 対地角速度鉛直成分 supz の絶対値が前記所定の値 c e を越えていな いと判定された場合には、 S 5 3 2 4に進み、 スピン判定結果を、 スピ ンなしと判定する。 このようにスピンの有無を判定することで、 足平 2 2などの撓み (弾性変形) によって、 o supz の絶対値がある所定の値 ωβ を超えたようなときに、 スピン有りと誤判定されるような事態が回 避される。
以上のごとく S 5 2 1 0の処理を完了した後、 S 5 2 1 2に進み、 並 進滑り判定サブルーチンが実行される。
並進滑り判定サブルーチンでは、 そのフローチャートである図 8 1の S 5 4 1 0に進み、 実上体姿勢角速度、 加速度検出値および関節角指令 (検出値) を基に支持脚足平 2 2の対地並進速度水平成分 Vsupxyを求 める。 次いで S 5 4 1 2に進み、 足平 2 2の 6軸力センサ 5 0の検出値 (実床反力) を基に、 支持脚に作用している実床反力水平成分の時間的 な変化率である支持脚床反力水平成分の変化率 dFsupactxy/dt を求め る。 次いで S 5 4 1 4に進み、 前記支持脚足平の対地並進速度水平成分 Vsupxy の絶対値がある所定の値 Ve を越えているか否かを判定する。 越えている場合には、 S 5 4 1 6に進み、 前記支持脚床反力水平成分の 変化率 dFsupactxy/dt を前記支持脚足平 2 2の対地並進速度水平成分 Vsupxy で割って符号を反転した値である、 支持脚の見かけせん断ばね 定数 Ksups(=(— dFsupactxy/dt)/Vsupxy)を求める。 次いで S 5 4 1 8 に進み、 Ksups がある所定の値 Ksupsmin よりも小さいか否かを判定 し、 小さい場合には、 S 5 4 2 0に進み、 並進滑り判定結果を、 並進滑 りありと判定し、 そうでない場合には、 S 5 4 2 2に進み、 並進滑り判 定結果を、 並進滑りなしと判定する。 また、 S 5 4 1 4において、 前記 支持脚足平の対地並進速度水平成分 Vsupxy の絶対値が前記所定の値 Ve を越えていないと判定された場合には、 S 5 4 2 4に進み、 並進滑 り判定結果を、 並進滑りなしと判定する。 このように並進滑りの有無を 判定することで、 足平 2 2などの撓み (弹性変形) によって、 K sups の絶対値がある所定の値 Ksupsmin .を超えたようなときに、 並進滑り 有りと誤判定されるような事態が回避される。
以上のごとく S 5 2 1 2の処理を完了した後、 S 5 2 1 4に進み、 滑 り振動判定サブルーチンが実行される。
滑り振動判定サブルーチンでは、 そのフローチャートである図 8 2の S 5 5 1 0に進み、 足平 2 2の 6軸力センサ 5 0の検出値 (並進力水平 成分および またはモーメン卜鉛直成分) をバンドパスフィルタに通す ことにより、 滑り振動成分を抽出する。 尚、 .足平 2 2の 6軸力センサ 5 0の検出値の代わりに、 足平 2 2にョーレートセンサ、 加速度センサ等 を備えて、 その検出値を用いても良い。 また、 バンドパスフィル夕の通 過周波数帯は、 足平 2 2の足底や床面の材質などに応じてあらかじめ設 定される。 次いで S 5 5 1 2に進み、 検出された滑り振動成分の大きさ の絶対値がある所定の値 Ampe を越えているか否かを判定する。 越え ている場合には、 S 5 5 1 4に進み、 滑り振動判定結果を、 滑り振動あ りと判定し、 そうでない場合には、 S 5 5 1 6に進み、 滑り振動判定結 果を、 滑り振動なしと判定する。
以上のごとく S 5 2 1 4の処理を完了した後、 S 5 2 1 6に進み、 ス ピン判定結果がスピンあり、 または並進滑り判定結果が並進滑りあり、 または滑り振動判定結果が滑り振動ありであるならば、 S 5 2 1 8に進 み、 総合判定結果である滑り判定結果を滑りありと決定し、 そうでない ならば、 S 5 2 2 0に進み、 総合判定結果である滑り判定結果を滑りな しと決定する。 以上が、 滑り判定部 1 1 4の処理である。
図 7 7に本実施形態における歩容生成装置 1 0 0のメインルーチン処 理のフローチャートを示す。
同図 7 7おいて、 S 2 3 1 0から S 2 3 3 2までは、 第 3参考例のフ 口—チャート (図 6 0 ) の S 2 0 1 0から S 2 0 3 2までの処理と同一 の処理が行なわれる。
次いで S 2 3 3 4に進み、 修正歩容瞬時値決定サブルーチンが実行さ れる。
本実施形態では、 修正歩容瞬時値決定サブルーチンでは、 元歩容に近 づくように目標 ZMPおよび逆位相腕振り復元角加速度パターンを修正 しつつ、 修正された目標 Z MPまわりにモデル操作床反力モーメント (水平成分および鉛直成分) が付加的に発生するように修正歩容瞬時値 が決定される。 ただし床反力許容範囲を滑り判定結果に応じて変更され この点が第 3参考例と相違する。
図 7 8に修正歩容瞬時値決定サブルーチンのフローチヤ一トを示す。 修正歩容瞬時値決定サブルーチンでは、 まず S 5 1 0 0から S 5 1 1 4 までの処理が、 第 3参考例の修正歩容瞬時値決定サブルーチンである図 6 1の S 2 1 0 0から S 2 1 1 2と同様に実行される。 次いで、 S 5 1 1 6に進み、 前記滑り判定部 1 1 4による滑り判定結果が滑りありであ るか否かを判定し、 前記滑り判定結果が滑りありの場合には、 S 5 1 1 8に進み、 許容範囲低減率 att を徐々に 0に近づける (実質的に連続的 に減少させる)。 尚、 許容範囲低減率 att は 0から 1までの値をとるも のとする。 S 5 1 1 6において前記滑り判定結果が滑りなしと判定され た場合には、 S 5 1 2 0に進み、 許容範囲低減率 att を徐々に 1に近づ ける (実質的に連続的に増加させる)。
次いで S 5 1 2 2に進み、 S 5 1 1 0および S 5 1 1 2で決定した床 反力水平成分と床反力モーメント鉛直成分の許容範囲の上限値および下 限値である Fxmin, Fxmax, Mzmin および Mzmax にそれぞれ許容範 囲低減率 att を乗じることにより、 床反力水平成分許容範囲と床反カモ ーメント鉛直成分許容範囲を狭める。 以降、 この S 5 1 2 2で決定され る床反力水平成分許容範囲および床反力モーメント鉛直成分許容範囲を 総称的に最終的床反力許容範囲という。 尚、 当然のことながら低減率が 1の場合には、 最終的床反力許容範囲は、 S 5 1 1 0および S 5 1 1 2 で決定した床反力水平成分と床反力モーメント鉛直成分の許容範囲 (以 下、 これらを元の床反力許容範囲ということがある) に一致し、 該元の 床反力許容範囲から狭まらない。
図 8 3に、 滑り判定結果に応じて、 許容範囲低減率 att、 最終的床反 力許容範囲 (具体的には、 床反力水平成分許容範囲および床反力モ一メ ント鉛直成分許容範囲) が変化する様子の例を示す。
滑りが発生した場合には、 グリップ状態に早急に回復しないとロポッ ト 1が転倒する恐れが生じるので、 滑りが発生したと判定されたならば. 最終的床反力許容範囲をすばやく狭めるようにした方が良い。 ただし、 急激過ぎると、 歩容の加速度変化が大きくなり過ぎ、 衝撃などが生じる ので、 急激過ぎない適切な値にすべきである。
滑りがなくなったと判定されたならば、 最終的床反力許容範囲を元の 床反力許容範囲にすばやく戻すようにした方が良い。 最終的床反力許容 範囲が狭いままであると、 修正歩容が元歩容から大きくずれていってし まうからである。 ただし、 急激過ぎると、 歩容の運動の加速度変化が大 きくなり過ぎ、 衝撃などが生じて再び滑ってしまうので、 急激過ぎない 適切な値にすべきである。 次いで S 5 1 2 4に進み、 図 6 1の S 2 1 1 4と同様、 床反力モ一メ ント水平成分許容範囲と床反力モーメント鉛直成分許容範囲と床反力水 平成分許容範囲との条件を満足するように、 モデル操作床反力モーメン ト水平成分、 コンプライアンス制御用目標床反力モーメント (水平成分 および鉛直成分)、 上体水平加速度および上体姿勢傾斜角加速度および 逆位相腕振り角加速度を決定する。
次いで S 5 1 2 6から S 5 1 2 8まで進み、 図 6 1の S 2 1 1 6から S 2 1 1 8までと同様の処理が行われる。
上記のごとく修正歩容瞬時値決定サブルーチンが実行され、 次いで図 7 7の S 2 3 3 6に進み、 現在時刻 tを Δ tだけ増加して、 再び S 2 3 1 4に戻り、 歩容生成を続ける。
以上が、 本実施形態における歩容生成装置 1 0 0の処理である。
上記のごとく、 本実施形態においては、 床反力水平成分許容範囲およ び床反力モーメント鉛直成分許容範囲を滑り判定結果に応じて変更する ようにしたが、 床反力水平成分許容範囲および床反力モーメント鉛直成 分許容範囲のいずれか一方だけを変更するようにしても良い。
一般的に、 足平 2 2が床面上で平行に滑っている場合 (せん断方向に 滑っている場合) には、 スピン方向 (ョ一方向) のグリップ力も低下す る。 また逆に、 スピン方向 (ョ一方向) に滑っている場合には、 足平 2 2が床面上で平行に滑り易くなる。 したがって、 いずれかの滑りが検知 されたならば、 床反力水平成分許容範囲および床反力モーメント鉛直成 分許容範囲の両方を狭める ( 0にする) 方が滑りから回復する効果は高 い。
以上説明した第 1実施形態は、 本発明の第 3〜第 7発明の実施形態に なっている。 この場合、 第 1実施形態における床反力水平成分が制限対 象量、 上体姿勢傾斜角偏差およびノまたは上体姿勢傾斜角速度偏差がが ロボッ ト 1の状態量の偏差に相当する。 また、 第 1実施形態における歩 容生成用の床反力水平成分許容範囲 [Fxmin,Fxmax]が制限対象量の許 容範囲に相当する。 また、 発明における動力学モデルは、 図 1 2の動力 学モデルが相当する。 また、 図 7 7の S 2 3 3 4で決定される修正歩容 瞬時値の運動成分と床反力成分とがそれぞれ目標運動の瞬時値および目 標床反力の瞬時値に相当する。
前記第 1実施形態では、 歩容生成装置 1 0 0として前記第 3参考例の ものを用いたが、 第 3参考例の代わりに第 1、 第 2、 第 4〜第 7参考例 のいずれのものを用いても良い。
第 1参考例を用いる場合の実施形態では、 .例えば図 1 3の S 0 3 0で 今回歩容瞬時値を決定するときに、 そのサブルーチンである図 4 5の S 1 4 1 1 と S 1 4 1 2との間に図 7 8の S 5 1 1 6〜S 5 1 2 2の処理 を挿入すればよい。 このようにした実施形態 (第 2実施形態) は、 本発 明のうちの第 1発明、 第 2発明並びに第 5〜第 7発明の実施形態となる, この場合、 第 1実施形態における床反力水平成分が第 1発明における制 限対象量に相当し、 床反力鉛直成分が第 2発明における制限対象量に相 当する。 また、 第 1実施形態における歩容生成用の床反力水平成分許容 範囲 [Fxmin,FxmaX]が第 1発明における制限対象量の許容範囲に相当 し、 歩容生成用の床反力モーメント鉛直成分許容範囲 [Mzmin,Mzmax] が第 2発明における制限対象量の許容範囲に相当する。 また、 発明にお ける動力学モデルは、 図 1 2の動力学モデルが相当する。 また、 図 1 3 の S 0 3 0で決定される今回歩容瞬時値の運動成分が目標運動に相当す る。 また、 図 1 3の S 0 3 0の中で実行される図 4 6の S 1 0 0 4にお いて、 S 5 0 4, S 5 1 8 (図 2 6を参照) で仮に決定される運動が前 記第 1発明あるいは第 2発明における仮運動に相当する。
また、 第 2参考例を用いる場合の実施形態では、 例えば図 5 6の S O 3 0 3 2で今回歩容瞬時値を決定するときに、 そのサブルーチンである 図 5 7の S 3 4 1 1 と S 3 4 1 2との間に図 7 8の S 5 1 1 6〜S 5 1 2 2の処理を挿入すればよい。 このようにした実施形態 (第 3実施形 態) は、 本発明のうちの第 3〜第 7発明の実施形態となる。 この場合、 第 3実施形態における床反力水平成分が制限対象量に相当し、 上体姿勢 傾斜角偏差および Zまたは上体姿勢傾斜角速度偏差が第 3及び第 4発明 におけるロボッ ト 1の状態量の偏差に相当する。 また、 第 3実施形態に おける歩容生成用の床反力水平成分許容範囲 [Fxmin,FXmax]が制限対 象量の許容範囲に相当する。 また、 発明における動力学モデルは、 図 1 2の動力学モデルが相当する。 また、 図 5 6.の S 3 0 3 4で決定される 今回歩容瞬時値の運動成分と床反力成分とが第目標運動の瞬時値、 目標 床反力の瞬時値に相当する。 なお、 第 3実施形態では、 床反力モーメン ト鉛直成分補償量許容範囲を滑りの発生の判断結果に応じて可変的に設 定するようにしてもよい。
また、 第 4参考例を用いる場合の実施形態では、 例えば図 6 5の S 3 5 3 6の処理 (フルモデルを用いた歩容の修正処理) を実行するときに. 図 7 8の S 5 1 1 6〜 S 5 1 2 2の処理を実行して、 許容範囲を可変的 に設定するようにすればよい。 このようにした実施形態 (第 4実施形 態) は、 本発明のうちの第 3〜第 7発明の実施形態となる。 この場合、 第 4実施形態における床反力水平成分が制限対象量に相当し、 上体姿勢 傾斜角偏差および または上体姿勢傾斜角速度偏差がロポッ ト 1の状態 量の偏差に相当する。 また、 第 4実施形態における歩容生成用の床反力 水平成分許容範囲 [Fxmin,Fxmax]が制限対象量の許容範囲に相当する' また、 図 6 5の S 3 5 3 6で修正された歩容の運動成分および床反力成 分がそれぞれ第 3発明及び第 4発明における目標運動の瞬時値、 目標床 反力の瞬時値に相当する。 また、 発明における動力学モデルは、 逆フル モデル (各摂動モデル 2 0 2, 2 0 3 , 2 3 1を含む) が相当する。 また、 第 5参考例を用いる場合の実施形態では、 例えば図 6 5の S 3 5 3 6の処理 (フルモデルを用いた歩容の修正処理) を実行するときに 図 7 8の S 5 1 1 6〜S 5 1 2 2の処理を実行して、 許容範囲を可変的 に設定するようにすればよい。 このようにした実施形態 (第 5実施形 態) は、 本発明のうちの第 3〜第 7発明の実施形態となる。 この場合、 第 5実施形態における床反力水平成分が制限対象量に相当し、 上体姿勢 傾斜角偏差およびノまたは上体姿勢傾斜角速度偏差がロポッ ト 1の状態 量の偏差に相当する。 また、 第 5実施形態における歩容生成用の床反力 水平成分許容範囲 [Fxmin,Fxinax]が制限対象量の許容範囲に相当する, また、 図 6 5の S 3 5 3 6で修正された歩容の運動成分および床反力成 分がそれぞれ第 3発明及び第 4発明における目標運動の瞬時値、 目標床 '反力の瞬時値に相当する。 また、 発明における動力学モデルは、 フルモ デル (各摂動モデル 2 0 2 , 2 0 3, 2 3 1を含む) が相当する。
なお、 第 6および第 7参考例を用いる場合の実施形態は、 上記第 5実 施形態と同様であり、 第 3〜第 7発明の実施形態となる。 また、 滑りの判定方法としては、 前記第 1実施形態において挙げた方 式以外にも、 以下のようないずれを用いても良い。 あるいはこれらの結 果を総合的に (論理和、 積などの論理演算を用いてい) 判断しても良い, 1 ) 角速度検出器などを基に床に対する足平 2 2の角速度を求め、 この 値の絶対値がある所定の値を越えたら、 滑りが発生と判定する。
2 ) いずれかの脚体 2の床反力モーメントの絶対値がある所定の値を越 えたら、 滑りが発生と判定する。 3 ) 全床反力モーメント (両脚体 2 , 2の床反力の合力のモーメント) の絶対値がある所定の値を越えたら、 滑りが発生と判定する。
4 ) 両脚支持期において、 全床反力モーメントの変化率と上体姿勢角速 度偏差との比に (一 1 ) を乗じた値がある所定の値 (両脚接地時ねじり 剛性) よりも小さいならば、 滑りが発生と判定する。
5 ) 視覚センサや空間フィルタ等を用いた非接触型の対地速度、 角速度 検出器、 あるいは接触型の対地速度、 角速度検出器の検出値 (推定値) の絶対値がある所定の値を越えたならば、 滑りが発生と判定する。
次に、 前記第 1〜第 7参考例およびこれを用いる実施形態 (前記第 1 〜第 5実施形態を含む) に係る変形態様を以下に説明する。
前記第 2〜第 7参考例及びこれを用いる実施形態では、 補償全床反力 モーメン卜水平成分およびを補償全床反力モーメント鉛直成分を決定す るようにしたが、 補償全床反カモ一メント水平成分および補償全床反力 モ一メント鉛直成分のいずれか、 もしくは両者を 0に設定しても良い。 ただしこの場合には、 フルモデル補正は、 単に単純化モデルによる目標 歩容の精度を高めるために用いられ、 フルモデルを用いて歩容を修正す ることによる上体姿勢傾斜復元効果および Zまたは上体ョ一角 (角速 度) 復元効果はなくなる。
前記第 4〜第 7参考例およびこれを用いる実施形態においては、 単純 化モデル 2 0 0による歩容生成 (単純化モデル歩容生成) には、 本願出 願人が先に提案した特開平 5 - 3 3 7 8 4 9号公報の第 1実施例、 第 2 実施例の歩容生成装置を用いても良い。 フルモデルによる補正量を小さ くすることができるので、 補正ざれた歩容が単純化モデル歩容から大き くずれることを防止できる。 前記第 2参考例およびこれを用いる実施形態においては、 補償全床反 力モーメント水平成分 Mdmdxy が床反力モーメント許容範囲水平成分 を越えると (第 4参考例以降およびそれを用いる実施形態においては、 補償全床反力モーメント水平成分 Mdmdxy とモデル操作床反力モ一メ ント水平成分との和が床反力モーメント許容範囲を越えると)、 コンプ ライアンス制御用目標床反力モーメント水平成分は、 床反力モーメント 水平成分許容範囲の上限値あるいは下限値になる。 但し、 補償全床反力 モーメント水平成分 Mdmdxy (第 4参考例以降およびそれを用いる実 施形態においては、 補償全床反力モーメント水平成分 Mdmdxy とモデ ル操作床反力モーメント水平成分との和) が床反力モーメント水平成分 許容範囲を越えていても、 補償全床反力モーメント水平成分 Mdmdxy (第 4参考例以降およびそれを用いる実施形態においては、 補償全床反 力モーメント水平成分 Mdmdxy とモデル操作床反力モーメン卜水平成 分との和) の増加もしくは減少に応じてコンプライアンス制御用目標床 反力モーメント水平成分も増加もしくは減少するようにしても良い。 コ ンプライアンス制御用目標床反力モーメン卜水平成分が床反力モーメン ト水平成分許容範囲に接近すると、 コンプライアンス制御によって制御 される実床反力モ一メント水平成分が目標よりも少なめになる傾向があ り、 このためコンプライアンス制御用目標床反カモ一メント水平成分が 少々許容範囲を越えても、 すぐには、 足平 2 2の本来の接地感を低下さ せたり、 足平 2 2の底面が浮いてしまうような不具合が発生しない場合 が多いからである。
同様の理由により、 床反力モーメント水平成分許容範囲をいわゆる支 持多角形で表される Z M P存在可能範囲 (厳密な表現では、 実床反力作 用点の存在許容範囲) をモーメン小水平成分に換算して得られる許容範 囲を越えて設定しても良い。 コンプライアンス制御によつて発生する床反力モ一メント水平成分に 過度に期待すると、 上記のごとく足平 2 2の本来の接地感を低下させた り、 足平 2 2の底面が浮いてしまうような不具合が発生する。 よって、 床反力モーメント水平成分許容範囲は、 姿勢制御がコンプライアンス制 御に期待する実床反力モーメント水平成分の許容範囲であると言える。 床反力モーメント水平成分許容範囲は、 歩容パラメータからのみなら ず、 検出された実床反力にも基づいて決定しても良い。 また、 階段での エッジ位置検出値など、 足平 2 2の接地領域の検出値にも基づいて決定 してもよい。
一方、 コンプライアンス制御によって発生する床反力モーメント鉛直 成分に過度に期待すると、 スピンしてしまうような不具合が発生する。 よって、 床反力モーメント鉛直成分許容範囲は、 姿勢制御がコンプライ アンス制御に期待する実床反力モーメント鉛直成分の許容範囲であると 言える。
前記第 2参考例およびこれを用いる実施形態の図 5 6の S 3 0 2 8に おける今回歩容パラメ一夕の修正 (目標 Z M Pの修正) を制御周期毎に 実行するように、 メインフローチャートの処理を変更しても良い。
修正歩容 (目標歩容) が元歩容より大きくずれてしまう場合 (発散し てしまう場合) には、 次回歩容の歩容パラメ一夕修正をする頃に既に、 大きくずれて過ぎてしまい (発散し過ぎてしまい)、 次回歩容の歩容パ ラメ一夕修正だけでは、 継続的長期的に安定な目標歩容を生成すること が困難になる。 今回歩容パラメ一夕の修正 (目標 Z M Pの修正) を制御 周期毎に実行することによって、 この問題をかなり解決することができ る。
さらには、 元歩容からのずれ具合によって、 今回歩容の足平着地位置 や着地時刻などを制御周期毎に変更しても良い。 具体的には、 S 3 0 2 0から S 3 0 3 0までの処理を制御周期毎に実 行するように処理フローを変更しておき、 S 3 0 2 0において、 次回歩 容支持脚座標系 (次回歩容支持脚座標系は、 次の足平着地位置姿勢に対 応)、 次次回歩容支持脚座標系 (次次回歩容支持脚座標系は、 次の次の 足平着地位置姿勢に対応)、 今回歩容周期 (今回歩容周期は、 次の足平 着地時刻に対応) および次回歩容周期 (次回歩容周期は、 定常歩容の周 期に相当) の少なくともいずれかを、 S 3 0 2 8における今回歩容パラ メータの修正 (特に目標 Z M Pの修正) が小さくなるように (すなわち、 今回歩容の安定余裕が高く維持さ'れるように)、 適宜変更すれば良い。
さらには、 上記以外の歩容パラメ一夕を変更しても良い。
また、 修正歩容の元歩容からのずれは、 単純化モデル上体姿勢傾斜角 補正用モーメント Mr、 単純化モデル上体水平位置補正用モーメント Mp および単純化モデル逆位相腕振り角補正用モーメント Ma などから 動力学モデルを用いて推定することができるので、 Mr, Mp および Ma 'に応じてモデルの挙動ずれを推定し、 推定された挙動ずれを基に、 歩容 パラメータを修正してもよい。 あるいは、 Mr, Mpおよび Maと歩容パ ラメ一夕の修正量の適正値との関係をあらかじめ求めてマツプ化してお いて、 Mr, Mp および Ma に応じてマップを基に歩容パラメータの修 正量を決定してもよい。
また、 他の実施形態 (第 4〜第 7参考例を用いる実施形態) に対して も上記と同様に、 処理フロ一を変更して良い。
復元条件には、 前記した条件以外にも、 関節角が許容範囲を越えてい ないか、 脚などの干渉がないか、 関節角速度、 トルクが過大でないかな どのキネマティクス条件、 ダイナミクス条件を加えても良い。
また、 これに伴って、 前述したごとく、 今回歩容パラメ一夕の修正 (目標 Z M Pあるいは着地位置、 時刻などの修正) を制御周期毎に実行 するようにメインフローチヤ一卜の処理を変更した場合には、 今回歩容 の安定余裕が高く維持されるように適宜変更される歩容パラメ一夕の値 が、 適切な値になるように (ある制約条件を満足するように) すること も、 復元条件のひとつに加えても良い。
歩容の切り変わり目で決定された (読み込まれた) 着地位置、 着地時 刻は、 上位の制御装置からの指示 (歩行計画決定部やオペレータからの 指示など。 これを当初の要求と呼ぶ。) によって決定されるので、 修正 歩容の着地位置、 着地時刻は、 できる限り歩容の切り変わり目で決定さ れた (読み込まれた) 着地位置、 着地時刻に戻るべきである。 そこで、 歩容の切り変わり目で決定された (読み込まれた) 着地位置、 着地時刻 を記憶し、 修正歩容の着地位置、 着地時刻が、 記憶された着地位置、 着 地時刻にできる限り一致または近づく ことも復元条件に加えても良い。 ただし、 実は、 前記復元条件 4、 5および 6によって、 修正歩容の着地 位置、 着地時刻は、 できる限り歩容の切り変わり目で決定された (読み 込まれた) 着地位置、 着地時刻に徐々に戻る作用が働くので、 あえて追 加する必要はない。
また、 状況の変化に対応して、 当初の要求を変更し、 変更した要求を 満足する歩容パラメ一夕に、 上記のごとく歩容の安定余裕を高く維持す るために適宜変更される歩容パラメ一夕が、 できる限り一致または近づ くことを復元条件に加えても良い。 この場合、 前記前記復元条件 4、 5 および 6は削除するべきである。
前述した各種の復元条件を満足するモデル上体水平位置安定化床反力 モーメントとモデル上体姿勢傾斜角安定化床反力モーメントの決定法に は、 制約条件下で最適値を求めるための線形計画法 (シンプレックス法 など) や探索法を用いれば良い。 または、 フアジ一推論を用いても良い, また、 着地位置を変更する場合には、 歩行環境の障害物なども考慮し なければならない状況も考えられる。 このような状況にも対処できるよ うにするためには、 環境認識や行動決定などの人工知能の分野に属する 処理も加えて、 修正歩容を決定すべきである。
モデル逆位相腕振り角安定化床反力モーメントの決定法も同様である, 前記第 4〜第 6参考例およびこれを用いる実施形態における制限手段 (制限処理部) の前後のブロック図は、 例えば本願出願人による P C T / J P 0 2 / 1 3 5 9 3で示したように、 等価変換あるいは近似変換し ても良い。
この場合、 上体水平位置補正用モデル安定化モーメント Mpf を hで 割った値をローパスフィル夕に通した値を補正目標床反力水平成分 (フ ルモデル床反力水平成分 Ffull) から減じた値が上記 P C T出願におけ るバイアス推定値 destm に相当する。 した.がって、 例えば、 前記第 5 〜第 7参考例およびこれを用いる実施形態におけるゲイン Kc の積分を 時定数 1 /Kc の 1次遅れをフィ―ドバック要素としたポジティブフィ一 卞バック系に置き換えたりして、 図 8 4のように、 近似変換をしても良 レ 。 この例では、 第 5〜第 7参考例およびこれを用いる実施形態におけ る Mpf演算部 2 1 5が図示の如く近似変換されている。
逆位相腕振り角補正用摂動モデルモーメントも、 同様に等価変換ある いは近似変換して求めるようにしてもよい。
前記第 4参考例およびこれを用いる実施形態においては、 前記逆位相 腕振り角補正用摂動モデルモーメントは、 図 7 0に示す機能ブロック図 の代わりに、 図 8 5に示す機能ブロック図の処理を行うようにしても良 い。 以下に説明すると、 図 7 0では、 逆位相腕振り角補正用モデルが復 元する動作によって発生するモ一メント鉛直成分までも含めて、 床反力 モーメント鉛直成分許容範囲を越えるか否かが判定されて、 逆位相腕振 り角補正用モデルの挙動が決定されたが、 図 8 5に示す機能ブロック図 の処理では、 逆位相腕振り角補正用モデルが復元する動作によって発生 するモーメント鉛直成分は、 床反力モーメント許容範囲を越えるか否か を判定する上で無視される。
図 8 5に示す機能ブロック図の処理を詳細に説明すると、 フルモデル 床反力モーメント鉛直成分 Mfullz と上体水平位置補正に起因する床反 力モーメント鉛直成分摂動量 Mpz と補償全床反力モーメント鉛直成分 Mdmdz との和を無制限時補正目標床反力モーメント鉛直成分 Minz と し、 これに図 7 0と同様に制限を加え.ることにより、 制限時補正目標床 反力モーメント鉛直成分 Mltdz を求める。 制限時補正目標床反力モー メント鉛直成分 Mltdz は、 コンプライアンス制御用目標床反力モーメ ント鉛直成分として出力される。 さらに、 制限時補正目標床反力モーメ ント鉛直成分 Mltdz から無制限時補正目標.床反力モーメント鉛直成分 Minz を減じた値、 すなわち、 無制限時補正目標床反力モーメント鉛直 成分 Minz のうちの床反力モーメント鉛直成分許容範囲を越えた分であ る Maa を求める。 次いで、 補正用摂動モデル逆位相腕振り角 Θ ca の前 回値を基に、 P D制御等を用いた逆位相腕振り角補正用摂動モデル制御 則によって逆位相腕振り角補正用モデル安定化モーメ ン ト要求値 Mafdmd を求め、 これを Maa から減じた値 (モーメント) を逆位相腕 振り角補正用摂動モデルに入力し、 補正用摂動モデル逆位相腕振り角 0 caを得る。
Maa から補正用摂動モデル逆位相腕振り角 0 ca までの伝達関数は、 ローパスフィル夕の伝達関数になる。
すなわち、 言い換えると、 逆位相腕振り角補正用モデルによる床反力 モーメント鉛直成分のキャンセル (超過防止動作) を行わない場合に発 生する床反力モーメント鉛直成分 (無制限時床反力モーメント鉛直成 分) を、 床反力モーメント鉛直成分許容範囲を越えないように制限する 制限手段 (飽和手段) に通すことにより、 コンプライアンス制御用目標 床反カモ一メント鉛直成分 (制限時補正目標床反カモ一メント鉛直成分 Mltdz) を得ると共に、 無制限時床反力モーメント鉛直成分を、 床反力 モーメント鉛直成分許容範囲を越えた分を求める不感帯手段に通した値 を口一パスフィル夕 (すなわちハイカッ トフィルタ) に通すことにより 補正用摂動モデル逆位相腕振り角 0 caを得る。
前記第 1および第 2参考例並びにこれを用いる実施形態においては、 本願出願人が提案した特開平 5— 3 3. 7 8 4 9号公報に記載の構成に加 え、 床反力の並進力水平成分が床反力水平成分の許容範囲を越えないよ うに、 床反力水平成分と目標 Z M Pまわりの床反力モーメント水平成分 との発生の割合が異なる 2つの運動モードの挙動、 例えば、 上体並進運 動モ一ドの上体並進加速度と上体傾斜運動モードの上体姿勢傾斜角加速 度が決定されるので、 実ロボッ ト 1を、 修正目標歩容 (最終的に歩容生 成装置 1 0 0が出力する歩容) に収束させることができる。 つまり、 実 口ポッ ト 1の姿勢を安定化させることがでぎる。
また、 コンプライアンス制御用目標床反力モーメント水平成分とモデ ル操作床反力モーメント水平成分の差がトータルの復元力になる。
また、 モデル操作床反力モーメント水平成分は、 Z M P存在可能範囲 を無視していかなる値でも取ることが可能であるので、 非常に高い姿勢 復元力を発生することができる。
また、 床反力の並進力水平成分が、 床反力水平成分の許容範囲を越え ないので、 口ポッ ト 1のスリップを防止できる。
また、 床反力モーメント鉛直成分 (コンプライアンス制御用目標床反 力モーメント鉛直成分) しいては実床反力モーメント鉛直成分が、 床反 力モーメント鉛直成分の許容範囲を越えないので、 ロボッ ト 1のスリツ プをより一層防止できる。 また、 床反力鉛直成分が 0の時期、 すなわち、 両脚体 2, 2がいずれ も接地していない時期では、 上体並進運動モードに依存せずに上体回転 運動モードに依存した姿勢復元が行われ、 床と足平 2 2の間の摩擦力に 依存せずに効果的に姿勢復元が行われる。
また、 実床反力モーメントが過大になることを防止するので、 足平 2 2の本来の接地性が低下したり、 足平 2 2の底面が浮いてしまうような 不具合が発生することを防止または抑制することができる。
また、 1歩分の修正歩容の終端状態を新たな初期状態とした新たな今 回歩容が、 定常歩容に漸近するように、 今回歩容パラメ一夕が決定また は変更されるので、 継続的に (長期的に) 安定性が保証された歩容を生 成し続けることができる。
前記第 3参考例およびこれを用いる前記第 1実施形態においては、 上 記のごとく、 元歩容と修正歩容が同時に生成され、 修正歩容は、 実ロボ ッ ト 1の姿勢安定化のために修正されると共に、 コンプライアンス制御 により姿勢復元に必要な床反力モーメント (水平成分及び鉛直成分) を 発生してもまだ余裕がある場合には、 この余裕を用いて、 可能な範囲で 元歩容に収束するようにしている。 このため、 第 2参考例の効果に加え. 当初設定した元歩容に近い、 すなわち、 当初の要求通りの歩容に近い歩 容を生成することができる。 したがって、 あらかじめ設定された移動経 路がある場合には、 移動経路から大きくずれることを防止できる。 また, 修正歩容の上体姿勢角が元歩容 (当初決定した歩容) の上体姿勢角に収 束することを、 修正歩容の上体水平位置が元歩容 (当初決定した歩容) の上体水平位置に収束することよりも優先したので、 上体姿勢角が大き く変動することを抑制することができる。
前記第 1〜第 7参考例およびこれを用いる実施形態では、 床反力水平 成分許容範囲を設定するようにしたが、 床反力水平成分とロボッ ト全体 重心水平加速度は、 比例関係にあるので、 前記各実施形態における床反 力水平成分およびその許容範囲の代わりに、 ロポッ ト全体重心水平加速 度およびその許容範囲を用いても構わない。 また、 ロポッ ト全体重心水 平軌道に近い挙動をする部位の水平加速度軌道に関するパラメ一夕を明 示的に設定しても構わない。 例えば、 脚体 2, 2の質量が上体 3の質量 に比べ十分に小さい場合には、 上体水平加速度軌道とロボッ ト 1の全体 重心水平加速度軌道は、 ほぼ同じか比例関係にあるので、 床反力水平成 分およびその許容範囲の代わりに上体水平加速度およびその許容範囲を 用いても良い。
さらに、 斜面移動時 (傾斜した床面で口ポッ ト 1を移動させるとき) の歩容生成においては、 床反力水平成分許容範囲'や全体重心加速度水平 成分の許容範囲の代わりに、 並進床反力の床面平行成分 (床面に平行な 成分)、 すなわち摩擦力の許容範囲、 あるいは全体重心加速度の床面平 行成分 (これは重力成分を除けば摩擦力に比例する) の許容範囲を設定 するようにしてもよい。 例えば、 並進床反力の床面平行成分 (摩擦力) の許容範囲を設定する場合に関して説明 (この説明は全体重心加速度の 床面平行成分の許容範囲を設定する場合でも同様である) すると、 該摩 擦力は、 床面の水平面に対する傾斜角度を 0 f (ロボッ ト 1の進行方向 に向かって前下がり斜面の場合を正とする) とすると、 次式 c 7 2の関 係が成立する。 従って、 前記実施形態と同様のアルゴリズムに歩容を生 成する場合、 この式 c 7 2の関係を用いて、 摩擦力許容範囲を床反力水 平成分許容範囲に変換することで、 該床反力水平成分許容範囲を設定す るようにすればよい。 なお、 この場合、 式 c 7 2の床反力鉛直成分には, 目標床反力鉛直成分を用いればよい。 摩擦力 =床反力水平成分 * cos( 0 f)—床反力鉛直成分 * sin( 0 f) …式 c 7 2 また、 斜面移動時 (傾斜した床面で口ポッ ト 1を移動させるとき) の 歩容生成においては、 床反カモ一メント鉛直成分許容範囲の代わりに、 床反力モーメントの床面法線方向成分、 すなわち摩擦力モーメントの許 容範囲を設定するようにしてもよい。 例えば、 該摩擦力モーメントは、 床面の水平面に対する傾斜角度を 0 f (口ポッ ト 1の進行方向に向かつ て前下がり斜面の場合を正とする) とすると、 次式 c 7 3の関係が成立 する。 従って、 前記実施形態と同様のアルゴリズムに歩容を生成する場 合、 この式 c 7 3の関係を用いて、 床反カモ一メント鉛直成分と—床反 力モーメント水平成分から摩擦カモ一メントを算出し、 この値が摩擦力 モーメントの許容範囲を越えないように処理を変更すれば良い。 摩擦力モーメント =床反力モーメント鉛直成分 * cos( 0 f)
+床反力モーメント水平成分 * sin( Θ f)
…式 c 7 3 また、 前記第 1参考例に関する変形態様で説明した如く、 床反力水平 成分と目標 Z M Pまわりの床反力モーメント水平成分とを適切な値にす るために、 前記の実施形態では、 上体傾斜モードと上体並進モードとの 2つの運動モードを用いたが、 これら以外の運動モードを用いても良い, この場合、 運動モードのひとつが床反力水平成分を発生しない運動モー ドである必要もない。 いかなるモードの組み合わせであっても、 床反力 水平成分と目標 Z M Pまわりの床反カモ一メントの発生の割合が異なる 2つの運動モードを用いさえすれば、 上記例のように、 任意の床反力水 平成分と目標 Z M Pまわりの床反力モーメントとを発生させることがで きるからである。
また、 上体姿勢以外の運動モードを用いても良い。 ただし、 なるべく 小さい変位で大きな床反力水平成分または目標 Z M Pまわりの床反カモ ーメントが発生できる運動モ一ドを選ぶべきである。
例えば、 左右の腕を同一回転方向に振りまわす運動モード、 接地して いない (空中に存在する) 足平の位置を摂動させる運動モードでも良い ただし、 遊脚軌道を摂動させる場合には、 着地位置が変わらないように 着地直前までには、 摂動量を実質的に. 0に戻すべきである。
また、 3つ以上の運動モードを用いても良い。
また、 選んだモードのうちの少なくとも 2つは、 床反力水平成分と目 標 Z M Pまわりの床反力モーメントとの発生比率が、 互いに異なるもの である必要がある。 そうでないと、 一般的に連立方程式の解がなくなる からである。
さらにできる限り、 床反力水平成分をあまり変化させないで目標 Z M Pまわりの床反力モ一メントを十分に大きぐ変化させることができる運 動モードと、 目標 Z M Pまわりの床反カモ一メントをあまり変化させな いで床反力水平成分を十分に大きく変化させることができる運動モード とを組み合わせることが望ましい。
言いかえると、 全体重心をあまり変化させないで角運動量を十分に大 きく変化させることができる運動モード 、 角運動量をあまり変化させ ないで全体重心を十分に大きく変化させることができる運動モードとを 組み合わせることが望ましい。 運動モードの変位が小さくなるからであ る。
床反力モーメント鉛直成分を適切な値にするために、 前記の実施形態 では、 逆位相腕振りモードを用いたが、 これら以外の運動モードを用い ても良い。 例えば、 前記第 1参考例の変形態様について説明した如く、 上体ョ一回転モードを用いたり、 上体ョ一回転モ一ドと逆位相腕振りモ 一ドとを併用しても良い。
また、 床反力モーメント鉛直成分を適切な値にするために用いられる 運動モードが床反力水平成分および床反カモ一メント水平成分を発生し ない運動モードである必要もない。 例えば、 遊脚を前後に振る運動モー ドを用いても良い。 その運動モー によって発生した床反力水平成分お よび床反力モーメント水平成分は、 上体傾斜モードと上体並進モードと の 2つの運動モードを調整することによって、 打ち消すことができるか らである。
フルモデルを用いる参考例および実施形態では、 前記単純化モデルと して、 前記実施形態に用いた動力学モデル (図 1 2のモデル) 以外にも 以下のモデルを用いても良い。
1 ) 図 4 9に示したように複数のリンクに質点を設定した非線形なモデ ル (多質点モデル)
2 ) 本願出願人による P C T公開公報 WO/.02 40224に示された 3質 点モデル
3 ) 上体にのみ質量がある 1質点モデル
4 ) 全体重心まわりの角運動量変化によって生じる慣性力のモ一メント を無視したモデル
5 ) 重力と慣性力との合力 (または床反力) と上体並進運動との関係を 表す部分モデルと、 上記合力と上体回転運動の関係を表す部分モデルを 分離して持つ分離型モデル。 例えば、 図 1 2に示す質点は、 上記合力と 上体並進運動との関係を表す部分モデルであり、 図 1 2に示すフライホ ィールは、 上記合力と上体回転運動との関係を表す部分モデルである。 ただし、 単純化モデルに単純化モデル上体姿勢傾斜角補正用モーメン トが加えられる参考例および実施形態においては、 上記 2 )、 3 )、 およ び 4 ) のモデルを用いることはできない。
尚、 フルモデルは、 基本的には、 単純化モデルよりもより近似精度の 高い動力学モデルを用いることが好ましいが、 単純化モデルと同等の近 似精度の動力学モデルを用いてもよい。
また、 前述した各実施形態において、 ブロック線図、 フローチャート およびアルゴリズムなどは、 演算処理順序を変えるなどの等価変形をし ても良い。 また、 適宜ローパスフィルタを揷入しても良い。 ' また、 前記各実施形態を 2足移動口.ポッ トに関して説明してきたが、 1足もしくは 3足以上の多脚ロポッ トにも本発明を適応することができ る。 産業上の利用可能性
以上のように本発明は、 2足移動ロボッ ト等の脚式移動ロポッ 卜と床 面との摩擦力が小さくなるような状況でも、 口ポッ トの滑りの発生を抑 制しつつ、 該ロポッ トの姿勢を安定に保ち、 該ロポッ トを円滑に移動さ せることができるものとして有用である。

Claims

請 求 の 範 囲
1 . 上体から延設された複数の脚体を運動させて移動する脚式移動ロボ ッ 卜の目標歩容を生成し、 その目標歩容に追従するようにロポッ 卜の動 作を制御する制御装置において、
前記目標歩容に追従して動作している前記ロボッ トの滑りの発生を判 断する滑り判断手段と、
前記ロボッ トに作用させる並進床反力の水平成分又は該並進床反力の 床面平行成分又は該ロボッ トの全体重心加速度の水平成分又は該全体重 心加速度の床面平行成分を制限対象量として、 該制限対象量の許容範囲 を前記滑り判断手段の判断結果に応じて可変的に設定する許容範囲設定 手段と、
所定の動力学モデル上で前記ロボッ トに作用する重力と慣性力との合 力が所定の動力学的平衡条件を満たすように前記目標歩容の仮運動を決 定する仮運動決定手段と、
' 前記目標歩容の仮運動により定まる前記制限対象量が前記許容範囲を 逸脱したとき、 前記動力学的平衡条件を満たしつつ、 該制限対象量を前 記許容範囲内に制限するようにロポッ トの重心回りの角運動量変化率を 前記仮運動から変化させることにより該仮運動を修正して目標歩容の運 動を決定する仮運動修正手段とを備えたことを特徴とする脚式移動ロボ ッ 卜の制御装置。
2 . 上体から延設された複数の脚体を運動させて移動する脚式移動ロボ ッ トの目標歩容を生成し、 その目標歩容に追従するようにロポッ トの動 作を制御する制御装置において、
前記目標歩容に追従して動作している前記ロポッ トの滑りの発生を判 断する滑り判断手段と、 '
前記ロポッ トに作用させる床反力モーメントの鉛直成分又は該床反力 モーメントの床面法線方向成分又は該ロボッ トの角運動量変化率の鉛直 成分又は該角運動量変化率の床面法線方向成分を制限対象量として、 該 制限対象量の許容範囲を前記滑り判断手段の判断結果に応じて可変的に 設定する許容範囲設定手段と、
所定の動力学モデル上で前記ロポッ トに作用する重力と慣性力との合 力が所定の動力学的平衡条件を満たすように前記目標歩容の仮運動を決 定する仮運動決定手段と、
前記目標歩容の仮運動により定まる.前記制限対象量が前記許容範囲を 逸脱したとき、 前記動力学的平衡条件を満たしつつ、 該制限対象量を前 記許容範囲内に制限するようにロボッ トの角運動量変化率を前記仮運動 から変化させることにより該仮運動を修正して目標歩容の運動を決定す る仮運動修正手段とを備えたことを特徴とする脚式移動ロボッ トの制御
3 . 上体から延設された脚体を運動させて移動する脚式移動ロポッ トの '目標運動の瞬時値を、 少なくとも該ロボッ ト.の運動と床反力との関係を 表す動力学モデルを用いて逐次決定しつつ、 その決定した目標運動の瞬 時値に追従させるように前記ロポッ トの動作を制御する脚式移動ロボッ 卜の制御装置において、
前記目標運動に追従して動作しているロボッ 卜の滑りの発生を判断す る滑り判断手段と、
少なくとも前記ロボッ 卜に作用させる並進床反力の水平成分又は該並 進床反力の床面平行成分又は該ロポッ トの全体重心加速度の水平成分又 は該全体重心加速度の床面平行成分を制限対象量として、 該制限対象量 の許容範囲を前記滑り判断手段の判断結果に応じて可変的に設定する許 容範囲設定手段と、 '
少なくとも前記決定された目標運動の瞬時値に対応するロポッ 卜の姿 勢の目標状態量と該ロポッ トの姿勢の実状態量との偏差に基づいて、 前 記目標運動の新たな瞬時値を、 該新たな瞬時値に対応して前記動力学モ デルに基づき定まる前記制限対象量が前記許容範囲内に収まると共に前 記偏差が 0に近づくように決定する目標瞬時値決定手段とを備えたこと を特徴とする脚式移動ロポッ トの制御装置。
4 . 上体から延設された脚体を運動させて移動する脚式移動ロボッ トの 目標運動及び目標床反力の瞬時値を、 少なくとも該ロボッ トの運動と床 反力との関係を表す動力学モデルを用.いて逐次決定しつつ、 その決定し た目標運動及び目標床反力の瞬時値に追従させるように前記ロポッ トの 動作を制御する脚式移動ロボッ トの制御装置において、
前記目標運動及 目標床反力に追従して動作しているロポッ トの滑り の発生を判断する滑り判断手段と、
少なくとも前記ロボッ 卜に作用させる並進床反力の水平成分又は該並 進床反力の床面平行成分又は該ロボッ トの全体重心加速度の水平成分又 は該全体重心加速度の床面平行成分を制限対象量として、 該制限対象量 の許容範囲を前記滑り判断手段の判断結果に応じて可変的に設定する許 容範囲設定手段と、
少なくとも前記決定された目標運動及び目標床反力の瞬時値に対応す るロポッ トの姿勢の目標状態量と該ロポッ トの姿勢の実状態量との偏差 に基づいて、 前記目標運動及び目標床反力の新たな瞬時値を、 該新たな 目標運動の瞬時値に対応して前記動力学モデルに基づき定まる前記制限 対象量が前記許容範囲内に収まると共に前記偏差が 0に近づくように決 定する目標瞬時値決定手段とを備えたことを特徴とする脚式移動ロポッ 卜の制御装置。
5 . 前記滑り判断手段は、 少なくとも接地している脚体の先端部の対地 速度に基づき滑りの発生を判断することを特徴とする請求の範囲第 1項 〜第 4項のいずれか 1項に記載の脚式移動ロポッ 卜の制御装置。
6 . 前記滑り判断手段は、 少なくとも接地している脚体に作用する実床 反力の時間的変化率と該脚体の先端部の対地速度とに基づき、 該脚体の 見かけばね定数を求める手段を備え、 少なくとも該見かけばね定数に基 づき滑りの発生を判断することを特徴とする請求の範囲第 1項〜第 4項 のいずれか 1項に記載の脚式移動ロポッ 卜の制御装置。
7 . 前記滑り判断手段は、 少なくとも接地している脚体に作用する実床 反力を、 所定周波数の近傍範囲に周波数通過特性を有するバンドパスフ ィル夕に通したものに基づき滑りの発生を判断することを特徴とする請 求の範囲第 1項〜第 4項のいずれか 1項に記載の脚式移動ロボッ トの制 御装置。
PCT/JP2004/009477 2003-06-27 2004-06-28 脚式移動ロボットの制御装置 WO2005000536A1 (ja)

Priority Applications (5)

Application Number Priority Date Filing Date Title
US10/562,327 US7603234B2 (en) 2003-06-27 2004-06-28 Controller of legged mobile robot
KR1020057020794A KR101083414B1 (ko) 2003-06-27 2004-06-28 다리식 이동 로봇의 제어장치
EP04746946A EP1642689B1 (en) 2003-06-27 2004-06-28 Controller of legged mobile robot
JP2005511139A JP4181175B2 (ja) 2003-06-27 2004-06-28 脚式移動ロボットの制御装置
DE602004031425T DE602004031425D1 (de) 2003-06-27 2004-06-28 Steuerung für mobilen roboter mit beinen

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2003185930 2003-06-27
JP2003-185930 2003-06-27

Publications (1)

Publication Number Publication Date
WO2005000536A1 true WO2005000536A1 (ja) 2005-01-06

Family

ID=33549677

Family Applications (3)

Application Number Title Priority Date Filing Date
PCT/JP2004/009472 WO2005000534A1 (ja) 2003-06-27 2004-06-28 脚式移動ロボットの制御装置
PCT/JP2004/009477 WO2005000536A1 (ja) 2003-06-27 2004-06-28 脚式移動ロボットの制御装置
PCT/JP2004/009476 WO2005000535A1 (ja) 2003-06-27 2004-06-28 脚式移動ロボットの歩容生成装置および脚式移動ロボットの制御装置

Family Applications Before (1)

Application Number Title Priority Date Filing Date
PCT/JP2004/009472 WO2005000534A1 (ja) 2003-06-27 2004-06-28 脚式移動ロボットの制御装置

Family Applications After (1)

Application Number Title Priority Date Filing Date
PCT/JP2004/009476 WO2005000535A1 (ja) 2003-06-27 2004-06-28 脚式移動ロボットの歩容生成装置および脚式移動ロボットの制御装置

Country Status (6)

Country Link
US (4) US7603234B2 (ja)
EP (10) EP2206584B1 (ja)
JP (3) JP4181175B2 (ja)
KR (3) KR101083417B1 (ja)
DE (2) DE602004031425D1 (ja)
WO (3) WO2005000534A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111651900A (zh) * 2020-06-29 2020-09-11 中国有色金属工业昆明勘察设计研究院有限公司 一种昔格达地层岩质边坡稳定性计算的拟动力上限法

Families Citing this family (105)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7774177B2 (en) * 2001-06-29 2010-08-10 Honda Motor Co., Ltd. Exoskeleton controller for a human-exoskeleton system
US7650204B2 (en) * 2001-06-29 2010-01-19 Honda Motor Co., Ltd. Active control of an ankle-foot orthosis
JP3674789B2 (ja) * 2001-12-28 2005-07-20 本田技研工業株式会社 脚式移動ロボットの歩容生成装置
KR100946709B1 (ko) * 2001-12-28 2010-03-12 혼다 기켄 고교 가부시키가이샤 다리식 이동로봇의 보용 생성 장치
DE602004029256D1 (de) * 2003-06-27 2010-11-04 Honda Motor Co Ltd Gangerzeugungsvorrichtung für beweglichen roboter mit beinen
DE602004031425D1 (de) * 2003-06-27 2011-03-31 Honda Motor Co Ltd Steuerung für mobilen roboter mit beinen
US7603199B2 (en) 2003-11-27 2009-10-13 Honda Motor Co., Ltd. Control device for mobile body
US7400108B2 (en) * 2004-04-15 2008-07-15 University Of Utah Research Foundation System and method for controlling modular robots
JP4485279B2 (ja) * 2004-08-02 2010-06-16 本田技研工業株式会社 脚式移動ロボットの歩容生成装置および制御装置
JP2006068872A (ja) * 2004-09-03 2006-03-16 Honda Motor Co Ltd 脚式移動ロボット
JP4492395B2 (ja) * 2005-03-09 2010-06-30 トヨタ自動車株式会社 脚式ロボットとその動作制御方法
US8082062B2 (en) * 2005-06-10 2011-12-20 Honda Motor Co., Ltd. Regenerative actuation in motion control
JP4812426B2 (ja) * 2005-12-27 2011-11-09 富士通株式会社 ロボット制御装置
JP4908020B2 (ja) * 2006-03-02 2012-04-04 本田技研工業株式会社 ハンド制御システム
JP2008073830A (ja) * 2006-09-25 2008-04-03 Fanuc Ltd ロボット制御装置
EP2120801B1 (en) 2007-01-19 2018-04-11 Victhom Laboratory Inc. Reactive layer control system for prosthetic and orthotic devices
KR101492552B1 (ko) 2007-02-16 2015-02-12 오노 야꾸힝 고교 가부시키가이샤 요 배출 장애 치료제
WO2009040885A1 (ja) * 2007-09-25 2009-04-02 Fujitsu Limited ロボット制御装置、ロボット制御方法およびロボット制御プログラム
KR101182620B1 (ko) * 2007-10-23 2012-09-14 혼다 기켄 고교 가부시키가이샤 2 족 보행 로봇
JP4950018B2 (ja) * 2007-12-25 2012-06-13 アルプス電気株式会社 座標入力装置
JP5104355B2 (ja) * 2008-02-01 2012-12-19 富士通株式会社 ロボット制御装置、ロボット制御方法およびロボット制御プログラム
FR2926971B1 (fr) * 2008-02-04 2011-02-25 Commissariat Energie Atomique Dispositif d'analyse de la marche
KR101464124B1 (ko) * 2008-06-04 2014-11-20 삼성전자주식회사 로봇 및 그 보행제어방법
US20100042357A1 (en) * 2008-08-15 2010-02-18 Oceaneering International, Inc. Manipulator Position Sensor System
FR2947236B1 (fr) * 2009-06-30 2011-07-15 Aldebaran Robotics Procede pour controler la marche d'un robot mobile et robot mettant en oeuvre le procede
CN102573746B (zh) * 2009-07-01 2015-01-07 瑞克仿生学有限公司 助动器的控制系统
JP5232120B2 (ja) * 2009-10-01 2013-07-10 本田技研工業株式会社 移動体の制御装置
JP5232124B2 (ja) * 2009-10-28 2013-07-10 本田技研工業株式会社 脚式移動ロボットの制御装置
KR20110082712A (ko) * 2010-01-12 2011-07-20 삼성전자주식회사 로봇 및 그 제어방법
KR101687628B1 (ko) * 2010-01-12 2016-12-21 삼성전자주식회사 로봇의 보행 제어 장치 및 그 제어 방법
FR2958152A1 (fr) 2010-03-31 2011-10-07 Benjamin Penot Systeme d'articulation complexe pour orthese, prothese, robotique, exosquelette
KR101200191B1 (ko) * 2010-07-14 2012-11-13 서울대학교산학협력단 데이터 기반 바이페드 제어 장치 및 방법
KR101766755B1 (ko) * 2010-08-17 2017-08-10 삼성전자주식회사 보행 로봇 및 그 제어방법
KR20120024098A (ko) * 2010-09-06 2012-03-14 삼성전자주식회사 보행 로봇 및 그 제어방법
KR101760883B1 (ko) * 2010-09-09 2017-08-04 삼성전자주식회사 로봇 및 그 제어방법
EP2621414B1 (en) 2010-09-29 2019-03-13 Össur HF Prosthetic and orthotic devices and methods and systems for controlling the same
US8467948B2 (en) * 2010-09-29 2013-06-18 Honda Motor Co., Ltd. Omnidirectional moving body operation system and omnidirectional moving body operation method
KR20120069924A (ko) * 2010-12-21 2012-06-29 삼성전자주식회사 보행 로봇 및 그 제어 방법
KR20120071599A (ko) * 2010-12-23 2012-07-03 삼성전자주식회사 보행 로봇 및 그 제어 방법
US8880221B2 (en) * 2011-03-21 2014-11-04 Honda Motor Co., Ltd. Damage reduction control for humanoid robot fall
US9060884B2 (en) 2011-05-03 2015-06-23 Victhom Human Bionics Inc. Impedance simulating motion controller for orthotic and prosthetic applications
US8504208B2 (en) * 2011-05-25 2013-08-06 Honda Motor Co., Ltd. Mobile object controller and floor surface estimator
FR2976700B1 (fr) * 2011-06-17 2013-07-12 Inst Nat Rech Inf Automat Procede de generation d'ordres de commande de coordination d'organes de deplacement d'une plateforme animee et generateur correspondant.
JP5752500B2 (ja) * 2011-06-27 2015-07-22 本田技研工業株式会社 軌道生成システム
JP5724855B2 (ja) * 2011-12-02 2015-05-27 トヨタ自動車株式会社 倒立移動体及び角速度センサの出力値補正方法
KR20130063230A (ko) * 2011-12-06 2013-06-14 삼성전자주식회사 보행 로봇 및 그 제어 방법
JP5945419B2 (ja) * 2012-01-10 2016-07-05 本田技研工業株式会社 脚式移動ロボットの脚体運動軌道生成装置。
US9156159B2 (en) * 2012-03-08 2015-10-13 Disney Enterprises Inc. Robot cyclic locomotion using a dynamic object
US9605952B2 (en) 2012-03-08 2017-03-28 Quality Manufacturing Inc. Touch sensitive robotic gripper
US9044346B2 (en) 2012-03-29 2015-06-02 össur hf Powered prosthetic hip joint
JP6051021B2 (ja) * 2012-08-09 2016-12-21 日本電産サンキョー株式会社 産業用ロボットおよび産業用ロボットの制御方法
JP6065502B2 (ja) * 2012-09-28 2017-01-25 三菱商事株式会社 フラーレン誘導体及びその製造方法
KR101371756B1 (ko) * 2012-12-17 2014-03-12 현대자동차(주) 로봇의 보행제어방법
JP5642214B2 (ja) * 2013-02-15 2014-12-17 株式会社神戸製鋼所 多関節ロボットの弾性変形補償制御装置
JP5888309B2 (ja) * 2013-10-31 2016-03-22 カシオ計算機株式会社 トレーニング支援装置およびシステム、フォーム解析装置および方法、ならびにプログラム
DE112014006247B4 (de) * 2014-01-23 2021-01-21 Mitsubishi Electric Corporation Motorsteuereinrichtung
US9292786B2 (en) * 2014-02-03 2016-03-22 Disney Enterprises, Inc. Universal balancing controller for lateral stabilization of bipedal robots in dynamic unstable environments
JP5897644B2 (ja) * 2014-06-02 2016-03-30 株式会社神戸製鋼所 ロボットの制御装置
US9849926B2 (en) * 2014-07-23 2017-12-26 Boston Dynamics, Inc. Predictively adjustable hydraulic pressure rails
US9308648B2 (en) * 2014-07-24 2016-04-12 Google Inc. Systems and methods for robotic self-right
US9387588B1 (en) * 2014-08-25 2016-07-12 Google Inc. Handling gait disturbances with asynchronous timing
US10081098B1 (en) 2014-08-25 2018-09-25 Boston Dynamics, Inc. Generalized coordinate surrogates for integrated estimation and control
US9387896B1 (en) * 2014-08-25 2016-07-12 Google Inc. Slip avoidance
US9618937B1 (en) 2014-08-25 2017-04-11 Google Inc. Slip detection using robotic limbs
US9517561B2 (en) 2014-08-25 2016-12-13 Google Inc. Natural pitch and roll
US9499219B1 (en) 2014-08-25 2016-11-22 Google Inc. Touch-down sensing for robotic devices
US9623556B1 (en) * 2014-09-03 2017-04-18 X Development Llc Robotic sole joint
US9352470B1 (en) * 2014-11-11 2016-05-31 Google Inc. Yaw slip handling in a robotic device
US9446518B1 (en) * 2014-11-11 2016-09-20 Google Inc. Leg collision avoidance in a robotic device
US9519289B2 (en) * 2014-11-26 2016-12-13 Irobot Corporation Systems and methods for performing simultaneous localization and mapping using machine vision systems
US9751210B2 (en) 2014-11-26 2017-09-05 Irobot Corporation Systems and methods for performing occlusion detection
US9440353B1 (en) 2014-12-29 2016-09-13 Google Inc. Offline determination of robot behavior
US9499218B1 (en) 2014-12-30 2016-11-22 Google Inc. Mechanically-timed footsteps for a robotic device
JP6407409B2 (ja) * 2015-04-02 2018-10-17 国立大学法人大阪大学 脚型機構体、歩行ロボット、姿勢制御方法及びプログラム
US9594377B1 (en) * 2015-05-12 2017-03-14 Google Inc. Auto-height swing adjustment
US9561592B1 (en) * 2015-05-15 2017-02-07 Google Inc. Ground plane compensation for legged robots
JP6450279B2 (ja) * 2015-08-05 2019-01-09 本田技研工業株式会社 移動ロボットの目標zmp軌道の生成装置
US9586316B1 (en) 2015-09-15 2017-03-07 Google Inc. Determination of robotic step path
JP6498597B2 (ja) * 2015-12-14 2019-04-10 本田技研工業株式会社 移動ロボットの制御装置
US9778132B1 (en) * 2015-12-16 2017-10-03 X Development Llc Methods and systems for force sensor calibration
JP6483014B2 (ja) * 2015-12-25 2019-03-13 本田技研工業株式会社 移動ロボットの制御装置
US9868210B1 (en) * 2015-12-30 2018-01-16 Google Inc. Methods and systems for planning a body position of a robotic device
US9925667B1 (en) 2016-01-25 2018-03-27 Boston Dynamics, Inc. Continuous slip recovery
US9789919B1 (en) 2016-03-22 2017-10-17 Google Inc. Mitigating sensor noise in legged robots
US9987745B1 (en) 2016-04-01 2018-06-05 Boston Dynamics, Inc. Execution of robotic tasks
US10828767B2 (en) 2016-11-11 2020-11-10 Sarcos Corp. Tunable actuator joint modules having energy recovering quasi-passive elastic actuators with internal valve arrangements
US10821614B2 (en) 2016-11-11 2020-11-03 Sarcos Corp. Clutched joint modules having a quasi-passive elastic actuator for a robotic assembly
CN109693234B (zh) * 2017-10-20 2021-08-27 深圳市优必选科技有限公司 机器人跌倒预测方法、装置、终端设备及计算机存储介质
US10780578B2 (en) * 2018-02-22 2020-09-22 Boston Dynamics, Inc. Reaching mobile robots
US10946518B2 (en) * 2018-07-24 2021-03-16 Invia Robotics, Inc. Spatiotemporal controller for controlling robot operation
US11550335B2 (en) * 2018-11-28 2023-01-10 Ubtech Robotics Corp Ltd Biped robot and its moving method and apparatus
US11241801B2 (en) 2018-12-31 2022-02-08 Sarcos Corp. Robotic end effector with dorsally supported actuation mechanism
CN110597267B (zh) * 2019-09-27 2023-01-10 长安大学 一种足式机器人的局部最优落足点选取方法
US11292126B2 (en) * 2019-10-17 2022-04-05 Disney Enterprises, Inc. Robots with robust bipedal locomotion supported with non-conventional physics
CN111872941B (zh) * 2020-08-06 2021-09-07 深圳市优必选科技股份有限公司 平衡控制方法、装置、仿人机器人及可读存储介质
US11833676B2 (en) 2020-12-07 2023-12-05 Sarcos Corp. Combining sensor output data to prevent unsafe operation of an exoskeleton
CN113246123B (zh) * 2021-04-30 2022-10-18 深圳市优必选科技股份有限公司 机器人控制方法、装置、计算机可读存储介质及机器人
DE102021112485B3 (de) 2021-05-12 2022-08-11 Deutsches Zentrum für Luft- und Raumfahrt e.V. Verfahren zur Balancierung eines Roboters, Verfahren zur Ganzkörpersteuerung eines Roboters, Regler sowie Roboter
CN113359800A (zh) * 2021-06-30 2021-09-07 深圳市优必选科技股份有限公司 机器人行走控制方法、装置、机器人控制设备及存储介质
CN113377113B (zh) * 2021-07-02 2022-01-04 北方工业大学 足式机器人足端轨迹规划方法、系统及控制方法、系统
US11738452B1 (en) * 2022-07-29 2023-08-29 Sarcos Corp. Sole with various compliant regions for robots
US11826907B1 (en) 2022-08-17 2023-11-28 Sarcos Corp. Robotic joint system with length adapter
US11717956B1 (en) 2022-08-29 2023-08-08 Sarcos Corp. Robotic joint system with integrated safety
US11897132B1 (en) 2022-11-17 2024-02-13 Sarcos Corp. Systems and methods for redundant network communication in a robot
US11924023B1 (en) 2022-11-17 2024-03-05 Sarcos Corp. Systems and methods for redundant network communication in a robot

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05337849A (ja) 1992-05-29 1993-12-21 Honda Motor Co Ltd 脚式移動ロボットの姿勢安定化制御装置
WO2002040224A1 (fr) * 2000-11-17 2002-05-23 Honda Giken Kogyo Kabushiki Kaisha Dispositif generateur d'un modele de demarche pour robot mobile pourvu de jambes
JP2002326173A (ja) * 2001-04-27 2002-11-12 Honda Motor Co Ltd 脚式移動ロボットの動作生成装置

Family Cites Families (31)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS60221288A (ja) * 1984-04-13 1985-11-05 株式会社 富士電機総合研究所 圧覚認識制御装置
JP2570392B2 (ja) 1988-06-30 1997-01-08 三菱電機株式会社 車椅子乗用踏段付エスカレータ
JPH0213596A (ja) 1988-06-28 1990-01-17 Aichi Steel Works Ltd クレーンのトング装置
JP2581175B2 (ja) 1988-06-30 1997-02-12 三菱電機株式会社 車椅子乗用踏段付きエスカレータ
JPH0213784A (ja) 1988-06-30 1990-01-18 Kaneko Agricult Mach Co Ltd 乾燥施設における試料穀物の乾燥方法およびその装置
JP2548799B2 (ja) 1989-05-29 1996-10-30 日鋼特機株式会社 管の縮径成形装置
JPH034355A (ja) 1989-05-31 1991-01-10 Nec Corp データ伝送方式
US5355064A (en) * 1992-03-04 1994-10-11 Honda Giken Kogyo Kabushiki Kaisha Control system for legged mobile robot
JP3148827B2 (ja) 1992-04-30 2001-03-26 本田技研工業株式会社 脚式移動ロボットの歩行制御装置
JP3233450B2 (ja) 1992-05-22 2001-11-26 本田技研工業株式会社 指定時刻到達関数発生器
JP3330710B2 (ja) * 1993-12-30 2002-09-30 本田技研工業株式会社 移動ロボットの位置検知および制御装置
US5644204A (en) * 1994-11-03 1997-07-01 Nagle; John Anti-slip control for a legged robot and realisitc simulation of a legged creature
JP3658147B2 (ja) 1996-07-25 2005-06-08 本田技研工業株式会社 脚式移動ロボットの歩容生成装置
JP3663034B2 (ja) 1996-07-25 2005-06-22 本田技研工業株式会社 脚式移動ロボットの歩容生成装置
JP3629133B2 (ja) 1997-01-31 2005-03-16 本田技研工業株式会社 脚式移動ロボットの制御装置
JP3672406B2 (ja) * 1997-01-31 2005-07-20 本田技研工業株式会社 脚式移動ロボットの歩容生成装置
EP1514777B1 (en) * 1997-01-31 2009-03-11 Honda Giken Kogyo Kabushiki Kaisha Control system of legged mobile robot
DE69943148D1 (de) * 1998-04-20 2011-03-03 Honda Motor Co Ltd Steuereinheit für einen mit beinen beweglichen roboter
JP3629143B2 (ja) 1998-04-20 2005-03-16 本田技研工業株式会社 脚式移動ロボットの制御装置
JP2000352011A (ja) 1999-06-11 2000-12-19 Gakunan Koki Kk 視覚障害者用警告形道路ラインの施工方法
JP2001133621A (ja) 1999-11-08 2001-05-18 Sharp Corp カラーフィルターの製造方法および製造装置
JP4480843B2 (ja) 2000-04-03 2010-06-16 ソニー株式会社 脚式移動ロボット及びその制御方法、並びに、脚式移動ロボット用相対移動測定センサ
JP3726009B2 (ja) * 2000-05-19 2005-12-14 本田技研工業株式会社 脚式移動ロボットの床形状推定装置
US7135003B2 (en) * 2001-06-29 2006-11-14 Honda Giken Kogyo Kabushiki Kaisha Feedback estimation of joint forces and joint moments
US6961627B2 (en) 2001-12-28 2005-11-01 Honda Giken Kogyo Kabushiki Kaisha Control system
JP3674789B2 (ja) * 2001-12-28 2005-07-20 本田技研工業株式会社 脚式移動ロボットの歩容生成装置
KR100946709B1 (ko) 2001-12-28 2010-03-12 혼다 기켄 고교 가부시키가이샤 다리식 이동로봇의 보용 생성 장치
US6969965B2 (en) * 2002-01-18 2005-11-29 Honda Giken Kogyo Kabushiki Kaisha Controller of legged mobile robot
EP1504858B1 (en) * 2002-04-26 2014-06-04 Honda Giken Kogyo Kabushiki Kaisha Control device and footstep determination device for legged mobile robot
WO2003090981A1 (fr) * 2002-04-26 2003-11-06 Honda Giken Kogyo Kabushiki Kaisha Systeme permettant d'estimer l'attitude d'un robot mobile monte sur des jambes
DE602004031425D1 (de) * 2003-06-27 2011-03-31 Honda Motor Co Ltd Steuerung für mobilen roboter mit beinen

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05337849A (ja) 1992-05-29 1993-12-21 Honda Motor Co Ltd 脚式移動ロボットの姿勢安定化制御装置
WO2002040224A1 (fr) * 2000-11-17 2002-05-23 Honda Giken Kogyo Kabushiki Kaisha Dispositif generateur d'un modele de demarche pour robot mobile pourvu de jambes
JP2002326173A (ja) * 2001-04-27 2002-11-12 Honda Motor Co Ltd 脚式移動ロボットの動作生成装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
See also references of EP1642689A4 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111651900A (zh) * 2020-06-29 2020-09-11 中国有色金属工业昆明勘察设计研究院有限公司 一种昔格达地层岩质边坡稳定性计算的拟动力上限法
CN111651900B (zh) * 2020-06-29 2023-07-04 中国有色金属工业昆明勘察设计研究院有限公司 一种昔格达地层岩质边坡稳定性计算的拟动力上限法

Also Published As

Publication number Publication date
US20100042256A1 (en) 2010-02-18
EP2206583A1 (en) 2010-07-14
EP2353794B1 (en) 2013-01-16
JP4181175B2 (ja) 2008-11-12
WO2005000535A1 (ja) 2005-01-06
KR20060024363A (ko) 2006-03-16
JPWO2005000534A1 (ja) 2006-08-03
EP2210713B1 (en) 2011-11-30
JP4155993B2 (ja) 2008-09-24
EP2210713A1 (en) 2010-07-28
EP1642687A1 (en) 2006-04-05
DE602004031526D1 (de) 2011-04-07
EP2206583B1 (en) 2011-10-19
EP2353795B1 (en) 2012-10-10
US20060184276A1 (en) 2006-08-17
EP2208582B1 (en) 2011-12-21
KR101083417B1 (ko) 2011-11-14
EP1642688A4 (en) 2009-11-18
EP2206584B1 (en) 2011-10-19
EP1642687B1 (en) 2011-02-23
EP2353795A1 (en) 2011-08-10
US8005573B2 (en) 2011-08-23
EP2206584A1 (en) 2010-07-14
US7603234B2 (en) 2009-10-13
KR20060024372A (ko) 2006-03-16
EP1642689A1 (en) 2006-04-05
EP2353794A1 (en) 2011-08-10
EP1642688A1 (en) 2006-04-05
EP1642689A4 (en) 2009-01-14
US7860611B2 (en) 2010-12-28
KR20060024362A (ko) 2006-03-16
KR101083412B1 (ko) 2011-11-14
EP1642689B1 (en) 2011-02-16
US7379789B2 (en) 2008-05-27
KR101083414B1 (ko) 2011-11-14
JP4126061B2 (ja) 2008-07-30
US20060173578A1 (en) 2006-08-03
EP2208582A1 (en) 2010-07-21
US20060247799A1 (en) 2006-11-02
EP2206582B1 (en) 2011-10-19
EP1642688B1 (en) 2011-08-10
JPWO2005000535A1 (ja) 2006-08-03
EP1642687B9 (en) 2011-04-20
EP1642687A4 (en) 2009-01-21
EP2206582A1 (en) 2010-07-14
JPWO2005000536A1 (ja) 2006-08-03
WO2005000534A1 (ja) 2005-01-06
EP2206582A8 (en) 2011-03-02
DE602004031425D1 (de) 2011-03-31

Similar Documents

Publication Publication Date Title
WO2005000536A1 (ja) 脚式移動ロボットの制御装置
JP3672101B2 (ja) 脚式移動ロボットの歩容生成装置
EP1475198B1 (en) Controller of legged mobile robot
JP3679105B2 (ja) 脚式移動ロボットの歩容生成装置
WO2005000533A1 (ja) 脚式移動ロボットの歩容生成装置

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A1

Designated state(s): AE AG AL AM AT AU AZ BA BB BG BR BW BY BZ CA CH CN CO CR CU CZ DE DK DM DZ EC EE EG ES FI GB GD GE GH GM HR HU ID IL IN IS JP KE KG KP KR KZ LC LK LR LS LT LU LV MA MD MG MK MN MW MX MZ NA NI NO NZ OM PG PH PL PT RO RU SC SD SE SG SK SL SY TJ TM TN TR TT TZ UA UG US UZ VC VN YU ZA ZM ZW

AL Designated countries for regional patents

Kind code of ref document: A1

Designated state(s): BW GH GM KE LS MW MZ NA SD SL SZ TZ UG ZM ZW AM AZ BY KG KZ MD RU TJ TM AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HU IE IT LU MC NL PL PT RO SE SI SK TR BF BJ CF CG CI CM GA GN GQ GW ML MR NE SN TD TG

121 Ep: the epo has been informed by wipo that ep was designated in this application
WWE Wipo information: entry into national phase

Ref document number: 2005511139

Country of ref document: JP

WWE Wipo information: entry into national phase

Ref document number: 1020057020794

Country of ref document: KR

ENP Entry into the national phase

Ref document number: 2006173578

Country of ref document: US

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 10562327

Country of ref document: US

WWE Wipo information: entry into national phase

Ref document number: 2004746946

Country of ref document: EP

WWP Wipo information: published in national office

Ref document number: 1020057020794

Country of ref document: KR

WWP Wipo information: published in national office

Ref document number: 2004746946

Country of ref document: EP

WWP Wipo information: published in national office

Ref document number: 10562327

Country of ref document: US