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

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

Info

Publication number
WO2005000534A1
WO2005000534A1 PCT/JP2004/009472 JP2004009472W WO2005000534A1 WO 2005000534 A1 WO2005000534 A1 WO 2005000534A1 JP 2004009472 W JP2004009472 W JP 2004009472W WO 2005000534 A1 WO2005000534 A1 WO 2005000534A1
Authority
WO
WIPO (PCT)
Prior art keywords
target
floor reaction
reaction force
instantaneous value
amount
Prior art date
Application number
PCT/JP2004/009472
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 JP2005511135A priority Critical patent/JP4155993B2/ja
Priority to US10/562,168 priority patent/US8005573B2/en
Priority to EP04746941A priority patent/EP1642687B9/en
Priority to KR1020057019866A priority patent/KR101083417B1/ko
Priority to DE602004031526T priority patent/DE602004031526D1/de
Publication of WO2005000534A1 publication Critical patent/WO2005000534A1/ja
Priority to US12/603,116 priority patent/US7860611B2/en

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 control device suitable for not only walking but also running of a legged moving port.
  • a gait target gait
  • a gait for the movement of a legged mobile robot, for example, a bipedal robot
  • the main purpose has been to generate gaits.
  • it has been desired to generate a gait that allows the lopot to perform not only walking but also running.
  • it is desired to create a gait that can move the mouth pot smoothly on slippery floors (so-called low mu road) where sufficient frictional force cannot be generated.
  • kanji “gait” includes “step”, so it is easy to be misunderstood that it is limited to walking.
  • “gait” is originally a word that refers to the running form of a horse, such as a trot. As used, the concept includes running.
  • Figure 51 shows the pattern of the body vertical position 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
  • Figure 52 shows the typical The vertical body position and the floor reaction force vertical component pattern during walking are shown.
  • the body vertical position speed means the vertical position of the body representative point and its speed.
  • the body horizontal position speed is the body The horizontal position of the representative point and its speed.
  • the body vertical position speed and the body horizontal position speed are combined and called the body position speed.
  • the floor reaction force vertical component is the floor To distinguish it from the moment component around the vertical axis of the reaction force, it should be described as “translational floor reaction force vertical component", but since the word becomes longer, "translation” is omitted here.
  • 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, in running, it can be said that the legs are jumping using the legs as springs.
  • 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 applicant of the present application has proposed the following technology in Japanese Patent Application Laid-Open No. Hei 5-337849.
  • the actual ZMP is shifted.
  • the motion of the desired gait to generate a moment in the posture recovery direction within the allowable range around the target ZMP and to generate a moment around the target ZMP on the model used to generate the desired gait To determine.
  • intentionally generating a moment on the model it can be seen on the actual robot. It is possible to obtain the same effect as generating the momentum in the recovery direction.
  • 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 moment vertical component of the floor friction force is limited. Becomes or approaches zero. Therefore, the floor reaction force moment vertical component of the desired gait exceeded the limit, and there was a risk of spinning and falling.
  • the present applicant first shakes the arm so as to cancel the moment vertical component that occurs in the target gait other than the arm. Suggested what was done. In this case, the moment vertical component of the desired gait is almost 0, but when the leg is moved vigorously, the arm swings violently. Generally, in a humanoid mouth pot, the mass of the arm is smaller than the mass of the leg. Therefore, to completely cancel the vertical component of the moment, the arm must swing more vigorously than the swing of the legs.
  • the center of the arm swing gradually offsets, and the swing of the left and right arms becomes asymmetric.
  • the center of the arm swing gradually offsets, and the swing of the left and right arms becomes asymmetric.
  • the angular momentum change due to the leg and torso turning to the left In order to counteract the left arm, the left arm swings large toward the front and swings small toward the back, and the right arm swings toward the front and small behind. Therefore, in this case, the left arm may reach the front swing motion limit, and the right arm may reach the rear swing motion limit.
  • an object of the present invention is to solve the above-mentioned problems and to provide a control device capable of generating a more suitable gait irrespective of a gait form such as walking or running or a friction state of a floor surface. Is to provide.
  • the present invention considers the limit of the moment vertical component of the frictional force between the robot and the floor surface, and stabilizes the posture state of the robot in one direction.
  • An object of the present invention is to provide a control device that can operate a robot with a gait that can prevent spin and falling of the robot due to the spin while keeping the spin. It is another object of the present invention to provide a control device that can operate a robot with a gait motion pattern that satisfies dynamic equilibrium conditions even in the air or when the limit of the moment vertical component of frictional force is extremely low. And Furthermore, the object is to prevent the left-right asymmetry of the desired gait from becoming large, and to ensure the continuity of the motion. Disclosure of the invention
  • the first invention of the gait generating device for a legged mobile robot of the present invention is:
  • the instantaneous value of the target motion and the target floor reaction force of the leg-type moving robot that moves by moving the leg extended from the upper body is used to express at least the relationship between the motion of the robot and the floor reaction force.
  • a legged mobile robot control device for controlling the operation of the robot so as to follow the determined target motion and the instantaneous value of the target floor reaction force while sequentially determining the target motion and the determined floor reaction force using the dynamic model.
  • the vertical component of the floor reaction force moment or the component of the floor reaction force moment in the direction normal to the floor surface to be acted on by the robot operating following the target motion and the target floor reaction force is defined as a limiting target amount.
  • At least a limit corresponding to the target floor reaction force based on a deviation between a target state quantity and an actual state quantity of the lopot with respect to a posture of the mouth pot about a vertical axis or a floor normal axis, and the allowable range. While keeping the target amount within the allowable range, the difference between the floor reaction chamoment balanced with the target motion on the dynamic model and the floor reaction force moment of the target floor reaction force approaches the deviation to zero. And a target instantaneous value determining means for determining an instantaneous value of a desired motion and a desired floor reaction force.
  • the target floor is determined based on at least the deviation between the target state quantity related to the posture of the robot about the vertical axis or the floor normal axis and the actual state quantity of the robot and the allowable range.
  • the difference between the floor reaction chamomile that balances the target motion with the dynamic model on the dynamic model and the floor reaction chamomile of the target floor reaction force while keeping the restriction target amount corresponding to the reaction force within the allowable range. Determines the instantaneous values of the target motion and the desired floor reaction force so that the deviation approaches zero.
  • the state quantity relating to the posture of the mouth pot about the vertical axis or the floor normal axis (hereinafter referred to as the posture state quantity in one direction) is referred to as the target state quantity-that is, the target posture state quantity in the Y direction in the target motion.
  • the target state quantity-that is, the target posture state quantity in the Y direction in the target motion While keeping the deviation close to 0 (while keeping the deviation close to 0), it is possible to limit the restricted target amount such as the vertical component of the floor reaction force moment acting on the actual mouth pot within the allowable range. That is, the instantaneous values of the target motion and the target floor reaction force are determined in consideration of the limit of the vertical component of the frictional moment and the deviation.
  • the target instantaneous value determination means includes: a means for determining a compensation floor reaction moment, which is an additional floor reaction chamois, for bringing the deviation closer to 0 in accordance with the deviation;
  • the predetermined temporary instantaneous value of the target motion is adjusted in accordance with the floor reaction chamoment and the compensated floor reaction force moment that are balanced on the dynamic model so that the limited target amount does not exceed the allowable range.
  • Means for determining a correction amount of the instantaneous value It is preferable to determine the instantaneous value of the target motion by correcting the temporary instantaneous value according to the positive amount (second invention).
  • a floor reaction force moment (balanced with the target motion) generated on the dynamic model by the predetermined tentative instantaneous value of the target motion, and a compensation floor reaction camo for making the deviation close to zero. Since the correction amount of the predetermined provisional instantaneous value is determined in accordance with one comment, the amount of restriction target is set within an allowable range while the amount of posture state of the robot in one direction is close to the target state amount. The appropriate instantaneous value of the target motion can be determined.
  • the second invention includes means for determining a model corrected floor reaction force moment that is an additional floor reaction force moment for bringing the state quantity of the dynamic model closer to a predetermined state quantity,
  • the means for determining the correction amount of the predetermined temporary instantaneous value of the target motion includes at least the floor reaction force moment, the compensation floor reaction force moment, and the model correction that are balanced on the dynamic model with the predetermined temporary instantaneous value. It is preferable to determine the correction amount of the provisional instantaneous value of the target movement so that the restriction target amount does not exceed the allowable range in accordance with floor anti-moment (third invention).
  • the dynamic model when determining the correction amount of the predetermined temporary instantaneous value of the target motion, the floor reaction force moment balanced on the dynamic model with the predetermined temporary instantaneous value of the target motion, and the compensation floor reaction Since not only the force moment but also the model corrected floor reaction force moment relating to the state quantity of the dynamic model is considered, the dynamic model can be prevented from diverging in addition to the effect of the second invention.
  • the correction amount of the predetermined temporary instantaneous value is a correction amount of a motion that changes a vertical component or a floor surface normal direction component of the angular momentum change rate of the lopot. Is preferable (the fourth invention).
  • the motion for changing the vertical component or the floor surface normal direction component of the angular momentum change rate of the robot is the upper body of the robot and / or the arm body extended from the upper body. It is preferable that the exercise is performed (fifth invention). 'According to this, it is easy to correct the temporary instantaneous value of the target motion.
  • the motion that changes the vertical component or the floor normal direction component of the rate of change in angular momentum of the robot is a motion that maintains a constant center of gravity of the robot.
  • the instantaneous value of the target motion of the legged locomotion locomotion is calculated using a dynamic model that expresses at least the relationship between the locomotion and the floor reaction force.
  • the control device of the legged mobile robot which controls the operation of the robot so as to follow the determined instantaneous value of the target motion while sequentially determining
  • the vertical component of the floor reaction force moment or the component of the floor reaction force moment in the direction normal to the floor surface to be acted on the lopot operating following the target motion is defined as the limited target amount, and the allowable range of the limited target amount is defined.
  • the instantaneous value of the target motion is determined so that the limit target amount determined in accordance with the floor reaction chamoment balanced with the target motion on the dynamic model and the compensated floor reaction force moment falls within the allowable range. And a target instantaneous value determining means.
  • fishing is performed on the target motion on the dynamic model.
  • the above-mentioned limited amount (e.g., the floor reaction chamoment and the compensation floor reaction balanced with the target motion on the dynamics model) determined according to the floor reaction force moment that fits and the compensation floor reaction camoment.
  • the instantaneous value of the target motion is determined such that the sum of the moment and the force moment falls within the allowable range. For this reason, even if a compensating floor anti-chamoment is additionally generated to bring the posture state quantity of the mouth pot in the yaw direction closer to the target state quantity (posture state state quantity in the target movement). It is possible to generate a target motion that can limit the amount of limiting such as the vertical component of the floor reaction force moment acting on the robot within the allowable range.
  • the instantaneous value of the target motion is determined in consideration of the limit of the vertical component of the frictional moment and the deviation.
  • the target movement of the robot which can prevent the spin of the mouth pot and the overturn caused by the rotation while keeping the posture state amount of the robot in the target direction of the target movement stably, can be achieved.
  • the amount to be restricted does not always need to be set to 0 or almost 0. Can be prevented.
  • a means for controlling the operation of the robot so that the restricted object amount within the allowable range is set as a target floor reaction force moment and the target floor reaction force moment is followed. 7th invention). According to this, it is possible to prevent the spin of the lopot and the overturn caused by the spin while keeping the posture amount of the lopot in one direction stably at the posture state amount of the target motion. In addition, it is possible to prevent the movement trajectory of the mouth pot from deviating from the trajectory of the target gait, and to prevent the continuous stability of the posture of the mouth pot in one direction from being impaired.
  • the target instantaneous value determination means may include the limited target amount determined in accordance with a floor reaction chamoment balanced with the target operation on the dynamic model and the compensation floor reaction force moment.
  • the motion that changes the vertical component or the floor normal direction component of the rate of change in the angular momentum of the mouth pot among the motions of the mouth pot is adjusted. It is preferable to determine the instantaneous value of (the eighth invention).
  • the instantaneous value of the target motion can be determined so that the amount to be restricted falls within the allowable range.
  • the motion for changing the vertical component or the floor normal direction component of the angular momentum change rate of the lopot is based on the upper body and the nose of the lopot or the arm extending from the upper body.
  • the exercise is preferably (ninth invention).
  • the motion for changing the vertical component or the floor normal direction component of the angular momentum change rate of the robot is a motion that keeps the entire S center of the robot constant.
  • a tenth invention of the control device for a legged mobile robot includes an instantaneous value of a target motion of the legged mobile robot which moves by moving a leg extended from the upper body, at least.
  • a legged movement for controlling the operation of the robot so as to follow the determined instantaneous value of the target movement while sequentially determining using a dynamic model representing the relationship between the movement of the robot and the floor reaction force.
  • the vertical component of the floor reaction force moment to be applied to the robot operating following the target motion or the component of the floor reaction force moment in the direction normal to the floor surface is set as the limit target amount, and the limit target amount is allowed.
  • a tolerance setting method for setting the range
  • Tentative instantaneous value determining means for sequentially determining a tentative instantaneous value of the target motion; At least an additional floor camber for approaching the deviation to zero in accordance with the deviation between the target state quantity and the actual state quantity of the robot with respect to the posture of the robot about the vertical axis or the floor normal axis.
  • Means for determining a compensation floor reaction force moment which is a compensation floor reaction force moment,
  • a moment correction is made for the amount of deviation from the permissible range of the limited target amount determined according to the floor reaction force moment and the compensated floor reaction force moment that are balanced on the dynamic model with the provisional instantaneous value of the target motion.
  • a target instantaneous value determination that determines the instantaneous value of the target motion by correcting the provisional instantaneous value of the target motion so that the deviation tends to decrease in accordance with the momentum. Means.
  • the limited target amount (for example, the target value) determined in accordance with the floor reaction force moment and the compensating floor reaction moment that balance the provisional instantaneous value of the target motion on the dynamic model with the dynamic model.
  • the sum of the floor reaction force moment 'balanced on the dynamic model with the provisional instantaneous value of the motion and the compensation floor reaction force moment) that deviates from the permissible range is defined as the moment correction operation amount.
  • the instantaneous value of the target motion is determined by correcting the provisional instantaneous value of the target motion so that the deviation tends to decrease in accordance with the amount of operation for correcting the target.
  • the target motion that can restrict the amount of restriction, such as the vertical component of the floor reaction force moment acting on the robot, within an allowable range. That is, the instantaneous value of the target motion is determined in consideration of the limit of the vertical component of the frictional moment and the deviation. As a result, it is possible to prevent the mouth pot from spinning and falling due to the spin of the mouth pot while maintaining the posture state quantity of the mouth pot in the direction of the target movement stably at the posture quantity of the target motion. Can determine the target exercise Wear.
  • the target instantaneous value determining means obtains a correction amount of the provisional instantaneous value of the target motion in accordance with the moment correction operation amount passed through a mouth-to-pass fill, and calculates the obtained correction amount. It is preferable to determine the instantaneous value of the target motion by correcting the tentative instantaneous value according to (1st invention).
  • the limit target amount determined in accordance with the floor reaction force moment and the compensating floor reaction force moment that are balanced on the dynamic model with the provisional instantaneous value of the target movement is set in the allowable range.
  • a means for controlling the robot operation so that the floor reaction force moment corresponding to the limited amount to be restricted, which is limited by the above, is set as the target floor reaction force moment, and the robot follows the target floor reaction camoment. Is preferable (the 12th invention).
  • the twelfth aspect it is possible to prevent the spin of the lopot and the overturn caused by the spin while keeping the posture state amount of the mouth pot in the yaw direction at the posture state amount of the target operation stably.
  • the target instantaneous value determination means is configured to change a vertical component or a floor normal direction component of the angular momentum change rate of the robot. It is preferable to determine the instantaneous value of the target motion by correcting the motion from the temporary instantaneous value of the target motion (a thirteenth invention).
  • the instantaneous value of the target motion can be determined so that the amount to be restricted falls within the allowable range.
  • the motion for changing the vertical component or the floor normal direction component of the angular momentum change rate of the mouth pot is extended from the upper body and Z or the upper body of the robot. It is preferable that the exercise be performed for the arms (first to fourteenth inventions).
  • the state quantity relating to the posture of the robot is, specifically, an angle of the upper body of the robot (rotation angle in one direction) or an angular velocity of the robot. (The angular velocity of the rotation angle in one direction) (15th invention). According to the fifteenth invention, it is possible to enhance the stability of the posture of the upper body of the mouth pot in one direction. This also applies to the fifteenth to fifty-first inventions described later.
  • a slip judging means for judging occurrence of slip of the mouth pot, and the allowable range setting means sets the allowable range according to a judgment result of the slip judging means. It is preferable to set variably (the 16th invention).
  • the occurrence of slippage of the robot (a robot operating following the instantaneous value of the target motion or the instantaneous values of the target motion and the target floor reaction force) is determined. Since the allowable range of the restricted amount is variably set according to the result, the occurrence of slippage of the mouth pot can be reliably suppressed. When it is determined that slippage occurs, the allowable range should be set so as to narrow it.
  • the occurrence of slip is determined as follows. Can.
  • 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 (17th invention). In this case, for example, when the absolute value of the ground speed is larger than a predetermined value, it can be determined that a slip has occurred.
  • 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.
  • the slip determination means determines the occurrence of slip based on at least the actual floor reaction force acting on the grounded leg passed through a band-pass filter having a frequency passing characteristic in a range near a predetermined frequency.
  • the actual floor reaction force 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 seventeenth to nineteenth inventions, but the determination of the occurrence of slip is made by combining two or more of the seventeenth to nineteenth inventions. You may do so.
  • a 20th invention of the legged mobile robot control device of the present invention generates a desired gait of a legged mobile robot that moves by moving a plurality of legs extended from the upper body,
  • the control device for controlling the movement of the lopot so as to follow the desired gait At least according to the deviation between the target state quantity relating to the posture of the robot around the vertical axis or the floor surface normal axis and the actual state of the robot, an additional floor countermeasure for bringing the deviation closer to 0 Means for determining a compensating floor reaction force moment,
  • the vertical component of the floor reaction force moment or the floor component normal direction component of the floor reaction force moment to be applied to the lopot operating following the target gait is set as the target object amount, and the allowable amount of the object amount is limited.
  • a tolerance setting method for setting the range
  • At least the provisional instantaneous value of the target motion is input to a dynamic model representing the relationship between the motion of the robot and the vertical component or the floor normal direction component of the moment of the floor reaction force balanced with the motion.
  • a vertical component or a floor normal direction component of the floor reaction force moment as an output of the dynamic model is obtained, and a predetermined function is obtained from the obtained vertical component or the floor surface normal component and the compensation floor reaction force moment.
  • Model calculation means for determining a model limit target amount instantaneous value which is a provisional instantaneous value of the limit target amount by calculation,
  • Target instantaneous value determination means for determining the instantaneous value of the target motion by correcting the tentative instantaneous value of the target motion so that at least the model limited target amount instantaneous value falls within the allowable range.
  • a vertical component or a floor normal direction component of a floor reaction force moment as an output of the dynamic model is obtained. Is required. Then, a predetermined operation (for example, addition) is performed from the obtained vertical component or floor normal direction component and the compensated floor reaction force moment to obtain a model restriction target amount instantaneous value (this is a provisional instantaneous value of the restriction target amount).
  • a model restriction target amount instantaneous value is a provisional instantaneous value of the restriction target amount.
  • a compensating floor reaction force moment for generating the posture state quantity of the mouth pot in the gutter direction closer to the target state quantity (posture state quantity in the one direction in the target motion) is additionally generated. It is possible to generate a target motion that can limit the amount of restriction such as the vertical component of the floor reaction force moment acting on the actual robot within an allowable range. That is, the instantaneous value of the target motion is determined in consideration of the limit of the vertical component of the frictional moment and the deviation. This makes it possible to prevent the spin of the robot and the overturn caused by it, while maintaining the posture of the robot in one direction stably at the posture of the target motion. Can be determined.
  • the dynamic model is basically one having a high approximation accuracy.
  • the target instantaneous value determining means includes a vertical component or a floor normal direction component of a moment of a floor reaction force substantially balanced with the instantaneous value of the target motion on the dynamic model.
  • the target instantaneous value determining means includes a perturbation representing a relationship between a perturbation motion of the robot and a vertical component of a floor reaction force moment or a perturbation component of a floor surface normal component.
  • a model means for determining a perturbation model operation amount for operating a perturbation component of the perturbation model based on at least the determined model limit target amount instantaneous value and the permissible range; and determining the determined perturbation model operation amount Means for obtaining a correction amount of the target motion by inputting to a perturbation model; and means for determining an instantaneous value of the target motion by correcting a provisional instantaneous value of the target motion by the correction amount.
  • Preferred (22nd invention) means for determining an instantaneous value of the target motion by correcting a provisional instantaneous value of the target motion by the correction amount.
  • the perturbation model since the perturbation model has a high linearity, it is easy to calculate an appropriate correction amount of the target movement for keeping the limited target amount within the allowable range, and to temporarily calculate the target movement based on the correction amount.
  • the instantaneous value correction process becomes easy.
  • the means for determining the perturbation model manipulated variable includes at least the estimated value of the restricted subject quantity when the perturbation model manipulated variable is assumed to be 0, and at least the determined model restricted subject quantity instantaneous value. And a means for comparing the determined estimated value with the allowable range and determining a limited amount to be restricted within the allowable range based on the comparison. It is preferable to determine the perturbation model operation amount based on the difference between the determined model restriction target amount instantaneous value and the restricted restriction target amount. invention).
  • an estimated value of the restricted target amount is obtained when the perturbation model operation amount is assumed to be 0, and the restricted restricted target amount is determined based on a comparison between the estimated value and the allowable range.
  • the model restricted target amount instantaneous value may be directly used as the estimated value of the restricted target amount, but the estimated value of the restricted target amount may be determined in consideration of the gyro effect.
  • the restricted amount to be restricted is determined as close to the estimated value of the restricted amount as possible within the allowable range.
  • a perturbation model operation amount is determined based on at least the difference between the instantaneous value of the model restriction target amount and the restricted restriction target amount.
  • the means for determining the perturbation model operation amount ⁇ in accordance with at least a state amount of the perturbation model, and the means for determining the perturbation model operation amount is at least the determination. It is preferable to determine a perturbation model operation amount to be input to the perturbation model based on the model restriction target amount instantaneous value, the permissible range, and the required value (the 24th invention).
  • the means for determining the required value of the perturbation model manipulated variable includes: sequentially determining the required value according to a feedback control law according to a deviation between a state quantity of the perturbation model and a target value for the state quantity. It is preferable to Yes (25th invention).
  • the perturbation model operation amount is determined such that the state amount of the perturbation model is substantially maintained near a certain target state amount. This makes it possible to make the correction amount of the target motion determined by each perturbation model suitable for keeping the amount to be restricted within an allowable range while keeping the state of the perturbation model stable.
  • the means for determining the perturbation model operation amount includes an estimated value of the restriction target amount when it is assumed that the perturbation model operation amount matches the required value.
  • Means for determining the restricted restriction target amount and preferably determines the perturbation model manipulated variable based on at least the difference between the model restriction target amount instantaneous value determined above and the restricted restriction target amount. 26 inventions).
  • the perturbation model operation amount is made to match the required value, that is, an estimated value of the restricted object amount is obtained when only the required value is input to the perturbation model.
  • Determine the restricted quantity determined based on the comparison between the value and the allowable range.
  • the sum of the instantaneous value of the model restriction target amount and the required value may be used as the estimation value of the restriction target amount as it is, but the estimated value of the restriction target amount is determined in consideration of the gyro effect. You may do so.
  • the restricted amount to be restricted is determined to be a value as close as possible to the estimated value of the restricted amount within the allowable range.
  • a perturbation model operation amount is determined based on at least a difference between the model restriction target amount instantaneous value and the restricted restriction target amount.
  • the target instantaneous value determination means may include means for additionally inputting the correction amount of the target movement to the dynamic model (a twenty-seventh invention).
  • the vertical component or the floor normal direction component of the floor anti-chamoment balanced with the instantaneous value from the dynamic model to the target motion can be obtained directly.
  • the perturbation model includes a perturbation motion for perturbing a vertical component or a floor normal direction component of a rate of change in angular momentum of the robot and the restriction object. It is preferable that the model represents the relationship with the quantity perturbation (28th invention).
  • the perturbation is a perturbation that keeps the position of the center of gravity of the lopot substantially constant (the twenty-ninth invention).
  • the target motion can be corrected by the perturbation model without affecting the translational floor reaction force of the mouth pot.
  • the perturbation movement is a 'perturbation movement of the upper body and Z of the lopot or an arm extending from the upper body (30th invention).
  • the third invention of the legged mobile robot control device of the present invention generates a desired gait of a legged mobile robot that moves by moving a plurality of legs extended from the upper body,
  • a control device for controlling the operation of the lopot so as to follow the desired gait At least according to the deviation between the target state quantity related to the posture of the lopot around the vertical axis or the floor surface normal axis and the actual state of the lopot, additional floor anti-chambering to make the deviation close to 0 Means for determining a compensating floor reaction moment,
  • Target floor reaction force temporary instantaneous value determining means for sequentially determining at least a temporary instantaneous value of the desired floor reaction force of the target exercise and the desired floor reaction force constituting the desired gait;
  • First model calculation means for inputting the values to a first dynamic model representing the relationship between the lopot motion and the floor reaction force, and sequentially obtaining temporary momentary values of the target motion as an output of the first dynamic model;
  • the second dynamic model representing the relationship between the motion of the robot and the vertical component or the floor surface normal component of the moment of the floor reaction force balanced with the motion includes at least the provisional instantaneous value of the target motion.
  • Second model calculating means for determining a model restricted amount instantaneous value is a provisional instantaneous value of the quantity, '
  • a floor reaction chamoment correction amount of a target floor reaction force is determined so that at least the model limited target amount instantaneous value falls within the allowable range, and the determined floor reaction force moment correction amount is determined by the first dynamic model.
  • a first model input correction means for additionally inputting to the
  • the instantaneous value of the target motion is determined based on at least the input of the second dynamic model.
  • the vertical motion of the floor reaction camo as an output of the second dynamics model is obtained.
  • a component or floor surface normal direction component is obtained, and a model limiting target amount instantaneous value (temporary instantaneous value of the limiting target amount) is calculated by a predetermined operation (for example, addition) from the compensating floor reaction force moment. This is equivalent to the instantaneous value of the limited amount when the compensating floor reaction force moment is added to the floor reaction force moment at which the desired motion occurs on the dynamic model).
  • a floor reaction chamoment correction amount of the target floor reaction force is determined so that at least the model limiting target amount instantaneous value falls within the allowable range, and the determined floor reaction force moment correction amount is determined by the first dynamics. Since the input is additionally provided to the model, based on at least the input of the second kinetic model, an instantaneous value of the target motion that can keep the limited object amount within an allowable range is obtained (for this reason, Even if the compensating floor reaction force moment for additionally bringing the posture state quantity of the pot in one direction closer to the target state quantity (the posture state quantity in the first direction in the target motion) is generated, the actual It is possible to generate a target motion that can limit the amount of restriction such as the vertical component of the floor reaction force moment acting on the pot within the allowable range, that is, by considering the limit of the vertical component of the friction force moment and the deviation.
  • the instantaneous value of the target movement is determined, so that the posture of the lopot in one direction is stably maintained at the posture of the target movement, and the spin of the mouth pot and the resulting fall are prevented.
  • the robot's movement trajectory can be deviated from the desired gait trajectory, and the robot's continuous stability in one direction can be determined. It is possible to determine the target operation that can prevent damage, and since it is not necessary to always set the restricted amount to 0 or almost 0 as long as the restricted amount falls within the allowable range, the robot This can prevent excessively intense exercise in areas with The
  • the second dynamic model is basically one having a higher approximation accuracy than the first dynamic model.
  • the vertical component or floor normal direction component of the moment of the floor reaction force substantially balanced with the instantaneous value of the target motion on the second dynamics model, and the compensation floor reaction force moment Means for determining a floor reaction force moment instantaneous value corresponding to the limited target amount instantaneous value determined by the predetermined calculation as the floor reaction force moment instantaneous value of the desired floor reaction force constituting the target gait.
  • the first model input correction means estimates the limit target amount of the basal assuming that the floor reaction force moment correction amount of the target floor reaction force is at least zero.
  • Means for determining a target amount it is preferable to determine the floor reaction force moment correction amount based on at least the difference between the determined model limit target amount instantaneous value and the limited limit target amount. (33rd invention).
  • an estimated value of the limited target amount at least when the floor reaction force moment correction amount of the target floor reaction force is assumed to be 0 is determined, and the estimated value and the allowable range are determined.
  • the restricted amount to be restricted is determined based on the comparison with.
  • the estimated value may be used, the estimated value of the limited target amount may be determined in consideration of the Jai mouth effect.
  • the limited amount to be restricted is determined to be as close as possible to the estimated value of the amount to be restricted within the permissible range. Based on the difference between the two, the amount of floor reaction force moment correction is determined. Even if a compensating floor reaction force moment is additionally generated, it is possible to determine an appropriate floor reaction chamoment correction amount that enables the restriction target amount to be kept within the allowable range.
  • the first model input correction means comprises Both the target floor reaction force and the floor reaction duck
  • the floor reaction force moment correction amount is determined based on the difference from the limited amount to be restricted (the 34th invention).
  • the floor reaction chamoment correction amount of the target floor reaction force is made to match the required value, that is, only the required value is added to the first dynamics model.
  • An estimated value of the restricted target quantity when it is assumed to be input is obtained, and the restricted restricted target quantity determined based on a comparison between the estimated value and the allowable range is determined.
  • the sum of the instantaneous value of the model restriction target quantity and the above-mentioned required value may be used as the estimation value of the restriction target quantity as it is.
  • the restricted amount to be restricted may be as small as possible within the allowable range. It is preferable to determine a value close to the estimated value.
  • the floor reaction force moment correction amount is determined based on at least the difference between the model restricted target amount instantaneous value and the restricted restricted target amount.
  • the appropriate amount of floor reaction chamoment correction is determined so that the amount to be restricted does not exceed the allowable range and approaches the required value as much as possible. Can be determined.
  • a correction amount of the target motion is obtained at least based on the determined model limit target amount instantaneous value and the allowable range, and the obtained correction amount is used as the second power.
  • a second model input correction means for additionally inputting to the scientific model may be provided (the 35th invention).
  • a perturbation model representing the relationship between the perturbation of the lopot and the perturbation of the restricted object amount, and a floor reaction force moment based on at least the determined model limited object amount instantaneous value and the permissible range.
  • the operation amount of the floor reaction force moment is distributed to the floor reaction force moment correction amount input to the first dynamic model and the perturbation model operation amount input to the perturbation model.
  • Inputs suitable for the characteristics of the model and the perturbation model can be input to each model. That was Therefore, it is possible to appropriately determine the instantaneous value of the target motion that can keep the limited object amount within an allowable range while preventing the first dynamics model and the perturbation model from becoming unstable.
  • the perturbation model it becomes easy to calculate the correction amount of the target motion that is additionally input to the second dynamic model.
  • the floor reaction force moment correction amount input to the first dynamic model is desirably the low-frequency component (DC component) of the floor reaction force moment operation amount, and the perturbation model operation amount input to the perturbation model. Is preferably the high frequency component of the manipulated variable of the floor reaction force moment.
  • means for determining a required value of the manipulated variable of the floor reaction force moment according to at least the state quantity of the perturbation model is provided, and the means for determining the manipulated variable of the floor reaction force moment is Preferably, an operation amount of a floor reaction force moment to be given to the distribution means is determined based on at least the determined model limit target amount instantaneous value, the allowable range, and the required value (third invention). '
  • the thirty-seventh aspect not only the model limiting target amount instantaneous value and the allowable range in consideration of the compensation floor reaction force moment, but also the state quantity of the perturbation model (the rotation angle of the rotating body as an element of the perturbation model, In consideration of the angular velocity, the manipulated variable of the floor reaction force moment input to the distribution means is determined, so that the state quantity of the perturbation model does not depart from the state quantity corresponding to the required value. It is possible to prevent the correction amount of the target motion obtained by the perturbation model from becoming inappropriate.
  • the means for determining the required value of the manipulated variable of the floor reaction force moment is based on a feedback control law according to a deviation between a state quantity of the perturbation model and a target value for the state quantity. It is preferable to determine the request value sequentially (38th invention).
  • the state quantity of the perturbation model is close to a certain target state quantity.
  • the manipulated variable of the floor anti-camo, and consequently, the manipulated variable of the perturbation model is determined so that it is almost maintained by the side. This makes it possible to make the correction amount of the target motion determined by the perturbation model suitable for keeping the state of the perturbation model stable and for keeping the restriction amount within an allowable range.
  • the perturbation model includes a perturbation motion for perturbing a component of the rate of change of the angular momentum of the robot around a vertical axis or a floor normal axis.
  • the model is preferably a model representing the relationship with the perturbation of the restricted object (the 39th invention).
  • the perturbation movement is a perturbation movement for maintaining the position of the center of gravity of the mouth pot substantially constant (the 40th invention).
  • the target motion can be corrected by the perturbation model without affecting the translational floor reaction force of the mouth pot.
  • the perturbation movement is a perturbation movement of the upper body and Z of the robot or an arm extending from the upper body (the 41st invention). .
  • the means for determining the manipulated variable of the floor reaction force moment comprises: Means for determining based on the determined instantaneous value of the limited amount of the model, comparing the determined estimated value with the allowable range, and determining the limited limited amount limited to the allowable range based on the comparison. Means for operating the floor reaction force moment based on at least the difference between the determined instantaneous value of the model restriction target amount and the restricted restriction target amount (the 42nd invention). PC leak 004/009472
  • an estimated value of the restricted object amount is obtained when the perturbation model operation amount is assumed to be 0, and the restricted restriction is determined based on a comparison between the estimated value and the allowable range.
  • Determine the target amount In this case, for example, the instantaneous value of the model restriction amount may be used as the estimated value of the restriction target amount as it is, but the estimated value of the restriction target amount may be determined in consideration of the gyro effect.
  • the restricted amount to be restricted is determined as close to the estimated value of the restricted amount as possible within the allowable range.
  • an operation amount of the floor reaction force moment is determined based on at least a difference between the model restriction target amount instantaneous value and the restricted restriction target amount. As a result, even if a compensating floor reaction force moment is additionally generated, the operation amount of the floor reaction chamoment can be determined so that the restriction target amount does not exceed the allowable range.
  • the means for determining the operation amount of the floor reaction force moment includes: Means for determining an estimated value of the limited object amount based on at least the determined model limited object amount instantaneous value and the required value, assuming that the estimated value is matched with the required value; and Means for determining a limited amount to be restricted, which is limited to the allowable range based on the comparison, wherein at least the determined instantaneous value of the limited amount of model and the limited amount of restricted It is preferable to determine the operation amount of the floor reaction force moment based on the difference ”(the 43rd invention).
  • the perturbation model operation amount is made to match the required value, that is, an estimated value of the restricted object amount is obtained when only the required value is input to the perturbation model.
  • Determine the restricted quantity determined based on the comparison between the value and the allowable range.
  • the sum of the instantaneous value of the model restriction target amount and the above required value may be used as the estimated value of the restriction target amount as it is, but the estimated value of the restriction target amount is determined in consideration of the gyro effect. May be determined.
  • the restricted amount to be restricted is determined to be a value as close as possible to the estimated value of the restricted amount within the allowable range.
  • the operation amount of the floor reaction force moment is determined based on at least the difference between the model restricted target amount instantaneous value and the restricted restricted target amount, that is, the portion of the model restricted target amount instantaneous value that deviates from the allowable range. .
  • the operation amount of the floor reaction force moment which does not exceed the allowable range and ensures the stability of the perturbation model, is appropriate. Can be determined.
  • a fourth invention of the control device for a legged mobile robot according to the present invention generates a desired gait of a legged mobile robot that moves by moving a plurality of legs extended from the upper body,
  • a control device for controlling the operation of the robot so as to follow the desired gait In a control device for controlling the operation of the robot so as to follow the desired gait,
  • the vertical component of the floor reaction force moment or the floor component normal direction component of the floor reaction force moment to be applied to the lopot operating following the target gait is set as the target object amount, and the allowable amount of the object amount is limited.
  • a tolerance setting method for setting the range
  • Target floor reaction force temporary instantaneous value determining means for sequentially determining at least a temporary instantaneous value of the desired floor reaction force of the target motion and the desired floor reaction force constituting the desired gait; Values into a first dynamic model representing the relationship between the movement of the lopot and the floor reaction force, and a first model calculation for obtaining a first temporary instantaneous value of the target motion as an output of the first dynamic model Means for determining a second temporary instantaneous value of the target motion, JP2004 / 009472
  • the second restricted instantaneous value of the target motion is determined based on at least the temporary instantaneous value of the target floor reaction force so that the instantaneous value of the limited target amount obtained by the predetermined calculation from the above is within the allowable range.
  • Model calculation means
  • Operation amount calculating means for obtaining an operation amount of a floor reaction force moment based on at least a difference between the first provisional instantaneous value and the second provisional instantaneous value of the target motion so that the difference approaches zero.
  • Model input correction means for additionally inputting the operation amount of the floor reaction force moment to at least one of the first dynamic model and the second dynamic model
  • a second temporary instantaneous value of the target exercise is determined as a target instantaneous value of the target exercise.
  • the tentative instantaneous value of the desired floor reaction force is input to the first dynamic model, and the first tentative instantaneous value of the target motion is obtained. It is also input to the second dynamic model, and the second temporary instantaneous value of the target motion is obtained using the second dynamic model.
  • a predetermined component is obtained from the vertical component or the floor normal direction component of the floor reaction force moment balanced with the second tentative instantaneous value of the target operation on the second dynamic model and the compensated floor reaction force moment.
  • the second provisional instantaneous value of the target motion is determined so that the restricted target amount instantaneous value obtained by the calculation falls within the allowable range.
  • the manipulated variable of the floor reaction force moment is determined so that the difference approaches zero. It is additionally input to at least one of the model and the second kinetic model. Further, the second temporary instantaneous value of the target exercise is different from the target instantaneous value of the target exercise. Is determined.
  • the second provisional instantaneous value of the target motion obtained by the restricted second model calculation means has high stability while keeping the restricted target amount within the allowable range.
  • the target movement of the mouth pot can prevent the spin of the lo-pot and the fall due to it while keeping the posture state quantity of the mouth pot in the target direction of the target movement stably. Can be determined. It is also necessary to determine a target motion that can prevent the movement trajectory of the mouth pot from deviating from the trajectory of the desired gait, or from impairing the continuous stability of the robot in one direction. it can. In addition, as long as the amount to be restricted falls within the allowable range, the amount to be restricted does not always need to be set to 0 or almost 0. Can be prevented.
  • the first kinetic model may have a relatively low dynamic approximation accuracy
  • the second kinetic model may have a higher dynamic approximation accuracy than the first kinetic model. Desirably.
  • the difference between the first tentative instantaneous value and the second tentative instantaneous value of the target motion is determined by the state of the posture of the predetermined portion of the mouth port around the vertical axis or the floor normal axis. It is preferable to include a difference in the amount (fifth invention).
  • the stability of the posture amount of the predetermined portion (for example, the upper body) in the one direction can be appropriately increased.
  • the vertical component or the floor normal direction component of the moment of the floor reaction force substantially balanced with the instantaneous value of the target motion on the second dynamic model is used.
  • the above-described forty-fourth invention can be easily realized by using, for example, the configuration of the thirty-fourth invention. That is, in the thirty-fourth aspect, at least the provisional instantaneous value of the desired floor reaction force is input to a third dynamic model representing a relationship between the movement of the lopot and the floor reaction force, and A third model calculating means for obtaining a third tentative instantaneous value of the target motion as an output of the dynamic model, wherein the means for determining a required value of the floor reaction force moment correction amount of the target floor reaction force is The required value is determined based on a difference between a target instantaneous value of the target exercise and a third provisional instantaneous value of the target exercise so that the difference approaches zero (the 47th invention).
  • the third kinetic model and the third model calculating means correspond to the first kinetic model and the first model calculating means in the forty-fourth invention, respectively. Therefore, the forty-seventh invention is equivalent to the forty-fourth invention, and has the same effect as the forty-fourth invention.
  • slip determination means is provided for determining occurrence of slip of the lopot operating following the target gait. JP2004 / 009472
  • the permissible range setting means variably sets the permissible range according to the judgment result of the slip judging means (48th invention).
  • the allowable range of the restriction target amount is variably set in accordance with the determination result of the actual occurrence of robot slippage, so that the occurrence of robot slippage can be reliably suppressed. If it is determined that slippage occurs, the allowable range should be set so as to narrow it.
  • the occurrence of slip can be determined in the same manner as in the seventeenth to nineteenth inventions.
  • 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 (the 49th invention).
  • 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 the occurrence of slip based on at least the apparent spring constant (50th invention).
  • the slip judging means judges the occurrence of slip based on at least the actual floor reaction force acting on the grounded leg passed through a band pass filter having a frequency passing characteristic in a range near a predetermined frequency. (Invention 51).
  • the occurrence of slip can be determined in the same manner as in the seventeenth to nineteenth inventions, respectively.
  • the determination of the occurrence of slip can be made in any of the 49th to 51st inventions, but the determination of the occurrence of slip is made by combining two or more of the 49th to 51st inventions. You may do so.
  • FIG. 1 shows a leg-type transfer in an embodiment of the present invention and a reference example related thereto.
  • Fig. 2 schematically shows the overall configuration of a bipedal moving robot as a moving robot
  • Fig. 2 shows the structure of the distal end of the robot leg in Fig. 1
  • Fig. 3 shows the robot in Fig. 1.
  • FIG. 4 is a block diagram showing a configuration of a control unit provided
  • FIG. 4 is a block diagram showing a functional configuration of a control unit according to a reference example.
  • Fig. 5 is a diagram for explaining the running gait generated in the embodiment and the reference example.
  • Fig. 6 is a graph showing an example of the desired floor reaction force vertical component trajectory.
  • Fig. 7 is the X component and Y of the desired ZMP trajectory.
  • FIG. 8 is a diagram for explaining the upper body translation mode of the mouth pot
  • FIG. 9 is a diagram for explaining the upper body tilt mode of the mouth pot
  • FIG. 10 is a mouth.
  • Fig. 11 (a) is a diagram for explaining the upper body single rotation mode of the pot
  • Fig. 11 (a) is a diagram for explaining the anti-phase arm swing mode of the mouth pot in a plan view
  • Fig. 11 (b) is a mouth.
  • FIG. 12 is a diagram for explaining the anti-phase arm swing mode of the pot in a side view
  • FIG. 12 is a diagram for explaining a dynamic model used in the embodiment.
  • FIG. 13 is a flowchart showing the main routine processing of the gait generator in the reference example, FIG.
  • FIG. 14 is a diagram for explaining the divergent state of the mouth pot
  • FIG. 15 is a subroutine of S022 in FIG.
  • FIG. 16 is a flowchart for explaining the process
  • FIG. 16 is a diagram for explaining a normal gait and a supporting leg coordinate system
  • FIG. 17 is a diagram illustrating a body trajectory of a normal gait and a supporting leg coordinate system
  • Fig. 19 is a graph showing an example of setting the desired floor reaction force vertical component trajectory in a normal gait
  • Fig. 20 is a floor reaction force horizontal component in a normal gait.
  • FIG. 23 is a flowchart showing the subroutine processing of S024 in FIG. 13
  • FIG. 24 is a flowchart showing the subroutine processing of S208 in FIG. 23
  • FIG. 24 is a flowchart showing the subroutine processing of S306,
  • FIG. 26 is a flowchart showing the subroutine processing of S412 in FIG.
  • Figure 27 is acceptable
  • FIG. 28 is a graph showing an example of the floor reaction force horizontal component considering the allowable range
  • Fig. 29 is a graph showing an example of the body tilt angle acceleration
  • Fig. 30 is a graph showing an example of the body tilt restoration moment ZMP converted value for restoring the robot's body tilt angle
  • Fig. 31 shows the body tilt restoration moment ZMP converted value.
  • Fig. 32 is a graph showing an example of the floor reaction force moment vertical component without considering the allowable range
  • Fig. 33 is a floor reaction force moment vertical component considering the allowable range.
  • FIG. 34 is a graph showing an example of the anti-phase arm swing moment
  • FIG. 34 is a graph showing an example of the anti-phase arm swing moment
  • FIG. 35 is a graph showing the anti-phase arm swing angular acceleration corresponding to the anti-phase arm swing moment of FIG. 34, and FIG. A graph showing an example of inverted phase arm swing restoration angular acceleration for restoring antiphase arm swing angle.
  • Fig. 37 is a graph showing the antiphase arm swing recovery moment corresponding to the antiphase arm swing recovery angular acceleration in Fig. 36, and Fig. 38 is the vertical component of the floor reaction force moment in Fig. 33.
  • 37 is a graph illustrating a vertical component of a floor reaction force moment obtained by combining 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, and Fig. 41 is the current time's step.
  • Fig. 42 is a flow chart showing the subroutine processing of SO28 in Fig. 13 and
  • Fig. 43 is a flow chart showing the subroutine processing of SO28 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 corrected target ZMP, and Fig. 45 is a graph of S0300 in Fig. 13.
  • FIG. 46 is a flowchart showing the subroutine processing, and FIG. 46 is a flowchart showing the subroutine processing of S11412 in FIG. 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, and FIG. 50 is a vertical component of a desired floor reaction force in a walking gait.
  • Fig. 51 shows the relationship between the vertical position of the body in the running gait of the robot and the vertical component of the floor reaction force, and
  • Fig. 52 shows the relationship between the body vertical in the walking gait of the robot. It is a figure which shows the relationship between a direction position and a floor reaction force vertical component.
  • FIG. 53 is a block diagram showing the functional configuration of the control unit according to the first embodiment of the present invention, and FIG.
  • FIG. 54 is a flowchart showing the processing of the compensation total floor anti-camo horizontal component distributor shown in FIG. 53.
  • FIG. 55 is a block diagram showing the processing of the model-operated floor anti-camo-motion vertical component determiner shown in FIG. 53
  • FIG. 56 is a main routine processing of the gait generator in the first embodiment.
  • FIG. 57 is a flowchart showing the subroutine processing of S3032 in FIG. 56
  • FIG. 58 is a flowchart showing the subroutine processing of S31414 in FIG. It is.
  • FIG. 59 is a block diagram showing a functional configuration of a control unit according to the second embodiment of the present invention
  • FIG. 60 is a flowchart showing main routine processing of a gait generator in the second embodiment
  • FIG. 60 is a flowchart showing the subroutine processing of S20334
  • FIG. 62 is a flowchart showing the subroutine processing of S2114 in FIG.
  • FIG. 63 is a block diagram illustrating a functional configuration of a gait generator according to the third embodiment of the present invention
  • FIG. 64 is a diagram illustrating a setting example of a ZMP allowable range according to the third embodiment.
  • FIG. 66 is a block diagram showing the processing of S 356 in FIG. 65
  • FIG. 67 is a horizontal body position shown in FIG. Diagram for explaining the perturbation model
  • Fig. 68 is a diagram for explaining the body posture angle correction perturbation model shown in Fig.
  • FIG. 70 is a diagram for explaining the perturbation model.
  • FIG. 70 is a block diagram showing processing of the antiphase arm swing angle correction perturbation model moment determination unit shown in FIG.
  • FIG. 71 is a block diagram showing the processing of S3536 in FIG. 65 in the fourth embodiment of the present invention.
  • FIG. 72 is a block diagram of the antiphase arm swing angle correction perturbation model moment determination unit shown in FIG. place
  • FIG. 73 is a block diagram showing a functional configuration of a gait generator according to a fifth embodiment of the present invention
  • FIG. 74 is a block diagram showing processing of a pseudo-order full model shown in FIG. FIG.
  • FIG. 75 is a block diagram showing the processing of S355 in FIG. 65 in the sixth embodiment of the present invention.
  • FIG. 76 is a block diagram showing a functional configuration of a control unit according to the seventh embodiment of the present invention.
  • FIG. 77 is a flowchart showing main routine processing of the gait generator in the seventh embodiment. Is a flowchart showing the processing of S2334 in FIG. 77
  • FIG. 79 is a flowchart showing the processing of the slip judging section shown in FIG. 76
  • FIGS. 9 is a flowchart showing the subroutine processing of S 5 210, S 5 212, and S 5 214
  • FIG. 83 shows the judgment result of the slip judging unit, the reduction rate of the allowable range, and the floor reaction force.
  • FIG. 28 is a block diagram illustrating an example (eighth embodiment) of a modification of the process of the moment determination unit.
  • a two-legged robot is taken as an example of a leg-type moving port.
  • FIGS. 1 to 47 a description will be given of a reference example relating to a leg-type moving port control device of the present invention.
  • An embodiment of the present invention to be described later has the same mechanical configuration as this reference example, and only a part of the gait generation processing and control processing of the mouth pot is different from the reference example. is there. Therefore, the description of this reference example is often referred to in the description of the embodiment described later.
  • FIG. 1 is a schematic diagram showing an overall bipedal locomotion lopot as a legged locomotion lodge according to this reference example.
  • a two-legged moving port (hereinafter referred to as a port) 1 is a pair of right and left legs (leg links) extending downward from an upper body (the base body of the robot 1) 2, 2 is provided.
  • the two legs 2, 2 have the same structure, each having six joints.
  • the six joints are for the rotation (rotation) of the crotch (lumbar region) (for rotation in one direction with respect to the upper body 3) in order from the upper body 3 side.
  • the six joints are for the rotation (rotation) of the crotch (lumbar region) (for rotation in one direction with respect to the upper body 3) in order from the upper body 3 side.
  • the symbols corresponding to the right leg and the left leg respectively. The same applies hereinafter
  • the joint for rotation of the crotch (lumbar region) in the mouth direction about the X axis).
  • each leg 2 At the lower part of the two joints of the ankle of each leg 2 1 8 R (L), 20 R (L). The foot that constitutes the tip of each leg 2 (foot) 2 2 R (L) At the same time, the top of both legs 2, 2 is connected via the three joints 1 OR (L), 12 R (L), and 14 R (L) of the crotch of each leg 2.
  • the upper body 3 is attached. Inside the body 3, a control unit 60 described in detail later and the like are stored. In FIG. 1, the control unit 60 is shown outside the body 3 for convenience of illustration.
  • the hip joint (or waist 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 and knee joints are linked by a thigh link 24 R (L). 2004/009472
  • the knee joint and the ankle joint are connected by the lower leg link 26 R (L).
  • a pair of left and right arms 5, 5 is attached to both upper sides of the upper body 3, and a head 4 is disposed 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.
  • the foot 2 2 R (L) of each leg 2 is given six degrees of freedom with respect to the upper body 3.
  • 6 * 2 12 pieces including both legs 2 and 2
  • * in this specification means multiplication as an operation for a scalar and multiplication as an operation for a vector.
  • the desired motion of both feet 22R and 22L can be performed by driving the joint of (2) at an appropriate angle.
  • the robot 1 can arbitrarily move 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.
  • a known 6-axis force sensor 50 is located below the ankle joint 18 R (L) and 20 R (L) of each leg 2 between the foot 22 and R (L). Are 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 is provided for detection, and a detection signal is output from the attitude sensor 54 to the control unit 60. It is.
  • the attitude sensor 54 includes a three-axis acceleration sensor and a three-axis gyro sensor (not shown), and the detection signals of these sensors determine the attitude angle (tilt angle and angle) of the body 3 and its angular velocity. And is used to estimate the robot's self-position and orientation.
  • each joint of the robot 1 has an electric motor 64 (see FIG. 3) for driving the joint, and a rotation amount of the electric motor (see FIG. 3).
  • An encoder (mouth—tally encoder) 65 (see FIG. 3) for detecting the joint rotation angle) is provided, and a detection signal of the encoder 65 is output from the encoder 65 to the control unit 60.
  • a joystick (operator) 73 is provided at an appropriate position of the mouth port 1, and the joystick 73 is operated.
  • 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 moving straight. .
  • 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 present reference example.
  • a spring mechanism 70 is provided between the foot 22 and the 6-axis force sensor 50, and a sole (each foot 22) is provided.
  • An elastic sole 71 made of rubber or the like is affixed to the bottom surface of R (L).
  • the compliance mechanism 72 is constituted by the spring mechanism 70 and the sole elastic body 71.
  • a rectangular guide member (not shown) attached to the upper surface of the foot 22 R (L) and an ankle joint 18 R (L) (FIG.
  • FIG. 3 is a block diagram showing the configuration of the control unit 60.
  • the control unit 60 is composed of a microcomputer and includes a first arithmetic unit 90 and a second arithmetic unit 92 composed of a CPU, an AZD converter 80, and a power counter 86. , A DZA converter 96, a RAM 84, a ROM 94, and a bus line 82 for exchanging data between them.
  • the output signals of the 6-axis force sensor 50, posture sensor 54 (acceleration sensor and rate gyro sensor), joystick 73, etc. of each leg 2 are digitalized by the AZD converter 80.
  • the data is sent to the RAM 84 via the bus line 82.
  • the output of the encoder 65 (rotary encoder) of each joint of the mouth port 1 is input to the RAM 84 via the counter 86.
  • the first arithmetic unit 90 generates a desired gait as described later and calculates a joint angle displacement command (a displacement angle of each joint or a command value of a rotation angle of each electric motor 64). , Sent to RAM 84. Also, 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 is necessary for driving each joint. The amount of operation is calculated and output to the electric motor 64 that drives each joint via the D / A converter 96 and the sample amplifier 64 a.
  • FIG. 4 is a block diagram showing an overall functional configuration of a control device for a legged moving port according to this reference example.
  • "Real robot" in Fig. 4 The other parts are constituted by the processing functions executed by the control unit 60 (mainly the functions of the first arithmetic unit 90 and the second arithmetic unit 92).
  • the symbols R and L are omitted.
  • 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
  • Orbit of position and target posture target arm posture trajectory
  • target ZMP target total floor reaction force center point
  • target ZMP target total floor reaction force trajectory
  • the body posture in the gait means a pattern of time change (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 roll direction (around the X axis) with respect to the Z axis (vertical axis) and the inclination angle and the yaw direction of the body 3 in the pitch direction (around the Y axis). The angle of rotation of the upper body 3 (around the Z axis). (Foot angle)-The foot posture is expressed by the spatial azimuth of two axes fixed to each foot 22 . In this specification, the body posture may be referred to as the body posture angle. Also, among the body postures, the posture in the vertical direction is sometimes 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.
  • a desired gait is a set of a desired motion trajectory and a desired floor reaction force trajectory during one or more steps.
  • the desired gait is the desired motion trajectory during one step and its ZMP trajectory. It is a pair with.
  • the vertical position (body height) of the body 3 of the robot 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 anti-linear component is determined subordinately. Furthermore, the body horizontal position trajectory is determined 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. This also determines the translational floor reaction force horizontal component. For this reason, in the specification of PCT Publication WO / 02Z 40224, only the target ZMP was sufficient as a physical quantity to be explicitly set with respect to the floor reaction force of the target gait.
  • the floor reaction force vertical component (translational floor reaction force vertical component) is also important for control. Therefore, in the present invention, the trajectory of the robot 1, such as the desired vertical body position, 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 the definition of the 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 target gait is used in the meaning from the time when one leg 2 of the robot 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 does not necessarily have to be for one step.
  • a gait for a period of more than one step or shorter than one step (for example, half a step) may be used.
  • 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 during which the mouth pot 1 supports its own weight with both legs 2 and 2 is not limited to the period when both legs are supported in the gait.
  • 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 mouth pot 1 during the one-leg support period is called a “free leg”.
  • there is no two-leg support period and the one-leg support period (landing period) and the aerial period are alternately repeated.
  • both legs 2 and 2 do not support the weight of mouth port 1 during the aerial period, but legs 2 and the supporting legs, which were free legs during the one leg support period immediately before the aerial period, were not used.
  • the two legs 2 are referred to as a free leg and a supporting leg, respectively, even in the aerial phase.
  • 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. Other definitions and details regarding the gait are also described in Japanese Patent Application Laid-Open No. H10-86081 proposed earlier by the present applicant. 0 8 1. The contents that are not described in the official gazette are mainly explained.
  • the running gait shown in FIG. 5 will be described.
  • This running gait is similar to a normal running gait of a human.
  • the foot 2 2 of only one of the left and right legs 2 (supporting leg) of the robot 1 lands (grounds), and the two legs 2 and 2 float in the air.
  • the aerial period is repeated alternately.
  • the first state in Fig. 5 is the state at the beginning (initial) of the one-leg support period, and the second state.
  • the third state is at the beginning of the aerial phase following the one-leg support phase (at the end of the one-leg support phase), and the fourth state is the The state at the intermediate point, the fifth state, shows the state at the end of the aerial period (at the start of the next one-leg support period).
  • the mouth pot 1 is the leg on the support leg (the leg 2 on the front side in the traveling direction of the mouth pot 1) at the start of the one-leg support period.
  • the toe of the foot 22 on the supporting leg side (the foot 22 of the leg 2 on the rear side in the traveling direction of the mouth pot 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) 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 After determining the parameters that define some components of the desired gait, such as the desired foot position / posture trajectory of the desired gait, the desired floor reaction force vertical component trajectory, etc. The instantaneous value of the desired gait is sequentially determined using the gait parameters, and a time-series pattern of the desired gait is generated.
  • 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. It is generated for each foot 22 using the finite time settling filter proposed in 450.
  • This finite-time settling filter is a first-order lag filter with a variable time constant, that is, a filter whose transfer function is expressed in the form of 1 Z (1 + s). It is composed of multiple stages (three or more stages in this reference example) connected in series, and can generate and output a trajectory that reaches the specified value at the desired specified time. Things.
  • the time constants of the unit filters in each stage are sequentially and variably set in accordance with the remaining time until the specified time from when the output of the finite-time settling filter is started. More specifically, as the remaining time becomes shorter, the value of ⁇ decreases from a predetermined initial value (> 0), and finally, at the specified time when the remaining time becomes 0, 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 amount of change from the initial value of the output of the finite time settling filter to the specified value).
  • Such a limited-time settling filter not only generates an output that reaches a specified value at a specified time, but also sets the output change speed of the finite-time settling filter at the specified time to 0 or almost 0. Can be.
  • 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 target foot position / posture trajectory generated by the finite-time setting file as described above is the target position / posture trajectory of each foot 22 in the support leg coordinate system described later fixed to the floor surface. .
  • the target foot position / posture trajectory generated as described above shows that the position of each foot 22 gradually accelerates from its initial contact state (the state at the initial time of the target 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 robot 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 becomes 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 the landing of the running gait, the target gait of the mouth pot 1 is a gait such that the leg 22 on the free leg side is retracted to 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 free leg side becomes 0 or almost 0 at the moment of landing. Raise foot 22 and land. As a result, the landing impact is reduced, and the landing impact is prevented from becoming excessive.
  • the finite time setting filter is a series of three or more unit filters (for example, three steps) connected in series, so the speed of each foot 22 before the scheduled landing time ( Not only does the speed of change of the foot position) become 0 or almost 0, but also the acceleration of each foot 22 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.
  • the landing impact is further reduced.
  • the number of steps in the unit file of the finite time settling filter may be two, but in this case, The acceleration of each foot 22 at the scheduled landing time is generally not zero.
  • the foot position trajectory was generated using a finite time settling filter.
  • the change speed of the foot position at the scheduled landing time was 0 or almost 0.
  • the target foot is calculated 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 scheduled landing time becomes zero or almost zero.
  • a position trajectory may be generated.
  • the generation of the desired foot posture trajectory as described above, at the time when almost the entire bottom surface of each foot 22 is installed on the floor, the change speed of the posture of each foot 22, A function such as a polynomial is 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.
  • the shape of the desired floor reaction force vertical component trajectory in the gait (specifically, the shape during the one-leg support period) is defined as a trapezoidal shape (a shape that is convex on the increasing side of the floor reaction force vertical component).
  • the gait parameters floor reaction force vertical component trajectory parameters
  • the desired floor reaction force vertical component is constantly set to zero.
  • the desired floor reaction force vertical component trajectory should be set so that it is substantially continuous (so that the value does not become discontinuous).
  • substantially continuous refers to the value jump that occurs when an analog continuous trajectory (real continuous trajectory) is digitally represented in a discrete time system. This does not mean that the continuity is lost.
  • the target ZMP trajectory is set as follows. In the running gait shown in Fig. 5, as described above, the foot lands on 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. Landing on the heel of the side foot 2 2 Therefore, the target ZMP trajectory during the one-leg support period is, as shown in the upper part of Fig. 7, the heel of the support leg side foot 22 as the initial position, and then almost the entire bottom surface of the support leg side foot 22. Is set to move to the center in the front-rear direction of the foot 22 during the period in which the foot is in contact with the ground, and then to the toe of the support leg-side foot 22 by the time of leaving the floor.
  • 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. .
  • both legs 2, 2 are separated from the floor after the end of the one-leg support period, and the floor reaction force vertical component becomes zero.
  • 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.
  • this reference example as shown in the upper diagram of Fig.
  • the position of the target ZMP trajectory in the X-axis direction during the aerial period is The toes were continuously moved from the toe to the landing position of the heel of the foot 22 on the free leg side.
  • the position of the target ZMP trajectory 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 direction position to the Y-axis position at the center of the ankle joint of the swing leg side 'leg 2'.
  • the target ZMP trajectory was made continuous (substantially continuous) throughout the gait.
  • a 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, the desired body position and posture). Adjust the trajectory). Taking into account the model's approximation error, the empty It is desirable to keep the target ZMP trajectory continuous (substantially continuous) even in the medium term.
  • the horizontal component of the moment around the target ZMP is set to a certain value '(the value is 0 in this reference example, regardless of the position of the target ZMP. Since the desired gait such that it is not always 0 in the embodiment described later can be uniquely generated, 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 ZMP trajectory parameters (parameters defining the target ZMP trajectory).
  • the meaning of “substantially continuous” of the ZMP trajectory is the same as 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 the desired body posture but also the reference body posture.
  • the reference body posture is generated in accordance with the gait requirements (requests from the gait generator 100, such as a device such as an action planning unit or an external device (such as the joystick 73)). Posture.
  • Target body posture (hereinafter referred to as the target body posture if no “reference” is attached) PC leak 004/009472
  • the target body posture 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 02/40224 the concept of the reference body posture is not described, but since the target body posture pattern is given explicitly and preferentially, the target body posture It is the same thing that body postures always match.
  • gait with an aerial period such as running.
  • simply adjusting the horizontal acceleration of the upper body, etc. will result in the floor reaction force horizontal component and 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 operation modes described below in combination, the floor reaction force horizontal component and the floor reaction camo- ture vertical component of the desired gait fall within the allowable range (or within the friction limit). The kinetic equilibrium condition was satisfied while existing.
  • a motion that changes the floor reaction force moment horizontal component and the floor reaction force horizontal component around the target ZMP without changing the floor reaction force vertical component is called a body motion mode.
  • the vertical component of the floor reaction camouflage (the component around the vertical axis) is also perturbed, but we do not pay attention to this point.
  • ⁇ ⁇ P and the change in the floor reaction force horizontal component per unit acceleration is A Fp.
  • the mouth pot 1 when the body tilt angle acceleration (angular acceleration at the tilt angle of the body 3) is perturbed from a certain motion state of the robot 1 around a certain point Pr, the mouth pot 1
  • the total center of gravity of the body does not perturb, but the angular momentum around the whole body center of gravity (excluding the component around the vertical axis) perturbs.
  • the perturbation of the body tilt angle acceleration around the point Pr does not perturb the floor reaction force vertical component and the floor reaction force horizontal component, but perturbs the floor reaction force moment horizontal component around the target ZMP.
  • the motion mode that perturbs the body tilt angle acceleration at mouth port 1 is called the body tilt mode.
  • 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 perturbation of the angular acceleration of the body around the point Pq is the vertical floor reaction force moment around the target ZMP without perturbing the floor reaction force vertical component, floor reaction force horizontal component, and floor reaction force moment horizontal component. Perturb the components.
  • the motion mode in which the robot 1 angular acceleration is perturbed in this way is called the body rotation mode.
  • 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 ZMP without perturbing the floor reaction force vertical component, floor reaction force horizontal component, and floor reaction force moment horizontal component Called arm swing mode.
  • FIGS 11 (a) and (b) show the state in which the antiphase arm swing angle is 0 az.
  • AMaz is the change in floor component per unit angular acceleration per unit angular acceleration
  • mu Fa is the change in floor reaction force horizontal component per unit angular acceleration.
  • 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).
  • a dynamic model of the robot 1 used in this reference example will be described.
  • a simplified (approximate) dynamic model shown below is used.
  • 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 the links) is also required. It is.
  • FIG. 12 is a dynamic model of the mouth pot 1 used in the present reference example. As shown in the figure, this dynamic model is composed of two mass points 2 m and 2 m corresponding to each leg 2 of the mouth pot 1 and a mass point 3 m corresponding to the upper body 3, and a total of three mass points.
  • This model consists of four flywheels, F Hx, F Hy, FHbz, and F Haz, which have one mass and have no mass. fly P
  • Wheels F Hx, FHy, F Hbz, and FH az can rotate around X axis (front-rear axis), Y axis (left-right axis), Z axis (vertical axis), and Z axis (vertical axis), respectively. It is something.
  • the relationship between the motion of the upper body 3 and the floor reaction force the relationship between the translational motion of the upper body 3 (upper body translation mode) and the floor reaction force, the tilting motion of the upper body 3 (upper body tilt mode) Between the floor reaction force and the upper body 3 (rotation mode) and the floor reaction force, as well as the arm swing movement (opposite phase) of the arms 5 and 5 (Arm swing mode) and the floor reaction force.
  • the floor reaction force generated by the horizontal motion of the upper body mass 3m corresponds to the floor reaction force generated by the horizontal translational motion of the upper body 3 (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 rotational movement of the flywheel FHx corresponds to the rotational movement of the body 3 in the roll direction (around the X axis)
  • the rotational movement of the flywheel FHy corresponds to the pitch direction of the body 3 inclining angle ( This corresponds to a rotational movement around the Y axis).
  • the floor reaction force generated by the rotational motion of the flywheel F Hbz ′ corresponds to the floor reaction force generated by the one-rotational motion of the upper body 3 (the upper-body one-rotation mode).
  • the floor reaction force generated by the rotational movement of the flywheel FHaz corresponds to the floor reaction force generated by anti-phase arm swing (anti-phase arm swing mode).
  • each mass point 2m, 2m, 3m is a representative point of the corresponding part, or corresponds to 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.
  • Zb Vertical position of upper body mass point (Generally different from vertical position of upper body)
  • Z Gtotal Vertical position of overall center of gravity
  • Body mass point X position (The body mass position is a point offset from the point Pr by a predetermined distance in the forward and rearward direction of the body. The offset is the center of gravity of the strict model when standing upright, etc. (The position is determined so that the position of the center of gravity of this dynamic model is as close as possible. It is generally different from the horizontal position of the upper body.)
  • ⁇ bx Body tilt angle around X axis with respect to vertical direction
  • J Upper body moment of inertia (Equivalent moment of inertia in the upper body tilt mode; that is, the moment of inertia of FHx and FHy. In general, this does not match the moment of inertia of the three upper bodies of the actual robot 1. )
  • J bz Body moment of inertia around the vertical axis (Equivalent moment of inertia in one rotation mode of the body. Inertia moments of the three body parts of the actual mouth pot 1 are generally It does not match.)
  • J az Moment of inertia around the vertical axis of arm swing (Equivalent inertia moment in antiphase arm swing for spin cancellation. That is, FHz inertia moment.)
  • 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 direction (Z axis) component of the translational floor reaction force. In this reference example, this is equal to the target translational floor reaction force vertical component.)
  • Mx Floor reaction force moment X component around target ZMP (Details around floor reaction camoment—the longitudinal axis (X axis))
  • 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 the position in the front-back direction
  • Y-axis direction the position in the left-right direction
  • the positional relationship with the location is determined in advance, and if one position is determined, the other position is uniquely determined. I have.
  • 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 one angle.) Is determined in advance, and if one position and attitude angle are determined, the other position is uniquely determined. .
  • dX / dt represents the first derivative of X
  • d2X / dt2 represents the second derivative of X. Therefore, if the variable X is displacement, dX / dt means velocity and d2X / dt2 means acceleration. g indicates the gravitational acceleration constant. Here, g is a positive value.
  • Equations 01, 02x, 02y, 03x, 03y, and 03z The equations of motion of the above dynamic model (expressions representing the dynamic equilibrium conditions) are represented by Equations 01, 02x, 02y, 03x, 03y, and 03z.
  • F z mb * (g + d2Zb / dt2) + msup * (g + d2Zsup / dt2)
  • Mx mb * (Yb-Yzmp) * (+ d2Zb / dt2)
  • M z mb * (Xb-Xzmp) * (d2Yb / dt2)-mb * (Y-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
  • the ⁇ Fp is a perturbation amount of Fx or Fy when d2Xb / dt2 or d2Yb / dt2 is perturbed by a unit amount in the expression 0 2 X or the expression 0 2 y, and is thus 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 ⁇ 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 calculated by adding the upper body mass of 3m It is the product of the height (vertical position) from the target ZMP.
  • the relationship between the position of the upper body mass point 3m and the target ZMP and the movement of the upper body mass point 3m is as follows: the upper body mass point 3m corresponds to the inverted pendulum mass point, and the target ZMP corresponds to the inverted pendulum fulcrum.
  • ⁇ in the Y-axis direction is, more accurately, the sign of the right side of Expression 07 inverted.
  • 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 d20 az / dt2 is perturbed by a unit amount in Expression 03z, and thus 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 present reference example is a target gait for one step from the landing of one leg 2 of the robot 1 to the landing of the other leg 2 (in the narrow sense described above).
  • the desired gait for one step is generated in order with the desired gait) as a unit. Therefore, in the running gait of FIG.
  • target gaits from the start of the one-leg support period to the end of the following aerial period (at the start of the next one-leg support period) are generated in order.
  • the target gait to be newly generated is “this gait”
  • the next target gait is “next gait”
  • the next target gait is “next next gait”
  • 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 lands on the free leg side foot 22 up to two steps ahead of the mouth port 1.
  • the required values (requests) of the planned position / posture 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). Then, the gait generator 100 uses these required parameters to obtain a desired body position / posture trajectory, a desired foot position / posture trajectory, a desired ZMP trajectory, a desired floor reaction force vertical component trajectory, a desired arm posture trajectory, etc. Generate At this time, part of the gait parameters that define these trajectories is modified as appropriate to ensure continuity of walking.
  • FIG. 13 is a flowchart (structured flowchart) showing a main routine of a gait generation process executed by the gait generator 100. '
  • various initialization operations such as initializing 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 a timer interrupt for each control cycle (the arithmetic processing cycle of the flowchart in FIG. 13).
  • the control cycle is ⁇ 1;
  • gait switching point means a timing at which the generation of the previous time's gait has been completed and the generation of the current time's gait has started. The control cycle becomes the gait switching point.
  • the request parameter given to the gait generator 100 from the joystick 73 or the like is the landing position / posture (foot 2) of the free leg side foot 2 2 up to two steps ahead. 2) After landing, the foot position and posture when the sole is rotated without slipping so that the sole touches the floor almost completely) and the required values for the scheduled landing time are included.
  • the required value of the gait and the required value of the second step are assumed to correspond to the current time's gait-the next time's gait, respectively, before the generation of the current time's gait (switching of the gait in S016). It is given to the gait generator 100. These required values can be changed even during the generation of the current time's gait.
  • the system is determined.
  • the expected landing position of the free leg side foot 2 2 (22 L in the figure) related to the current time's gait (the first step).
  • the Y-axis direction (the left and right direction of the foot 22 on the supporting leg side of the gait). It is assumed that the position and orientation have been moved by xnext and ynext and rotated by 0 znext around the Z axis (around the vertical axis).
  • 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 representative point of the foot 22 coincides with the origin, and the horizontal plane passing through the origin is the XY plane.
  • System Coordinat 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 support leg coordinate system is not necessarily the representative point of the foot 22 when the entire bottom surface of the foot 22 is in contact with the floor (the position of the foot 22). It is not necessary to match with the representative point, and a point on the floor different from the representative point may be set.
  • 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 22 L of the current time's gait (foot 22.
  • a point (more specifically, a point on the floor that matches the representative point) is defined as the origin, and the front and rearward and left and right directions of the foot 22 L in the horizontal plane passing through the origin are respectively defined as the X'-axis direction and the Y'-axis direction. Is a coordinate system.
  • 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. .
  • the gait cycle of this time is based on the scheduled landing time of the foot 22 on the supporting leg side of the current time gait (required value), and the landing time of the foot 22 on the free leg side of the first step (current gait). Required value), and the next gait cycle is the first step 2
  • the required parameter is input to the gait generator 100 by operating the joystick 73 at the point g.
  • the required parameter 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.
  • a command (request) from a control device such as a joystick 73 and the movement history of one of the mouth pots up to that time, the next and next gait support leg coordinate system, and The next gait cycle 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 are 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.
  • a reference arm posture trajectory parameter that defines the parameters
  • the ZMP trajectory parameter that specifies the target ZMP trajectory
  • the floor reaction force vertical component trajectory parameter that specifies the target floor reaction force vertical component trajectory.
  • 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.
  • steady turning gait refers to the motion state (foot) of the mouth port 1 at the gait boundary (in this reference example, the gait boundary for each step) when the gait is repeated. It is used to mean a periodic gait in which discontinuity does not occur in the flat posture, body position and posture.
  • normal turning gait may be abbreviated as “normal gait J”.
  • the normal turning gait which is a periodic gait
  • the gait composed of the second turning gait is a gait for one cycle of the normal turning gait, and the gait for one cycle is repeated.
  • the term “turn” is used because, when the turning rate is zero, it means straight traveling, so that straight traveling can be included in turning in a broad sense.
  • the generated gait is the running gait of FIG. 5 described above
  • the current time's gait of the desired gait is a running gait having a one-leg support period and an aerial period.
  • the first turning gait and the second turning gait are both 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 this 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 provisional for the gait generator 100 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” means that the position of the upper body 3 of the bipedal moving robot 1 is shifted to a position far away from the position of both feet 22 and 22 as shown in FIG. .
  • the value of the divergent component means that the position of the upper body 3 of the biped locomotion robot 1 is the position of both feet 22 and 22 (more specifically, the position of the foot 22 on the supporting leg side is set to It is a numerical value that represents how far away from the global coordinate system (the origin of the support leg coordinate system).
  • the gait is generated using the divergent component as an index so that the desired gait is continuously generated without the divergence.
  • a normal gait which is a typical example of a continuous gait (a periodic gait in which the gait of the same pattern can be repeated without generating a discontinuity in the gait trajectory, Even if the initial divergent component of a gait that does not diverge even after infinite repetition) (the divergent component at the initial time of the normal gait), it is not simply 0, but if the parameters of the normal gait change, Its initial divergent component also changes. In other words, the appropriate divergent component changes depending on the form of gait such as how to walk or run.
  • 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. From this, the current gait is generated such that the terminal divergent component of the current time gait matches the initial divergent component of the normal gait (more generally, the current time's gait is made continuous or close to the normal gait) .
  • the basic guidelines for generating such a gait are the same as those of the PCT publication WO / 02/40224 previously proposed by the present applicant.
  • 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.
  • ⁇ and ⁇ ′ are certain predetermined values. These ⁇ 0 and ⁇ '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 WOZ02 / 40224.
  • 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 consist of 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, the gait cycle of each turning gait, etc. Is done.
  • the first swing gait initial free leg foot position / posture is the current gait end support leg foot position / posture viewed from the next time gait support leg coordinate system. In this case, in the running gait, the support leg foot 22 at the end of the gait this time is moving into the air. Then, the current gait end support leg foot position / posture is calculated from the initial gait initial support leg foot position / posture (-previous gait end free leg foot position / posture) for the second step in the above-mentioned required parameters.
  • required value of expected landing position / posture of free leg side foot 22 (required value of expected landing position / posture in next time gait of supporting leg foot 22 of current gait) or next time corresponding to the required value
  • the foot position / posture trajectory (the trajectory viewed from the next time's gait support leg coordinate system) leading to the next gait end swing leg foot position / posture determined according to the gait support leg coordinate system It is obtained by generating using a 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 posture of the foot when the gait supports the next time gait It is determined to match the position and orientation of the leg coordinate system.
  • the foot position and posture of the next step at the end of the gait are calculated based on 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 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.
  • Support Leg foot 2 First turn gait support
  • the planned landing position / posture of the legs / foot is set.
  • the first turning gait support leg foot landing 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 as 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 current 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.
  • this time gait, 2 is 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.
  • Other exercise parameters including time parameters such as the two-leg support time) of the first turning gait and the second turning gait are determined according to the gait conditions ( Determine whether the speed of the event is within the allowable range, does not exceed the movable angle, does not interfere with the floor, etc.).
  • a reference body posture trajectory parameter that defines 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 reference body posture at the beginning and end of the normal gait). It is not necessary to maintain a constant posture as long as it is set so that the posture angle and its angular velocity coincide with each other.
  • the inclination angle vertical The attitude related to the angle of inclination with respect to the direction
  • 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 constant angular velocity (average turning speed of a normal gait).
  • the trajectory may be sinusoidal as in the example of the reference antiphase arm swing trajectory described later (FIG. 18).
  • the reference angle and its angular velocity are set to be continuous.
  • the angle angle trajectory of the target body posture (hereinafter, the angle angle trajectory of the target ) Shall be made to coincide with the reference unilateral orbit.
  • the process proceeds to S104, and the reference arm posture trajectory parameter is 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.
  • the reference antiphase arm swing angle 0 azref is opposite phase 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.
  • the arm swing angle and angular velocity are both 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 relationship. 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 0 azref is a sinusoidal waveform in FIG. 18, it may be set to a constant angular velocity. Alternatively, the average value of the angle of the support leg and the angle of the swing leg may be used.
  • the center of gravity (the relative position with respect to the upper body 3) of the entire arms 5 and 5 in the target arm posture is set so as to be kept constant with respect to the upper body 3.
  • a floor reaction force vertical component trajectory parameter is set.
  • the floor reaction force vertical component trajectory specified by the parameter reaction is set to the first turning gait and the The floor reaction force vertical component trajectory parameters are set so that in any of the two turning gaits, as shown in Fig. 6, the gait is substantially continuous (values do not fly in steps). That is, the desired floor reaction force vertical component trajectory of the normal turning gait is set in a pattern as shown in Fig. 19. In this pattern, in both the first turning gait and the second turning gait, the floor reaction force vertical component changes to a trapezoidal shape during the one-leg support period, and the floor reaction force vertical component is maintained at 0 during the airborne period. .
  • the time of the break point of this pattern and the height (peak value) of the trapezoid are set as the parameters of the floor reaction force vertical component orbit.
  • the total gait of the floor reaction force vertical component (the normal gait for the period of both the first turning gait and the second turning gait)
  • the average value during one cycle of the period 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 each part of the gait, as viewed from the supporting leg coordinate system (the coordinate system set on the ground contact surface of the supporting leg side foot 22)).
  • Posture speed, etc.
  • the next supporting leg coordinate system supporting leg coordinate system of the next first turning gait
  • the end state of the second turning gait hereinafter, this condition is sometimes referred to as the boundary condition of the normal gait).
  • the difference between the overall center-of-gravity vertical speed at the end of the normal gait and the overall center-of-gravity vertical speed at the beginning of the normal gait (specifically, the overall center-of-gravity vertical speed at the end of the second gait and the first turning) (The difference from the vertical velocity of the entire center of gravity at the beginning of the 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 lopot 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 trapezoidal portion 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 coincided with the robot 1's own weight (the height of the trapezoid). The height of the trapezoid is determined by solving the above equation as an unknown and solving the equation representing the condition for matching the average value and the own weight).
  • 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 at the beginning 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 in an unreasonable posture, then in each turning gait
  • 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, Are defined 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 2 2, but the friction cannot be generated as much as 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 must always be set to be equal to or more than the * floor reaction force vertical component
  • Fxmax must be set to * the floor reaction force vertical component or less.
  • the simplest setting method is the following formula. Where ka is a positive constant smaller than 1.
  • Fxmin — ka * 2 * Floor reaction force vertical component
  • the floor reaction force horizontal component permissible range in Fig. 20 is an example set in accordance with Eq.
  • 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 allowable range [Mzmin, Mzmax] Specifically, the parameters that define this are set as shown in Figure 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, in order to avoid spinning when the actual lopot 1 moves according to the generated target gait, the floor component of the target gait must be within the friction limit at all times. No. Therefore, in order to satisfy this condition, the floor reaction force moment vertical component allowable range is set, and as described later, the floor reaction force moment vertical component of the target gait is set within this allowable range. A desired gait was generated.
  • Mzxmin —ka * * r * Floor reaction force vertical component
  • the allowable range of the floor anti-camouflage vertical component in FIG. 21 is an example set according to the equation 1 0 1 2.
  • the value and time at the break point such as the trapezoidal waveform in Fig. 21 may be set.
  • r is preferably calculated at each moment from the target ZMP and the ground contact surface, but may be a constant.
  • a ZMP trajectory parameter that defines the ZMP trajectory of the 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 this 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 heel of the flat 22 is set as an initial position, and 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 and moves to the toe until the foot 22 comes into contact with the toe, and then toes of the supporting leg foot 22 until leaving the floor. Is set to stay at After that, as described above, the target ZMP is from the toe of the supporting leg foot 22 to the heel of the free leg foot 22 before the landing of the next free leg foot 22 as described above. It is set to move continuously to the position.
  • the target ZMP trajectory (trajectory in the X-axis direction) of the normal gait consisting of the first gait and the second gait is as shown in FIG.
  • the time and position of the turning point of the target ZMP trajectory are set as ZMP trajectory parameters.
  • the time of the break 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 break point is determined by the next time the gait is supported.
  • the position of the .ZMP track 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 in the lower diagram of FIG. 7, and the trajectory of the target ZMP in the Y-axis direction in the second turning gait is The trajectory is the same as that of the first turning gait, and is connected to the end of the trajectory.
  • a normal gait must be a gait in which the state variables at the beginning and end are continuously connected.
  • the definition of the normal gait is different from the definition of the gait in the narrow sense described above until the determination of the normal gait.
  • the termination and period are set as shown in Figure 19 for convenience. That is, the time at which the floor reaction force vertical component has decreased 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. 7, the moment when the bottom surface of the support leg foot 22 is almost grounded and the moment immediately before it changes to toe grounding (the sole grounding period in FIG. 7).
  • the cycle Tcyc of the normal gait is equal to the first turning gait. 2004/009472
  • Te is the end time of the normal gait. Te is set to the time obtained by adding Tcyc to Ts.
  • 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 at the moment when the foot 22 is almost completely grounded from the ground state to the toe ground state. Or it is desirable to set immediately before.
  • 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. After that, it is desirable that the moment when the target ZMP completes its movement to the toe until the toe of the supporting leg foot 22 is in contact with the ground 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 initial state of the normal gait is calculated.
  • the initial state calculated here is the initial body horizontal position speed of the normal gait (the initial body position and the initial body speed in the horizontal direction), and the initial body vertical position speed (the initial upper body speed in the vertical direction).
  • the calculation of this initial state is performed exploratively according to the flowchart of FIG. In the flowchart of FIG. 23, first, at S 200, based on the gait parameters of the normal gait (the parameters set at S 0 22 in FIG. 13), the desired foot position / posture, the desired arm
  • the initial state (state at initial time Ts) of the posture and the desired body posture angle (tilt angle and angle) is determined, Kasumiga 09472
  • 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 support leg side is based on the initial support leg foot posture of the first turning gait of the foot trajectory parameters determined in S100 in FIG.
  • 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 target foot posture of the swing leg is from the initial support leg foot position and posture of the current gait viewed from the next time's gait support leg coordinate system to the first swing gait end free leg foot position and posture.
  • the trajectory of the foot position and posture is determined by generating a finite time settling filter until time Ts.
  • 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. More specifically, 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 both arms 5 : 5) in the left and right direction and the reverse Phase swing angle and angular velocity are determined. However, 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 zero.
  • the desired foot position / posture trajectory, floor reaction force vertical component trajectory, and target ZMP trajectory of the normal gait are respectively the foot trajectory parameters and floor reaction determined in the flowchart in FIG. Force vertical component trajectory parameters, ZM It is determined independently of each other by the P orbital parameters.
  • 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 initial time Ts
  • Xs, Vxs body horizontal position / velocity candidate at initial time Ts
  • Xs, Vxs horizontal position, Vxs: horizontal velocity
  • the provisional determination (Xs, Vxs) may be arbitrarily determined.
  • the body horizontal position / velocity in the initial state of the normal gait obtained at the time of the previous generation of the gait is provisionally determined as candidates (Xs, Vxs). do it.
  • 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 (left and right directions).
  • a pseudo Jacobian sensitivity matrix
  • the next candidate may be determined by the steepest descent method, or a 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 in FIG. 13, the desired ZMP and the desired floor reaction force vertical at each moment from the initial time Ts to the end time Te The 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 between 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 camoment 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 process.
  • the initial time Ts is substituted for the provisional gait generation time k.
  • the body horizontal position velocity is currently provisionally determined (Xs, Vxs) (S2 in Fig. 23). 0 or the value determined in S 2 16 or S 2 18 described later), and the latest (Zs, V zs) obtained in S 206 is substituted for the body vertical position velocity. Is done.
  • the reference body posture angle initial value (the angle at the initial time Ts) is substituted for the body posture angle
  • 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 result of the determination is YES, the process proceeds to a subroutine for determining the instantaneous gait of S306, and the 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.
  • the value (current value) of the target ZMP trajectory at time k shown in FIG. 22 is obtained based on the normal gait parameters (ZMP trajectory parameters). Then, proceed to S404, based on the normal gait parameters (parameters for foot trajectory parameters, parametric parameters for upper body posture trajectories, and parameter parameters for arm posture trajectories), and the target both foot positions at time k.
  • the posture (target foot position and posture on both the support leg side and the free leg side), the values of 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)
  • the value of the antiphase arm swing angle (this 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 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 center of gravity and the gravitational acceleration due to the motion of robot 1 multiplied by the total mass of robot 1 gives the floor reaction force vertical component.
  • the relational expression of equality (the equation of motion in the vertical direction of the overall center of gravity of robot 1) is obtained. 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 body 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 ( From the target body posture angle at time k—A k), the body vertical position is obtained. 4 009472
  • 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. At this time, while satisfying the above conditions, the target body tilt angle and the target anti-phase arm swing angle should follow as closely as possible the reference body tilt angle and the reference anti-phase arm swing angle, respectively. It is determined. 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. Is determined to match that of, therefore, the remaining body horizontal position, body posture angle and antiphase arm swing angle are determined 9 2, the target motion of the 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 parameter and the desired ZMP trajectory parameter determined in S 0 22 in FIG. Specified by evening.
  • the target ZMP is satisfied mainly by using the upper body tilt mode without using the upper body translation mode much (the horizontal component of the floor reaction force moment around the target ZMP is reduced to 0). ), The upper body posture angle 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 changes 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 Ido.
  • 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 to prevent the reaction force vertical component from exceeding the allowable range of the floor reaction vertical component.
  • the body horizontal acceleration, the body posture angle 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 inclination angle of the body 3 was performed in the X direction (front-back direction) on the sagittal plane.
  • the body horizontal acceleration and body posture angular acceleration in the Y direction are also determined in the same manner as in the X direction.
  • the value of the reference body at time k is substituted for the target body. Also, the value of the reference arm posture at time k is substituted for the target arm posture, excluding the antiphase arm swing angle and angular velocity components of the arm posture.
  • the current time (the value of the timer for creating a normal gait) k is the body posture angle and the antiphase arm swing angle restoration period (in the case of a normal gait, the body posture angle and antiphase arm swing) It is determined whether the angular 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 S 5 02 is N ⁇ , the process proceeds to S 5 0 4, and if it is Y E S, the process proceeds to S 5 30.
  • 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, by substituting these calculated values into the above equation 0 3 y and solving the equation of My equation 0 3 y in which d2 0 by / dt2 is 0 for d2Xb / dt2, the upper body mass point is obtained.
  • Horizontal acceleration is upper body 2004/009472
  • 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 value of the non-zero reference body posture angular acceleration, and the body horizontal acceleration a tmp is obtained using a dynamic model.
  • d2 0 by / dt2 in Equation 03 y is set to a non-zero reference body posture angular acceleration, and the body horizontal acceleration a tmp is obtained in the same manner as described above.
  • the floor reaction force horizontal component Fxtmp at time k when the body horizontal acceleration is tmp is obtained using a dynamic model.
  • Fxtmp is obtained using the equation 02X of the dynamic model. That is, Fxtmp is obtained by the following equation (17).
  • d2Xsup / dt2 and d2XswgZ dt2 represent the horizontal acceleration of the support 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.
  • Figure 27 shows the part where Fxtmp exceeds the floor reaction force horizontal component allowable range [Fxmin, Fxmax]. 004/009472
  • the body horizontal acceleration a in the body translation mode the floor reaction force horizontal component Fx generated by this, the body angle acceleration in the body tilt mode / 3 are determined as follows: (S508 to S516).
  • Fx Fxmin Equation 1 9 Otherwise, that is, if Fxtmp is within the floor reaction force horizontal component allowable range [Fxmin, Fxmax], the process proceeds to S5 14 and Fx is determined by the following equation.
  • Fx Fxtmp ... Equation 20
  • body posture angular acceleration body inclination angular acceleration 3
  • K a tmp + (F-Fxtmp) / ⁇ Fp ... Equation 2 1
  • the body translation mode and the body body acceleration mode ⁇ obtained above are calculated. It is better to determine the upper body horizontal acceleration ⁇ in the upper body translation mode analytically or exploratively using a stricter dynamic model so that the synthesized motion satisfies the target ZMP.
  • a pseudo Jacobian sensitivity matrix
  • the next candidate may be determined by a pseudo Newton method or a simplex method.
  • Fx Fxmax and the floor reaction force around the target ZMP.
  • the set of acceleration / 3 may be searched for.
  • Figure 28 shows the Fx obtained as described above.
  • FIG. 29 shows the body posture angular acceleration obtained as described above. P hire 004 ⁇ 72
  • the upper body acceleration (upper body angular acceleration) is the reference unit angular acceleration d20 bzref / dt2
  • antiphase arm swing angular acceleration) 3a is the reference antiphase arm swing angular acceleration d2 ⁇ azref / dt2
  • the floor reaction force moment vertical component Mztmp is calculated.
  • d20 bzref / dt2 is j3 bref and d2 ⁇ azref / dt2 is / 3 aref.
  • Mztmp obtained by substituting Expression 1001 into Expression 1004 into Expression 03z is Mztmp.
  • Xb and Yb are the horizontal body at time k-1 The position is substituted, and the value of the 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 permissible range of the floor reaction force moment vertical component [Mzmin, Mmax] is indicated by oblique lines.
  • Mztmp> Mzmax the process proceeds to S522, and Mz is determined by the following equation.
  • Mztmp ⁇ Mzmin proceed to S524, and Mz is determined by the following equation.
  • Mz Mzmin ... Equation 1 0 1 9
  • Mztmp Mzmin ... Equation 1 0 1 9
  • Mz obtained as described above indicates a vertical component of floor anti-camo due to the motion of the entire rod including the antiphase arm swing.
  • the antiphase arm swing angular acceleration ⁇ a is determined so that this Mz does not exceed the floor reaction force moment vertical component allowable range [Mzmin, Mzmax].
  • the anti-phase arm swing angular acceleration ⁇ a is calculated by dividing Maz by the equivalent inertia moment A of anti-phase arm swing A Maz. Value). That is,] 3a is obtained by the above expression 1021.
  • Figure 35 shows the antiphase arm swing angular acceleration] 3a.
  • the vertical component Mz of the floor reaction force moment generated by the motion of the entire rod including the antiphase arm swing is within the allowable range [Mzmin, Mzmax].
  • the anti-phase arm swing angle acceleration is equal to the reference anti-phase arm swing angular acceleration ⁇ aref.
  • the floor reaction force moment vertical component Mztmp cancels out of the allowable range.
  • antiphase arm swing angular acceleration] 3 a is determined.
  • floor reaction force moment vertical component Mz strictly exceeds floor reaction camoment vertical component allowable range [Mzmin, Mzmax].
  • antiphase arm swing angular acceleration) 3a is determined analytically or exploratively using a stricter dynamic model. Better.
  • a pseudo Jacobian sensitivity matrix
  • the next candidate may be determined by the pseudo Newton method or the simplex method.
  • the above is the processing when the time k is not during the body posture angle / opposite phase arm swing angle restoration period.
  • the determination result of S502 is YESS
  • the following processing is performed. First, proceeding to S530, from the previous instantaneous gait state of robot 1 (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.
  • the mouth port 1 is set, the body horizontal acceleration ⁇ required to satisfy the target ZMP at this time (time k) is obtained, and this is determined as the final body horizontal acceleration.
  • the process proceeds to S532, in which case the floor reaction force horizontal component Fx is obtained.
  • the flow proceeds to S534, and the body posture angular acceleration (body inclination angular acceleration) ⁇ is determined to be zero.
  • the upper body angular acceleration is determined to be the reference upper body angular acceleration) 3 bref (the second derivative of the reference upper body angular).
  • Substitute out-of-phase arm swing angular acceleration j8 are f (the second-order derivative of the reference out-of-phase arm swing angle).
  • 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 will not exceed both the floor reaction force horizontal component allowable range and the floor reaction force moment vertical component allowable range. no problem.
  • the anti-phase arm swing velocity is obtained by successively integrating the anti-phase arm swing acceleration J 3 a obtained in S 4 12 (cumulative addition from time Ts to the current time k). Then, this is sequentially integrated (cumulative addition from time Ts to current time k) to obtain the antiphase arm swing angle S az (this time value).
  • 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 (Hereinafter referred to as ZMP converted value of body posture restoring moment and abbreviated as ZMPrec).
  • Body posture angle ⁇ In the antiphase arm swing angle restoration period (the period from time Tm to time Ts2 and the period from time Tm2 to Te), the body posture angular acceleration is generated using the body tilt mode.
  • the ZMP (k) calculated from the motion is shifted by ⁇ ZMP obtained by the following equation. .
  • AZ MP (k) -) 3 (k) * ⁇ ⁇ / Fz (k)... Equation 2 3 Therefore, if the pattern of ⁇ r and the pattern of Fz (k) are determined (if known), ⁇ By setting the ZMP (k) pattern appropriately Then, 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 in the initial (time Ts) state of the reference body posture trajectory. It can return to the attitude angular velocity.
  • the body posture restoring moment ZMP converted value (ZMPrec) means ⁇ ZMP (k) appropriately set as such.
  • AMr fluctuates strictly, but may be approximately a constant value. This is because the normal gait is only generated temporarily and does not cause the actual mouth pot to follow this gait, so the dynamic accuracy of the normal gait does not need to be very high.
  • Figure 30 shows an example of Z MPrec.
  • a trapezoid pattern is formed as a ZMPrec pattern 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 break point time of the target ZMP pattern in the period between time Tm and time Ts2 and in 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 the / 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). (If it is clear that the value is at time k, (k) may be omitted.)
  • the initial (time Ts) body posture angle is equal to the initial (time Ts). Reference body posture angle.
  • the initial body posture angular velocity is determined so as to satisfy Equations 37a and 37b. End body posture angle-Initial body posture angle
  • Equation 3 7a Terminal body posture angular velocity-Initial body posture angular velocity
  • Equation 3 7b The integration period of the first term on the right side of each of Equations 37 a and 37 b 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 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 the angular velocity viewed from the support leg coordinate system (the next time's gait supporter. Coordinate system) of the first turning gait are the following first gait, respectively. It must be the same as the terminal body posture angle and angular velocity seen from the supporting gait coordinate system of the turning gait (the next and next gait supporting leg coordinate system). Therefore, in this reference example, the initial (time Ts) body posture angle is determined to be the value of the initial (time Ts) reference body posture angle, and this is used as the value of mouth port 1 in the normal gait.
  • Equation 37a The left-hand side of Equation 37a is the result of the coordinate transformation to the value seen from the next time's gait support leg coordinate system using a matrix (rotation coordinate transformation matrix) corresponding to the rotation angle of the barrel (the rotation angle around the vertical axis). Substitute the initial body posture angle and the end body posture angle of. Further, the body posture angular acceleration relating to the integration of the first term on the right side of each of the expressions 37a and 37b is the one obtained in step S518 of FIG.
  • the initial body posture angular velocity of Equations 37a and 37b, and the trapezoid height of ZM Prec (the trapezoidal pattern in FIG. 30) relating to the integration of the second term on the right side of Equations 37a and 37b
  • the time of the break point of the trapezoidal pattern of Z MPrec is determined in advance as described above.
  • the trapezoid height acycl of ZM Prec of the first turning gait and the ZMP rec of the second turning gait are The trapezoid height acyc2 shall be the same value.
  • 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.
  • the body posture angle acceleration ⁇ becomes as follows.
  • ] 3 — ZMP rec * FzZ ⁇ r ⁇ ⁇ ⁇ Equation 1 0 2 5
  • the body horizontal acceleration that satisfies the target ZMP when the body tilt restoring moment is not generated is QUmp as obtained in S5 32,
  • the body horizontal acceleration required to satisfy the target ZMP is as follows.
  • the acceleration increases by the second term on the right-hand side of Equation 1027 due to the tilt restoration moment ⁇ ⁇ ⁇ converted value (ZMP rec).
  • the above-mentioned extreme body tilt restoration moment ZMP converted value (ZM Prec) The end body when the body posture angle acceleration j8 is changed so as to generate a pattern
  • the horizontal speed is the terminal upper body horizontal speed when the body tilt restoration moment ZMP conversion value (ZM Prec) pattern is not generated, that is, the terminal value of the upper body horizontal speed obtained in S4 14 It is obtained by adding the first-order integration of (ZM Prec * FzZ AMp) up to the time Ts force and Te.
  • the body tilt restoration moment When the body posture angle acceleration] 3 is changed to generate the ZMP converted value (ZM Prec) pattern
  • the end body horizontal position is changed to the ZMP converted value (ZM Prec) pattern.
  • the second-order integral of (ZM Prec * FzZ ⁇ ) from time Ts to Te is added to the terminal body horizontal position when there is no Desired.
  • the process proceeds to S314, and the antiphase arm swing restoration angular acceleration (/ 3 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 is the same, and from the time Ts to Te; the integral of 8 arec and the antiphase arm swing acceleration
  • 3a are calculated so that the vertical component of floor anti-camoment Mz does not exceed the allowable range.
  • 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.
  • trapezoidal restoration moments are added, but these periods are set to have a sufficiently wide allowable range. Therefore, the vertical component of the floor reaction force moment generated by the movement of the mouth pot including the antiphase arm swing must not exceed the allowable range. And not.
  • Initial antiphase arm swing angular velocity is determined by the following equation.
  • the antiphase arm swing angle when 3 arec is 0 is the antiphase arm swing angle (antiphase arm swing angle at time Te) obtained in S 16. That is.
  • the second-order integral of 13 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 equal to the reference initial anti-phase arm swing angle, or the anti-phase arm swing angular acceleration finally determined (that is, the floor reaction force, the moment vertical component Mz is allowable) Based on the calculated antiphase arm swing acceleration) 3a and the restored angular acceleration / 3 arec) to prevent the arm from exceeding the range, and the obtained initial antiphase arm swing angular velocity, the initial antiphase arm
  • the average value of the difference between the arm swing angle calculated when the swing angle matches the reference initial antiphase arm swing angle and the average value of the maximum value and the minimum value of the difference is calculated.
  • a value obtained by subtracting one half of the obtained average value from the reference initial antiphase arm swing angle may be determined as the final initial antiphase arm swing angle.
  • the body posture angular velocity in the period from the time Tm to Ts2 and the period from the time Tm2 to Te is set to the initial body posture trajectory. This is to prevent the floor reaction force horizontal component Fx from exceeding the allowable range [Fxmin, Fxmax] even when the body posture angular acceleration 3 is generated so as to return to the angular velocity.
  • the allowable range of the floor reaction force horizontal component is sufficiently large, and the body posture angular velocity should be returned while satisfying the target ZMP. Even when the body posture angular acceleration j3 is generated, 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. This is to prevent the floor reaction moment vertical component Mz from exceeding the allowable range [Mzmin, Mzmax] even if the antiphase arm swing angular acceleration a is generated so as to return to the initial angular velocity of the swing orbit. .
  • the floor reaction force moment vertical component allowable range is sufficiently large, so that the anti-phase arm swing is returned to return the anti-phase arm swing angular velocity. Even if 3a is generated, the floor reaction force moment vertical component Mz does not exceed the allowable range.
  • the process proceeds to S210 in FIG. 23, and the terminal body horizontal position and speed of the generated gait (assumed normal gait) are It is converted to the value viewed from the support leg coordinate system ( ⁇ '", ⁇ '", ⁇ '"coordinate system in Fig. 17) corresponding to the instantaneous support leg, and the value is set as (X e, VX e) (X e: end body horizontal position, V xe: end body horizontal velocity). Then, the process proceeds to S212, where the difference between the initial body horizontal position speed (Xs, VXs) and the terminal body horizontal position speed (Xe, VXe) is calculated as shown.
  • the flow 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 initial divergent component (Xs + VXs0> 0) and the terminal divergent component (Xe + VxeZoO)
  • the terminal divergent component (Xe + VxeZoO)
  • ⁇ ' is a predetermined value as described above.
  • S2 16 a plurality (two in this reference example) of initial value candidates (X s + AX s, VX s), (X s, V xs' + ⁇ ) are provided near (X s, VX s) V xs) is determined.
  • AX s and AV xs mean predetermined small changes with respect to X s and V xs, respectively. Then, using each of these initial value candidates as the initial state of the body horizontal position / velocity, a normal gait is generated using the gait parameters by the same processing as in S208.
  • the end body position velocity of the generated normal gait is calculated from the supporting leg coordinate system ( ⁇ '", ⁇ '", ⁇ '"coordinate system in Fig. 17) corresponding to the supporting leg at that moment. Convert to the value you saw (Xe + AXel, Vxe + AVxe1) and (Xe + room Xe2, Vxe + ⁇ Vxe2) are obtained.
  • (X e + AX el, V xe + ⁇ V xe 1) means the end body position velocity corresponding to (X s + AX s, V xs) (, and (X e + AX e 2, V xe + A Vx e 2) means the terminal body position velocity corresponding to (X s, V xs + ⁇ V xs).
  • the initial state of the variables other than the body horizontal position velocity is, for example, the initial value of the body horizontal position velocity candidate. May be set the same as when (X s, Vx s).
  • each initial value candidate Xs + ⁇ Xs, Vxs
  • each initial value candidate Xs + AVxs
  • the body horizontal position / velocity boundary condition error corresponding to each of them is obtained.
  • the process returns to S206.
  • the above processing (the processing of S206 to S218) is repeated as long as the determination result of S214 is NO.
  • S300 in the process (S208) of generating a normal gait corresponding to the new initial value candidate (Xs, Vxs) of the body horizontal position / velocity,
  • the initial value of the body posture angular velocity is not the initial value of the reference body posture angular velocity, but the S3 in the processing of S208 corresponding to the previous initial value candidate (Xs, Vxs) of the body horizontal position velocity. It is set to the value determined in 10 (see Fig.
  • (X0, V0) and (Z0, Vz0) are the body leaning restoring moment ZMP converted value pattern determined in S310, and the normal gait at time Ts. Based on the initial body posture angle and angular velocity, and the body horizontal position velocity (Xs, Vxs) at time Ts after the loop of S204 was removed, the gait was adjusted to satisfy the gait conditions.
  • the body vertical position and the velocity are defined by the supporting leg coordinate system corresponding to the supporting leg of one step starting from time Tcyc (that is, the first turning gait for the second time) ( ⁇ '", ⁇ '", ⁇ "in Fig. 17)
  • the body posture angle and angular acceleration measured are calculated using the support leg coordinate system (X "', ⁇ '", ⁇ ) corresponding to the support leg of one step starting from time Tcyc (that is, the first turning gait for the second time).
  • '"Coordinate system is determined as the value converted to the value.
  • is a certain value as described in the explanation about divergence.
  • the initial antiphase arm swing angle and the angular velocity (0 azO, coazO) at the original initial time 0 are obtained.
  • the value (0 a Z O ", ⁇ az O") which is a value viewed from the supporting leg coordinate system is obtained.
  • (0 az0, O) az0) was determined in S314 and S316.
  • Antiphase arm swing restoration angular acceleration pattern initial (time Ts) inverse of normal gait
  • the anti-phase arm swing angle trajectory is determined so that the vertical component of floor anti-camoment does not exceed the allowable range, and the body posture angle and anti-phase arm swing angle are restored.
  • the antiphase arm swing angle trajectory is determined so that the sum of the reference antiphase arm swing angular acceleration ⁇ aref and the antiphase arm swing restoration angular acceleration ⁇ arec is generated).
  • time Te-Ts time Te-Ts
  • the parameters of the foot trajectory 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 swing leg foot position / posture is calculated using the next time's gait support leg coordinate system viewed from the current time's gait support leg coordinate system (the required value of the first step related to the current time's gait. ). That is, now PC leak 004/009472
  • 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 trajectory of the foot position / posture that leads to the parameter can be obtained by generating the finite time settling filter to the end of the gait this time.
  • the flow proceeds to S602, and the reference body posture trajectory parameter of the current time's gait is 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 reference body posture regarding the inclination angle is a steady vertical posture in both the current time gait and the normal gait. 00 value 9472
  • the reference arm posture trajectory parameter of the current time's gait is determined in the same manner as the first turning gait / the second turning gait of the normal gait.
  • the initial reference arm posture of this time's gait and its change rate match the current instantaneous values of the reference arm posture and change rate, and the arm posture trajectory of this time's gait is continuous with the arm posture trajectory of the normal gait.
  • the arm posture trajectory parameters determined here are the same as those for 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 entire arms 5 is set so as to be kept constant with respect to the upper body 3.
  • the floor reaction force vertical component trajectory parameters of the gait this time are defined by the parameters, as in the case of the first gait ⁇ the second 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 stepwise) as shown in FIG.
  • 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.
  • 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 using Equation 04 (or the kinematics model of Robot 1) described above, for example.
  • the vertical position of the initial total body weight of the normal gait of the normal gait viewed from the gait support leg coordinate system is the upper body vertical position Z0 "of the normal gait obtained in S224.
  • the vertical position of the upper body mass point of the model in Fig. 12 corresponding to Fig. 12 and the positions of the respective feet at the beginning of the normal gait are converted to the values viewed from the gait support leg coordinate system this time. It can be obtained by substituting the leg body mass point vertical position on the leg side into Equation 04.
  • the vertical velocity of the initial overall center of gravity of the normal gait viewed from the gait support leg coordinate system in this case is the upper body vertical velocity VzO "of the normal gait obtained in S224, as shown in the model of Fig. 12.
  • Equations 41a and 41b are the integral values during the period from the beginning to the end of the current time's gait.
  • At least two of the parameters of the floor reaction force vertical component parameters (such as breakpoint times) that define the floor reaction force vertical component pattern as shown in Fig. 6 are independent.
  • the value of the unknown variable is determined by solving a simultaneous equation composed 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 routine proceeds to S608, where the floor reaction force horizontal component allowable range [Fxmin, Fxmax] (specifically, a parameter defining the pattern of the floor reaction force horizontal component allowable range) is the 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 and the permissible range are set based on the above equation 12 according to the floor reaction force vertical component pattern previously determined in S606.
  • the floor reaction force moment vertical component allowable range [Mzmin, Mzmax] (specifically, the parameter that defines the pattern of the floor reaction force moment vertical component allowable range) is the first turning gait of the normal gait. ⁇ ⁇ ⁇ It is set in the same way as the second turning gait. For example, in the pattern shown in Figure 41 2004/009472
  • the floor reaction force moment vertical component allowable range is set.
  • the floor reaction force moment vertical component allowable range is set based on the above-mentioned equation 1102 according to the floor reaction force vertical component pattern determined in S606 previously.
  • the ZMP trajectory of this time's gait (specifically, the parameters that define the ZMP trajectory, the time and position of the break point of the gait) are Turning gait—Similar to the second turning gait, the gait is set as shown in FIG. 7 so that the stability margin is high and there is no sudden change.
  • the above parameters are set so that the ZMP trajectory of the current time gait is continuously connected to the ZMP trajectory of the normal gait. That is, 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 antiphase arm swing angle restoration period [Ta, Tb] are set.
  • the body posture angle and antiphase arm swing angle restoration start time Ta is equivalent to Tm in the second turning gait of the normal gait
  • the body posture angle and antiphase arm swing angle restoration completion time Tb is the normal gait This is equivalent to Ts2 in the second turning gait.
  • the method of setting these times Ta and Tb is the same as the method of setting Tm and Ts2, respectively.
  • ZMP orbit parameters ZMP orbit parameters
  • ZMP trajectory parameters are corrected to make the upper body posture trajectory continuous or close to the normal gait, and the anti-phase arm swing angle converges to the anti-phase 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 via 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 time gait end time Tcurr (whether or not k ⁇ Tcurr). If the result is YES, the process proceeds to the current gait instantaneous value determination subroutine of S806, and the instantaneous value of the current time's gait at time k is determined. In the subroutine for determining the gait instantaneous value of S806, the aforementioned S306 and 2004/009472
  • the process proceeds to S706, where the terminal divergence component error, which is the difference between the gait terminal divergence component q0 [k] and the normal gait initial divergence component Q "(determined in S224 of FIG. 23) errq is obtained using the equation shown: Further, the process proceeds to S708, and it is determined whether or not the obtained terminal divergence component error errq is within an allowable range (a range near 0).
  • the terminal divergence component error which is the difference between the gait terminal divergence component q0 [k] and the normal gait initial divergence component Q "(determined in S224 of FIG. 23) errq is obtained using the equation shown: Further, the process proceeds to S708, and it is determined whether or not the obtained terminal divergence component error errq is within an allowable range (a range near 0).
  • a Aa (Aa is a predetermined minute amount), and a trapezoidal shape is added to the current temporary target ZMP pattern according to the relationship in FIG. Based on the corrected target ZMP, a provisional current time gait up to the end is calculated in the same manner as in S702.
  • a is to make the gait end divergence component of the current time gait coincide with the normal gait initial divergence component as much as possible. This is the height of the trapezoidal pan for correcting the tentative target ZMP, in order to approach the orbit.
  • the correction of the provisional target ZMP is performed during the period in which almost the entire bottom surface of the support leg foot 22 is in contact with the ground (period of sole contact), that is, the allowable range of the floor reaction force horizontal component is sufficient.
  • the time at the break point of the trapezoidal pattern is set in accordance with the time of the break point of the tentative target ZMP during the entire sole contact period.
  • the terminal divergence component ql [k] in the provisional current time gait is calculated using the equation (formula 10 above) based on the body horizontal position velocity (X e 1, VX el) at the provisional current time gait end. Required.
  • the value of 3 is a small constant that is appropriately set in this reference example.
  • ⁇ a ⁇ a may be set so as to decrease .DELTA.a.
  • the terminal divergence component error errq can be kept within an allowable range by several repetition operations. Then, the process proceeds to S 714, where the parameter sensitivity r (the rate of change of the terminal divergent component error with respect to ⁇ a) is obtained from the equation shown.
  • a -errq / r, 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 a height a.
  • the temporary target ZMP pattern is corrected by adding the correction amount of the trapezoidal pattern to the temporary target ZMP pattern according to the relationship shown in FIG. 44 (a new temporary 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 conversion 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.
  • 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. That is, like the trapezoidal pattern of ZM Prec in the period of the second turning gait in Fig. 30, the trapezoidal pattern of ZMPrec of this time's gait is set, and the time of the apex (break point) of the trapezoid is assumed to be known. Specifically, the trapezoid break point time is adjusted to the target ZMP break point time), and the trapezoid height is set to an unknown value, and the trapezoid height (parameter) of ZMPrec is calculated as follows. However, the time at which the trapezoidal pattern of Z M Prec 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 continuous to the normal gait at the end of the gait this time. Is generally not possible. Therefore, in this 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.
  • PC orchid 004/009472
  • 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 are calculated at the end of the gait.
  • the gait 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 and the initial body posture angle of the normal gait obtained by setting the trapezoid height of the ZM Prec pattern to 0 in S702 is calculated as 0. err. Also, the 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 this is set as v0 err.
  • the current time's gait is generated with the trapezoid height of the ZM Prec pattern being 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 restoring moment of the first turning gait ZMP converted value ZM Prec 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 acycling (trapezoidal pattern in Fig. 30) and a certain value bl.
  • the gait generated in this way is called a ZM Prec modified gait, and its end (the end of the first turning gait)
  • the body posture angle and the angular velocity are 1, ⁇ ⁇ , respectively.
  • the original normal gait obtained when the subroutine processing for obtaining the initial state of the normal gait in S024 is completed (the normal body gait initial body posture angle and the normal gait finally determined in S310)
  • the upper body posture angle and the angular velocity are ⁇ lorg and ⁇ lorg, respectively.
  • ⁇ 0 1 and ⁇ 1 are defined as follows. twenty five
  • ⁇ 1 - ⁇ ⁇ 1- ⁇ ⁇ lorg... Equation 5 1
  • ⁇ 0 1 and ⁇ 1 are the difference between the body posture angle and the angular velocity difference between the ⁇ M Pi'ec corrected gait and the original normal gait up to the end of the first turning gait. Means If ⁇ 0 1 and ⁇ 0 1 become 0, the ZM Prec corrected gait is followed by the same algorithm as the gait this time, and the trapezoidal height of the ZM Prec pattern is set to the acyc2 for the second orbit. When a gait is generated, this gait matches the original normal gait.
  • the current gait trapezoid height bcurr at which ⁇ 01 and ⁇ 01 become 0 and the first turning gait trapezoid height bl are obtained, and the obtained bcurr may be finally determined as the trapezoid height of the current gait.
  • the dynamic model related to the body posture angle of the robot 1 has linear characteristics like the flywheels FHx and FHy shown in Fig. 12, mu 01 and ⁇ ⁇ are the gait trapezoid height bcurr,
  • the first turning gait trapezoid height bl, the difference between the terminal body posture angle of the provisional current time gait and the initial body posture angle of the normal gait err err, the terminal body posture angular velocity of the provisional current time gait and the normal gait It has the following relationship with the initial body posture angular velocity difference v0 err.
  • the current gait trapezoid height bcurr the first turning gait trapezoid height bl is 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 (ZMPrec) 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 temporary volume generated in the loop of S7000 is generated by setting the body posture restoration moment ZMP conversion value ZM Prec to 0 (the height parameter of the trapezoidal pattern of ZMP rec to 0.). is there.
  • ZM Prec the height parameter of the trapezoidal pattern of ZMP rec to 0.
  • the body posture restoring moment ZMP converted value pattern obtained in S 718 generates a body posture angular acceleration for reducing the deviation of the body posture angle from the normal gait to zero.
  • the body posture restoring moment obtained in S718 The body posture according to the ZMP converted value pattern
  • the dynamic equilibrium condition the combined force of the gravitational force of the mouth pot and the inertial force becomes zero, excluding the vertical component, acting on the target ZMP
  • the horizontal position trajectory must be displaced from the provisional current time gait's upper body horizontal position trajectory. Therefore, in the present embodiment, the provisional target ZMP pattern is corrected by Z M Prec so that the body horizontal position trajectory does not need to be shifted from the one finally obtained by the loop of S700.
  • 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.
  • the trapezoidal pattern of the anti-phase arm swing restoration angular acceleration of this time's gait is set,
  • the time of the vertex (breakpoint) is known (more specifically, the time of the trapezoidal breakpoint is set to the breakpoint time of the target ZMP), and the trapezoid height is set to an unknown value.
  • the trapezoidal height (parameter) of the arm swing restoration angular acceleration is required.
  • the time when the trapezoidal pattern of the antiphase arm swing restoration angular acceleration starts to rise is Ta, and the time when 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 this embodiment, 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 call it Sazerr. 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 restoration angular acceleration pattern of the first turning gait is the anti-phase arm swing restoration angular acceleration pattern (the height of the azcycling gait obtained in S314 in FIG. 24).
  • the gait generated in this way is called an anti-phase arm swing restoration angular acceleration corrected gait, and its end (end of the first turning gait) has the anti-phase arm swing angle and angular velocity of 0 zl and v, respectively.
  • the original normal gait obtained at the completion of the subroutine processing for obtaining the initial state of the normal gait in S024 (normal gait initial antiphase arm swing angle finally determined in S314)
  • the angular velocity as the initial values, and the antiphase arm swing restoration angular acceleration pattern as the pattern (the trapezoidal pattern in Fig. 36 with the height of azcycl) obtained in S314 (the normal gait).
  • the turning phase gait end antiphase arm swing angle and angular velocity are ⁇ ⁇ ⁇ ⁇ zlorg and V ⁇ zlorg, respectively.
  • ⁇ ⁇ zl ⁇ ⁇ zl— ⁇ zlorg... Equation 1 0 5 1
  • ⁇ zl and ⁇ ⁇ are the difference between the anti-phase arm swing angle between the anti-phase arm swing restoration angular acceleration corrected gait and the original normal gait when the gait is generated up to the end of the first turning gait. It means the difference in angular velocity. If ⁇ > zl and ⁇ ⁇ become 0, following the anti-phase arm swing restoration angular acceleration corrected gait, the trapezoidal height of the anti-phase arm swing restoration angular acceleration pattern is calculated using the same algorithm as this time's gait. When the second turning gait is generated as azcyc2, this gait matches the original normal gait.
  • the current gait trapezoid height bzcurr and the first turning gait trapezoid height bzl at which ⁇ 0 zl and ⁇ V 0 zl become 0 are determined, and the obtained bzcurr is finally determined as the trapezoid height of the current gait. Just do it.
  • lzl and ⁇ are the gait trapezoid height bzcurr, 1Turning gait trapezoid height bzl, terminal antiphase arm swing angle of temporary gait and initial antiphase arm swing of normal gait 2
  • ⁇ ⁇ zl czll * bzcurr + czl2 * bzl + 9zerr + ezl * v0zerr
  • Equation 1 0 5 3
  • czll, czl2, cz21, cz22, ezl, ez2 are the parameters of the current time's gait, the gait cycle of the first turning gait, and the parameters of the antiphase arm swing restoration angular acceleration pattern This is a coefficient that is uniquely determined by
  • 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 (especially parameters related to time).
  • Bzcurr and bzl can be obtained by solving the simultaneous equations with the left-hand side of 105 and Equation 105 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.
  • S030 the subroutine of FIG. 45 is executed. From S 1400 to S 1 41 in FIG. 45, the same processing as S 4 0 to S 4 1 in FIG. 25 is performed. The processing of S1000 to S10018 in FIG. 46, which is a subroutine, is performed.
  • 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 S1002, 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 N ⁇ , the process proceeds to S104, and if the determination result is YES, the process proceeds to S106.
  • the body horizontal acceleration ⁇ , the body angle acceleration i3, and the antiphase arm swing angular acceleration JQ a are calculated during the period during which the body tilt angle and the antiphase arm swing angle are not restored (see FIG. 26).
  • the same processing as in S504 to S528) is performed.
  • Body angle acceleration (body tilt angle acceleration) i3 is determined.
  • 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 inclination angle). Note that, in the present embodiment, one body angle of the body posture is determined as a reference body angle.
  • 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 / posture (trajectory) and the desired arm posture (trajectory) are sent to the mouth-pot geometric model (inverse kinematics calculation 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) is sent to the composite compliance operation determination unit 104 and also to the target floor reaction force distributor 106.
  • the desired floor reaction force distributor 106 distributes the floor reaction force to each of the feet 22 R and 22 L, and determines the desired foot floor reaction force center point and the desired foot floor reaction force. You. 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 corrected target foot position / posture (orbit) with mechanism deformation compensation is sent from the composite compliance operation determination unit 104 to the robot geometric model 102.
  • the mouth-port geometric model 102 when the target body position / posture (trajectory) and the corrected target foot position / posture (trajectory) with mechanical deformation compensation are input, the legs 2, 2 that satisfy them 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 controls the displacement of the 12 joints of the lopot 1 by using the joint displacement command (value) calculated by the robot geometric model 102 as a target value.
  • the lopot geometric model 102 calculates a displacement specification (value) of the arm joint that satisfies the target arm posture and sends the calculated value 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 in the robot 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.
  • Erry erry (Specifically, the deviation of the inclination angle of the actual body posture with respect to the vertical direction with respect to the inclination angle of the target body posture with respect to the vertical direction. errx, and the attitude tilt 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 tilt stabilization control calculation unit 112. Sent. In this attitude tilt stabilization control calculation unit 112, the target total floor reaction force center point (target ZMP) for restoring the actual body posture angle of the robot 1 to the target body posture angle is calculated. The horizontal component of the floor anti-moment is calculated and sent to the composite compliance operation determining unit 104.
  • target ZMP target total floor reaction force center point
  • the compensation total floor reaction force moment horizontal component Mdmdxy is determined by the following equation using, for example, a PD control law.
  • 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 obtained from the posture inclination angle deviation in the roll direction (about the X axis) of the body 3 of the mouth pot and the posture inclination angle deviation in the pitch direction (about the Y axis). Vector.
  • the angle deviation ⁇ ⁇ of the actual body posture angle deviation generated at the mouth port 1 (specifically, the posture angle deviation in the Y direction (about the ⁇ axis) of the actual body posture angle deviation is 0 errz) is detected via the attitude sensor 54, and the detected value is sent to the stabilization control calculation unit 113.
  • the vertical component of the total floor reaction force moment around the rotation compensation is calculated and sent to the composite compliance operation determination unit 104.
  • the composite compliance operation determining unit 104 corrects the desired floor reaction force based on the input value. Specifically, the target floor reaction force is modified so that the compensated total floor reaction camo acts around the target total floor reaction force center point (target ZMP).
  • the compensation total floor reaction force moment vertical component Mdmdz is determined by the following equation using, for example, a PD control law.
  • K 0 bz and K obz are predetermined gains.
  • the upper body angular velocity deviation is a time derivative of the upper body angular deviation, and means a deviation of the actual body angular velocity from the target body angular velocity.
  • the compensating total floor reaction force moment vertical component Mdmdz is calculated by the formula d 2
  • K 0bz K 0bz
  • the composite compliance operation determining unit 104 corrects the desired floor reaction force based on the input value. Specifically, the target floor reaction force moment horizontal component is corrected so that the compensation total floor reaction camouflage horizontal component acts around the target total floor reaction force center point (target ZMP). Goals that are dynamically balanced Correct the desired floor reaction force moment vertical component by adding a compensating total floor reaction force moment vertical component to the desired floor reaction force vertical component around the floor reaction force center point (target ZMP).
  • the composite compliance operation determination unit 104 is equipped with the above-mentioned mechanism deformation compensation so that the corrected target floor reaction force matches the actual port 1 state and floor reaction force calculated from the sensor detection value etc. Determine the corrected target foot position / posture (trajectory). However, since it is practically impossible to match all the states to the target, 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 determination unit 104 and the like are described first by the present applicant. The details are described in Japanese Patent Application Laid-Open Publication No. Hei 11-306661, etc.
  • this time's gait parameter is, as described above, the terminal divergence component of the current time's gait and the initial divergence component Q [0] of the normal turning gait in the value viewed from the support leg coordinate system of the current time's gait. Modified to match some Q ".
  • the divergent component is the gait generated according to the current time's gait parameters using the dynamics model. It is an index for evaluating whether or not the body horizontal position converges on a steady turning gait.
  • the divergent component at the end of the gait this time should be such that the initial divergent component of steady turning ci [0] matches the Q "value seen from the supporting leg coordinate system of the gait this time.
  • the divergent component must be defined.
  • the divergent component defined by Equation 10 is actually a divergent component that approximately satisfies the above properties.
  • the gait when the gait was generated using the dynamics model according to the current time's gait parameters, and when the gait was repeatedly generated continuously according to the normal turning gait parameters, the gait was generated. It can be said that the gait parameters were modified this time so that the upper body horizontal position of the gait converged (approached) to the upper body horizontal position of the normal turning gait.
  • the target ZMP pattern in the gait parameters of the current time gait is modified so as to satisfy the condition (the current time's gait approaches the normal gait).
  • 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 reference sign B generally deviates from the trajectory indicated by reference sign A at the boundary between the current time's gait and the first normal turning gait, but then gradually indicated by reference sign A. It converges on (or approaches) the trajectory and almost coincides with the trajectory indicated by the symbol A in the next normal turning gait period. In this way, even with the gait generation method that matches only the divergent component at the gait boundary, 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 several parameters may be adjusted so that both the position and speed match. There is a risk of 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 modified this time so that the generated body posture angle of the gait converged (approached) or matched the 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 gait combining the current time gait and the first turning gait is regarded as the current time gait
  • the gait parameters are adjusted so that the upper body posture angle of the gait converges (approaches) or coincides with the constant body gait angle of the normal gait consisting of the second turning gait and the first turning gait. It can be said that the night was corrected.
  • 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 for easy understanding.
  • X-axis direction front-rear direction
  • Y-axis direction left-right direction
  • a gait that is harder to slip is generated when expressed by a relational expression in the left-right direction.
  • a so-called friction circle may be set as an allowable range as in the following equation.
  • Equation 59 Fz is the desired floor reaction force vertical component 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 camouflage vertical component is changed. You may make it set. As the horizontal component of the floor reaction force increases, the friction limit of the vertical component of the floor reaction force moment decreases. Also, as the vertical component of the floor reaction force moment 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.
  • two motion modes in order to set the floor reaction force horizontal component and the floor reaction force moment horizontal component around the target ZMP to appropriate values, two motion modes, a body tilt mode and a body translation mode, are used.
  • the exercise mode is used, other exercise modes may be used.
  • one of the motion modes is a motion mode that does not generate the floor reaction force horizontal component.
  • any floor can be used. This is because the reaction force horizontal component and the 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 the foot that is not touching the ground (present in the air) is perturbed may be used.
  • the perturbation should be returned to substantially zero just before the nourishment land 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.
  • At least two of the selected motion modes need to have different generation ratios between the floor reaction force horizontal component and the floor reaction force moment around the target ZMP due to the motion mode. Otherwise, there is generally no solution to the system of equations (the behavior of each motion mode cannot be uniquely determined).
  • the upper body rotation mode instead of the antiphase arm swing mode.
  • 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). 5)
  • the upper part should be provided so that the upper part can rotate in one direction (for example, around the trunk axis of the upper body 3) with respect to the part near the waist. Is preferred. By doing so, the upper part of the upper body 3 can be rotated without affecting the posture of the legs 2, 2, and the vertical component of the floor reaction force moment can be adjusted.
  • arms, upper body A motion mode for displacing other parts may be used.
  • a mode in which the ends of both legs are moved back and forth may be used.
  • the anti-phase arm swing mode and the upper body single rotation mode may be used together.
  • the upper body single rotation mode and the antiphase 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, without generating the floor reaction force horizontal component). 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 in addition to the dynamic model used in the above reference example (the dynamic model in FIG. 12).
  • a nonlinear model in which mass points are set for multiple links.
  • Each link in this model may have an inertia (inertia moment).
  • the mass point shown in FIG. 12 is a partial model representing the relationship between the resultant force and the body translational movement.
  • 1 4 4 is a partial model showing the relationship between the resultant force and the body posture rotational movement.
  • the model used in each process may be the same, or the model may be appropriately used depending on 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 processing this time, while using the dynamic model of FIG. 12 (3 mass points + flywheel model), the generation processing of the normal gait (especially S408, FIG.
  • the block diagram, the flowchart, the algorithm, and the like may be equivalently modified such as changing the order of the arithmetic processing, and a one-pass filter may be appropriately introduced.
  • the initial state of the normal gait (mainly the initial upper body horizontal position velocity, initial upper body vertical position velocity, Angle / angular velocity) instead of using the above method to calculate various normal gait parameters in advance.
  • the relationship between the normal gait parameters and the initial state of the normal gait is mapped or approximated and stored, and during actual movement, it is mapped or approximated.
  • the initial value of the normal gait may be determined based on the above relationship.
  • the function obtained by combining the above-described relationship mapped or approximated and the function f may be mapped or approximated and stored.
  • a function for directly calculating the divergent component of the normal gait from the normal gait parameters consisting of the above-mentioned foot trajectory parameter, floor reaction force vertical trajectory parameter, etc. You may.
  • a normal gait is generated in advance for each set of a plurality of typical normal gait parameters, and the initial state of the normal gait for each set of normal gait parameters (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.
  • the initial state of the normal gait may be obtained from the determined set of 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) the 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. If, for example, the horizontal position of the torso is likely to shift rearward in the normal gait, the free leg is quickly moved forward after leaving the floor to shift the center of gravity of the free leg forward. By doing so, the horizontal position of the upper body in order to satisfy the target ZMP must be accelerated further forward. As a result, the upper body horizontal position At the end of the current time's gait, it moves further forward and can match the normal gait.
  • the cycle of the gait 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 torso horizontal position is almost proportional to the amount of correction of the target ZMP. Changes, the number of times of searching for the appropriate value can be reduced.
  • the horizontal position of the body at the end of the gait changes considerably non-linearly with respect to the correction. It requires a large number of searches.
  • the target ZMP parameter of the current time's gait was corrected as a method of correcting the current time's gait to connect to (close to) a normal gait.
  • the correction amount (the correction amount a in FIG. 34) of the target ZMP parameter may be excessive. For example, if a hopping gait on the spot gives a request to move quickly at high speed (running request), the target ZMP parameter is set to connect to (close to) a high-speed normal gait (normal running gait). In the evening, it will be necessary to shift the direction of travel extremely backward. In this case, it is desirable to correct the gait parameters other than the target ZMP parameter as described above. However, in this case, in fact, it was not possible to request the rapid acceleration itself, so the requested value itself may be modified.
  • the normal gait that satisfies the request (required parameter) is determined according to the procedure described above, and when the current gait parameter is determined to lead to this normal gait, the target ZMP trajectory of the current gait is stabilized. Determine if the margin is too low. 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. Just do it.
  • the allowable range of the gait acceleration / deceleration (the next gait initial speed—the current gait initial speed) or the current gait cycle) in advance and receive the request (request parameter related to the gait period).
  • the degree of acceleration / deceleration corresponding to the request may be obtained, and if the obtained acceleration / deceleration exceeds the allowable range, the request may be modified so that the required acceleration / deceleration falls within the allowable range.
  • the above ⁇ , ⁇ Fp, ⁇ r, AFr, ⁇ Maz and ⁇ Mbz may be obtained analytically by dynamics calculation when a simple dynamics model is used as described above.
  • the floor reaction force when the upper body 3 is accelerated by a small amount in the body translation mode or when the body 3 is accelerated by a small amount in the body tilt mode is determined, and acceleration is not performed.
  • the difference from the floor reaction force in this case can be obtained, and the difference can be obtained by dividing the difference by the minute amount.
  • the average value of each of ⁇ , AFp ⁇ , ⁇ Fr, AMaz, ⁇ Mbz, and ⁇ Mp ⁇ Mr in a standard gait may be determined in advance and used. Since ⁇ , ⁇ Fp ⁇ r ⁇ Fr, ⁇ Maz, AMbz, and ⁇ vary depending on the state (posture and rate of change), the accuracy is slightly lower than the method obtained for each state at each moment. However, when a model more complicated than the above model is used, the amount of computation can be significantly reduced.
  • the trapezoid height bzcurr of the antiphase arm swing restoration angular acceleration pattern of the gait The following method may be used for the determination. .
  • the antiphase arm swing angle and angular velocity of the antiphase arm swing restoration angular acceleration corrected gait (see S722 in FIG. 42) at the end of the current time gait are set to 0 zcurr v ⁇ zcurr, respectively.
  • a 0 zcerr and ⁇ v 0 zcerr are the difference between the anti-phase arm swing angle and the angular velocity of the normal gait.
  • the gait cycle is defined as the interval, the difference between the terminal antiphase arm swing angle of the provisional current time gait, the initial antiphase arm swing angle of the angular velocity and the normal gait, and the angular velocity 0 zerr, ⁇ ⁇ zerr are the previous state, bzcurr ⁇ Zcerr, ⁇ ⁇ zcerr is set as the current state, and a state equation of a discrete system is established, and A 0 zcerr, ⁇ v 0 zcerr is converged to 0 using modern control theory, etc.
  • a feedback rule may be determined, and bzcurr may be calculated based on the feedback rule.
  • the anti-phase arm swing restoration angular acceleration of the current time's gait and / or the normal gait) 3 arec is not a trapezoidal pattern, but at each moment, the target anti-phase arm swing angle ⁇ angular velocity and the reference anti-phase arm swing angle ⁇ angular velocity
  • the value of the reversal phase armrestoring angular acceleration; 8 arec at each instant may be determined based on the difference between the values, such that the difference converges to 0, using a state feedback rule or the like.
  • the anti-phase arm swing restoration angular acceleration ⁇ arec of the current time's gait is not trapezoidal pattern, and at each moment, based on the target antiphase arm swing angle and angular velocity of the current time's gait, these are the initial
  • the antiphase arm swing recovery angle acceleration ⁇ arec at each instant may be determined using the state feedback rule or the like so as to approach the antiphase arm swing angle and the angular velocity.
  • the translational floor reaction force is used.
  • the floor parallel component parallel to the floor
  • the allowable range of the frictional force or the allowable range of the overall center of gravity acceleration of the floor parallel component (this is proportional to the frictional force).
  • the floor reaction force moment vertical component can be calculated by the equation Since it can be converted to frictional force normal direction moment, instead of floor reaction force moment vertical component allowable range, floor reaction force moment normal direction component, that is, 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)
  • Equation 1 07 2 The parameters of the current time's gait are determined not only when the previous time's gait is completed as described in the above reference example, but also described in PCT Publication No. WO 02, 40224 by the present applicant. Like this, even if the gait is being generated, 4 009472
  • gait modification redetermining the current time's gait parameters
  • the gait that is not to be corrected or the gait that has been temporarily corrected the gait in search
  • Gait that does not completely satisfy the search completion condition the gait boundary condition deviation must be within the allowable value
  • 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 convex on the decreasing side of the floor reaction force vertical component during the one-leg support period. Set to trapezoidal.
  • FIGS. 53 to 58 a first embodiment of the present invention will be described with reference to FIGS. 53 to 58 based on the above-described reference examples and modifications thereof.
  • this embodiment In the description of the embodiment, the same components or the same functional portions as those in the reference example are denoted by the same reference numerals as those in the reference example, and description thereof is omitted. Particularly, in the present embodiment, as described above, the matters described with reference to FIGS. 1 to 3 and FIGS. 5 to 12 are the same as those in the reference example.
  • the actual body posture angle deviation (the vertical angle of the body 3) is the difference between the target body posture angle and the actual body posture angle.
  • the target gait is also modified to make the inclination angle deviation with respect to the direction and the deviation of the single angle) and / or the rate of change thereof close to zero.
  • it dynamically balances with the target gait according to the angle component and Z or its angular velocity of the actual body posture deviation (the resultant force of the inertia and the gravity of the motion of the target gait is around the target ZMP).
  • the vertical component of the floor reaction force moment around the ZMP is also corrected.
  • FIG. 53 is a block diagram illustrating a functional configuration of the control unit 60 according to the present embodiment.
  • the points of the functional configuration of the control unit 60 according to the present embodiment that are different from those of the reference example (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 force moment horizontal component distributor 110.
  • the compensating total floor reaction cam component horizontal component distributor 110 converts the compensation total floor reaction force moment horizontal component Mdmdxy into the target floor reaction force moment horizontal component for compliance control and the model operation floor reaction force moment horizontal component. And distributed to.
  • the posture inclination stabilization control calculation unit 1 1 2 and the compensation total floor reaction force moment horizontal component distributor 1 110 allow the target floor reaction force moment horizontal for compliance control to be obtained.
  • the component and the model-operated floor anti-camoment horizontal component are determined. 4 009472
  • 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.
  • the floor reaction force moment horizontal component is determined such that the difference between the target floor reaction force moment horizontal component for compliance control and the model operated floor reaction force moment horizontal component is equal to Mdmdxy.
  • FIG. 54 is a block diagram showing the compensation total floor anti-camouflage horizontal component distributor 110 performing the above-described operation.
  • the compensation total floor reaction force moment vertical component Mdmdz (see the above equation d26) determined in the stabilization control calculation unit 113 in the same manner as in the above-described reference example. Is input to the model operation floor reaction force moment vertical component determiner.
  • the model operation floor reaction moment vertical component determiner 11 determines the model operation floor reaction cam lead S component based on the compensated total floor reaction moment vertical component Mdmdz. In other words, based on the one-body deviation of the actual body posture angle deviation, the total compensation is performed by the k-stabilization control calculation unit 113 and the model operation floor reaction force moment vertical component determiner 111.
  • the floor reaction force moment vertical component Mdmdz and the model operation floor reaction force moment vertical component are determined.
  • model operation floor reaction force moment vertical component determiner 111 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.
  • the horizontal floor component and the total floor reaction force moment vertical component Mdmdz of the target floor reaction chamoment for compliance control 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 compensation 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 sensing operation determining unit 104.
  • the composite compliance motion determining unit 104 is configured to make the gait generator 100 generate the 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 force moment horizontal component around the target ZMP determined in the gait generator 100 by the model operation floor reaction force model.
  • the target gait movement (especially the body position / posture trajectory) is generated using a dynamic model so that the horizontal component is obtained. Further, the gait generator 100 is generated assuming that the model operation floor reaction force moment is 0.
  • Model reaction floor reaction cam component vertical component is added to the target floor reaction force moment vertical component around the target total floor reaction force center point (target ZMP) that is dynamically balanced with the desired target gait (temporary target gait). Correct the gait of the desired gait (especially the fl ⁇ g swing trajectory) so that the gait occurs.
  • control unit 60 is the same as that of the reference example.
  • desired gait generated in the reference example is obtained when the model operation floor reaction force moment horizontal component and the model operation floor reaction force moment vertical component are constantly set to 0. It is the same as the generated desired gait.
  • the operation (gait generation processing) of the gait generator 100 in the first embodiment will be described below in detail with reference to FIG. From S310 to S308, the same processing as that of S010 to S028 in FIG. 13 of the reference example is performed.
  • 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 (floor reaction force center point) from the target ZMP. Therefore, by dividing the floor reaction force moment horizontal component allowable range by the floor reaction force vertical component, the parameters of the ZMP allowable range (floor reaction force center point allowable range) converted to the floor reaction force center point should be set. It may be.
  • the floor reaction force moment vertical component is assumed to be the floor reaction force moment vertical component allowable range for gait generation.
  • the compensation amount of the floor reaction chamoment vertical component that can be added to the floor reaction force moment that generates the movement of the desired gait Means. Therefore, unless the floor reaction force moment vertical component allowable range for gait generation is set sufficiently narrower than the actual friction limit, the floor reaction force moment vertical component compensation amount allowable range cannot be set wide.
  • 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 parameters that define the allowable range of the floor reaction force moment horizontal component around the ZMP and the floor reaction force moment vertical component compensation amount in S3003 are set as the target for compliance control.
  • the process proceeds to S3302, where the instantaneous gait instantaneous value is determined this time.
  • the instantaneous gait instantaneous value is determined so that the model operation floor anti-chamoment horizontal component determined according to the above-described equation d27a is generated around the target ZMP.
  • the instantaneous gait value is determined according to the flowchart 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 S3141 is exactly the same as the processing from S140 to S141 in FIG. 45 described above.
  • the process proceeds to S3412, and the parameters of the floor reaction force moment horizontal component allowable range and the floor reaction force moment vertical component compensation amount range for compliance control determined in S3030 in FIG. Based on the evening, the instantaneous values of the floor reaction camouflage horizontal component allowable range [Mxymin, Mxymax] and the floor reaction force moment vertical component compensation amount allowable range [Mzcmin, Mzcmax] at the current time (current time t Value) is required.
  • the calculated 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 operation floor reaction force moment calculated by the above-mentioned formula d27a by the distributor 110 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. Next, the processing of the gait generator 100 proceeds to S 3 4 1 4, 2
  • the body horizontal acceleration and the body posture inclination angle acceleration of this time's gait were set so that the model operation floor reaction force moment horizontal component given from the anti-chamoment distributor 1 110 was generated around the target ZMP. Is determined. However, so that 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 the body posture angular acceleration (body tilt) Angular acceleration) is determined.
  • the horizontal component of the moment acting around the target ZMP is the resultant of the inertial force of the motion of the mouth port 1 and the gravity of the motion of the mouth port 1 becomes the moment in which the sign of the model operation floor reaction force moment horizontal component is inverted.
  • the body horizontal acceleration and body posture angle acceleration (body inclination angle acceleration) of the gait are determined this time.
  • the force with the sign of the inertial force horizontal component reversed is the floor reaction force horizontal component allowable range.
  • the body horizontal acceleration and the body posture inclination angular acceleration are determined so as not to exceed [Fxmin, Fxmax].
  • S3414 specifically, 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 S3104 and S3130. Unlike S504 and S530 in Fig. 26, S3104 and S3130 move from the previous instantaneous gait state of mouth port 1 (gait state at time k-1) to the upper body inclination.
  • the angular acceleration of the mode is set to 0 (more precisely, the angular acceleration of the body tilt mode is made to match the reference body posture angular acceleration) and the motion of the body translation mode is set to robot 1,
  • the body horizontal acceleration required to generate the model operation floor reaction force moment horizontal component around the target ZMP at (time k) (CK tmp for S3104, and (3 ⁇ 4) for S3130) .
  • 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 target in the gait generator 100 Gait generation processing is performed, and the instantaneous values of the desired body position / posture, the desired foot position / posture, the desired arm posture (including the antiphase arm swing angle), the desired ZMP, and the desired total floor reaction force are sequentially determined. Is 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 to make the horizontal component of the floor reaction camoment around the target ZMP 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 target gait is generated so that the model operation floor anti-chamoment horizontal component is generated around the target ZMP, and the floor reaction force of the actual Is controlled so that the model operation floor reaction force moment horizontal component is not added. Therefore, the unbalance between the desired gait movement and the floor reaction force is generated by the horizontal component of the subtraction model operation floor reaction force moment.
  • the sign of the model operation floor reaction force moment horizontal component can be expressed as the effect of converging the difference between the body posture inclination angle of the actual robot 1 and the desired gait body posture inclination angle to 0. This is equivalent to applying the inverted floor reaction force moment horizontal component to actual lopot 1.
  • the model operation floor reaction force moment horizontal component is determined appropriately.
  • the real robot 1 can be converged to the corrected target gait (a gait that converges the difference between the body posture inclination angle of the actual robot 1 and the desired gait body posture inclination angle to 0). it can. That is, the posture inclination of the actual mouth port 1 can be stabilized.
  • the sum of the moment in which the sign of the model operation floor reaction force moment horizontal component is inverted and the target floor reaction force moment horizontal component for compliance control is the total tilt restoring force (actually, robot 1).
  • the effect 4 is that the body reaction acceleration of the body translation mode and the body posture inclination angular acceleration are set so that the floor reaction force horizontal component does not exceed the floor reaction force horizontal component allowable range.
  • the locomotive 1 moves on a floor where a large floor reaction force horizontal component 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 coefficient of friction In this case, the slip of the mouth port 1 can be prevented.
  • the allowable range of the floor reaction force horizontal component is set to 0 at a time when the translational force vertical component of the floor reaction force is 0, that is, at a time when both legs are not in contact with the ground, and thus,
  • the algorithm of the first embodiment automatically restores the posture inclination depending on the body tilt mode without depending on the body translation mode, and does not depend on the frictional force between the floor and the sole. Posture recovery is performed at the same time. Therefore, even during this period (the mid-air period), unlike the method of simply correcting the upper body translation mode, the posture inclination restoration effect works effectively. At this time, since 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 target floor reaction force for compliance control.
  • the floor reaction force moment horizontal component around the target ZMP becomes zero for compliance control.
  • a desired floor reaction force that aims to be obtained is given from the gait generator 100. Therefore, 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 motion of the desired gait is generated so that the model operation floor reaction force moment vertical component is additionally generated around the target ZMP, while the actual floor reaction force of the robot 1 is calculated by the gait generator.
  • the combined compliance is defined as the target value that is obtained by adding the compensated total floor reaction force moment vertical component Mdmdz to the desired floor reaction force moment vertical component that balances the desired gait with the model operation floor reaction force moment vertical component added by 100
  • the actual floor reaction force is controlled by the control so as to approach the target value.
  • Mdmdz becomes larger, the model operation floor anti-camo-motion vertical component in the opposite direction to Mdmdz is added to the desired gait.
  • 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 real robot 1 and z 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 angle Z of the target gait or the body posture angle angular velocity 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 compensation total floor reaction force moment vertical component Mdmdz is determined based on the feed-pack control law so that the angular deviation and Z or angular velocity deviation approach 0, so that the control stability of the angular deviation is guaranteed. Meanwhile, the angular deviation and the angular velocity deviation can be reduced to 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.
  • a single rotation restoring force can be generated.
  • the target floor reaction cam vertical component is the sum of the floor reaction force moment vertical component allowable range and the floor reaction force moment vertical component compensation amount allowable range. It is determined not to exceed the range, so just before leaving the support leg side leg 2 in the running gait or landing 4 009472
  • the above-described algorithm of the present embodiment automatically restores a single rotation that depends on the anti-phase arm swing mode without depending on the actual floor reaction force moment vertical component.
  • One rotation restoration is performed without depending on the frictional force between the floor and the sole. Therefore, even during this period (mid-air period), unlike the method of simply correcting the vertical component of the desired floor reaction force moment of compliance control, the one-rotation restoring effect works effectively.
  • the gait When the gait is called a modified gait, the gait usually differs from the original gait and the modified gait. Since the original gait is set to approach the normal gait, the corrected gait is usually a gait that does not approach the normal gait.
  • the above-mentioned operation 12 is almost the same as the technique of PCT / JP03 / 004435 previously proposed by the present applicant. However, in addition to this, the following operation also occurs in the present embodiment. That is, a normal gait in which the antiphase arm swing angle trajectory of the new current time gait is newly set with the terminal phase of the antiphase arm swing angle and the angular velocity corrected for restoring unidirectional rotation as a new initial state.
  • the parameters for the new antiphase arm swing angle trajectory of the new gait are determined so as to asymptotically approach the antiphase arm swing angle trajectory.
  • a gait in which stability is guaranteed can be continuously generated.
  • the model operation floor reaction camouflage horizontal component becomes 0.
  • the model operation floor reaction force moment vertical component compensation amount is the state quantity of the dynamic model shown in Fig. 12 '(for example, the antiphase arm swing angle and angular velocity of robot 1 on the dynamic model, (Angular velocity, angular velocity, etc.).
  • the first embodiment described above is an embodiment of the first invention, the second invention, the fourth to ninth inventions, and the fifteenth invention of the present invention.
  • the floor reaction force moment vertical component (the floor reaction force moment vertical component to which Mdmdz is added) in the first embodiment is limited, the upper body angle deviation and the noise.
  • the body angular velocity deviation is equivalent to the deviation of the state quantity of mouth port 1
  • Mdmdz is equivalent to the compensating floor reaction force moment.
  • the sum of the floor reaction force moment vertical component allowable range [Mzmin, Mzmax] and the floor reaction force moment vertical component compensation amount allowable range for generating a gait in the first embodiment is the allowable target amount. Equivalent to range.
  • the motion component of the instantaneous gait instantaneous value determined in S303 of FIG. 56 corresponds to the temporary instantaneous value of the target motion
  • the one corrected in S304 is the instantaneous value of the target motion.
  • the dynamic model in the invention corresponds to the dynamic model in FIG.
  • the original gait and the corrected gait are generated at the same time.
  • the corrected gait is corrected from the original gait to stabilize the body posture (tilt angle and angle) of the actual robot 1. Furthermore, if the corrected gait still has room for generating the floor reaction force moment required for posture recovery by compliance control (if there is room for the floor reaction force moment that can be generated around the target ZMP), Using this margin, it is determined to converge to the original gait as much as possible.
  • FIG. 59 is a block diagram illustrating a functional configuration of the control unit 60 according to the present embodiment.
  • the compensating total floor reaction force moment horizontal component Mdmdxy obtained by the posture / inclination stabilization control calculation unit 112 is determined by the gait generator 1 0 Input to 0.
  • 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.
  • a compensated total floor reaction moment that determines the model operation floor reaction force moment (horizontal component and vertical component) and the target floor reaction moment for compliance control (horizontal component and vertical component).
  • the distributor 120 is incorporated in the gait generator 100, and the target floor reaction force moment for compliance control is output from the gait 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 and the compensating floor reaction force moment distributor 110 of the first embodiment.
  • model operation floor reaction force moment vertical component determinator 1 1 1 Performs more complicated processing.
  • the functional configuration of the control unit 60 is the same as that of the first embodiment.
  • FIG. 60 shows a flowchart of the main routine processing of the gait generator 100 in the present embodiment.
  • the processing from S 210 to S 210 is the same as the processing from S 110 to S 028 in the main flowchart (FIG. 13) of the reference example. Processing is performed. Note that in the initialization of 'S800' in the flowchart of FIG. 43, which is a subroutine of S028 (in the present embodiment, S2208), the initial state of the current time's gait is the previous corrected gait ( The terminal state of the gait that is finally output by the gait generator 100 is converted to the supporting leg coordinate system this time, and the terminal state of the original gait determined in S20332 described later is , And are not used in S820 of the subroutine of S208.
  • the process proceeds to S 2 0 3 2, where the instantaneous value of the original gait (the current fit at time t ) Is determined.
  • the original gait is a gait generated so that the horizontal component of the floor reaction force moment about the target ZMP becomes zero.
  • the original gait is generated by an algorithm in which a part of the subroutine processing of S3302 in FIG. 56 of the first embodiment is changed. That is, the subroutine processing in S3302 (specifically, the subroutine processing in S3414 in FIG. 57, which is the subroutine processing in S3302), the S3104 and S3104 in FIG. In 130, the horizontal operation of the model operation floor reaction force moment is set to 0 (the horizontal component of the desired floor reaction camouflage around the target ZMP is set to 0), and the body horizontal acceleration atmp is obtained.
  • the other processing may be the same as the processing of S3032 in FIG.
  • a model horizontal position difference between the models which is a difference between the corrected horizontal gait horizontal position and the original gait horizontal position, is obtained.
  • the current value of the corrected gait's upper body horizontal position (the value at time t) has not yet been determined. Therefore, in S2200, 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.
  • an anti-phase arm swing angle difference between models which is the difference between the anti-phase arm swing angle of the corrected gait and the anti-phase arm swing angle of the original gait, is determined.
  • 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 body horizontal position difference between the models, the model body horizontal position stabilization floor reaction force module required to converge the difference to 0 Request value Mpfdmd is determined.
  • the upper body horizontal position difference between the models 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. It has the meaning as a moment obtained by subtracting the floor reaction chamoment that generates the body horizontal acceleration in the upper body translation mode of the original gait from the floor reaction force moment that is generated along with this.
  • 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
  • another feedback control law such as PID may be used.
  • Mpfdmd Kmp * body horizontal position difference between models
  • Equation d 28 Equation d 28 where Kmp and Kmpv are feedback gains (proportional gains, differential gains).
  • Kmp and Kmpv are feedback gains (proportional gains, 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 reaction force moment that simply generates the body posture tilt angle acceleration of the corrected gait upper body tilt mode is converted to the floor reaction camouflage that generates the body posture tilt angle acceleration of the original gait body tilt mode. If they match, the body posture inclination angle difference between the models will not converge to zero.
  • the body posture inclination angle stabilized floor reaction force moment demand value Mrfdmd is calculated when the body posture inclination angle of the corrected gait is returned to the body posture inclination angle of the original gait in the body inclination mode.
  • this is a moment obtained by subtracting the floor reaction camo that generates the body posture tilt angle acceleration of the original body gait from the floor reaction force moment generated by this.
  • the required value of the model body posture inclination angle stabilized floor anti-chamoment Mrfdmd is determined, for example, by 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.
  • Mrfdmd Kmr * Difference in body posture inclination angle between models
  • Equation d 2 9 Equation d 2 9 where Kmr and Kmrv are feedback gains (proportional gains and differential gains).
  • the process proceeds to S 2 210, and based on the anti-phase arm swing angle difference between the models, the required value Mafdmd of the model anti-phase arm swing angle stabilization floor anti-camo necessary for converging the difference to 0 is obtained. It is determined.
  • An anti-float camouflage that generates anti-phase arm swing angular acceleration in the anti-phase arm swing mode of the original gait simply generates an anti-phase arm swing angular acceleration in anti-phase arm swing mode of the corrected gait , The antiphase arm swing angle between models does not converge to 0.
  • the model anti-phase arm swing angle stabilized floor reaction force moment demand value Mafdmd performs the operation of returning the anti-phase arm swing angle of the corrected gait to the anti-phase arm swing angle of the original gait in the inverted phase arm swing mode.
  • the anti-phase arm swing angular acceleration in the anti-phase arm swing mode of the original gait is generated. 2004/009472
  • the required value Mafdmd of the model antiphase arm swing angle stabilized 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, but another feedback control law such as PID may be used.
  • Equation d29b where Kar and Kav are feedback gains (proportional gain, derivative gain).
  • Kar and Kav are feedback gains (proportional gain, derivative gain).
  • an anti-phase arm swing angular acceleration in the anti-phase arm swing mode of the original gait is generated from the vertical component of the floor reaction force moment generated in the anti-phase arm swing mode of the finally determined corrected gait.
  • the moment obtained by subtracting the vertical component of the floor reaction force moment is called the model inversion arm swing angle stabilized floor reaction force moment.
  • Equation d 30 Considering that this equation d 30 approximately holds and that the vertical component of the floor anti-chamoment changes in proportion to the antiphase arm swing angular acceleration, the model body Determine the horizontal position-stabilized floor reaction force moment to be equal to or as close as possible to the required model body horizontal position-stabilized floor reaction force moment Mpfdmd, and model the model body posture tilt angle stabilized floor reaction force moment.
  • the body posture tilt angle stabilization floor reaction force moment It is determined so as to match or be as close as possible to the required value Mrfdmd, and the model antiphase arm swing angle stabilization
  • the floor reaction force moment is model antiphase arm swing angle stabilization floor If it is determined to match or be as close as possible to the desired value of the reaction force moment Mafdmd, a model operation floor reaction chamois appropriate for the gait is generated, and the correction is performed while satisfying the following restoration conditions.
  • 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 212, 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.
  • Restoration conditions floor reaction force moment in translational mode and model body posture tilt angle stabilized floor reaction force moment (Floor reaction force moment in body tilt mode) )
  • the model antiphase arm swing angle stabilized floor anti-camo Furthermore, to satisfy the definitions of the model body horizontal position stabilized floor reaction force moment, model body posture tilt angle stabilized floor reaction force moment, and model antiphase arm swing angle stabilized floor reaction force moment, The body horizontal acceleration, the body posture inclination angular acceleration, and the antiphase arm swing angular acceleration of the corrected gait are determined.
  • restoration conditions shown below the ⁇ there are conditions that number is not compatible with c, that contrary to have high low condition as the priority, causes satisfied with priority number is less condition (satisfied). However, restoration conditions 1, 2, and 3 must be satisfied (established).
  • the model body posture inclination angle stabilized floor reaction force moment must match or be as close as possible to the model body posture inclination angle stabilized floor reaction force required value Mrfdmd.
  • This condition is a condition for the corrected body posture inclination angle to converge to the body posture inclination angle of the original gait (the originally planned gait).
  • the floor reaction force moment must match or be as close as possible to the required model floor horizontal position stabilization floor reaction force moment Mpfdmd.
  • the horizontal position of the upper body of the corrected gait is This is the condition for converging to the horizontal position of the upper body of the initially planned gait).
  • 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 the model body posture tilt angle stabilization floor reaction force moment are determined so as to satisfy the above restoration conditions 1, 2, 4, and 5.
  • the acceleration and body posture tilt angle acceleration are determined.
  • the details of this processing are described in the technique of PCT / JP03Z00435 previously proposed by the applicant of the present invention, and thus the description thereof is omitted here.
  • model anti-phase arm swing stabilized floor reaction force moment is determined so as to satisfy the above-described 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.
  • the sum of the model body horizontal position stabilization floor reaction camoment and the model body posture tilt angle stabilization floor reaction camoment obtained in S 2 208 is the model operation floor reaction force moment horizontal component. It is determined.
  • the floor reaction force moment around the target ZMP may be directly calculated based on the instantaneous value of the motion of the corrected gait finally determined, and this may be used as the model operation floor reaction force moment.
  • the process proceeds to S2216, and the target floor reaction force moment horizontal component for compliance control is determined by the equation d27b. That is, 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 S2124 is determined as the target floor reaction force moment horizontal component for compliance control.
  • S2114 in FIG. 61 the processing of S2114 in FIG. 61 is completed, and the process proceeds to S2116.
  • the process of S2116 is the same as S3416 of FIG. 57 in the first embodiment, and the current value of the body horizontal position is determined by the second-order integration of the body horizontal acceleration.
  • the current value of the body posture inclination angle is determined by the second-order integration of the body posture inclination angle acceleration.
  • S2118 The processing of S2118 is the same as S3418 of 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 value of the previous or previous gait) is also required.
  • Two kinetic models for gait generation are required. In the present embodiment, those dynamic models are the dynamic models shown in FIGS.
  • the original gait and the corrected gait are generated in parallel, and the corrected gait is used to stabilize the posture ('inclination angle and single angle) of the actual mouth port 1.
  • the corrected gait is used to stabilize the posture ('inclination angle and single angle) of the actual mouth port 1.
  • the floor reaction force moment horizontal component and vertical component
  • use this margin to make the necessary steps as far as possible. It is trying to converge to the volume. Therefore, in addition to the operational effects of the first embodiment, it is possible to generate a gait close to the originally set gait, that is, close to the originally required gait. Therefore, the preset travel route 09472
  • the fact that the corrected body posture inclination angle converges to the body posture inclination angle of the original gait (the originally determined gait) is based on the assumption that the corrected body horizontal position is the original gait (the originally determined gait). Gait) has priority over converging to the horizontal position of the upper body (adjustment of the body translation mode motion as much as possible within a range that satisfies the floor reaction force horizontal component allowable range). Large fluctuations can be suppressed.
  • the second embodiment described above is an embodiment of the first to ninth inventions and the fifteenth invention of the present invention.
  • the vertical component of the floor reaction force moment (the component of the floor reaction force moment to which Mdmdz is added) in the second embodiment is the limited target amount, the upper body angular deviation and / or the upper body angular velocity deviation. Is the deviation of the state quantity of robot 1, and Mdmdz is equivalent to the compensation floor anti-chamber.
  • the floor reaction force moment vertical range allowable range [Mzmin, Mzmax] for the gait generation in the second embodiment corresponds to the allowable range of the amount to be restricted, and the model antiphase arm swing angle stability in the second embodiment.
  • the demanded moment Mafdmd corresponds to the model corrected floor reaction force moment in the third invention.
  • the motion when the uncorrected floor reaction force moment vertical component is obtained in the subroutine of S2114 in FIG. 61 corresponds to the predetermined provisional instantaneous value in the second invention.
  • the dynamic model in the invention corresponds to the dynamic model in FIG. '
  • the functional configuration of the control unit 60 is the same as that of the second 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 second embodiment.
  • the processing of each unit other than the gait generator 100 is the same as that of the second embodiment.
  • 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 the fourth to sixth embodiments described later. In the present embodiment and fourth to sixth embodiments described later, the dynamic model in FIG. 12 is referred to as a simplified model.
  • the gait generator 100 includes a gait parameter overnight determination unit 100a.
  • the gait parameter determination unit 100a determines the value of the parameter of the target gait (parameter for specifying the target gait) or a time-series table. This corresponds to the processing from S355 to S350.
  • the parameters determined by the gait parameter overnight determination unit 100a include the desired foot position / posture trajectory, the target arm posture trajectory, the reference body posture trajectory.
  • the target ZMP trajectory, the target floor In addition to the parameters that specify the reaction force vertical component trajectory, etc., the parameters that specify the floor reaction force horizontal component allowable range, and the parameters that specify the ZMP allowable range (or floor reaction force moment horizontal component allowable range) And the parameter that defines the allowable range of the vertical component of the floor reaction force moment.
  • the floor reaction force horizontal component permissible range and the floor reaction force moment vertical component permissible range set in the present embodiment are the same as those for the simplified model gait set in the processing of S 3 526 described below.
  • Step set by S 3 5 3 0 There are two types, one for volume correction.
  • 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 in S3530, but this is a parameter that defines the allowable range of the floor reaction force moment horizontal component.
  • This is obtained by dividing the floor reaction force moment horizontal component by the target floor reaction force vertical component as described with reference to S300 of FIG. ) Indicates the amount of deviation from the target ZMP.
  • the ZMP allowable range set in the present embodiment is set as shown in FIG.
  • the details are described in detail in PCT / JP03Z004304, so that further description is omitted here.
  • 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 entered gait parameters based on the desired foot position / posture, target ZMP, target floor reaction force vertical component, target arm posture, target overall center of gravity vertical position, target body vertical Position.
  • the instantaneous values of the floor reaction force horizontal component allowable range, ZMP allowable range, reference body posture angle and reference antiphase arm swing angle at the current time t are sequentially calculated (generated). Only the target instantaneous value is shown).
  • the process of the target instantaneous value generation unit 100b is performed in the process of a flowchart S3532 shown in FIG.
  • the target instantaneous values calculated by the target instantaneous value generation unit 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 camoment vertical component allowable range calculated by the target instantaneous value generation unit 100b are calculated using a simplified model. There are instantaneous values for gaits and instantaneous values for gait correction. .
  • the target instantaneous value calculated (generated) by the target instantaneous value generation unit 100b (partially a provisional instantaneous value) is input to the full model correction unit 100c.
  • 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 force moment vertical component Mdmdz obtained by the calculation 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 executes the processing of B so as to satisfy the following conditions A1 to A4. That is, the full model correction unit 100 c
  • Compensated total floor reaction camouflage horizontal component Mdmdxy and compensated total floor reaction camouflage vertical component Mdmdz are added to the floor reaction force moment that matches the motion of the corrected gait generated by the full model correction unit 100c. Is equal to the floor reaction force moment for compliance control output from the full model correction unit 100c.
  • Floor reaction force horizontal component is within the allowable range of floor reaction force horizontal component for gait correction.
  • Target floor for compliance control to be generated around target ZMP. In order to satisfy the condition of c within the allowable range of the vertical component,
  • 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 reference example is used as the simplified model 10 ⁇ c 1.
  • the full model 100c2 means a different model of the dynamics of the dynamics from the simplified model 100c1. It is desirable that this is a robot dynamic 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.
  • a dynamic model with high approximation accuracy for example, a robot dynamic model such as a multi-mass model (a model having a mass at each link of mouth port 1) shown in FIG.
  • the full model 100 c 2 may set an indignation moment around the 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 allowable range of the floor reaction force horizontal component and / or the floor reaction camo vertical component, That is, the allowable range for the simplified model gait and the allowable range for the gait correction (for the full model correction) may be different.
  • 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 is based on the target foot position / posture, target body posture, target body position, and antiphase arm swing angle.
  • the model used to calculate (output) the floor reaction force (especially, the target ZMP or the floor reaction camoment (horizontal component and vertical component) and the floor reaction force horizontal component around the target ZMP) Called the "inverse dynamics model”.
  • the input to the forward dynamics model includes at least the desired floor reaction force, and the input to the inverse dynamics model includes at least Goal exercise is included.
  • 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 gait generator 100 in the present embodiment executes the processing shown in the flowchart of FIG. 65 to generate a gait.
  • the floor reaction force horizontal component allowable range for the full model correction is, for example, the X-axis direction similar to the floor reaction force horizontal component allowable range for the simplified model gait.
  • the pattern is set as shown in FIG. 30 based on the floor reaction force vertical component trajectory and Equation 12 above.
  • the value of ka * ⁇ 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 allowable range of the vertical component of the floor reaction camoment is set in the same manner as the allowable range of the floor reaction force horizontal component. 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 first embodiment described with respect to the setting of the floor reaction force moment horizontal component allowable range in S300 of FIG.
  • the ZMP allowable range By multiplying the ZMP allowable range by the target floor reaction force vertical component, it is of course possible to convert the ZMP allowable range into an equivalent floor reaction camouflage 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 S030 of FIG. 13 in the reference example.
  • the instantaneous value of the gait at the current time t generated by the processing up to S35332 described above is hereinafter referred to as a simplified model gait instantaneous value.
  • the instantaneous value of the simplified model gait is calculated by using the simplified model (the dynamic model shown in FIG. 12) and calculating the combined force between the inertial force and gravity generated by the motion at the mouth port 1. It is determined so that the floor reaction force moment water generated around the ZMP becomes zero (so as to satisfy the dynamic equilibrium condition for the target ZMP).
  • the instantaneous value 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 reaction force moment around the target ZMP is a force that is constantly 0.
  • a target floor reaction force moment horizontal component for compliance control is generated as a target value of the floor reaction force moment horizontal component to be generated.
  • 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, the corrected target body position / posture, the corrected target antiphase arm swing angle, and the desired floor reaction force moment (horizontal component and vertical component) around the target ZMP are obtained. Calculation (determination) of the target floor reaction force moment (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 the processes from S 355 to S 358 are repeated.
  • the processing of S 356 is a feature of the present embodiment, and the processing will be described in detail below.
  • the gait correction method of the device according to the present embodiment is a full model feed forward 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. 4 009472
  • FIG. 66 shows the operation of the gait generator 100 according to the present embodiment, specifically, the gait correction method of S 356 in the mouth chart of FIG. 65.
  • FIG. 4 is a functional block diagram to be described.
  • the simplified model 200 in FIG. 66 is not only a dynamic model, but also the processing from S3510 to S3352, that is, the instantaneous value of the simplified model gait. Indicates calculation (decision) processing. 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 the upstream side to the downstream side (gait output side) of the block diagram. However, as the feedback amount returning to the upstream side, the value (state quantity) calculated in the previous control cycle (time t- ⁇ t with respect to current time t) is used. Hereinafter, the value calculated in the previous control cycle (time t ⁇ t) is 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 horizontal position), target center of gravity position, target foot position / posture, target arm posture (target antiphase arm)
  • the instantaneous value of a variable representing the motion (including the swing angle) and the like (this is called the motion variable) and the instantaneous value of the target ZMP are input to the inverse dynamics full model (inverse full model) 201 .
  • Balance the motion represented by the input motion variables ie, The floor reaction force horizontal component and the floor reaction force moment about the target ZMP (horizontal component and vertical component) Force Calculated by the inverse full model 201 calculation process.
  • the floor reaction force moment around the target ZMP calculated by the inverse full model 210 has a meaning as an error of the simplified model gait.
  • the horizontal component of the floor reaction force and the horizontal component of the floor reaction force and the vertical component of the floor reaction force moment obtained by the inverse full model 201 are referred to as the “full model floor reaction force horizontal component” and the “full model floor reaction force component,” respectively.
  • the full model floor reaction force horizontal component is often abbreviated as Ffull
  • the full model floor reaction force moment horizontal component is Mfulbcy
  • the full model floor reaction force moment vertical component is Mfullz.
  • 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 composed of a perturbation model for body horizontal position correction 202, a perturbation model for body posture inclination angle correction 203, and a perturbation model for antiphase arm swing angle correction 2 31.
  • the perturbation model may be a single model as shown in Fig. 12 without being separated into three models in this way.
  • the perturbation model for body posture inclination correction 203 is shown in the figure. Abbreviated. '
  • 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 body horizontal position correction perturbation model 202 inputs a correction amount of the desired floor reaction force moment, and calculates a correction amount of the target body horizontal position that is dynamically balanced with the input. 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 body horizontal position correction perturbation model 202 represents the relationship between the floor reaction force moment perturbation A My and the body mass point horizontal position perturbation A Xb in the simplified model.
  • Body translational mode floor reaction force ratio h which is the ratio of ⁇ Mp and AFp generated by the body horizontal acceleration, is the upper body of the right side of equation al 2 Since it is the ratio of the term generated by the horizontal acceleration (that is, the second term) and the equation al3, the following equation is obtained.
  • h (Zb-Zzmp) Equation a 1 4 That is, the body translational mode floor reaction force ratio h is equivalent to the height of the simplified model's upper body mass point (inverted pendulum mass point) from the fulcrum.
  • Fbz Fz- msup * ( g + d2Zsup / dt2)-mswg * (g + d2Zswg / dt2)
  • Equation a 1 7 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. It is equal to the sum of the translational force and the vertical component of the resultant force of the inertia force.

Abstract

少なくとも鉛直軸回り又は床面法線軸回りのロボット1の姿勢に関する目標状態量とロボット1の実状態量との偏差と、ロボット1に作用させるべき床反力モーメントの鉛直成分又は該床反力モーメントの床面法線方向成分である制限対象量の許容範囲とに基づいて、目標床反力に対応する制限対象量を許容範囲に収めつつ、目標運動に動力学モデル上で釣り合う床反力モーメントと目標床反力の床反力モーメントとの差が前記偏差を0に近づけるように目標運動および目標床反力の瞬時値を決定する。

Description

明 細 書 脚式移動ロポッ トの制御装置 技術分野
本発明は、 脚式移動口ポッ トの歩行のみならず、 走行にも適した制御 装置に関する。 背景技術
脚式移動ロボット、 例えば 2足移動ロボッ 卜の移動動作を行わせるた めの歩容 (目標歩容) の生成は、 従来、 主に口ポッ トにスムーズな歩行 動作を行なわせる歩容 (歩行歩容) を生成することを主目的として行な われてきた。 しかし、 近年では、 脚式移動口ポッ トの開発が進むにつれ て、 該ロポッ トに歩行だけでなく、 走行も行なわせることができる歩容 を生成することが望まれている。 さらには、 十分な摩擦力を発生できな い滑りやすい床 (いわゆる低ミュー路) 上でも口ポッ トを支障なく移動 させることができる歩容を生成することが望まれている。
尚、 「歩容」 という漢字に 「歩」 が入っているので歩行に限定される と誤解されやすいが、 本来 「歩容」 とは、 トロッ トなど、 馬の走行形態 を指す言葉どして用いられているように、 走行も含んだ概念である。
ここで、 歩行と走行の特徴の違いを説明しておく。
同時に全脚が空中に存在する瞬間がある移動形態を走行と定義すること が一般的ではある。 しかし、 この定義によって歩行と走行が明確に区別 できるとは限らない。 たとえば、 速いジョギングでは、 ほとんどの人間 において、 同時に全脚が空中に存在する瞬間があるが、 遅いジョギング では、 かなりの人間において、 常にいずれかの脚が接地している。 速い ジョギングは走行であるのに遅いジョギングは歩行である、 と定義する のは、 感覚的に少し無理がある。
図 5 1に、 典型的な走行における上体鉛直位置と床反力鉛直成分 (左 右の脚に作用する床反力鉛直成分の和) のパターンを示し、 図 5 2には, 典型的な歩行における上体鉛直位置と床反力鉛直成分のパターンを示す ( 尚、 上体鉛直位置速度は、 上体代表点の鉛直位置とその速度を意味す る。 上体水平位置速度は、 上体代表点の水平位置とその速度を意味する, 上体鉛直位置速度と上体水平位置速度を合わせて、 上体位置速度と呼ぶ < また、 「床反力鉛直成分」 は、 厳密には、 床反力の鉛直軸まわりのモ 一メント成分と区別するために、 「並進床反力鉛直成分」 と記述すべき であるが、 言葉が長くなるので、 ここでは 「並進」 を省略する。 以降、 「並進床反力水平成分」 も 「並進」 を省略して 「床反力水平成分」 と記 述する。
まず上体の動きを見てみると、 歩行においては、 支持脚の上を上体が 通過する瞬間に上体は最も高く、 走行においては、 この瞬間に最も低い, すなわち、 歩行と走行では、 上体の上下動パターンの位相が反転してい る。
一方、 床反力に関しては、 歩行では比較的一定であるのに対し、 走行 においては、 大きく変動し、 支持脚の上を上体が通過する瞬間に床反力 は最も大きい。 また、 当然のことながら、 同時に全脚が空中に存在する 瞬間において床反力は 0になっている。 より詳しく観察すると、 走行で は、 支持脚を縮めた量にほぼ比例した大きさの床反力が発生する。 言い かえると、 走行では、 脚をばねのように使って跳ねながら移動している と言える。
遅いジョギングでは、 典型的な走行と同じ上体上下動の位相を持つ。 また、 遅いジョギングでは、 同時に全脚が空中に存在する瞬間がない場 合が多いが、 その場合でも、 支持脚と遊脚の切り換えが行われる瞬間に おいて、 床反力は、 完全には 0にならないがほぼ 0になっている。
したがって、 以上のように、 上体の上下動や床反力のパターンの上記 特徴から歩行と走行を区別した方が、 遅いジョギングも走行とみなされ, 感覚とも一致して、 より適切と言えよう。
特に、 最も特徴的な点で両者を区別するならば、 走行とは、 支持脚の 切り換えが行われる瞬間において、 床反力が 0またはほぼ 0になる移動 形態であり、 歩行は、 それ以外の移動形態 (床反力鉛直成分が比較的一 定) であると言えよう。
ところで、 本出願人は先に P C T公開公報 WOZ02Z40224において. 脚式移動口ポッ トの床反力を含む歩容を、 動力学的平衡条件 (目標歩容 の重力と慣性力と床反力との釣り合い条件のことである。 狭義では、 目 標歩容の運動による重力と慣性力との合力が目標; Z MPまわりに作用す るモーメントの水平成分が 0であること。 詳細は後述する。) をほぼ満 足しながら、 自在かつリアルタイムに生成する技術を先に提案した。 こ の技術や、 特開平 1 0— 8 6 0 8 1号公報、 特開平 1 0— 2 7 7 9 6 9 号公報などにて本出願人が提案してきた一連の脚式移動ロポットの制御 装置は、 歩行のみならず走行にも適用できるものである。
また、 本願出願人は、 特開平 5— 3 3 7 84 9号公報等にて、 次のよ うな技術も提案している。 すなわち、 この技術では、 口ポッ トの傾き偏 差 (ロボッ トの上体の鉛直方向に対する実際の傾き角と目標歩容の傾き 角との偏差) とが生じたときには、 実 Z MPをずらして、 目標 Z MP回 りに許容範囲内で姿勢復元方向のモーメントを発生させると共に、 目標 歩容を生成するために用いるモデル上で、 目標 Z MP回りにモーメント を発生させるように目標歩容の運動を決定する。 このように、 モデル上 でモーメントを意図的に発生させることにより、 実際のロボッ ト上で姿 勢復元方向のモ一メントを発生させることと同等の効果を得ることがで きる。
しかしながら、 これらの技術においては、 目標歩容の Z M Pまわりの 床反力モーメント鉛直成分の大きさを考慮していなかった。 このため、 この床反力モーメント鉛直成分が過大となって、 摩擦の限界を超えて、 スピンするおそれがあった。 なお、 スピンとは、 実際のロボッ トのョ一 角 (鉛直軸まわり回転角) 速度が目標ョー角速度からずれることを言う c 摩擦係数の高い床面を歩行する場合 (この場合、 少なくとも 1つの脚 体は常時接地している) には、 床反力鉛直成分が常にほぼ口ポッ トの自 重相当であるので、 摩擦力 (すなわち床反力モーメント鉛直成分) の限 界が高い。 このため、 スピンは発生しにくい。
しかるに、 走行においては、 床反力鉛直成分が 0になる、 または 0に 近くなる時があるので、 その時には、 たとえ摩擦係数が高くとも、 床面 の摩擦力のモ一メント鉛直成分の限界が 0になるまたは 0に近くなる。 したがって、 目標歩容の床反力モーメント鉛直成分が限界を超え、 スピ ンして転倒する恐れがあった。
また、 歩行の場合でも、 床の摩擦係数が低い場合には、 スピンして転 倒する恐れがあった。
また、 前記の技術では、 上体のョー方向の回転姿勢の目標姿勢からの ずれを補償するようにしていなかつたため、 口ポッ トの移動軌道が目標 歩容の軌道からずれる恐れがあった。
一方、 本出願人は先に、 例えば P C T出願 P C T / J P 0 2 1 3 5 9 6の実施形態において、 目標歩容において腕以外が発生するモーメン ト鉛直成分を打ち消すように、 腕を振るようにしたものを提案した。 この場合には、 目標歩容のモーメント鉛直成分はほぼ 0になるが、 脚 を激しく振って移動する場合には、 腕の振りも激しくなる。 一般的に、 人間型口ポッ トにおいては、 腕の質量は、 脚の質量に較べ て小さい。 したがって、 モーメント鉛直成分を完全に打ち消すためには, 腕は、 脚の振りよりも激しく振る必要がある。
' しかし、 腕の動作範囲には限界があり、 また、 腕のァクチユエ一夕の トルクおよび速度にも限界があるので、 脚を激しく振って移動する場合 には、 腕によってモーメント鉛直成分を完全に打ち消すことができなく なる場合があった。
また、 目標歩容において腕以外が発生するモーメント鉛直成分を完全 に打ち消すように、 腕を振るようにすると、 腕振りの中心が徐々にオフ セッ トしていき、 左右の腕の振りが非対称になる恐れがあった。 具体的 には、 口ポッ トが左旋回する場合に、 腕以外が発生するモーメント鉛直 成分を完全に打ち消すように、 腕を振るようにすると、 脚と胴体が左を 向いたことによる角運動量変化を打ち消すために、 左腕は前側には大き く、 後ろ側には小さく振られ、 右の腕は前側には小さく後ろ側には大き く振られるようになる。 したがって、 この場合には、 左腕は、 前側の振 り動作限界に達する恐れが生じ、 右腕は、 後ろ側の振り動作限界に達す る恐れが生じる。
また、 さらに左右の腕の振りが非対称にならないように、 腕振りの中 心を戻そうとすると、 この動作によって、 床反力モーメント鉛直成分が 発生し、 目標歩容の床反力モーメント鉛直成分が'限界を超え、 スピンす る恐れがあった。
したがって、 本発明の目的は、 上記の問題点を解消し、 歩行、 走行等 の歩容形態や床面の摩擦状態によらずに、 より一層好適な歩容を生成す ることができる制御装置を提供することにある。
より具体的には、 本発明は、 ロボッ トと床面との間の摩擦力のモ一メ ント鉛直成分の限界を考慮し、 ロボッ トのョ一方向の姿勢状態を安定に 保ちつつ、 スピンおよびそれに起因するロポッ トの転倒を防止すること が可能な歩容でロボッ トを動作させることができる制御装置を提供する ことを目的とする。 そして、 空中時、 あるいは摩擦力のモーメント鉛直 成分の限界が極めて低い時にでも、 動力学的平衡条件を満足する歩容の 運動パターンでロボッ トを動作させることができる制御装置を提供する ことを目的とする。 さらに、 目標歩容の左右非対称性が大きくなること を防止して、 動作の継続性を確保することを目的とする。 発明の開示
本発明の脚式移動ロボッ トの歩容生成装置の第 1発明は、
上体から延設された脚体を運動させて移動する脚式移動ロポッ トの目 標運動および目標床反力の瞬時値を、 少なくとも該ロボッ トの運動と床 反力との関係を表す動力学モデルを用いて逐次決定しつつ、 その決定し た目標運動および目標床反力の瞬時値に追従させるように前記ロボッ 卜 の動作制御を行なう脚式移動ロボッ トの制御装置において、
前記目標運動および目標床反力に追従して動作しているロポッ トに作 用させるべき床反力モーメントの鉛直成分又は該床反力モーメントの床 面法線方向成分を制限対象量として、 該制限対象量の許容範囲を設定す る許容範囲設定手段と、
少なくとも鉛直軸回り又は床面法線軸回りの口'ポッ トの姿勢に関する 目標状態量と該ロポッ トの実状態量との偏差と前記許容範囲とに基づい て、 前記目標床反力に対応する制限対象量を前記許容範囲に収めつつ、 前記目標運動に前記動力学モデル上で釣り合う床反カモ一メントと前記 目標床反力の床反力モーメントとの差が前記偏差を 0に近づけるように 前記目標運動および目標床反力の瞬時値を決定する目標瞬時値決定手段 とを備えたことを特徴とする。 かかる第 1発明によれば、 少なくとも鉛直軸回り又は床面法線軸回り のロポッ トの姿勢に関する目標状態量と該ロボッ トの実状態量との偏差 と前記許容範囲とに基づいて、 前記目標床反力に対応する制限対象量を 前記許容範囲に収めつつ、 前記目標運動に前記動力学モデル上で釣り合 う床反カモ一メン卜と前記目標床反力の床反カモ一メントとの差が前記 偏差を 0に近づけるように前記目標運動および目標床反力の瞬時値を決 定する。 このため、 鉛直軸回りまたは床面法線軸回りの口ポッ トの姿勢 に関する状態量 (以下、 ョ一方向の姿勢状態量という) を、 目標状態量- すなわち目標運動におけるョー方向の目標姿勢状態量に近づけるように しつつ (前記偏差を 0に近づけるようにしつつ)、 実際の口ポッ トに作 用する床反力モーメント鉛直成分等の制限対象量を許容範囲内に収める ことができる。 つまり、 摩擦力モーメント鉛直成分の限界と前記偏差と を考慮して、 目標運動および目標床反力の瞬時値が決定される。 それに より、 ロボッ トのョ一方向の姿勢状態量を目標運動の姿勢状態量に安定 に保ちつつ、 口ポッ トのスピンおよびそれに起因する転倒を防止するこ とができる。 また、 口ポッ トの移動軌道が目標歩容の軌道からずれたり ロボッ トのョ一方向の姿勢の継続的な安定性が損なわれるのを防止でき る。 また、 制限対象量が許容範囲に収まる限り、 該制限対象量を常に 0 もしくはほぼ 0にする必要がないことから、 ロポッ トのある部位の運動 が過剰に激しい運動となったりするのを防止できる。
かかる第 1発明では、 前記目標瞬時値決定手段は、 前記偏差に応じて 該偏差を 0に近づけるための付加的な床反カモ一メントである補償床反 力モーメントを決定する手段と、 少なくとも前記目標運動の所定の仮瞬 時値に前記動力学モデル上で釣り合う床反カモ一メントと前記補償床反 力モーメントとに応じて前記制限対象量が前記許容範囲を超えないよう に該所定の仮瞬時値の修正量を決定する手段とを備え、 その決定した修 正量に応じて前記仮瞬時値を修正することにより前記目標運動の瞬時値 を決定することが好ましい (第 2発明)。
かかる第 2発明によれば、 目標運動の所定の仮瞬時値によって前記動 ガ学モデル上で発生する (目標運動に釣り合う) 床反力モーメントと、 前記偏差を 0に近づけるための補償床反カモ一メン卜とに応じて前記所 定の仮瞬時値の修正量を決定するので、 ロボッ トのョ一方向の姿勢状態 量を目標状態量に近づけつつ、 前記制限対象量が許容範囲に収まるよう な適切な目標運動の瞬時値を決定できる。
この第 2発明では、 前記動力学モデルの状態量を所定の状態量に近づ けるための付加的な床反力モーメントであるモデル補正床反力モ一メン トを決定する手段を備え、 前記目標運動の所定の仮瞬時値の修正量を決 定する手段は、 少なく とも前記所定の仮瞬時値に前記動力学モデル上で 釣り合う床反力モーメントと前記補償床反力モーメントと前記モデル補 正床反カモ一メントとに応じて前記制限対象量が前記許容範囲を超えな いように前記目標運動の仮瞬時値の修正量を決定することが好ましい (第 3発明)。
この第 3発明によれば、 目標運動の所定の仮瞬時値の修正量を決定す るとき、 目標運動の所定の仮瞬時値に動力学モデル上で釣り合う床反力 モーメント、 及び前記補償床反力モーメントだでなく、 動力学モデルの 状態量に係るモデル補正床反力モーメントを考慮するので、 第 2発明の 効果に加えて、 動力学モデルが発散しないようにすることができる。
また、 上記第 2及び第 3発明では、 前記所定の仮瞬時値の修正量は、 前記ロポッ トの角運動量変化率の鉛直成分又は床面法線方向成分を変化 させる運動の修正量であることが好適である (第 4発明)。
これにより制限対象量を許容範囲に収めるように目標運動の仮瞬時値 を修正できる。 2004/009472
9 この第 4発明では、 前記ロポッ 卜の角運動量変化率の鉛直成分又は床 面法線方向成分を変化させる運動は、 該ロボッ トの上体および/又は該 上体から延設された腕体の運動であることが好適である (第 5発明)。 ' これによれば、 目標運動の仮瞬時値の修正処理が容易になる。
なお、 ロボッ トの角運動量変化率の鉛直成分又は床面法線方向成分を 変化させる運動は、 ロポッ 卜の全体重心を一定に維持するような運動で あることが特に好ましい。
また、 本発明の脚式移動口ポットの制御装置の第 6発明は、
上体から延設された脚体を運動させて移動する脚式移動ロポッ トの目 標運動の瞬時値を、 少なくとも該ロポッ トの運動と床反力との関係を表 す動力学モデルを用いて逐次決定しつつ、 その決定した目標運動の瞬時 値に追従させるように前記ロポットの動作制御を行なう脚式移動ロボッ 卜の制御装置において、
前記目標運動に追従して動作しているロポッ トに作用させるべき床反 力モーメントの鉛直成分又は該床反力モーメントの床面法線方向成分を 制限対象量として、 該制限対象量の許容範囲を設定する許容範囲設定手 段と、
少なくとも鉛直軸回り又は床面法線軸回りのロポッ 卜の姿勢に関する 目標状態量と該ロポッ トの実状態量との偏差に応じて該偏差を 0に近づ けるための付加的な床反力モーメントである補償'床反力モーメントを決 定する補償床反力モーメント決定手段と、
前記目標運動に前記動力学モデル上で釣り合う床反カモ一メン卜と前 記補償床反力モーメントとに応じて定まる前記制限対象量が前記許容範 囲に収まるように目標運動の瞬時値を決定する目標瞬時値決定手段とを 備えたことを特徴とする。
かかる第 6発明によれば、 前記目標運動に前記動力学モデル上で釣り 画 09472
1 0 合う床反力モーメン卜と前記補償床反カモ一メントとに応じて定まる前 記制限対象量 (例えば前記目標運動に前記動力学モデル上で釣り合う床 反カモ一メン卜と前記補償床反力モーメントとの和) が前記許容範囲に 収まるように目標運動の瞬時値を決定する。 このため、 口ポッ トのョー 方向の姿勢状態量を目標状態量 (目標運動におけるョー方向の姿勢状態 量) に近づけるための補償床反カモ一メントを付加的に発生させるよう にしても、 実際のロボッ トに作用する床反力モーメント鉛直成分等の制 限対象量を許容範囲内に収めることができるような目標運動を生成でき る。 つまり、 摩擦力モーメント鉛直成分の限界と前記偏差を考慮して、 目標運動の瞬時値が決定される。 それにより、 ロボッ トのョー方向の姿 勢状態量を目標運動の姿勢状態量に安定に保ちつつ、 口ポッ トのスピン およびそれに起因する転倒を防止することを可能とするロボッ トの目標 運動を決定することができる。 また、 口ポットの移動軌道が目標歩容の 軌道からずれたり、 ロポッ トのョ一方向の姿勢の継続的な安定性が損な われるの防止することを可能とする目標運動を決定することができる。 また、 制限対象量が許容範囲に収まる限り、 該制限対象量を常に 0もし くはほぼ 0にする必要がないことから、 ロポッ トのある部位の運動が過 剰に激しい運動となったりするのを防止できる。
この第 6発明では、 前記許容範囲に収めた前記制限対象量を目標床反 力モーメントとし、 その目標床反力モーメントに追従させるようにロボ ッ トの動作制御を行なう手段を備えることが好ましい (第 7発明)。 これによれば、 ロポッ トのョ一方向の姿勢状態量を目標運動の姿勢状 態量に安定に保ちつつ、 ロポッ トのスピンおよびそれに起因する転倒を 防止することができる。 また、 口ポッ トの移動軌道が目標歩容の軌道か らずれたり、 口ポッ トのョ一方向の姿勢の継続的な安定性が損なわれる のを防止できる。 上記第 6及び第 7発明では、 前記目標瞬時値決定手段は、 前記目標運 動に前記動力学モデル上で釣り合う床反カモ一メントと前記補償床反力 モーメントとに応じて定まる前記制限対象量を前記許容範囲に収めるた めに、 前記口ポッ トの運動のうち、 前記口ポッ トの角運動量変化率の鉛 直成分又は床面法線方向成分を変化させる運動を調整して前記目標運動 の瞬時値を決定することが好ましい (第 8発明)。
これにより制限対象量を許容範囲に収めるように目標運動の瞬時値を 決定できる。
この第 8発明では、 前記ロポッ 卜の角運動量変化率の鉛直成分又は床 面法線方向成分を変化させる運動は、 該ロポッ トの上体およびノ又は該 上体から延設された腕体の運動であることが好適である (第 9発明)。
これによれば、 目標運動の瞬時値の決定処理が容易になる。
なお、 ロポッ 卜の角運動量変化率の鉛直成分又は床面法線方向成分を 変化させる運動は、 ロボッ トの全体 S心を一定に維持するような運動で あることが特に好ましい。
また、 本発明の脚式移動ロポッ トの制御装置の第 1 0発明は、 上体から延設された脚体を運動させて移動する脚式移動ロポッ 卜の目 標運動の瞬時値を、 少なくとも該ロポッ 卜の運動と床反力との関係を表 す動力学モデルを用いて逐次決定しつつ、 その決定した目標運動の瞬時 値に追従させるように前記ロボッ 卜の動作制御を行なう脚式移動ロポッ 卜の制御装置において、
前記目標運動に追従して動作しているロボッ トに作用させるべき床反 力モーメントの鉛直成分又は該床反力モーメン卜の床面法線方向成分を 制限対象量として、 該制限対象量の許容範囲を設定する許容範囲設定手 段と、
前記目標運動の仮瞬時値を逐次決定する仮瞬時値決定手段と、 少なくとも鉛直軸回り又は床面法線軸回りのロボッ トの姿勢に関する 目標状態量と該ロポッ 卜の実状態量との偏差に応じて該偏差を 0に近づ けるための付加的な床反カモ一メントである補償床反力モーメントを決 定する補償床反カモ一メント決定手段と、
前記目標運動の仮瞬時値に前記動力学モデル上で釣り合う床反力モー メン卜と前記補償床反力モーメントとに応じて定まる前記制限対象量の うちの前記許容範囲を逸脱した分をモーメント修正操作量とし、 そのモ ーメント修正操作量に応じて当該逸脱分が減少傾向になるように前記目 標運動の仮瞬時値を修正することにより前記目標運動の瞬時値を決定す る目標瞬時値決定手段とを備えたことを特徴とする。
この第 1 0発明によれば、 前記目標運動の仮瞬時値に前記動力学モデ ル上で釣り合う床反力モーメントと前記補償床反カモ一メントとに応じ て定まる前記制限対象量 (例えば前記目標運動の仮瞬時値に前記動力学 モデル上で釣り合う床反力モーメント'と前記補償床反力モーメン卜との 和) のうちの前記許容範囲を逸脱した分をモーメント修正操作量とし、 そのモ一メント修正操作量に応じて当該逸脱分が減少傾向になるように 前記目標運動の仮瞬時値を修正することにより前記目標運動の瞬時値を 決定する。 このため、 口ポッ トのョー方向の姿勢状態量を目標状態量 (目標運動におけるョー方向の姿勢状態量) に近づけるための補償床反 力モーメントを付加的に発生させるようにしても'、 実際のロボッ トに作 用する床反力モーメント鉛直成分等の制限対象量をほぼ許容範囲内に収 めることができるような目標運動を生成できる。 つまり、 摩擦力モ一メ ント鉛直成分の限界と前記偏差とを考慮して、 目標運動の瞬時値が決定 される。 それにより、 口ポッ トのョー方向の姿勢状態量を目標運動の姿 勢状態量に安定に保ちつつ、 口ポッ トのスピンおょぴそれに起因する転 倒を防止することを可能とするロポッ トの目標運動を決定することがで きる。 また、 口ポッ トの移動軌道が目標歩容の軌道からずれたり、 ロボ ッ トのョ一方向の姿勢の継続的な安定性が損なわれるの防止することを 可能とする目標運動を決定することができる。 また、 制限対象量が許容 範囲に収まる限り、 該制限対象量を常に 0もしくはほぼ 0にする必要が ないことから、 口ポッ トのある部位の運動が過剰に激しい運動となった りするのを防止できる。
かかる第 1 0発明では、 前記目標瞬時値決定手段は、 前記モーメント 修正操作量を口一パスフィル夕に通したものに応じて前記目標運動の仮 瞬時値の修正量を求め、 その求めた修正量により該仮瞬時値を修正する ことにより前記目標運動の瞬時値を決定することが好ましい (第 1 1発 明)。
この第 1 1発明によれば、 目標運動の仮瞬時値が過剰に修正されるの を防止することができる。
上記第 1 0および第 1 1発明では/前記目標運動の仮瞬時値に前記動 力学モデル上で釣り合う床反力モーメントと前記補償床反力モーメント とに応じて定まる前記制限対象量を前記許容範囲により制限してなる制 限済制限対象量に対応する床反力モーメントを目標床反力モーメントと し、 その目標床反カモ一メントに追従させるようにロボッ トの動作制御 を行なう手段を備えることが好ましい (第 1 2発明)。
この第 1 2発明によれば、 口ポッ トのョー方向の姿勢状態量を目標運 動の姿勢状態量に安定に保ちつつ、 ロポッ トのスピンおよびそれに起因 する転倒を防止することができる。 また、 ロボッ トの移動軌道が目標歩 容の軌道からずれたり、 ロポッ トのョ一方向の姿勢の継続的な安定性が 損なわれるのを防止できる。
上記第 1 0〜第 1 2発明では、 前記目標瞬時値決定手段は、 前記ロボ ッ トの角運動量変化率の鉛直成分又は床面法線方向成分を変化させる運 動を前記目標運動の仮瞬時値から修正することにより前記目標運動の瞬 時値を決定することが好ましい (第 1 3発明)。
これにより制限対象量を許容範囲に収めるように目標運動の瞬時値を 決定できる。
' この第 1 3発明では、 前記口ポッ トの角運動量変化率の鉛直成分又は 床面法線方向成分を変化させる運動は、 該ロボッ 卜の上体および Z又は 該上体から延設された腕体の運動であることが好適である (第 1 4発 明)。
これによれば、 目標運動の仮瞬時値の修正処理が容易になる。
なお、 前記第 1〜第 1 4発明では、 前記ロボッ トの姿勢に関する状態 量は、 具体的には、 該ロボッ トの上体のョ一角 (ョ一方向の回転角) 又 はョ一角速度 (ョ一方向の回転角の角速度) を含むことが好ましい (第 1 5発明)。 この第 1 5発明によれば、 口ポッ トの上体のョ一方向の姿 勢の安定性を高めることができる。 ¾お、 このことは、 後述する第 1 5 〜第 5 1発明においても同様である。
また、 前記第 1〜第 1 5発明では、 前記口ポッ トの滑りの発生を判断 する滑り判断手段を備え、 前記許容範囲設定手段は、 該滑り判断手段の 判断結果に応じて前記許容範囲を可変的に設定することが好ましい (第 1 6発明)。
この第 1 6発明によれば、 前記ロボッ ト (目標運動の瞬時値に、 ある いは目標運動および目標床反力の瞬時値に追従して動作しているロポッ ト) の滑りの発生の判断結果に応じて制限対象量の許容範囲を可変的に 設定するので、 口ポッ トの滑りの発生を確実に抑制できる。 なお、 滑り の発生が有ると判断されたときには、 許容範囲は、 それを狭めるように 設定されるべきである。
この第 1 6発明では、 例えば、 次のようにして、 滑りの発生を判断す ることができる。
すなわち、 前記滑り判断手段は、 少なくとも接地している脚体の先端 部の対地速度に基づき滑りの発生を判断する (第 1 7発明)。 この場合, 例えば該対地速度の絶対値が所定値よりも大きいときには、 滑りの発生 が有ると判断することができる。
あるいは、 前記滑り判断手段は、 少なくとも接地している脚体に作用 する実床反力の時間的変化率と該脚体の先端部の対地速度とに基づき、 該脚体の見かけばね定数を求める手段を備え、 少なくとも該見かけばね 定数に基づき滑りの発生を判断する (第 1 8発明)。 この場合、 例えば 該見かけばね定数が所定値よりも小さいときには、 滑りの発生が有ると 判断することができる。
あるいは、 前記滑り判断手段は、 少なくとも接地している脚体に作用 する実床反力を、 所定周波数の近傍範囲に周波数通過特性を有するバン ドパスフィルタに通したものに基づき滑りの発生を判断する (第 1 9発 明)。 この場合、 前記実床反力をバンドパスフィル夕に通したものは、 いわゆる滑り振動が発生しているときの、 実床反力の振動成分に相当す るものとなる。 そして、 例えばこの振動成分の大きさ (絶対値) が所定 値よりも大きいときには、 滑り振動の発生が有ると判断することができ る。
なお、 滑りの発生の判断は、 第 1 7〜第 1 9発明のいずれでも行なう ことができるが、 これらの第 1 7〜第 1 9発明の 2つ以上を組み合わせ て滑りの発生の判断を行なうようにしてもよい。
また、 本発明の脚式移動ロボッ トの制御装置の第 2 0発明は、 上体から延設された複数の脚体を運動させて移動する脚式移動ロポッ トの目標歩容を生成し、 その目標歩容に追従させるように該ロポッ トの 動作を制御する制御装置において、 少なくとも鉛直軸回り又は床面法線軸回りのロボッ 卜の姿勢に関する 目標状態量と該ロボッ 卜の実状状態との偏差に応じて、 該偏差を 0に近 づけるための付加的な床反カモ一メントである補償床反力モーメントを 決定する手段と、
前記目標歩容に追従して動作しているロポッ トに作用させるべき床反 力モーメントの鉛直成分又は該床反力モーメントの床面法線方向成分を 制限対象量として、 該制限対象量の許容範囲を設定する許容範囲設定手 段と、
前記目標歩容を構成する目標運動の仮瞬時値を決定する仮瞬時値決定 手段と、
前記ロボッ 卜の運動と該運動に釣り合う床反力のモーメントの鉛直成 分又は床面法線方向成分との関係を表す動力学モデルに、 少なく とも前 記目標運動の仮瞬時値を入力して、 該動力学モデルの出力としての床反 力モーメントの鉛直成分又は床面法線方向成分を求め、 前記求めた鉛直 成分又は床面法線方向成分と前記補償床反力モーメントとから所定の演 算によって前記制限対象量の仮瞬時値であるモデル制限対象量瞬時値を 決定するモデル演算手段と、
少なくとも該モデル制限対象量瞬時値を前記許容範囲に収めるように 前記目標運動の仮瞬時値を補正して目標運動の瞬時値を決定する目標瞬 時値決定手段とを備えたことを特徴とする。
この第 2 0発明によれば、 少なくとも前記目標運動の仮瞬時値を前記 動力学モデルに入力することで、 該動力学モデルの出力としての床反力 モーメントの鉛直成分又は床面法線方向成分が求められる。 そして、 そ の求めた鉛直成分又は床面法線方向成分と前記補償床反力モーメントと から所定の演算 (例えば足し算) によって前記制限対象量の仮瞬時値で あるモデル制限対象量瞬時値 (これは前記動力学モデル上で目標運動が 発生する床反力モーメン卜に補償床反力モーメントを付加した場合の制 限対象量の瞬時値に相当する) が決定され、 少なくとも該モデル制限対 象量瞬時値を前記許容範囲に収めるように前記目標運動の仮瞬時値を捕 正して目標運動の瞬時値を決定する。
このため、 口ポッ トのョー方向の姿勢状態量を目標状態量 (目標運動 におけるョ一方向の姿勢状態量) に近づけるための補償床反力モーメン トを付加的に発生させるようにしても、 実際のロボッ 卜に作用する床反 力モーメント鉛直成分等の制限対象量を許容範囲内に収めることができ るような目標運動を生成できる。 つまり、 摩擦力モーメント鉛直成分の 限界と前記偏差を考慮して、 目標運動の瞬時値が決定される。 それによ り、 ロボッ トのョ一方向の姿勢状態量を目標運動の姿勢状態量に安定に 保ちつつ、 ロポッ トのスピンおよびそれに起因する転倒を防止すること を可能とする口ポッ トの目標運動を決定することができる。 また、 ロボ ッ トの移動軌道が目標歩容の軌道からずれたり、 ロポッ トのョ一方向の 姿勢の継続的な安定性が損なわれるの防止することを可能とする目標運 動を決定することができる。 また、 制限対象量が許容範囲に収まる限り 該制限対象量を常に 0もしくはほぼ 0にする必要がないことから、 ロボ ッ トのある部位の運動が過剰に激しい運動となったりするのを防止でき る。
なお、 前記動力学モデルは、 基本的には近似精度の高いものを用いる ことが好適である。
この第 2 0発明では、 前記目標瞬時値決定手段は、 前記目標運動の瞬 時値に前記動力学モデル上で略釣り合う床反力のモーメントの鉛直成分 又は床面法線方向成分と前記補償床反力モーメントとから前記所定の演 算によって決定される制限対象量瞬時値に対応する床反力モーメント瞬 時値を、 前記目標歩容を構成する目標床反力の床反力モーメント瞬時値 として決定することが好ましい (第 2 1発明)。
これによれば、 ロポッ トのョ一方向の姿勢状態量を目標運動の姿勢状 態量に安定に保ちつつ、 ロボッ トのスピンおよびそれに起因する転倒を 防止することができる。 また、 口ポッ トの移動軌道が目標歩容の軌道か らずれたり、 ロボッ トのョ一方向の姿勢の継続的な安定性が損なわれる のを防止できる。
上記第 2 0および第 2 1発明では、 前記目標瞬時値決定手段は、 前記 ロボッ トの摂動運動と床反力モーメントの鉛直成分又は床面法線方向成 分の摂動分との関係を表す摂動モデルと、 少なくとも前記決定したモデ ル制限対象量瞬時値と前記許容範囲とに基づき前記摂動モデルの摂動分 を操作する摂動モデル操作量を決定する手段と、 その決定した摂動モデ ル操作量を前記摂動モデルに入力することにより前記目標運動の補正量 を求める手段と、 該補正量により前記目標運動の仮瞬時値を補正するこ とにより前記目標運動の瞬時値を決定する手段とを備えることが好まし い (第 2 2発明)。
すなわち、 前記摂動モデルは線形性が高いので、 前記制限対象量を許 容範囲に収める上での適正な目標運動の補正量の算出処理が容易になる と共に、 その補正量による前記目標運動の仮瞬時値の補正処理が容易に なる。
この第 2 2発明では、 前記摂動モデル操作量を決定する手段は、 前記 摂動モデル操作量を 0と仮定した場合の前記制限対象量の推定値を少な くとも前記決定したモデル制限対象量瞬時値に基づき決定する手段と、 その決定した推定値を前記許容範囲と比較し、 その比較に基づき該許容 範囲内に制限してなる制限済制限対象量を決定する手段とを備え、 少な くとも前記決定したモデル制限対象量瞬時値と前記制限済制限対象量と の差に基づき前記摂動モデル操作量を決定することが好ましい (第 2 3 発明)。
この第 2 3発明によれば、 まず、 摂動モデル操作量を 0と仮定した場 合の制限対象量の推定値を求め、 この推定値と許容範囲との比較に基づ き制限済制限対象量を決定する。 なお、 この場合、 例えばモデル制限対 象量瞬時値をそのまま制限対象量の推定値としてもよいが、 ジャイロ効 果を考慮して、 制限対象量の推定値を決定するようにしてもよい。 また, 制限済制限対象量は、 前記許容範囲内でできるだけ制限対象量の推定値 に近い値に決定することが好ましい。 そして、 少なくとも前記モデル制 限対象量瞬時値と制限済制限対象量との差に基づき、 摂動モデル操作量 を決定する。 これにより、 補償床反力モーメントを付加的に発生させて も、 制限対象量が許容範囲を超えることが無いようにすることを可能と する摂動モデル操作量を適切に決定できる。
また、 前記第 2 2発明では、 少なくとも前記摂動モデルの状態量に応 じて前記摂動モデル操作量の要求値 ¾決定する手段を備え、 前記摂動モ デル操作量を決定する手段は、 少なくとも前記決定したモデル制限対象 量瞬時値、 前記許容範囲、 及び前記要求値に基づき前記摂動モデルに入 力する摂動モデル操作量を決定することが好ましい (第 2 4発明)。
これによれば、 前記許容範囲と、 補償床反力モーメントを加味したモ デル制限対象量瞬時値だけでなく、 摂動モデルの状態量 (摂動モデルの 要素となる回転体の回転角やその角速度など) の'要求値を考慮して、 前 記摂動モデル操作量が決定される。 これにより、 該摂動モデルの状態量 が前記要求値に対応する状態量からかけ離れないようにして、 不適正な 目標運動の補正量が求められるような事態を防止することができる。 この第 2 4発明では、 前記摂動モデル操作量の要求値を決定する手段 は、 前記摂動モデルの状態量と該状態量に対する目標値との偏差に応じ たフィードバック制御則により前記要求値を逐次決定することが好適で ある (第 2 5発明)。
この第 2 5発明によれば、 摂動モデルの状態量がある目標状態量の近 傍に概ね維持されるように摂動モデル操作量が決定される。 これにより、 ごの摂動モデルによって決定される目標運動の補正量を、 摂動モデルの 状態を安定に保ちつつ、 制限対象量を許容範囲に収める上で好適なもの にすることができる。
さらに、 上記第 2 4発明および第 2 5発明では、 前記摂動モデル操作 量を決定する手段は、 前記摂動モデル操作量を前記要求値に一致させた と仮定した場合の前記制限対象量の推定値を少なくとも前記決定したモ デル制限対象量瞬時値と前記要求値とに基づき決定する手段と、 その決 定した推定値を前記許容範囲と比較し、 その比較に基づき該許容範囲に 制限してなる制限済制限対象量を決定する手段とを備え、 少なくとも前 記決定したモデル制限対象量瞬時値と前記制限済制限対象量との差に基 づき前記摂動モデル操作量を決定することが好ましい (第 2 6発明)。
これによれば、 まず、 摂動モデル操作量を前記要求値に一致させたと 仮定した場合、 すなわち、 該要求値のみを摂動モデルに入力したとした 場合の制限対象量の推定値を求め、 この推定値と許容範囲との比較に基 づき決定した制限済制限対象量を決定する。 なお、 この場合、 例えばモ デル制限対象量瞬時値と上記要求値との和をそのまま制限対象量の推定 値としてもよいが、 ジャイロ効果を考慮して、 制限対象量の推定値を決 定するようにしてもよい。 また、 制限済制限対象量は、 前記許容範囲内 でできるだけ制限対象量の推定値に近い値に決定することが好ましい。 そして、 少なくとも前記モデル制限対象量瞬時値と制限済制限対象量と の差に基づき、 摂動モデル操作量を決定する。 これにより、 補償床反力 モーメントを付加的に発生させても、 制限対象量が許容範囲を超えるこ とが無く、 且つ摂動モデルの安定性も確保し得る摂動モデル操作量を適 4 009472
2 1 切に決定できる。
前記第 2 2発明では、 前記目標瞬時値決定手段は、 前記目標運動の補 正量を前記動力学モデルに追加的に入力する手段を備えるようにしても よい (第 2 7発明)。
これによれば、 目標運動の補正量を前記動力学モデルに追加的に入力 するので、 該動力学モデルから目標運動に瞬時値に釣り合う床反カモ一 メントの鉛直成分または床面法線方向成分を直接的に求めることができ る。
摂動モデルを備える前記 2 2〜第 2 7発明にあっては、 前記摂動モデ ルは、 ロボッ トの角運動量変化率の鉛直成分又は床面法線方向成分を摂 動させる摂動運動と前記制限対象量摂動分との関係を表すモデルである ことが好ましい (第 2 8発明)。
これによれば、 前記制限対象量を許容範囲に収めるための目標運動の 補正量を適正に決定できる。
この第 2 8発明では、 前記摂動運動は、 該ロポッ トの重心位置を略一 定に維持する摂動運動であることが好適である (第 2 9発明)。
これによれば、 摂動モデルによる目標運動の補正を、 口ポッ トの並進 床反力に影響を及ぼすことなく行なうことができる。
さらに上記第 2 8および第 2 9発明では、 前記摂動運動は、 ロポッ ト の上体および Z又は該上体から延設された腕体の'摂動運動であることが 好ましい (第 3 0発明)。
これによれば、 目標運動の補正量の算出処理が容易になる。
また、 本発明の脚式移動ロポッ 卜の制御装置の第 3 1発明は、 上体から延設された複数の脚体を運動させて移動する脚式移動ロボッ 卜の目標歩容を生成し、 その目標歩容に追従させるように該ロポッ トの 動作を制御する制御装置において、 少なくとも鉛直軸回り又は床面法線軸回りのロポッ トの姿勢に関する 目標状態量と該ロポッ トの実状状態との偏差に応じて、 該偏差を 0に近 づけるための付加的な床反カモ一メントである補償床反力モ一メントを 決定する手段と、
前記目標歩容に追従して動作しているロポッ トに作用させるべき床反 カモ一メン卜の鉛直成分又は該床反力モーメントの床面法線方向成分を 制限対象量として、 該制限対象量の許容範囲を設定する許容範囲設定手 段と、
前記目標歩容を構成する目標運動及び目標床反力のうちの少なくとも 目標床反力の仮瞬時値を逐次決定する目標床反力仮瞬時値決定手段と、 少なくとも前記目標床反力の仮瞬時値を前記ロポッ トの運動と床反力 との関係を表す第 1動力学モデルに入力し、 該第 1動力学モデルの出力 としての目標運動の仮瞬時値を逐次求める第 1モデル演算手段と、 前記ロボッ 卜の運動と該運動に釣り合う床反力のモーメン卜の鉛直成 分又は床面法線方向成分との関係を表す第 2動力学モデルに、 少なくと も前記目標運動の仮瞬時値を入力して、 該第 2動力学モデルの出力とし ての床反力モ一メントの鉛直成分又は床面法線方向成分を求め、 前記求 めた鉛直成分又は床面法線方向成分と前記補償床反力モーメントとから 所定の演算によって前記制限対象量の仮瞬時値であるモデル制限対象量 瞬時値を決定する第 2モデル演算手段と、 '
少なくとも該モデル制限対象量瞬時値を前記許容範囲に収めるように 目標床反力の床反カモ一メント補正量を求め、 その求めた床反力モ一メ ント補正量を前記第 1動力学モデルに追加的に入力する第 1モデル入力 補正手段とを備え、
少なくとも前記第 2動力学モデルの入力に基づいて前記目標運動の瞬 時値を決定することを特徴とする。 かかる第 3 1発明によれば、 少なくとも前記目標運動の仮瞬時値を前 記第 2動力学モデルに入力することで、 該第 2動力学モデルの出力とし ての床反カモ一メン卜の鉛直成分又は床面法線方向成分が求められ、 こ れと、 前記補償床反力モーメントとから所定の演算 (例えば足し算) に よって前記制限対象量の仮瞬時値であるモデル制限対象量瞬時値 (これ は前記動力学モデル上で目標運動が発生する床反力モーメントに補償床 反力モーメントを付加した場合の制限対象量の瞬時値に相当する) が決 定される。 そして、 少なくとも該モデル制限対象量瞬時値を前記許容範 囲に収めるように目標床反力の床反カモ一メント補正量を求め、 その求 めた床反力モーメント補正量を前記第 1動力学モデルに追加的に入力す るので、 少なくとも第 2動力学モデルの入力に基づいて、 前記制限対象 量を許容範囲に収め得るような目標運動の瞬時値が得られることとなる ( このため、 口ポッ トのョ一方向の姿勢状態量を目標状態量 (目標運動 におけるョ一方向の姿勢状態量) に近づけるための補償床反力モーメン トを付加的に発生させるようにしても、 実際の口ポッ トに作用する床反 力モーメント鉛直成分等の制限対象量を許容範囲内に収めることができ るような目標運動を生成できる。 つまり、 摩擦力モーメント鉛直成分の 限界と前記偏差を考慮して、 目標運動の瞬時値が決定される。 それによ り、 ロポッ トのョ一方向の姿勢状態量を目標運動の姿勢状態量に安定に 保ちつつ、 口ポッ トのスピンおよびそれに起因する転倒を防止すること を可能とするロボッ トの目標運動を決定することができる。 また、 ロボ ッ 卜の移動軌道が目標歩容の軌道からずれたり、 ロボッ トのョ一方向の 姿勢の継続的な安定性が損なわれるの防止することを可能とする目標運 動を決定することができる。 また、 制限対象量が許容範囲に収まる限り 該制限対象量を常に 0もしくはほぼ 0にする必要がないことから、 ロボ ッ トのある部位の運動が過剰に激しい運動となったりするのを防止でき る。
なお、 前記第 2動力学モデルは、 基本的には第 1動力学モデルよりも 近似精度の高いものを用いることが好適である。
' かかる第 3 1発明では、 前記目標運動の瞬時値に前記第 2動力学モデ ル上で略釣り合う床反力のモ一メントの鉛直成分又は床面法線方向成分 と前記補償床反力モーメントとから前記所定の演算によって決定される 制限対象量瞬時値に対応する床反力モ一メント瞬時値を、 前記目標歩容 を構成する目標床反力の床反力モーメント瞬時値として決定する手段を 備えることを好ましい (第 3 2発明)
これによれば、 ロボッ トのョー方向の姿勢状態量を目標運動の姿勢状 態量に安定に保ちつつ、 ロポッ トのスピンおよびそれに起因する転倒を 防止することができる。 また、 口ポッ トの移動軌道が目標歩容の軌道か らずれたり、 ロボッ トのョ一方向の姿勢の継続的な安定性が損なわれる のを防止できる。
上記第 3 1発明および第 3 2発明では、 例えば前記第 1モデル入力捕 正手段は、 少なくとも前記目標床反力の床反力モーメント補正量を 0と 仮定した塲合の前記制限対象量の推定値を少なくとも前記決定したモデ ル制限対象量瞬時値に基づいて決定する手段と、 その決定した推定値を 前記許容範囲と比較し、 その比較に基づき該許容範囲に制限してなる制 限済制限対象量を決定する手段とを備え、 少なぐとも前記決定したモデ ル制限対象量瞬時値と前記制限済制限対象量との差に基づき前記床反力 モ一メン補正量を決定することが好ましい (第 3 3発明)。
この第 3 3発明によれば、 まず、 少なく とも前記目標床反力の床反力 モ一メント補正量を 0 と仮定した場合の制限対象量の推定値を求め、 こ の推定値と許容範囲との比較に基づき制限済制限対象量を決定する。 な お、 この場合、 例えばモデル制限対象量瞬時値をそのまま制限対象量の 推定値としてもよいが、 ジャィ口効果を考慮して、 制限対象量の推定値 を決定するようにしてもよい。 また、 制限済制限対象量は、 前記許容範 囲内でできるだけ制限対象量の推定値に近い値に決定することが好まし レ そして、 少なくとも前記モデル制限対象量瞬時値と前記制限済制限 対象量との差に基づき、 床反力モーメン補正量を決定する。 補償床反力 モーメントを付加的に発生させても、 制限対象量が許容範囲を超えるこ とが無いようにすることを可能とする適切な床反カモ一メント補正量を 決定できる。
また、 上記第 3 1発明および第 3 2発明では、 より好ましくは、 前記 目標床反力の床反力モーメント補正量の要求値を決定する手段を備え、 前記第 1モデル入力補正手段は、 少なく とも前記目標床反力の床反カモ
—メント補正量を前記要求値に一致させたと仮定した場合の前記制限対 象量の推定値を少なくとも前記決定したモデル制限対象量瞬時値と前記 要求値とに基づいて決定する手段と、 その決定した推定値を前記許容範 囲と比較し、 その比較に基づき該許容範囲に制限してなる制限済制限対 象量を決定する手段とを備え、 少なくとも前記決定したモデル制限対象 量瞬時値と前記制限済制限対象量との差に基づき前記床反力モーメン補 正量を決定する (第 3 4発明)。
この第 3 4発明によれば、 まず、 目標床反力の床反カモ一メント補正 量を前記要求値に一致させたと仮定した場合、 すなわち、 第 1動力学モ デルに該要求値のみを追加入力したと仮定した場合の制限対象量の推定 値を求め、 この推定値と許容範囲との比較に基づき決定した制限済制限 対象量を決定する。 なお、 この場合、 例えばモデル制限対象量瞬時値と 上記要求値との和をそのまま制限対象量の推定値としてもよいが、 ジャ イロ効果を考慮して、 制限対象量の推定値を決定するようにしてもよい, また、 制限済制限対象量は、 前記許容範囲内でできるだけ制限対象量の 推定値に近い値に決定することが好ましい。 そして、 少なくとも前記モ デル制限対象量瞬時値と制限済制限対象量との差に基づき、 床反力モー メント補正量を決定する。 これにより、 補償床反力モーメントを付加的 発生させても、 制限対象量が許容範囲を超えることが無く、 且つ、 前 記要求値にできるだけ近づくような適切な床反カモ一メント補正量を決 定できる。
また、 上記第 3 1〜第 3 4発明では、 少なくとも前記決定したモデル 制限対象量瞬時値と前記許容範囲とに基づき前記目標運動の補正量を求 め、 その求めた補正量を前記第 2動力学モデルに追加的に入力する第 2 モデル入力補正手段を備えるようにしてもよい (第 3 5発明)。
これによれば、 第 1動力学モデルの安定性を高めつつ、 制限対象量を 許容範囲により適切に収めるための目標蓮動の瞬時値を第 2動力学モデ ルに入力させるようにすることができる。
この第 3 5発明では、 前記ロポッ トの摂動運動と制限対象量摂動分と の関係を表す摂動モデルと、 少なくとも前記決定したモデル制限対象量 瞬時値と前記許容範囲とに基づき床反力モーメントの操作量を決定する 手段と、 その決定した床反力モーメントの操作量を、 前記第 1動力学モ デルに入力する前記目標床反力の床反力モーメント補正量と前記摂動モ デルに入力する摂動モデル操作量とに分配する分配手段とを備え、 前記 第 2モデル入力補正手段は、 前記摂動モデル操作量を前記摂動モデルに 入力することにより前記目標運動の補正量を求めることが好ましい (第 3 6発明)。
これによれば、 前記床反力モーメン卜の操作量を第 1動力学モデルの 入力する床反力モーメント補正量と摂動モデルに入力する摂動モデル操 作量とに分配するので、 第 1動力学モデルと摂動モデルとのそれぞれの 特性に適した入力をそれぞれのモデルに入力することができる。 そのた め、 第 1動力学モデルや摂動モデルが不安定になるのを防止しつつ、 制 限対象量を許容範囲に収め得る目標運動の瞬時値を適切に決定できる。 また、 摂動モデルを用いることで、 第 2動力学モデルに追加的に入力す る目標運動の補正量の算出処理が容易になる。
なお、 第 1動力学モデルに入力する床反力モーメント補正量は床反力 モーメントの操作量のうちの低周波成分 (直流成分) であることが望ま しく、 摂動モデルに入力する摂動モデル操作量は、 床反力モーメントの 操作量のうちの高周波成分であることが望ましい。
この第 3 6発明では、 少なくとも前記摂動モデルの状態量に応じて前 記床反力モーメントの操作量の要求値を決定する手段を備え、 前記床反 力モーメン卜の操作量を決定する手段は、 少なくとも前記決定したモデ ル制限対象量瞬時値と前記許容範囲と前記要求値とに基づき前記分配手 段に与える床反力モーメントの操作量を決定することが好ましい (第 3 7発明)。 '
この第 3 7発明によれば、 前記補償床反力モーメントを加味したモデ ル制限対象量瞬時値と許容範囲だけでなく、 摂動モデルの状態量 (摂動 モデルの要素としての回転体の回転角やその角速度など) を考慮して、 分配手段に入力する床反力モーメントの操作量が決定されるので、 摂動 モデルの状態量が前記要求値に対応する状態量からかけ離れないように して、 該摂動モデルによって求められる目標運動の補正量が不適切なも のとなるのを防止できる。
この第 3 7発明では、 前記床反力モーメントの操作量の要求値を決定 する手段は、 前記摂動モデルの状態量と該状態量に対する目標値との偏 差に応じたフィ一ドバック制御則により前記要求値を逐次決定すること が好適である (第 3 8発明)。
この第 3 8発明によれば、 摂動モデルの状態量がある目標状態量の近 傍に概ね維持されるように床反カモ一メン卜の操作量、 ひいては摂動モ デル操作量が決定される。 これにより、 この摂動モデルによって決定さ れる目標運動の補正量を、 摂動モデルの状態を安定に保ちつつ、 制限対 彖量を許容範囲に収める上で好適なものにすることができる。
また、 上記の如く摂動モデルを備える第 3 6〜 3 8発明では、 前記摂 動モデルは、 ロボッ トの角運動量変化率の鉛直軸回り又は床面法線軸回 りの成分を摂動させる摂動運動と前記制限対象量摂動分との関係を表す モデルであることが好ましい (第 3 9発明).。
これによれば、 前記制限対象量を許容範囲に収めるための目標運動の 補正量を適正に決定できる。
この第 3 9発明では、 前記摂動運動は、 口ポッ トの重心位置を略一定 に維持する摂動運動であることが好適である (第 4 0発明)。
これによれば、 摂動モデルによる目標運動の補正を、 口ポッ トの並進 床反力に影響を及ぼすことなく行なうことができる。
さらに、 上記第 3 9および第 4 0発明では、 前記摂動運動は、 ロボッ トの上体および Z又は該上体から延設された腕体の摂動運動であること が好ましい (第 4 1発明)。
これによれば、 目標運動の補正量の算出処理が容易になる。
また、 前記第 3 6〜第 4 1発明では、 例えば前記床反力モーメントの 操作量を決定する手段は、 前記摂動モデル操作量を 0と仮定した場合の 前記制限対象量の推定値を少なくとも前記決定したモデル制限対象量瞬 時値に基づいて決定する手段と、 その決定した推定値を前記許容範囲と 比較し、 その比較に基づき該許容範囲に制限してなる制限済制限対象量 を決定する手段とを備え、 少なくとも前記決定したモデル制限対象量瞬 時値と前記制限済制限対象量との差に基づき前記床反力モーメントの操 作量を決定する (第 4 2発明)。 PC漏 004/009472
2 9 この第 4 2発明によれば、 まず、 摂動モデル操作量を 0と仮定した場 合の制限対象量の推定値を求め、 この推定値と許容範囲との比較に基づ き制限済制限対象量を決定する。 なお、 この場合、 例えばモデル制限対 彖量瞬時値をそのまま制限対象量の推定値としてもよいが、 ジャイロ効 果を考慮して、 制限対象量の推定値を決定するようにしてもよい。 また、 制限済制限対象量は、 前記許容範囲内でできるだけ制限対象量の推定値 に近い値に決定することが好ましい。 そして、 少なくとも前記モデル制 限対象量瞬時値と制限済制限対象量との差に基づき、 床反力モーメント の操作量を決定する。 これにより、 補償床反力モーメントを付加的に発 生させても、 制限対象量が許容範囲を超えることが無いようにすること を可能とする床反カモ一メントの操作量を決定できる。
また、 特に前記第 3 7〜第 4 1発明において、 摂動モデル操作量の要 求値を決定する場合には、 前記床反力モーメントの操作量を決定する手 段は、 前記摂動モデル操作量を前記要求値に一致させたと仮定した場合 の前記制限対象量の推定値を少なくとも前記決定したモデル制限対象量 瞬時値と前記要求値とに基づいて決定する手段と、 その決定した推定値 を前記許容範囲と比較し、 その比較に基づき該許容範囲に制限してなる 制限済制限対象量を決定する手段とを備え、 少なくとも前記決定したモ デル制限対象量瞬時値と前記制限済制限対象量との差に基づき前記床反 力モーメントの操作量を決定することが好ましい' (第 4 3発明)。
これによれば、 まず、 摂動モデル操作量を前記要求値に一致させたと 仮定した場合、 すなわち、 該要求値のみを摂動モデルに入力したとした 場合の制限対象量の推定値を求め、 この推定値と許容範囲との比較に基 づき決定した制限済制限対象量を決定する。 なお、 この場合、 例えばモ デル制限対象量瞬時値と上記要求値との和をそのまま制限対象量の推定 値としてもよいが、 ジャイロ効果を考慮して、 制限対象量の推定値を決 定するようにしてもよい。 また、 制限済制限対象量は、 前記許容範囲内 でできるだけ制限対象量の推定値に近い値に決定することが好ましい。 そして、 少なくとも前記モデル制限対象量瞬時値と制限済制限対象量と め差、 すなわち、 モデル制限対象量瞬時値のうちの許容範囲を逸脱する 分に基づき、 床反力モーメントの操作量を決定する。 これにより、 補償 床反力モーメントを付加的に発生させても、 制限対象量が許容範囲を超 えることが無く、 且つ摂動モデルの安定性も確保し得る床反力モーメン トの操作量を適切に決定できる。
また、 本発明の脚式移動ロボッ トの制御装置の第 4 4発明は、 上体から延設された複数の脚体を運動させて移動する脚式移動ロポッ トの目標歩容を生成し、 その目標歩容に追従させるように該ロボッ トの 動作を制御する制御装置において、
少なくとも鉛直軸回り又は床面法線軸回りのロボッ トの姿勢に関する 目標状態量と該ロポッ トの実状態量との偏差に応じて、 該偏差を 0に近 づけるための付加的な床反カモ一メントである補償床反カモ一メントを 決定する手段と、
前記目標歩容に追従して動作しているロポッ トに作用させるべき床反 力モーメントの鉛直成分又は該床反力モーメントの床面法線方向成分を 制限対象量として、 該制限対象量の許容範囲を設定する許容範囲設定手 段と、
前記目標歩容を構成する目標運動及び目標床反力のうちの少なくとも 目標床反力の仮瞬時値を逐次決定する目標床反力仮瞬時値決定手段と、 少なくとも該目標床反力の仮瞬時値を、 前記ロポッ トの運動と床反力 との関係を表す第 1動力学モデルに入力し、 該第 1動力学モデルの出力 としての目標運動の第 1仮瞬時値を求める第 1モデル演算手段と、 目標運動の第 2仮瞬時値を決定する手段であって、 その決定する第 2 JP2004/009472
3 1 仮瞬時値にロポッ 卜の運動と床反力との関係を表す第 2動力学モデル上 で釣り合う床反力モーメントの鉛直成分又は床面法線方向成分と前記補 償床反力モーメントとから所定の演算により求まる制限対象量瞬時値が ^記許容範囲に収まるように、 少なくとも前記目標床反力の仮瞬時値に 基づき、 該目標運動の第 2仮瞬時値を決定する制限付き第 2モデル演算 手段と、
少なくとも前記目標運動の第 1仮瞬時値と第 2仮瞬時値との差に基づ いて、 該差が 0に近づくように床反力モーメントの操作量を求める操作 量算出手段と、
該床反力モーメントの操作量を前記第 1動力学モデル及び第 2動力学 モデルのうちの少なくともいずれか一方に追加的に入力するモデル入力 補正手段とを備え、
前記目標運動の第 2仮瞬時値を該目標運動の目標瞬時値として決定す ることを特徴とする。
この第 4 4発明によれば、 目標床反力の仮瞬時値が第 1動力学モデル に入力されて、 目標運動の第 1仮瞬時値が求められる一方、 目標床反力 の仮瞬時値が第 2動力学モデルにも入力され、 この第 2動力学モデルを 用いて目標運動の第 2仮瞬時値が求められる。 伹し、 この場合、 目標運 動の第 2仮瞬時値に第 2動力学モデル上で釣り合う床反力モーメン卜の 鉛直成分又は床面法線方向成分と前記補償床反力モーメントとから所定 の演算により求まる制限対象量瞬時値が前記許容範囲に収まるように該 目標運動の第 2仮瞬時値が決定される。 そして、 少なくとも前記目標運 動の第 1仮瞬時値と第 2仮瞬時値との差に基づいて、 該差が零に近づく ように床反力モーメントの操作量が求められ、 これが第 1動力学モデル 及び第 2動力学モデルのうちの少なくともいずれか一方に追加的に入力 される。 さらに、 目標運動の第 2仮瞬時値が該目標運動の目標瞬時値と して決定される。
このため、 制限付き第 2モデル演算手段が求める目標運動の第 2仮瞬 時値は、 前記制限対象量を許容範囲に収めつつ、 安定性の高いものとな る。 その結果、 ロボッ トのョー方向の姿勢状態量を目標状態量 (目標運 動におけるョー方向の姿勢状態量) に近づけるための補償床反力モ一メ ントを付加的に発生させるようにしても、 実際の口ポッ トに作用する床 反力モーメント鉛直成分等の制限対象量を許容範囲内に収めることがで きるような目標運動を生成できる。 つまり、 摩擦力モーメント鉛直成分 の限界と前記偏差を考慮して、 目標運動の瞬時値が決定される。 それに より、 口ポッ トのョー方向の姿勢状態量を目標運動の姿勢状態量に安定 に保ちつつ、 ロポッ トのスピンおよびそれに起因する転倒を防止するこ とを可能とする口ポッ トの目標運動を決定することができる。 また、 口 ポッ トの移動軌道が目標歩容の軌道からずれたり、 ロボッ トのョ一方向 の姿勢の継続的な安定性が損なわれるの防止することを可能とする目標 運動を決定することができる。 また、 制限対象量が許容範囲に収まる限 り、 該制限対象量を常に 0もしくはほぼ 0にする必要がないことから、 口ポッ トのある部位の運動が過剰に激しい運動となったりするのを防止 できる。
なお、 第 1動力学モデルは比較的動力学的な近似精度の低いものでよ く、 また、 第 2動力学モデルは、 第 1動力学モデルよりも動力学的な近 似精度が高いものであることが望ましい。
かかる第 4 4発明では、 前記目標運動の第 1仮瞬時値と第 2仮瞬時値 との差は、 前記口ポッ トの所定の部位の姿勢の、 鉛直軸回り又は床面法 線軸回りの状態量の差を含むことが好ましい (第 4 5発明)。
これによれば、 前記所定の部位 (例えば上体) のョ一方向の姿勢状態 量の安定性を好適に高めることができる。 9472
3 3 また、 上記第 4 4および第 4 5発明では、 前記目標運動の瞬時値に前 記第 2動力学モデル上で略釣り合う床反力のモーメントの鉛直成分又は 床面法線方向成分と前記補償床反力モーメントとから前記所定の演算に よって決定される制限対象量瞬時値に対応する床反力モーメント瞬時値 を、 前記目標歩容を構成する目標床反力の床反力モーメント瞬時値とし て決定する手段を備えることが好ましい (第 4 6発明)。
これによれば、 ロボッ トのョ一方向の姿勢状態量を目標運動の姿勢状 態量に安定に保ちつつ、 口ポッ トのスピンおよびそれに起因する転倒を 防止することができる。 また、 ロボッ トの移動軌道が目標歩容の軌道か らずれたり、 ロボッ トのョ一方向の姿勢の継続的な安定性が損なわれる のを防止できる。
上述のような第 4 4発明は、 例えば前記第 3 4発明の構成を用いるこ とで、 容易に実現できる。 すなわち、 前記第 3 4発明において、 少なく とも前記目標床反力の仮瞬時値を、 前記ロポッ トの運動と床反力との関 係を表す第 3動力学モデルに入力し、 該第 3動力学モデルの出力として の目標運動の第 3仮瞬時値を求める第 3モデル演算手段を備え、 前記目 標床反力の床反力モーメント補正量の要求値を決定する手段は、 前記決 定した前記目標運動の目標瞬時値と前記目標運動の第 3仮瞬時値との差 に基づいて、 該差が 0に近づくように前記要求値を決定する (第 4 7発 明)。
かかる第 4 7発明では、 上記第 3動力学モデルおよび第 3モデル演算 手段がそれぞれ第 4 4発明における第 1動力学モデル、 第 1モデル演算 手段に相当するものとなる。 従って、 第 4 7発明は、 第 4 4発明と同等 のものとなり、 第 4 4発明と同様の効果を奏することができる。
また、 以上説明した第 2 0〜第 4 7発明では、 前記目標歩容に追従し て動作している前記ロポッ トの滑りの発生を判断する滑り判断手段を備 JP2004/009472
3 4 え、 前記許容範囲設定手段は、 該滑り判断手段の判断結果に応じて前記 許容範囲を可変的に設定することが好ましい (第 4 8発明)。
この第 4 8発明によれば、 実際のロボッ 卜の滑りの発生の判断結果に ^じて制限対象量の許容範囲を可変的に設定するので、 ロボッ 卜の滑り の発生を確実に抑制できる。 なお、 滑りの発生が有ると判断されたとき には、 許容範囲は、 それを狭めるように設定されるべきである。
また、 この第 4 8発明では、 例えば、 前記第 1 7〜第 1 9発明と同様 に、 滑りの発生を判断することができる。
すなわち、 前記滑り判断手段は、 少なくとも接地している脚体の先端 部の対地速度に基づき滑りの発生を判断する (第 4 9発明)。
あるいは、 前記滑り判断手段は、 少なくとも接地している脚体に作用 する実床反力の時間的変化率と該脚体の先端部の対地速度とに基づき、 該脚体の見かけばね定数を求める手段を備え、 少なくとも該見かけばね 定数に基づき滑りの発生を判断する (第 5 0発明)。
あるいは、 前記滑り判断手段は、 少なくとも接地している脚体に作用 する実床反力を、 所定周波数の近傍範囲に周波数通過特性を有するバン ドパスフィル夕に通したものに基づき滑りの発生を判断する (第 5 1発 明)。
これらの第 4 9〜第 5 1発明によれば、 それぞれ前記第 1 7〜第 1 9 発明と同様に滑りの発生を判断できる。 '
なお、 滑りの発生の判断は、 第 4 9〜第 5 1発明のいずれでも行なう ことができるが、 これらの第 4 9〜第 5 1発明の 2つ以上を組み合わせ て滑りの発生の判断を行なうようにしてもよい。 図面の簡単な説明
図 1は本発明の実施形態およびこれに関連する参考例における脚式移 動ロボッ トとしての 2足移動ロポッ トの全体構成を概略的に示す図、 図 2は図 1のロボッ トの脚体の先端部の構造を示す図、 図 3は図 1のロボ ッ トに備えた制御ュニッ 卜の構成を示すブロック図、 図 4は参考例にお る制御ュニッ トの機能的構成を示すブロック図である。 図 5は実施形 態および参考例で生成する走行歩容を説明するための図、 図 6は目標床 反力鉛直成分軌道の例を示すグラフ、 図 7は目標 Z M P軌道め X成分お よび Y成分の例を示すグラフ、 図 8は口ポッ トの上体並進モ一ドを説明 するための図、 図 9は口ポッ トの上体傾斜モードを説明するための図、 図 1 0は口ポッ トの上体ョ一回転モードを説明するための図、 図 1 1 ( a ) は口ポッ トの逆位相腕振りモードを平面視で説明するための図、 図 1 1 ( b ) は口ポッ トの逆位相腕振りモードを側面視で説明するため の図、 図 1 2は実施形態で用いる動力学モデルを説明するための図であ る。 図 1 3は参考例における歩容生成装置のメインルーチン処理を示す フローチャート、 図 1 4は口ポッ トの発散状態を説明するための図、 図 1 5は図 1 3の S 0 2 2のサブルーチン処理を示すフローチャート、 図 1 6は定常歩容と支持脚座標系とを説明するための図、 図 1 7は定常歩 容の上体軌道と支持脚座標系とを例示する図、 図 1 8は基準逆位相腕振 り角の例を示すグラフ、 図 1 9は定常歩容における目標床反力鉛直成分 軌道の設定例を示すグラフ、 図 2 0は定常歩容における床反力水平成分 許容範囲の設定例を示すグラフ、 図 2 1は定常歩容における床反力モー メント鉛直成分許容範囲の設定例を示すグラフ、 図 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 MP換算値の例を示すグラフ、 図 3 1は上体 傾斜復元モーメント Z MP換算値を加味した上体傾斜角加速度の例を示 すグラフ、 図 3 2は許容範囲を考慮しない床反力モーメント鉛直成分の 例を示すグラフ、 図 3 3は許容範囲を考慮した床反力モーメント鉛直成 分の例を示すグラフ、 図 34は逆位相腕振りモーメントの例を示すグラ フ、 図 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 O 2 8のサブルーチン処理を示すフ ローチャート、 図 4 3は図 4 2の S 7 0 2のサブルーチン処理を示すフ 口一チャート、 図 44は今回歩容の仮目標 ZMP'と ZMP修正量と修正 後の目標 ZMPとの例を示すグラフ、 図 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は本発明の第 1実施形態における制御ュニッ トの機能的構成を示 すブロック図、 図 5 4は図 5 3に示す補償全床反カモ一メン卜水平成分 分配器の処理を示すブロック図、 図 5 5は図 5 3に示すモデル操作床反 カモ一メン卜鉛直成分決定器の処理を示すブロック図、 図 5 6は第 1実 施形態における歩容生成装置のメインルーチン処理を示すフローチヤ一 ト、 図 5 7は図 5 6の S 3 0 3 2のサブルーチン処理を示すフローチヤ ート、 図 5 8は図 5 7の S 3 4 1 4のサブルーチン処理を示すフロ一チ ヤー卜である。 図 5 9は本発明の第 2実施形態における制御ュニッ トの 機能的構成を示すブロック図、 図 6 0は第 2実施形態における歩容生成 装置のメインルーチン処理を示すフローチャート、 図 6 1は図 6 0の S 2 0 3 4のサブル一チン処理を示すフローチヤ一ト、 図 6 2は図 6 1の S 2 1 1 4のサブルーチン処理を示すフローチヤ一トである。 図 6 3は 本発明の第 3実施形態における歩容生成装置の機能的構成を示すブロッ ク図、 図 6 4は第 3実施形態における Z M P許容範囲の設定例を示す図. 図 6 5は第 3実施形態における歩容生成装置のメインルーチン処理を示 すフローチャート、 図 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は本発明の第 4 実施形態における図 6 5の S 3 5 3 6の処理を示すブロック図、 図 7 2 は図 7 1に示す逆位相腕振り角補正用摂動モデルモーメント決定部の処 理を示すブロック図である。 図 7 3は本発明の第 5実施形態における歩 容生成装置の機能的構成を示すブロック図、 図 7 4は図 7 3に示す擬似 順フルモデルの処理を示すブロック図である。 図 7 5は本発明の第 6実 施形態における図 6 5の S 3 5 3 6の処理を示すブロック図である。 図 7 6は本発明の第 7実施形態における制御ュニッ トの機能的構成を示す ブロック図、 図 7 7は第 7実施形態における歩容生成装置のメインルー チン処理を示すフローチヤ一ト、 図 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は第 4〜第 6実施形態に関する変形態様の例を示 すブロック図、 図 8 5は第 3実施形態に関する逆位相腕振り角補正用摂 動モデルモーメント決定部の処理の変形態様の例 (第 8実施形態) を示 すプロック図である。 発明を実施するための最良の形態
以下、 添付図面を参照してこの発明の実施形態に係る脚式移動ロポッ 卜の制御装置を説明する。 尚、 脚式移動口ポッ トとしては 2足移動ロボ ッ トを例にとる。
まず、 図 1〜図 4 7を参照して、 本発明の脚式移動口ポッ トの制御装 置に関連する参考例を説明しておく。 後述する本発明の実施形態は、 そ の機構的構成はこの参考例と同一であり、 また、 口ポッ トの歩容生成処 理および制御処理の一部のみが当該参考例と相違するものである。 従つ て、 後述する実施形態の説明では、 この参考例の説明をしばしば援用す る。 補足すると、 図 1 と後述の図 2、 図 3並びに図 5〜図 1 2を参照し て説明する事項は、 後述の実施形態においても同一である。
図 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 0 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) で連 2004/009472
40 結され、 膝関節と足首関節とは下腿リンク 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, M y , 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は本参考例における各脚体 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、 DZA変換器 9 6、 RAM 8 4、 ROM 9 4、 並びにこれ らの間のデータ授受を行うバスライン 8 2を備えている。 この制御ュニ ッ ト 6 0では、 各脚体 2の 6軸力センサ 5 0、 姿勢センサ 54 (加速度 センサおよびレートジャィ口センサ)、 ジョイスティック 7 3等の出力 信号は AZD変換器 8 0でデジタル値に変換された後、 バスライン 8 2 を介して RAM 8 4に送られる。 また口ポッ ト 1の各関節のエンコーダ 6 5 (ロータリーエンコーダ) の出力は、 カウンタ 8 6を介して RAM 8 4に入力される。
前記第 1の演算装置 9 0は後述の如く目標歩容を生成すると共に、 関 節角変位指令 (各関節の変位角もしくは各電動モ一夕 6 4の回転角の指 令値) を算出し、 RAM 84に送出する。 また第.2の演算装置 9 2は R AM 8 4から関節角変位指令と、 前記エンコーダ 6 5の出力信号に基づ いて検出された関節角の実測値とを読み出し、 各関節の駆動に必要な操 作量を算出して D/ A変換器 9 6とサ一ポアンプ 6 4 aとを介して各関 節を駆動する電動モー夕 6 4に出力する。
図 4は、 この参考例に係る脚式移動口ポッ トの制御装置の機能的構成 を全体的に示すブロック図である。 この図 4中の 「実ロボッ ト」 の部分 以外の部分が制御ュニッ ト 6 0が実行する処理機能 (主として第 1の演 算装置 9 0及び第 2の演算装置 9 2の機能) によって構成されるもので ある。 なお、 以下の説明では、 脚体 2および腕体 5の左右を特に区別す る必要がないときは、 前記符号 R , Lを省略する。
以下説明すると、 制御ユニッ ト 6 0は、 口ポッ ト 1の目標歩容を自在 かつリアルタイムに生成して出力する歩容生成装置 1 0 0を備えている c 該歩容生成装置 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軸の空間的な方位角で表 される。 本明細書では、 上体姿勢は上体姿勢角ということもある。 また. 上体姿勢のうち、 鉛直方向に対する姿勢を上体姿勢傾斜もしくは上体姿 勢傾斜角ということもある。
尚、 以下の説明では、 誤解を生じるおそれがない場合には、 しばしば 「目標」 を省略する。 また、 歩容のうちの、 床反力に係わる構成要素以 9472
4 4 外の構成要素、 すなわち足平位置姿勢、 上体位置姿勢等、 口ポッ ト 1の 運動に係わる歩容を総称的に 「運動」 という。 また、 各足平 2 2に作用 する床反力 (並進力及びモーメントからなる床反力) を 「各足平床反 力」 と呼び、 ロボット 1の全て ( 2つ) の足平 2 2 R, 2 2 Lについて の 「各足平床反力」 の合力を 「全床反力」 という。 ただし、 以下の説明 においては、 各足平床反力はほとんど言及しないので、 特に断らない限 り、 「床反力」 は 「全床反力」 と同義として扱う。
目標床反力は、 一般的には、 作用点とその点に作用する並進力及びモ —メントによって表現される。 作用点はどこにとっても良いので、 同一 の目標床反力でも無数の表現が考えられるが、 特に目標床反力中心点 (全床反力の中心点の目標位置) を作用点にして目標床反力を表現する と、 目標床反力のモーメント成分は、 鉛直成分 (鉛直軸 (Z軸) まわり のモーメント) を除いて零になる。 換言すれば、 目標床反力中心点まわ りの目標床反力のモーメントの水平成分 (水平軸 (X軸及び Y軸) 回り のモーメント) は零になる。 '
尚、 動力学的平衡条件を満足する歩容では、 口ポッ ト 1の目標運動軌 道から算出される Z M P (目標運動軌道から算出される慣性力と重力と の合力がその点まわりに作用するモーメントが、 鉛直成分を除いて零に なる点) と目標床反力中心点は一致することから、 目標床反力中心点軌 道の代わりに目標 Z M P軌道を与えると言っても.同じことである (詳細 は、 本願出願人による P C T公開公報 WO/02/ 40224等を参照)。
このような背景から、 上記 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公開公報 WO/ 02Z 40224の明細書では、 目標歩容の床反 力に関して明示的に設定すべき物理量としては、 目標 Z M Pだけで十分 であった。 したがって、 狭義の目標歩容の定義としては、 上記の b ) で 十分であった。 それに対し、 本参考例で説明する口ポッ ト 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を 「遊脚」 と呼ぶ。 尚, 本参考例で説明する走行歩容では、 両脚支持期は無く、 片脚支持期 (着 地期) と空中期とが交互に繰り返される。 この場合、 空中期では両脚体 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 Z ( 1 + て s ) の形で表さ れるフィル夕 ( ては可変の時定数。 以下、 このフィル夕を単位フィルタ という) を複数段 (本参考例では 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は、 着地瞬間において、 遊脚側の足平 2 2の対地速度 が 0またはほぼ 0になるように、 上体 3から見て該足平 2 2を引き上げ るようにして着地する。 これによつて、 着地衝撃は小さくなり、 着地衝 撃が過大になるのを防止するようにしている。 また、 本参考例では、 有限時間整定フィル夕は、 単位フィル夕を 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の底面のほぼ全面が床に接地する時刻を前記指定 時刻に設定して、 前記有限時間整定フィルタにより足平姿勢軌道が生成 される。
また、 本参考例では、 有限時間整定フィルタを用いて足平位置軌道を 生成したが、 着地予定時刻での足平位置の変化速度 (足平位置の時間微 分値) が 0またはほぼ 0になるように、 さらには、 該着地予定時刻での 足平位置の変化加速度 (変化速度の時間微分値) が 0またはほぼ 0にな るように設定された多項式などの関数を用いて目標足平位置軌道を生成 するようにしても良い。 このことは、 目標足平姿勢軌道の生成に関して も同様である。 但し、 該目標足平姿勢軌道の生成に関しては、 上述の如 く、 各足平 2 2の底面のほぼ全面が床に設置する時刻にて、 各足平 2 2 の姿勢の変化速度、 さらにはその変化加速度が 0またはほぼ 0になるよ うに多項式などの関数が設定される。 目標床反力鉛直成分軌道は、 例えば図 6のように設定される。 本参考 例では、 走行歩容における目標床反力鉛直成分軌道の形状 (詳しくは片 脚支持期での形状) は、 台形状 (床反力鉛直成分の増加側に凸の形状) 定められており、 その台形の高さ、 折れ点の時刻を目標床反力鉛直成 分軌道を規定する歩容パラメ一夕として、 それらの歩容パラメータ (床 反力鉛直成分軌道パラメ一夕) が決定される。 尚、 走行歩容の空中期で は、 目標床反力鉛直成分は定常的に 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軌道は、 図 Ίの下段図に示すよ うに、 Y軸方向での支持脚側脚体 2の足首関節の中心位置と同じ位置に 設定される。 走行歩容では、 さらに片脚支持期の終了後、 両脚体 2 , 2が床から離 れ、 床反力鉛直成分が 0になる。 床反力鉛直成分が 0の時、 すなわち空 中期には、 ロボッ ト 1の全体重心は自由落下運動をし、 全体重心まわり の角運動量変化は零である。 この時、 床の任意の点において、 口ポッ ト 1に作用する重力と慣性力との合力のモーメントは 0であるので、 目標 Z MPは不定である。 すなわち、 床のいずれの点も、 「重力と慣性力と の合力が作用するモーメントの水平成分が 0である作用点」 という ZM Pの条件を満たす。 言いかえれば、 任意の点に目標 ZMPを設定しても、 上記合力が目標 Z MP回りに作用するモーメントの水平成分が 0である という動力学的平衡条件を満足する。 したがって、 目標 Z MPを不連続 に設定しても構わない。 例えば、 空中期では、 目標 Z MPを、 離床時 (片脚支持期の終了時) の目標 Z MP位置から移動しないように設定し、 空中期終端において、 着地時の目標 Z MP位置に不連続 (ステップ状) に移動するように該目標 Z MP軌道を設定しても構わない。 しかし本参 考例では、 図 7の上段図に示すように、 空中期における目標 ZMP軌道 の X軸方向位置は、 次の遊脚側脚体 2の着地までに支持脚側足平 2 2の つまさきから遊脚側足平 2 2のかかとの着地位置まで連続的に移動する ようにした。 また、 図 7の下段図に示すように、 空中期における目標 Z MP軌道の Y軸方向位置は、 次の遊脚側脚体 2の着地までに支持脚側脚 体 2の足首関節の中心の Y軸方向位置から遊脚側'脚体 2の足首関節の中 心の Y軸方向位置まで連続的に移動するようにした。 すなわち、 歩容の 全期間において目標 Z MP軌道を連続 (実質的に連続) にした。 そして. 後述するように、 目標 ZMPまわりの重力と慣性力との合力のモーメン ト (鉛直成分を除く) が零になるように目標歩容を生成する (より具体 的には目標上体位置姿勢軌道を調整する) ようにした。 モデルの近似誤 差を考慮すると、 生成された歩容が滑らかになるようにするために、 空 中期においても目標 Z M P軌道を連続 (実質的に連続) にしておくのが 望ましい。 但し、 本参考例で用いる後述の動力学モデルでは、 目標 Z M Pの位置によらずに、 目標 Z M P回りのモ一メントの水平成分をある値 '(その値は本参考例では 0であるが、 後述の実施形態では必ずしも 0で はない) にするような目標歩容を一義的に生成できるので、 必ずしも目 標 Z M Pを連続にしておく必要はない。
尚、 本参考例では、 図 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 0 0は、 目標上体姿勢だけでなく、 基 準上体姿勢も生成する。 この基準上体姿勢は、 歩容に対する要求 (歩容 生成装置 1 0 0に対する行動計画部などの装置または外部 (前記ジョイ スティック 7 3等) からの要求) にそのまま従って生.成される上体姿勢 である。
目標上体姿勢 (以降、 「基準」 が付いていない場合には、 目標上体姿 PC漏 004/009472
5 4 勢を表す) は、 長期的には基準上体姿勢に追従するかまたは一致するよ うに生成される。
目標上体姿勢は、 歩行においては、 本願出願人による P C T公開公報 WO/02/40224 の明細書に記載した実施形態のごとく通常、 常に基準 上体姿勢に一致させておけば良い。 P C T公開公報 WOZ 02/ 40224で は、 基準上体姿勢という概念は記載されていないが、 目標上体姿勢パタ —ンを、 明示的かつ優先的に与えていたので、 基準上体姿勢に目標上体 姿勢が常に一致していることと同じことである。
しかし、 走行など空中期がある歩容ゃ低摩擦床面での歩行においては, 単に上体水平加速度等を調整するだけでは、 目標歩容の床反力水平成分 と床反力モーメント鉛直成分とが許容範囲以内 (あるいは摩擦限界以 内) に存在するようにしつつ動力学的平衡条件を満足することができな い。
そこで、 本参考例においては、 目標上体姿勢を必要に応じて基準上体 姿勢から故意にずらすこととした。 より具体的には、 以下に説明する運 動モードを複合的に発生させることにより、 目標歩容の床反力水平成分 や床反カモ一メント鉛直成分が許容範囲以内 (あるいは摩擦限界以内) に存在しつつ動力学的平衡条件を満足させるようにした。
図 8のように、 ロボッ ト 1のある運動状態から、 上体水平加速度だけ を摂動 (微小変化) させると、 口ポッ ト 1の全体重心水平加速度と全体 重心まわりの角運動量が摂動する。 すなわち、 上体水平加速度の摂動は それによつて発生する口ポッ ト 1の慣性力と重力との合力に対して動力 学的に釣り合う床反力鉛直成分を摂動させずに (口ポッ ト 1の全体重心 鉛直加速度を摂動させずに)、 目標 Z M Pまわりの床反力モ一メント水 平成分 (水平軸まわり成分) と床反力水平成分とを摂動させる。 このよ うに口ポッ ト 1の上体水平加速度を摂動させる運動モードを上体並進モ 04 009472
5 5
—ドと呼ぶ。
言いかえると、 床反力鉛直成分を変化させずに、 目標 Z M Pまわりの 床反力モーメント水平成分と床反力水平成分とを変化させる運動を上体 進モードと呼ぶ。 尚、 上体並進モードでは、 床反カモ一メント鉛直成 分 (鉛直軸まわり成分) も摂動するが、 ここではこの点に注目しない この時の単位加速度当たりの床反力モーメント水平成分の変化を Δ Μ P、 単位加速度当たりの床反力水平成分の変化を A Fp とする。 図 8に 示す状況で上体 3を前方に水平加速すると、 Δ Μ ρと Δ Ρρ は図 8に示 す矢印の向きに作用する。
感覚的に判り易くするために、 運動によって発生する慣性力と重力と の合力に釣り合う床反力を用いて表現したが、 慣性力と重力との合力を 用いて表現した方が、 理論的には的確である。 なお、 上記合力と床反力 とは、 互いに大きさが同じで向きが逆になつている。
それに対し、 図 9のように、 ロボッ ト 1のある運動状態から、 ある点 P rまわりに上体傾斜角加速度 (上体 3の傾斜角の角加速度) を摂動さ せると、 口ポッ ト 1の全体重心は摂動せずに、 全体重心まわりの角運動 量 (鉛直軸まわり成分を除く) が摂動する。 すなわち、 点 P rまわりの 上体傾斜角加速度の摂動は、 床反力鉛直成分と床反力水平成分とを摂動 させずに、 目標 Z M Pまわりの床反力モーメント水平成分を摂動させる, このように口ポッ ト 1の上体傾斜角加速度を摂動させる運動モ一ドを上 体傾斜モードと呼ぶ。
言いかえると、 床反力鉛直成分と床反力水平成分を変化させずに、 目 標 Z M Pまわりの床反力モーメント水平成分を変化させる運動を上体傾 斜モードと呼ぶ。 .
この時の単位角加速度当たりの床反カモ一メント水平成分の変化を Δ M r、 単位角加速度当たりの床反力水平成分の変化を A F r とする。 Δ T JP2004/009472
5 6
F rは零である。 図 9に示す状況で上体 3が前傾するように上体傾斜角 の角加速度を発生させると、 Δ Μ Γは図 9に示す矢印の向きに作用する。 また、 図 1 0のように、 ロボッ ト 1のある運動状態から、 ある点 Pq まわりに上体ョ一角加速度 (上体 3の鉛直軸まわりの回転角加速度) を 摂動させると、 口ポッ ト 1の全体重心は摂動せずに、 全体重心まわりの 角運動量鉛直成分が摂動する。 ところで、 口ポッ ト 1の全体重心が摂動 しなければ、 角運動量鉛直成分の摂動は、 作用点に依存しない。 したが つて、 点 Pq まわりの上体ョ一角加速度の摂動は、 床反力鉛直成分、 床 反力水平成分および床反力モーメント水平成分を摂動させずに、 目標 Z M Pまわりの床反力モーメント鉛直成分を摂動させる。 このようにロボ ッ ト 1の上体ョ一角加速度を摂動させる運動モードを上体ョ一回転モ一 ドと呼ぶ。
言いかえると、 床反力鉛直成分、 床反力水平成分および床反力モーメ ント水平成分を変化させずに、 目標 Z M Pまわりの床反力モーメント鉛 直成分を変化させる上体運動を上体ョ一回転モ一ドと呼ぶ。
この時の単位角加速度当たりの床反カモ一メント鉛直成分の変化を Δ Mbz、 単位角加速度当たりの床反力水平成分の変化を A Fb とする。 Δ Fb は零である。 図 1 0に示す状況で上体 3を矢印の向きに単位角加速 度で回転させる (角加速度 j3 b=l で回転させる) と、 A Mbz は図 1 0 に示す矢印の向きに作用する。 '
尚、 図 1 0に示す運動では、 両腕体 5, 5の手先位置が支持脚座標系 (床に固定された座標系) から見て変わらないように、 上体 3を回転さ せたが、 上体 3に対する腕体 5の相対位置姿勢を変えずに、 上体 3と共 に腕体 5を回転させる運動を上体ョ一回転モードと定義しても良い。 た だし、 この場合には、 後述する蓮動方程式に若干変更が必要である。 また、 図 1 1 ( a ) , ( b ) のように、 口ポッ ト 1のある運動状態から 9472
57 両腕体 5 , 5の先端を互いに前後に逆方向に摂動させると、 口ポッ ト 1 の全体重心は摂動せずに、 全体重心まわりの角運動量鉛直成分が摂動す る。 以降、 この運動モードを逆位相腕振りモードと呼ぶ。 言い換えると、 床反力鉛直成分、 床反力水平成分および床反力モーメント水平成分を摂 動させずに、 目標 Z MPまわりの床反力モーメント鉛直成分を摂動させ る腕振り運動モードを逆位相腕振りモードと呼ぶ。
右腕体 5 Rを前側に単位量移動させ、 左腕体 5 Lを後ろに単位量移動 させる動作を、 単位角度の逆位相腕振りと呼ぶ。 図 1 1 ( a), (b) は, 逆位相腕振り角度が 0 azの状態を表す。
逆位相腕振りモードの単位角加速度当たりの床反カモ一メント鉛直成 分め変化を AMaz、 単位角加速度当たりの床反力水平成分の変化を厶 Fa とする。 AFaは零である。 図 1 1 ( a), (b) に示す状況で右腕体 5 Rを前側に加速し、 左腕体 5 Lを後ろ側に加速する (角加速度 /3 a> 0 で振る) と、 図 1 1 ( a) に示す矢印の向き (鉛直軸の正の向き) に 床反力モーメント鉛直成分 Mazが作用する。
次に、 本参考例に用いられるロボッ ト 1の動力学モデルについて説明 する。 本参考例では単純化された (近似された) 以下に示す動力学モデ ルを用いる。 ただし、 以下に示す動力学モデルに関しては、 キネマティ クスモデル (関節、 リンクの構造や寸法を表すモデルであり、 言い換え ると、 関節変位とリンクの位置姿勢との関係を表すモデルである。) も 必要である。
図 1 2は、 本参考例に用いられる口ポッ ト 1の動力学モデルである。 図示の如く、 この動力学モデルは、 口ポッ ト 1の各脚体 2にそれぞれ対 応する 2つの質点 2 m, 2m、 及び上体 3に対応する質点 3 mからなる 合計 3質点と、 イナ一シャがあって質量のない 4つのフライホイール F Hx、 F Hy、 FHbz、 F Haz とから構成されるモデルである。 フライ P 雇画謹
58 ホイール F Hx、 FHy、 F Hbz、 F H az は、 それぞれ X軸 (前後方向 軸)、 Y軸 (左右方向軸)、 Z軸 (鉛直軸)、 Z軸 (鉛直軸) の回りに回 転可能なものである。 この動力学モデルでは、 デカップルド、 即ち、 脚 体 2, 2の動力学 (各質点 2 m, 2 mの動力学) と上体 3の動力学 (質 点 3 m及びフライホイ一ル F Hx、 F Hy および F Hbz の動力学) と腕 体 5 , 5の動力学 (フライホイール F Haz の動力学) とが相互に非干 渉に構成されると共に、 ロボッ ト 1全体の動力学は、 それらの線形結合 で表される。 また、 さらに、 上体 3の運動と床反力との関係も、 上体 3 の並進運動 (上体並進モード) と床反力との関係、 上体 3の傾斜運動 (上体傾斜モード) と床反力との関係、 上体 3のョ一回転運動 (上体ョ —回転モ一ド) と床反力との関係、 並びに両腕体 5, 5の逆位相腕振り 運動 (逆位相腕振りモード) と床反力との関係に分離される。 具体的に は、 上体質点 3mの水平運動によって発生する床反力は、 上体 3の水平 方向並進運動 (上体並進モード) によって発生する床反力に対応し、 フ ライホイ一ル FHx および FHy の回転運動によって発生する床反力は. 上体 3の傾斜角の回転運動 (上体傾斜モード) によって発生する床反力 に対応する。 なお、 フライホイール FHx の回転運動は、 上体 3の傾斜 角のロール方向 (X軸回り) の回転運動に対応し、 フライホイール F H y の回転運動は、 上体 3の傾斜角のピッチ方向 (Y軸回り) の回転運動 に対応している。 また、 フライホイール F Hbz 'の回転運動によって発 生する床反力は、 上体 3のョ一回転運動 (上体ョ一回転モード) によつ て発生する床反力に対応する。 また、 フライホイール FHaz の回転運 動によって発生する床反力は、 逆位相腕振り (逆位相腕振りモード) に よって発生する床反力に対応する。
尚、 ロボッ ト 1の腕体の質量は上体 3に含まれるものとし、 上体質点 3 mは腕体 5, 5の質量を含む質量をもつ。 説明の便宜上、 動力学モデルに関する変数およびパラメ一夕を以下の ように定義する。 なお、 各質点 2m, 2 m, 3 mはそれが対応する部位 の代表点であるか、 あるいはその部位の位置姿勢から幾何学的に一義的 に決定される点に相当する。 例えば、 支持脚側脚体 2の質点 2 mの位置 は、 該脚体 2の足平 2 2の底面の前記代表点から所定の距離だけ上方の 点とする。
Zsup: 支持脚質点鉛直位置
Zswg: 遊脚質点鉛直位置
Zb: 上体質点鉛直位置 (上体鉛直位置とは一般的には異なる。) Z Gtotal:全体重心鉛直位置
Xsup: 支持脚質点 X位置
Ysup: 支持脚質点 Y位置
Xswg: 遊脚質点 X位置
Yswg: 遊脚質点 Y位置
Xb : 上体質点 X位置 (上体質点位置は、 前記点 Prから上体の前後方 向にある所定の距離だけオフセッ トした点である。 オフセッ トは、 直立 時などにおいて、 厳密モデルの重心位置と、 本動力学モデルの重心位置 がなるベく一致するように、 決定される。 上体水平位置とは一般的には 異なる。)
Yb: 上体質点 Y位置
X Gtotal: 全体重心水平 X位置
Y Gtotal: 全体重心水平 Y位置
Θ bx: 鉛直方向に対する X軸回りの上体傾斜角
^by: 鉛直方向に.対する 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軸) 成分。 本参考例では、 これは目標並進床反力鉛直成分に等しい)
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軸方向) の位置を意味している。 また、 本 参考例では、 各脚体 2の質点 2 mの位置と、 その脚体 2の足平 2 2の位 9472
61 置 (足平 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 2x、 式 0 2y、 式 0 3x、 式 0 3y、 式 0 3 zで表される。 F z=mb * (g+d2Zb/dt2) + msup * (g+d2Zsup/dt2)
+ mswg * (g+d2Zswg/dt2) 式 0 1
F =mb* d2Xb/dt2 + msup * d2Xsup/dt2 + mswg * d2Xswg/dt2
式 0 2 x Fy=mb * d2Yb/dt2 + msup * d2Ysup/dt2 + mswg * d2Yswg/dt2
……式 0 2 y
Mx=mb* (Yb-Yzmp)* ( +d2Zb/dt2)
一 mb * (Zb一 Zzmp) * (d2Yb/dt2)
+ msup * (Ysup― Yzmp) * (g+d2Zs p/dt2)
— msup * (Zsup— Zzmp) * (d2Ysup/dt2) 09472
6 2
+ 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+d2Zs p/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 * (Y 一 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 5y 以下に上記動力学モデルと前記 AFp、 ΔΜρ、 AFr、 AM rの関係 を示す。
前記△ Fp は、 式 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軸) 方向の単位加速度 当たりの床反力モーメント水平成分の変化 ΔΜρは、 上記動力学モデル の上体質点質量に、 上体質点 3mの目標 Z MPからの高さ (鉛直位置) を乗じたものになる。 このときの上体質点 3m及び目標 ZMPの位置と 上体質点 3 mの運動との関係は、 上体質点 3mを'倒立振子質点、 目標 Z MPを倒立振子支点に対応づけたときの倒立振子の挙動に相当する。 な お、 Y軸方向の ΔΜρ は、 より正確には、 式 0 7の右辺の符号を反転さ せたものである。
前記△ F rは、 式 0 2 Xまたは式 0 2 yにおいて、 d20 by/dt2 を単位 量だけ摂動させたときの Fx または Fy の摂動量であるから、 次式によ つて求められる。 Δ F r = 0 …式 0 8
すなわち、 上体傾斜モードの各水平軸 (X軸、 Y軸) 方向の単位加速度 当たりの床反力水平成分の変化 A Frは、 0である。
'前記 Δ Μ ι·は、 式 0 3 Xまたは式 0 3 yにおいて、 d2 0 bx/dt2または d2 Θ by/dt2を単位量だけ摂動させたときの Mxまたは Myの摂動量であ るから、 次式によって求められる。
厶 M r = J …式 0 9
すなわち、 上体傾斜モードの各水平軸 (X軸、 Y軸) 方向の単位加速度 当たりの床反力モーメント水平成分の変化 Δ ΜΓ は、 水平軸フライホイ ール (FHxおよび Fhy) の慣性モーメントに相当する。
前記 A Mbz は、 式 0 3 z において、 d2 0 bz/dt2 を単位量だけ摂動さ せたときの Mzの摂動量であるから、 次式によって求められる。
△ Mbz= J bz …式 0 9 b
すなわち、 上体ョ一回転モードの単位加速度当たりの床反力モーメント 成分の変化 A Mbz は、 上体ョ一回転に対応するフライホイール F Hbz の慣性モーメントに相当する。
前記 A Maz は、 式 0 3 z において、 d2 0 az/dt2 を単位量だけ摂動さ せたときの Mzの摂動量であるから、 次式によって求められる。
Δ Maz= J az …式 0 9 a
すなわち、 逆位相腕振りの単位角加速度当たりの床反力モーメント成分 の変化 A Maz は、 腕振りに対応するフライホイール FHaz の慣性モー メントに相当する。
本参考例における歩容生成装置 1 0 0は、 ロボッ ト 1の片方の脚体 2 が着地してから他方の脚体 2が着地するまでの 1歩分の目標歩容 (前記 狭義の意味での目標歩容) を単位として、 その 1歩分の目標歩容を順番 に生成する。 従って、 本参考例で生成する図 5の走行歩容では、 該目標 歩容は片脚支持期の開始時から、 これに続く空中期の終了時 (次の片脚 支持期の開始時) までの目標歩容が順番に生成される。 ここで、 新たに 生成しょうとしている目標歩容を 「今回歩容」、 その次の目標歩容を 「次回歩容」、 さらにその次の目標歩容を 「次次回歩容」、 というように 呼ぶ。 また、 「今回歩容」 の一つ前に生成した目標歩容を 「前回歩容」 と呼ぶ。
また、 歩容生成装置 1 0 0が今回歩容を新たに生成するとき、 該歩容 生成装置 1 0 0には、 口ポッ ト 1の 2歩先までの遊脚側足平 2 2の着地 予定位置姿勢、 着地予定時刻の要求値 (要求) が歩容に対する要求パラ メータとして入力される (あるいは歩容生成装置 1 0 0が記憶装置から 要求パラメ一夕を読み込む)。 そして、 歩容生成装置 1 0 0は、 これら の要求パラメータを用いて、 目標上体位置姿勢軌道、 目標足平位置姿勢 軌道、 目標 Z M P軌道、 目標床反力鉛直成分軌道、 目標腕姿勢軌道等を 生成する。 このとき、 これらの軌道を規定する歩容パラメ一夕の一部は, 歩行の継続性を確保するように適宜修正される。
以下に図 5の走行歩容を生成することを例にして、 本参考例における 歩容生成装置 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.のフローチヤ一トの演算処理周期) 毎のタイマ割り込 みを待つ。 制御周期は Δ 1;である。
次いで、 S O 1 6に進み、 歩容の切り替わり目であるか否かが判断さ れ、 歩容の切り替わり目であるときは S 0 1 8に進むと共に、 切り替わ り目でないときは S O 3 0に進む。 ここで、 上記 「歩容の切り替わり 目」 は、 前回歩容の生成が完了し、 今回歩容の生成を開始するタイミン タを意味し、 例えば前回歩容の生成を完了した制御周期の次の制御周期 が歩容の切り替わり目になる。
S 0 1 8に進むときは時刻 tが 0に初期化され、 次いで S 0 2 0に進 み、 次回歩容支持脚座標系、 次次回歩容支持脚座標系、 今回歩容周期お よび次回歩容周期が読み込まれる。 これらの支持脚座標系及び歩容周期 は、 前記要求パラメ一夕により定まるものである。 すなわち、 本参考例 では、 歩容生成装置 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軸回り (鉛直軸回り) に 0 znext だ け回転させた位置姿勢であるとする。 ここで、 支持脚座標系は、 支持脚 側足平 2 2を水平姿勢 (より一般的には床面に平行な姿勢) にして該支 持脚側足平 2 2の底面のほぼ全面を床面に接触 (密着) させた状態にお いて、 該支持脚側脚体 2の足首中心から床面に延ばした垂線が該床面と 交わる点 (この点は、 本参考例の例では支持脚側足平 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
6 8 脚側足平 2 2の着地予定時刻 (要求値) から 2歩目の遊脚側足平 2 2の 着地予定時刻 (要求値) までの時間として定まる。
尚、 前記要求パラメ一夕は、 本参考例ではジョイスティック 7 3の所 gの操作によって歩容生成装置 1 0 0に入力されるものであるが、 あら かじめ該要求パラメータあるいはこれに対応する上記の支持脚座標系の 位置姿勢及び歩容周期をロボッ ト 1の移動スケジュールとして記憶して おいても良い。 あるいは、 ジョイスティ ック 7 3などの操縦装置からの 指令 (要求) とそのときまでの口ポッ トの 1の移動履歴とを基に前記次 回及び次次回歩容支持脚座標系、 並びに今回及び次回歩容周期を決定し ても良い。
次いで S 0 2 2に進み、 歩容生成装置 1 0 0は、 今回歩容に続く仮想 的な周期的歩容としての定常旋回歩容の歩容パラメータを決定する。 該 歩容パラメータは、 定常旋回歩容における目標足平位置姿勢軌道を規定 する足平軌道パラメータ、 基準とする上体姿勢軌道を規定する基準上体 姿勢軌道パラメ一タ、 基準とする腕姿勢軌道を規定する基準腕姿勢軌道 パラメ一夕、 目標 Z M P軌道を規定する Z M P軌道パラメータ、 目標床 反力鉛直成分軌道を規定する床反力鉛直成分軌道パラメ一夕を含む。 さ らに、 床反力水平成分許容範囲および床反力モーメント鉛直成分許容範 囲を規定するパラメータも歩容パラメ一夕に含まれる。
尚、 この明細書で 「定常旋回歩容」 は、 その歩容を繰り返したときに 歩容の境界 (本参考例では 1歩毎の歩容の境界) において口ポッ ト 1の 運動状態 (足平位置姿勢、 上体位置姿勢等の状態) に不連続が生じない ような周期的歩容を意味するものとして使用する。 以降、 「定常旋回歩 容」 を 「定常歩容 J と略す場合もある。
周期的歩容である定常旋回歩容は、 本参考例では、 口ポッ ト 1の 2歩 分の歩容、 すなわち今回歩容に続く第 1旋回歩容と該第 1旋回歩容に続 く第 2旋回歩容とからなる歩容を該定常旋回歩容の 1周期分の歩容とし て、 その 1周期分の歩容を繰り返す歩容である。 尚、 ここで 「旋回」 な る用語を用いたのは、 旋回率を零とするときは直進を意味するので、 直 進も広義の意味で旋回に含ませることができるからである。 また、 生成 する目標歩容が前記図 5の走行歩容であると、 その目標歩容の今回歩容 は、 片脚支持期及び空中期を有する走行歩容であるので、 定常旋回歩容 の第 1旋回歩容及び第 2旋回歩容は、 いずれも今回歩容と同様に片脚支 持期と空中期とを有する歩容である。 つまり、 第 1旋回歩容及び第 2旋 回歩容の基本的な歩容形態は今回歩容と同一である。
定常旋回歩容について補足すると、 2足移動口ポッ トでは、 定常旋回 歩容の 1周期分は、 前記した狭義の意味での歩容が、 少なくとも 2歩分. 必要である。 そして、 3歩以上の歩容を 1周期分の歩容とする複雑な定 常旋回歩容を設定することも可能である。 但し、 定常旋回歩容は、 後述 の如く、 今回歩容の終端 (終了時刻) における発散成分 (詳細は後述す る) を決定するためだけに用いられる。 このため、 3歩以上の歩容を 1 周期とする定常旋回歩容を用いることは、 歩容生成の処理が煩雑となる にも関わらず、 効果は少ない。 そこで、 本参考例での定常旋回歩容の 1 周期分の歩容を 2歩分の歩容 (第 1及び第 2旋回歩容) により構成する ようにしている。 尚、 3足以上の脚式移動口ポッ トにあっては、 それに 応じて定常旋回歩容を定義するに足る歩容数が增加する。 以下では、 説 明の便宜上、 複数の狭義の歩容 (本参考例では 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の接 地面に設定されたグローバル座標系 (支持脚座標系) の原点) からかけ 離れていく具合を表す数値である。
本参考例では、 目標歩容が、 前記発散を生じることなく、 継続的に生 成されるように、 発散成分を指標にして歩容を生成するようにした。 た だし、 継続的な歩容の代表例である定常歩容 (歩容の軌道の不連続を発 生することなく、 同じパターンの歩容を繰り返すことができる周期的歩 容であり、 原理上、 無限回繰り返しても発散しない歩容) の初期発散成 分 (定常歩容の初期時刻での発散成分) であっても、 単純に 0ではなく, 定常歩容のパラメ一夕が変われば、 その初期発散成分も変わる。 すなわ ち、 歩き方あるいは走り方等の歩容形態によって、 適切な発散成分が変 わる。 そこで、 本参考例では、 これから生成しょうとする今回歩容の後 に続く定常歩容が前記今回歩容に係わる要求パラメ一夕に応じて設定さ れ、 定常歩容の初期発散成分を求めてから、 今回歩容の終端発散成分を 定常歩容の初期発散成分に一致させる (より一般的には、 今回歩容を定 常歩容に連続させもしくは近づける) ように、 今回歩容を生成する。 こ れのような歩容生成の基本的な指針は本出願人が'先に提案した P C T公 開公報 WO/ 02/ 40224のものと同様である。
本発明の参考例では、 P C T公開公報 WOZ02/40224の第 1実施形 態で用いたような線形な 3質点動力学モデルを用いていないが、 次式で 定義される発散成分および収束成分の概念は、 図 1 2に示したモデルの ような非線形な動力学モデルの挙動の摂動分に対しても、 近似的に十分 な精度で適用することができる。 発散成分-上体質点水平位置 +上体質点水平速度/ ωθ
…式 1 0 収束成分 =上体質点水平位置一上体質点水平速度 ΖωΟ'
…式 1 1 ただし、 ここでの上体質点水平位置は、 図 1 2に示す前記動力学モデ ルにおいては、 上体質点水平位置 Xbを表す。
また、 ωΟ、 ωθ' はある所定の値である。 これらの ω0、 ωθ' 値は ほぼ同じ値であるが、 厳密には一致しない。 そして、 走行時では、 P C T公開公報 WOZ02/40224の歩行歩容生成時の値に対して若干変更す る必要がある。
発散成分および収束成分に関するその他の詳細は、 P C T公開公報 WO/02/40224 に記述されているので、 ここではこれ以上言及しない, 本参考例においては、 P C T公開公報 WO.Z02Z40224に示した方式 に加え、 さらに、 後述するように、 目標床反力鉛直成分軌道を規定する 歩容パラメータを設定し、 この目標床反力鉛直成分を動力学的に満足す るように口ポット 1の全体重心鉛直位置を決定する。 この場合、 床反力 鉛直成分の 2階積分値がロポッ ト 1の全体重心鉛直位置を規定するもの になるので、 目標床反力鉛直成分の設定が悪いと、 口ポッ ト 1の全体重 心鉛直位置もしくは上体鉛直位置が高くなり過ぎたり低くなり過ぎたり する。 したがって、 目標床反力鉛直成分の設定方法も重要な課題である しかし、 床反力鉛直成分と上体鉛直位置との関係は、 ZMPと上体水平 位置との関係に似ているので、 上体水平位置速度を適切にするための目 標 Z MP決定手法の一部を、 以下の本参考例に示すように、 少し変更す るだけで、 上体鉛直位置速度を適切にするための目標床反力鉛直成分の 決定手法に適用することができる。 本題に戻り、 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旋回歩容の歩容周期は、 互いに同一にすることは必ずしも必要ではないが、 いずれの周期も、 少 なくとも次回歩容周期に応じて決定するのが好ましい。 尚、 今回歩容、 2
7 5 第 1旋回歩容および第 2旋回歩容の上記以外の運動パラメ一夕 (両脚支 持期時間などの時間パラメータを含む) は、 上記決定されたパラメータ に応じて、 歩容の条件 (ァクチユエ一夕の速度が許容範囲に入っている か、 可動角を超えていないか、 床などと干渉していないかなど) を満足 するように適宜決定する。
次に、 S 1 0 2に進み、 目標上体姿勢が追従すべき基準上体姿勢軌道 を規定する基準上体姿勢軌道パラメ一夕が決定される。 基準上体姿勢は, 定常歩容の初期 (第 1旋回歩容の初期) と終端 (第 2旋回歩容の終端) とでつながるように (定常歩容の初期、 終端での基準上体姿勢の姿勢角 及びその角速度が一致するように) に設定されている限り、 一定姿勢で ある必要はないが、 本参考例では理解を容易にするため、 基準上体姿勢 のうちの傾斜角 (鉛直方向に対する傾斜角) に係わる姿勢は、 直立姿勢
(鉛直姿勢) に設定される。 つまり、 本参考例では、 上体 3の傾斜角に 関する基準上体姿勢は、 定常歩容の全期間において直立姿勢に設定され る。 従って、 本参考例では、 基準上体姿勢のうちの傾斜角の角速度及び 角加速度は 0である。 基準上体姿勢のうちのョ一角軌道 (以降、 基準ョ 一角軌道とも呼ぶ) 0 bz は、 例えば一定角速度 (定常歩容の平均旋回 速度) の運動にすれば良い。 あるいは、 後述の基準逆位相腕振り軌道の 例 (図 1 8 ) のようにサイン波状にしても良い。 ただし、 定常歩容を繰 り返した時に基準ョ一角およびその角速度が連続となるように設定する, 尚、 本参考例では、 目標上体姿勢のうちのョ一角軌道 (以降、 目標ョ 一角軌道とも呼ぶ) は、 基準ョ一角軌道に一致させるものとする。
次に、 S 1 0 4に進み、 基準腕姿勢軌道パラメータが決定される。 具 体的には、 両腕体 5, 5の全体の重心位置 (上体 3に対する相対的な重 心位置)、 左右の手先 (両腕体 5, 5の先端) の左右方向の間隔、 およ び逆位相腕振り角に関するパラメータが決定される。 基準逆位相腕振り 角は、 たとえば図 1 7のように左旋回する場合には、 図 1 8のように設 定すれば良い。 図 1 8のように、 基準逆位相腕振り角 0 azref は、 定常 歩容を繰り返した時に歩容の境界 (第 2旋回歩容の終端と次の第 1旋回 歩容の境界) において逆位相腕振り角および角速度が共に連続になり、 かつ第 1旋回歩容初期における支持脚と逆位相腕振り角の相対関係が、 次の第 1旋回歩容初期における支持脚と逆位相腕振り角の相対関係に一 致するように設定される。 すなわち、 第 1旋回歩容の初期逆位相腕振り 角速度と第 2旋回歩容の終端逆位相腕振り角速度が一致し、 第 2旋回歩 容の終端逆位相腕振り角は、 定常歩容の旋回角 (第 1旋回歩容と第 2旋 回歩容の旋回角の和) に第 1旋回歩容初期逆位相腕振り角を加えた値に 設定される。 図 1 8では基準逆位相腕振り角 0 azref をサイン波状の波 形としたが、 一定角速度に設定しても良い。 あるいは、 支持脚のョ一角 と遊脚のョ一角の平均の値としても良い。
尚、 本参考例では、 目標腕姿勢の両腕体 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旋回歩容、 第 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が移動した時にスリップ しないようにするためには、 目標歩容の床反力水平成分が、 常に摩擦限 界以内になければならない。 そこで、 この条件を満足させるために、 床 反力水平成分許容範囲を設定し、 後述するように、 目標歩容の床反力水 平成分がこの許容範囲内になるように、 目標歩容を生成することとした, 床と足平 2 2 との間の摩擦係数を とすると、 Fxmin は、 常に一 *床反力鉛直成分以上に、 Fxmax は *床反力鉛直成分以下に設定さ れなければならない。 最も単純な設定方法は、 次式による設定である。 ただし、 kaは 1より小さい正の定数である。 Fxmin=— ka * 2 *床反力鉛直成分
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 は、 常に一 床反力鉛直成分以上に、 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と接地 面から算出するのが良いが、 定数としても構わない。
尚、 上記条件 (目標歩容の床反力モーメント鉛直成分を常に摩擦限界 以内にするという条件) を満足しているならば、 他の設定方法で床反力 モーメント鉛直成分許容範囲を設定するようにしても構わない。
さらには、 床反力水平成分許容範囲と床反力モーメント鉛直成分許容 範囲を独立に設定するのではなく、 床反力水平成分と床反力鉛直成分モ ーメントの組み合わせの許容範囲を設定するようにしても良い。 なぜな ら、 床反力水平成分が大きくなると、 床反力モーメント鉛直成分の許容 範囲が狭くなり、 また、 床反カモ一メント鉛直成分が大きくなると、 床 反力水平成分の許容範囲が狭くなるからである。 9472
8 1 次に、 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旋回歩 容及び第 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歩目の遊脚側足平着 9472
8 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 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旋回歩容と 2004/009472
8 3 第 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 での状態) が決定される, 霞画 09472
8 5 ここで状態とは、 位置や姿勢角とその変化率 (時間微分) とを表す。
この場合、 支持脚側の目標足平位置姿勢の初期状態は、 前記図 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 における基準上体姿勢 (傾斜角およびョ一角) 及びその角速度が該目標上体姿勢角の初期状態 として決定される。 なお、 本参考例では、 上体 3の傾斜角に係る基準上 体姿勢は鉛直姿勢であるので、 目標上体姿勢のうちの傾斜角の初期状態 (傾斜角及びその角速度) は 0である。
また、 本参考例では、 定常歩容の目標足平位置姿勢軌道、 床反力鉛直 成分軌道、 及び目標 Z M P軌道は、 それぞれ、 図 1 5のフローチャート で決定した足平軌道パラメ一夕、 床反力鉛直成分軌道パラメータ、 Z M P軌道パラメータにより互いに独立的に決定される。 例えば定常歩容の 瞬時瞬時の目標足平位置姿勢は、 床反力鉛直成分の瞬時値に依存するこ となく足平軌道パラメ一夕に応じて決定される。
' 次いで 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 C T/ J P 0 2 1 3 5 9 2に記載されているので、 ここでは省略する。 04 009472
8 7
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 を代入する。 さらに、 上体 水平位置速度に、 現在仮決定されている (X s, V x s) (図 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 であるか否か) が判 断され、 その判断結果が YE Sである場合には、 S 3 0 6の歩容瞬時値 決定サブルーチンに進み、 歩容瞬時値が決定される。 次いで歩容生成装 置 1 0 0の処理は、 S 3 0 8に進み、 仮歩容生成用時刻 kを だけ増 やした後、 S 3 0 4に戻る。
ここで、 は、 仮歩容生成のインターパルであり、 通常、 制御周期 厶 t と一致させておけば良い。 なお、 Ak は、 仮歩容の動力学的精度を 落としても良いならば、 演算量を低減するために、 Δΐε を Δ tよりも長 く設定しても良い。
S 3 04の判断結果が 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におい 4 009472
8 9 て、 定常歩容パラメ一夕 (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)における全体重心鉛直速度
+ ((床反力鉛直成分ノロポッ トの全体質量) +重力加速度) * A k
(ただし、 重力加速度は負の値とする。)
…式 1 5 時刻 kにおける全体重心鉛直位置
=時刻(k一 A k)における全体重心鉛直位置
+時刻 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 ) の目標上体姿勢角) とから上体 鉛直位置が求められる。 4 009472
9 1 次いで S 4 1 0に進み、 前記図 1 5の S I 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]を越えないよ うに、 目標逆位相腕振り角加速度の今回値が決定される。
尚、 上体姿勢角のうち、 ョ一角は基準上体姿勢角のうちのョ一角に一 致するように決定される。 また、 目標腕姿勢に関しては、 逆位相腕振り 角以外の成分は、 基準腕姿勢に一致するように決定される。 また、 この 際、 上記条件を満足しつつも、 目標上体傾斜角と'目標逆位相腕振り角と は、 それぞれ基準上体傾斜角と基準逆位相腕振り角とになるべく追従す るように決定される。 以下にこの詳細を説明する。
この時点において、 前記の如く足平位置姿勢および上体鉛直位置の瞬 時値 (今回値) が決定されており、 また、 腕姿勢に関して、 逆位相腕振 り角以外の成分は、 基準腕姿勢のそれに一致するように決定されている, このため、 残りの上体水平位置と上体姿勢角と逆位相腕振り角とを決定 9 2 すれば、 ロボット 1の目標運動は一義的に決定できる。 したがって、 す ベての床反力も一義的に決定される。 なお、 本参考例では、 定常歩容の 目標床反力鉛直成分及び目標 Z M Pは、 それぞれ前記図 1 3の S 0 2 2 で決定した床反力鉛直成分軌道パラメ一夕及び目標 Z M P軌道パラメ一 夕によって規定される。
ところで、 歩容生成において、 前記上体並進モードをあまり用いずに 主に上体傾斜モ一ドを用いることにより、 目標 Z M Pを満足させる (目 標 Z M Pまわりの床反力モーメントの水平成分を 0にする) と、 上体姿 勢角が大きく振れ過ぎてしまう恐れがある。 したがって、 これを防ぐた めには、 なるべく上体並進モードを用いるべきである。 しかし、 上体並 進モ ドは、 床反力水平成分の変化を伴うので、 床反力水平成分許容範 囲が狭い場合には、 上体並進モードを強く働かせるとスリップする恐れ がある。 この場合には、 上体傾斜モードに頼るしかない。 特に、 前記走 行歩容のように床反力水平成分許容範囲が 0となる期間では、 床反力水 平成分を発生させるような歩容を生成することはできないので、 上体傾 斜モ一ドに頼らざるを得ない。
一方、 逆位相腕振り運動は、 目標 Z M Pまわりの床反力モーメントの 水平成分および床反力水平成分のいずれも変化させることなく、 床反力 モーメント鉛直成分のみを変化させることができるので、 床反力モ一メ ント鉛直成分が前記床反カモ一メン卜鉛直成分許容範囲を越えないよう にするために用いることができる。 以上のことを考慮し、 本参考例では 図 2 6に示すフローチヤ一卜に従って、 上体水平加速度と上体姿勢角加 速度と逆位相腕振り加速度とが決定される。 尚、 理解の便宜上、 上体水 平加速度と上体姿勢角加速度 (上体 3の傾斜角の角加速度) の決定に関 しては、 サジタルプレーン上で X方向 (前後方向) での上体水平加速度 および上体姿勢角加速度を決定する場合を例にとって説明するが、 実際 00価 9472
9 3 には Y方向 (左右方向) の上体水平加速度および上体姿勢角加速度も X 方向と同様に決定される。
まず S 5 0 0において、 目標上体ョ一角に時刻 k での基準上体ョ一 の値を代入する。 また、 腕姿勢の逆位相腕振り角 · 角速度成分を除き、 目標腕姿勢に時刻 kでの基準腕姿勢の値を代入する。
次に S 5 0 2において現在時刻 (定常歩容作成用タイマーの値) k が、 上体姿勢角 ,逆位相腕振り角復元期間 (定常歩容の場合、 上体姿勢角 · 逆位相腕振り角復元期間は、 時刻 Tm から時刻 Ts2 の期間および時刻 Tm2 から Te までの期間である。) の間にあるか否かが判定される。 S 5 0 2の判定結果が N〇であるならば、 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 tmp が求められる。 この 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 について解くことにより、 上体質点水平加速度が上体 2004/009472
9 4 水平加速度 a tmp として求められる。 尚、 より厳密な動力学モデルを 用いて、 目標 Z M P回りの床反力モーメントの水平成分を零にするよう な上体水平加速度 a tmp を探索的に求めるようにしてもよい。 また、 本参考例では、 上体 3の傾斜角に関する基準上体姿勢が鉛直姿勢で、 該 基準上体姿勢による上体姿勢角加速度 (上体 3の傾斜角の角加速度) が 0であるため、 上体傾斜モードの角加速度を 0にして上体水平加速度 α tmp を求めるようにした。 但し、 基準上体姿勢のうちの傾斜角が変化 するように該基準上体姿勢軌道パラメ一夕を設定した場合で、 それによ り定まる現在時刻 kにおける基準上体姿勢角加速度 (上体 3の傾斜角の 基準角加速度) が 0でない場合には、 上体傾斜モードの角加速度をその 0でない基準上体姿勢角加速度の値にして、 上体水平加速度 a tmp を 動力学モデルを用いて求める (例えば式 0 3 yの d2 0 by/dt2 を 0でな い基準上体姿勢角加速度に設定して上記と同様に上体水平加速度 a tmp を求める) ようにすればよい。
次に、 S 5 0 6に進み、 上体水平加速度がひ tmp の場合の時刻 kに おける床反力水平成分 Fxtmp が動力学モデルを用いて求められる。 本 参考例においては、 前記動力学モデルの式 0 2 Xを用いて Fxtmp が求 められる。 すなわち、 次式 1 7によって Fxtmp が求められる。 但し、 d2Xsup/dt2および d2XswgZ dt2 はそれぞれ時刻 kにおける支持脚足 平質点水平加速度、 遊脚足平質点水平加速度を表す。
Fxtmp = mb * a tmp + ms p * d2Xsup dt2
+ mswg * d2Xswg/ dt2 式 1 7 このようにして求められる Fxtmp の例を図 2 7に示す。 図 2 7に、 Fxtmpが床反力水平成分許容範囲 [Fxmin, Fxmax]を越えている部分を 004/009472
9 5 斜線で示す。
次に、 S 5 0 8に進み、 上体並進モードの上体水平加速度 a、 これに よって発生する床反力水平成分 Fx、 上体傾斜モードの上体角加速度 /3 次のように決定される (S 5 0 8〜S 5 1 6 )。
すなわち、
Fxtmp>Fxmax ならば、 S 5 1 0に進み、 次式により F x が決定され る。
Fx= Fxmax …式 1 8
Fxtmp< Fxminならば、 S 5 1 2に進み、 次式により F xが決定される,
Fx= Fxmin …式 1 9 それ以外、 すなわち、 Fxtmp が、 床反力水平成分許容範囲 [Fxmin, Fxmax]内に存するならば、 S 5 1 4に進み、 次式により F x が決定さ れる。
Fx=Fxtmp …式 2 0 いずれの場合においても、 次いで S 5 1 6に進み、 次式により上体水 平加速度 0;、 上体姿勢角加速度 (上体傾斜角加速度) )3が決定される。 K = a tmp + (F 一 Fxtmp)/ Δ Fp …式 2 1
13 = ( tmp - ΔΜΡ / Δ Μ Γ …式 2 2 9472
9 6 ただし、 A F p、 Δ Μ ρおよび Δ Μ rはそれぞれ前記式 0 6 、 0 7 、 および式 0 9により決定される。
補足すると、 より動力学演算の精度を高めようとするならば、 上記の ごとく上体角加速度 i6を求めた後、 上体並進モードと上記求めた上体角 加速度 βの上体傾斜モードとを合成した運動が目標 Z M Pを満足するよ うに、 上体並進モードの上体水平加速度 αを、 より厳密な動力学モデル を用いて解析的あるいは探索的に決定した方が良い。 なお、 探索的な決 定法としては、 擬似ヤコビアン (感度マトリックス) を求め、 擬似ニュ —トン法などにより次候補を決定する方法や、 シンプレックス法などを 用いれば良い。
さ らに床反力水平成分 Fx が床反力水平成分許容範囲 [Fxmin , Fxmax]を厳密に越えないようにするために、 S 5 1 0においては、 Fx = Fxmax かつ目標 Z M Pまわりの床反力モーメントの水平成分が 0に なるように、 S 5 1 2においては、 Fx = Fxmin かつ目標 Z M Pまわり の床反力モーメントの水平成分が 0になるように、 上体水平加速度ひ と 上体角加速度 /3との組を探索的に求めても良い。
上記のように求められる Fx を図 2 8に示す。 Fx は、 Fxtmp の値を 床反力水平成分許容範囲 [Fxmin, Fxmax]から越えないように制限 (飽 和) させたものになっている。 より詳しくは、 上体並進モードのみによ る上体水平加速度 tmp に応じた Fxtmp が許容範囲 [Fxmin, Fxmax] 内にある場合には、 Fxtmpがそのまま Fx となる。 また、 上体並進モ一 ドのみによる上体水平加速度 a tmp に応じた Fxtmpが許容範囲 [Fxmin, Fxmax]の上限を超え、 もしくは下限を下回った場合には、 それぞれ Fx は、 それぞれ強制的に Fxmax、 Fxmin に制限される。 特に走行歩容の 空中期では、 常に、 Fxmax= Fxmin= 0であるので、 Fx= 0 となる。
また、 上記のように求められる上体姿勢角加速度 ]3を図 2 9に示す。 P 雇 004麵 72
9 7 上体並進モードによって発生する Fx が許容範囲 [Fxmin, Fxmax]を越 えないように、 上体並進モードの加速度を制限したことによって不足し た床反力モーメント (より詳しくは目標 Z M P回りの床反力モ一メント の水平成分を 0にする上で必要な慣性力モーメントから、 制限した上体 水平運動と両脚体 2, 2の運動とによるモーメント成分を差し引いたモ —メント) を、 上体傾斜モードで補ったことになる。 なお、 走行歩容の 空中期では、 上体並進モードによる上体水平加速度 αは常に 0に制限さ れることとなるので、 上体傾斜モードによる上体姿勢角加速度 j3のみに よって、 上記不足分の床反力モーメン卜が補われることとなる。
次に、 S 5 1 8に進み、 仮に上体並進モードの上体水平加速度が α、 上体傾斜モードの上体角加速度 (上体傾斜角加速度) が) 3、 上体ョ一回 転モードの上体加速度 (上体ョ一角加速度) が基準ョ一角加速度 d20 bzref/dt2、 逆位相腕振り角加速度 )3 a が基準逆位相腕振り角加速度 d2 Θ azref/dt2 で .る運動をさせた場合の床反力モーメン ト鉛直成分 Mztmp を求める。 以降、 d20 bzref/dt2 を j3 bref、 d2 Θ azref/dt2 を /3 aref とする。
具体的には、 式 0 3 z に、 式 1 0 0 1から式 1 0 0 4を代入すること によって得られる M zが Mztmpである。 d2Xb/dt2= x …式 1 0 0 1 d2Yb/dt2= y …式 1 0 0 2 d2 Θ bz/dt2=i3 bref …式 1 0 0 3 d2 Θ az/dt2= ]3 aref …式 1 0 0 4 ただし、 ax は、 上体水平加速度ひ の X成分、 ay は、 上体水平加速 度ひ の Y成分を表す。 また、 Xb、 Yb には時刻 k一 1における上体水平 位置 を代入 し 、 Xzmp、 Yzmp、 Xsup、 d2Ysup/dt2、 Xswg 、 d2Yswg/dt2には、 時刻 kの値を代入するものとする。
このようにして求められる Mztmp の例を図 3 2に示す。 図 3 2に、 Mztmp が床反力モーメント鉛直成分許容範囲 [Mzmin, M max]を越え ている部分を斜線で示す。
次に、 S 5 2 0に進み、 逆位相腕振り角加速度 j8 a が次のように決定 される (S 5 2 0〜 S 5 2 8 )。
すなわち、
Mztmp>Mzmax ならば、 S 5 2 2に進み、 次式により Mzが決定され る。
Mz = Mzmax …式 1 0 1 8
Mztmp<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に進み、 次式により逆位相 腕振り角加速度 /3 aが決定される。 β Ά= β aref + (Mztmp― Μζ) Ζ Δ Maz …式 1 0 2 1
' ただし、 Δ Mazは式 0 9 aにより決定される。
以下に S 5 1 8から S 5 2 8までの処理を解説する。
上記のように求められる Mzは、 逆位相腕振りを含めたロポッ ト全体 の運動による床反カモ一メン卜鉛直成分を示している。
上記処理では、 この Mz が床反力モーメン ト鉛直成分許容範囲 [Mzmin, Mzmax]を越えないように逆位相腕振り角加速度 β 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 で割ったものを基準逆位相腕振り角加速度 i3 aref (基準逆 位相腕振り角を 2階微分した値) に加えることによって得られる。 すな わち、 ]3 aは前記式 1 0 2 1で求められる。 逆位相腕振り角加速度 ]3 a を図 3 5に示す。 9472
1 0 0 以上のごとく S 5 0 4から S 5 2 8までの処理では、 逆位相腕振りを 含めたロポッ ト全体の運動によって発生する床反力モーメント鉛直成分 Mz が許容範囲 [Mzmin, Mzmax]を越えないように (逆位相腕振り角加 速度を基準逆位相腕振り角加速度^ aref に一致させた場合に発生する 床反力モーメント鉛直成分 Mztmp が許容範囲を越えた分を打ち消す
(キャンセルする) ように)、 逆位相腕振り角加速度 ]3 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に進み、 逆位相腕振り角加速度 i3 a に、 基準 P 画 004/009472
1 0 1 逆位相腕振り角加速度 j8 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で求めた逆位相腕振り加速度 J3 a を逐 次積分する (時刻 Ts から現在時刻 kまで累積加算する) ことにより逆 位相腕振り速度が求められ、 さらにこれを逐次積分する (時刻 Ts から 現在時刻 kまで累積加算する) ことにより、 逆位相腕振り角 S 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換算値 (以降、 上体姿勢復元モーメント ZMP 換算値と呼び、 ZMPrecと略す) のパターンを設定する。
これについて以下に詳細に説明する。
上体姿勢角 · 逆位相腕振り角復元期間 (時刻 Tm から時刻 Ts2 の期 間および時刻 Tm2 から Te までの期間) に、 上体傾斜モードを用いて 上体姿勢角加速度を発生させることにより、 上体姿勢角速度を初期値 (時刻 Ts での値) に戻すことを考える。 このための上体姿勢角加速度 パターンを、 /3(k)とする。 なお、 上記期間以外では、 /3(k)=0 とする < 上体傾斜モードでは、 上体姿勢角加速度 /3(k)を発生させようとする と、 床反力モーメント /3 (k) * ΔΜ rが発生する。 この結果、 その瞬間 における床反力鉛直成分が Fz(k)であるとすると、 (目標 Z M Pでな く) 運動から算出される Z MP(k)は、 次式で求められる Δ Z MPだけ ずれる。
A Z MP(k)= - )3 (k)* ΔΜ Γ /Fz(k) …式 2 3 したがって、 ΔΜ rのパターンと Fz(k)のパターンが決まっていれば (既知であれば)、 △ Z M P (k)のパターンを適当に設定することによ つて、 式 2 3を満足する上体姿勢角加速度パターンを発生させて、 上体 姿勢角速度を初期値 (時刻 Ts での値)、 すなわち基準上体姿勢軌道の 初期 (時刻 Ts)状態における上体姿勢角速度に戻すことができる。
'前記上体姿勢復元モーメント Z M P換算値 (Z MPrec) は、 そのよ うに適切に設定された Δ Z MP(k)を意味する。 前記式 2 3を用いて上 体姿勢復元モ一メント Z MP換算値を設定する際に、 AMrは厳密には 変動するが、 近似的に一定値としても良い。 定常歩容は仮に生成される だけであり、 実際の口ポッ トをこの歩容に追従させるわけではないので、 定常歩容の動力学的精度はあまり高くなくても良いからである。
図 3 0に Z MPrec の一例を示す。 図 3 0では、 ZMPrec のパター ンとして、 時刻 Tmから時刻 Ts2 の期間および時刻 Tm2から Te まで の期間に台形パターンが形成されている。 その台形部の折れ点の時刻は、 時刻 Tm と時刻 Ts2 との間の期間および時刻 Tm2 から Te までの期間 における目標 ZMPパターンの折れ点の時刻 (図 2 2参照) に一致させ てある。 これは、 後述するが、 今回歩容の目標 Z MPパターンの修正が 簡単になるからである。
式 2 3の Δ Z M P (k)に Z M Prec(k)を代入することにより次式が得 られる。 i3 (k)= - Z MPrec(k)* Fz(k)/AMr '"式 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 bを満たすように決定 する。 終端上体姿勢角一初期上体姿勢角
=床反力水平成分許容範囲を満たすように決定された上体姿勢角加速 度の 2階積分
+ Z MPrecによって発生する上体姿勢角加速度の 2階積分
+初期上体姿勢角速度 *定常歩容の周期..
式 3 7 a 終端上体姿勢角速度一初期上体姿勢角速度
=床反力水平成分許容範囲を満たすように決定された上体姿勢角加速 度の 1階積分
+ Z MPrecによって発生する上体姿勢角加速度の 1階積分
式 3 7 b なお、 式 3 7 a、 3 7 bのそれぞれの右辺第 1項の積分期間は、 時刻 Tsから Tmまでの期間と、 Ts2から Tm2 までの'期間とを合わせた期間 であり、 右辺第 2項の積分期間は、 時刻 Tm から Ts2 までの期間と Tm2から Teまでの期間とを合わせた期間である。
より具体的に説明すると定常歩容では、 第 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 Prec (図 3 0の台形状のパターン) の台形高さをと未知数として (但し、 Z MPrec の台形パターンの折れ 点の時刻は前記のごとくあらかじめ定める。 また、 第 1旋回歩容の Z M Prec の台形高さ acycl と第 2旋回歩容の Z M P rec の台形高さ acyc2 を同一値とする。)、 それらの未知数を含む式 3 7 a , 3 7 bの連立方程 式を解くことにより求められる初期上体姿勢角速度を新たな初期上体姿 勢角速度として決定する。 この場合、 式 3 7 bの終端上体姿勢角速度は, 未知数である初期上体姿勢角速度を、 定常歩容の上記トータルの旋回角 に応じたマトリクスにより次回支持脚座標系から見た値に座標変換した ものである。
次いで S 3 1 2に進み、 上体傾斜復元モ一メント Z MP換算値 ( Z M Prec) パターンを基に、 これによる上体水平位置 · 速度への影響量を 求め、 終端上体水平位置,速度に加算する。
この処理について解説する。 なお、 その詳細は、 本願出願人の P C T / J P 0 2 / 1 3.5 9 2にて説明されているので、 ここでは簡略な説明 に留める。
時刻 Tsから Tm の期間および時刻 Ts2から Te の期間において、 上 記のごとく上体傾斜復元モーメント Z M P換算値 (Z M Prec) パター ンを発生するように上体姿勢角加速度 /3を変化させると、 上体姿勢角加 速度 βは、 次式のようになる。 ]3 =— Z M P rec* FzZ ΔΜ r …式 1 0 2 5 上体傾斜復元モーメントを発生させない場合に目標 Z M Pを満足する 上体水平加速度は、 S 5 3 2において求めたごとく QUmp であるが、 上記のごとく上体姿勢角加速度 βを変化させると、 目標 Z M Pを満足す るために必要な上体水平加速度ひは、 次式のようになる。 = a tmp - (Δ Μ Γ / ΔΜρ ) * j3 …式 1 0 2 6 式 1 0 2 5および 1 0 2 6より、 ひ = atmp+ Z M Prec* Fz/ ΔΜρ …式 1 0 2 7 すなわち、 上体傾斜復元モーメント Ζ Μ Ρ換算値 ( Z M P rec) によつ て、 加速度が式 1 0 2 7の右辺第 2項分だけ増加する。
式が線形であることを利用すると、 上記のごどく上体傾斜復元モ一メ ント Z M P換算値 (Z M Prec) パターンを発生するように上体姿勢角 加速度 j8を変化させた場合の終端上体水平速度は、 上体傾斜復元モーメ ント Z M P換算値 ( Z M Prec) パターンを発生させなかった場合の終 端上体水平速度、 .すなわち S 4 1 4で求めた上体水平速度の終端値に、 時刻 Ts力、ら Te までの (Z M Prec* FzZ AMp ) の 1階積分を加算し たものとして求められる。 また、 上記のごとく上体傾斜復元モーメント Z M P換算値 ( Z M Prec) パターンを発生するように上体姿勢角加速 度 ]3を変化させた場合の終端上体水平位置は、 上体傾斜復元モーメント Z M P換算値 ( Z M Prec) パターンを発生させなかった場合の終端上 体水平位置、 すなわち S 4 1 4で求めた上体水平位置の終端値に、 時刻 Ts から Te までの ( Z M Prec* FzZ ΔΜΡ ) の 2階積分を加算したも のとして求められる。
S 3 1 2の処理を完了した後、 S 3 1 4に進み、 逆位相腕振り角速度 が初期と終端で一致するように逆位相腕振り復元角加速度 (/3 arec) パ ターンを決定する。
具体的には、 逆位相腕振り復元角加速度パターンを図 3 6のように台 形状に設定し、 時刻 Tmから Ts2 までの期間の台形高さ azcyc2 と時刻 Tm2 から Te までの期間の台形高さ azcycl を同一とし、 時刻 Ts から Te までの ;8 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 ただし、 上式において、 3 arec が 0の場合の逆位相腕振り角とは、 S 1 6において求めた逆位相腕振り角 (時刻 Te における逆位相腕振 り角) のことである。 また、 13 arec の 2階積分とは、 図 3 6のように 設定した逆位相腕振り復元角加速度の時刻 Ts から Te までの 2階積分 値である。 また、 基準初期逆位相腕振り角速度は前記基準逆位相腕振り 角速度 (基準逆位相腕振り角 0 aref の 1階微分値) の時刻 Ts での値で ある。
初期逆位相腕振り角は、 基準初期逆位相腕振り角に一致させれば良い, または、 最終的に決定された逆位相腕振り角加速度 (すなわち、 床反力 モ一メント鉛直成分 Mzが許容範囲を越えないようにするための前記求 めた逆位相腕振り加速度 )3 aと復元角加速度 /3 arecの和) と上記求めた 初期逆位相腕振り角速度を基に、 仮に初期逆位相腕振り角を基準初期逆 位相腕振り角に一致させた場合に算出される腕振り角と基準逆位相腕振 り角との差の平均値または前記差の最大値と最小値の平均値を求め、 求 めた平均値の 2分の 1 を基準初期逆位相腕振り角から減じた値を最終的 な初期逆位相腕振り角として決定しても良い。 このようにすることで、 算出される腕振り角と基準逆位相腕振り角との差の絶対値が大きくなり 過ぎることを防止することができる。
時刻 Ts、 Tm、 Ts2 および Tm2 を前記のごとく設定した理由のひと つは、 時刻 Tm から Ts2 までの期間と時刻 Tm2から Te までの期間と において、 上体姿勢角速度を基準上体姿勢軌道の初期角速度に戻すよう に上体姿勢角加速度 3を発生させても、 床反力水平成分 Fx が許容範囲 [Fxmin, Fxmax]を越えないようにするためである。 換言すれば、 時刻 Tmから Ts2までの期間と時刻 Tm2から Teまでの期間とにおいては、 床反力水平成分許容範囲が十分に大きいため、 目標 Z M Pを満足しつつ, 上体姿勢角速度を戻すように上体姿勢角加速度 j3を発生させても、 床反 力水平成分 F xは、 許容範囲を越えることがない。
また時刻 Ts、 Tm、 Ts2 および Tm2 を前記のごとく設定したもうひ とつの理由は、 時刻 Tmから Ts2 までの期間と時刻 Tm2から Te まで の期間とにおいて、 逆位相腕振り角速度を基準逆位相腕振り角軌道の初 期角速度に戻すように逆位相腕振り角加速度 a を発生させても、 床反 力モ一メント鉛直成分 Mzが許容範囲 [Mzmin, Mzmax]を越えないよう にするためである。 換言すれば、 時刻 Tm から Ts2 までの期間と時刻 Tm2から Te までの期間とにおいては、 床反力モーメント鉛直成分許容 範囲が十分に大きいため、 逆位相腕振り角速度を戻すように逆位相腕振 り角加速度) 3 a を発生させても、 床反力モーメント鉛直成分 Mz は、 許 容範囲を越えることがない。
以上のごとく図 2 4の S 3 1 6の処理が完了した後、 図 2 3の S 2 1 0に進み、 生成した歩容 (仮定常歩容) の終端上体水平位置 ·速度を、 その瞬間の支持脚に対応する支持脚座標系 (図 1 7の Χ '", Υ '" , Ζ'" 座標系) から見た値に変換し、 その値を (X e, V X e ) とする (X e : 終端上体水平位置、 V x e : 終端上体水平速度)。 次いで S 2 1 2に進み、 図示の如く、 初期上体水平位置速度 (X s, V X s ) と終端上体水平位置速度 (X e, V X e ) との差を算出する。 この差 (X s — X e , V x s - V x e ) を上体水平位置速度境界条件誤 差 (errx, errvx) と呼ぶ。 定常歩容では、 前記境界条件を満たす必要 があるので、 (X s , V X s ) と (X e, V e ) とが一致していなけ ればならない。 従って、 上体水平位置速度境界条件誤差 (errx, errvx) が零またはほぼ零でなければならない。 本参考例では、 以下の ように、 上体水平位置速度境界条件誤差 (errx, errvx) がほぼ零とな る (X s , V X s ) が探索的に求められる。
次いで S 2 1 4 に進み、 算出した上体水平位置速度境界条件誤差 (errx, errvx) が、 あらかじめ適宜設定された許容範囲内にあるか否 かが判断される。 尚、 このように上体水平位置速度境界条件誤差の許容 範囲を設定する代わりに、 初期発散成分 (X s + V X sノ0>0) と終端 発散成分 (X e + V x e Z oO) との差、 および初期収束成分 (X s — V X s /ωθ') と終端収束成分 (X e - V X e /ωθ') との差がそれ ぞれぁる許容範囲内にあるか否か判断するようにしても良い。 ただし 0, ωθ' は、 前述したように、 ある所定の値である。
S 2 1 4の判断結果が NOであるときには S 2 1 6に進む。 この S 2 1 6では、 (X s , V X s ) の付近に複数 (本参考例では 2つ) の初期 値候補 (X s + A X s , V X s ), (X s , V x s '+ Δ V x s ) が決定さ れる。 ここで、 A X s , A V x sは、 それぞれ X s , V x s に対する所 定の微小変化量を意味している。 そして、 これらの初期値候補のそれぞ れを上体水平位置速度の初期状態として、 前記 S 2 0 8と同様の処理に よって定常歩容が歩容パラメ一夕を用いて生成される。 さらに、 その生 成された定常歩容の終端上体位置速度を、 その瞬間の支持脚に対応する 支持脚座標系 (図 1 7の Χ'", Υ'" , Ζ'"座標系) から見た値に変換し た値 (X e + A X e l, Vx e + A V x e 1 ), (X e +厶 X e 2 , V x e + Δ 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 Vx e 2 ) は (X s , V x s + Δ V x s ) に対応する終端上体位置速度を意味している。 なお、 この 場合の定常歩容 (仮歩容) の生成処理では、 上体水平位置速度以外の変 数の初期状態 (時刻 T sでの状態) は、 例えば上体水平位置速度の初期 値候補を (X s , Vx s ) とした場合と同一に設定すればよい。 S 2 1 6ではさらに、 前記 S 2 1 0と同様の処理によって、 各初期値候補とこ れに対応する終端上体位置速度との差、 すなわち、 各初期値候補 (X s + Δ X s , V x s ), (X s , Vx s + AVx s ) のそれぞれに対応する 上体水平位置速度境界条件誤差が求められる。
次いで S 2 1 8 に進み、 (X s, V x s ) およびその付近の初期値候 補 (X s + A X s , V x s ), (X s , V x s + AV x s ) のそれぞれに 対する上体水平位置速度境界条件誤差を基に、 (X s, V x s ) の次の 初期値候補が探索法 (擬似ヤコビアン (感度マトリックス) を求め、 最 急降下法などにより次候補を決定する方法や、 シンプレックス法など) により決定される。 すなわち、 (X s , V x s ) およびその付近の初期 値候補 (X s + A X s , Vx s ), (X s , V χ s + Δ V χ s ) のそれぞ れに対する上体水平位置速度境界条件誤差によって、 上体水平位置及び 上体水平速度をそれぞれ初期値候補 (X s , V x s ) から微小変化させ たときの、 上体水平位置速度境界条件誤差の変化度合いを示す感度マト リックスが求められ、 その感度マトリックスに基づいて、 上体水平位置 速度境界条件誤差.をより小さくするような初期値候補 (X s , V x s ) が新たに決定される。 そして、 このように上体水平位置速度の新たな初 期値候補 (X s , Vx 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 (図 24参照) では、 上体姿勢角速度の初期 値は、 基準上体姿勢角速度の初期値ではなく、 上体水平位置速度の前回 の初期値候補 (X s, V x 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 04の繰り返しループを抜けたときの直前に生 成された仮定常歩容が、 境界条件を満たす定常歩容として得られること となる。
S 2 2 0では、 本来の初期時刻 0 (今回歩容の終端時刻) における初 期上体水平位置速度 (X0, V0) と初期時刻 0における初期上体鉛直 位置速度 ( Z 0、 V z 0) と初期時刻 0における初期上体姿勢角および 角速度が求められる。
具体的には、 (X0, V0) と ( Z 0, 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に進み、 定常歩容初期発散成分 q [ 0 ] が今回歩容支持 脚座標系から見た値に変換され、 これが q" [ 0 ] として求められ ¾。 また、 初期上体鉛直位置速度 (Z 0, V z 0) が今回歩容支持脚座標系 から見た値に変換され、 これが (Z0 ", V z 0 ") として求められる。 補足すると、 ( Z 0 ", V z 0 ") は、 第 2旋回歩容の支持脚座標系 (図 1 7の X", Y", Z" 座標系) から見た第 2旋回歩容終端上体鉛直 位置速度に一致している。 また、 q " [ 0 ] も第 2旋回歩容の支持脚座 標系 (図 1 7の X", Y", Ζ" 座標系) から見た第 2旋回歩容終端発散 成分に一致している。 したがって、 これらの性質を用いて、 (Ζ 0 ", V ζ 0 ") および Q " [ 0 ] を算出するようにしても良い。
さらに、 S 2 2 6に進み、 本来の初期時刻 0 ('今回歩容の終端時刻) における初期逆位相腕振り角および角速度(0 azO, coazO)を求め、 さら に、 これを今回歩容の支持脚座標系から見た値である(0 aZO", ω azO") を求める。 具体的には、 (0 az0, O)az0)は、 S 3 1 4および S 3 1 6に おいて決定された.逆位相腕振り復元角加速度パターン、 定常歩容の初期 (時刻 Ts) 逆位相腕振り角および角速度とを基に、 歩容の条件を満足 するように歩容を生成した場合における (より具体的には、 上体姿勢 角 · 逆位相腕振り角復元期間以外では、 床反カモ一メント鉛直成分が許 容範囲を越えないように、 逆位相腕振り角軌道を決定し、 上体姿勢角 · 逆位相腕振り角復元期間では、 前記基準逆位相腕振り角加速度 β aref と逆位相腕振り復元角加速度 β arec の和が発生するように逆位相腕振 り角軌道を決定した場合における) 第 2旋回歩容から第 1旋回歩容に切 り換わった瞬間の時刻、 すなわち、 時刻 k == Tcyc (時刻 Te— Ts) であ るときに決定される逆位相腕振り角および角速度を、 時刻 Tcyc から始 まる一歩 (すなわち 2度目の第 1旋回歩容) の支持脚に対応する支持脚 座標系 (図 1 7の X "', Υ '", Ζ"'座標系) から見た値に変換した値に決 定される。
以上により、 図 1 3の S O 2 4の処理、 すなわち定常歩容の初期状態 を求めるサブルーチン処理が終了する。
次いで、 図 1 3の S 0 2 6に進み、 今回歩容の歩容パラメータを決定 (一部は仮決定) する。 S 0 2 6では、 より具体的には、 図 3 9に示す フローチャートに従って、 以下の処理が行われる。
まず、 S 6 0 0において、 今回歩容の足平位置姿勢軌道が定常歩容の 足平位置姿勢軌道につながるように、 今回歩容の足平軌道パラメ一夕が 設定される。
具体的には、 今回歩容初期遊脚足平位置姿勢 (今回歩容遊脚足平位置 姿勢の初期値) は、 今回歩容支持脚座標系から見た現在遊脚位置姿勢 (前回歩容終端遊脚位置姿勢) に設定される。 今回歩容初期支持脚足平 位置姿勢 (今回歩容支持脚足平位置姿勢の初期値) は、 今回歩容支持脚 座標系から見た現在支持脚足平位置姿勢 (前回歩容終端支持脚足平位置 姿勢) に設定される。 また、 今回歩容終端遊脚足平位置姿勢は、 今回歩 容支持脚座標系から見た次回歩容支持脚座標系 (今回歩容に係わる 1歩 目の遊脚着床位置姿勢の要求値) に対応して決定される。 すなわち、 今 PC漏 004/009472
1 1 5 回歩容終端遊脚足平位置姿勢から遊脚足平 2 2を床に接触させたまま、 すべらないように該足平 2 2をその底面のほぼ全面が接地するまで回転 させたときの、 該足平 2 2の代表点が今回歩容支持脚座標系から見た次 回歩容支持脚座標系の原点に合致するように今回歩容終端遊脚足平位置 姿勢が決定される。
今回歩容終端では、 支持脚足平 2 2は離床して空中にある。 支持脚足 平 2 2が離床してから後の軌道を決定するために、 支持脚足平着地予定 位置姿勢を設定する。 支持脚足平着地予定位置姿勢は、 今回歩容支持脚 座標から見た次次回歩容支持脚座標 (今回歩容に係わる 2歩目の遊脚足 平位置姿勢の要求値) に対応して設定される。 より具体的には、 支持脚 足平着地予定位置姿勢は、 その位置姿勢から、 足平 2 2を床に接触させ たまま、 すべらないように該足平 2 2をその底面のほぼ全面が床に接地 するまで回転させたときの該足平 2 2の代表点が今回歩容支持脚座標か ら見た次次回歩容支持脚座標の原点に合致するように設定される。
今回歩容終端支持脚足平位置姿勢は、 現在支持脚位置姿勢 (今回歩容 初期支持脚足平位置姿勢) から、 次回歩容支持脚座標系に対応する足平 着地予定位置姿勢 (前記要求パラメータにおける 2歩目の遊脚側足平着 地位置姿勢の要求値) に至る足平位置姿勢軌道を、 今回歩容終端まで前 記有限時間整定フィルタにより生成することにより求められる。
次いで、 S 6 0 2に進み、 今回歩容の基準上体姿勢軌道パラメータが 定常歩容の第 1旋回歩容ゃ第 2旋回歩容と同様に決定される。 ただし、 今回歩容の基準上体姿勢軌道が前記定常歩容の基準上体姿勢軌道に連続 してつながる (今回歩容終端での基準上体姿勢角及び角速度がそれぞれ 定常歩容初期の基準上体姿勢角及び角速度に一致する) ように上記パラ メータが設定される。 なお、 本参考例では、 傾斜角に関する基準上体姿 勢は、 今回歩容及び定常歩容のいずれでも定常的な鉛直姿勢である。 00価 9472
1 1 6 次いで、 S 6 0 4に進み、 今回歩容の基準腕姿勢軌道パラメータが、 定常歩容の第 1旋回歩容ゃ第 2旋回歩容と同様に決定される。 ただし、 今回歩容の初期基準腕姿勢およびその変化率が基準腕姿勢および変化率 の現在瞬間値に一致し、 かつ、 今回歩容の腕姿勢軌道が前記定常歩容の 腕姿勢軌道に連続してつながるように上記パラメ一夕を設定する。 なお、 ここで決定される腕姿勢軌道パラメ一夕は、 定常歩容パラメ一夕の決定 (図 1 5の S 1 0 4 ) の場合と同様、 たとえば、 両腕体 5, 5の全体の 重心位置 (上体 3に対する相対位置)、 左右の手先 (両腕体 5, 5の先 端) の左右方向の間隔および逆位相腕振り角に関するパラメ一夕が決定 される。 尚、 本参考例では、 両腕体 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 l 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に進み、 床反力水平成分許容範囲 [Fxmin, Fxmax] (具体的には該床反力水平成分許容範囲のパターンを規定するパラメ一 夕) が、 定常歩容の第 1旋回歩容ゃ第 2旋回歩容と同様に設定される。 たとえば図 4 0に示すようなパターンで床反力水平成分許容範囲が設定 される。 本参考例では、 先に S 6 0 6で決定した床反力鉛直成分パター ンに応じて前記式 1 2に基づいて床反力水平成分.許容範囲が設定される, 次いで、 S 6 1 0 に進み、 床反力モーメ ン ト鉛直成分許容範囲 [Mzmin, Mzmax] (具体的には該床反力モーメント鉛直成分許容範囲 のパターンを規定するパラメータ) が、 定常歩容の第 1旋回歩容ゃ第 2 旋回歩容と同様に設定される。 たとえば図 4 1に示すようなパターンで 2004/009472
119 床反力モーメント鉛直成分許容範囲が設定される。 本参考例では、 先に S 6 0 6で決定した床反力鉛直成分パターンに応じて前記式 1 0 1 2に 基づいて床反力モーメント鉛直成分許容範囲が設定される
' 次いで、 S 6 1 2に進み、 今回歩容の Z MP軌道 (具体的には Z MP 軌道を規定するパラメ一夕で、 軌道の折れ点の時刻や位置) が、 定常歩 容の第 1旋回歩容ゃ第 2旋回歩容と同様、 安定余裕が高くかつ急激な変 化をしないように、 前記図 7に示すごとく設定される。 ただし、 今回歩 容の Z MP軌道が前記定常歩容の Z MP軌道に連続してつながるように 上記パラメータを設定される。 つまり、 今回歩容終端における ZMPの 位置が定常歩容初期の ZMP位置に一致するように、 ZMP軌道パラメ 一夕が決定される。 この場合、 走行歩容では、 片脚支持期における ZM P軌道の折れ点の時刻や位置の設定の仕方は、 前述した定常歩容の Z M P軌道パラメ一夕の設定の仕方と同様でよい。 そして、 空中期における 目標 Z MP軌道が、 空中期開始時から、 定常歩容初期の ZMP位置まで, 直線的に連続して変化するように ZMP軌道パラメ一タを設定すればよ い。
なお、 S 6 1 2で決定される今回歩容の Z M P軌道パラメ一夕は、 仮 決定されただけであり、 後述するように修正される。 そこで、 上記のご とく設定した今回歩容の 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 が 今回歩容終端時刻 Tcurr 以前であるか否か (k≤Tcurr であるか否か) が判断され、 その判断結果が Y E Sある場合には、 S 8 0 6の今回歩容 瞬時値決定サブル一チンに進み、 今回歩容の時刻 k の瞬時値が決定さ れる。 S 8 0 6の歩容瞬時値決定サブル一チンでは、 前述の S 3 0 6 と 2004/009472
121 同様、 図 2 5に示すごとく仮歩容を生成する。 ただし、 歩容パラメータ として、 定常歩容パラメ一夕の代わりに今回歩容パラメ一夕が用いられ る。
次いで S 8 0 8に進み、 仮歩容生成用時刻 kが だけ増加され、 S 8 04に戻る。
S 8 04の判断結果が N〇である場合には、 図 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に進み、 今回歩容終端発散成分 q0[k]と定常歩容初期 発散成分 Q " (図 2 3の S 2 2 4で求めたもの) との差である終端発散 成分誤差 errq が図示の式を用いて求められる。 さらに、 S 7 0 8に進 んで、 その求めた終端発散成分誤差 errq が許容範囲内 ( 0近傍の範 囲) にあるか否か判断する。
S 7 0 8の判断結果が NOであるときは S 7 1 0に進み、 a = A a (△ aは所定の微小量) とし、 図 44の関係に従って現在の仮目標 Z M Pパターンに台形状の修正を加えた目標 Z MPを基に、 前記 S 7 0 2と 同様に、 終端までの仮今回歩容を計算する。 ここで、 図 44を参照して. aは、 今回歩容終端発散成分を定常歩容初期発散成分にできるだけ一致 させる (今回歩容の上体水平位置姿勢軌道を定常歩容の上体水平位置姿 勢軌道に近づける) ために、 仮目標 ZMP,を修正するための台形パ夕一 ンの高さである。 この場合、 本参考例では、 仮目標 ZMPの修正は、 支 持脚足平 2 2の底面のほぼ全面が接地する期間 (足底全面接地期間)、 すなわち、 床反力水平成分許容範囲が十分に広いものとなる期間におい て行なうようにしており、 上記台形パターンの折れ点の時刻は、 足底全 面接地期間における仮目標 Z M Pの折れ点の時刻に合わせて設定されて いる。 なお、 S 7 1 0で a = A aとするのは、 現在の仮目標 Z MP軌道 を上記台形パターンによって微小量、 修正したときの前記終端発散成分 誤差 errqの変化を観測するためである。
上記のように S 7 1 0にて、 a二 A aとして仮目標 Z M P軌道を修正 したときの仮今回歩容を終端まで生成した後、 さらに S 7 1 2に進み、 S 7 1 0で求めた仮今回歩容終端での上体水平位置速度 (X e 1, V X e l) を基に、 この仮今回歩容における終端発散成分 q l[k]が図示の式 (前記式 1 0 ) を用いて求められる。
尚、 3 7 1 0にぉぃて厶 3は、 本参考例では、 適宜に設定される微小 量の定数としたが、 以下に説明する繰り返し演算によって終端発散成分 誤差 errq が小さくなるにつれて Δ aを減少させるように該 Δ aを設定 するようにしても良い。 ただし、 定数にしておいても、 数回の繰り返し 演算で終端発散成分誤差 errqを許容範囲内に収めることができる。 次いで S 7 1 4に進み、 パラメ一夕感度 r (Δ aに対する終端発散成 分誤差の変化の割合) が図示の式から求められる。 さらに、 S 7 1 6に 進み、 a = -errq/r, すなわち S 7 0 6で求めた終端発散成分誤差 errq を、 S 7 1 4で求めたパラメータ感度 rで割った値を高さ aとす る台形パターンの修正量を図 44の関係に従って仮目標 ZMPパターン に加えることにより、 仮目標 Z MPパターンが修正される (新たな仮目 標 Z MPパターンが決定される)。
次いで S 7 0 2.に戻る。 そして、 S 7 0 8の判断結果が NOである限 りは、 上記した S .7 0 2〜 S 7 1 6の処理が繰り返され、 S 7 0 8の判 断結果が YE Sになったときには、 その繰り返しル一プ (S 7 0 0 ) を 抜けて S 7 1 8に進む。 霞画 09472
123
S 7 1 8では、 仮今回歩容の終端上体姿勢角と定常歩容の初期上体姿 勢角との差、 および仮今回歩容の終端上体姿勢角速度と定常歩容の初期 上体姿勢角速度との差などを基に、 今回歩容の上体姿勢角軌道が定常歩 容の上体姿勢角軌道に近づくように、 今回歩容の上体姿勢復元モーメン ト Z MP換算値 ( Z MPrec) のパターンが決定される。 ここで決定す る ZMPrec は、 後述する今回歩容瞬時値の生成処理で、 床反力水平成 分許容範囲が十分に大きいものとなる期間 (片脚支持期内の期間) にお いて、 上体姿勢角軌道を定常歩容につながらせる (近づける) ように上 体姿勢角加速度を発生させても、 今回歩容終端発散成分と定常歩容初期 発散成分との一致性 (S 7 0 8の条件) を維持できるように、 仮目標 Z MPを修正するためのものである。
この ZMPrec は、 前記定常歩容生成処理で説明したものと同様に台 形状のパターンであり、 具体的には次のように決定される。 すなわち、 図 3 0における第 2旋回歩容の期間の Z M Prec の台形パターンと同様 に、 今回歩容の ZMPrec の台形パターンを設定し、 台形の頂点 (折れ 点) の時刻は既知とする (より具体的には台形の折れ点の時刻を目標 Z MPの折れ点時刻に合わせる) と共に、 台形高さを未知数とし、 以下の ように ZMPrec の台形高さ (パラメ一タ) が求められる。 ただし、 Z M Prec の台形パターンが立ち上がり始める時刻を Ta とし、 台形パタ —ンから 0に戻る時刻を Tb とする。
上記のように上体姿勢復元モーメント Z MP換算値パターンの未知パ ラメ一夕がひとつの場合には、 今回歩容の終端において上体姿勢角と上 体姿勢角速度の両方を定常歩容に連続につなげることは一般的にはでき ない。 そこで、 本参考例では、 複数歩に渡って徐々に、 生成される歩容 の状態が定常歩容の状態に近づけるように、 未知パラメ一夕を決定する こととする。 PC蘭 004/009472
1 24 補足すると、 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、 νθ ί と する。
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を次のように定義する。 2 5
A θ 1 = θ 1- Θ lorg 式 5 0
Ανθ 1 =-ν θ 1-ν θ lorg …式 5 1
Δ 0 1および ΔνΘ 1 は、 Ζ M Pi'ec修正歩容と本来の定常歩容を第 1 旋回歩容の終端まで生成した時点において、 両者間における上体姿勢角 の差及ぴ角速度の差を意味する。 もし、 Δ 0 1 および Δν0 1 が 0にな れば、 Z M Prec 修正歩容に引き続いて、 今回歩容と同様のァルゴリズ ムによって、 Z M Precパターンの台形高さを前記 acyc2 として第 2旋 回歩容が生成されると、 この歩容は、 本来の定常歩容に一致する。
したがって、 Δ 01および Δν01が 0となる今回歩容台形高さ bcurr, 第 1旋回歩容台形高さ bl を求め、 求めた bcurr を今回歩容の台形高さ として最終的に決定すれば良い。
ところで、 ロボッ ト 1の上体姿勢角に関する動力学モデルが図 1 2に 示すフライホイール FHx、 FHy のような線形特性を持つことから、 厶 01および Δν ΐは、 今回歩容台形高さ bcurr、 第 1旋回歩容台形高さ bl、 仮今回歩容の終端上体姿勢角と定常歩容の初期上体姿勢角の差 Θ err, 仮今回歩容の終端上体姿勢角速度と定常歩容の初期上体姿勢角速 度の差 v0 errと以下の関係を持つ。 厶 0 l = cll * bcurr + cl2 * bl+ Θ err+ el * v Θ err 式 5 2 厶 v0 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 err が求められる。 次いで、 式 5 2 , 5 3の係数でぁる (;11、 cl2、 c21、 c22 el、 e2 が、 今回歩容、 第 1旋回歩容の歩容周期、 上体姿勢復元モーメント Z MP換 算値 Z M P rec パターンのパラメ一夕 (特に時間に関するパラメ一夕) などを基に求められる。
次いで式 5 2、 式 5 3の右辺が 0 となるように今回歩容台形高さ bcurr 第 1旋回歩容台形高さ bl が決定される。 すなわち、 式 5 2、 式 5 3の左辺を 0とした連立方程式を解く ことによって、 bcurr、 bl が 求められる。
最後に、 今回歩容の上体姿勢復元モーメント Z MP換算値 ( Z MP rec) の台形パターンの台形高さが、 上記求めた今回歩容台形高さ bcurrに設定される。
次いで S 7 2 0に進み、 現在の仮目標 Z MPパターン (S 7 0 0の繰 り返しループを抜けたときの仮目標 ZMPパターン) に、 S 7 1 8で上 記のように求めた上体姿勢復元モーメント Z MP換算値パターンを加算 してなるパターンが今回歩容の目標 ZMPパターンどして決定される。 なお、 この処理は、 S 7 1 0において Aa の高さの台形パターンを仮目 標 Z MPパターンに加える処理と同様である。
以下に仮目標 Z MPパターンに上体姿勢復元モーメント Z MP換算値 パターンを加算した理由を述べる。
S 7 0 0のループにおいて生成される仮今回 容は、 上体姿勢復元モ 一メント Z M P換算値 Z M Prec を 0 ( Z M P rec の台形パターンの高 さパラメータを 0.) にして生成されたものである。 このようにして S 7 0 0のループで最終的に生成された仮今回歩容では、 その上体位置速度 は、 定常歩容に連続し、 もしくは近づくが、 上体姿勢角は、 定常歩容の 上体姿勢角からずれ、 場合によっては発散してしまう。
S 7 1 8で求められた上体姿勢復元モーメント Z M P換算値パターン は、 上体姿勢角の定常歩容に対するずれを 0に近づけるための上体姿勢 角加速度を発生させるものである。
しかし、 S 7 0 0のループで最終的に得られた仮目標 Z MPパターン を修正することなく、 S 7 1 8で求められた上体姿勢復元モーメント Z MP換算値パターンに応じた上体姿勢角加速度を発生させると、 動力学 的平衡条件 (口ポッ トの重力と慣性力との合力が目標 ZMPに作用する モーメントが鉛直成分を除いて 0になること) を満足させるために、 上 体水平位置軌道を前記仮今回歩容の上体水平位置軌道からずらさざるを 得なくなる。 そこで、 本実施例では、 上体水平位置軌道を S 7 0 0のル —プで最終的に得られるものからずらさなくて済むように、 Z M Prec によって仮目標 ZMPパターンを修正することとした。
前記仮今回歩容の運動に加えて、 S 7 1 8で求めた上体姿勢復元モー メント Z MP換算値パ夕一ンに対応する上体姿勢角加速度を発生させる と、 ZMP (運動によって発生する重力と慣性力の合力の鉛直成分を除 くモーメントが 0になる点) は上体姿勢復元モーメント Z MP換算値だ けずれる。 したがって、 逆に、 仮目標 Z MPパターンに上体姿勢復元モ 一メント Z MP換算値パターンを加算したパターンを目標 Z MPパタ一 ンとして、 S 7 1 8で求めた上体姿勢復元モーメント Z MP換算値パタ ーンに対応する上体傾斜モードの上体姿勢角加速度を発生させながら、 目標 Z MPパターンを満足する今回歩容を生成すれば、 前記仮今回歩容 と同じ上体並進運動となる。
以上が、 仮目標. Z MPパターンに上体姿勢復元モーメント Z MP換算 値パターンを加算したパターンを目標 Z MPパターンとした理由である, 次いで S 7 2 2に進み、 仮今回歩容の終端逆位相腕振り角と定常歩容 の初期逆位相腕振り角との差および仮今回歩容の終端逆位相腕振り角速 度と定常歩容の初期逆位相腕振り角速度との差を基に、 今回歩容の逆位 相腕振り角軌道が定常歩容の逆位相腕振り角軌道に近づくように、 逆位 相腕振り復元角加速度パターンが決定される。 このパターンの決定方法 は、 S 7 1 8で上体姿勢復元モーメント Z M P換算値パターンを決定す る方法と、 変数名が次のように異なること以外は、 ほぼ同じである。 上体姿勢復元モーメント Z M P換算値パターン—逆位相腕振り復元角加 速度パターン
水平成分—モーメント鉛直成分 以下に詳細を説明する。 ここで決定する逆位相腕振り復元角加速度パ ターンは、 後述する今回歩容瞬時値の生成処理で、 床反力モーメント鉛 直成分許容範囲が十分に大きいものとなる期間 (片脚支持期内の期間) において、 逆位相腕振り角軌道を定常歩容につながらせる (近づける) ように修正するためのものである。
この逆位相腕振り復元角加速度パターンは、 前記定常歩容生成処理で 説明したものと同様に台形状のパターンであり、 具体的には次のように 決定される。 すなわち、 図 3 6における第 2旋回歩容の期間の逆位相腕 振り復元角加速度の台形パターンと同様に、 今回'歩容の逆位相腕振り復 元角加速度の台形パターンを設定し、 台形の頂点 (折れ点) の時刻は既 知とする (より具体的には台形の折れ点の時刻を目標 Z M Pの折れ点時 刻に合わせる) と共に、 台形高さを未知数とし、 以下のように逆位相腕 振り復元角加速度の台形高さ (パラメ一夕) が求められる。 ただし、 逆 位相腕振り復元角加速度の台形パターンが立ち上がり始める時刻を Ta とし、 台形パターンから 0に戻る時刻を Tbとする。 上記のように逆位相腕振り復元角加速度パターンの未知パラメ一夕が ひとつの場合には、 今回歩容の終端において逆位相腕振り角と逆位相腕 振り角速度の両方を定常歩容に連続につなげることは一般的にはできな い。 そこで、 本参考例では、 複数歩に渡って徐々に、 生成される歩容の 状態が定常歩容の状態に近づけるように、 未知パラメ一夕を決定するこ ととする。
補足すると、 1歩容の中での逆位相腕振り復元角加速度パターンを複 雑にし、 未知パラメ一夕を 2つ以上にして、 今回歩容の終端において逆 位相腕振り角と逆位相腕振り角速度との両者を定常歩容に連続につなげ ても良いが、 逆位相腕振り復元角加速度パターンがジグザグに大きく変 動し過ぎる恐れがある。
前述のごとく S 7 0 2で逆位相腕振り復元角加速度パターンの台形高 さを 0として求めた仮今回歩容の終端逆位相腕振り角と定常歩容の初期 逆位相腕振り角との差を求め、 これを S azerr とする。 また、 仮今回歩 容の終端逆位相腕振り角速度と定常歩容の初期逆位相腕振り角速度との 差を求め、 これを v 0 zerrとする。
ここで、 逆位相腕振り復元角加速度パターンの台形高さをある値 bzcurr として今回歩容が生成され、 引き続いて、 今回歩容と同様のァ ルゴリズムによって第 1旋回歩容が生成されると想定する。 ただし、 第 1旋回歩容の逆位相腕振り復元角加速度パターンは、 図 2 4の S 3 1 4 において求められた第 1旋回歩容の逆位相腕振り復元角加速度パターン (高さが前記 azcycl である図 3 6の台形パターン) とある値 bzl の和 であるとする。
このようにして生成された歩容を逆位相腕振り復元角加速度修正歩容 と呼び、 その終端 (第 1旋回歩容の終端) 逆位相腕振り角と角速度をそ れぞれ 0 zl、 v 0 z l とする。 P 画 004/009472
130
S 0 2 4における定常歩容の初期状態を求めるサブルーチンの処理が 完了した時点で求められた本来の定常歩容 (最終的に S 3 1 4において 決定された定常歩容初期逆位相腕振り角および角速度を初期値とし、 逆 位相腕振り復元角加速度パターンを S 3 1 4において求められたパター ン (高さが azcycl である図 3 6の台形パターン) とした場合の定常歩 容) の第 1旋回歩容終端逆位相腕振り角と角速度をそれぞれ Θ zlorg、 V Θ zlorgとする。
ここで、 Δ ζ1、 Δν0 zlを次のように定義する。 Δ 0 zl =0 zl- Θ zlorg …式 1 0 5 0
Δν^ zl =ν θ zl— νθ zlorg …式 1 0 5 1
Α θ zl および Δνθ ζΐ は、 逆位相腕振り復元角加速度修正歩容と本 来の定常歩容を第 1旋回歩容の終端まで生成した時点において、 両者間 における逆位相腕振り角の差及び角速度の差を意味する。 もし、 △ > zl および Δν ζΐ が 0になれば、 逆位相腕振り復元角加速度修正歩容 に引き続いて、 今回歩容と同様のアルゴリズムによって、 逆位相腕振り 復元角加速度パターンの台形高さを前記 azcyc2 として第 2旋回歩容が 生成されると、 この歩容は、 本来の定常歩容に一致する。
したがって、 Δ 0 zl および Δ V 0 zl が 0 となる今回歩容台形高さ bzcurr, 第 1旋回歩容台形高さ bzl を求め、 求めた bzcurr を今回歩容 の台形高さとして最終的に決定すれば良い。
ところで、 ロボッ ト 1の逆位相腕振り角に関する動力学モデルが図 1 2に示すフライホイール FHazのような線形特性を持つことから、 Θ zl および Δν ζΐ は、 今回歩容台形高さ bzcurr、 第 1旋回歩容台形高 さ bzl、 仮今回歩容の終端逆位相腕振り角と定常歩容の初期逆位相腕振 2
1 31 り角の差 Θ zerr 仮今回歩容の終端逆位相腕振り角速度と定常歩容の初 期逆位相腕振り角速度の差 v0 zerrと以下の関係を持つ。
Δ Θ zl= czll * bzcurr + czl2 * bzl + 9zerr + ezl * v0zerr
…式 1 0 5 2 Δ v9zl = 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 4009472
132
0 3 0に進み、 今回歩容瞬時値が決定される。
S 0 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の判定結果が N〇であるならば、 S 1 0 0 4に進み、 Y E Sであるならば S 1 0 0 6に進む。
S 1 0 0 4では、 上体傾斜角 ·逆位相腕振り角復元期間でない場合の 上体水平加速度 α、 上体角加速度 i3、 逆位相腕振り角加速度 JQ a 算出処 理 (図 2 6の S 5 0 4から S 5 2 8 ) と同様の処理を行う。
S 1 0 0 6に進む場合では、 まず、 S 1 0 0 6において、 仮に上体並 進モードの運動をさせた場合に今回 (時刻 k) 目標 ZMPを満足するた めに必要な上体水平加速度 atmpを求める。
次いで S 1 0 0 8に進み、 現在時刻における上体傾斜復元モーメント ZMP換算値パターンの瞬間値 Z MPrec を、 S '7 1 8において決定し た上体傾斜復元モーメント Z MP換算値パターンに関するパラメータを 基に算出する。
次いで S 1 0 1 0に進み、 現在時刻における逆位相腕振り復元角加速 度パターンの瞬間.値 β arec を、 S 7 2 2において決定した逆位相腕振 り復元角加速度パターンに関するパラメータを基に算出する。
次いで S 1 0 1 2に進み、 図示する式によって、 上体傾斜モードの上 004鐘 72
133 体角加速度 (上体傾斜角加速度) i3が決定される。
次いで S 1 0 1 4に進み、 図示する式によって、 上体水平加速度ひが 決定される。
' 次いで S 1 0 1 6に進み、 S 1 0 1 0で算出した逆位相腕振り復元角 加速度パターンの瞬間値)3 arec と基準逆位相腕振り角加速度 0 aref (基準逆位相腕振り角を 2階微分した値) の和を目標逆位相腕振り角加 速度 β aに代入する。
次いで S 1 0 1 8に進み、 上体水平加速度が aの場合の床反力水平成 分 Fxを求める。
次いで S 1 4 1 4に進み、 上体水平加速度と上体姿勢角加速度を積分 して上体水平速度と上体姿勢角速度 (上体傾斜角速度) を算出する。 こ れをさらに積分して、 上体水平位置と上体姿勢 (上体傾斜角) を決定す る。 なお、 上体姿勢のうちの上体ョ一角は、 本参考例では基準上体ョー 角に決定される。
次いで 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 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の実際の姿勢) との偏差) のうちの姿勢傾斜角偏差 0 errx, 4009472
1 3 5
Θ erry (詳しくは目標上体姿勢のうちの鉛直方向に対する傾斜角に対す る実上体姿勢のうちの鉛直方向に対する傾斜角の偏差で、 ロール方向 ( X軸回り) の姿勢傾斜角偏差が 0 errx であり、 ピッチ方向 (Y軸回 り) の姿勢傾斜角偏差が 0 erry である) が姿勢センサ 5 4を介して検 出され、 その検出値は姿勢傾斜安定化制御演算部 1 1 2に送られる。 こ の姿勢傾斜安定化制御演算部 1 1 2で、 ロポッ 卜 1の実上体姿勢角を目 標上体姿勢角に復元するための目標全床反力中心点 (目標 Z M P ) まわ り補償全床反カモ一メント水平成分が算出されて複合コンプライアンス 動作決定部 1 0 4に送られる。
より具体的には、 本参考例では、 補償全床反力モーメント水平成分 Mdmdxyは、 例えば P D制御則を用いて次式により決定される。 補償全床反カモ一メント水平成分 Mdmdxy
= K0 b *上体姿勢傾斜角偏差
+Kc b *上体姿勢傾斜角速度偏差
…… d 2 5 ここで、 K 0 b、 Κ ω bは所定のゲインである。 また、 上体姿勢傾斜 角速度偏差は、 上体姿勢傾斜角偏差の時間微分値であり、 目標上体姿勢 傾斜角速度に対する実上体姿勢傾斜角速度の偏差を意味する。 また、 上 体姿勢傾斜角偏差は、 より詳しくは、 口ポッ ト の上体 3のロール方向 (X軸回り) の姿勢傾斜角偏差と、 ピッチ方向 (Y軸回り) の姿勢傾斜 角偏差とからなるベクトルである。
また、 口ポッ ト 1に生じた前記実上体姿勢角偏差のうちのョ一角偏差 θ βννζ (詳しくは.実上体姿勢角偏差のうちのョー方向 (Ζ軸回り) の姿 勢角偏差が 0 errz である) が姿勢センサ 5 4を介して検出され、 その 検出値はョ一安定化制御演算部 1 1 3に送られる。 このョー安定化制御 4009472
136 演算部 1 1 3で、 口ポッ ト 1の実上体ョ一角およびノまたは角速度を目 標上体ョ一角および または角速度に収束させるための目標全床反力中 心点 (目標 Z MP) まわり補償全床反力モーメント鉛直成分が算出され て複合コンプライアンス動作決定部 1 0 4に送られる。 複合コンプライ アンス動作決定部 1 0 4は、 入力値に基づいて目標床反力を修正する。 具体的には、 目標全床反力中心点 (目標 ZMP) 回りに補償全床反カモ —メントが作用するように目標床反力を修正する。
より具体的には、 本参考例では、 補償全床反力モーメント鉛直成分 Mdmdzは、 例えば P D制御則を用いて次式により決定される。
補償全床反力モーメント鉛直成分 Mdmdz=K0 bz*上体ョ一角偏差
+ Kcobz*上体ョ一角速度偏差 d 2 6
ここで、 K 0 bz、 K obz は所定のゲインである。 また、 上体ョ一角 速度偏差は、 上体ョ一角偏差の時間微分値であり、 目標上体ョー角速度 に対する実上体ョー角速度の偏差を意味する。
補足すると、 補償全床反力モーメント鉛直成分 Mdmdz を前記式 d 2
6により求めるとき、 足平 2 2と床の間の鉛直軸まわり回転滑りまたは 鉛直軸まわり回転振動を防止したいだけなら、 K 0bz を 0にすれば良 い。 上体ョ一角偏差までも 0に近づけようとすると、 実床反カモ一メン ト鉛直成分が大きくなる傾向があるからである。
複合コンプライアンス動作決定部 1 0 4は、 入力値に基づいて目標床 反力を修正する。 .具体的には、 目標全床反力中心点 (目標 ZMP) 回り に補償全床反カモ一メント水平成分が作用するように目標床反力モーメ ント水平成分を修正し、 さらに、 目標歩容に動力学的に釣り合う目標全 床反力中心点 (目標 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において、 今回歩容パラメータは、 前述のごとく、 今回歩容 の終端発散成分が、 定常旋回歩容の初期発散成分 Q [ 0 ] を今回歩容の 支持脚座標系から見た値である Q " に一致するように修正される。
実は、 発散成分とは、 動力学モデルを用いて今回歩容パラメータに従 つて歩容を生成し、 そのまま連続して定常旋回歩容パラメータに従って 歩容を繰り返し生成したとき、 生成した歩容の上体水平位置が定常旋回 歩容に収束するか否かを評価する指標である。 収束する場合にちようど. 今回歩容の終端発散成分が、 定常旋回初期発散成分 ci [ 0 ] を今回歩容 の支持脚座標系から見た値である Q " に一致するように、 本来、 発散成 分は定義されなければならない。 式 1 0で定義した発散成分は、 実は、 上記の性質を近似的に満足する 発散成分である。
したがって、 本参考例においては、 動力学モデルを用いて今回歩容パ メ一夕に従って歩容を生成し、 そのまま連続して定常旋回歩容パラメ 一夕に従って歩容を繰り返し生成したとき、 生成した歩容の上体水平位 置が定常旋回歩容の上体水平位置に収束する (近づく) ように、 今回歩 容パラメータを修正した、 と言える。
これは、 P C T公開公報 WOZ 02Z 40224のものと同様である。
特に、 本参考例においては、 その条件 (今回歩容が定常歩容に近づ く) を満足するように、 今回歩容の歩容パラメ一夕のうちの目標 Z M P パターンを修正するようにした。 図 4 7を参照して説明すると、 同図に 符合 Bで示す軌道は、 上記したように歩容の境界において発散成分が一 致するように生成した上体水平位置軌道を示す。
同図に符合 Aで示す軌道は、 定常旋回歩容との境界における上体水平 位置速度が一致するように今回歩容を生成し、 続いて定常歩容を繰り返 し生成した場合の上体水平位置軌道を示す。
図示の如く、 符合 Bで示す軌道は、 今回歩容と最初の定常旋回歩容と の境界においては、 一般的に符合 Aで示す軌道からずれているが、 その 後、 徐々に符合 Aで示す軌道に収束し (近づき)、 次の定常旋回歩容時 期において符合 Aで示す軌道にほぼ一致する。 このように、 歩容境界で 発散成分のみを一致させる歩容生成手法でも、 歩容境界で位置速度両方 を一致させる歩容生成手法と同様、 歩容の発散を防止することができる, 尚、 同図に符合 Cで示す例は、 それらを考慮せずに軌道を生成した場合 の例を示す。 このような場合は、 生成した軌道は経時的に発散してしま う。 当然、 目標 Z M Pパターンを複雑なものにし、 複数のパラメ一タを 調整して、 位置速度両方を一致させても良いが、 目標 Z M Pパターンが ジグザグになる恐れがある。 なお、 位置速度両方を一致させれば、 発散 成分も一致するから、 位置速度両方を一致させる方法も発散成分を一致 させる方法の特殊例であると言える。
'またさらに、 本参考例においては、 動力学モデルを用いて今回歩容パ ラメ一夕に従って歩容を生成し、 そのまま連続して定常旋回歩容パラメ 一夕に従って歩容を繰り返し生成したとき、 生成した歩容の上体姿勢角 が定常旋回歩容の上体姿勢角に収束し (近づき)、 もしくは一致するよ うに、 今回歩容パラメータを修正した、 と言える。 但し、 厳密には、 今 回歩容直後の第 1旋回歩容だけは、 前記の如く求めた第 1旋回歩容台形 高さ bl, bzl によって修正された歩容にする必要がある。 別の言い方 をすれば、 今回歩容と第 1旋回歩容とを合わせた歩容を今回歩容と見な せば、 本参考例においては、 上記の如く歩容を繰り返し生成したとき、 生成した歩容の上体姿勢角が第 2旋回歩容と第 1旋回歩容とからなる定 常歩容の上体姿勢角に収束し (近づき)、 もしくは一致するように、 今 回歩容パラメ一夕を修正した、 と言える。
次に、 本参考例の変形態様を以下にいくつか説明する。 なお、 以下に 説明する変形態様は、 後述の各実施形態においても同様である。
本参考例では、 理解を容易にするために、 床反力水平成分許容範囲は 前後方向 (X軸方向) 成分と左右方向 (Y軸方向) 成分それぞれ独立に 設定できることとしたが、 前後方向と左右方向の関係式で表した方が、 よりスリツプし難い歩容が生成される。
例えば、 次式のようにいわゆる摩擦円を許容範囲としても良い。
(床反力水平成分の X成分) * (床反力水平成分の X成分)
+ (床反力水平成分の Y成分) * (床反力水平成分の Y成分) ≤ (ka * * Fz) * (ka * * Fz) 9472
1 4 0
…式 5 9 ただし、 Fz は、 目標床反力鉛直成分を は摩擦係数、 ka は 1以下の 正の定数を表す。
'ただし、 以上のように、 床反力水平成分許容範囲を前後方向と左右方 向の関係式で表す場合、 許容範囲を同時にあるいは交互に満足するよう に、 サジタルプレーン上での運動とラテラルプレーン上での運動を同時 あるいは交互に求める必要がある。
また、 床反力水平成分許容範囲と床反力モーメント鉛直成分許容範囲 とを上記のごとく別々に設定する代わりに、 床反力水平成分と床反カモ 一メント鉛直成分との組の許容範囲を設定するようにしても良い。 床反 力水平成分が大きくなるにつれ、 床反力モーメント鉛直成分の摩擦限界 は、 小さくなる。 また、 床反力モーメント鉛直成分が大きくなるにつれ, 床反力水平成分の摩擦限界は、 小さくなる。 したがって、 このことを鑑 みて床反力水平成分と床反カモ一メント鉛直成分との組の許容範囲を設 定するようにした方が、 より現実の摩擦限界特性に近い許容範囲を設定 することができる。 具体的には、 床反力水平成分の絶対値と床反力モー メント鉛直成分の絶対値との重み付き平均に対して許容範囲を設定して も良い。
前記参考例では、 床反力水平成分と目標 Z M Pまわりの床反力モ一メ ント水平成分を適切な値にするために、 上体傾斜モードと上体並進モー ドとの 2つの運動モ一ドを用いたが、 これら以外の運動モードを用いて も良い。
例えば、 図 4 8のように、 股関節を中心に上体姿勢を回転させると、 全体重心まわりの角運動量が変化すると共に全体重心も変化する。 この 運動と前記上体並進モードをある所定の割合で重ね合わせると (合成す ると)、 前記上体傾斜モードとほとんど同じ運動になり、 床反力水平成 分が発生しなくなる。 したがって、 これを改めて前記上体傾斜モードと みなせば、 本参考例のアルゴリズムにしたがって、 同様の歩容を生成す ることができる。
' したがって、 運動モードのひとつが床反力水平成分を発生しない運動 モードである必要もない。 いかなるモードの組み合わせであっても、 床 反力水平成分と目標 Z M Pまわりの床反力モーメン卜との発生の割合が 異なるふたつの運動モードを用いさえすれば、 上記例のように、 任意の 床反力水平成分と目標 Z M Pまわりの床反力モーメントとを発生させる ことができるからである。
また、 上体姿勢を変化させる運動モード以外の運動モードを用いても 良い。 ただし、 なるべく小さい変位で大きな床反力水平成分または g標
Z M Pまわりの床反カモ一メントが発生できる運動モ一ドを選ぶことが 好ましい。
例えば、 左右の腕体の先端位置を同一方向に振りまわす運動モ一ド、 接地していない (空中に存在する) 足平の位置を摂動させる運動モ一ド でも良い。 ただし、 遊脚軌道を摂動させる場合には、 着地位置が変わら ないように養地直前までには、 摂動量を実質的に 0に戻すべきである。 なお、 左右の腕体の先端位置を同一方向に振りまわす運動モ一ドと逆位 相腕振りモードとを併用してもよいことはもちろんである。
また、 3つ以上の運動モードを用いても良い。 '
また、 選択した運動モードのうちの少なくとも 2つは、 その運動モー ドによる床反力水平成分と目標 Z M Pまわりの床反力モーメントとの発 生比率が、 互いに異なるものである必要がある。 そうでないと、 一般的 に連立方程式の解がなくなる (各運動モードの挙動を一義的に決定でき ない) からである。
さらにできる限り、 床反力水平成分をあまり変化させないで目標 Z M 4 009472
1 2
Pまわりの床反力モーメントを十分に大きく変化させることができる運 動モードと、 目標 Z M Pまわりの床反カモ一メントをあまり変化させな いで床反力水平成分を十分に大きく変化させることができる運動モード とを組み合わせることが望ましい。
言いかえると、 全体重心をあまり変化させないで角運動量を十分に大 きく変化させることができる運動モードと、 角運動量をあまり変化させ ないで全体重心を十分に大きく変化させることができる運動モードとを 組み合わせることが望ましい。 このようにすると、 運動モードの変位が 小さくなるからである。
また、 床反力モーメント鉛直成分が許容範囲を越えないようにするた めに (スピン力をキャンセルするために)、 逆位相腕振りモードの代わ りに、 上体ョ一回転モードを用いても良い。 上体ョ一回転モードを用い る場合には、 ロボッ ト 1の上体 3を腰寄りの部分 (例えば図 1の 5 4の 部材の下側の部分) とその上側の部分 (例えば図 1の 5 4の部材の上側 の部分) とに分割し、 上側の部分が腰寄りの部分に対してョ一方向に (例えば上体 3の体幹軸回り) に回転し得るように設けておく ことが好 ましい。 このようにすると、 脚体 2 , 2の姿勢に影響を及ぼすことなく . 上体 3の上側の部分を回転させて、 床反力モーメント鉛直成分を調整す ることができる。 このようにした場合の参考例は、 例えば前記参考例で 逆位相腕振り角、 その角速度およびその角加速度'を決定する代わりに、 上体 3の上側の部分の回転角、 その角速度およびその角加速度を決定す るようにすればよい。 この場合、 両腕体 5, 5は、 例えば上体 3の上側 の部分に対する相対位置を一定とすればよい。 伹し、 上体 3の上側の部 分のョ一回転に加えて、 両腕体 5, 5の逆位相腕振り動作を加えてもよ いことはもちろんである。
また、 床反力モーメント鉛直成分が発生するものであれば、 腕、 上体 以外の部位を変位させる運動モードを用いても良い。
例えば、 空中期において、 両脚先端を前後逆方向に動かすモードを用 いても良い。
' あるいは、 床反力モーメント鉛直成分が発生するいくつかの運動モ一 ドを併用しても良い。 例えば、 逆位相腕振りモードと上体ョ一回転モ一 ドを併用しても良い。
また、 上体ョ一回転モードおよび逆位相腕振りモードは、 全体重心位 置が変わらないように (言い換えると床反力水平成分を発生させずに) 床反力モーメント鉛直成分を発生させるモードであるが、 全体重心位置 が変わってしまう (言い換えると床反力水平成分を発生してしまう) 運 動でも良い。 上体並進モードと組み合わせることにより、 床反力水平成 分を調整することができるからである。
前記参考例に用いた動力学モデル (図 1 2の動力学モデル) 以外にも 以下のモデルを用いても良い。
1 ) 図 4 9に示したように複数のリンクに質点を設定した非線形なモデ ル (多質点モデル)。 このモデルの各リンクには、 イナーシャ (慣性モ —メント) が設定されていてもよい。
2 ) 本願出願人による P C T公開公報 WO/ 02/ 40224に示された 3質 点モデル
3 ) 上体ョ一回転モードあるいは逆位相腕振りモードによって生じる慣 性力のモーメントを無視したモデル。
4 ) 重力と慣性力との合力 (またはこれと釣り合う床反力) と上体並進 運動との関係を表す部分モデルと、 上記合力と上体姿勢回転運動 (上体 傾斜運動と上体ョ.一回転運動) の関係を表す部分モデルとを分離して持 つ分離型モデル。 例えば、 図 1 2に示す質点は、 上記合力と上体並進運 動との関係を表す部分モデルであり、 図 1 2に示すフライホイールは、 4 009472
1 4 4 上記合力と上体姿勢回転運動との関係を表す部分モデルである。
なお、 上記 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質点 +フライホイールのモデル) を用いて定常歩容を生成するよ うにしてもよい。 この場合の定常歩容の生成処理では、 前記参考例にお いて、 脚質点 2 mの質量を 0として前記図 2 5の S 4 0 8、 S 4 1 2の 処理を行なうようにすればよい。 このようにすると、 定常歩容の生成処 理における演算量を大幅に削減できる。
尚、 前記参考例において、 ブロック線図、 フローチャート、 およびァ ルゴリズムなどは、 演算処理順序を変えるなどの等価変形をしても良い, また、 適宜口一パスフィルタを揷入しても良い。 '
また、 前記参考例を 2足移動ロボッ トに関して説明してきたが、 3足 以上の多脚口ポッ トにも応用することができる。
前記参考例のごとく、 探索手法を用いたり、 部分的に解析手法を用い たりして、 定常歩容の初期状態 (主に初期上体水平位置速度、 初期上体 鉛直位置速度および逆位相腕振り角 · 角速度のこと) を決定する手法の 代わりに、 あらかじめ、 上記手法を用いて様々な定常歩容パラメータに 対して計算しておき、 定常歩容パラメ一夕と定常歩容の初期状態との関 係をマップ化あるいは近似式化して記憶して置き、 実移動時には、 マツ プ化あるいは近似式化された上記関係を基に、 定常歩容の初期値を決定 しても良い。
さらには、 マップ化あるいは近似式化された上記関係と上記関数 f を 合成した関数をマップ化あるいは近似式化して記憶しても良い。 すなわ ち、 前記した足平軌道パラメータ、 床反力鉛直軌道パラメータ等からな る定常歩容パラメ一夕から、 定常歩容の発散成分を直接求める関数をマ ップ化あるいは近似式化して記憶しても良い。 例えば、 複数種類の代表 的な定常歩容パラメ一夕の組のそれぞれに対して、 事前に定常歩容を生 成しておき、 各組の定常歩容パラメータに対する定常歩容の初期状態 (図 1 3の S 0 2 4で求めるもの) を求めておき、 さらにその各組の定 常歩容パラメータと、 定常歩容初期状態との関係を表すマップをあらか じめ作成しておく。 そして、 目標歩容を生成する際に、 決定された定常 歩容パラメータの組から、 上記マップに基づいて選択あるいは補間によ つて定常歩容初期状態を求めるようにすればよい。 このようにすれば、 今回歩容の生成毎に、 定常歩容を生成する必要がなくなり、 目標歩容生 成処理の演算量を大幅に削減できる。
定常歩容につなげる (近づける) ための今回歩容の修正方法として、 本参考例では、 今回歩容の目標 Z M Pパラメ一ダを修正したが、 それ以 外のパラメータを修正しても良い。
たとえば、 今回歩容の遊脚の空中での軌道を変えても良い。 また、 た とえば、 上体水平位置が定常歩容ょりも後方にずれてしまいそうな場合 には、 遊脚を離床後すばやく前方に移動させて遊脚重心位置を前方にず らす。 こうす'ることにより、 目標 Z M Pを満足するための上体水平位置 は、 前方により一層加速せざるを得なくなる。 この結果、 上体水平位置 が今回歩容終端において、 より一層前方に移動し、. 定常歩容に一致させ ることができる。
また、 目標 Z M Pパラメータを修正する代わりに、 今回歩容の周期を 正しても良い。 たとえば、 上体水平位置が定常歩容よりも後方にずれ てしまいそうな場合には、 今回歩容の周期を長くすれば良い。 今回歩容 の周期を長くことで、 上体水平位置が移動する時間が延び、 それだけ前 方に移動できるからである。
ただし、 探索手法によって、 上体水平位置等の適正値を決定するとき に、 目標 Z M Pパラメ一夕を修正する場合では、 目標 Z M Pの修正量に ほぼ比例して、 今回歩容終端上体水平位置が変化するので、 上記適正値 の探索回数が少なくて済む。 これに対して、 遊脚重心軌道や歩容の周期 を修正する場合には、 その修正に対して、 今回歩容終端上体水平位置が, かなり非線形に変化するので、 上記適正値の探索により多くの探索回数 を要する。
定常歩容につなげる (近づける) ための今回歩容の修正方法として、 本参考例では、 今回歩容の目標 Z M Pパラメータを修正した。 この方法 では、 場合によっては、 目標 Z M Pパラメ一夕の修正量 (前記図 3 4の 修正量 a) が過大になることがある。 たとえば、 その場でホッピングし ている歩容からいきなり高速で移動する要求 (走行要求) が与えられる と、 高速の定常歩容 (走行の定常歩容) につなげる (近づける) ために 目標 Z M Pパラメ一夕は、 進行方向に対して後ろに極端に大きくずらす 必要が生じる。 この場合には、 上記したように目標 Z M Pパラメータ以 外の歩容パラメ一夕も修正することが望ましい。 但し、 この場合では、 実は、 急激な加速.を要求すること自体に無理があったわけであるから、 要求値自身を修正しても良い。
要求値の修正を行なう場合には、 例えば、 とりあえず本参考例に示し た手順に従って、 要求 (要求パラメ一夕) を満足する定常歩容を求め、 この定常歩容につながるように今回歩容パラメ一夕を決定した時点で、 今回歩容の目標 Z MP軌道の安定余裕が少なくなり過ぎたか否かを判定 する。 そして、 安定余裕が少なくなり過ぎた場合 (いわゆる支持多角形 から目標 Z M Pが外れたり、 支持多角形の端部付近に目標 Z MPが位置' するような場合) には、 要求を修正するようにすれば良い。
または、 あらかじめ歩容の加減速度 (次回歩容初期速度—今回歩容初 期速度) ノ今回歩容の周期) の許容範囲を設定して置き、 要求 (歩容周 期に関する要求パラメータ) を受けた時点で、 該要求に対応する加減速 度を求め、 その求めた加減速度が許容範囲を越えていたら、 許容範囲に なるように、 要求を修正しても良い。
補足すると、 前記 ΔΜρ、 Δ Fp, ΔΜ r , AF r , Δ Maz および Δ Mbz は、 上記のごとく単純な動力学モデルを用いる場合には、 動力学 演算により解析的に求めても良いが、 一般的なより複雑な動力学モデル を用いる場合には、 上体 3を上体並進モードで微小量だけ加速または上 体傾斜モードで微小量だけ加速させた場合の床反力を求め、 加速させな かった場合の床反力との差を求め、 この差を上記微小量で割ることによ つて求めれば良い。
また、 あらかじめ標準的な歩容における ΔΜρ、 AFp ΔΜΓ 、 Δ F r、 AMaz、 Δ Mbz および Δ M p Δ M rなどのそれぞれの平均値を求 めておいて、 それを用いても良い。 ΔΜρ、 Δ Fp ΔΜ r Δ F r , Δ Maz、 AMbz および ΔΜΡ ΖΔΜ Γは、 状態 (姿勢とその変化率) によ つて変わるので、 各瞬間の状態ごとに求める方法に較べて、 精度は若干 低下するが、 上記モデルよりも複雑なモデルを用いた場合には、 演算量 を大幅に低減できる。
今回歩容の逆位相腕振り復元角加速度パターンの台形高さ bzcurr を 決定する方法として、 以下の方法を用いても良い。.
前記逆位相腕振り復元角加速度修正歩容 (図 4 2の S 7 2 2の説明を 参照) の今回歩容終端時点での逆位相腕振り角と角速度をそれぞれ 0 zcurr v ^ zcurr とし、 これらと、 定常歩容の逆位相腕振り角、 角速度 との差を A 0 zcerr、 Δ v 0 zcerrとする。
歩容周期をインタ一バルとし、 仮今回歩容の終端逆位相腕振り角、 角 速度と定常歩容の初期逆位相腕振り角、 角速度との差 0 zerr、 ν Θ zerr を前回状態、 bzcurr を入力、 Δ Θ zcerr, ν Θ zcerr を今回状態と" 5 る 離散系の状態方程式を立てて、 A 0 zcerr、 △ v 0 zcerr を 0に収束させ るように、 現代制御理論等を用いてフィードバック則を決定し、 これに 基づいて b zcurrを求めても良い。
今回歩容およびまたは定常歩容の逆位相腕振り復元角加速度 ) 3 arec は、 台形パターンとせず、 各瞬間において、 目標逆位相腕振り角 · 角速 度と基準逆位相腕振り角 · 角速度との差などを基に、 その差が 0に収束 するように、 状態フィードバック則などを用いて、 各瞬間における逆位 相腕振り復元角加速度 ;8 arecの値を決定しても良い。
今回歩容の逆位相腕振り復元角加速度 ^ arec は、 台形パターンとせ ず、 各瞬間において今回歩容の目標逆位相腕振り角 · 角速度を基に、 こ れらが第 1旋回歩容の初期逆位相腕振り角 · 角速度に近づくように、 状 態フィードパック則などを用いて、 各瞬間における逆位相腕振り復元角 加速度 β arecを決定しても良い。
斜面移動時 (傾斜した床面で口ポッ ト 1を移動させるとき) の歩容生 成においては、 床反力水平成分許容範囲や全体重心加速度水平成分許容 範囲の代わりに、 .並進床反力の床面平行成分 (床面に平行な成分)、 す なわち摩擦力の許容範囲、 あるいは全体重心加速度の床面平行成分 (こ れは摩擦力に比例する) の許容範囲を設定するようにしてもよい。 例え ば、 並進床反力の床面平行成分 (摩擦力) の許容範囲を設定する場合に 関して説明 (この説明は全体重心加速度の床面平行成分の許容範囲を設 定する場合でも同様である) すると、 該摩擦力は、 床面の水平面に対す る傾斜角度 > f (口ポッ ト 1の進行方向に向かって前下がり斜面の場合 を正とする) とすると、 次式 7 2の関係が成立する。 従って、 前記参考 例と同様のアルゴリズムに歩容を生成する塲合、 この式 7 2の関係を用 いて、 摩擦力許容範囲を床反力水平成分許容範囲に変換することで、 該 床反力水平成分許容範囲を設定するようにすればよい。 なお、 この場合、 式 7 2の床反力鉛直成分には、 目標床反力鉛直成分を用いればよい。 摩擦力 =床反力水平成分 * cos( 0 f)—床反力鉛直成分 * sin( 0 f)
…式 Ί 2 また、 斜面移動時 (傾斜した床面で口ポッ ト 1を移動させるとき) の 歩容生成においては、 床反力モーメント鉛直成分は、 式 1 0 7 2によつ て床面摩擦力法線方向モーメントに変換することができるので、 床反力 モーメント鉛直成分許容範囲の代わりに、 床反力モーメントの床面法線 方向成分、 すなわち床面摩擦力法線方向モーメントの許容範囲の許容範 囲を設定するようにしてもよい。 床面摩擦力法線方向モーメント=床反力モーメント鉛直成分 * cos( 0 f)
…式 1 0 7 2 今回歩容のパラメータ決定は、 前記参考例のように前回歩容が完了し た時点で行う以外に、 本願出願人による P C T公開公報 WOノ 02 , 40224に記述されているように、 今回歩容の生成途中で、 再決定しても 4 009472
1 5 0 良い。 こうすることにより、 演算量は増えるが、 歩容に対する要求に変 更があった時に即応できるからである。
また、 歩容の修正 (今回歩容パラメータを再決定すること) が、 今回 御周期で間に合わない場合には、 とりあえず今回は、 修正しない歩容 あるいは暫定的に修正した歩容 (探索途中の歩容であって、 完全には、 探索完了条件 (歩容境界条件のずれが許容値以内に入っていること) を 満足していない歩容) を出力し、 次回制御周期までに、 あるいは複数制 御周期後までに (暫定的でない) 適切な修正歩容にしても良い。 修正さ れた目標 Z M P軌道と目標床反力鉛直成分軌道は連続であり、 短時間後 では、 これらが急激に変化することはないので、 今回歩容の目標 Z M P 軌道と目標床反力鉛直成分軌道が若干ぎざぎざになるだけで、 ほとんど 問題はない。
また、 前記参考例では、 図 5の走行歩容を生成する場合を例に採って 説明したが、 口ポッ ト 1の歩行歩容を生成する場合でも、 前記参考例と 同様に目標歩容を生成できる。 この場合には、 例えば前記参考例におい て、 目標床反力鉛直成分を前記図 6に示したものに代えて、 例えば図 5 0に示すようなパターンで設定すればよい。 この例では、 床反力鉛直成 分軌道は、 両脚支持期では床反力鉛直成分の増加側に凸の台形状に設定 され、 片脚支持期では床反力鉛直成分の減少側に凸の台形状に設定され る。 なお、 台形部分の高さ C l、 C 2 の設定方法などの詳細は、 例えば 本願出願人による P C T公開公報 WO/ 03/ 057425ZA1 に詳細に説明 されているのでここでの説明は省略する。
次に、 以上説明した参考例およびその変形態様を基礎として、 本発明 の第 1実施形態を図 5 3〜図 5 8を参照して説明する。 なお、 本実施形 態の説明において、 前記参考例と同一構成部分もしくは同一機能部分に ついては前記参考例と同一の参照符号を用いて説明を省略する。 特に、 本実施形態は、 先にも述べたように、 前記図 1〜図 3および図 5〜図 1 2を参照して説明した事項は、 前記参考例と同一である。
本実施形態が前記参考例と相違する点の概要を説明すると、 本実施形 態では、 目標上体姿勢角と実上体姿勢角の差である実上体姿勢角偏差 (上体 3の鉛直方向に対する傾き角の偏差およびョ一角の偏差)、 及び 又はその変化率を 0に近づけるために、 コンプライアンス制御への目 標床反力を操作することに加え、 目標歩容も修正するようにした。 特に、 実上体姿勢偏差のうちのョ一角成分及び Z又はその角速度に応じて、 目 標歩容に動力学的に釣り合う (目標歩容の運動の慣性力と重力との合力 が目標 Z M Pまわりに発生するモーメントの鉛直成分に釣り合う) 目 標 Z M Pまわりの床反力モーメントの鉛直成分も修正するようにした。 本実施形態における制御ュニッ ト 6 0の機能的構成を表すブロック図 を図 5 3に示す。 以下、 本実施形態における制御ユニッ ト 6 0の機能的 構成が前記参考例のもの (図 4のもの) と相違する点を説明する。
本実施形態においては、 姿勢傾斜安定化制御演算部 1 1 2において算 出される補償全床反力モーメント水平成分 Mdmdxy は、 補償全床反力 モーメント水平成分分配器 1 1 0に入力される。 補償全床反カモ一メン ト水平成分分配器 1 1 0 は、 ¾償全床反力モーメ ン ト水平成分 Mdmdxy を、 コンプライアンス制御用目標床反力モーメント水平成分 とモデル操作床反力モーメント水平成分とに分配する。 換言すれば、 実 上体姿勢傾斜角偏差を基に、 姿勢傾斜安定化制御演算部 1 1 2及び補償 全床反力モーメント水平成分分配器 1 1 0により、 コンプライアンス制 御用目標床反力モーメント水平成分とモデル操作床反カモ一メント水平 成分とが決定される。 4 009472
1 5 2 具体的には、 補償全床反力モーメント水平成分分配器 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において前記参考例と同様に決定 された補償全床反力モーメント鉛直成分 Mdmdz (前記式 d 2 6 を参 照) は、 モデル操作床反力モーメント鉛直成分決定器 1 1 1に入力され る。 モデル操作床反力モーメント鉛直成分決定器 1 1 1は、 補償全床反 力モーメント鉛直成分 Mdmdz を基に、 モデル操作床反カモ一メン卜鉛 S成分を決定する。 換言すれば、 実上体姿勢角偏差のうちの上体ョ一角 偏差を基に、 ョー安定化制御演算部 1 1 3及びモデル操作床反力モーメ ント鉛直成分決定器 1 1 1 により、 補償全床反力モーメント鉛直成分 Mdmdzとモデル操作床反力モーメント鉛直成分とが決定される。
具体的には、 モデル操作床反力モーメント鉛直成分決定器 1 1 1にお いて、 モデル操作床反力モーメント鉛直成分が次式で決定される。 なお, 床反力モーメント鉛直成分補償量許容範囲は、 後述するごとく歩容生成 装置 1 0 0において決定される。
Mdmdz〉床反力モーメント鉛直成分補償量許容範囲上限値である場 モ ル操作床反カモ一メント鉛直成分 =—Mdmdz
+床反力モーメント鉛直成分補償量許容範囲上限値
Mdmdz<床反力モーメント鉛直成分補償量許容範囲下限値である場 モデル操作床反カモ一メント鉛直成分 = — Mdmdz
+床反力モーメント鉛直成分捕償量許容範囲下限値 床反力モーメント鉛直成分補償量許容範囲下限値≤1^(1111(12:、 且つ、 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 0 0は、 該歩容生成装置 1 0 0に おいて決定される目標 Z M Pまわりの床反力モ一メント水平成分がモデ ル操作床反力モ一メント水平成分となるように動力学モデルを用いて目 標歩容の運動 (特に上体位置姿勢軌道) を生成する。 さらに、 歩容生成 装置 1 0 0は、 モデル操作床反力モーメントが 0であるとして生成され た目標歩容 (仮目標歩容) に動力学的に釣り合う目標全床反力中心点 (目標 ZMP) 回りの目標床反力モーメン卜鉛直成分にモデル操作床反 カモ一メント鉛直成分が付加的に発生するように目標歩容の運動 (特に fl^g振り軌道) を修正する。
これら以外の、 制御ユニッ ト 6 0の機能的構成は、 前記参考例と同一 である。 補足すると、 前記参考例で生成した目標歩容は、 本実施形態で、 前記モデル操作床反力モーメント水平成分と、 モデル操作床反力モーメ ント鉛直成分とを定常的に 0に設定した場合に生成される目標歩容と同 じである。
第 1実施形態における歩容生成装置 1 0 0の動作 (歩容生成処理) を そのメインフローチャートである図 5 6を用いて以下に詳説する。 S 3 0 1 0から S 3 0 2 8までは、 前記参考例の図 1 3の S 0 1 0から S O 2 8と同様の処理を行う。
次いで、 S 3 0 3 0に進み、 コンプライアンス制御用の目標 ZMPま わりの床反力モーメント水平成分と床反力モーメント鉛直成分補償量の 許容範囲を規定するパラメ一夕が決定される。
なお、 床反力モーメント水平成分を、 床反力鉛直成分で割ったものが. Z MP (床反力中心点) の目標 ZMPからのずれ量を表すものとなる。 従って、 床反力モーメント水平成分許容範囲を、 床反力鉛直成分で割る ことによって、 床反力中心点に変換した ZMP許容範囲 (床反力中心点 許容範囲) のパラメ一夕を設定するようにしてもよい。
補足すると、 S 3 0 3 0で決定するコンプライアンス制御用の床反力 モ一メン卜水平成分許容範囲と床反力モーメント鉛直成分補償量許容範 囲のパラメータとを基に、 後述する今回歩容瞬時値決定サブルーチン (S 3 0 3 2のサブルーチン) において、 それらの許容範囲の瞬時値が 決定され、 それが、 前記補償全床反力モーメント水平成分分配器 1 1 0 およびモデル操作床反力モ一メント鉛直成分決定器 1 1 1における前記 の処理に用いられる。
この床反力モーメント水平成分許容範囲については、 本願出願人によ る P C T出願 P C T / J P 0 3 / 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 M Pまわりの床反力モーメント水平成分と床反力モ一メ ント鉛直成分補償量の許容範囲を規定するパラメータを決定した後、 あ るいは S 3 0 1 6の判断結果が N Oである場合には、 S 3 0 3 2に進み 今回歩容瞬時値が決定される。 S 3 0 3 2では、 目標 Z M Pまわりに前 記式 d 2 7 aに従って決定されるモデル操作床反カモ一メント水平成分 が発生するように今回歩容瞬時値が決定される。 ただし、 今回歩容に釣 り合う (今回歩容の運動の慣性力と重力との合力が目標 Z MPまわりに 発生する慣性力モーメントの鉛直成分に釣り合う) 床反力モーメント鉛 直成分が床反力モーメント鉛直成分許容範囲を越えないように今回歩容 R時値が決定される。
具体的には、 図 5 7、 図 5 8のフ口一チヤ一トにしたがって歩容瞬時 値が決定される。 すなわち、 S 3 0 3 0では、 まず、 図 5 7の S 3 4 0 0から S 3 4 1 1までの処理が実行される。 これらの S 3 40 0から S 3 4 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に進み、 補償全床 2
158 反カモ一メント分配器 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および S5 3 0と異なり、 口ポッ ト 1の前回瞬時歩容状態 (時刻 k— 1の歩容 状態) から、 上体傾斜モードの角加速度を 0にして (より正確には上体 傾斜モードの角加速度を基準上体姿勢角加速度に一致させて)、 上体並 進モードの運動をロボッ ト 1にさせた場合に今回 (時刻 k) の目標 Z M Pまわりに前記モデル操作床反力モーメント水平成分が発生するために 必要な上体水平加速度 ( S 3 1 04では CK tmp、 S 3 1 3 0では(¾ ) が 求められる。
これ以外の処理は図 2 6の.処理と同じである。
以上のごとく S3 4 1 4の処理を行った後、 S3 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
=モデル操作床反カモ一メント鉛直成分
ノ逆位相腕振り運動の等価慣性モーメント A Maz さらに、 jS aadd を制御周期の期間積分して、 逆位相腕振り角速度の 修正量を求め、 さらにこれを積分して逆位相腕振り角の修正量を求める, 最後に、 S 3 0 3 2で生成した今回歩容の逆位相腕振り角および角速 度にそれぞれ、 逆位相腕振り角速度の修正量および逆位相腕振り角の修 正量を加えることにより、 今回歩容の逆位相腕振り角および角速度を修 正する。
次いで S 3 0 3 6に進み、 時刻 t に制御周期△ t を加え、 再び、 S 3 0 1 4に戻り、 制御周期毎のタイマ一割り込みを待つ。
第 1実施形態では、 以上のごとく、 歩容生成装置 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から出力される。
以上説明した第 1実施形態の作用 1 として、 目標歩容の運動は、 モデ ル操作床反カモ一メント水平成分が目標 Z M Pまわりに発生するように 生成されつつ、 実際のロポッ 1の床反力は、 モデル操作床反力モーメン 卜水平成分が付加されないように制御される。 したがって、 差し引きモ デル操作床反力モーメント水平成分の分だけ、 目標歩容の運動と床反力 の不平衡 (アンバランス) を生じる。 このことは、 実ロボッ ト 1の上体 姿勢傾斜角と目標歩容の上体姿勢傾斜角との差を 0に収束させる効果に 関して言えば、 モデル操作床反力モーメント水平成分の符号を反転した 床反力モーメント水平成分を実ロポッ ト 1 に作用させることと等価であ る。
つまり、 モデル操作床反力モーメント水平成分を適宜決定することに より、 実ロポッ ト 1を、 修正目標歩容 (実ロボッ 卜 1の上体姿勢傾斜角 と目標歩容の上体姿勢傾斜角との差を 0に収束させる歩容) に収束させ ることができる。 つまり、 実口ポッ ト 1の姿勢傾斜を安定化させること ができる。
作用 2として、 モデル操作床反力モーメント水平成分の符号を反転し たモ一メントとコンプライアンス制御用目標床反力モーメント水平成分 との和がト一タルの傾斜復元力 (ロボッ ト 1の実上体姿勢傾斜角を目標 上体姿勢傾斜角に復元させる力) になる。 すなわち、 コンプライアンス 制御用目標床反カモ一メント水平成分とモデル操作床反力モーメント水 平成分との差がトータルの姿勢傾斜復元力になる。
また、 作用 3として、 モデル操作床反力モーメント水平成分は、 Z M P存在可能範囲を無視していかなる値でも取ることが可能であるので、 非常に高い姿勢傾斜復元力を発生することができる。
また、 作用 4として、 床反力水平成分が、 床反力水平成分許容範囲を 越えないように上体並進モ一ドの上体並進加速度と上体傾斜モ一ドの上 体姿勢傾斜角加速度とが決定されるので、 走行歩容における支持脚側脚 体 2の離床直前や着床直後など、 大きな床反力水平成分を発生できない 時期や、 摩擦係数の小さい床をロポッ ト 1が移動する場合においても口 ポッ ト 1のスリツプを防止することができる。
また、 作用 5として、 床反力の並進力鉛直成分が 0の時期、 すなわち 両脚がいずれも接地していない時期では、 床反力水平成分の許容範囲が 0に設定されることにより、 前記した第 1実施形態のアルゴリズムによ り自動的に、 上体並進モードに依存せずに上体傾斜モードに依存した姿 勢傾斜復元が行われ、 床と足底の間の摩擦力に依存せずに姿勢復元が行 われる。 したがって、 この時期 (空中期) においても、 単に、 上体並進 モードを修正するだけの方式と異なり、 有効に姿勢傾斜復元作用が働く なお、 この時には、 床反力水平成分が 0になるように生成されるから、 歩容の全体重心水平加速度は 0となる。
また、 作用 6として、 上記したごとく、 コンプライアンス制御に対し ては、 モデル操作床反力モーメント水平成分は、 目標床反力として出力 されない。 すなわち、 目標 Z M Pまわりにモデル操作床反力モーメント 水平成分を発生させるように歩容生成が行なわれても、 コンプライアン ス制御に対しては、 目標 Z M Pまわりの床反力モーメント水平成分が 0 になることを目標とする目標床反力が、 歩容生成装置 1 0 0から与えら れる。 したがって、 コンプライアンス制御による床反力制御を妨げず、 コンプライアンス制御による床反力制御を適切に行うことができる。 よ り具体的には、 足平 2 2の本来の接地性が低下したり、 足平 2 2の底面 が浮いてしまうような不具合が発生することを防止または抑制すること ができる。
なお、 後述するように、 第 2実施形態以降でも、 目標 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又は上体姿勢ョ一角速度 と目標歩容の上体姿勢ョ一角及び Z又はョ一角速度との差を 0に収束さ せる効果を奏することができる。
つまり、 モデル操作床反力モーメント鉛直成分を適宜決定することに より、 実口ポッ ト 1を、 そのスピンが生じないようにしつつ、 修正目標 歩容 (実ロボット 1の上体姿勢ョ一角及び z又は上体姿勢ョ一角速度と 目標歩容の上体姿勢ョ一角及び Z又は上体姿勢ョー角速度との差を 0に 収束させる歩容) に収束させることができる。 つまり、 実ロボッ ト 1の ョ一回転を安定化させることができる。
作用 8として、 補償全床反力モーメント鉛直成分 Mdmdzがトータル のョ一回転復元力になる。 補償全床反力モーメント鉛直成分 Mdmdz は ョ一角偏差および Zまたはョ一角速度偏差を 0に近づけるようにフィ一 ドパック制御則に基づき決定されるので、 ョ一角偏差の制御的な安定性 が保証されつつ、 ョ一角偏差およびノまたはョー角速度偏差を 0に近づ けることができる。
また、 作用 9として、 モデル操作床反力モーメント鉛直成分は、 床反 力モーメント鉛直成分の許容範囲 (あるいは摩擦限界) を無視していか なる値でも取ることが可能であるので、 非常に高い姿勢ョ一回転復元力 を発生することができる。
また、 作用 1 0として、 コンプライアンス制御に対しては、 最終的に 目標床反カモ一メント鉛直成分が、 床反力モーメン卜鉛直成分許容範囲 と床反力モーメント鉛直成分補償量許容範囲の和の範囲を越えないよう に決定されるので、 走行歩容における支持脚側脚体 2の離床直前や着床 4 009472
1 6 4 直後など、 大きな床反力モーメント鉛直成分を発生できない時期や、 摩 擦係数の小さい床をロポット 1が移動する場合においてもコンプライア ンス制御による床反力制御を適切に行うことができ、 ロボッ ト 1のスピ ンを防止することができる。 より具体的には、 足平 2 2の本来の接地性 が低下したり、 足平 2 2の底面が浮いてしまうような不具合が発生する ことを防止または抑制することができる。
また、 作用 1 1 として、 床反力の並進力鉛直成分が 0の時期、 すなわ ち、 両脚がいずれも接地していない時期では、 床反力モーメント鉛直成 分許容範囲と床反力モーメント鉛直成分補償量許容範囲が 0に設定され ることにより、 前記した本実施形態のアルゴリズムにより自動的に、 実 床反力モーメント鉛直成分に依存せずに逆位相腕振りモードに依存した ョ一回転復元が行われ、 床と足底の間の摩擦力に依存せずにョ一回転復 元が行われる。 したがって、 この時期 (空中期) においても、 単に、 コ ンプライアンス制御の目標床反力モーメント鉛直成分を修正するだけの 方式と異なり、 有効にョ一回転復元作用が働く。
作用 1 2として、 目標 Z M Pまわりに発生するモ一メント水平成分が 0になるように生成したとした場合の歩容を元歩容、 前記第 1実施形態 の如く 目標 Z M Pまわりに発生するモ一メント水平成分がモデル操作床 反力モーメント水平成分になり、 且つ、 目標 Z M Pまわりに発生するモ ーメント鉛直成分に付加的にモデル操作床反力モ メント鉛直成分が発 生するように生成される歩容を修正歩容と呼ぶと、 通常、 元歩容と修正 歩容とは異なる歩容となる。 元歩容は定常歩容に漸近するように設定さ れているので、 修正歩容は、 通常、 定常歩容に漸近しない歩容となる。
しかし、 今回歩容 (修正歩容) の生成が完了した直後に、 再び S 3 0 2 0から S 3 0 2 8が実行され、 修正歩容の終端状態を新たな初期状態 とした新たな今回歩容が、 新たに設定される定常歩容に漸近するように 新たな今回歩容パラメ一夕が決定されるので、 継続的に (長期的に) 安 定性が保証された歩容を生成し続けることができる。
上記した作用 1 2は、 本願出願人が先に提案した P C T / J P 0 3 / 0 0 4 3 5の技術とほぼ同様である。 但し、 これに加えて本実施形態で は、 次のような作用も発生する。 すなわち、 ョ一角回転復元のために修 正された逆位相腕振り角および角速度の終端状態を新たな初期状態とし た新たな今回歩容の逆位相腕振り角軌道が新たに設定される定常歩容の 逆位相腕振り角軌道に漸近するように、 新たな今回歩容の逆位相腕振り 角軌道に関するパラメ一夕が決定されるので、 継続的に (長期的に) 逆 位相腕振り角の安定性が保証された歩容を生成し続けることができる。
なお、 本実施形態では、 補償全床反力モーメント水平成分 Mdmdxy が床反力モーメント水平成分許容範囲内の値であるときには、 モデル操 作床反カモ一メント水平成分は 0になるが、 このときのモデル操作床反 力モーメント水平成分を図 1 2の動力学モデルの状態量 (例えば動力学 モデル上での口ポッ トの重心位置や、 上体質点 3 mの位置等) に応じて 設定するようにしてもよい。
また、 本実施形態では、 補償全床反力モーメント鉛直成分 Mdmdzが 床反力モーメント鉛直成分補償量許容範囲内の値であるときには、 モデ ル操作床反力モーメント鉛直成分補償量は 0になるが、 このときのモデ ル操作床反力モーメント鉛直成分補償量を図 1 2 'の動力学モデルの状態 量 (例えば動力学モデル上でのロボッ ト 1の逆位相腕振り角および角速 度、 上体ョ一角および角速度等) に応じて設定するようにしてもよい。 以上説明した第 1実施形態は、 本発明のうちの第 1発明、 第 2発明、 第 4〜第 9発明および第 1 5発明の実施形態になっている。 この場合、 第 1実施形態における床反力モーメント鉛直成分 (Mdmdz を付加した 床反力モーメント鉛直成分) が制限対象量、 上体ョ一角偏差およびノま たは上体ョー角速度偏差が口ポッ ト 1の状態量の偏差、 Mdmdz が補償 床反力モーメントに相当する。 また、 第 1実施形態における歩容生成用 の床反力モーメント鉛直成分許容範囲 [Mzmin,Mzmax]と床反力モ一メ ント鉛直成分補償量許容範囲とを合わせたものが制限対象量の許容範囲 に相当する。 また、 図 5 6の S 3 0 3 2で決定される今回歩容瞬時値の 運動成分が目標運動の仮瞬時値に対応し、 これを S 3 0 3 4で修正した ものが目標運動の瞬時値に対応する。 また、 発明における動力学モデル は、 図 1 2の動力学モデルが相当する。
次に本発明の第 2実施形態を図 5 9〜図 6 2を参照して説明する。 な お、 本実施形態の説明において、 前記参考例もしくは前記第 1実施形態 と同一構成部分もしくは同一機能部分については前記参考例もしくは第 1実施形態と同一の参照符号を用いて説明を省略する。 本実施形態は、 前記参考例で前記図 1〜図 3および図 5〜図 1 2を参照して説明した事 項は、 前記参考例と同一である。
本実施形態が前記参考例および第 1実施形態と相違する点の概要を説 明すると、 元歩容と修正歩容が同時に生成される。 修正歩容は、 実ロボ ッ ト 1の上体姿勢 (傾斜角およびョ一角) の安定化のために元歩容から 修正される。 さらに、 該修正歩容は、 コンプライアンス制御により姿勢 復元に必要な床反力モーメントを発生してもまだ余裕がある (目標 Z M Pまわりに発生可能な床反力モーメントに余裕がある) 場合には、 この 余裕を用いて、 可能な範囲で元歩容に収束するように決定される。
本実施形態における制御ュニッ ト 6 0の機能的構成を表すブロック図 を図 5 9に示す。 本実施形態では、 姿勢傾斜安定化制御演算部 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は後述するように、 前記第 1実施形態の補償全床反力モーメント水平成分分配器 1 1 0およ びモデル操作床反力モーメント鉛直成分決定器 1 1 1よりも複雑な処理 を行う。 これ以外の、 制御ユニッ ト 6 0の機能的構成は、 前記第 1実施 形態と同一である。
図 6 0に本実施形態における歩容生成装置 1 0 0のメインルーチン処 理のフローチャートを示す。
同図 6 0おいて、 S 2 0 1 0から S 2 0 2 8までは、 前記参考例のメ インフローチャート (図 1 3 ) の S 0 1 0から S 0 2 8までの処理と同 一の処理が行なわれる。 なお、 S 0 2 8 (本実施形態では 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に進み、 コンプライアンス制御用の床反力モーメン ト水平成分許容範囲を決定する。 この床反力モーメント水平成分許容範 囲の決定方法は、 第 1実施形態の S 3 0 3 2 (図 5 6 ) と同様である。
S 2 0 3 0の処理を完了した後、 あるいは S 2 0 1 6の判断結果が N 0である場合には、 S 2 0 3 2に進み、 元歩容の瞬時値 (時刻 tの今回 fit) が決定される。 元歩容は、 目標 Z M Pまわりの床反力モーメント水 平成分が 0になるように生成される歩容である。
この元歩容は、 前記第 1実施形態の図 5 6の S 3 0 3 2のサブルーチ. ン処理の一部を変更したアルゴリズムによって生成される。 すなわち、 S 3 0 3 2内のサブルーチン処理 (詳しくは S 3 0 3 2のサブルーチン 処理である図 5 7の S 34 1 4のサブルーチン処理) である図 5 8の S 3 1 0 4および S 3 1 3 0において、 モデル操作床反力モーメント水平 成分を 0として (目標 ZMPまわりの目標床反カモ一メント水平成分を 0として)、 上体水平加速度 atmp が求められる。 これ以外の処理は、 図 5 6の S 3 0 3 2の処理と同一でよい。
次いで、 S 2 0 3 4に進み、 修正歩容の瞬時値を決定する。 なお、 修 正歩容は、 歩容生成装置 1 0 0から最終的に出力される目標歩容である ( S 2 0 3 4の処理は、 図 6 1のフローチヤ一トで示すサブルーチン処 理により行なわれ、 以下にその詳細を説明する。
まず S 2 1 0 0から S 2 1 1 1までは、 第 1実施形態で説明した図 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 は、 逆位 相腕振りモードによって修正歩容の逆位相腕振り角を元歩容の逆位相腕 振り角に戻すよう動作を行った時に、 これに伴って発生する床反力モー メン卜から元歩容の逆位相腕振りモードの逆位相腕振り角加速度を発生 2004/009472
1 7 2 させる床反力モーメントを減じたモーメントとしての意味を持つ。
具体的には、 モデル逆位相腕振り角安定化床反力モーメン卜要求値 Mafdmdは、 例えば次式のフィードバック制御則によって決定される。 この例では、 フィードバック制御則として、 P D制御則を用いているが、 P I D等、 他のフィードバック制御則を用いてもよい。
Mafdmd= Ka *モデル間逆位相腕振り角差
+ K a V *モデル間逆位相腕振り角差の時間微分値
式 d 2 9 b 伹し、 Kar、 Kav はフィードバックゲイン (比例ゲイン、 微分ゲイン) である。 ところで、 最終的に決定された修正歩容の上体並進モードに伴って発 生する床反カモ一メント水平成分から元歩容の上体並進モ一ドの上体水 平加速度を発生させる床反力モーメント水平成分を減じたモーメントを, モデル上体水平位置安定化床反力モーメントと呼ぶ。 また、 最終的に決 定された修正歩容の上体傾斜運動モードに伴って発生する床反力モーメ ント水平成分から元歩容の上体傾斜運動モードの上体姿勢傾斜角加速度 を発生させる床反力モーメント水平成分を減じたモーメントを、 モデル 上体姿勢傾斜角安定化床反力モーメントと呼ぶ。 また、 最終的に決定さ れた修正歩容の逆位相腕振りモードに伴って発生する床反力モーメント 鉛直成分から元歩容の逆位相腕振りモードの逆位相腕振り角加速度を発 生させる床反力モーメント鉛直成分を減じたモーメントを、 モデル逆位 相腕振り角安定化床反力モーメントと呼ぶ。
一方、 摂動運動と摂動床反力とには線形性が近似的に成立する、 すな わち、 異なる摂動運動を元歩容の運動に加えた運動の床反力は、 元歩容 00禱 472
1 7 3 の床反力にそれぞれの摂動運動が発生する摂動床反力を加えたものにほ ぼ一致する。 また、 逆位相腕振りモードでは、 床反力モーメント水平成 分は変化しない。 したがって、 次式が近似的に成立する。 モデル操作床反力モーメント水平成分
=モデル上体水平位置安定化床反力モーメント
+モデル上体姿勢傾斜角安定化床反カモ一メント
式 d 3 0 この式 d 3 0が近似的に成立することと、 逆位相腕振り角加速度に比 例して床反カモ一メント鉛直成分が変化することとを考慮しつつ、 モデ ル上体水平位置安定化床反力モーメントをモデル上体水平位置安定化床 反力モーメント要求値 Mpfdmd に一致またはなるべく近くなるように 決定し、 かつ、 モデル上体姿勢傾斜角安定化床反力モーメントをモデル 上体姿勢傾斜角安定化床反力モーメント要求値 Mrfdmd に一致または なるべく近くなるように決定しつつ、 かつ、 モデル逆位相腕振り角安定 化床反力モーメントをモデル逆位相腕振り角安定化床反力モーメント要 求値 Mafdmd に一致またはなるべく近くなるように決定すれば、 修正 歩容に適切なモデル操作床反カモ一メントを発生させて、 以下に示す復 元条件を満足しつつ、 修正歩容の上体水平加速度と上体姿勢傾斜角加速 度とを、 それぞれ元歩容の上体水平加速度と上体姿勢傾斜角加速度とに 可能な範囲で収束させることができる。
そこで、 S 2 2 1 0の後、 S 2 2 1 2に進み、 以下の条件 (これらを 復元条件と呼ぶ) をできる限り満足するようにモデル上体水平位置安定 化床反力モーメント (上体並進モードの床反力モーメント) とモデル上 体姿勢傾斜角安定化床反力モーメント (上体傾斜モードの床反力モーメ ント) とモデル逆位相腕振り角安定化床反カモ一メントとを決定する。 さらに、 上記のモデル上体水平位置安定化床反力モーメントとモデル上 体姿勢傾斜角安定化床反力モーメントとモデル逆位相腕振り角安定化床 反力モーメントとの定義を満足するように、 修正歩容の上体水平加速度 と上体姿勢傾斜角加速度と逆位相腕振り角加速度とを決定する。 なお、 以下に示す復元条件は、 番号が小さい条件ほど優先度が高いものとする c つまり相反して両立できない条件がある塲合には、 番号が小さい条件を 優先して満足 (成立) させる。 ただし、 復元条件 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 Z 0 0 4 3 5の技術に記載されているので、 ここで は説明を省略する。
次いで、 上記復元条件 3および 6を満足するようにモデル逆位相腕振 り安定化床反力モーメン卜が決定され、 さらに逆位相腕振り角加速度が 決定される。
具体的には、 上記のごとく決定された上体水平加速度および上体姿勢 傾斜角加速度と元歩容の逆位相腕振り角加速度 /3 aorg で仮に運動した 場合に発生する (運動に動力学的に釣り合う) 目標 Z M Pまわりの床反 力モーメント鉛直成分を求める。 以降、 これを無補正時床反力モーメン ト鉛直成分と呼ぶ。
次いで、 次式のように、 無補正時床反力モーメント鉛直成分とモデル 逆位相腕振り角安定化床反力モーメント要求値 Mafdmd と補償全床反 力モーメント鉛直成分 Mdmdzとの和 Msumzを求める。
Msumz -無補正時床反力モーメント鉛直成分
+ Mafdmd + Mdmdz 次いで、 次式により、 モデル逆位相腕振り安定化床反力モーメントが 決定される。 Msumz〉床反力モーメント鉛直成分許容範囲上限値である場合
モデル逆位相腕振り安定化床反力モーメント ==一 Mdmdz
一無補正時床反カモ一メント鉛直成分
+床反力モーメント鉛直成分許容範囲上限値 Msumzく床反力モ一メント鉛直成分許容範囲下限値である場合
モデル逆位相腕振り安定化床反力モーメント =—Mdmdz
一無補正時床反力モーメント鉛直成分
+床反力モーメント鉛直成分許容範囲下限値 床反力モーメント鉛直成分許容範囲下限値≤Msumz、 且つ、 Msumz≤ 床反力モーメント鉛直成分許容範囲上限値である場合
モデル逆位相腕振り安定化床反カモ一メント
=モデル逆位相腕振り角安定化床反力モーメント要求値 Mafdmd 式 d 2 6 c 次いで、 修正歩容の逆位相腕振り角加速度が次式によって求められる, 修正歩容の逆位相腕振り角加速度
=元歩容の逆位相腕振り角加速度 β aorg
+モデル逆位相腕振り安定化床反力モ一メント
' /腕振り運動の等価慣性モーメント A Maz 修正歩容の床反力モーメント鉛直成分は、 元歩容の逆位相腕振り角加 速度 ^ 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に進み、 図示する式によって、 コンプライアンス 制御用目標床反力.モーメント鉛直成分を決定する。 なお、 図示する式に おける修正歩容に釣り合う (修正歩容の運動に動力学的に釣り合う) 床 反力モーメント鉛直成分は、 無補正時床反力モーメント鉛直とモデル逆 T/JP2004/009472
1 7 8 位相腕振り安定化床反力モーメン卜の和であるが、 最終的に決定される 修正歩容の運動の今回瞬時値に基づいて目標 Z M Pまわりの床反カモ一 メン卜鉛直成分を直接算出しても良い。
'以上により、 図 6 1の S 2 1 1 4の処理が終了し、 次に、 S 2 1 1 6 に進む。 この S 2 1 1 6の処理は、 前記第 1実施形態における図 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に戻り、 制御周期毎のタイマー割り込みを待つ。
補足すると、 本実施形態における動力学モデルによる歩容瞬時値決定 においては、 動力学モデルの状態量 (あるいは前回、 前前回の歩容瞬時 値) も必要であるので、 修正歩容生成用と元歩容生成用との 2つの動力 学モデルが必要である。 本実施形態では、 それらの動力学モデルは図 1 2に示した動力学モデルである。
本実施形態においては、 上記のごとく、 元歩容と修正歩容とが並列的 に生成され、 修正歩容は、 実口ポッ ト 1の姿勢 ('傾斜角およびョ一角) 安定化のために修正されると共に、 コンプライアンス制御により姿勢復 元に必要な床反力モーメント (水平成分および鉛直成分) を発生しても まだ余裕がある場合には、 この余裕を用いて、 可能な範囲で元歩容に収 束するようにしている。 このため、 前記第 1実施形態の作用効果に加え 当初設定した元歩容に近い、 すなわち、 当初の要求通りの歩容に近い歩 容を生成することができる。 したがって、 あらかじめ設定された移動経 09472
1 7 9 路がある場合には、 移動経路から大きくずれることを防止することが可 能となる。 また、 修正歩容の上体姿勢傾斜角が元歩容 (当初決定した歩 容) の上体姿勢傾斜角に収束することを、 修正歩容の上体水平位置が元 歩容 (当初決定した歩容) の上体水平位置に収束することよりも優先し た (床反力水平成分許容範囲を満たす範囲で可能な限り上体並進モード の運動を調整した) ので、 上体姿勢傾斜角が大きく変動することを抑制 することができる。
以上説明した第 2実施形態は、 本発明のうちの第 1〜第 9発明、 およ び第 1 5発明の実施形態になっている。 この場合、 第 2実施形態におけ る床反力モーメント鉛直成分 (Mdmdz を付加した床反力モ一メント紛 直成分) が制限対象量、 上体ョ一角偏差および/または上体ョ一角速度 偏差がロボッ ト 1の状態量の偏差、 Mdmdz が補償床反カモ一メントに 相当する。 また、 第 2実施形態における歩容生成用の床反力モーメント 鉛直成分許容範囲 [Mzmin,Mzmax]が制限対象量の許容範囲に相当する, また、 第 2実施形態におけるモデル逆位相腕振り角安定化モーメント要 求値 Mafdmd が第 3発明におけるモデル補正床反力モーメントに相当 する。 また、 図 6 1の S 2 1 1 4のサブルーチンで無補正時床反力モー メント鉛直成分を求めたときの運動が第 2発明における所定の仮瞬時値 に対応する。 また、 発明における動力学モデルは、 図 1 2の動力学モデ ルが相当する。 '
次に本発明の第 3実施形態を図 6 3〜図 7 0を参照して説明する。 な お、 本実施形態の説明で、 前記参考例または前記第 1 もしくは第 2実施 形態と同一構成部分もしくは同一機能部分については該参考例、 第 1実 施形態もしくは第 2実施形態と同一の参照符号を用いて詳細な説明を省 略する。
本実施形態では、 制御ユニッ ト 6 0の機能的構成は、 前記第 2実施形 態のもの、 すなわち前記図 5 9に示したものと同一である。 但し、 本実 施形態では、 歩容生成装置 1 0 0が実行する歩容生成のアルゴリズムは、 前記第 2実施形態のものと相違している。 そして、 歩容生成装置 1 0 0 以外の各部の処理は、 前記第 2実施形態と同一である。
図 6 3は、 本実施形態における歩容生成装置 1 0 0の処理の概要を示 すブロック図である。 この図 6 3を参照して、 歩容生成装置 1 0 0の処 理の概要を以下に説明する。 なお、 図 6 3を用いて以下に説明する処理 の概要は、 後述する第 4〜第 6実施形態についても同様である。 また、 本実施形態および後述の第 4〜第 6実施形態では、 前記図 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許 容範囲 (もしくは床反力モーメント水平成分許容範囲) を規定するパラ メータと、 床反力モーメント鉛直成分許容範囲を規定するパラメ一夕と が含まれる。 この場合、 本実施形態で設定する床反力水平成分許容範囲 および床反力モーメント鉛直成分許容範囲は、 後述の S 3 5 2 6の処理 で設定される単純化モデル歩容用のものと、 S 3 5 3 0で設定される歩 容補正用のものとの 2種類がある。 一方、 Z MP許容範囲 (もしくは床 反力モーメント水平成分許容範囲) は、 S 3 5 3 0の処理で設定される フルモデル補正用 (歩容補正用) のものだけである。 なお、 本実施形態 では、 S 3 5 3 0では Z MP許容範囲を規定するパラメ一夕を設定する が、 これは、 床反力モーメント水平成分許容範囲を規定するパラメ一夕 と設定することと同等である。 これは、 前記第 1実施形態の図 5 6の S 3 0 3 0に関して説明した如く、 床反力モーメント水平成分を、 目標床 反力鉛直成分で割ったものが、 ZMP (床反力中心点) の目標 Z MPか らのずれ量を表すものとなるからである。
ここで、 本実施形態で設定する Z MP許容範囲は、 図 6 4の如く設定 される。 詳細は、 P CT/ J P 0 3Z 0 0 4 3 5に詳細に記載されてい るのでここでは、 これ以上の説明を省略する。
歩容パラメ一夕決定部 1 0 0 aで決定された歩容パラメータは目標瞬 時値発生部 1 0 0 bに入力される。 目標瞬時値発生部 1 0 0 bは入力さ れた歩容パラメータに基づき、 目標足平位置姿勢、 目標 ZMP、 目標床 反力鉛直成分、 目標腕姿勢、 目標全体重心鉛直位置、 目標上体鉛直位置. 床反力水平成分許容範囲、 Z MP許容範囲、 基準上体姿勢角および基準 逆位相腕振り角の、 現在時刻 tにおける瞬時値を逐次算出 (発生) する (図 6 3では一部の目標瞬時値のみを記載している)。 この目標瞬時値 発生部 1 0 0 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の処理に相当する。 なお、 本実施形態では、 目 標瞬時値発生部 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 M Pのまわりにコンプライアンス制御用目標 床反力モ一メントを発生させることによって修正された本来の定義を満 足する Z M P ) は、 Z M P許容範囲 (安定余裕が十分維持できる許容範 囲) に存在する。
A3) 床反力水平成分は歩容補正用の床反力水平成分許容範囲内にある A4) 目標 Z M Pのまわりに発生すべきコンプライアンス制御用目標床 反カモ一メン卜鉛直成分が床反力モーメント鉛直成分許容範囲内にある c という条件を満足するように、
B) 単純化モデルを用いて決定された単純化モデル歩容の上体位置姿勢 を補正すると共に、 目標 Z M Pまわりのコンプライアンス制御用目標床 反カモ一メントを出力する。
なお、 上記条件 A2 は、 目標 Z M Pまわりに発生させる床反力モーメ ントを Z M P許容範囲に対応する床反カモ一メント水平成分許容範囲内 に収めることと同等である。
ここで、 上記単純化モデル 1 0 0 c 1 とフルモデル 1 0 0 c 2とにつ いて説明しておく。 単純化モデル 1 0 0 c 1は、 動力学的精度よりも、 演算量低減や挙動解析のし易さに重点を置いた動力学モデルであり、 動 力学的に一部無視があったり (例えば、 重心まわりの角運動量変化を無 視したり)、 矛盾があるもの (厳密さを欠くもの) でも良い。 本実施形 態では前記参考例で説明した図 1 2の動力学モデル (前記式 0 1〜 0 5 で記述される動力学モデル) が単純化モデル 1 0 Ό c 1 として用いられ る。
また、 フルモデル 1 0 0 c 2は、 単純化モデル 1 0 0 c 1 とは異なる ロポッ ト動力学モデルを意味する。 これは、 単純化モデル 1 0 0 c 1よ りも近似精度の高いロボッ ト動力学モデルであることが望ましい。 図示 例で説明すれば、 本実施形態では先に述べたように前記図 1 2に示した 動力学モデルを単純化モデル 1 0 0 c 1 として用いるので、 それよりも 近似精度の高い動力学モデル、 例えば前記図 4 9に示した多質点モデル (口ポッ ト 1の各リンクにそれぞれ質点を有するモデル) のようなロボ ッ ト動力学モデルをフルモデル 1 0 0 c 2 として用いることが望ましい c この場合、 該フルモデル 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は、 逆動力 学フルモデル (しばしば 「逆フルモデル」 と略称) または順動力学フル モデル (しばしば 「順フルモデル」 と略称) を備える。 一般的には、 逆 動力学モデルの演算に比べ、 順動力学モデルの演算は、 演算量が多くな りがちである。
以上が本実施形態 (第 3実施形態) での歩容生成装置 1 0 0における 処理の概要である。
次に、 本実施形態における歩容生成装置 1 0 0の処理を詳説する。 本 実施形態における歩容生成装置 1 0 0は、 図 6 5のフローチャートに示 す処理を実行して、 歩容を生成する。
まず、 S 3 5 1 0から S 3 5 2 8までにて、 前記第 1実施形態で説明 した図 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実施形態および 第 2実施形態の場合よりも厳密に摩擦力限界を考慮せずともよく、 摩擦 力限界を超えるような範囲に設定してもよい。 これは、 後述するフルモ デル補正によって、 床反力水平成分および床反力モーメント鉛直成分は 最終的にフルモデル補正用の床反力水平成分許容範囲および床反力モー メント鉛直成分許容範囲によって制限されることとなるからである。 次いで、 S 3 5 3 0に進み、 フルモデル補正用 (歩容補正用) の床反 力水平成分許容範囲と床反力モーメント鉛直成分許容範囲と Z MP許容 範囲 (床反力中心点許容範囲) とをそれぞれ規定するパラメ一夕を決定 する。 この場合、 フルモデル補正用の床反力水平成分許容範囲は、 例え ば前記単純化モデル歩容用の床反力水平成分許容範囲と同様、 X軸方向 (前後方向)、 Y軸方向 (左右方向) のそれぞれについて、 床反力鉛直 成分軌道と、 前記式 1 2とに基づいて、 前記図 3 0に示したようなパタ —ンに設定される。 そして、 例えば、 前記式 1 2の ka* ^の値がフル モデル補正用の床反力水平成分許容範囲を規定するパラメ一タとして設 定される。 但し、 この床反力水平成分許容範囲は、 式 1 2の係数 ka の 値を、 単純化モデル歩容用の床反力水平成分許容範囲よりも小さめに設 定する等して、 確実に摩擦限界内の範囲に設定することが望ましい。 床反カモ一メント鉛直成分許容範囲に関しても床反力水平成分許容範 囲と同様に設定される。 すなわち、 前記式 1 0 1 2に基づいて、 前記図 4 1 に示したようなパターンに設定される。
また、 ZMP許容範囲は、 前記第 1実施形態における図 5 6の S 3 0 3 0で床反力モーメント水平成分許容範囲の設定に関して説明した場合 と同様に設定される。 なお、 ZMP許容範囲に目標床反力鉛直成分を乗 じることで、 Z MP許容範囲をこれと等価な床反カモ一メント水平成分 許容範囲に変換してもよいことはもちろんである。
次いで、 S 3 5 3 2に進み今回歩容瞬時値 (現在時刻 tの値) が前記 単純化モデル (図 1 2の動力学モデル) を用いて決定される。 この S 3 5 3 2の処理は、 前記参考例における図 1 3の S 0 3 0の処理と同一で ある。
以上説明した S 3 5 3 2までの処理によって生成された現在時刻 t に おける歩容の瞬時値を、 以降、 単純化モデル歩容瞬時値という。 本実施 形態では、 この単純化モデル歩容瞬時値は、 単純化モデル (図 1 2の動 力学モデル) を用いて、 口ポッ ト 1にその運動によって発生する慣性力 と重力との合力が目標 ZMPまわりに発生する床反力モーメント水平成 分が 0になるように (目標 Z MPに関する動力学的平衡条件を満たすよ うに) 決定される。 この場合、 単純化モデル歩容瞬時値のうちの、 上体水平位置および上 体姿勢傾斜角の瞬時値と、 上体鉛直位置の瞬時値と、 逆位相腕振り角の 瞬時値とは仮瞬時値であり、 後述するフルモデル補正によって補正され るものである。 また、 本実施形態における単純化モデル歩容瞬時値のう ち、 目標 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 009472
1 8 8 図 6 6は、 本実施形態に係る歩容生成装置 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 一△ t ) に算出し た値を前回値と略す。
S 3 5 3 6の処理が実行される毎に、 ブロック図の 1制御周期分の演 算が実行される。
S 3 5 3 6では、 まず、 上記のごとく得られた単純化モデル歩容の目 標上体姿勢角 (以降、 単純化モデル上体姿勢角と呼ぶ。 また、 このうち の傾斜角成分を単純化モデル上体姿勢傾斜角と呼ぶ。)、 目標上体水平位 置 (以降、 単純化モデル上体水平位置と呼ぶ)、 目標重心位置、 目標足 平位置姿勢、 目標腕姿勢 (目標逆位相腕振り角を含む) などの運動を表 す変数 (これを運動変数と呼ぶ) の瞬時値と、 目標 Z M Pの瞬時値とが 前記逆動力学フルモデル (逆フルモデル) 2 0 1に入力される。 入力さ れた運動変数で表される運動に釣り合う (すなわち運動によってフルモ デルが発生する) 床反力水平成分と目標 Z M Pまわりの床反力モーメン ト (水平成分および鉛直成分) 力 逆フルモデル 2 0 1の演算処理によ つて算出される。 なお、 本実施形態では、 単純化モデル歩容における目 檩 Z M Pまわりの床反カモ一メント水平成分は 0であるので、 逆フルモ デル 2 0 1によって算出される目標 Z M Pまわりの床反力モーメント水 平成分は、 単純化モデル歩容の誤差としての意味を持つものである。
なお、 逆フルモデル 2 0 1により求められた床反力水平成分と床反カモ —メント水平成分と床反力モーメント鉛直成分とをそれぞれ 「フルモデ ル床反力水平成分」、 「フルモデル床反力モーメント水平成分」、 「フルモ デル床反力モーメント鉛直成分」 と呼ぶ。 また、 以降、 しばしば、 フル モデル床反力水平成分を Ffull、 フルモデル床反力モーメント水平成分 を Mfulbcy、 フルモデル床反力モーメント鉛直成分を 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 以外は定数とみなして、 床反力モーメントの 摂動 A Myと上体質点水平位置の摂動 A Xb との関係を前記式 0 3 yから 求めると、 次式が得られる。 △ My = - mb * Δ Xb * (g+d2Zb/dt2) + mb * (Zb一 Zzmp) * d2 Δ Xb/d.t2
…式 a 1 2 同様に、 Fx、 Xb 以外は定数とみなして、 床反力水平成分の摂動 ΔΡχ と上体質点水平位置の摂動 AXb の関係を前記式 0 2 Xから求めると、 次式が得られる。
Δ Fx= mb* d2A Xb/dt2 …式 a 1 3 上体水平加速度によって発生する Δ Mpと AFp の比である上体並進 モード床反力比率 hは、 式 al 2の右辺のうちの上体水平加速度によつ て発生する項 (すなわち第 2項) と式 al 3との比であるから、 次式が 得られる。 h=(Zb-Zzmp) …式 a 1 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 1 6 と前記式 0 1 とから、 上体床反力鉛直成分 Fbz は次式となる。
Fbz=Fz- msup * (g+d2Zsup/dt2) - mswg * (g+d2Zswg/dt2)
…式 a 1 7 言い換えると、 上体床反力鉛直成分は、 床反力鉛直成分 Fz と図 1 2 に示す前記単純化モデル ( 3質点 +フライホイールのモデル) の両脚質 点に作用する重力と慣性力との合力の並進力鉛直成分との和に等しい。 式 al 6を式 al 5に代入することにより、 次式が得られる。
Δ My = - Fbz * Δ Xb + mb * h * d2 Δ Xb/dt2 …式 a 1 8 式 al 8の AMy を上体水平位置補正用摂動モデルモーメント Mp、
△ Xb を補正用摂動モデル上体水平位置 Xc に対応させることにより (式 al 8の AMy に上体水平位置補正用摂動モデルモ一メント Mp、
△ Xb に補正用摂動モデル上体水平位置 Xc を代入することにより)、 次 式が得られる。 '
Mp = - Fbz * Xc + mb * h * d2Xc/dt2 …式 al 9 すなわち、 上体水平位置補正用摂動モデル 2 0 2は、 式 al 4によつ て求められる上体並進モード床反力比率 hと式 al 7によって求められ る上体床反力鉛直成分 Fbzを用いて、 式 al 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の出力 (目標上体姿勢傾斜角の補正量) を補正用摂動モデ ル上体姿勢傾斜角 と呼ぶ。 また、 上体姿勢傾斜角補正用摂動モデル 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と上体姿勢傾斜角の摂動 Δ 0 byの関係を表している。 そこで、 My、 6 by 以外は定数とみなして、 床反力モーメント水平成 分の摂動 Δ My と上体姿勢傾斜角の摂動 Δ 0 byの関係を式 0 3 yから求 めると、 次式が得られる。
A My = J * d2 A Θ by/dt2 …式 a 2 2 式 a 2 2の Δ Μγ を上体姿勢傾斜角補正用摂動モデルモーメント Mr . Δ 0 by を補正用摂動モデル上体姿勢傾斜角 0 c に対応させることによ り、 次式が得られる。 Mr = J * ά2 Δ Θ 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のフ ライホイールの回転角度が補正用摂動モデル逆位相腕振り角 0 ca、 その フライホイ一ルによって発生する床反カモ一メント鉛直成分が逆位相腕 振り角補正用摂動モデルモ一メント Maに相当する。
' この逆位相腕振り角補正用摂動モデル 2 3 1 は、 前記単純化モデル ( 3質点 +フライホイールのモデル) の動力学方程式の前記式 0 3 Z に おいて、 床反力モーメントの摂動 ΔΜζ と逆位相腕振り角の摂動 Δ 0 az との関係を表している。
そこで、 Mz、 6> az 以外は定数とみなして、 床反力モーメントの摂動 厶 Mz と逆位相腕振り角の摂動 Δ 0 azの関係を式 0 3 z ら求めると、 次 式が得られる。
AMz = Jaz* d2A 0 az/dt2 …式 a2 2 c 式 a 2 2 c の Δ Μζ を逆位相腕振り角補正用摂動モデルモ一メント Ma、 Δ 0 azを補正用摂動モデル逆位相腕振り角 0 caに対応させること により、 次式が得られる。
Ma= Jaz* ά2Α Θ ca/dt2 …式 a 2 3 c すなわち、 逆位相腕振り角補正用摂動モデル 2 '3 1は、 式 a 2 3 c で 表される。 また、 逆位相腕振り角補正用摂動モデル床反力水平成分 Fr は上記したごとく式 a 2 1 (このようになる (Fa= 0 )。 後述するように.、 S 3 5 3 6では、 最終的に、 補正歩容 (より詳しく は、 単純化モデル歩容の一部の瞬時値を補正した目標瞬時値) が生成 (出力) される。 補正歩容の目標上体姿勢傾斜角 (これを以降、 補正目 標上体姿勢傾斜角と呼ぶ) は、 前記求めた単純化モデル上体姿勢傾斜角 の瞬時値 (S 3 5 3 2で求めた今回歩容の現在時刻 tでの目標上体姿勢 傾斜角の瞬時値) に前記補正用摂動モデル上体姿勢傾斜角 0 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のモーメントは、 元の (単純化モデルの) 目標 ZMPまわりのモ一メ ントである。
また、 補正歩容の真の ZMPは、 補正目標床反力モーメントを目標床 反力鉛直成分で割った値だけ、 単純化モデル歩容の目標 ZMP (理想目 標 Z MP) からずれた点に変更される。 補正歩容の真の Z MP =目標 Z MP
+補正目標床反力モーメントノ目標床反力鉛直成分
…式 h7 尚、 補正歩容の真の Z MPの X 方向 (前後方向) 成分を算出する場 合には、 捕正目標床反力モーメントの Y 軸 (左右方向軸) まわり成分 を用いる。 また、 補正歩容の真の Z MPの Y 方向成分を算出する場合 には、 補正目標床反力モーメン卜の X 軸 (前後軸) まわり成分を用い る。 ただし、 補正歩容の真の Z M Pの Y 方向成分を算出する場合には 式 h7の右辺の 「十」 は 「一」 にしなければならない。
補足すると、 補正歩容の真の Z MPまわりの補正目標床反カモ一メン 卜鉛直成分を算出するようにしても良い。
補正歩容の真の Z MPまわりの補正目標床反力モーメント鉛直成分は. 元の目標 Z MPまわりのモーメントに補正歩容の真の ZMPと目標 Z M Pの差と式 h6で求めた補正目標床反力水平成分との外積を加えたもの となる。
式 h7から求められる補正歩容の真の Z M Pは、 ZMP許容範囲内に なければならない。 これを ZMP制約条件と呼ぶ。
また、 補正目標床反力水平成分は、 歩容補正用 (フルモデル補正用) 5 の床反力水平成分許容範囲内になければならない。 これを床反力水平成 分制約条件と呼ぶ。
また、 補正目標床反力モーメント鉛直成分は、 歩容補正用 (フルモデ ル補正用) の床反力モーメント鉛直成分許容範囲内になければならない < これを床反力モーメン卜鉛直成分制約条件と呼ぶ。
10 以上のように、 補正歩容は、 式 h5、 式 h6、 式 hi 0 0 6、 Z MP 制約条件 (式 h7から得られる補正歩容の真の Z M Pの存在範囲条件) 床反力水平成分制約条件および床反力モーメント鉛直成分制約条件を満 足しなければならない。
しかし、 単に、 これらの式や条件を満足するだけでは、 前記捕正用摂 15 動モデル上体位置と前記補正用摂動モデル上体姿勢傾斜角と前記補正用 摂動モデル逆位相腕振り角が発散してしまう。
そこで、 前記上体水平位置補正用摂動モデル 2 0 2と前記上体姿勢傾 斜角補正用摂動モデル 2 0 3と前記逆位相腕振り角補正用摂動モデル 2 3 1の状態量 (より具体的には、 補正用摂動モデル上体水平位置速度、 0 補正用摂動モデル上体姿勢傾斜角 · 角速度、 補正用摂動モデル逆位相腕 ^ 振り角 '角速度など) を基に、 これらの状態量がある所定の状態に収束 する (安定する) ように、 補正用摂動モデル 2 0 2 , 2 0 3, 2 3 1の 安定化制御を行う。
まず、 上体水平位置補正用摂動モデル 2 0 2の安定化制御について詳 !5 細を説明する。
上体水平位置補正用摂動モデル 2 0 2を目標整定位置に収束 (安定) させるための制御則を上体水平位置補正用摂動モデル制御則 2 0 6と呼 び、 この制御則が決定するフィードバック量 (操作量) を上体水平位置 補正用摂動モデル安定化モーメン ト要求値 Mpfdmd と呼ぶ。 ここで 「要求値」 を付けたのは、 後述するように、 真の Z M Pが前記 Z M P許 容範囲内に存在し、 かつ、 床反力水平成分が床反力水平成分許容範囲内 になるように、 上記制御則で決定された値に制限が加えられて修正され るからである。 制限が加えられて修正されたモーメントを、 上体水平位 置補正用摂動モデル安定化モ一メント Mpf と呼ぶ。
具体的に上体水平位置補正用摂動モデル制御則 2 0 6としては、 式 h 1 0を用いる。 ただし、 目標整定位置は、 式 h 8で与えられる。 また、 mtotal は前記口ポッ ト総重量、 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 Z J P 0 3 Z 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は、 具体的に は、 次式のようにすれば良い。 上体姿勢傾斜角補正用摂動モデル安定化モ一メント要求値 Mrfdmd = Krp * (補正用摂動モデル上体姿勢傾斜角 0 c
- (基準上^体姿勢傾斜角一単純化モデルによる目標上体姿勢傾 斜角))
+ Krv *補正用摂動モデル上体姿勢傾斜角速度 d 0 c/dt
…式 h i 1 ただし、 Krp、 Krvはフィードバック制御のゲインである。 なお、 式 h i 1 において、 (基準上体姿勢傾斜角一単純化モデルによ る目標上体姿勢傾斜角) の代わりに 0としてもよい。
再び、 図 6 6の機能ブロック図を用いて S 3 5 3 6の処理を説明する と、 上記のごとく、 前記上体水平位置補正用摂動モデル制御則 2 0 6 (式 h i 0 ) によって上体水平位置補正用摂動モデル安定化モーメント 要求値 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 - 1/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によって得られるが、 前述の ごとく、 上体姿勢傾斜角補正用摂動モデル? 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 * Mp f dm d + Ff ull + F0 …式 h i 5 次いで、 制限手段 (制限処理部) 2 1 1によって、 無制限時補正目標 床反力モーメント水平成分 Min と無制限時補正目標床反力水平成分 Fin とから、 これらに制限を加えた値である (目標 Z M Pまわりの) 制 限補正目標床反力モーメント水平成分 Mltd と制限補正目標床反力水平 成分 Fltd が決定される。 本実施形態では、 コンプライアンス制御用目 標床反力モーメント水平成分は、 制限補正目標床反力モーメント水平成 分 Mltd に一致し、 補正歩容の床反力水平成分は制限補正目標床反力水 平成分 Fltdに一致する。
制限補正目標床反カモ一メント水平成分 Mltd と制限補正目標床反力 水平成分 Fltd とは、 補正歩容 (コンプライアンス制御用目標床反カモ ーメント水平成分を含む) の真の Z M Pが前記 Z MP許容範囲内に存在 し、 かつ、 補正歩容の床反力水平成分が床反力水平成分許容範囲内にな るように決定される。 すなわち、 Mltdおよび Fltdは Z M P制約条件お よび床反力水平成分制約条件を満足するように決定される。
また、 上記制約条件下で、 上体水平位置補正用摂動モデル安定化モー メント Mpは、 可能な限り、 上体水平位置補正用摂動モデル安定化モー メント要求値 Mpfdmd に一致または近い値になるように決定される。 同様に、 上体姿勢傾斜角捕正用摂動モデル安定化モーメント Mrは、 可 能な限り上体姿勢傾斜角補正用摂動モデル安定化モーメント要求値 Mrfdmd に一致または近い値になるように決定される。 これにより、 前 記補正用摂動モデル上体位置 Xc と前記補正用摂動モデル上体姿勢傾斜 角 0 cとを安定化し、 発散することを防止する。
制限手段 (制限処理部) 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により求めら れる。
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 が得られる ( また、 ]\^ 演算部2 1 3では、 目標 Z M Pまわりの制限補正目標床反力 モーメント水平成分 Mltd から前記上体水平位置補正用摂動モデル安定 化モ一メント Mpf と補償全床反カモ一メント水平成分 Mdmdxy とを減 じることにより、 上体姿勢傾斜角補正用摂動モデル安定化モ一メント Mrfが得られる。
次いで、 以下の式により、 上体水平位置補正用摂動モデル床反力モー メント Mp、 および上体姿勢傾斜角補正用摂動モデル床反力モーメント Mrが求められる。
Mp = Mpf- Mfull 式 h 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 を加えることにより補正目 標上体姿勢傾斜角が得られ、 これが最終的な目標上体姿勢傾斜角として 出力される。
また、 目標 Z M Pまわりのコンプライアンス制御用目標床反力モーメ ント水平成分として制限補正目標床反力モーメン卜水平成分 Mltd が出 力されると共に、 補正目標床反力水平成分として制限補正目標床反力水 平成分 Fltdが出力される。
すなわち、 次式 h 2 6、 式 h 2 7に従って、 補正目標床反力水平成分 と目標 Z M Pまわりの補正目標床反力モーメント水平成分とがそれぞれ、 床反力水平成分および床反力モーメント水平成分 (目標 Z M Pまわりの モーメント水平成分) の最終的な目標瞬時値として決定され、 これらが 出力される。 コンプライアンス制御用目標床反力モーメント水平成分
二制限補正目標床反カモ一メント水平成分 Mltd
…式 h 2 6 捕正目標床反力水平成分
=制限補正目標床反力水平成分 Fltd
…式 h 2 7
S 3 5 3 6における以上までの処理は、 本願出願人による P C T / J P 0 3 / 0 0 4 3 5の通りであるので、 ここでの説明は以上に留める。 本実施形態ではさらに、 逆位相腕振り角補正用摂動モデルモ一メント 決定部 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 *補正用摂動モデル逆位相腕振り角速度 d 0 ca/dt
…式 h 3 0 ただし、 Kap、 Kavはフィードバック制御則のゲインである。 なお、 式 h 3 0において、 (基準逆位相腕振り角一単純化モデルによ る目標逆位相腕振り角) の代わりに 0としてもよい。
以下に、 逆位相腕振り角補正用摂動モデルモーメント決定部 2 3 0の 動作についてその機能ブロック図である図 7 0を用いて詳細を説明する < まず、 上記のごとく、 前記逆位相腕振り角補正用摂動モデル制御則 2 3 0 a (式 h 3 0 ) によって逆位相腕振り角補正用摂動モデル安定化モ —メント要求値 Mafdmdが求められる。
次いで、 上体水平位置補正用摂動モデル 2 0 2を用いた上体水平位置 補正に起因する床反力モーメント鉛直成分摂動量 Mpz が、 上体水平位 置補正に起因する床反力モーメント鉛直成分摂動量算出部 2 3 0 bによ つて求められる。
具体的には、 次式によって求められる。
Mpz= (単純モデル上体質点位置
+補正用摂動モデル上体位置 Xc—目標 Z M P )
* (単純モデル上体質点水平加速度
+補正用摂動モデル上体加速度 d2Xc/dt2)
― (単純モデル上体質点位置 一 目標 Z M P )
* (単純モデル上体質点水平加速度)
…式 h 3 1
あるいは、 上式を近似した以下の式を用いても良い。 Mpz 補正用摂動モデル上体位置 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 が決定される。 本実施形態では、 コンプライアンス制御用目標床反カモ 一メント鉛直成分は、 制限補正目標床反力モーメント鉛直成分 Mltdz に一致する。
制限補正目標床反力モーメント鉛直成分 Mltdz は、 床反カモ一メン ト鉛直成分許容範囲内になるように決定される。 すなわち、 Mltdzは床 反力モーメント鉛直成分制約条件を満足するように決定される。
また、 上記床反力モーメント鉛直成分制約条件下で、 逆位相腕振り角 補正用摂動モデル安定化モーメント Maf は、 可能な限り、 逆位相腕振 り角補正用摂動モデル安定化モーメント要求値 Mafdmd に一致または 近い値になるように決定される。 これにより、 前記補正用摂動モデル逆 位相腕振り角 0 caを安定化し、 発散することを防止する。
制限手段 (制限処理部) 2 3 0 dは、 次式に示す飽和特性を持った関 数である。
Minz〉床反力モーメント鉛直成分許容範囲上限値である場合
Mltdz=床反力モーメント鉛直成分許容範囲上限値
Minzく床反力モーメント鉛直成分許容範囲下限値である場合
Mltdz=床反力モーメント鉛直成分許容範囲下限値
床反力モーメント鉛直成分許容範囲下限値≤ ]\^11'2、 且つ、 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の歩容補正が行われる。
尚、 補足すると、 本実施形態は、 フィードフォワード型の補正であり また、 摂動動力学モデルは厳密モデルではない。 このため、 上記のごと く式 h 5、 式 h 6および式 h i 0 0 6を満足するように歩容を補正して も、 厳密には、 動力学平衡条件を満足するするわけではなく、 近似的に 動力学平衡条件を満足する。 '
また、 本実施形態では、 例えば 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、 補正用摂動モデル上体姿 勢傾斜角 0 cおよび補正用摂動モデル逆位相腕振り角 0 caの算出が行な われる。 これにより各摂動モデル 2 0 2 , 2 0 3, 2 3 1の挙動の安定 性をより一層高めることができる。 なお、 上記のような単純化モデル 2 0 0の状態量の修正は、 歩容の生成途中で適宜行なってもよい。 逆に、 上記のような単純化モデル 2 0 0の状態量の修正や摂動モデルのリセッ トを、 歩容の生成途中に行なわなくてもよい。
また、 上記のような単純化モデル 2 0 0の状態量の修正は、 後述する 第 4、 第 5実施形態においても同様に行なわれる。
本実施形態では、 前記復元条件すベてを満足する。 したがって、 前記 第 2実施形態と同様の作用効果を奏することができる。 .
さらに、 第 2実施^態の作用効果に加え、 前記復元条件を満足するよ うに上体水平位置、 上体姿勢傾斜角および逆位相腕振り角を決定する際 に、 演算量を比較的少ないものとすることができる。
以上説明した第 3実施形態は、 本発明のうちの第 1〜第 1 0発明、 第 1 2〜第 1 5発明、 第 2 0〜第 2 2発明、 第 2 4〜第 2 6発明、 第 2 8 〜第 3 0発明の実施形態になっている。 この場合、 第 3実施形態におけ る床反力モーメント鉛直成分 (Mdmdz を付加した床反力モーメント鉛 直成分) が制御対象量、 上体ョ一角偏差および または上体ョー角速度 偏差が口ポッ ト 1の状態量の偏差、 Mdmdz が補償床反力モーメントに 相当する。 また、 第 3実施形態における歩容生成用 (フルモデル補正 用) の床反力モーメント鉛直成分許容範囲 [Mzmin,Mzmax]が制限対象 量の許容範囲に相当する。 また、 単純化モデル歩容の運動成分が目標運 動の仮瞬時値に対応し、 これを S 3 5 3 6で修正したものが目標運動の 瞬時値に対応する。 また、 発明における動力学モデルは、 フルモデル (逆位相腕振り角補正用摂動モデルを含む) が相当する。 そして、 前記 逆位相腕振り角補正用摂動モデルモーメント M aが第 1 0発明における モーメント修正操作量と、 第 2 2発明における摂動モデル操作量とに相 当し、 補正用摂動モデル逆位相腕振り角 0 ca が第 2発明における目標 運動の仮瞬時値の修正量と、 第 2 2発明における目標運動の補正量とに 相当する。 さらに、 第 3実施形態における、 無制限時補正目標床反カモ ーメント鉛直成分 Minzが第 2 6発明における制限対象量の推定値に、 逆位相腕振り角補正用モデル安定化モーメント Mafdmd が第 3発明に おけるモデル補正床反力モ一メンと第 2 4発明における摂動モデル操作 量の要求値とに相当する。 さらに、 第 3実施形態におけるフルモデル床 反力モーメント鉛直成分 Mfullz に上体水平位置補正に起因する床反力 モーメント鉛直成分 Mpz を加えたものが、 目標運動の傢瞬時値にフル モデル (動力学モデル) 上でほぼ釣り合う床反力モーメントの鉛直成分 に相当する。 そして、 これに図 7 0の演算部 2 3 0 cで Mdmdz を加え たものが第 2 0発明におけるモデル制限対象量瞬時値に相当する。
なお、 前記第 3実施形態においては、 Mafdmdは定常的に 0となるも 09472
2 1 9 のでは無いが、 これを定常的に 0とすれば、 本発明のうちの第 2 3発明 の実施形態が構成されることとなる。
次に本発明の第 4実施形態を以下に図 7 1及び図 7 2を参照して説明 する。 第 4実施形態に係る装置の捕正手法は、 前記第 3実施形態のもの と歩容生成装置 1 0 0の処理 (図 6 5の S 3 5 3 6の処理) のみが相違 するものであり、 フルモデルフィードバック補正型である。 また、 逆動 力学フルモデル (逆フルモデル) を用いる手法で、 かつ単純化モデル歩 容の入力を補正しない手法であり、 かつ摂動モデルを用いる手法である < 図 7 1は、 この第 4実施形態に係る装置の動作、 具体的には、 図 6 5 のフローチャートの S 3 5 3 6の歩容の修正手法を説明する機能ブロッ ク図である。 ただし、 図 7 1の単純化モデル 2 0 0は、 前記第 3実施形 態と同様、 単に動力学モデルだけでなく、 図 6 5の S 3 5 1 0から S 3 5 3 2の処理、 すなわち単純化モデル歩容瞬時値の算出 (決定) 処理を 表す。 したがって、 図 7 1において、 単純化モデル 2 0 0から先の部分 が S 3 5 3 6の処理に相当する。 なお、 図 7 1の機能部分のうち、 第 3 実施形態に係る図 6 6と同一の機能分については、 図 6 6と同一の参照 符号を用い、 詳細な説明を省略する。
S 3 5 3 6の処理以外の構成は第 3実施形態と词じであるので説明を 省略し、 以下に図 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 ) で算出した後述する補正用摂動モデル上 体姿勢傾斜角 0c を演算部 2 0 4により加えることにより、 最終的な目 標上体姿勢傾斜角 (補正目標上体姿勢傾斜角) が求められる。 また、 図 6 5の S 3 5 3 2で求めた単純化モデル歩容の目標逆位相腕振り角の瞬 時値 (現在時刻 tの制御周期で求めた仮瞬時値) に、 前回制御周期 (時 刻 t — A t ) で算出した後述する補正用摂動モデル逆位相腕振り角 0ca を演算部 2 3 2により加えることにより、 最終的な目標逆位相腕振り角 (補正目標逆位相腕振り角) が求められる。
そして、 これらの捕正目標上体水平位置、 補正目標上体姿勢傾斜角お よび補正目標逆位相腕振り角が、 それぞれ上体水平位置、 上体姿勢傾斜 角および逆位相腕振り角の最終的な目標瞬時値として出力される。
すなわち、 前記式 h2 4、 式 h2 5、 式 h3 7により、 補正目標上体 水平位置と補正目標上体姿勢傾斜角と捕正目標逆位相腕振り角とが求め られる。
次いで、 上記の如く単純化モデル歩容を補正して得られた目標上体水 平位置 (補正目標上体水平位置)、 目標上体姿勢傾斜角 (補正目標上体 姿勢傾斜角)、 目標逆位相腕振り角 (補正目標逆位相腕振り角)、 および 前述のごとく得られた単純化モデル歩容の目標重心位置、 目標足平位置 姿勢、 目標腕姿勢などの運動変数の瞬時値と目標 ZMPの瞬時値とを、 前記逆動力学フルモデル 2 0 1に入力し、 その入力された運動変数で表 される運動に釣り合う (すなわち運動によって逆フルモデル 2 0 1が発 生する) 床反力水平成分と目標 Z MPまわりの床反力モーメント (水平 成分および鉛直成分) とが算出される。 従って、 本実施形態では、 逆フ ルモデル 2 0 1には、 単純化モデル上体水平位置、 上体姿勢傾斜角、 逆 位相腕振り角に加えて、 補正用摂動モデル上体水平位置 Xc と補正用摂 動モデル上体姿勢傾斜角 Θ cと補正用摂動モデル逆位相腕振り角 0 caと が追加的に入力される。 以降、 第 3実施形態と同様、 逆フルモデル 2 0 1'により算出された床反力水平成分、 床反力モーメント水平成分、 床反 力モーメント鉛直成分、 をそれぞれフルモデル床反力水平成分 Ffullxy、 フルモデル床反力モーメント水平成分 Mfulb y、 フルモデル床反力モー メント鉛直成分 Mfullzと呼ぶ。
フルモデル床反力水平成分 Ffull は、 補正目標床反力水平成分 (現在 時刻 tにおける床反力水平成分の最終的な目標瞬時値) として出力され る。
すなわち、 以下の式により、 補正目標床反力水平成分が決定されて出 力される。 補正目標床反力水平成分-フルモデル床反力水平成分 Ffull
…式 h 4 8 以上の処理からわかるように、 本実施形態では、 フルモデル補正歩容 は、 単純化モデル歩容に上体水平位置補正用摂動モデル 2 0 2の挙動と 上体姿勢傾斜角補正用摂動モデル 2 0 3の挙動と逆位相腕振り角補正用 摂動モデル 2 3 1の挙動とを加えたものになる。 'さらに、 上体傾斜モー ドが発生する床反力水平成分および逆位相腕振りモードが発生する床反 力水平成分がいずれも 0であることを考慮すると、 次式が成立する。 た だし、 単純化モデル床反力水平成分は、 単純化モデル歩容の運動によつ て発生する床反力を逆フルモデル 2 0 1を用いて算出したものの並進力 水平成分である。 フルモデル床反力水平成分 Ffull
-単純化モデル床反力水平成分
+上体水平位置補正用摂動モデル床反力水平成分 Fp
…式 h5 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
…式 h5 2 ただし、 重心差は、 次式で求められる。 重心差 =フルモデル重心水平位置一単純化モデル重心水平位置
…式 h5 3 式 h 5 2における Kpg、 Kvgはフィードバック制御則のゲインであり フルモデル重心水平位置、 単純化モデル重心水平位置および補正用摂動 モデル上体水平速度 dXc/dt は、 それぞれ、 前回 (時刻 t — Δ t ) に後 述のごとく算出したフルモデル歩容瞬時値の重心水平位置、 単純化モデ ル歩容瞬時値の重心水平位置 (単純化モデル歩容の瞬間姿勢を基に単純 化モデルを用いて計算される重心水平位置 XGs)、 および補正用摂動モ デル上体水平速度 dXc/dtである。
即ち、 フルモデル重心水平位置から単純化モデル重心水平位置を減算 して得た重心差と摂動モデルの状態量のひとつである摂動モデル上体速 度とに基づいて摂動モデル制御用フィードバック量 (操作量) を演算す るようにした。 かかる摂動モデル制御則により、 前記重心差の時間的平 均値を、 ほぼ 0に制御することができる。
次いで、 上体姿勢傾斜角補正用摂動モデル制御則 2 0 7により、 上体 姿勢補正用摂動モデル安定化モーメント要求値 Mrfdmd が決定される ( これは、 第 3実施形態と同様の制御則を用いれば良い。 従って、 該制御 則 2 0 7としては、 例えば前記式 h i 1が用いられる。
次いで、 無制限時補正目標床反力モーメント Minが Min演算部 2 0 9により求められる (推定される)。 無制限時補正目標床反力モーメン 卜 Min は、 第 3実施形態と同様、 前記制約 (Z M P制約条件および床 反力水平成分制約条件) を無視して、 上体水平位置補正用摂動モデル安 定化モーメント Mpf を上体水平位置補正用摂動モデル安定化モーメン ト要求値 Mpfdmd に一致させ、 かつ、 上体姿勢傾斜角補正用摂動モデ ル安定化モーメント Mrf を、 上体姿勢傾斜角補正用摂動モデル安定化 モーメント要求値 Mrfdmd に一致させると共に、 目標 Z M Pまわりの 目標床反カモ一メントとしてのコンプライアンス制御用目標床反力モー メント水平成分を補償全床反力モーメント水平成分 Mdmdxy と Mpf と Mrf との総和に一致させた場合に、 目標 Z M Pまわりに発生する床反力 モーメント水平成分である。 '
無制限時補正目標床反力モーメント水平成分 Min は、 第 3実施形態 と同様、 前記式 h i 3の演算によって求められる。 すなわち、 無制限時 補正目標床反力モーメント水平成分 Min は、 上体水平位置補正用摂動 モデル安定化モーメント要求値 Mpfdmd と上体姿勢傾斜角補正用摂動 モデル安定化モーメント要求値 Mrfdmd と補償全床反力モーメント水 平成分 Mdmdxyとを加算することにより得られる。 さらに、 Fin演算部 2 1 0により、 無制限時補正目標床反力水平成分 Fin も求められる (推定される)。 無制限時補正目標床反力水平成分 Fin は、 第 3実施形態と同様、 前記制約 (Z M P制約条件および床反力 水平成分制約条件) を無視して、 上体水平位置補正用摂動モデル安定化 モーメント Mpf を上体水平位置補正用摂動モデル安定化モーメント要 求値 Mpfdmd に一致させ、 かつ、 上体姿勢傾斜角補正用摂動モデル安 定化モーメント Mrf を、 上体姿勢傾斜角補正用摂動モデル安定化モー メント要求値 Mrfdmd に一致させると共に、 コンプライアンス制御用 目標床反力モーメ ン ト水平成分を補償全床反力モーメン ト水平成分 Mdmdxy と Mpf と Mrf との総和に一致させたとした場合に、 逆フルモ デル 2 0 1が発生する床反力水平成分 (Ffullに相当) である。
無制限時補正目標床反力水平成分 Fin は、 第 3実施形態とは異なり, 次式により求められる。 無制限時補正目標床反力水平成分 Fin
=フルモデル床反力水平成分 Ffull
+ 1/h
* (上体水平位置補正用摂動モデル安定化モーメント要求値 Mpfdmd 一上体水平位置補正用摂動モデル安定化モーメント Mpf)
…式 h 5 4 ただし、 上体水平位置補正用摂動モデル安定化モーメント Mpf は前 回値 (時刻 t — A tでの値) が用いられる。 すなわち、 上体水平位置補 正用摂動モデル安定化モーメント要求値 Mpfdmd と上体水平位置補正 用摂動モデル安定化モーメント Mpf の差を求め、 上体水平位置補正用 摂動モデルの入力を前記差だけ増加させることに起因するフルモデル床 反力水平成分 Ffull の増加量を、 前記差を上体並進モード床反力比率 h で割ることにより推定する。 さらに、 これにフルモデル床反力水平成分 Ffull を加えることにより、 無制限時補正目標床反力水平成分 Finが推 定される。
' 次いで、 第 3実施形態と同様の制限手段 (制限処理部 2 1 1 ) によつ て、 無制限時補正目標床反力モーメント水平成分 Min と無制限時補正 目標床反力水平成分 Fin とから、 前記制約 (Z M P制約条件および床 反力水平成分制約条件) を満足するように、 これらに制限を加えた値で ある (目標 Z M Pまわりの) 制限補正目標床反力モーメント水平成分 Mltd と制限補正目標床反力水平成分 Fltdとが決定される。 この処理手 法は、 第 3実施形態と同一である。
本実施形態においても、 コンプライアンス制御用目標床反力モーメン ト水平成分は制限補正目標床反力モーメント水平成分 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 Z J P 0 3 / 0 0 4 3 5の通りであるので、 ここでの説明は以上に留める。
本実施形態ではさらに、 逆位相腕振り角補正用摂動モデルモーメント 決定部 2 3 0において、 逆位相腕振り角モーメント補正用摂動モデル Maが決定される。
さらに逆位相腕振り角補正用摂動モデルモーメント Maが逆位相腕振 り角補正用摂動モデルに入力されて、 補正用摂動モデル逆位相腕振り角 Θ caが決定される。
以下に、 本実施形態での逆位相腕振り角補正用摂動モデルモーメント 決定部 2 3 0の動作についてその機能ブロック図である図 7 2を用いて 詳細を説明する。 .
まず、 逆位相腕振り角補正用摂動モデル制御則により、 逆位相腕振り 角補正用摂動モデル安定化モーメント要求値 Mafdmd が決定される。 これは、 第 3実施形態と同様の制御則を用いれば良い。 従って、 該制御 則としては、 例えば前記式 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 ) にお いて、 前回値として用いられる。
残余の構成および処理は、 第 3実施形態と同一である。 この第 4実施 形態によれば、 第 3実施形態と同様の作用効果を奏することができる。 '以上説明した第 4実施形態は、 本発明のうちの第 1〜第 1 0発明、 第 1 2〜 1 5発明、 第 2 0〜第 2 2発明、 および第 2 4〜第 3 0発明の実 施形態になっている。 この場合、 第 4実施形態における床反力モーメン ト鉛直成分 (Mdmdz を付加した床反力モーメント鉛直成分) が制御対 象量、 上体ョ一角偏差および Zまたは上体ョ一角速度偏差が口ポッ ト 1 の状態量の偏差、 Mdmdz が補償床反力モーメントに相当する。 また、 第 4実施形態における歩容生成用 (フルモデル補正用) の床反力モ一メ ント鉛直成分許容範囲 [Mzmin,Mzmax]が制限対象量の許容範囲に相当 する。 また、 単純化モデル歩容の運動成分が目標運動の仮瞬時値に対応 し、 これを S 3 5 3 6で修正したものが目標運動の瞬時値に対応する。 また、 発明における動力学モデルは、 フル乇デル (逆位相腕振り角補正 用摂動モデルを含む) が相当する。 そして、 前記逆位相腕振り角補正用 摂動モデルモーメント M aが第 3発明におけるモデル補正床反力モ一メ ントと第 1 0発明におけるモーメント修正操作量と、 第 2 2発明におけ る摂動モデル操作量とに相当し、 補正用摂動モデル逆位相腕振り角 0 ca が第 2発明および第 1 1発明における目標運動の仮瞬時値の修正量と、 第 2 2発明における目標運動の補正量とに相当する。 さらに、 第 4実施 形態における、 無制限時補正目標床反カモ一メント鉛直成分 Minzが第 2 6発明における制限対象量の推定値に、 逆位相腕振り角補正用モデル 安定化モーメント要求値 Mafdmd が第 3発明におけるモデル補正床反 力モーメンと第 2 4発明における摂動モデル操作量の要求値に相当する' さらに、 第 4実施形態におけるフルモデル床反力モーメント鉛直成分 Mfullz が、 目標運動の仮瞬時値にフルモデル (動力学モデル) 上でほ ぼ釣り合う床反力モーメントの鉛直成分に相当する。 そして、 これに図 7 2の演算部 2 3 0 gで Mdmdz を加えたものが第 2 0発明におけるモ デル制限対象量瞬時値に相当する。 また、 第 4実施形態では、 第 2 7発 B の如く、 目標運動の補正量 (補正用摂動モデル逆位相腕振り角 0 ca) が動力学モデルであるフルモデルに追加的に入力きれる。
なお、 前記第 4実施形態においては、 Mafdmdは定常的に 0となるも のでは無いが、 これを定常的に 0とすれば、 本発明のうちの第 2 3発明 の実施形態が構成されることとなる。
次に、 本発明の第 5実施形態を図 7 3および図 7 4を参照して説明す る。 第 5実施形態は、 前記第 3および第 4実施形態で用いた逆動力学フ ルモデル (逆フルモデル) 2 0 1に代えて、 順動力学モデル (より正確 には擬似順動力学モデル) を用いて歩容を修正しつつ生成する手法であ る。
図 7 3は、 この第 5実施形態に係る装置の動作を説明する機能ブロッ ク図である。 同図 7 3に示すように、 本実施形態では、 擬似順フルモデ ル (擬似順動力学フルモデル) 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 bにより生成される。
上記擬似順フルモデル 2 2 2は、 具体的 fcは図 7 4の機能ブロック図 で表され、 図 7 4の破線で囲った部分が擬似順フルモデル 2 2 2に相当 する。 なお、 この機能ブロック図で前記第 4実施形態の図 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の今 回歩容瞬時値 (単純化モデル歩容瞬時値) の算出 (決定) 処理において は、 前記第 3実施形態で説明したように目檫 Z M Pまわりのモデル操作 床反力モーメント水平成分を 0として歩容の瞬時値を生成した上で、 さ らに第 3実施形態において述べた上体姿勢傾斜角補正用摂動モデルモー メント Mr に相当する単純化歩容上体姿勢傾斜角補正用モーメント Mr (前回値) を発生する上体傾斜モードの摂動運動と第 3実施形態におい て述べた上体水平位置補正用摂動モデルモ一メント Mpに相当する単純 化モデル上体水平位置補正用モーメント Mp (前回値) を発生する上体 並進モードの摂動運動と第 3実施形態において述べた逆位相腕振り角補 正用摂動モデルモーメント Maに相当する単純化モデル逆位相腕振り角 補正用モーメント Ma (前回値) を発生する逆位相腕振りモードの摂動 運動を付加する。 これにより、 単純化モデル 2 0 0が出力する歩容の瞬 時値を補正する。
より具体的に説明すると、 本実施形態における図 6 5の S 3 5 3 2の 処理においては、 そのサブルーチン処理である図 5 7の S 34 1 4と S 3 4 1 6において、 単純化モデル 2 0 0で求めた上体水平加速度に、 前 記式 0 3y の右辺第 2項を Mp (前回値) に等しいとした式、 すなわち Mp = mb * (Zb - Zzmp) * (d2Xb/dt2)という式に基づいて求められる上 体水平加速度(d2Xb/dt2)を摂動分として加えてなる上体水平加速度を今 回歩容の初期から現在時刻 tまで 2階積分することにより、 現在時刻 t における上体水平位置の瞬時値が求められる。 また、 図 5 7の S 3 4 1 4において、 単純化モデル 2 0 0で求めた上体姿勢傾斜角加速度に、 前 記式 0 3y の右辺第 7項を Mr (前回値) に等しいとした式、 すなわち, Mr= J* d20 by/dt2 という式に基づいて求められる上体姿勢傾斜角加 速度 (d20 by/dt2) を摂動分として加えてなる上体姿勢傾斜角加速度 を今回歩容の初期から現在時刻 tまで 2階積分することにより、 現在時 刻 tにおける上体姿勢傾斜角の瞬時値が求められる。 また、 図 5 7の S 3 4 1 4において、 単純化モデル 2 0 0で求めた逆位相腕振り角加速度 に、 前記式 0 3z の右辺第 8項を Ma (前回値) に等しいとした式、 す なわち、 Ma= Jaz* d20 az/dt2 という式に基づいて求められる逆位相 腕振り角加速度 (d20 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まわりの床反力モーメント (水平成分および鉛直成分) とが算出される。 以降、 第 4実施形態と同 様、 これらの算出された床反力水平成分、 床反力モーメント水平成分お よび床反力モ一メント鉛直成分をそれぞれフルモデル床反力水平成分 Ffull, フルモデル床反力モーメント水平成分 Mfullxy、 床反力モーメ ント鉛直成分 Mfullzと呼ぶ。
第 4実施形態と同様、 フルモデル床反力水平成分 Ffullは、 目標床反 力水平成分 (時刻 tでの床反力水平成分の最終的な目標瞬時値) として 出力される。
本実施形態では、 上体姿勢傾斜角補正用摂動モデルと上体水平位置補 正用摂動モデルと逆位相腕振り角補正用摂動モデルとを備えないので、 上体水平位置補正用摂動モデル制御則と上体姿勢傾斜角補正用摂動モデ ル制御則と逆位相腕振り角補正用摂動モデル制御則とに相当する処理は, 後述するように、 第 4実施形態とは異なる。
このことを除けば、 上記処理以降、 単純化モデル上体姿勢傾斜角捕正 用モーメント Mr と単純化モデル上体水平位置補正用モーメント Mp と 単純化モデル逆位相腕振り角補正用モーメント Maとを決定するまでは. 第 4実施形態において、 上体姿勢傾斜角補正用摂動モデルモーメント 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の処理は、 第 4実施形態 と同一である。 さらに、 逆位相腕振り角補正用摂動モデル制御則とに相 当する処理を除けば、 単純化モデル逆位相腕振り角捕正用モ一メント決 定部 2 3 0の処理は、 前記第 4実施形態における逆位相腕振り角補正用 摂動モデルモ一メント決定部 2 3 0の処理と同一である。 なお、 本実施 形態では、 Mr、 Mpおよび Maは、 それぞれ第 4実施形態における上体 姿勢傾斜角補正用摂動モデルモーメント Mr と上体水平位置補正用摂動 モデルモーメント Mp と逆位相腕振り角補正用摂動モデルモーメント Ma とにそれぞれ対応するものであるが、 第 4実施形態のように摂動モ デルに入力するものではなく、 単純化モデル 2 0 0に入力するものであ る。 このため、 Mr、 Mpおよび Maの名称を本実施形態では、 単純化モ デル上体姿勢傾斜角補正用モーメン卜、 単純化モデル上体水平位置補正 用モーメント、 単純化モデル逆位相腕振り角補正用モーメントと称して いる。
上記のごとく求められた単純化モデル上体姿勢傾斜角補正用モーメン ト Mr と単純化モデル上体水平位置補正用モ一メント Mp と単純化モデ ル逆位相腕振り角補正用モーメント Maとは、 前述のごとく次回制御周 期 (時刻 t + A t ) に、 単純化モデル歩容瞬時値の決定 (生成) 時に前 回値として用いられる。
残余の構成及び処理は、 第 4実施形態と同一である。
以下に、 上体姿勢傾斜角安定化モーメント要求値 Mrfdmd と上体水 平位置安定化モ一メント要求値 Mpfdmd と逆位相腕振り角安定化モー メント要求値 Mafdmd との決定処理について図 7 3を参照して説明す る。
図 7 3に示すように、 本実施形態では、 前述し'たように擬似順フルモ デル 2 2 2に備える単純化モデル 2 0 0とは別の単純化モデル 2 2 3を 備えている。 この単純化モデル 2 2 3は、 本実施形態でのその機能は、 前述した単純化モデル 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を用いて本実施形態における Mpfdmd および Mrfdmd の決定処理を詳細に説明する。
本実施形態においては、 単純化モデル 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 が、 前記擬似順 動力学フルモデルにフィ一ドバックされて入力される。
なお、 本実施形態では、 歩容生成装置 1 0 0は、 前記擬似順動力学フ ルモデル 2 2 2への入力の一部である目標 Z M P、 目標床反力鉛直成分 目標足平位置姿勢および目標腕姿勢などと、 前記擬似順動力学フルモデ ル 2 2 2からの出力である目標上体鉛直位置、 目標上体水平位置、 目標 上体姿勢傾斜角、 目標逆位相腕振り角、 目標床反力水平成分およびコン プライアンス制御用目標床反カモ一メント (水平成分および鉛直成分) を最終的な今回歩容の目標瞬時値として出力する。
以上説明した第 5実施形態によれば、 前記第 4実施形態と同様の作用 効果を奏することができる。
なお、 前記第 5実施形態では、 上体姿勢傾斜角安定モ一メント要求値 Mrfdmd 上体水平位置安定化モーメント要求値 Mpfdmdおよび逆位相 腕振り角安定化モーメント要求値 Mafdmd を擬似順フルモデル 2 2 2 のみに入力するようにしたが、 Mrfdmd、 Mpfdmdおよび Mafdmdを単 純化モデル 2 2 3に入力するようにしてもよく、 あるいは、 単純化モデ ル 2 2 3と擬似順フルモデル 2 2 2 とに分配 · 供給するようにしてもよ い。 また、 補償全床反力モーメント鉛直成分 Mdmdz を単純化モデル 2 2 3に入力し、 この Mdmdzが付加的に発生するように単純化モデル逆 位相腕振り角を決定するようにしてもよい。
以上説明した第 5実施形態は、 本発明のうちの第 4 4〜〜第 4 7発明 の実施形態となっている。 この場合、 第 5実施形態における床反カモ一 メント鉛直成分 (Mdmdz を付加した床反力モーメント鉛直成分) が制 御対象量、 上体ョ一角偏差およびノまたは上体ョー角速度偏差がロボッ ト 1の状態量の偏差、 Mdmdz が補償床反力モーメントに相当する。 ま た、 第 5実施形態における歩容生成用 (フルモデル補正用) の床反カ乇 一メント鉛直成分許容範囲 [Mzmin,Mzmax]が制限対象量の許容範囲に 相当する。 また、 単純化モデル歩容の運動成分が目標運動の仮瞬時値に 対応し、 これを S 3 5 3 6で修正したものが目標運動の瞬時値に対応す る。 さらに、 S 3 5 2 8で決定される今回歩容パラメータにより定まる 床反力が目標床反力の仮瞬時値に相当する。 また、 第 4 4発明における 第 1動力学モデルおよび第 2動力学モデルにはそれぞれ図 7 3の単純化 モデル 2 2 3、 擬似順フルモデルが相当する。 なお、 第 4 7発明におけ る第 1動力学モデル、 第 2動力学モデル、 第 3動力学モデルには、 それ ぞれ図 1 2の単純化モデル、 図 7 4の逆フルモデル、 図 7 3の単純化モ デル 2 2 3が相当する。 また、 第 5実施形態における逆位相腕振り角安 定化モ一メント Mafdmd が第 4 4発明における床反力モ一メントの操 作量と、 第 4 7発明における床反カモ一メント補正量の要求値に相当し. これは擬似順フルモデル (詳しくは図 7 4の単純化モデル逆位相腕振り 角補正用メーメント決定部 2 3 0 ) に追加的に入力される。
次に、 本発明の第 6実施形態を図 7 5を参照して説明する。 図 7 5は、 この発明の第 6実施形態に係る装置の動作、 具体的には、 図 6 5のフロ —チャートの S 3 5 3 6の歩容の修正手法を説明する機能ブロック図で ある。 なお、 図 7 5では、 第 3実施形態もしくは第 4実施形態と同一機 能部分については、 図 6 6又は図 7 1と同一の参照符号を用いる。
第 6実施形態においては、 上体水平位置補正用摂動モデル 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 と単純化モデル上体姿勢傾斜角補 正用モーメント Mi's との和が上体姿勢傾斜角補正用モーメント Mr に 一致するように、 上体姿勢傾斜角補正用摂動モデル入力 Mri と単純化 モデル上体姿勢傾斜角補正用モーメント Mrs とが決定される (出力さ れる)。
より具体的には、 上体姿勢傾斜角補正用モーメント Mr に応じて、 上 体姿勢傾斜角補正用摂動モデル入力 Mri が決定される。 例えば、 上体 姿勢傾斜角補正用モーメント Mr を不感帯特性、 飽和特性、 あるいは周 波数特性を持つ信号処理を通して、 上体姿勢傾斜角補正用摂動モデル入 力 Mri が決定される。 また、 上体姿勢傾斜角補正用モーメント Mr か ら上体姿勢傾斜角補正用摂動モデル入力 Mri を差し引いたものが、 単 純化モデル上体姿勢傾斜角補正用モーメント Mrs として決定される。 さらに具体的に説明すると、 本実施形態では、 分配器 2 2 0は、 例えば. 入力 (上体姿勢傾斜角補正用モーメント Mi' = Mltd— Mpf— Mdmdxy) をローパスフィル夕に通してなる低周波成分 (直流分) を単純化モデル 上体姿勢傾斜角補正用モーメント Mrs として出力すると共に、 その入 力 (上体姿勢傾斜角補正用モーメント Mr) から Mrs を差し引いた成分 が上体姿勢傾斜角補正用摂動モデル入力 Mri として出力される。 この 場合、 低周波成分 (直流分) である単純化モデル上体姿勢傾斜角補正用 モーメント Mrs に関しては、 不感帯特性を持たせておき、 上記ローパ スフィルタの出力が、 ある所定値を中心とする所定範囲内に存在する状 態では、 Mrsが該所定値 (例えば 0 ) に維持されるようにしておく。 分配器 2 2 0の出力である上体姿勢傾斜角補正用摂動モデル入力 Mri は、 前記上体姿勢傾斜角補正用摂動モデル 2 0 3に入力され、 上体姿勢 傾斜角補正用摂動モデル 2 0 3により補正用摂動モデル上体姿勢傾斜角 Θ cが決定される。
分配器 2 2 0のもうひとつの出力である単純化モデル上体姿勢傾斜角 補正用モーメント Mrs は単純化モデル 2 0 0に入力される。 これは、 前記第 5実施形態における図 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 として決定される, さらに具体的に説明すると、 本実施形態では、 分配器 2 2 1は、 例えば 入力 (積分器 2 1 7 aの出力) をローパスフィルタに通してなる低周波 成分 (直流分) を単純化モデル上体水平位置補正用モーメント MP S と して出力すると共に、 その入力 (積分器 2 1 7 aの出力) から Mps を 差し引いた成分を誤差補正モーメント Me として出力する。 この場合、 低周波成分 (直流分) である単純化モデル上体水平位置補正用モーメン h 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 Όに入力される。 これは、 前 記第 5実施形態の図 7 4において、 単純化モデル上体水平位置補正用モ 一メント Mpを単純化モデル 2 0 0に入力することに相当するものであ る。
逆位相腕振り角補正用摂動モデルモーメント決定部 2 3 0は、 第 4実 施形態において用いた図 7 2に示す逆位相腕振り角補正用摂動モデルモ 一メント決定部と同一である。 ただし、 図 7 2の'出力である逆位相腕振 り角補正用摂動モデルモ一メント Maは、 逆位相腕振り角補正用摂動モ デル 2 3 1 に直接入力されず、 分配器 2 4 1に入力される。 そこで、 本 実施形態では逆位相腕振り角補正用摂動モデルモーメント 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 と して決定される。 さらに具体的に説明すると、 本実施形態では、 分配器 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に入力される。 これは、 前記第 5実施形態における図 7 4において、 単純化モデル逆位相腕振り 角補正用モーメント Maを単純化モデル 2 0 0に入力することに相当す るものである。
単純化モデル 2 0 0は、 前記第 5実施形態と同様、 単純化モデル歩容 瞬時値の算出 (決定) 処理において、 目標 Z M Pまわりに床反力モーメ ント水平成分が発生しないように (モデル操作床反カモ一メントを 0と して) 歩容の瞬時値を生成した上で、 単純化モデル上体姿勢傾斜角補正 用モーメント Mrs (前回値) を発生する上体傾斜モードの摂動運動を 付加し、 単純化モデル上体水平位置補正用モーメント Mps (前回値) を発生する上体並進モ一ドの摂動運動を付加し、 さらに単純化モデル逆 位相腕振り角補正用モーメント Mas を発生する逆位相腕振りモ一ドの 摂動運動を付加して、 歩容の瞬時値を補正する。 '
なお、 本実施形態では、 図 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 の絶対値 が小さくなるので、 歩容パラメ一夕の修正量の絶対値も小さくなる。
その他の構成及び処理は、 第 4実施形態と同一である。 より詳しくは、 ^算部 2 0 4 , 2 0 5 , 目標上体水平位置を演算する演算部、 Merr 演 算部 2 1 6、 上体姿勢傾斜角補正用摂動モデル制御則 2 0 7、 上体水平 位置補正用摂動モデル制御則 2 0 6、 ] ^11演算部2 0 9、 Fin演算部 2 1 0、 制限処理部 2 1 1 、 Mpf 演算部 2 1 5、 逆位相腕振り角補正用 摂動モデルモーメント決定部 2 4 0の処理は、 前記第 4実施形態と同一 である。
なお、 本実施形態では、 前記第 3実施形態で説明したように今回歩容 の終端等で各摂動モデル 2 0 2、 2 0 3、 2 3 1の状態量により単純化 モデル 2 0 0の状態量を修正するような処理は行なう必要はない。 これ は、 分配器 2 2 0, 2 2 1 , 2 4 1から単純化モデル上体姿勢傾斜角補 正用モーメン ト Mrs、 単純化モデル上体水平位置補正用モーメント Mps 及び単純化モデル逆位相腕振り角補正用モーメント Mas が追加入 力されるからである。
かかる本実施形態では、 前記第 4実施形態あるいは第 5実施形態と同 様の作用効果を奏することができる。
なお、 本実施形態では、 各分配器 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 にすると、 第 4実施形態と同一の作用効果を奏することとなる (事実上. 第 4実施形態のものと同一構成となる)。 また、 誤差補正モーメント Meに上体水平位置補正用モデル安定化モ 一メント Mpf を加算した値を図示しない第 3の分配器に入力し、 その 出力の一方を上体水平位置補正用摂動モデルに入力し、 もう一方の出力 を単純化モデル上体水平位置補正用モーメント Mps に加算しても良い この場合、 分配器 2 2 1の出力である単純化モデル上体水平位置補正用 モーメント Mps を 0にしても良い。 すなわち、 分配器 2 2 1を省略し、 フルモデル床反力モーメント誤差 Merrにゲイン Kmを乗じた値を積分 して符号を反転した値を上体水平位置補正用モデル安定化モーメント Mpf に加算した値を第 3の分配器に入力しても良い。
以上説明した第 6実施形態は、 本発明のうちの第 1〜第 1 0発明、 第 1 2〜第 1 5発明、 第 2 0〜第 2 2発明、 第 2 4〜第 3 2発明、 第 3 4 〜第 4 1発明および第 4 3発明の実施形態になっている。 この場合、 第 6実施形態における床反力モーメント鉛直成分 (Mdmdz を付加した床 反力モーメント鉛直成分) が制御対象量、 上体ョ一角偏差および Zまた は上体ョ一角速度偏差がロボッ ト 1の状態量の偏差、 Mdmdz が補償床 反力モーメントに相当する。 また、 第 6実施形態における歩容生成用 (フルモデル補正用) の床反力モーメ ン ト鉛直成分許容範囲 [Mzmiii,MZmaX]が制限対象量の許容範囲に相当する。 また、 単純化モ デル歩容の運動成分が目標運動の仮瞬時値に相当し、 これを S 3 5 3 6 で修正したものが目標運動の瞬時値に相当する。 さらに、 S 3 5 2 8で 決定される今回歩容パラメータにより定まる床反力が目標床反力の仮瞬 時値に相当する。 また、 第 1発明、 第 6発明、 第 1 0発明、 および第 2 0発明における動力学モデルは、 逆フルモデル (逆位相腕振り角補正用 摂動モデルを含む) が相当し、 第 3 1発明における第 1動力学モデル、 第 2動力学モデルはそれぞれ図 1 2の単純化モデルと逆フルモデルが相 当する。 そして、 前記逆位相腕振り角補正用モーメント M aが第 3発明 におけるモデル補正床反力モーメントと、 第 1 0発明におけるモーメン ト修正操作量と、 および第 3 6発明における床反力モーメントの操作量 に相当し、 該 Maのうちの単純化モデル逆位相腕振り角補正用モ一メン ト Mas が第 3 1発明における床反力モーメント補正量に、 Mai が第 3 6発明における摂動モデル操作量に相当する。 また、 第 6実施形態にお ける逆位相腕振り角補正用モデル安定化モーメント要求値 Mafdmd が 第 3発明におけるモデル補正床反力モーメントと、 第 2 4発明における 摂動モデル操作量の要求値と、 第 3 4発明における床反力モーメント捕 正量の要求値と、 第 3 7発明における床反力モーメントの操作量の要求 値とに相当し、 補正用摂動モデル逆位相腕振り角 0 ca が第 2発明にお ける目標運動の仮瞬時値の修正量と、 第 2 2発明における目標運動の補 正量と、 第 3 5発明における目標運動の補正量とに相当する。 さらに、 第 6実施形態における、 無制限時補正目標床反力モ一メント鉛直成分 Minz が第 4 3発明における制限対象量の推定値に相当する。 さらに、 第 6実施形態におけるフルモデル床反力モーメント鉛直成分 Mfullz が. 目標運動の仮瞬時値にフルモデル (動力学モデル) 上で釣り合う床反力 モーメントの鉛直成分に相当する。 そして、 これに図 7 2の演算部 2 3 0 で Mdmdz を加えたものが第 2 0発明および第 3 1発明におけるモ デル制限対象量瞬時値に相当する。 また、 第 6実施形態では、 第 2 7発 明の如く、 目標運動の補正量 (補正用摂動モデル逆位相腕振り角 0 ca) が動力学モデルである逆フルモデルに追加的に入力される。 さらに、 第 6実施形態では、 第 3 1発明の如く単純化モデル逆位相腕振り角補正用 モーメント Mas が第 1の動力学モデルとしての単純化モデルに追加的 に入力される。
なお、 前記第 6実施形態においては、 Mafdmdは定常的に 0となるも のでは無いが、 これを定常的に 0とすれば、 本発明のうちの第 2 3発明 第 3 3発明、 第 4 2発明の実施形態が構成されることとなる。 なお、 以上説明した第 3〜第 6実施形態では、 図 6 5の S 3 5 3 2に おいて、 目標 Z M Pを満足するように、 すなわち、 目標 Z M Pまわりの 床反力モーメント水平成分が 0になるように、 今回歩容瞬時値 (目標運 動の仮瞬時値) を決定するようにしたが、 これに代えて、 第 1実施形態 における図 5 6の S 3 0 3 2のように、 目標 Z M Pまわりにモデル操作 床反力モーメント水平成分が発生するように今回歩容瞬時値を決定する ようにしてもよい。 この場合には、 図 5 3に示す如く、 歩容生成装置 1 0 0に補償全床反カモ一メント水平成分分配器 1 1 0からモデル操作床 反力モーメント水平成分を与えるようにすればよい。
また、 以上説明した第 1〜第 6実施形態においては、 補償全床反カモ 一メント水平成分 Mdmdxy は、 上体姿勢角 · 角速度の代わりに、 全体 重心水平位置 · 速度など、 口ポット 1の他の姿勢に関する状態量に基づ いて決定しても良い。
次に、 本発明の第 7実施形態を図 7 6から図 8 3を参照して説明する , 本実施形態における制御ュニット 6 0の機能プロック図を図 7 6に示 す。 なお、 本実施形態では、 前記第 2実施形態と同一構成部分もしくは 同一機能部分については第 2実施形態と同一の参照符号を用いる。
本実施形態では、 第 2実施形態 (図 5 9参照) に比較して、 実ロボッ 卜 1の滑りの有無を判定する滑り判定部 1 1 4が追加されている。 また 滑り判定部 1 1 4から出力される滑り判定結果が歩容生成装置 1 0 0に 入力される。 歩容生成装置 1 0 0においては、 滑り判定結果が滑りあり と判定されると、 歩容パラメ一夕を基に決定される床反力水平成分許容 範囲および床反力モーメント鉛直成分許容範囲を狭める。 また、 歩容生 成装置 1 0 0は、 滑り判定結果が滑りなしと判定されると、 歩容パラメ 一夕を基に決定される床反力水平成分許容範囲および床反力モーメント 鉛直成分許容範囲に戻す。 他の構成および処理に関しては、 前記第 2実 施形態と同一である。
滑り判定部 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の対地角速度鉛直成分 o supz の絶対値がある所定の値 co 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において、 前記支持脚足平の 対地角速度鉛直成分 co supz の絶対値が前記所定の値 co e を越えていな いと判定された場合には、 S 5 3 2 4に進み、 スピン判定結果を、 スピ ンなしと判定する。 このようにスピンの有無を判定することで、 足平 2 2などの撓み (弹性変形) によって、 co 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などの撓み (弾性変形) によって、 Ksups の絶対値がある所定の値 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までは、 第 2実施形態の フローチャート (図 6 0 ) の S 2 0 1 0から S 2 0 3 2までの処理と同 一の処理が行なわれる。 次いで S 2 3 3 4に進み、 修正歩容瞬時値決定サブルーチンが実行さ れる。
本実施形態では、 修正歩容瞬時値決定サブルーチンでは、 元歩容に近 づくように目標 Z MPおよび逆位相腕振り復元角加速度パターンを修正 しつつ、 修正された目標 Z M Pまわりにモデル操作床反力モーメント (水平成分および鉛直成分) が付加的に発生するように修正歩容瞬時値 が決定される。 ただし床反力許容範囲を滑り判定結果に応じて変更され、 この点が第 2実施形態と相違する。
図 7 8に修正歩容瞬時値決定サブルーチンのフロ一チヤ一卜を示す。 修正歩容瞬時値決定サブルーチンでは、 まず S 5 1 0 0から S 5 1 1 4 までの処理が、 第 2実施形態の修正歩容瞬時値決定サブルーチンである 図 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の処理である。
上記のごとく、 第 7実施形態においては、 床反力水平成分許容範囲お よび床反力モーメント鉛直成分許容範囲を滑り判定結果に応じて変更す るようにしたが、 床反力水平成分許容範囲および床反力モーメント鉛直 成分許容範囲のいずれか一方だけを変更するようにしても良い。
一般的に、 足平 2 2が床面上で平行に滑っている場合 (せん断方向に 滑っている場合) には、 スピン方向 (ョ一方向) のグリップ力も低下す る。 また逆に、 スピン方向 (ョ一方向) に滑っている場合には、 足平 2 2が床面上で平行に滑り易くなる。 したがって、 いずれかの滑りが検知 されたならば、 床反力水平成分許容範囲および床反力モーメント鉛直成 分許容範囲の両方を狭める ( 0にする) 方が滑りから回復する効果は高 い。
以上説明した第 7実施形態は、 前記第 2実施形態と同様に本発明のう ちの第 1〜第 9発明および第 1 5発明の実施形態になっていると同時に 第 1 6〜第 1 9発明の実施形態になっている。
また、 第 7実施形態は、 歩容生成装置 1 0 0としては、 第 2実施形態 の代わりに第 1、 第 3〜第 6実施形態のいずれのものを用いても良い。 第 1実施形態で、 第 7実施形態と同様に、 許容範囲を可変化する場合に は、 図 5 7の 3 3 .4 1 2と 3 3 4 1 4との間で、 図 7 8の S 5 1 1 6〜 S 5 1 2 2の処理を行なうようにすればよい。 なお、 この場合、 床反力 モーメント鉛直成分補償量許容範囲をも、 滑りの発生の判断結果に応じ て可変的に設定するようにしてもよい。 また、 前述のごとく、 第 3から 第 6実施形態においては、 床反力水平成分許容範囲および床反力モーメ ント鉛直成分許容範囲は、 単純化モデル歩容用のものと歩容補正用 (フ ルモデル補正用) のものとの 2種類がある。 これら許容範囲のすべてを 変更するようにしても良い。 また、 そうしなくとも、 少なくとも、 歩容 補正用のいずれかの許容範囲を滑り判定結果に応じて、 変更するように すべきである。 この場合、 前記制限手段 (制限処理部) 2 1 1, 2 3 0 d , 2 3 0 hの処理を実行する際に、 図 7 8の S 5 1 1 6〜 S 5 1 2 2 の処理を行なって、 許容範囲を可変的に設定するようにすればよい。 補 足すると、 第 3〜第 6実施形態で、 上記のように許容範囲を滑りの判断 結果に応じて設定することで、 本発明のうちの第 4 8〜第 5 1発明の実 施形態が構成されることとなる。
また、 第 7実施形態において、 滑りの判定方法としては、 実施の形態 において挙げた方式以外にも、 以下のようないずれを用いても良い。 あ るいはこれらの結果を総合的に (論理和、 積などの論理演算を用いて い) 判断しても良い。
1 ) 角速度検出器などを基に床に対する足平 2 2の角速度を求め、 この 値の絶対値がある所定の値を越えたら、 滑りが発生と判定する。
2 ) いずれかの脚体 2の床反力モ一メン卜の絶対値がある所定の値を越 えたら、 滑りが発生と判定する。
3 ) 全床反力モーメント (両脚体 2, 2の床反力の合力のモーメント) の絶対値がある所定の値を越えたら、 滑りが発生と判定する。
4 ) 両脚支持期において、 全床反力モーメントの変化率と上体姿勢角速 度偏差との比に (一 1 ) を乗じた値がある所定の値 (両脚接地時ねじり 剛性) よりも小さいならば、 滑りが発生と判定する。
5 ) 視覚センサや空間フィルタ等を用いた非接触型の対地速度、 角速度 検出器、 あるいは接触型の対地速度、 角速度検出器の検出値 (推定値) の絶対値がある所定の値を越えたならば、 滑りが発生と判定する。
次に、 前記第 1〜第 7実施形態に係る変形態様を以下に説明する。
前記第 3〜第 7実施形態においては、 補償全床反力モーメント水平成 分およびを補償全床反力モーメント鉛直成分を決定するようにしたが、 補償全床反力モーメント水平成分を 0に設定しても良い。 ただしこの場 合には、 フルモデルを用いて歩容を修正することによる上体姿勢傾斜復 元効果はなくなる。
前記第 3〜第 7実施形態においては、 単純化モデル 2 0 0による歩容 生成 (単純化モデル歩容生成) には、 本願出願人が先に提案した特開平 5 - 3 3 7 8 4 9号公報の第 1実施例、 第 2実施例の歩容生成装置を用 いても良い。 フルモデルによる補正量を小さくすることができるので、 補正された歩容が単純化モデル歩容から大きくずれることを防止できる 前記第 1実施形態においては、 補償全床反力モーメント水平成分 Mdmdxy が床反力モーメント許容範囲水平成分を越えると (第 3実施 形態以降においては、 補償全床反力モーメント水平成分 Mdmdxy とモ デル操作床反力モーメント水平成分との和が床反カモ一メント許容範囲 を越えると)、 コンプライアンス制御用目標床反力モーメント水平成分 は、 床反力モーメント水平成分許容範囲の上限値あるいは下限値になる c 但し、 補償全床反力モーメント水平成分 Mdmdxy (第 3実施形態以降 においては、 補償全床反力モーメント水平成分 Mdmdxy とモデル操作 床反力モーメント水平成分との和) が床反カモ一メント水平成分許容範 囲を越えていても、 補償全床反力モーメント水平成分 Mdmdxy (第 3 実施形態以降においては、 補償全床反力モーメント水平成分 Mdmdxy とモデル操作床反力モーメント水平成分との和) の増加もしくは減少に 応じてコンプライアンス制御用目標床反カモ一メント水平成分も増加も しくは減少するようにしても良い。 コンプライアンス制御用目標床反力 モーメント水平成分が床反カモ一メント水平成分許容範囲に接近すると, コンプライアンス制御によって制御される実床反力モーメント水平成分 が目標よりも少なめになる傾向があり、 このためコンプライアンス制御 用目標床反力モーメン卜水平成分が少々許容範囲を越えても、 すぐには- 足平 2 2の本来の接地感を低下させたり、 足平 2 2の底面が浮いてしま うような不具合が発生しない場合が多いからである。
同様の理由により、 床反力モーメント水平成分許容範囲をいわゆる支 持多角形で表される Z M P存在可能範囲 (厳密な表現では、 実床反力作 用点の存在許容範囲) をモーメント水平成分に換算して得られる許容範 囲を越えて設定しても良い。
コンプライアンス制御によつて発生する床反力モーメント水平成分に 過度に期待すると、 上記のごとく足平 2 2の本来の接地感を低下させた り、 足平 2 2の底面が浮いてしまうような不具合が発生する。 よって、 床反力モーメント水平成分許容範囲は、 姿勢制御がコンプライアンス制 御に期待する実床反力モーメント水平成分の許容範囲であると言える。 床反カモ一メント水平成分許容範囲は、 歩容パラメ一夕からのみなら ず、 検出された実床反力にも基づいて決定しても良い。 また、 階段での エッジ位置検出値など、 足平 2 2の接地領域の検出値にも基づいて決定 してもよい。
一方、 コンプライアンス制御によって発生する床反カモ一メント鉛直 成分に過度に期待すると、 スピンしてしまうような不具合が発生する。 よって、 床反力モーメント鉛直成分許容範囲は、 姿勢制御がコンプライ アンス制御に期待する実床反力モーメント鉛直成分の許容範囲であると 言える 0
前記第 1実施形態の図 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 に応じてマップを基に歩容パラメ一夕の修 正量を決定してもよい。
また、 他の実施形態 (第 3〜第 6実施形態) に対しても上記と同様に, 処理フローを変更して良い。
復元条件には、 前記した条件以外にも、 関節角が許容範囲を越えてい ないか、 脚などの干渉がないか、 関節角速度、 トルクが過大でないかな どのキネマテイクス条件、 ダイナミクス条件を加えても良い。
また、 これに伴って、 前述したごとく、 今回歩容パラメータの修正 (目標 Z M Pあるいは着地位置、 時刻などの修正) を制御周期毎に実行 するようにメインフローチヤ一トの処理を変更した場合には、 今回歩容 の安定余裕が高く維持されるように適宜変更される歩容パラメータの値 が、 適切な値になるように (ある制約条件を満足するように) すること も、 復元条件のひとつに加えても良い。
歩容の切り変わり目で決定された (読み込まれた) 着地位置、 着地時 刻は、 上位の制御装置からの指示 (歩行計画決定部ゃォペレ一夕からの 指示など。 これを当初の要求と呼ぶ。) によって決定されるので、 修正 歩容の着地位置、 着地時刻は、 できる限り歩容の切り変わり目で決定さ れた (読み込まれた) 着地位置、 着地時刻に戻るべきである。 そこで、 歩容の切り変わり目で決定された (読み込まれた) 着地位置、 着地時刻 を記憶し、 修正歩容の着地位置、 着地時刻が、 記憶された着地位置、 着 地時刻にできる限り一致または近づく ことも復元条件に加えても良い。 ただし、 実は、 前記復元条件 4、 5および 6によって、 修正歩容の着地 位置、 着地時刻は、 できる限り歩容の切り変わり目で決定された (読み 込まれた) 着地位置、 着地時刻に徐々に戻る作用が働くので、 あえて追 加する必要はない。
' また、 状況の変化に対応して、 当初の要求を変更し、 変更した要求を 満足する歩容パラメ一夕に、 上記のごとく歩容の安定余裕を高く維持す るために適宜変更される歩容パラメ一夕が、 できる限り一致または近づ く ことを復元条件に加えても良い。 この場合、 前記前記復元条件 4、 5 および 6は削除するべきである。
前述した各種の復元条件を満足するモデル上体水平位置安定化床反力 モーメントとモデル上体姿勢傾斜角安定化床反カモ一メントの決定法に は、 制約条件下で最適値を求めるための線形計画法 (シンプレックス法 など) や探索法を用いれば良い。 または、 ファジー推論を用いても良い ( また、 着地位置を変更する場合には、 歩行環境の障害物なども考慮し なければならない状況も考えられる。.このような状況にも対処できるよ うにするためには、 環境認識や行動決定などの人工知能の分野に属する 処理も加えて、 修正歩容を決定すべきである。
モデル逆位相腕振り角安定化床反力モーメントの決定法も同様である < 前記第 3〜第 6実施形態における制限手段 (制限処理部) の前後のブ ロック図は、 例えば本願出願人による P C T Z J P 0 2ノ 1 3 5 9 3で 示したように、 等価変換あるいは近似変換しても'良い。
この場合、 上体水平位置補正用モデル安定化モーメント Mpf を hで 割った値をローパスフィル夕に通した値を補正目標床反力水平成分 (フ ルモデル床反力水平成分 Ffull) から減じた値が上記 P C T出願におけ るバイアス推定値 destm に相当する。 したがって、 例えば、 前記第 4 〜第 6実施形態におけるゲイン Kc の積分を、 時定数 1 /Kc の 1次遅れ をフィードバック要素としたポジティブフィードバック系に置き換えた りして、 図 8 4のように、 近似変換をしても良い。 この例では、 第 4〜 第 6実施形態における Mpf 演算部 2 1 5が図示の如く近似変換されて いる。
'逆位相腕振り角補正用摂動モデルモーメントも、 同様に等価変換ある いは近似変換して求めるようにしてもよい。
前記第 3実施形態においては、 前記逆位相腕振り角補正用摂動モデル モーメントは、 図 7 0に示す機能ブロック図の代わりに、 図 8 5に示す 機能ブロック図の処理を行うようにしても良い。 これを第 8実施形態と して以下に説明すると、 図 7 0では、 逆位相腕振り角補正用モデルが復 元する動作によって発生するモーメント鉛直成分までも含めて、 床反力 モーメント鉛直成分許容範囲を越えるか否かが判定されて、 逆位相腕振 り角補正用モデルの挙動が決定されたが、 図 8 5に示す機能ブロック図 の処理では、 逆位相腕振り角補正用モデルが復元する動作によって発生 するモ一メント鉛直成分は、 床反力モーメント許容範囲を越えるか否か を判定する上で無視される。
図 8 5に示す機能ブロック図の処理を詳細に説明すると、 フルモデル 床反力モーメント鉛直成分 Mfullz と上体水平位置補正に起因する床反 力モーメント鉛直成分摂動量 Mpz と補償全床反力モーメント鉛直成分 Mdmdz との和を無制限時補正目標床反力モーメント鉛直成分 Minz と し、 これに図 7 0 と同様に制限を加えることにより、 制限時補正目標床 反力モーメント鉛直成分 Mltdz を求める。 制限時補正目標床反カモ一 メント鉛直成分 Mltdz は、 コンプライアンス制御用目標床反力モ一メ ント鉛直成分として出力される。 さらに、 制限時補正目標床反力モーメ ント鉛直成分 Mltdz から無制限時補正目標床反力モーメント鉛直成分 Minz を減じた値、 すなわち、 無制限時補正目標床反力モーメント鉛直 成分 Minz のうちの床反力モーメント鉛直成分許容範囲を越えた分であ る Maa を求める。 次いで、 補正用摂動モデル逆位相腕振り角 0 ca の前 回値を基に、 P D制御等を用いた逆位相腕振り角補正用摂動モデル制御 則によって逆位相腕振り角補正用モデル安定化モーメ ン ト要求値 Mafdmd を求め、 これを Maa から減じた値 (モーメント) を逆位相腕 振り角補正用摂動モデルに入力し、 補正用摂動モデル逆位相畹振り角 0 caを得る。
Maa から補正用摂動モデル逆位相腕振り角 0 ca までの伝達関数は、 口一パスフィルタの伝達関数になる。
すなわち、 言い換えると、 逆位相腕振り角捕正用モデルによる床反力 モーメント鉛直成分のキャンセル (超過防止動作) を行わない場合に発 生する床反力モーメント鉛直成分 (無制限時床反力モーメント鉛直成 分) を、 床反力モーメント鉛直成分許容範囲を越えないように制限する 制限手段 (飽和手段) に通すことにより、 コンプライアンス制御用目標 床反力モーメント鉛直成分 (制限時補正目標床反力モーメント鉛直成分 Mltdz) を得ると共に、 無制限時床反力モーメント鉛直成分を、 床反力 モーメント鉛直成分許容範囲を越えた分を求める不感帯手段に通した値 を口一パスフィルタ (すなわちハイカッ トフィルタ) に通すことにより 補正用摂動モデル逆位相腕振り角 e caを得る。
以上説明した第 8実施形態は、 本発明のうちの第 1発明、 第 2発明、 第 4〜第 1 5発明、 第 2 0〜第 2 3発明、 第 2 8 第 3 0発明の実施形 態になっている。 この塲合、 第 8実施形態における床反力モーメント鉛 直成分 (Mdmdz を付加した床反力モーメント鉛直成分) .が制御対象量 上体ョ一角偏差および Zまたは上体ョー角速度偏差がロポッ ト 1の状態 量の偏差、 Mdmdz が補償床反力モーメントに相当する。 また、 第 8実 施形態における歩容生成用 (フルモデル補正用) の床反力モーメント鉛 直成分許容範囲 [Mzmin,Mzmax]が制限対象量の許容範囲に相当する。 また、 単純化モデル歩容の運動成分が目標運動の仮瞬時値に対応し、 こ れを S 3 5 3 6で修正したものが目標運動の瞬時値に対応する。 また、 発明における動力学モデルは、 フルモデル (逆位相腕振り角補正用摂動 ΐデルを含む) が相当する。 そして、 Maa が第 1 0発明におけるモー メント修正操作量に相当し、 補正用摂動モデル逆位相腕振り角 0 ca が 第 2発明および第 1 1発明における目標運動の仮瞬時値の修正量と、 第 2 2発明における目標運動の補正量とに相当する。 さらに第 8実施形態 における、 無制限時補正目標床反力モーメント鉛直成分 Minzが第 2 3 発明における制限対象量の推定値に相当する。 さらに、 第 8実施形態に おけるフルモデル床反力モーメント鉛直成分 Mfullz に上体水平位置補 正に起因する床反力モーメント鉛直成分 Mpz を加えたものが、 目標運 動の仮瞬時値に逆フルモデル (動力学モデル) 上でほぼ釣り合う床反力 モーメントの鉛直成分に相当する。 そして、 これに Mdmdz を加えたも のが第 2 0発明におけるモデル制限対象量瞬時値に相当する。
なお、 前記第 8実施形態においては、 前記第 7実施形態の如く、 床反 力水平成分許容範囲および Zまたは床反カモ一メント鉛直成分許容範囲 を滑り判定の結果に応じて可変的に設定するようにしてもよい。
前記第 1実施形態においては、 本願出願人が提案した特開平 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歩分の修正歩容の終端状態を新たな初期状態とした新たな今 回歩容が、 定常歩容に漸近するように、 今回歩容パラメータが決定また は変更されるので、 継続的に (長期的に) 安定性が保証された歩容を生 成し続けることができる。
前記第 2実施形態においては、 上記のごとく、 元歩容と修正歩容が同 時に生成され、 修正歩容は、 実口ポッ ト 1の姿勢安定化のために修正さ れると共に、 コンプライアンス制御により姿勢復元に必要な床反力モー メント (水平成分及び鉛直成分) を発生してもまだ余裕がある場合には この余裕を用いて、 可能な範囲で元歩容に収束するようにしている。 こ のため、 第 1実施形態の効果に加え、 当初設定した元歩容に近い、 すな わち、 当初の要求通りの歩容に近い歩容を生成することができる。 した がって、 あらかじめ設定された移動経路がある場合には、 移動経路から 大きくずれることを防止できる。 また、 修正歩容の上体姿勢角が元歩容 (当初決定した歩容) の上体姿勢角に収束することを、 修正歩容の上体 水平位置が元歩容 (当初決定した歩容) の上体水平位置に収束すること よりも優先したので、 上体姿勢角が大きく変動することを抑制すること ができる。
前記第 1〜第 6実施形態では、 床反力水平成分許容範囲を設定するよ うにしたが、 床反力水平成分とロボット全体重心水平加速度は、 比 関 係にあるので、 前記各実施形態における床反力水平成分およびその許容 範囲の代わりに、 ロボッ ト全体重心水平加速度およびその許容範囲を用 いても構わない。 また、 ロボッ ト全体重心水平軌道に近い挙動をする部 位の水平加速度軌道に関するパラメータを明示的に設定しても構わない, 例えば、 脚体 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 また、 前記参考例に関する変形態様で説明した如く、 床反力水平成分 と目標 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まわりの床反力モーメントをあまり変化させな いで床反力水平成分を十分に大きく変化させることができる運動モード とを組み合わせることが望ましい。
言いかえると、 全体重心をあまり変化させないで角運動量を十分に大 きく変化させることができる運動モ一ドと、 角運動量をあまり変化させ ないで全体重心を十分に大きく変化させることができる運動モードとを 組み合わせることが望ましい。 運動モードの変位が小さくなるからであ る。
床反力モーメント鉛直成分を適切な値にするために、 前記の実施形態 では、 逆位相腕振りモードを用いたが、 これら以外の運動モードを用い ても良い。 例えば、 前記参考例の変形態様について説明した如く、 上体 ョ一回転モードを用いたり、 上体ョ一回転モードと逆位相腕振りモ一ド とを併用しても良い。
また、 床反カモ一メント鉛直成分を適切な値にするために用いられる 運動モードが床反力水平成分および床反カ乇一メント水平成分を発生し ない運動モードである必要もない。 例えば、 遊脚を前後に振る運動モー ドを用いても良い。 その運動モ一ドによって発生した床反力水平成分お よび床反力モーメント水平成分は、 上体傾斜モードと上体並進モードと の 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 . 上体から延設された脚体を運動させて移動する脚式移動ロポッ トの 目標運動および目標床反力の瞬時値を、 少なくとも該ロボッ トの運動と 床反力との関係を表す動力学モデルを用いて逐次決定しつつ、 その決定 した目標運動および目標床反力の瞬時値に追従させるように前記ロポッ トの動作制御を行なう脚式移動ロボッ 卜の制御装置において、
前記目標運動および目標床反力に追従して動作しているロポッ トに作 用させるべき床反カモ一メントの鉛直成分又は該床反力モーメントの床 面法線方向成分を制限対象量として、 該制限対象量の許容範囲を設定す る許容範囲設定手段と、
少なくとも鉛直軸回り又は床面法線軸回りのロボッ 卜の姿勢に関する 目標状態量と該ロポッ トの実状態量との偏差と前記許容範囲とに基づい て、 前記目標床反力に対応する制限対象量を前記許容範囲に収めつつ、 前記目標運動に前記動力学モデル上で釣り合う床反カモ一メントと前記 目標床反力の床反カモ一メン卜との差が前記偏差を 0に近づけるように 前記目標運動および目標床反力の瞬時値を決定する目標瞬時値決定手段 とを備えたことを特徴とする脚式移動ロポッ トの制御装置。
2 . 前記目標瞬時値決定手段は、 前記偏差に応じて該偏差を 0に近づけ るための付加的な床反力モーメントである補償床反力モーメントを決定 する手段と、 少なくとも前記目標運動の所定の仮'瞬時値に前記動力学モ デル上で釣り合う床反力モーメントと前記補償床反カモ一メントとに応 じて前記制限対象量が前記許容範囲を超えないように該所定の仮瞬時値 の修正量を決定する手段とを備え、 その決定した修正量に応じて前記仮 瞬時値を修正する.ことにより前記目標運動の瞬時値を決定することを特 徴とする請求の範囲第 1項に記載の脚式移動ロポッ トの制御装置。
3 . 前記動力学モデルの状態量を所定の状態量に近づけるための付加的 な床反力モーメントであるモデル補正床反カモ一メントを決定する手段 を備え、 前記目標運動の所定の仮瞬時値の修正量を決定する手段は、 少 なくとも前記所定の仮瞬時値に前記動力学モデル上で釣り合う床反カモ —メン卜と前記補償床反カモ一メン卜と前記モデル補正床反力モーメン 卜とに応じて前記制限対象量が前記許容範囲を超えないように前記目標 運動の仮瞬時値の修正量を決定することを特徴とする請求の範囲第 2項 に記載の脚式移動ロポッ トの制御装置。
4 . 前記所定の仮瞬時値の修正量は、 前記ロボッ トの角運動量変化率の 鉛直成分又は床面法線方向成分を変化させる運動の修正量であることを 特徴とする請求の範囲第 2項又は第 3項に記載の脚式移動ロポッ トの制
5 . 前記ロポットの角運動量変化率の鉛直成分又は床面法線方向成分を 変化させる運動は、 該ロポッ トの上体および Z又は該上体から延設され た腕体の運動であることを特徴とする請求の範囲第 4項に記載の脚式移 動ロポットの制御装置。
6 . 上体から延設された脚体を運動させて移動する脚式移動ロポッ 卜の 目標運動の瞬時値を、 少なく とも該ロポッ トの運動と床反力との関係を 表す動力学モデルを用いて逐次決定しつつ、 その決定した目標運動の瞬 時値に追従させるように前記ロボッ トの動作制御を行なう脚式移動ロボ ッ トの制御装置において、
前記目標運動に追従して動作しているロポッ トに作用させるべき床反 カモ一メン卜の鉛直成分又は該床反力モーメントの床面法線方向成分を 制限対象量として、 該制限対象量の許容範囲を設定する許容範囲設定手 段と、
少なくとも鉛直軸回り又は床面法線軸回りのロポッ トの姿勢に関する 目標状態量と該ロポッ トの実状態量との偏差に応じて該偏差を 0に近づ けるための付加的な床反力モーメントである補償床反カモ一メントを決 定する補償床反力モーメント決定手段と、
前記目標運動に前記動力学モデル上で釣り合う床反カモ一メントと前 言己補償床反力モーメントとに応じて定まる前記制限対象量が前記許容範 囲に収まるように目標運動の瞬時値を決定する目標瞬時値決定手段とを 備えたことを特徴とする脚式移動ロポッ トの制御装置。
7 . 前記許容範囲に収めた前記制限対象量を目標床反カモ一メントとし、 その目標床反カモ一メン卜に追従させるようにロボットの動作制御を行 なう手段を備えたことを特徴とする請求の範囲第 6項に記載の脚式移動 ロポッ 卜の制御装置。
8 . 前記目標瞬時値決定手段は、 前記目標運動に前記動力学モデル上で 釣り合う床反カモ一メン卜と前記補償床反カモ一メントとに応じて定ま る前記制限対象量を前記許容範囲に収めるために、 前記ロポッ トの運動 のうち、 前記ロポッ トの角運動量変化率の鉛直成分又は床面法線方向成 分を変化させる運動を調整して前記目標運動の瞬時値を決定することを 特徴とする請求の範囲第 6項又は第 7項に記載の脚式移動ロボッ トの制 御装置。
9 . 前記ロポッ トの角運動量変化率の鉛直成分又は床面法線方向成分を 変化させる運動は、 該ロポッ 卜の上体およびノ又は該上体から延設され た腕体の運動であることを特徴とする請求の範囲第 8項に記載の脚式移 動ロポッ 卜の制御装置。
1 0 . 上体から延設された脚体を運動させて移動する脚式移動ロポッ ト の目標運動の瞬時値を、 少なく とも該ロポッ トの運動と床反力との関係 を表す動力学モデルを用いて逐次決定しつつ、 その決定した目標運動の 瞬時値に追従させるように前記ロポッ トの動作制御を行なう脚式移動口 ボッ 卜の制御装置において、 前記目標運動に追従して動作しているロポッ トに作用させるべき床反 力モーメン卜の鉛直成分又は該床反カモ一メントの床面法線方向成分を 制限対象量として、 該制限対象量の許容範囲を設定する許容範囲設定手 段と、
前記目標運動の仮瞬時値を逐次決定する仮瞬時値決定手段と、 少なくとも鉛直軸回り又は床面法線軸回りのロボットの姿勢に関する 目標状態量と該ロポッ 卜の実状態量との偏差に応じて該偏差を 0に近づ けるための付加的な床反カモ一メントである補償床反力モーメントを決 定する補償床反力モーメント決定手段と、
前記目標運動の仮瞬時値に前記動力学モデル上で釣り合う床反力モー メントと前記補償床反力モーメントとに応じて定まる前記制限対象量の うちの前記許容範囲を逸脱した分をモーメント修正操作量とし、 そのモ ーメント修正操作量に応じて当該逸脱分が減少傾向になるように前記目 標運動の仮瞬時値を修正することにより前記目標蓮動の瞬時値を決定す る目標瞬時値決定手段とを備えたことを特徴とする脚式移動ロポッ トの 制御装置。
1 1 . 前記目標瞬時値決定手段は、 前記モーメント修正操作量を口一パ スフィルタに通したものに応じて前記目標運動の仮瞬時値の修正量を求 め、 その求めた修正量により該仮瞬時値を修正することにより前記目標 運動の瞬時値を決定することを特徴とする請求の'範囲第 1 0項に記載の 脚式移動ロボッ トの制御装置。
1 2 . 前記目標運動の仮瞬時値に前記動力学モデル上で釣り合う床反力 モ一メントと前記補償床反力モーメントとに応じて定まる前記制限対象 量を前記許容範囲により制限してなる制限済制限対象量に対応する床反 力モーメントを目標床反力モーメントとし、 その目標床反カモ一メント に追従させるようにロボッ トの動作制御を行なう手段を備えたことを特 徴とする請求の範囲第 1 0項に記載の脚式移動ロボッ トの制御装置。
1 3 . 前記目標瞬時値決定手段は、 前記口ポッ トの角運動量変化率の鉛 直成分又は床面法線方向成分を変化させる運動を前記目標運動の仮瞬時 値から修正することにより前記目標運動の瞬時値を決定することを特徴 とする請求の範囲第 1 0項〜第 1 2項のいずれか 1項に記載の脚式移動 ロポッ 卜の制御装置。
1 4 . 前記ロポッ 卜の角運動量変化率の鉛直成分又は床面法線方向成分 を変化させる運動は、 該ロボッ トの上体および/又は該上体から延設さ れた腕体の運動であることを特徴とする請求の範囲第 1 3項に記載の脚 式移動口ポッ トの制御装置。
1 5 . 前記口ポッ トの姿勢に関する状態量は、 該ロボッ トの上体のョー 角又はョー角速度を含むことを特徴とする請求の範囲第 1項、 第 6項お よび第 1 0項のいずれか 1項に記載の脚式移動ロボッ トの制御装置。
1 6 . 前記口ポッ トの滑りの発生を判断する滑り判断手段を備え、 前記 許容範囲設定手段は、 該滑り判断手段の判断結果に応じて前記許容範囲 を可変的に設定することを特徴とする請求の範囲第 1項、 第 6項および 第 1 0項のいずれか 1項に記載の脚式移動ロポッ トの制御装置。
1 7 . 前記滑り判断手段は、 少なくとも接地している脚体の先端部の対 地速度に基づき滑りの発生を判断することを特徴とする請求の範囲第 1 6項に記載の脚式移動口ポッ トの制御装置。 '
1 8 . 前記滑り判断手段は、 少なくとも接地している脚体に作用する実 床反力の時間的変化率と該脚体の先端部の対地速度とに基づき、 該脚体 の見かけばね定数を求める手段を備え、 少なくとも該見かけばね定数に 基づき滑りの発生.を判断することを特徴とする請求の範囲第 1 6項に記 載の脚式移動ロポッ 卜の制御装置。
1 9 . 前記滑り判断手段は、 少なくとも接地している脚体に作用する実 床反力を、 所定周波数の近傍範囲に周波数通過特性を有するバンドパス フィルタに通したものに基づき滑りの発生を判断することを特徴とする 請求の範囲第 1 6項に記載の脚式移動ロボッ トの制御装置。
2 0 . 上体から延設された複数の脚体を運動させて移動する脚式移動口 ボッ トの目標歩容を生成し、 その目標歩容に追従させるように該ロボッ 卜の動作を制御する制御装置において、
少なくとも鉛直軸回り又は床面法線軸回りのロボッ 卜の姿勢に関する 目標状態量と該ロポッ トの実状状態との偏差に応じて、 該偏差を 0に近 づけるための付加的な床反力モーメントである補償床反力モーメントを 決定する手段と、
前記目標歩容に追従して動作しているロポッ トに作用させるべき床反 力モーメントの鉛直成分又は該床反力モーメントの床面法線方向成分を 制限対象量として、 該制限対象量の許容範囲を設定する許容範囲設定手 段と、
前記目標歩容を構成する目標運動の仮瞬時値を決定する仮瞬時値決定 手段と、
前記ロポッ 卜の運動と該運動に釣り合う床反力のモーメントの鉛直成 分又は床面法線方向成分との関係を表す動力学モデルに、 少なくとも前 記目標運動の仮瞬時値を入力して、 該動力学モデルの出力としての床反 力モーメントの鉛直成分又は床面法線方向成分を'求め、 前記求めた鉛直 成分又は床面法線方向成分と前記補償床反力モーメントとから所定の演 算によって前記制限対象量の仮瞬時値であるモデル制限対象量瞬時値を 決定するモデル演算手段と、
少なくとも該モデル制限対象量瞬時値を前記許容範囲に収めるように 前記目標運動の仮瞬時値を補正して目標運動の瞬時値を決定する目標瞬 時値決定手段とを備えたことを特徴とする脚式移動ロボッ 卜の制御装置,
2 1 . 前記目標瞬時値決定手段は、 前記目標運動の瞬時値に前記動力学 モデル上で略釣り合う床反力のモーメントの鉛直成分又は床面法線方向 成分と前記補償床反力モ一メントとから前記所定の演算によって決定さ れる制限対象量瞬時値に対応する床反力モーメント瞬時値を、 前記目標 歩容を構成する目標床反力の床反力モーメント瞬時値として決定するこ とを特徴とする請求の範囲第 2 0項に記載の脚式移動ロボッ 卜の制御装 置。
2 2 . 前記目標瞬時値決定手段は、 前記口ポッ トの摂動運動と床反カモ —メントの鉛直成分又は床面法線方向成分の摂動分との関係を表す摂動 モデルと、
少なくとも前記決定したモデル制限対象量瞬時値と前記許容範囲とに 基づき前記摂動モデルの摂動分を操作する摂動モデル操作量を決定する 手段と、
その決定した摂動モデル操作量を前記摂動モデルに入力することによ り前記目標運動の補正量を求める手段と、
該補正量により前記目標運動の仮瞬時値を補正することにより前記目 標運動の瞬時値を決定する手段とを備えることを特徴とする請求の範囲 第 2 0項に記載の脚式移動ロポッ トの制御装置。
2 3 . 前記摂動モデル操作量を決定する手段は、 前記摂動モデル操作量 を 0と仮定した場合の前記制限対象量の推定値を'少な とも前記決定し たモデル制限対象量瞬時値に基づき決定する手段と、 その決定した推定 値を前記許容範囲と比較し、 その比較に基づき該許容範囲内に制限して なる制限済制限対象量を決定する手段とを備え、 少なくとも前記決定し たモデル制限対象量瞬時値と前記制限済制限対象量との差に基づき前記 摂動モデル操作量を決定することを特徴とする請求の範囲第 2 2項に記 載の脚式移動ロボッ 卜の制御装置。
2 4 . 少なく とも前記摂動モデルの状態量に応じて前記摂動モデル操作 量の要求値を決定する手段を備え、
前記摂動モデル操作量を決定する手段は、 少なくとも前記決定したモ ル制限対象量瞬時値、 前記許容範囲、 及び前記要求値に基づき前記摂 動モデルに入力する摂動モデル操作量を決定することを特徴とする請求 の範囲第 2 2項に記載の脚式移動ロボッ 卜の制御装置。
2 5 . 前記摂動モデル操作量の要求値を決定する手段は、 前記摂動モデ ルの状態量と該状態量に対する目標値との偏差に応じたフィードバック 制御則により前記要求値を逐次決定することを特徴とする請求の範囲第 2 4項に記載の脚式移動口ポッ トの制御装置。
2 6 . 前記摂動モデル操作量を決定する手段は、 前記摂動モデル操作量 を前記要求値に一致させたと仮定した場合の前記制限対象量の推定値を 少なくとも前記決定したモデル制限対象量瞬時値と前記要求値とに基づ き決定する手段と、 その決定した推定値を前記許容範囲と比較し、 その 比較に基づき該許容範囲に制限してなる制限済制限対象量を決定する手 段とを備え、 少なくとも前記決定したモデル制限対象量瞬時値と前記制 限済制限対象量との差に基づき前記摂動モデル操作量を決定することを 特徴とする請求の範囲第 2 4項に記載の脚式移動ロポッ トの制御装置。
2 7 . 前記目標瞬時値決定手段は、 前記目標運動の補正量を前記動力学 モデルに追加的に入力する手段を備えたことを特徴とする請求の範囲第 2 2項に記載の脚移動ロポッ トの制御装置。
2 8 . 前記摂動モデルは、 口ポットの角運動量変化率の鉛直成分又は床 面法線方向成分を摂動させる摂動運動と前記制限対象量摂動分との関係 を表すモデルであることを特徴とする請求の範囲第 2 2項に記載の脚式 移動ロボッ 卜の制御装置。
2 9 . 前記摂動運動は、 該ロポッ トの重心位置を略一定に維持する摂動 運動であることを特徵とする請求の範囲第 2 8項に記載の脚式移動ロボ ッ 卜の制御装置。 '
3 0 . 前記摂動運動は、 ロボッ トの上体および/又は該上体から延設さ れた腕体の摂動運動であることを特徴とする請求の範囲第 2 8項又は第 2 9項に記載の脚式移動ロポッ 卜の制御装置。
3 1 . 上体から延設された複数の脚体を運動させて移動する脚式移動口 ポッ 卜の目標歩容を生成し、 その目標歩容に追従させるように該ロボッ トの動作を制御する制御装置において、
少なくとも鉛直軸回り又は床面法線軸回りのロボッ トの姿勢に関する 目標状態量と該ロボッ トの実状状態との偏差に応じて、 該偏差を 0に近 づけるための付加的な床反力モーメントである補償床反力モーメントを 決定する手段と、
前記目標歩容に追従して動作しているロボッ トに作用させるべき床反 力モーメントの鉛直成分又は該床反力モーメントの床面法線方向成分を 制限対象量として、 該制限対象量の許容範囲を設定する許容範囲設定手 段と、
前記目標歩容を構成する目標運動及び目標床反力のうちの少なく とも 目標床反力の仮瞬時値を逐次決定する目標床反力仮瞬時値決定手段と、 少なくとも前記目標床反力の仮瞬時値を前記ロポッ トの運動と床反力 との関係を表す第 1動力学モデルに入力し、 該第 1動力学モデルの出力 としての目標運動の仮瞬時値を逐次求める第 1モデル演算手段と、 前記ロポッ 卜の運動と該運動に釣り合う床反力のモーメントの鉛直成 分又は床面法線方向成分との関係を表す第 2動力学モデルに、 少なく と も前記目標運動の仮瞬時値を入力して、 該第 2動力学モデルの出力とし ての床反力モーメントの鉛直成分又は床面法線方向成分を求め、 前記求 めた鉛直成分又は床面法線方向成分と前記補償床反力モーメントとから 所定の演算によって前記制限対象量の仮瞬時値であるモデル制限対象量 瞬時値を決定する第 2モデル演算手段と、
少なくとも該モデル制限対象量瞬時値を前記許容範囲に収めるように 目標床反力の床反力モーメント補正量を求め、 その求めた床反力モーメ ント補正量を前記第 1動力学モデルに追加的に入力する第 1モデル入力 補正手段とを備え、
少なくとも前記第 2動力学モデルの入力に基づいて前記目標運動の瞬 時値を決定することを特徴とする脚式移動ロボットの制御装置。
3 2 . 前記目標運動の瞬時値に前記第 2動力学モデル上で略釣り合う床 反力のモーメントの鉛直成分又は床面法線方向成分と前記補償床反カモ ーメントとから前記所定の演算によって決定される制限対象量瞬時値に 対応する床反力モーメント瞬時値を、 前記目標歩容を構成する目標床反 力の床反力モーメント瞬時値として決定する手段を備えたことを特徴と する請求の範囲第 3 1項に記載の脚式移動ロボットの制御装置。
3 3 . 前記第 1モデル入力補正手段は、 少なくとも前記目標床反力の床 反力モーメント補正量を 0と仮定した場合の前記制限対象量の推定値を 少なくとも前記決定したモデル制限対象量瞬時値に基づいて決定する手 段と、 その決定した推定値を前記許容範囲と比較し、 その比較に基づき 該許容範囲に制限してなる制限済制限対象量を決定する手段とを備え、 少なくとも前記決定したモデル制限対象量瞬時値と前記制限済制限対象 量との差に基づき前記床反力モーメン補正量を決定することを特徴とす る請求の範囲第 3 1項に記載の脚式移動ロポッ トの制御装置。
3 4 . 前記目標床反力の床反カモ一メント補正量の要求値を決定する手 段を備え、
前記第 1モデル入力補正手段は、 少なくとも前記目標床反力の床反力 モーメント補正量を前記要求値に一致させたと仮定した場合の前記制限 対象量の推定値を少なくとも前記決定したモデル制限対象量瞬時値と前 記要求値とに基づいて決定する手段と、 その決定した推定値を前記許容 範囲と比較し、 その比較に基づき該許容範囲に制限してなる制限済制限 対象量を決定する手段とを備え、 少なくとも前記決定したモデル制限対 象量瞬時値と前記制限済制限対象量との差に基づき前記床反力モーメン 補正量を決定することを特徴とする請求の範囲第 3 1項に記載の脚式移 動ロボッ 卜の制御装置。
3 5 . 少なくとも前記決定したモデル制限対象量瞬時値と前記許容範囲 とに基づき前記目標運動の補正量を求め、 その求めた補正量を前記第 2 動力学モデルに追加的に入力する第 2モデル入力補正手段を備えたこと を特徴とする請求の範囲第 3 1項に記載の脚式移動ロボッ トの制御装置,
3 6 . 前記ロポッ トの摂動運動と制限対象量摂動分との関係を表す摂動 モデルと、
少なくとも前記決定したモデル制限対象量瞬時値と前記許容範囲とに 基づき床反力モーメントの操作量を決定する手段と、
その決定した床反カモ一メントの操作量を、 前記第 1動力学モデルに 入力する前記目標床反力の床反力モーメント補正量と前記摂動モデルに 入力する摂動モデル操作量とに分配する分配手段とを備え、
前記第 2モデル入力補正手段は、 前記摂動モデル操作量を前記摂動モ デルに入力することにより前記目標運動の補正量を求めることを特徴と する請求の範囲第 3 5項に記載の脚式移動ロポッ トの制御装置。
3 7 . 少なくとも前記摂動モデルの状態量に応じて前記床反力モーメン トの操作量の要求値を決定する手段を備え、
前記床反力モ一.メントの操作量を決定する手段は、 少なくとも前記決 定したモデル制限対象量瞬時値と前記許容範囲と前記要求値とに基づき 前記分配手段に与える床反カモ一メントの操作量を決定することを特徴 とする請求の範囲第 3 6.項に記載の脚式移動ロポッ トの制御装置。
3 8 . 前記床反力モーメントの操作量の要求値を決定する手段は、 前記 摂動モデルの状態量と該状態量に対する目標値との偏差に応じたフィ一 ドバック制御則により前記要求値を逐次決定することを特徴とする請求 の範囲第 3 7項に記載の脚式移動ロボッ 卜の制御装置。
3 9 . 前記摂動モデルは、 口ポッ トの角運動量変化率の鉛直軸回り又は 床面法線軸回りの成分を摂動させる摂動運動と前記制限対象量摂動分と の関係を表すモデルであることを特徴とする請求の範囲第 3 6項に記載 の脚式移動ロポッ トの制御装置。
4 0 . 前記摂動運動は、 ロボッ トの重心位置を略一定に維持する摂動運 動であることを特徴とする請求の範囲第 3 9項に記載の脚式移動ロポッ トの制御装置。
4 1 . 前記摂動運動は、 口ポッ トの上体および/又は該上体から延設さ れた腕体の摂動運動であることを特徴とする請求の範囲第 3 9項または 第 4 0項に記載の脚式移動ロポッ トの制御装置。
4 2 . 前記床反力モーメントの操作量を決定する手段は、 前記摂動モデ ル操作量を 0と仮定した場合の前記制限対象量の推定値を少なく とも前 記決定したモデル制限対象量瞬時値に基づいて決定する手段と、 その決 定した推定値を前記許容範囲と比較し、 その比較に基づき該許容範囲に 制限してなる制限済制限対象量を決定する手段と'を備え、 少なく とも前 記決定したモデル制限対象量瞬時値と前記制限済制限対象量との差に基 づき前記床反力モーメン卜の操作量を決定することを特徴とする請求の 範囲第 3 6項に記載の脚式移動ロポッ 卜の制御装置。
4 3 . 前記床反力.モーメントの操作量を決定する手段は、 前記摂動モデ ル操作量を前記要求値に一致させたと仮定した場合の前記制限対象量の 推定値を少なくとも前記決定したモデル制限対象量瞬時値と前記要求値 とに基づいて決定する手段と、 その決定した推定値を前記許容範囲と比 較し、 その比較に基づき該許容範囲に制限してなる制限済制限対象量を 決定する手段とを備え、 少なくとも前記決定したモデル制限対象量瞬時 磕と前記制限済制限対象量との差に基づき前記床反力モーメントの操作 量を決定することを特徴とする請求の範囲第 3 7項に記載の脚式移動口 ポッ 卜の制御装置。
4 4 . 上体から延設された複数の脚体を運動させて移動する脚式移動口 ポッ トの目標歩容を生成し、 その目標歩容に追従させるように該ロポッ トの動作を制御する制御装置において、
少なくとも鉛直軸回り又は床面法線軸回りのロポッ トの姿勢に関する 目標状態量と該ロポッ トの実状態量との偏差に応じて、 該偏差を 0に近 づけるための付加的な床反力モーメントである補償床反カモ一メントを 決定する手段と、
前記目標歩容に追従して動作しているロボッ トに作用させるべき床反 力モーメントの鉛直成分又は該床反力モーメントの床面法線方向成分を 制限対象量として、 該制限対象量の許容範囲を設定する許容範囲設定手 段と、
前記目標歩容を構成する目標運動及び目標床反力のうちの少なくとも 目標床反力の仮瞬時値を逐次決定する目標床反力仮瞬時値決定手段と、 少なくとも該目標床反力の仮瞬時値を、 前記口ポッ トの運動と床反力 との関係を表す第 1動力学モデルに入力し、 該第 1動力学モデルの出力 としての目標運動の第 1仮瞬時値を求める第 1モデル演算手段と、 目標運動の第 2仮瞬時値を決定する手段であって、 その決定する第 2 仮瞬時値に口ポッ.トの運動と床反力との関係を表す第 2動力学モデル上 で釣り合う床反力モーメントの鉛直成分又は床面法線方向成分と前記補 償床反力モーメントとから所定の演算により求まる制限対象量瞬時値が 前記許容範囲に収まるように、 少なく とも前記目標床反力の仮瞬時値に 基づき、 該目標運動の第 2仮瞬時値を決定する制限付き第 2モデル演算 手段と、
'少なくとも前記目標運動の第 1仮瞬時値と第 2仮瞬時値との差に基づ いて、 該差が 0に近づくように床反力モーメントの操作量を求める操作 量算出手段と、
該床反力モーメントの操作量を前記第 1動力学モデル及び第 2動力学 モデルのうちの少なくともいずれか一方に追加的に入力するモデル入力 補正手段とを備え、
前記目標運動の第 2仮瞬時値を該目標運動の目標瞬時値として決定す ることを特徴とする脚式移動ロボッ 卜の制御装置。
4 5 . 前記目標運動の第 1仮瞬時値と第 2仮瞬時値との差は、 前記ロボ ッ トの所定の部位の姿勢の、 鉛直軸回り又は床面法線軸回りの状態量の 差を含むことを特徴とする請求の範囲第 4 4項に記載の脚式移動ロポッ トの制御装置。
4 6 . 前記目標運動の瞬時値に前記第 2動力学モデル上で略釣り合う床 反力のモーメントの鉛直成分又は床面法線方向成分と前記補償床反カモ ーメントとから前記所定の演算によって決定される制限対象量瞬時値に 対応する床反力モーメント瞬時値を、 前記目標歩容を構成する目標床反 力の床反カモ一メント瞬時値として決定する手段を備えたことを特徴と する請求の範囲第 4 4項に記載の脚式移動ロボッ トの制御装置。
4 7 . 少なくとも前記目標床反力の仮瞬時値を、 前記ロポッ トの運動と 床反力との関係を表す第 3動力学モデルに入力し、 該第 3動力学モデル の出力としての目標運動の第 3仮瞬時値を求める第 3モデル演算手段を 備え、 前記目標床反力の床反力モーメント補正量の要求値を決定する手 段は、 前記決定した前記目標運動の目標瞬時値と前記目標運動の第 3仮 瞬時値との差に基づいて、 該差が 0に近づくように前記要求値を決定す ることを特徴とする請求の範囲第 3 4項に記載の脚式移動ロポッ トの制 御装置。
4 8 . 前記目標歩容に追従して動作している前記ロボッ トの滑りの発生 を判断する滑り判断手段を備え、 前記許容範囲設定手段は、 該滑り判断 手段の判断結果に応じて前記許容範囲を可変的に設定することを特徴と する請求の範囲第 2 0項、 第 3 1項、 および第 4 4項のいずれか 1項に 記載の脚式移動ロポッ トの制御装置。
4 9 . 前記滑り判断手段は、 少なくとも接地している脚体の先端部の対 地速度に基づき滑りの発生を判断することを特徴とする請求の範囲第 4
8項に記載の脚式移動ロボッ トの制御装置。
5 0 . 前記滑り判断手段は、 少なくとも接地している脚体に作用する実 床反力の時間的変化率と該脚体の先端部の対地速度とに基づき、 該脚体 の見かけばね定数を求める手段を備え、 少なく とも該見かけばね定数に 基づき滑りの発生を判断することを特徴とする請求の範囲第 4 8項に記 載の脚式移動ロポッ トの制御装置。
5 1 . 前記滑り判断手段は、 少なくとも接地している脚体に作用する実 床反力を、 所定周波数の近傍範囲に周波数通過特性を有するパンドパス フィルタに通したものに基づき滑りの発生を判断することを特徴とする 請求の範囲第 4 8項に記載の脚式移動ロボッ 卜の制御装置。
PCT/JP2004/009472 2003-06-27 2004-06-28 脚式移動ロボットの制御装置 WO2005000534A1 (ja)

Priority Applications (6)

Application Number Priority Date Filing Date Title
JP2005511135A JP4155993B2 (ja) 2003-06-27 2004-06-28 脚式移動ロボットの制御装置
US10/562,168 US8005573B2 (en) 2003-06-27 2004-06-28 Control device for legged mobile robot
EP04746941A EP1642687B9 (en) 2003-06-27 2004-06-28 Control device for legged mobile robot
KR1020057019866A KR101083417B1 (ko) 2003-06-27 2004-06-28 다리식 이동 로봇의 제어장치
DE602004031526T DE602004031526D1 (de) 2003-06-27 2004-06-28 Steuervorrichtung für mobilen schreitroboter
US12/603,116 US7860611B2 (en) 2003-06-27 2009-10-21 Control device for legged mobile robot

Applications Claiming Priority (2)

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

Related Child Applications (2)

Application Number Title Priority Date Filing Date
US10562168 A-371-Of-International 2004-06-28
US12/603,116 Division US7860611B2 (en) 2003-06-27 2009-10-21 Control device for legged mobile robot

Publications (1)

Publication Number Publication Date
WO2005000534A1 true WO2005000534A1 (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 After (2)

Application Number Title Priority Date Filing Date
PCT/JP2004/009477 WO2005000536A1 (ja) 2003-06-27 2004-06-28 脚式移動ロボットの制御装置
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) JP4126061B2 (ja)
KR (3) KR101083414B1 (ja)
DE (2) DE602004031425D1 (ja)
WO (3) WO2005000534A1 (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006247769A (ja) * 2005-03-09 2006-09-21 Toyota Motor Corp 脚式ロボットとその動作制御方法
WO2008099907A1 (ja) 2007-02-16 2008-08-21 Ono Pharmaceutical Co., Ltd. 尿排出障害治療剤
US7603199B2 (en) 2003-11-27 2009-10-13 Honda Motor Co., Ltd. Control device for mobile body
CN111872941A (zh) * 2020-08-06 2020-11-03 深圳市优必选科技股份有限公司 平衡控制方法、装置、仿人机器人及可读存储介质

Families Citing this family (102)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7650204B2 (en) * 2001-06-29 2010-01-19 Honda Motor Co., Ltd. Active control of an ankle-foot orthosis
US7774177B2 (en) * 2001-06-29 2010-08-10 Honda Motor Co., Ltd. Exoskeleton controller for a human-exoskeleton system
DE60234790D1 (de) * 2001-12-28 2010-01-28 Honda Motor Co Ltd Gangerzeugungsvorrichtung für beweglichen roboter mit beinen
JP3679105B2 (ja) * 2001-12-28 2005-08-03 本田技研工業株式会社 脚式移動ロボットの歩容生成装置
US7734378B2 (en) * 2003-06-27 2010-06-08 Honda Motor Co., Ltd. Gait generation device for legged mobile robot
US7603234B2 (en) * 2003-06-27 2009-10-13 Honda Motor Co., Ltd. Controller of legged mobile robot
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 脚式移動ロボット
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 ロボット制御装置
CA2676067C (en) 2007-01-19 2017-06-20 Victhom Human Bionics, Inc. Reactive layer control system for prosthetic and orthotic devices
WO2009040885A1 (ja) * 2007-09-25 2009-04-02 Fujitsu Limited ロボット制御装置、ロボット制御方法およびロボット制御プログラム
EP2093025B1 (en) * 2007-10-23 2012-05-16 Honda Motor Co., Ltd. Two-legged walking robot
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
AU2009348961B2 (en) * 2009-07-01 2014-12-04 Rex Bionics Limited Control system for a mobility aid
JP5232120B2 (ja) * 2009-10-01 2013-07-10 本田技研工業株式会社 移動体の制御装置
JP5232124B2 (ja) * 2009-10-28 2013-07-10 本田技研工業株式会社 脚式移動ロボットの制御装置
KR101687628B1 (ko) * 2010-01-12 2016-12-21 삼성전자주식회사 로봇의 보행 제어 장치 및 그 제어 방법
KR20110082712A (ko) * 2010-01-12 2011-07-20 삼성전자주식회사 로봇 및 그 제어방법
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 삼성전자주식회사 로봇 및 그 제어방법
CA2812955C (en) 2010-09-29 2018-09-04 Ossur 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
JP6173677B2 (ja) * 2012-08-09 2017-08-02 日本電産サンキョー株式会社 産業用ロボットの原点位置復帰方法
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
US9499219B1 (en) 2014-08-25 2016-11-22 Google Inc. Touch-down sensing for robotic devices
US9618937B1 (en) 2014-08-25 2017-04-11 Google Inc. Slip detection using robotic limbs
US10081098B1 (en) 2014-08-25 2018-09-25 Boston Dynamics, Inc. Generalized coordinate surrogates for integrated estimation and control
US9387588B1 (en) * 2014-08-25 2016-07-12 Google Inc. Handling gait disturbances with asynchronous timing
US9387896B1 (en) * 2014-08-25 2016-07-12 Google Inc. Slip avoidance
US9517561B2 (en) * 2014-08-25 2016-12-13 Google Inc. Natural pitch and roll
US9623556B1 (en) * 2014-09-03 2017-04-18 X Development Llc Robotic sole joint
US9446518B1 (en) * 2014-11-11 2016-09-20 Google Inc. Leg collision avoidance in a robotic device
US9352470B1 (en) * 2014-11-11 2016-05-31 Google Inc. Yaw slip handling in a robotic device
US9751210B2 (en) 2014-11-26 2017-09-05 Irobot Corporation Systems and methods for performing occlusion detection
US9519289B2 (en) * 2014-11-26 2016-12-13 Irobot Corporation Systems and methods for performing simultaneous localization and mapping using machine vision systems
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
US10589810B2 (en) * 2015-04-02 2020-03-17 Osaka University Legged mechanism, walking robot, method for controlling posture, and recording medium
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
CN111651900B (zh) * 2020-06-29 2023-07-04 中国有色金属工业昆明勘察设计研究院有限公司 一种昔格达地层岩质边坡稳定性计算的拟动力上限法
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 (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0213593A (ja) 1988-06-30 1990-01-17 Mitsubishi Electric Corp 車椅子乗用踏段付エスカレータ
EP0572285A1 (en) 1992-05-29 1993-12-01 Honda Giken Kogyo Kabushiki Kaisha Attitude stabilization control system for a mobile robot, especially a legged mobile robot
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 (30)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS60221288A (ja) * 1984-04-13 1985-11-05 株式会社 富士電機総合研究所 圧覚認識制御装置
JPH0213596A (ja) 1988-06-28 1990-01-17 Aichi Steel Works Ltd クレーンのトング装置
JPH0213784A (ja) 1988-06-30 1990-01-18 Kaneko Agricult Mach Co Ltd 乾燥施設における試料穀物の乾燥方法およびその装置
JP2581175B2 (ja) 1988-06-30 1997-02-12 三菱電機株式会社 車椅子乗用踏段付きエスカレータ
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
DE60234790D1 (de) * 2001-12-28 2010-01-28 Honda Motor Co Ltd Gangerzeugungsvorrichtung für beweglichen roboter mit beinen
JP3679105B2 (ja) * 2001-12-28 2005-08-03 本田技研工業株式会社 脚式移動ロボットの歩容生成装置
WO2003058355A1 (fr) 2001-12-28 2003-07-17 Honda Giken Kogyo Kabushiki Kaisha Systeme de commande
JP4246638B2 (ja) * 2002-01-18 2009-04-02 本田技研工業株式会社 脚式移動ロボットの制御装置
EP2106886B1 (en) * 2002-04-26 2011-03-23 Honda Giken Kogyo Kabushiki Kaisha Self-position estimating device for leg type movable robots
KR100960552B1 (ko) * 2002-04-26 2010-06-03 혼다 기켄 고교 가부시키가이샤 다리식 이동 로봇의 제어장치 및 족적결정 장치
US7603234B2 (en) * 2003-06-27 2009-10-13 Honda Motor Co., Ltd. Controller of legged mobile robot

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0213593A (ja) 1988-06-30 1990-01-17 Mitsubishi Electric Corp 車椅子乗用踏段付エスカレータ
EP0572285A1 (en) 1992-05-29 1993-12-01 Honda Giken Kogyo Kabushiki Kaisha Attitude stabilization control system for a mobile robot, especially a legged mobile robot
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 EP1642687A4 *

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7603199B2 (en) 2003-11-27 2009-10-13 Honda Motor Co., Ltd. Control device for mobile body
US7606634B2 (en) 2003-11-27 2009-10-20 Honda Motor Co., Ltd. Control device for mobile body
JP2006247769A (ja) * 2005-03-09 2006-09-21 Toyota Motor Corp 脚式ロボットとその動作制御方法
JP4492395B2 (ja) * 2005-03-09 2010-06-30 トヨタ自動車株式会社 脚式ロボットとその動作制御方法
WO2008099907A1 (ja) 2007-02-16 2008-08-21 Ono Pharmaceutical Co., Ltd. 尿排出障害治療剤
CN111872941A (zh) * 2020-08-06 2020-11-03 深圳市优必选科技股份有限公司 平衡控制方法、装置、仿人机器人及可读存储介质
CN111872941B (zh) * 2020-08-06 2021-09-07 深圳市优必选科技股份有限公司 平衡控制方法、装置、仿人机器人及可读存储介质

Also Published As

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

Similar Documents

Publication Publication Date Title
WO2005000534A1 (ja) 脚式移動ロボットの制御装置
JP3679105B2 (ja) 脚式移動ロボットの歩容生成装置
JP4246638B2 (ja) 脚式移動ロボットの制御装置
JP3672101B2 (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: 2005511135

Country of ref document: JP

WWE Wipo information: entry into national phase

Ref document number: 1020057019866

Country of ref document: KR

WWE Wipo information: entry into national phase

Ref document number: 2006247799

Country of ref document: US

Ref document number: 10562168

Country of ref document: US

WWE Wipo information: entry into national phase

Ref document number: 2004746941

Country of ref document: EP

WWP Wipo information: published in national office

Ref document number: 1020057019866

Country of ref document: KR

WWP Wipo information: published in national office

Ref document number: 2004746941

Country of ref document: EP

WWP Wipo information: published in national office

Ref document number: 10562168

Country of ref document: US