WO2005000535A1 - 脚式移動ロボットの歩容生成装置および脚式移動ロボットの制御装置 - Google Patents

脚式移動ロボットの歩容生成装置および脚式移動ロボットの制御装置 Download PDF

Info

Publication number
WO2005000535A1
WO2005000535A1 PCT/JP2004/009476 JP2004009476W WO2005000535A1 WO 2005000535 A1 WO2005000535 A1 WO 2005000535A1 JP 2004009476 W JP2004009476 W JP 2004009476W WO 2005000535 A1 WO2005000535 A1 WO 2005000535A1
Authority
WO
WIPO (PCT)
Prior art keywords
gait
target
model
reaction force
floor reaction
Prior art date
Application number
PCT/JP2004/009476
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 KR1020057019907A priority Critical patent/KR101083412B1/ko
Priority to EP04746945A priority patent/EP1642688B1/en
Priority to JP2005511138A priority patent/JP4126061B2/ja
Priority to US10/561,988 priority patent/US7379789B2/en
Publication of WO2005000535A1 publication Critical patent/WO2005000535A1/ja

Links

Classifications

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

Definitions

  • the present invention relates to a gait generator and a control device suitable for not only walking but also running of a legged moving port.
  • a gait target gait
  • the main purpose has been to generate a walking gait.
  • it has been desired to 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 of “gait” includes “step”, so it is easy to be mistaken that it is limited to walking.
  • “gait” is originally used as a term that refers to the running form of a horse, such as a trot. As described above, the concept also includes running.
  • Figure 51 shows the pattern of the vertical position of the upper body and the floor reaction force vertical component (sum of the floor reaction force vertical components acting on the left and right legs) in a typical run.
  • 6 shows patterns of a body vertical position and a floor reaction force vertical component in walking.
  • the body vertical position speed means the vertical position of the body representative point and its speed.
  • the body horizontal position speed means the horizontal position of the body representative point and its speed.
  • the body vertical position speed and the body horizontal position speed together are called the body position speed.
  • translational floor reaction force vertical component in order to distinguish it from the moment component around the vertical axis of the floor reaction force. Is omitted, so “translation” is omitted here.
  • translational floor reaction force horizontal component is also abbreviated as “translation” and described as “floor reaction force horizontal component”.
  • the upper body is the highest at the moment the upper body passes over the supporting legs, and in running, it is the lowest at this moment. In other words, the phase of the vertical movement pattern of the upper body is reversed between walking and running.
  • 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 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 frictional force becomes 0. Or close to 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 applicant first shakes the arm so as to cancel out the moment vertical component that occurs in the target gait other than the arm, for example, in the embodiment of the PCT application PCTZJP 02/135596. I suggested what I did.
  • 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 is gradually turned off.
  • the swing of the left and right arms would be asymmetric.
  • the mouth pot turns left
  • the arm is swung so as to completely cancel the vertical component of the moment generated by other than the 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 limit, and the right arm may reach the rear swing limit.
  • an object of the present invention is to solve the above-described problems and to provide a gait capable of generating a more suitable gait regardless of the gait form such as walking and running or the frictional state of the floor surface.
  • An object of the present invention is to provide a volume generation device and a control device. More specifically, the present invention considers the limit of the moment vertical component of the frictional force between the robot and the floor, and considers a step capable of preventing the spin and the overturn of the mouth pot caused by the spin.
  • An object of the present invention is to provide a gait generating device and a control device that can generate a gait.
  • the first invention of the gait generating device of the legged mobile robot of the present invention is as follows.
  • the vertical component of the floor reaction cam that acts on the lopot, the floor component normal direction component of the floor reaction force moment, the vertical component of the angular momentum change rate of the lopot, or the floor surface method of the angular momentum change rate An allowable range setting unit that sets an allowable range of the limited target amount with the linear direction component as the limited target amount;
  • 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.
  • the provisional instantaneous value of the target motion is corrected such that the instantaneous value of the model restriction target amount as the output of the dynamic model falls within an allowable range, and the instantaneous value of the target motion is determined.
  • the instantaneous value of the corrected target motion is input to the dynamic model, the restricted target instantaneous value that matches the corrected instantaneous value of the target motion falls within the allowable range on the dynamic model.
  • the provisional instantaneous value of the target motion is corrected. For this reason, it is possible to generate the motion of the desired gait such that the limited target amount such as the floor reaction force moment vertical component falls 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 force moment on the dynamic model. This makes it possible to generate a desired gait that makes it possible to prevent spinning of the robot and falling due to the spinning. In addition, as long as the amount to be restricted falls within the allowable range, it is not necessary to always set the amount to be restricted to 0 or almost 0.
  • the target gait can be generated without excessively intense exercise of the movement of the part with a cut. .
  • the desired instantaneous value determining means may calculate a desired value of the floor anti-camoment corresponding to the limited amount on the dynamic model, which is substantially balanced with the desired instantaneous value of the desired motion. It is preferable to determine it as the instantaneous value of the desired floor reaction force moment constituting the second embodiment (second invention).
  • the instantaneous value of the target floor anti-moment with high dynamic accuracy can be determined with respect to the instantaneous value of the target motion.
  • the target instantaneous value determining means includes: a perturbation model representing a relationship between the perturbation motion of the lopot and the perturbation of the target object; and at least a model restriction object obtained by the model calculation means.
  • the apparatus further comprises means for obtaining a motion correction amount, and means for determining the instantaneous value of the target motion by correcting the provisional instantaneous value of the target motion with the correction amount (third invention).
  • 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 an estimated value of the restricted object quantity when the perturbation model manipulated variable is assumed to be at least 0. Means for determining based on the instantaneous value of the quantity, and comparing the determined estimated value with the permissible range. Means for determining a limited amount to be restricted within the allowable range based on the difference between the model restricted object amount instantaneous value obtained by at least the model calculating means and the restricted object amount. It is preferable to determine the perturbation model operation amount (the fourth invention).
  • the perturbation model operation amount is assumed to be 0, that is, the perturbation of the restriction target amount additionally generated in correcting the provisional instantaneous value of the target motion by the perturbation model is set to 0.
  • An estimated value of the restricted object quantity in the case is determined based at least on the model restricted object amount instantaneous value, and the restricted restricted object quantity is determined based on a comparison between the estimated value and the allowable range.
  • 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 to be as close as possible to the estimated value of the restricted amount within the allowable range.
  • a perturbation model manipulated variable is determined based on at least a difference between the model restricted target amount instantaneous value and the restricted restricted target amount.
  • the perturbation model operation amount that enables the restriction target amount not to exceed the allowable range can be appropriately determined.
  • a perturbation model operation amount to be input to the perturbation model is determined based on at least the model limit target amount instantaneous value obtained by the model calculation means, the permissible range, and the required value (fifth invention).
  • the allowable range and the instantaneous value of the model restriction target quantity are considered, not only the allowable range and the instantaneous value of the model restriction target quantity, but also the required values of the state quantity of the perturbation model (the rotation angle and the angular velocity of the rotating body that is an element of the perturbation model) are considered,
  • the perturbation model manipulated variable is determined.
  • the state quantity of the perturbation model is calculated from the state quantity corresponding to the required value. It is possible to prevent a situation in which an inappropriate correction amount of the target motion is required by keeping the distances apart.
  • the means for determining the required value of the perturbation model manipulated variable sequentially determines the required value by a feedback control law according to a deviation between a state quantity of the perturbation model and a target value for the state quantity.
  • 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.
  • the correction amount of the target motion determined by the perturbation model can be made suitable for keeping the state of the perturbation model stable and keeping the amount to be restricted within an allowable range.
  • the means for determining the perturbation model manipulated variable includes at least the estimated value of the restriction target quantity assuming that the perturbation model manipulated variable is matched with the required value.
  • Means for determining a limited target amount it is preferable that at least the perturbation model operation amount is determined based on a difference between the model limited target amount instantaneous value obtained by the model calculation means and the restricted limited target amount ( 7th invention).
  • the perturbation model operation amount is made to match the required value, that is, when the estimated value of the restricted object amount when only the required value is input to the perturbation model, at least the model restriction Determined based on the instantaneous value of the target quantity and the required value, and determine the restricted quantity that has been determined based on a comparison between the estimated value and the allowable range.
  • the estimated value of the restricted object amount may be determined in consideration of the gyro effect.
  • restrictions It is preferable that the already-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 allowable range.
  • a perturbation model operation amount is determined based on at least a difference between the model-restricted amount instantaneous value and the restricted amount to be restricted. As a result, a perturbation model operation amount that does not cause the restriction target amount to exceed the allowable range and can ensure the stability of the perturbation model can be appropriately determined.
  • the target instantaneous value determining means may determine the instantaneous value of the floor reaction force moment corresponding to the limited amount to be restricted by the desired floor reaction force moment constituting the target gait. It is preferable to determine it as the instantaneous value of (8th invention).
  • the restriction target amount corresponding to the instantaneous value of the desired floor reaction force moment surely falls within the allowable range.
  • the target instantaneous value determination means may include means for additionally inputting the correction amount of the target motion into the dynamic model (a ninth invention).
  • the correction amount of the target motion is additionally input to the dynamic model, it is possible to directly obtain the restriction target amount matching the instantaneous value with the target motion from the dynamic model. For this reason, the process of obtaining the estimated value of the restriction target amount becomes easy.
  • the target instantaneous value determination means determines an instantaneous value of a floor reaction chamoment corresponding to the restricted amount to be restricted as an instantaneous value of a desired floor reaction force moment constituting the target gait. It is preferable (the 10th invention).
  • the restriction target amount corresponding to the instantaneous value of the desired floor reaction force moment surely falls within the allowable range.
  • 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 a mouth pot and the control. It is preferable that the model expresses the relationship with the limited target quantity perturbation (first invention).
  • the perturbation movement is a perturbation movement for maintaining the position of the center of gravity of the lopot substantially constant (a twelve invention).
  • the target motion can be corrected by the perturbation model without affecting the translational floor reaction force of the robot.
  • the perturbation movement is a perturbation movement of an upper body and a mouth of a mouth pot or an arm extending from the upper body (a thirteenth invention).
  • the first invention of the gait generating device for a legged mobile lopot provides a target gait of a legged mobile locopot that moves by moving a plurality of legs extended from the upper body.
  • the generated gait generator In the generated gait generator,
  • a target floor reaction force provisional instantaneous value determining means for sequentially determining at least a provisional instantaneous value of a target floor reaction force among the target movement and the target floor reaction force constituting the target gait; Values into a first dynamics model representing the relationship between the movement of the mouth pot and the floor reaction force, and a first model calculating means for obtaining a temporary instantaneous value of the target movement as an output of the first dynamics model
  • At least the tentative instantaneous value of the target motion is input to a second dynamic model representing a relationship between the motion of the robot and the limited object amount, and the second dynamic model
  • 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
  • a target instantaneous value of the target motion is determined based on at least an input of the second dynamic model.
  • the floor reaction force moment correction amount of the target floor reaction force is determined so that the model limit target amount instantaneous value as the output of the second dynamic model falls within the allowable range.
  • the detected floor reaction force moment is additionally input to the first dynamic model. For this reason, based on at least the input of the second dynamics model, an instantaneous value of the target operation that can keep the limited object amount within the allowable range is obtained. That is, the instantaneous value of the target motion, which is an input to the second dynamic model, is determined via the first dynamic model so that the limited amount generated on the second dynamic model falls within the allowable range.
  • the motion of the desired gait such that the restricted target amount such as the floor anti-camoment vertical component falls within the allowable range. That is, the instantaneous value of the target motion is determined on the dynamic model in consideration of the limit of the vertical component of the frictional camoment.
  • the restricted amount falls within the allowable range, it is not necessary to always set the restricted amount to 0 or almost 0.Therefore, the torsion in a part of the robot may become excessively vigorous exercise. It is possible to generate a desired gait without any gaps.
  • the second dynamic model basically has higher approximation accuracy than the first dynamic model.
  • the instantaneous value of the floor reaction force moment substantially corresponding to the instantaneous value of the model limiting object output by the second dynamics model is obtained by calculating the desired floor reaction camo constituting the desired gait. It is preferable to provide a means for determining the instantaneous value of the element (the fifteenth invention).
  • the instantaneous value of the target floor anti-moment with high dynamic accuracy can be determined with respect to the instantaneous value of the target motion.
  • the first model input correction means is characterized in that the second dynamic model is at least provided that a floor reaction force moment correction amount of the target floor reaction force is assumed to be 0.
  • an estimated value of the limited object amount when the floor reaction force moment correction amount is assumed to be 0 is determined based on at least the model limited object amount instantaneous value. Determine the restricted quantity based on the comparison with.
  • the estimated value of the limited target amount may be determined in consideration of the gyro effect.
  • 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 floor reaction force moment correction amount is determined based on at least a difference between the model restricted target amount instantaneous value and the restricted restricted target amount.
  • the first model input correction means At least the estimated value of the model restriction target amount instantaneous value output by the second dynamic model when it is assumed that at least the floor reaction force moment correction amount of the target floor reaction force matches the required value.
  • the floor reaction force moment based on the difference Determining Seiryo (first 7 invention).
  • an estimated value of the limited target amount when it is assumed that the floor reaction force moment correction amount matches the required value is based on at least the model limited target amount instantaneous value and the required value.
  • the restricted quantity subject to restriction is determined based on a comparison between the estimated value and the allowable range.
  • the estimated value of the amount to be restricted may be determined in consideration of the Jaya effect.
  • 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 floor reaction moment correction amount is determined based on at least a difference between the model limited target amount instantaneous value and the restricted limited target amount.
  • the correction amount of the target motion is obtained based on at least the model limit target amount instantaneous value obtained by the second model calculation means and the allowable range.
  • a second model input correction means for additionally inputting the amount into the second dynamic model (18th invention).
  • the perturbation model representing the relationship between the perturbation of the lopot and the perturbation amount of the restricted object, and at least the model restricted object amount instantaneous value obtained by the second model calculating means and the permissible range Means for determining an operation amount of the floor reaction force moment based on the floor reaction force moment, and a floor reaction force moment correction amount of the target floor reaction force input to the first dynamic model.
  • a distribution means for distributing the perturbation model operation amount to be input to the perturbation model, wherein the second model input correction means inputs the perturbation model operation amount to the perturbation model to thereby correct the target motion correction amount. It is preferable to find it (19th invention).
  • the operation amount of the floor reaction chamoment 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 dynamic model and the perturbation model can be input to each model. Therefore, it is possible to appropriately determine the instantaneous value of the target motion that can keep the limited target amount within the 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 chamoment correction amount input to the first dynamics model is desirably the low-frequency component (DC component) of the operation amount of the floor reaction force moment, and the perturbation model operation input to the perturbation model is desirable.
  • the quantity is desirably the high frequency component of the manipulated variable of the floor reaction force moment.
  • the means for determining a required value of an operation amount of the floor reaction force moment includes a floor to be given to the distribution means based on at least the instantaneous value of the model restriction target amount, the allowable range, and the required value obtained by the second model calculation means. It is preferable to determine the manipulated variable of the reaction force moment (20th invention).
  • the permissible range not only the permissible range but also the state quantity of the perturbation model (the rotation angle of the rotating body as an element of the perturbation model, its angular velocity, etc.) is taken into consideration, and the floor input to the distribution means is taken into account. Since the manipulated variable of the reaction force moment is determined, the state quantity of the perturbation model is not far from the state quantity corresponding to the required value, and the correction amount of the target motion obtained by the perturbation model is determined to be inappropriate. Can be prevented.
  • the means for determining the required value of the manipulated variable of the floor reaction 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 values sequentially (21st 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.
  • the correction amount of the target motion determined by the perturbation model can be made suitable for keeping the state of the perturbation model stable and keeping the amount to be restricted within an allowable range.
  • the perturbation model includes a perturbation motion for perturbing a component around a vertical axis or a floor normal axis of a rate of change in the angular momentum of the robot and the restriction. It is preferable that the model represents the relationship with the target quantity perturbation (22nd invention).
  • the position of the center of gravity of the mouth pot is substantially constant. It is preferable that the motion is a perturbation motion that maintains the pressure (the 23rd 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 twenty-fourth invention). invention).
  • the means for determining the manipulated variable of the floor reaction force moment includes: a model restriction target quantity instantaneous output by the second dynamic model when the perturbation model manipulated variable is assumed to be 0.
  • the perturbation model manipulated variable is 0, that is, the perturbation component of the restriction target amount additionally generated by correcting the tentative instantaneous value of the target motion by the perturbation model
  • An estimated value of the restricted target amount when 0 is determined is determined based on at least the instantaneous value of the model restricted target amount, and the restricted restricted target amount is determined based on a comparison between the estimated value and the allowable range.
  • 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 restricted target amount instantaneous value and the restricted restricted target amount.
  • the amount of operation of the floor anti-camo can be appropriately determined so as not to exceed the allowable range.
  • the means for determining the manipulated variable of the floor reaction force moment is output by the second dynamics model when it is assumed that the perturbation model manipulated variable is matched with the required value.
  • a means for determining a limited amount to be restricted which is limited to the allowable range based on the comparison, wherein at least the instantaneous value of the model limited amount obtained by the second model calculating means is provided. It is preferable to determine the operation amount of the floor reaction force moment based on a difference between the floor reaction force moment and the restricted amount to be restricted (26th invention).
  • the perturbation model operation amount is equal to the required value
  • the estimated value of the restricted amount may be determined in consideration of the garbage effect and the Jai mouth effect. Further, it is preferable that the restricted amount to be restricted is determined to be 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 twenty-seventh invention of the legged moving port gait generating device of the present invention includes a legged moving rod that moves by moving a plurality of legs extended from the upper body.
  • An allowable range setting unit that sets an allowable range of the limited target amount, using the directional component as a limited target amount;
  • a target floor reaction force temporary instantaneous value determining means for sequentially determining at least a temporary instantaneous value of the target floor reaction force of the target exercise and the target floor reaction force constituting the target gait;
  • the first value is input to the first dynamic model representing the relationship between the motion of the lopot and the floor reaction force, and the first model calculation for obtaining the first temporary instantaneous value of the target motion as the output of the first dynamic model Means, and at least a provisional instantaneous value of the desired floor reaction force is input to a second dynamic model representing the relationship between the movement of the mouth pot and the restricted object amount, and is output as the output of the second dynamic model.
  • the second provisional instantaneous value of the target motion is limited such that the restricted target amount instantaneous value substantially balanced on the second dynamic model with the second provisional instantaneous value of the target motion falls within the allowable range.
  • a second model calculating means
  • Operation amount calculating means for obtaining an operation amount of floor anti-chamoment based on at least a difference between the first temporary instantaneous value and the second temporary 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 anti-chamber to at least one of the first dynamic model and the second dynamic model,
  • the second temporary instantaneous value of the target motion is determined as the instantaneous value of the target motion.
  • 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.
  • This is also input to the second dynamic model, and this second dynamic model is The second provisional instantaneous value of the target motion is obtained using the above.
  • the second provisional instantaneous value of the target motion is obtained such that the restricted target amount instantaneous value which is substantially balanced on the second dynamic model falls within the allowable range.
  • the manipulated variable of the floor reaction force moment is determined so that the difference approaches zero.
  • the second temporary instantaneous value of the target motion is determined as the target instantaneous value of the target motion.
  • 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.
  • a desired gait can be generated that can prevent the mouth pot from spinning and falling due to the spin.
  • the restricted amount falls within the allowable range, it is not necessary to always set the restricted amount to 0 or almost 0. No goal gait can be generated.
  • the first kinetic model may have a relatively low dynamic approximation accuracy
  • the second kinetic model may have a higher dynamical approximation accuracy than the first kinetic model. Desirably.
  • the difference between the first temporary instantaneous value and the second temporary instantaneous value of the target movement is determined by determining the posture of a predetermined portion of the mouth port around a vertical axis or a floor normal axis. It is preferable to include a difference in state quantity (28th 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 instantaneous value of the floor reaction force moment corresponding to the limited target amount substantially balanced on the second dynamic model with the instantaneous value of the target movement is set to the target value. It is preferable to have means for determining the instantaneous value of the desired floor reaction force moment constituting the gait (29th invention).
  • the twenty-seventh invention as described above can be easily realized by using, for example, the configuration of the seventeenth invention. That is, in the seventeenth 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 the required value of the floor reaction chamoment correction amount of the target floor reaction force comprises: The required value is determined based on the difference between the target instantaneous value of the target exercise and the third provisional instantaneous value of the target exercise such that the difference approaches zero (30th 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 seventeenth invention, respectively. Therefore, the 30th invention is equivalent to the 17th invention, and has the same effect as the 17th invention.
  • the third invention of the legged mobile robot's gait generator 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.
  • An allowable range setting unit that sets an allowable range of the limited target amount, using the directional component as the limited target amount;
  • a target motion temporary instantaneous value determining means for sequentially determining a temporary instantaneous value of a target motion constituting the target gait;
  • Model calculation means for inputting the tentative instantaneous value of the target motion into a dynamic model representing a relationship between the motion of the lopot and the restricted object amount, and obtaining a model restricted object amount instantaneous value as an output of the dynamic model.
  • the portion of the instantaneous value of the model limited object amount as the output of the dynamic model that deviates from the allowable range is passed through the mouth-to-pass filter.
  • the instantaneous value of the target motion is determined by correcting the instantaneous value.
  • the provisional instantaneous value of the target motion is corrected according to the deviated low-frequency component (including the DC component). For this reason, it is possible to generate a motion of the desired gait that can prevent the restricted amount such as the floor reaction force moment vertical component from constantly deviating from the allowable range.
  • the instantaneous value of the target motion is determined in consideration of the limit of the vertical component of the frictional camoment on the dynamic model.
  • the instantaneous value of the target motion is determined in consideration of the limit of the vertical component of the frictional camoment on the dynamic model.
  • the target instantaneous value determining means calculates a floor reaction chamoment corresponding to a difference between the model-restricted target amount instantaneous value and the deviated amount by a target floor reaction force constituting the target gait. It is preferable to determine the instantaneous value of the force moment (the 32nd invention). According to this, it is possible to determine the instantaneous value of the target floor reaction force moment with high dynamic accuracy with respect to the instantaneous value of the target motion.
  • a third invention which is a control device for a legged mobile robot according to the present invention, includes a target gait generated by the gait generating device for a legged mobile robot according to the first to thirty-second inventions.
  • a control device that controls the operation of the robot so as to follow the target gait further comprising: a slip determination unit that determines occurrence of a slip of the robot that is operating following the target gait; The allowable range is variably set in accordance with a result of the determination by the slip determination means.
  • the allowable range of the restricted amount is variably set according to the result of the determination of the actual occurrence of the slip of the mouth pot, so that the occurrence of the slip of the robot 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 as follows.
  • the slip judging means judges the occurrence of slip based on at least the ground speed of the tip of the grounded leg. (34th 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 slippage 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. Means is provided, and the occurrence of slip is determined based on at least the apparent spring constant (the thirty-fifth invention). In this case, for example, when the apparent spring constant is smaller than a predetermined value, it can be determined that slippage has occurred.
  • the slip judging means operates at least on a leg that is in contact with the ground.
  • the occurrence of slip is determined based on the actual floor reaction force that has passed through a band-pass filter having a frequency pass characteristic in the vicinity of a predetermined frequency (Embodiment 36).
  • the actual floor reaction force that has passed through the band-pass filter corresponds to the vibration component of the actual floor reaction force when so-called sliding vibration occurs. Then, for example, when the magnitude (absolute value) of the vibration component is larger than a predetermined value, it can be determined that a sliding vibration has occurred.
  • the determination of the occurrence of slip can be made in any of the thirty-fourth to thirty-sixth inventions, but the determination of the occurrence of the slip is made by combining two or more of these thirty-fourth to thirty-sixth inventions. You may do so.
  • FIG. 1 is a view schematically showing the overall configuration of a bipedal port as a leg-type port in the embodiment of the present invention and a reference example related thereto
  • FIG. 2 is a diagram of the robot in FIG. Diagram showing the structure of the tip of the leg
  • FIG. 3 is a block diagram showing the configuration of the control unit provided in the robot of FIG. 1
  • FIG. 4 shows the functional configuration of the control unit in the first reference example It is a block diagram.
  • 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 target floor reaction force vertical component trajectory
  • Fig. 7 is the X component and the target ZMP trajectory.
  • 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 target floor reaction force vertical component trajectory
  • Fig. 7 is the X component and the target ZMP trajectory
  • FIG. 8 is a diagram for explaining the upper body translation mode of the robot
  • FIG. 9 is a diagram for explaining the upper body tilt mode of the robot
  • FIG. 10 is a diagram showing the upper side of the robot.
  • Fig. 11 (a) is a diagram for explaining the single-rotation mode
  • Fig. 11 (a) is a diagram for explaining the anti-phase arm swing mode of the mouth pot in plan view
  • Fig. 11 (b) is the inverse of the mouth pot.
  • FIG. 12 is a diagram for explaining the phase arm swing mode in a side view
  • FIG. 12 is a diagram for explaining a dynamic model used in the embodiment.
  • the Fig. 13 is a flowchart showing the main routine processing of the gait generator in the first reference example, Fig.
  • FIG. 14 is a diagram for explaining the diverging state of the robot, and Fig. 15 is S0 2 in Fig. 13.
  • FIG. 16 is a diagram for explaining a normal gait and a supporting leg coordinate system
  • FIG. 17 is a flowchart showing a normal gait upper body trajectory and a supporting leg coordinate system.
  • Fig. 18 is a graph showing an example of the reference anti-phase arm swing angle.
  • Fig. 19 is a graph showing an example of setting a desired floor reaction force vertical component trajectory in a normal gait.
  • Fig. 20 is a normal gait.
  • Fig. 21 is a graph showing an example of setting the allowable range of floor reaction force water in the normal gait.
  • FIG. 21 is a graph showing an example of setting the allowable range of floor reaction chamoment vertical component in the normal gait.
  • FIG. 23 is a flowchart showing the subroutine processing of S024 of FIG. 13
  • FIG. 24 is a flowchart showing the subroutine processing of S208 of FIG. 23
  • FIG. 25 is a flowchart of FIG.
  • FIG. 26 is a flowchart showing the subroutine processing in S306, and
  • FIG. 26 is a flowchart showing the subroutine processing in S412 in FIG.
  • Figure 27 shows an example of the floor reaction force horizontal component without considering the allowable range
  • Figure 28 shows an example of the floor reaction force horizontal component with the allowable range considered.
  • Graph showing an example of angular acceleration Figure 30 is a graph showing an example of the body tilt recovery moment ZMP conversion value for restoring the body inclination angle of the lopot
  • Figure 31 is a body tilt recovery moment ZMP conversion
  • 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 considering the allowable range.
  • FIG. 34 is a graph showing an example of an antiphase arm swing moment
  • FIG. 35 is a graph showing an antiphase arm swing angular acceleration corresponding to the antiphase arm swing moment of FIG.
  • Figure 36 shows the antiphase arm swing restoration angular acceleration for restoring the antiphase arm swing angle.
  • FIG. 3 7 is a graph showing the antiphase arm swing restoring moment which corresponds to the antiphase arm swing restoring angular acceleration of FIG 6
  • FIG. 38 is a graph showing the floor reaction force moment vertical component obtained by combining the floor reaction force moment vertical component of FIG. 33 and the antiphase arm swing restoration moment of FIG. 37.
  • Fig. 39 is a flowchart showing the subroutine processing of S026 in Fig. 13, Fig.
  • FIG. 40 is a graph showing an example of setting the floor reaction force horizontal component allowable range of the current time's gait
  • Fig. 41 is the current time.
  • FIG. 42 is a flow chart showing the subroutine processing of S028 in FIG. 13, and FIG. 43 is S7 in FIG. Flow chart showing the subroutine processing of 02
  • 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
  • FIG. 30 is a flowchart showing a subroutine process
  • FIG. 46 is a flowchart showing a subroutine process of S11412 in FIG. 45.
  • 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 the dynamic model,
  • FIG. 50 is a diagram showing an example of setting a desired floor reaction force vertical component in a walking gait, and
  • FIG. 51 is an upper body in a running gait of a mouth pot.
  • FIG. 52 is a diagram showing a relationship between a vertical position and a floor reaction force vertical component, and
  • FIG. 52 is a diagram showing a relationship between a body vertical position and a floor reaction force vertical component in a lopot's walking gait.
  • FIG. 53 is a block diagram showing the functional configuration of the control unit in the second reference example.
  • Fig. 54 is a block diagram showing the processing of the compensating total floor reaction force moment horizontal component distributor shown in Fig. 53.
  • 5 is a block diagram showing the processing of the model operation floor reaction force moment vertical component determiner shown in FIG. 53
  • FIG. 56 is a flowchart showing the main routine processing of the gait generator in the second reference example
  • FIG. 7 is a flowchart showing the subroutine processing of S3302 in FIG. 56
  • FIG. 58 is a flowchart showing the subroutine processing of S3144 in FIG.
  • FIG. 59 is a block diagram showing the functional configuration of the control unit in the third reference example, and FIG.
  • FIG. 60 is a main routine processing of the gait generator in the third reference example.
  • FIG. 61 is a flowchart showing a subroutine process of S20334 in FIG. 60
  • FIG. 62 is a flowchart showing a subroutine process of S2114 in FIG. It is a bird.
  • FIG. 63 is a block diagram showing a functional configuration of a control unit according to the first embodiment of the present invention.
  • FIG. 64 is a block diagram showing a functional configuration of a gait generating device according to the first embodiment.
  • 5 is a diagram showing an example of setting a ZMP allowable range in the first embodiment
  • FIG. 66 is a flowchart showing main routine processing of the gait generator in the first embodiment
  • FIG. 67 is a diagram in FIG. FIG.
  • FIG. 68 is a block diagram illustrating the processing of S 355, FIG. 68 is a diagram for explaining the model for body horizontal position perturbation shown in FIG. 67, and FIG. 69 is a body posture angle correction shown in FIG. 67.
  • 70 is a diagram for explaining the perturbation model for perturbation
  • FIG. 70 is a diagram for explaining the perturbation model for antiphase arm swing angle correction shown in FIG. 67
  • FIG. 71 is an antiphase arm swing angle correction shown in FIG. 67.
  • FIG. 9 is a block diagram showing processing of a perturbation model moment determination unit for use.
  • FIG. 72 is a block diagram showing the processing of S3536 in FIG. 66 in the second embodiment of the present invention, and FIG.
  • FIG. 73 is a perturbation model moment determining unit for reversal phase arm swing angle correction shown in FIG.
  • FIG. 7 is a block diagram showing the processing of FIG.
  • FIG. 74 is a block diagram illustrating a functional configuration of a gait generator according to the third embodiment of the present invention
  • FIG. 75 is a block diagram illustrating processing of the pseudo-order full model illustrated in FIG.
  • FIG. 76 is a block diagram showing the processing of S355 in FIG. 66 in the fourth embodiment of the present invention.
  • FIG. 77 is a block diagram showing a functional configuration of a control unit in a fourth reference example related to the fifth embodiment of the present invention
  • FIG. 78 is a main routine processing of the gait generator in the fourth reference example.
  • FIG. 85 is a block diagram illustrating an example of a modification according to the first to fifth embodiments.
  • FIG. 86 is a block diagram illustrating an antiphase arm swing angle correction perturbation model moment determining unit according to the first embodiment.
  • FIG. 28 is a block diagram illustrating an example (sixth embodiment) of a modification of the process.
  • a two-legged robot is taken as an example of a leg-type moving port.
  • FIGS. 1 to 47 a first reference example relating to a control device for a legged moving port according to the present invention will be described. Further, a second reference example will be described with reference to FIGS. 53 to 58, and a third reference example will be described with reference to FIGS.
  • the embodiment of the present invention described later has the same mechanical configuration as that of the first reference example, and only a part of the gait generation processing and control processing of the mouth pot is the same as the first to third reference examples. It is different from either one. Therefore, the description of the first to third reference examples is often referred to in the description of the embodiment described later. Supplementally, matters described with reference to FIG. 1 and FIGS. 2 and 3 to be described later and FIGS. 5 to 12 are the same in the embodiment to be described later.
  • FIG. 1 is a schematic diagram showing an overall bipedal movement robot as a legged transfer port according to the first reference example.
  • a two-legged moving port (hereinafter referred to as a port) 1 is a pair of left and right legs (leg links) extending downward from an upper body (the base body of the robot 1) 2, 2 is provided.
  • the two legs 2 and 2 have the same structure, each having six joints.
  • the six joints are, in order from the upper body 3 side, joints for rotation (rotation) of the crotch (lumbar) (for rotation in the Y direction with respect to the upper body 3). They must correspond to the right and left legs, respectively.
  • R, 14 L joints for rotation in the knee pitch direction 16 R, 16 L, joints for rotation in the ankle pitch direction 18 R, 18 L, and rotation in the roll direction of the ankle It consists of joints 20R and 20L.
  • the hip joint (or hip joint) is composed of joints 1 O (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 connected by a thigh link 24 R (L), and the knee joint and ankle joint are connected by a crus link 26 R (L).
  • a pair of left and right arms 5 and 5 are 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 desired motion of both feet 22R and 22L can be performed by driving the joint at an appropriate angle. As a result, the mouth port 1 can move arbitrarily in the three-dimensional space.
  • each arm 5 can perform an exercise such as arm swing by rotating its shoulder joint, elbow joint, and wrist 'joint. As shown in FIG.
  • a well-known 6-axis force sensor 50 between the ankle joints 18 R (L), 20 R (L) of each leg 2 and the foot 22 R (L) is located below.
  • the 6-axis force sensor 50 is for detecting the presence / absence of landing on the foot 22 R (L) of each leg 2, the floor reaction force (ground load) applied to each leg 2, and the like.
  • the detection signals of the three-directional components Fx, Fy, Fz of the translational force of the floor reaction force and the three-directional components MX, My, Mz of the moment are output to the control unit 60.
  • the upper body 3 includes the inclination angle and its angular velocity of the upper body 3 with respect to the Z axis (vertical direction (gravity direction)), and the rotation angle of the upper body 3 around the Z axis ( ⁇ one angle) and its angular velocity.
  • An attitude sensor 54 for detection is provided, and a detection signal is output from the attitude sensor 54 to the control unit 60.
  • the attitude sensor 54 includes a 3-axis acceleration sensor and a 3-axis gyro sensor (not shown), and the detection signals of these sensors are used to determine the attitude angle (tilt angle and angle) of the body 3 and its position. Used to detect angular velocity and to estimate the self-position and orientation of mouth port 1.
  • each joint of the mouth port 1 has an electric motor 64 (see FIG. 3) for driving the joint, and a rotation amount of the electric motor 64 (see FIG. 3).
  • a rotary encoder for detecting the joint rotation angle
  • 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 robot 1, and by operating the joystick 73, It is configured such that a request for the gait of the mouth port 1 can be input to the control unit 60 as needed, for example, by turning the lopot 1 moving straight.
  • FIG. 2 is a diagram schematically showing a basic configuration of a tip portion (including each foot 22 R (L)) of each leg 2 in the first reference example.
  • a spring mechanism 70 is provided between the foot 22 and the 6-axis force sensor 50, and the sole (each foot 2) 2
  • a bottom elastic body 71 made of rubber or the like is attached to the bottom surface of R (L).
  • the compliance mechanism 72 is constituted by the spring mechanism 70 and the sole elastic body 71.
  • a rectangular guide member (not shown) attached to the upper surface of the foot 22 R (L) and an ankle joint 18 R (L) (see FIG. In FIG.
  • the ankle joint 2 OR (L) is omitted) and the 6-axis force sensor 50 side is attached, and the guide member is housed in a flexible manner (rubber or spring) via a piston-like material so as to be finely movable. (Not shown).
  • the foot 22 R (L) indicated by a solid line in FIG. 2 indicates a state when no floor reaction force is applied.
  • the spring mechanism 70 of the compliance mechanism 72 and the sole elastic body 71 are bent, and the foot 2 2 R (L) is illustrated by a dotted line in the figure. Move to such a position and orientation.
  • the structure of the compliance mechanism 72 is not only used for reducing landing impact, as described in detail in, for example, Japanese Patent Application Laid-Open No. 5-305558, which was previously proposed by the present applicant. It is also important to improve controllability.
  • FIG. 3 is a block diagram showing the configuration of the control unit 60.
  • the control unit 60 is constituted by a microcomputer, and includes a CPU.
  • the first and second computing devices 90 and 92, the AZD converter 80, the power converter 86, the DZA converter 96, the RAM 84, the R ⁇ M 94, and the data between them It has a bus line 82 for sending and receiving.
  • the output signals of the 6-axis force sensor 50, posture sensor 54 (acceleration sensor and rate gyro sensor), and joystick 73 of each leg 2 are output by the AZD converter 80. After being converted to a digital value, it is sent to R'A M84 via pass 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, 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), and stores the command in the RAM 84. Send out.
  • the second arithmetic unit 92 reads the joint angle displacement command from the RAM 84 and the actual measured value of the joint angle detected based on the output signal of the encoder 65, and performs operations necessary for driving each joint. The output is calculated and output to the electric motor 64 that drives each section via the DZA converter 96 and the servo amplifier 64a.
  • FIG. 4 is a block diagram showing an overall functional configuration of the control device for a legged mobile lopot according to the first reference example. Parts other than the “real mouth pot” in FIG. 4 are configured by processing functions (mainly the functions of the first arithmetic unit 90 and the second arithmetic unit 92) executed by the control unit 60. It is a thing. In the following description, when there is no particular need to distinguish between the left and right sides of the leg 2 and the arm 5, the symbols R and L are omitted.
  • the control unit 60 includes a gait generator 100 that generates and outputs a desired gait of the robot 1 freely and in real time.
  • the gait generator 100 constitutes each means of the present invention by its function.
  • the desired gait output by the gait generator 100 is Body position / posture trajectory (trajectory of target position and target posture of body 3), target foot position / posture trajectory (trajectory of target position and target posture of foot 22), target arm posture trajectory (each arm) 5 target attitude), target total floor reaction force center point (target ZMP) trajectory, and target total floor reaction force trajectory.
  • target ZMP target total floor reaction force center point
  • the “trajectory” in the above-mentioned gait means a pattern of a temporal change (time-series pattern), and in the following description, it may be referred to as “passage” 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 of the body 3 in the pitch direction (around the Y axis). The rotation angle of the upper body 3 in the direction (around the Z axis) and the foot posture are 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 with respect to the vertical direction may be referred to as the body posture inclination or the body posture inclination angle.
  • each foot 22 (the floor reaction force composed of translational force and moment) is called “each foot floor reaction force”, and all (two) of the foot 22
  • the resultant force of each floor floor reaction force for R and 22 L is called the total floor reaction force.
  • each floor floor reaction is hardly mentioned, and unless otherwise specified, “floor reaction” is treated as synonymous with “total floor reaction”.
  • the desired floor reaction force is generally defined by the point of action, the translational force and the moment acting on that point. It is represented by a statement. Since the action point is good for everywhere, countless expressions can be considered for the same desired floor reaction force.
  • the target floor reaction force In terms of force, the moment component of the desired floor reaction force is zero except for the vertical component (moment about the vertical axis (Z axis)). In other words, the horizontal component of the moment of the desired floor reaction force around the center point of the desired floor reaction force (the moment about the horizontal axis (X-axis and Y-axis)) 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.
  • a desired gait in a narrow sense is a set of a desired motion trajectory during one step and its ZMP trajectory.
  • 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 reaction force vertical component is determined dependently. Furthermore, by determining the horizontal position trajectory of the robot 1 so that the resultant component of the inertia and gravity due to the motion of the desired gait has zero horizontal component of the moment generated around the desired ZMP. The translational floor reaction horizontal component is also determined. This Therefore, in the specification of PCT Publication WOZ 02 / NO 40224, only the target ZMP was sufficient as a physical quantity to be explicitly set with respect to the floor reaction force of the own gait.
  • the target gait in a narrow sense was sufficient to define the target gait in a narrow sense.
  • the floor reaction force vertical component translational floor reaction force vertical component
  • the trajectory such as the desired body vertical position of the mouth port 1 is determined after explicitly setting the target trajectory of the floor reaction force vertical component. Therefore, in the present specification, the following b ′) is used as a definition of a desired gait in a narrow sense.
  • a desired gait in a narrow sense is a set of a desired motion trajectory during one step, and a desired floor reaction force trajectory including at least the desired ZMP trajectory and the desired translational floor reaction force vertical component trajectory.
  • the target gait will be used in the narrow sense of the above-mentioned b ′), unless otherwise specified, to facilitate understanding.
  • “one step” of the desired gait is used in the meaning from the time when one leg 2 of the mouth pot 1 lands to the time when the other leg 2 lands.
  • the target gait is used in the sense of a gait for one step, but it does not necessarily have to be for one step.
  • the gait may be a step, or a gait for a period shorter than one step (for example, half a step).
  • the floor reaction force vertical component means “translational floor reaction force vertical component”
  • the vertical component of the moment (the component around the vertical axis) of the floor reaction force is “moment”. Is distinguished from “floor reaction vertical component”.
  • the floor reaction force horizontal component means “the translational floor reaction horizontal component”.
  • the period during which the mouth pot 1 supports its own weight with the two legs 2 and 2 and the one-leg support period are not limited to the period during which both legs support the gait.
  • the period during which the leg 2 supports the weight of the mouth pot 1, and the aerial period- refer to the period when both legs 2, 2 are off the floor (floating in the air).
  • the leg 2 on the side that does not support the weight of the robot 1 during the one-leg support period is called a “free leg”.
  • there is no two-leg supporting period and the one-leg supporting period (landing period) and the aerial period are alternately repeated. In this case, both legs 2 and 2 do not support the weight of mouth port 1 during the aerial phase, but leg 2 and support
  • the legs 2 which have been described above are also referred to as a free leg and a supporting leg, respectively, even in the aerial period.
  • the outline of the target gait generated by the gait generator 100 will be described using the running gait shown in FIG. 5 as an example.
  • the other definitions and details regarding the gait are also described in Japanese Patent Application Laid-Open No. 10-86081 proposed by the applicant of the present application, and are described below.
  • the contents that are not described in the 081 publication will be mainly described. '
  • 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 lands (grounds), and the two legs 2, 2 are in the air.
  • the mid-floating period is alternately repeated.
  • the first state in Fig. 5 is the state at the beginning (initial) of the one-leg support period
  • the second state is the state at the midpoint of the one-leg support period
  • the third state is the aerial period following the one-leg support period.
  • the fourth state is at the midpoint of the aerial phase
  • the fifth state is at the end of the aerial phase (at the start of the next one-leg support phase).
  • the state is shown.
  • the robot 1 moves toward 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. Foot 2 Lands on 2 heels. Subsequently, as shown in the second state of FIG. 5, the mouth pot 1 is the foot 2 2 that has landed (the foot 2 2 on the supporting leg side). After landing on almost the entire bottom surface of the foot, as shown in the third state of FIG. 5, the foot 22 of the support leg side (the rear side in the traveling direction of the lopot 1 in the third state of FIG. 5) Kick the floor with the toe of the foot 2 of the leg 2 2) and jump up into the air. This ends the one-leg support period and starts the aerial period.
  • the swing leg exists at the rear side of the support leg during the one-leg support period. As shown in the third state, it is swung toward the front of the support leg toward the next scheduled landing position. Next, after the aerial period shown in the fourth state in FIG. 5, robot 1 moves to the foot 2 2 He lands on his heels 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 provided 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 is configured to generate a part of the target gait, such as the desired foot position / posture trajectory of the desired gait, the desired floor reaction force vertical component trajectory, etc., according to the required parameters. After determining the parameters that define the components (called gait parameters), the instantaneous value of the desired gait is sequentially determined using the gait parameters, and the time-series pattern of the desired gait is calculated. Generate.
  • the target foot position / posture trajectory (more specifically, the target trajectory of each spatial component (X-axis component, etc.) of the foot position and posture) is described in, for example, Japanese Patent No. 3233333.
  • This finite time settling filter has a variable time constant
  • the first-order lag filter that is, a filter whose transfer function is expressed in the form of 1 Z (1 + ⁇ s) (or a variable time constant; this filter is hereinafter referred to as a unit filter) is divided into multiple stages ( In the first reference example, three or more stages are connected in series, and a trajectory that reaches a specified value at a desired specified time can be generated and output.
  • the time constants of the unit filters in each stage are sequentially and variably set in accordance with the remaining time until the designated time after 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, the value of Is set to 0.
  • the finite time settling filter is provided with a step input having a height corresponding to the specified value (more specifically, the change amount from the initial value of the output of the finite time settling filter to the specified value).
  • Such a finite-time settling filter not only generates an output that reaches a specified value at a specified time, but also makes the output change speed of the finite-time settling filter at the specified time zero or almost zero. it can.
  • the change acceleration (differential value of the change speed) of the output of the finite-time settling filter can be made zero or almost zero.
  • the target foot position / posture trajectory generated by the finite time settling 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 desired foot position / posture trajectory generated as described above is such that the position of each foot 22 is gradually accelerated from its initial contact state (the state of the initial time of the desired gait) toward the expected landing position. Generated to start moving. Finally, the target foot position / posture trajectory gradually reduces the rate of change of the position to 0 or almost 0 by the scheduled landing time, and the landing schedule at the scheduled landing time. Generated to reach a fixed position and stop. Therefore, 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 when the landing is performed from the state in which all the legs 2, 2 are in the air at the same time (the state during the air) in the running gait.
  • 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 target 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 landing of the running gait, the desired gait of the robot 1 is a gait that lands while retracting the leg 22 on the free leg side toward the upper body 3 side.
  • the mouth port 1 is moved from the upper body 3 so that the ground speed of the foot 22 on the swing leg side becomes 0 or almost 0 at the moment of landing.
  • the landing is done by pulling up the foot 22 when watching. As a result, the landing impact is reduced, and the landing impact is prevented from becoming excessive.
  • the finite-time settling filter is composed of three or more unit filters (for example, three stages) connected in series, so that the speed of each foot 22 by the scheduled landing time is Not only does (the speed of change of the foot position) become 0 or almost 0, but the acceleration of each foot 22 also becomes 0 or almost 0 at the scheduled landing time and stops. That is, the ground acceleration at the moment of landing is also zero or almost zero. Therefore, the landing impact is further reduced. In particular, even if the actual landing time of the robot 1 deviates from the target landing time, the impact does not increase much.
  • the unit of the finite time settling filter may be two, but in this case, the acceleration of each foot 22 at the scheduled landing time is generally 0. do not become.
  • the foot position trajectory was generated using the finite time settling field, but the change rate of the foot position at the scheduled landing time (time derivative value of the foot position) was 0. Or a function such as a polynomial set such that the change in acceleration of the foot position (the time differential value of the change speed) at the scheduled landing time is 0 or almost 0.
  • a desired foot position trajectory may be generated. The same is true for generating the desired foot posture trajectory. However, regarding 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 and the Functions such as polynomials are set so that the change acceleration becomes zero or almost zero.
  • the desired floor reaction force vertical component trajectory is set, for example, as shown in FIG.
  • the shape of the desired floor reaction force vertical component trajectory in the running gait (specifically, the shape during the one-leg support period) is trapezoidal (a shape that is convex toward the increasing side of the floor reaction force vertical component).
  • the height of the trapezoid and the time of the break point are defined as the gait parameters that define the desired floor reaction force vertical component trajectory, and those gait parameters (floor reaction force vertical component trajectory parameter ) Is determined.
  • the desired floor reaction force vertical component is constantly set to zero.
  • the desired floor reaction force vertical component trajectory should be substantially continuous (the value 4 so that it does not continue).
  • substantially continuous refers to the value jump that occurs when an analog continuous trajectory (true continuous trajectory) is digitally represented in a discrete-time system. It 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 gait lands on the heel of the supporting leg side foot 22 and then kicks with the toe of the supporting leg side foot 22 and jumps up into the air. Foot 2 2 Land on the heel. Therefore, the target ZMP trajectory during the one-leg support period is, as shown in the upper diagram of FIG. 7, with 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 2. 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. 7. .
  • 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 floor reaction force vertical component is 0, that is, in the mid-air period, the entire center of gravity of the mouth port 1 performs a free fall motion, and the change in angular momentum around the entire body weight center is zero.
  • the target ZMP Since the resultant moment of the gravitational and inertial forces acting on 1 is 0, the target ZMP is undefined. In other words, any point on the floor satisfies the ZMP condition of “the point of action where the horizontal component of the moment at which the resultant force of gravity and inertial force acts is zero”. In other words, even if you set a target ZMP at any point, The dynamic equilibrium condition that the horizontal component of the moment in which the resultant force acts around the target Z MP is zero is satisfied. Therefore, the target ZMP may be set to be discontinuous. For example, in the aerial period, 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 the shape shown in FIG.
  • the position of the target ZMP orbit in the X-axis direction during the aerial period is the foot on the supporting leg side until the next landing of the free leg side leg 2. It was designed to continuously move from the toe of 22 to the landing position of the heel of the foot 22 on the swing leg side.
  • the target Z MP orbital position in the aerial period in the Y-axis direction is the center of the ankle joint of the supporting leg side leg 2 before the landing of the next swing leg side leg 2.
  • the robot is continuously moved from the Y-axis direction position to the Y-axis position at the center of the ankle joint of the free leg side leg 2. 'That is, the target ZMP trajectory was continuous (substantially continuous) for the entire period of the gait. Then, as described later, the desired gait is generated such that the moment of the resultant of the gravity and the inertial force around the target ZMP (excluding the vertical component) becomes zero (more specifically, Adjust the target body position / posture trajectory). In consideration of the approximation error of the model, it is desirable to keep the target ZMP trajectory continuous (substantially continuous) even in the aerial period in order to make the generated gait smooth.
  • the horizontal component of the moment around the target ZMP is a certain value (the value is 0 in the first reference example) regardless of the position of the target ZMP.
  • the target ZMP it is not always necessary to keep the target ZMP continuous because a target gait such as that described below can be uniquely generated.
  • 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 supporting 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 requirement (a device such as an action planning unit for the gait generator 100 or a request from the outside (the joystick 73 or the like)). It is a force.
  • the target body posture (hereinafter, when the “reference” is not attached, indicates the target body posture) is generated so as to follow or match the reference body posture in the long term.
  • 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 WO / 02/40224 does not describe the concept of the reference body posture
  • the target body posture pattern was given explicitly and preferentially. This is the same as having the same target body posture.
  • 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 target body posture is intentionally shifted from the reference body posture as necessary. More specifically, by generating the motion modes described below in combination, the horizontal component of the floor reaction force and the vertical component of the floor reaction force of the target gait fall within the allowable range (or within the friction limit). The kinetic equilibrium condition was satisfied while existing.
  • the perturbation of the body horizontal acceleration does not perturb the floor reaction force vertical component that dynamically balances the resultant force of the inertial force of the robot 1 and the gravitational force generated by the perturbation (the mouth port 1 Percent the floor reaction force moment horizontal component around the target ZMP (horizontal axis component) and the floor reaction force horizontal component (without perturbing the vertical acceleration).
  • the motion mode that perturbs the horizontal acceleration of the robot 1 in this way is called the body translation mode.
  • a motion that changes the floor reaction camouflage horizontal component and the floor reaction force horizontal component around the target ZMP without changing the floor reaction force vertical component is called a body translation mode.
  • the vertical component of the floor reaction force moment (the component around the vertical axis) is also perturbed, but we do not focus on this point here.
  • upper body tilt mode a motion that changes the floor reaction camoment horizontal component around the target ZMP without changing the floor reaction force vertical component and the floor reaction force horizontal component.
  • the body motion that changes the floor reaction force moment vertical component around the target ZMP is increased. This is called the single rotation mode.
  • the upper body 3 was rotated so that the hand positions of the arms 5 and 5 did not change from the supporting leg coordinate system (the coordinate system fixed to the floor).
  • the motion of rotating the arm 5 together with the upper body 3 without changing the relative position and orientation of the arm 5 with respect to the upper body 3 may be defined as the upper body rotation mode.
  • the equation of motion described later needs to be changed slightly.
  • Figs. 11 (a) and (b) when the tips of both arms 5 and 5 are perturbed back and forth from each other in the exercise state with the mouth pot 1, the entire robot 1 is obtained.
  • the center of gravity does not perturb, but the vertical component of angular momentum around the entire center of gravity perturbs.
  • this motion mode is referred to as an anti-phase arm swing mode.
  • the arm swing motion mode that perturbs the floor reaction camoment 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 is reversed. This is called a phase arm swing mode.
  • the change in the vertical component of the floor reaction force moment per unit angular acceleration in the antiphase arm swing mode is ⁇ & ⁇
  • the change in the floor reaction force horizontal component per unit angular acceleration is ⁇ Fa.
  • AFa is zero.
  • the right arm 5R is accelerated forward and the left arm 5L is accelerated backward (angular acceleration) (shaking with 3a> 0).
  • the floor reaction force moment vertical component Maz acts in the direction of the arrow shown in (a) (positive direction of the vertical axis).
  • the dynamic model of the robot 1 used in the first reference example will be described.
  • a simplified (approximate) dynamic model shown below is used.
  • the dynamic model shown below is a kinematics model (a model that represents the structure and dimensions of joints and links, in other words, a model that represents the relationship between joint displacement and the position and orientation of links.) Is also necessary. '
  • FIG. 12 is a dynamic model of the robot 1 used in the first reference example. As shown in the figure, this dynamic model is composed of two masses 2 m and 2 m corresponding to each leg 2 of the robot 1 and a mass 3 m corresponding to the upper body 3, respectively, for a total of three masses.
  • This model is composed of four flywheels FHx, FHy, FHbz, and FHaz with inertia and no mass.
  • the flywheels F Hx, F Hy, F Hbz, and F Haz rotate around the X axis (front-back axis), Y axis (left-right axis), Z axis (vertical axis), and Z axis (vertical axis), respectively. It is possible.
  • the dynamics of Hbz) and the dynamics of the arms 5 and 5 are configured to be mutually incoherent, and the dynamics of the entire robot 1 are represented by their linear combination. Is done.
  • the relationship between the motion of upper body 3 and the floor reaction force is also Relationship between translational motion of body 3 (upper body translation mode) and floor reaction force, relationship between tilt motion of upper body 3 (upper body tilt mode) and floor reaction force, upper rotation of upper body 3 (upper rotation) It is separated into the relationship between the body rotation mode) and the floor reaction force, and the relationship between the anti-phase arm swing motion of both arms 5,5 (anti-phase arm swing mode) and the floor reaction force.
  • the floor reaction force generated by the horizontal motion of the body mass point 3 m corresponds to the floor reaction force generated by the horizontal translational motion of the body 3 (body translation mode), and the flywheel FH x
  • the floor reaction force generated by the rotational motion of F Hy and F Hy corresponds to the floor reaction force generated by the rotational motion of the upper body 3 at the tilt angle (upper body tilt mode).
  • the rotation of the flywheel FH x corresponds to the rotation of the body 3 in the roll direction (about the X axis), and the rotation of the flywheel FH y is the pitch of the body 3 It corresponds to the rotational movement in the direction (around the Y axis).
  • the floor reaction force generated by the rotational movement of the flywheel FH bz corresponds to the floor reaction force generated by the one-rotational movement of the upper body 3 (the upper-body one-rotation mode).
  • the floor reaction force generated by the rotational movement of the flywheel FH az corresponds to the floor reaction force generated by anti-phase arm swing (anti-phase arm swing mode).
  • the mass of the arm of mouth port 1 is assumed to be included in the upper body 3, and the upper body mass 3 m has the mass including the mass of the arms 5 and 5.
  • Each mass point 2 m, 2 m, 3 m 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.
  • Z swg Free leg mass point vertical position
  • Z b Vertical position of upper body mass point (The body vertical position is generally true.)
  • Z Gtotal Vertical position of all body weight centers
  • Body mass point X position (The body mass position is the point offset from the point Pr by a predetermined distance in the forward and backward direction of the body. The offset is the exact model position when the model is upright. (The center of gravity and the center of gravity of the dynamic model are determined so as to match each other. The horizontal position of the body is generally different.)
  • J bz Moment of inertia about the vertical axis (in the body rotation mode) Is the equivalent inertia moment. It does not generally match the inertia moment of the upper three parts of the actual mouth pot 1. )
  • J az Moment of inertia around the vertical axis of arm swing (This is the equivalent inertia moment in antiphase arm swing for spin cancellation, that is, the inertia moment of FHz.)
  • Fx Floor reaction force X component (Specifically, the longitudinal direction (X axis) component of the translational floor reaction force)
  • Fy Floor reaction force ⁇ component (Specifically, the horizontal direction (Y axis) component of the translational floor reaction force)
  • Fz Floor reaction Force vertical component (Specifically, the vertical (Z-axis) component of the translational floor reaction force. In the first reference example, this is equal to the target translational floor reaction force vertical component.
  • Mx Floor reaction force moment X around target ZMP (Details of floor reaction camo — component around the longitudinal axis (X axis))
  • Mz Z component of the floor reaction force moment around the target ZMP (specifically, the component around the vertical axis (Z axis) of the floor reaction camoment)
  • each mass point 2 m and 3 m mean the position in the front-back direction (X-axis direction) and the position in the left-right direction (Y-axis direction).
  • X-axis direction front-back direction
  • Y-axis direction left-right direction
  • the positional relationship between the position of the mass point 2 m of each leg 2 and the position of the foot 22 of the leg 2 is described. Is determined in advance, and if one position is determined, the other position is uniquely determined.
  • the positional relationship between the body mass point 3 m and the position of the body 3 is determined by the posture angle of the body 3 (hereinafter, the posture angle Means the angle of inclination and the angle of the angle.) It is assumed that if one position and the attitude angle are determined, the other position is uniquely determined. I have.
  • dX / dt represents the first derivative of X
  • d2X / dt2 represents the second derivative of X. Therefore, if the variable X is a displacement, dX / dt means velocity and d2X / dt2 means acceleration. g indicates the gravitational acceleration constant. Here, g is a positive value.
  • Equation 01 Equation 02x, Equation 02y, Equation 03x, Equation 03y, and Equation 03z.
  • F z mb * (g + d2Zb / dt2) + msup * (g + d2Zsup / dt2)
  • Y Gtotal (mb * Yb + msup * Ysup + mswg * Yswg) mtotal
  • the AFp is the perturbation amount of Fx or Fy when d2Xb / dt2 or d2Yb / dt2 is perturbed by a unit amount in the expression 0 2X or the expression 0y, and is thus obtained by the following expression.
  • is the perturbation amount of My or Mx when d2Xb / dt2 or d2Yb / dt2 is perturbed by a unit amount in Expression 03y or Expression03X, it is obtained by the following expression.
  • the change ⁇ Mp of the floor reaction force moment horizontal component per unit acceleration in each horizontal axis (X-axis, Y-axis) direction of the upper body translation mode is expressed by the upper body mass mass of the above dynamics model, It is obtained by multiplying the height (vertical position) from the target ZMP at the point 3 m.
  • the relationship between the position of the upper body mass 3m and the target Z MP and the movement of the upper body mass 3m is as follows: the upper body mass 3m is the inverted pendulum mass, the target Z
  • the AFr is a perturbation amount of Fx or Fy when d20by / dt2 is perturbed by a unit amount in Expression 02X or Expression 02y, it can be obtained by the following expression.
  • the change AFr of the floor reaction force horizontal component per unit acceleration in each horizontal axis (X-axis, Y-axis) in the body tilt mode is zero.
  • ⁇ M r is the perturbation amount of Mx or My when d2 ⁇ bx / dt2 or d2 ⁇ by / dt2 is perturbed by a unit amount in Equation 0 3 X or Equation 0 3 y.
  • a Mbz is the perturbation amount of Mz when d20bz / dt2 is perturbed by a unit amount in Expression 03z, and is obtained by the following expression.
  • the change A Mbz of the floor reaction force moment component per unit acceleration of the upper body rotation mode corresponds to the moment of inertia of the flywheel F Hbz corresponding to one rotation of the upper body.
  • 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 FHiiz corresponding to arm swing.
  • the gait generator 100 in the first reference example is a target gait for one step from when one leg 2 of the mouth pot 1 lands to when the other leg 2 lands (see above).
  • the target gait for one step is generated in order with the target gait in a narrow sense) as a unit. Therefore, in the running gait of FIG. 5 generated in the first reference example, the target gait starts at the start of the one-leg support period and ends at the end of the aerial period (the start of the next one-leg support period).
  • the desired gaits up to the hour) are generated in order.
  • the target gait to be newly generated is called “this time gait”, the next target gait is called “next gait”, and the next target gait is called “next next time gait”. Call it.
  • the target gait generated just before the current gait is called the previous gait.
  • the gait generator 100 when the gait generator 100 newly generates the current time's gait, the gait generator 100 lands the foot 22 on the swing leg up to two steps ahead of the mouth port 1.
  • the required values (requests) of the planned position and orientation and the scheduled landing time are input as required parameters for the gait (or the gait generator 100 reads the required parameters from the storage device).
  • the gait generator 100 uses these required parameters to calculate the desired body position / posture trajectory, the desired foot position / posture trajectory, the desired ZMP trajectory, the desired floor reaction force vertical component trajectory, and the desired arm posture. Generate trajectories, etc. At this time, part of the gait parameters that define these trajectories is appropriately modified so as to ensure continuity of walking.
  • FIG. 13 is a flowchart (structured flowchart) showing a main routine of a gait generation process executed by the gait generator 100.
  • various initialization operations such as initializing the time t to 0 in S 0 10 are performed. This process is performed when the gait generator 100 is activated. Then, the process proceeds to S014 via S012, and the gait generator 100 waits for an interruption at each control cycle (the operation cycle of the flowchart of FIG. 13). .
  • the control cycle is ⁇ 1 :.
  • the process proceeds to SO 16, where it is determined whether or not the gait is a switch. If the gait is a switch, the process proceeds to S 0 18, and if not, the SO 30 is a switch. Proceed to.
  • the above-mentioned “gait switching point” means the timing at which the generation of the previous time's gait is completed and the generation of the current time's gait is started. The control cycle becomes the gait switching point.
  • the next time gait support leg coordinate system, the next time gait support leg coordinate system, the current time gait cycle and the next time The gait cycle is read.
  • These support leg coordinate system and gait cycle Is determined by the request parameter.
  • the required parameter given to the gait generator 100 from the joystick 73 or the like is the expected landing position / posture of the free leg side foot 2 2 up to two steps ahead ( After the foot 22 has landed, the foot position and posture when the foot is rotated without slipping so that the sole touches the floor surface almost entirely), and the required values for the scheduled landing time are included.
  • the request value of the first step and the request value of the second step correspond to the current time's gait and the next time's gait, respectively, at the start of generation of the current time's gait. Eye) This was previously given to the gait generator 100. These required values can be changed even during the generation of the current time's gait.
  • the gait supporting leg corresponds to the required value of the landing expected position and posture of the first leg on the free leg side 2 2 (the free leg side foot 2 2 in the current time's gait) in the above required parameter.
  • the coordinate system is determined. 1
  • the required value of the landing position / posture of the free leg side foot 2 2 (22 L in the figure) relating to the current time's gait (the first step) is determined by the support leg side of the current time's gait.
  • the X-axis direction of the gait support leg coordinate system (the front-rear direction of the support leg-side foot 22R of the current gait) and the Y axis In the direction (left and right direction of the support leg side 22R of the gait this time)
  • it is moved by xnext and ynext respectively, 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 point at which the perpendicular extending from the center of the ankle of the supporting leg side leg 2 to the floor intersects with the floor surface in a state where the surface is in contact (close contact) with the floor surface this point is the point in the example of the first reference example).
  • the horizontal plane passing through the origin is the XY plane.
  • One bar It is a reference system (a coordinate system fixed to the floor).
  • the X-axis direction and the Y-axis direction are the front-rear direction and the left-right direction of the support leg side foot 22, respectively.
  • the origin of the supporting leg coordinate system is not necessarily the representative point of the foot 2 when the entire bottom surface of the supporting leg side foot 22 is in contact with the floor (representing the position of the foot 22). It does not need to match the point, and it may be set to a point on the floor different from the representative point.
  • the next time's gait support leg coordinate system is, as shown in the figure, when the foot 22 is landed in accordance with the required value of the scheduled landing position / posture of the free leg side 22 L of the current time's gait.
  • the representative point (more specifically, the point on the floor that matches the representative point) is set as the origin, and the front and rear and left and right directions of the foot 22 L in the horizontal plane passing through the origin are respectively defined as the X'-axis direction and the Y'-axis. It is a coordinate system with directions.
  • 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).
  • the next time's gait cycle is the estimated landing time of the first leg on the free leg side 22 (required value) from the scheduled landing time of the first leg on the free leg side 22 (required value). (Required value).
  • the required parameter is input to the gait generator 100 by a required operation of the joystick 73.
  • 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 from a control device such as the joystay tag 73 and the movement history of the mouth port 1 up to that time, The next and next gait support leg coordinate systems, and the current and next gait cycles may be determined.
  • the gait generator 100 determines the gait parameters of a normal turning gait as a virtual periodic gait following the current time's gait.
  • the gait parameters include a foot trajectory parameter defining a desired foot position / posture trajectory in a normal turning gait, a reference body posture trajectory parameter defining a reference body posture trajectory, and a reference arm posture trajectory. Including the reference arm posture trajectory that defines the parameter, the target ZMP trajectory parameter, the ZMP trajectory parameter, and the desired floor reaction force vertical component trajectory parameter.
  • parameters defining the allowable range of the floor reaction force horizontal component and the allowable range of the floor reaction force moment vertical component are also included in the gait parameters.
  • the “steady turning gait” refers to the motion state of the robot 1 at the boundary of the gait (the boundary of the gait for each step in the first reference example) when the gait is repeated. It is used to mean a periodic gait that does not cause discontinuity in the foot position / posture, body position / posture, etc.).
  • “normal gait” may be abbreviated as “normal gait”.
  • the normal turning gait which is a cyclic gait
  • the normal turning gait is a gait for two steps of robot 1, that is, a first turning gait following the current gait and a gait following the first turning gait.
  • a gait composed of the second turning gait is a gait for one cycle of the normal turning gait, and the gait for the one cycle is repeated.
  • the term “turn” is used here because when the turn rate is zero, it means straight ahead, and straight turn can be included in the turn in a broad sense. If the target gait to be generated is the running gait shown in FIG. 5, the current time gait of the target gait is a running gait having a one-leg support period and an aerial period.
  • Both the first turning gait and the second turning gait are gaits having a one-leg support period and an aerial period, similarly to the current time gait. That is, the first turning gait and the The basic form of the two-turn gait is the same as the current time gait.
  • one cycle of the normal turning gait requires at least two gaits in the narrow sense described above. It is also possible to set a complex stationary turning gait in which gaits of three or more steps are gaits for one cycle.
  • the normal turning gait is used only to determine the divergent component (details will be described later) at the end (end time) of the current time's gait, as described later. For this reason, using a normal turning gait with a gait of three or more steps as one cycle has little effect despite the complicated gait generation processing. Therefore, the gait for one cycle of the normal turning gait in the first reference example is composed of two gaits (first and second turning gaits).
  • a normal turning gait composed of a plurality of gaits in a narrow sense is regarded as one gait.
  • the normal turning gait is tentatively determined by the gait generator 100 to determine the motion state of the robot 1 such as the divergent component at the end of the current time's gait, the body vertical position velocity, the body posture angle, and 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 of the supporting leg side is set to the ground surface). It is a numerical value indicating how far away from the global coordinate system (the origin of the support leg coordinate system) is.
  • 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, is infinite in principle Even if it is the initial divergent component of the gait that does not diverge even if it is repeated several times (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, the initial The divergent component also changes. That is, the appropriate divergent component changes depending on the form of gait such as walking or running.
  • a normal gait following the current gait to be generated is set according to the required parameters related to the current gait, and an initial divergent component of the normal gait is obtained. From this, the current gait is generated so that the terminal divergent component of the current gait matches the initial divergent component of the normal gait (more generally, the current gait is made continuous or close to the normal gait).
  • Basic guidelines for gait generation such as this have been proposed earlier by the applicant.
  • the first reference example of the present invention does not use a linear three-mass dynamic model as used in the first embodiment of PCT Publication WOZ02 40224, the divergence component and the convergence component defined by the following equations are used.
  • the concept can be applied with sufficient accuracy to the perturbation of the behavior of a nonlinear dynamic model such as the model shown in Fig. 12.
  • Divergent component body mass point horizontal position + body mass point horizontal velocity ⁇ ⁇ ⁇
  • Equation 1 1 Equation 1 1 where the horizontal position of the upper body mass represents the horizontal position Xb of the upper body mass in the dynamic model shown in FIG.
  • ⁇ 0 and ⁇ ⁇ ′ are certain predetermined values. These ⁇ 0, ⁇ ⁇ 'values are They are almost the same, but do not exactly match. Then, during running, it is necessary to slightly change the value at the time of generating the walking gait of PCT Publication WOZ02Z 40224.
  • a gait parameter that defines a desired floor reaction force vertical component trajectory is set, and the desired floor reaction force is set.
  • the vertical position of the overall center of gravity of the mouth port 1 is determined so that the vertical component is dynamically satisfied.
  • the second-order integral value of the floor reaction force vertical component determines the vertical position of the overall center of gravity of the lopot 1, so if the target floor reaction force vertical component is set incorrectly, the total weight of the mouth port 1 will be The vertical position or body vertical position is too high or too low. Therefore, how to set the desired floor reaction force vertical component is an important issue.
  • the section can be applied to a method of determining a desired floor reaction force vertical component for making the body vertical position velocity appropriate with a slight change.
  • the foot trajectory parameter of the normal gait is changed 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. It is determined.
  • a specific setting method will be described below 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 fixed flat 22 of the leg 2 on the free leg side is referred to as a free leg foot.
  • the “initial” and “end” of the gait are the start time and end of the gait, respectively. Time or instantaneous gait at those times.
  • the parameters of the foot trajectory are the positions and postures 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.
  • 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.
  • the support leg foot 22 at the end of the gait this time is moving into the air.
  • the next gait end which is determined according to the gait support leg coordinate system, the foot position / posture trajectory leading to the free leg foot position / posture (specifically, the trajectory viewed from the next time gait support leg coordinate system) Is obtained by using the finite time settling filter.
  • the position and orientation of the foot at the time of the movement are determined so as to match the position and orientation of the next-time gait support 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.
  • this step The gait end free leg foot position / posture is the same as in the case of the next time gait end free leg foot position / posture, the next step gait support leg coordinate system or the first step of the required parameter corresponding thereto (
  • the gait is determined according to the required value of the expected landing position and posture of the free leg.
  • the foot position and posture of this time's gait end free leg foot are changed from that position and posture by rotating the foot 22 so as to lower the toe while keeping the foot 22 in contact with the ground.
  • the representative point of the foot when almost the entire bottom surface is brought into contact with the floor surface is determined so as to coincide with the origin of the next time's gait support leg coordinate system.
  • the first turning gait end free leg foot position / posture is calculated in the same way as the method for determining the current gait end free leg foot position / posture and the next time gait end free leg foot position / posture. Is determined based on the position and orientation of the next-time gait support leg coordinate system viewed from the user. More specifically, the foot position and posture of the first swing gait end free leg foot are set at a predetermined angle from the position to the horizontal position so that the foot 22 does not slip while the foot 22 is grounded. The foot position and orientation when rotated are set to match the position and orientation of the next-time gait support leg coordinate system viewed from the next-time gait support leg coordinate system.
  • the supporting leg foot 22 is off the floor and in the air.
  • the first turning gait support leg foot landing scheduled position / posture is set.
  • 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 obtained 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 supporting leg foot landing scheduled position / posture are converted to the finite time setting filter until the end of the first turning gait. It is obtained by generating using
  • the second swing 'gait initial free leg foot position / posture is the first turning gait end support leg foot position / posture viewed from the next-time gait support leg coordinate system.
  • the initial support leg foot position / posture of the second turning gait is the first turning gait end free leg foot position / posture viewed from the next-time gait support leg coordinate system.
  • the second turning gait end free leg foot position / posture is the current gait end free leg foot position / posture viewed from the gait support leg coordinate system.
  • the second turning gait end support leg foot position / posture is the current gait end support leg foot position / posture viewed from the gait support leg coordinate system.
  • the gait cycle of the first turning gait and the second turning gait is set to be the same as the next time gait cycle.
  • the gait cycles of the first turning gait and the second turning gait are not necessarily required to be the same as each other, but any cycle is determined at least according to the next gait cycle. Is preferred.
  • the motion parameters other than the above (including time parameters such as the two-leg support period) of the current time gait, the first turning gait, and the second turning gait are determined according to the parameters determined above. Decide appropriately so as to satisfy the following conditions (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 defining a reference body posture trajectory to be followed by the target body posture can be determined.
  • the reference body posture is the beginning of the normal gait (the beginning of the first turning gait) and the end (the end of the second turning 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 of the reference body posture at the beginning and end of the normal gait match.
  • the posture related to the inclination angle (the inclination angle with respect to the vertical direction) of the reference body posture is set to the upright posture (vertical posture) for easy understanding.
  • a single angular trajectory (hereinafter also referred to as a standard single angular trajectory) 0 bz may be, for example, a constant angular velocity (average turning speed in a normal gait).
  • a sine wave may be used as shown in the example of the reference inversion arm swing trajectory described later (FIG. 18).
  • the reference angle and its angular velocity are set to be continuous.
  • the unilateral trajectory of the target body posture (hereinafter also referred to as the target unilateral trajectory) is made to coincide with the reference unilateral trajectory.
  • the process proceeds to S104, and the reference arm posture trajectory parameters are determined. Specifically, the position of the center of gravity of the arms 5 and 5 as a whole (the position of the center of gravity relative to the upper body 3), the distance between the right and left hands (tips of the arms 5 and 5) in the horizontal direction, The parameters related to the antiphase arm swing angle are determined.
  • the reference anti-phase arm swing angle may be set as shown in FIG. 18 when, for example, turning left as shown in FIG. As shown in Fig.
  • the reference antiphase arm swing angle S azref is the antiphase 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 antiphase arm swing of the first turning gait
  • the angular velocity matches the terminal antiphase arm swing angular velocity of the second turning gait, and the terminal antiphase arm swing angle of the second turning gait is the turning angle of the normal gait (the first turning gait and the second turning gait).
  • the sum of the gait's turning angles) and the initial antiphase arm swing angle of the first turning gait is set to this value.
  • 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 position of the center of gravity (the relative position with respect to the upper body 3) of the entire arms 5 in the target arm posture is set so as to be kept constant with respect to the upper body 3.
  • the floor reaction force vertical component trajectory parameters are set.
  • the floor reaction force vertical component trajectory defined by the parameter is substantially continuous as shown in FIG. 6 in both the first turning gait and the second turning gait.
  • Floor reaction force vertical component trajectory parameters are set so that 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. You. The time at the break point of this pattern and the height (peak value) of the trapezoid are set as floor reaction force vertical component trajectory parameters.
  • the gait of the floor reaction force vertical component (the normal gait for the total period of both the first turning gait and the second turning gait)
  • the average value in the period of one cycle is matched with the weight of the robot.
  • 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 condition of a normal gait is defined by the support leg coordinate system (support Initial state of all state variables of the gait (position, posture, speed, etc. of each part of robot 1) viewed from the foot system of the leg side foot 2 2
  • the initial state of the gait) and the end state of the gait (the end state of the second turning gait) viewed from the next supporting leg coordinate system (the next supporting leg coordinate system of the first turning gait) must match.
  • this condition is sometimes referred to as a boundary condition of a normal gait).
  • the difference between the overall center-of-gravity vertical speed of the mouth port 1 at the end of the normal gait and the overall center-of-gravity vertical speed at the beginning of the normal gait (specifically, the total center-of-gravity vertical speed at the end of the second gait and the first
  • the difference from the vertical velocity of the entire center of gravity at the beginning of a turning gait) must also be zero. Since the above difference is the integral of the difference between the floor reaction force vertical component and gravity (first-order integration value), in order to make the difference zero, it is necessary to set the floor reaction force vertical component trajectory as described above. 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 vertical component of the floor reaction force vertical component in each of the first turning gait and the second turning gait matched the robot 1's own weight. The height of the trapezoid is determined by solving the equation that represents the above-mentioned average value and the condition for matching the own weight as unknowns.)
  • each turning gait may be adjusted to correct the height of the trapezoid of the orbit, etc. from the state where the weight and the own weight are matched.
  • the allowable range of the floor reaction force horizontal component [Fxmin, Fxmax] (more specifically, Is set as shown in Fig. 20.
  • the negative line in Fig. 20 indicates the floor reaction force horizontal component allowable lower limit Fxmin, and the positive line indicates the floor reaction force horizontal component allowable upper limit Fxmax.
  • the floor reaction force horizontal component is generated by the friction between the floor and the foot 22, but not all friction can be generated, and there is a limit. Therefore, in order not to slip when the actual lopot 1 moves according to the generated desired gait, the floor reaction force horizontal component of the desired gait must always be within the friction limit.
  • 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. I decided to generate it. Assuming the coefficient of friction between the floor and the foot 2 2, Fxmin must always be set equal to or more than one * floor reaction force vertical component, and Fxmax must be set equal to or less than * floor reaction force vertical component.
  • the simplest setting method is the following formula. Where ka is a positive constant smaller than 1.
  • the floor reaction force horizontal component allowable range in FIG. 20 is an example set in accordance with Equation 12.
  • the value and time at the break point such as the trapezoidal waveform in Fig. 20 may be set.
  • the value of (ka * in Equation 12 may be simply set as a parameter.
  • 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 robot 1 moves according to the generated target gait, the floor reaction force moment vertical component of the eyes and gait must always be within the friction limit. Must. 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.
  • the coefficient of friction between the floor and the foot 22 is ⁇ , and the effective radius of the contact surface between the floor and the foot 22 for generating the moment vertical component (or the effective radius between the floor and the foot 22).
  • r is the square root of the second moment of area around the target ZMP of the contact surface
  • Mzmin must always be set to be equal to or more than one * r * floor reaction force vertical component
  • Mzmax must be set to * r * floor reaction force vertical component or less.
  • the simplest setting method is the following formula. Where ka is less than 1 This is a positive constant.
  • the allowable range of the floor reaction force moment vertical component in Fig. 21 is an example set according to the equation 1 0 12.
  • the value and time at the break point such as the trapezoidal waveform in Fig. 21 may be set as a parameter that defines the allowable range of the vertical component of the floor anti-camo.
  • the value of (ka * in Equation 101 may be simply set as a parameter.
  • R is calculated from the target ZMP and the contact surface at each moment. Good, but can be a constant.
  • a ZMP trajectory parameter that defines a ZMP trajectory of a normal gait combining the first turning gait and the second turning gait is set.
  • the target ZMP trajectory is set so as to have a high stability margin and not to change abruptly as described above.
  • the target ZMP must be within the ground contact. Therefore, in the first reference example, the position of the target ZMP in the X-axis direction of each of the first turning gait and the second turning gait of the normal gait is, as shown in the upper diagram of FIG.
  • the foot 22 With the heel of the support leg foot 22 as an initial position, the foot 22 is set so as to remain at that position until almost the entire bottom surface of the foot 22 is in contact with the ground.
  • the target ZMP moves to the center of the support leg foot 22 and moves to the toe until the foot 22 comes into contact with the toe, and then the support leg foot 22 until the floor lifts. It is set to stay in Masaki.
  • the target ZMP is from the toe of the supporting leg foot 22 to the landing position of the heel of the free leg foot 22 by the time the next swing leg foot 22 reaches. It is set to move continuously.
  • the target ZMP trajectory (trajectory in the X-axis direction) of the normal gait consisting of the first turning gait and the second turning gait is as shown in FIG.
  • the time and position of the break point of the target ZMP trajectory are set as 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 parameters, and the position of the turning point is determined by the next gait.
  • the position and orientation of the support leg coordinate system and the next-time gait support leg coordinate system, or the required values for the required parameters that specify these coordinate systems, are the required values for the first and second steps on the free leg side scheduled landing position and orientation. It is set according to.
  • the position of the ZMP trajectory in the Y-axis direction is set in the same manner as that shown in the lower diagram of FIG. More specifically, the trajectory of the target ZMP in the Y-axis direction in the first turning gait is set in the same pattern as that shown in the lower diagram of FIG. 7, and the Y-axis position of the target ZMP in the second turning gait The trajectory is set to the trajectory of the same shape as that of the first turning gait, which is connected to the end of the trajectory.
  • the initial time, end time, and period of one step (one cycle) of the normal gait are redefined as follows.
  • a normal gait must be a gait in which the state variables at the beginning and end are continuously connected.
  • the initial gait of the normal gait is not determined until the normal gait is determined.
  • End and period are defined as shown in Figure 19 for convenience. That is, the time at which the floor reaction force vertical component decreases to some extent in the latter half of the one-leg support period of the first turning gait is set as the initial time Ts of the normal gait.
  • the initial time Ts is, as shown in Fig.
  • the moment when the bottom surface of the support leg foot 22 is almost grounded, and the time immediately before the moment when it changes to toe grounding (the sole foot grounding period in Fig. 7). It is desirable to set it to the end time of or immediately before.
  • the relationship between the target ZMP set at S110 and the time Ts shown in FIG. 22 (or FIG. 7) and the time Ts is as follows. In the first turning gait, almost the entire bottom surface of the support leg foot 22 is in contact with the ground. After that, it is desirable that the moment when the target ZMP moves to the center of the support leg foot 22 and completes the movement to the toe before the toe touches the ground, is the time Ts.
  • Such an initial time Ts is set according to, for example, the previously set target ZMP trajectory parameters. The reason for setting the initial time Ts as described above will be described later.
  • the cycle Tcyc of the normal gait is the sum of the gait cycles of the first turning gait and the second turning gait. Let Te be the end time of the normal gait.
  • Te is set to the time obtained by adding Tcyc to Ts.
  • the definitions of the gait's initial and final gaits are replaced with the definition of the gait in the narrow sense described above. I will return it.
  • the initial time time at the time of landing of the foot 22 on the supporting leg side
  • the initial time Ts used until the gait is determined is distinguished from the original initial time 0 using the reference symbol Ts (sometimes abbreviated as “Ts”).
  • the body posture angle and antiphase arm swing angle should be continuous at the boundary of the gait.
  • the initial body posture angular velocity of the normal gait must match the terminal body posture angular velocity, 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 in contact with the ground or immediately thereafter. The same applies to time Tm2.
  • the time Ts2 is desirably set at or immediately before or immediately before the state where almost the entire bottom surface of the foot 22 is grounded to the toe grounding, similarly to the initial time Ts.
  • 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 the leg foot 22 as an initial position, the foot 22 remains at that position until almost the entire bottom surface thereof touches the ground, and then the moment when it begins to move to the center of the support leg foot 22 is time Tm. It is desirable to do. After that, it is desirable that the moment when the target ZMP completes the 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 when the foot 22 begins to move to the center of the foot 22 be time Tm2.
  • the reason for setting as described above will be described later.
  • the period for restoring (adjusting) the body posture angle and the period for restoring (adjusting) the antiphase arm swing angle may be set separately.
  • the process proceeds to S024, where the initial state of the normal gait is calculated.
  • the initial state calculated here is the initial body horizontal position velocity of the normal gait (the initial body position and the initial body velocity in the horizontal direction), and the initial body vertical position velocity (the 'initial state in the vertical direction).
  • the calculation of this initial state is performed exploratively according to the flowchart of FIG.
  • the target foot position is determined based on the gait parameters of the normal gait (parameters set at S 0 22 in FIG. 13).
  • the initial state (state at the initial time Ts) of the posture, the target arm posture, and the target body posture angle (tilt angle and angle) is determined.
  • the state represents the position or attitude angle and its rate of change (time derivative).
  • the initial state of the target foot position / posture on the supporting leg side is calculated based on the first turning gait initial supporting leg foot position / posture of the foot trajectory parameter determined in S100 in FIG.
  • the initial state of the posture is the foot posture posture trajectory from the current gait initial support leg foot position and posture viewed from the next time gait support leg coordinate system to the first turning gait end free leg foot position and posture. It is determined by generating a finite time settling time 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.
  • the position of the center of gravity of the both arms 5 and 5 in the target arm posture (relative position with respect to the upper body 3), the distance between the left and right hands (tips of the both arms 5 and 5) in the left and right direction and reverse Phase swing angle and angular velocity are determined.
  • the antiphase arm swing angle and angular velocity are corrected so that they continue at the boundary of the gait when the normal gait is repeated, as described later, so here they are only temporarily determined.
  • the initial state of the desired body posture angle is the reference body posture (tilt angle and angle) at time Ts determined by the reference body posture trajectory parameters determined in S102 in Fig. 15.
  • the angular velocity is determined as the initial state of the desired body posture angle.
  • the initial state of the inclination angle (the inclination angle and its angular velocity) in the target body posture is 0. It is.
  • the target foot position / posture trajectory, floor reaction force vertical component trajectory, and target ZMP trajectory of the normal gait are respectively the foot trajectory parameters determined by the flowchart in FIG.
  • the floor reaction force vertical component orbit parameters are determined independently from each other by the ZMP orbit parameters.
  • the instantaneous desired foot position / posture of the normal gait is determined according to the foot trajectory.parameter without depending on the instantaneous value of the floor reaction force vertical component.
  • Xs, Vxs the candidate body horizontal position velocity at the initial time Ts
  • Xs, Vxs the candidate body horizontal position velocity at the initial time Ts
  • Xs, Vxs the candidate body horizontal position velocity at the initial time Ts
  • Xs, Vxs the candidate body horizontal position velocity at the initial time Ts
  • Xs, Vxs the candidate body horizontal position velocity at the initial time Ts
  • Xs, Vxs Xs: horizontal position, Vxs: horizontal velocity
  • the candidate to be provisionally determined here may be arbitrarily set.
  • the body horizontal position / velocity in the initial state of the normal gait obtained when the previous gait was generated may be set as the provisionally determined candidate (X s, V xs).
  • the example of searching for the initial state of the 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 direction) and the Y direction (left-right direction).
  • 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 of FIG. 13 above, the target ZMP and the target floor reaction at each moment from the initial time Ts to the end time Te Force vertical component, target foot position / posture, reference body posture, target arm posture, floor reaction force horizontal component allowable range and floor reaction force moment lead The allowable range of the direct component is sequentially obtained. Then, the dynamic model (the model in Fig.
  • the body horizontal position velocity (X s, V xs) and the body vertical position velocity (Zs, V zs) are set to the initial state (time Ts) of the body 3 to determine the body position and posture sequentially. Generate a gait from time Ts to terminal 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 processing.
  • the initial time Ts is substituted for the provisional gait generation time k.
  • the body's horizontal position velocity includes the currently provisionally determined (X s, V xs) (determined in S 202 of FIG. 23 or S 211 or S 218 described later). Then, the latest (Zs, Vzs) obtained in S206 is substituted for the body vertical position velocity.
  • 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 antiphase arm swing angle includes the reference initial antiphase arm swing angle (the angle at the initial time Ts). Degree)
  • the reference initial antiphase arm swing angular velocity (angular velocity at initial time Ts) is substituted for the antiphase arm swing angular velocity.
  • S304 it is determined whether or not the provisional gait generation time k is before the gait end time (whether or not k ⁇ Ts + Tcyc). If the judgment result is YES, the process proceeds to a subroutine for determining an instantaneous gait of S306, and an instantaneous gait value is determined. Next, the processing of the gait generator 100 proceeds to S308, and after increasing the provisional gait generation time k only, returns to S304.
  • ⁇ ⁇ is an interval for generating a provisional gait, and usually may be set to coincide with the control cycle ⁇ t. Note that may be set longer than At in order to reduce the amount of computation if the dynamic accuracy of the provisional gait may be reduced.
  • the value at time k of the desired floor reaction force vertical component shown in FIG. 19 described above based on the normal gait parameters (floor reaction force vertical component trajectory parameters) This time) is required. Further, in S402, the value (current value) at the time k of the target ZMP trajectory shown in FIG. 22 is obtained based on the normal gait parameters (one time ZMP trajectory parameters). Then, the process proceeds to S404, and based on the normal gait parameters (foot trajectory parameters, reference body posture trajectory parameters, and arm posture trajectory parameters), the desired both foot position and posture (support The target (foot position and posture) of both the leg side and the free leg side), the values of the reference body posture and the reference arm posture (current values) are obtained.
  • the normal gait parameters foot trajectory parameters, reference body posture trajectory parameters, and arm posture trajectory parameters
  • 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 entire center of gravity of the mouth pot 1) is obtained. Therefore, the vertical acceleration of the center of gravity of all the weights can be obtained from the equation and the vertical component of the desired floor reaction force.
  • 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 can be 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.
  • the current value of the desired body horizontal acceleration and the desired body posture acceleration is determined so as to satisfy the following.
  • 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 floor reaction force moment vertical component Mz does not exceed [Mzmin, Mzmax].
  • one corner is determined to coincide with one of the reference body posture angles.
  • components other than the anti-phase arm swing angle are determined so as to match the reference arm posture.
  • the target body tilt angle and the target antiphase arm swing angle are determined so as to follow the reference body tilt angle and the reference antiphase arm swing angle as much as possible. Is done. The details are explained 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. It has been decided to match that. Therefore, if the remaining horizontal body position, body posture angle, and antiphase arm swing angle are determined, the target motion of robot 1 can be uniquely determined. Therefore, all floor reaction forces are also uniquely determined.
  • the desired floor reaction force vertical component and the desired ZMP of the normal gait are respectively the floor reaction force vertical component trajectory parameter and the desired ZMP trajectory parameter determined in S022 of FIG. Defined by
  • the upper body translation mode is not used much. Mainly by using the body tilt mode, if the target ZMP is satisfied (the horizontal component of the floor reaction force moment around the target ZMP is set to 0), the body posture angle may swing too much. . Therefore, to prevent this, the body translation mode should be used as much as possible.
  • the body translation mode involves a change in the floor reaction force horizontal component, if the floor reaction force horizontal component allowable range is narrow, there is a risk of slipping if the body translation mode is activated strongly. In this case, you have to rely on the upper body tilt mode. In particular, during a period in which the floor reaction force horizontal component allowable range is 0 as in the running gait, a gait that generates a floor reaction force horizontal component cannot be generated. I have to rely on.
  • the antiphase 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 floor reaction force moment vertical component from exceeding the floor reaction force moment vertical component allowable range.
  • the body horizontal acceleration, the body posture angular acceleration, and the antiphase arm swing acceleration are determined according to the flowchart shown in FIG.
  • the determination of the body horizontal acceleration and the body posture angular acceleration (angular acceleration of the tilt angle of the body 3) is based on the determination of the body horizontal acceleration in the X direction (front-back direction) on the sagittal plane.
  • the case where the body posture angular acceleration is determined will be described as an example.
  • the body horizontal acceleration and the body posture angular acceleration in the Y direction (lateral direction) are also determined in the same manner as the X direction.
  • the value of the reference body angle at time k is substituted for the desired body angle. 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 (value of the timer for creating a normal gait) k is Body posture angle ⁇ anti-phase arm swing angle restoration period (For a normal gait, the body posture angle ⁇ anti-phase arm swing angle restoration period is the time period from time Tm to time Ts2 and time Tm2 It is determined whether it is during the period. If the decision result in S 5 02 is NO, proceed to S 5 04, and if YES, proceed 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 the obtained values into the above equation 03 y and solving the equation of My equation 0 3 y with d2 0 by / dt2 as 0 for d2Xb / dt2, the upper body mass point is obtained.
  • the horizontal acceleration is calculated as the upper body horizontal acceleration a tmp.
  • a more precise dynamic model may be used to search for the body horizontal acceleration a.tmp that makes the horizontal component of floor anti-chamoment around the target ZMP zero.
  • the reference body posture regarding the inclination angle of the body 3 is a vertical posture
  • the body posture angular acceleration (angular acceleration of the inclination angle of the body 3) based on the reference body posture is 0. Therefore, the angular acceleration in the body tilt mode is set to 0, and the body horizontal acceleration atmp is now required.
  • 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
  • the angular acceleration in the body tilt mode is set to the value of the non-zero reference body posture angular acceleration
  • the body horizontal acceleration atmp is obtained using a dynamic model.
  • d20by / dt2 in Equation 03y is set to a non-zero reference body posture angular acceleration, and the body horizontal acceleration ⁇ 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 a tmp is obtained using a dynamic model.
  • Fxtmp is obtained by using the equation 02X of the dynamic model. That is, Fxtmp is obtained by the following equation (17).
  • d2Xsup / dt2 and d2XswgZdt2 represent the horizontal acceleration of the supporting leg foot and mass point and the free leg foot mass point acceleration at time k ', respectively.
  • Figure 27 shows an example of Fxtmp obtained in this way.
  • the portion where Fxtmp exceeds the floor reaction force horizontal component allowable range [Fxmin, Fxmax] is indicated by oblique lines.
  • the body horizontal acceleration in the body translation mode the floor reaction force horizontal component Fx generated by this, and the body angle acceleration 3 in the body tilt mode are determined as follows. (S508 to S516).
  • the body translation mode and the body angle acceleration ⁇ calculated above can be used.
  • the upper body horizontal acceleration in the upper body translation mode should be adjusted to a more rigorous dynamic model. It is better to determine analytically or exploratively using.
  • 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.
  • a pair with (angular acceleration) 3 may be searched for.
  • Figure 28 shows the Fx obtained as described above.
  • Fig. 29 shows the body posture angular acceleration iQ obtained as described above.
  • Insufficient floor reaction force moment by limiting the acceleration in the body translation mode so that the Fx generated by the body translation mode does not exceed the allowable range [Fxmin, Fxmax].
  • the upper body horizontal acceleration in the body translation mode is always limited to 0, so the above-mentioned insufficient floor reaction force moment is obtained only by the body posture angular acceleration in the body tilt mode. Will be supplemented.
  • the upper body horizontal acceleration in the body translation mode is supposed to be higher, the upper body angular acceleration (upper body tilt angular acceleration) in the upper body tilt mode is; 8, and the upper body rotation mode
  • the motion where the upper body acceleration (the upper body angular acceleration) is the reference angular acceleration d2 0 b zref / dt2, and the 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.
  • d2 0 b zref / dt2 is / 3 bref
  • d2 ⁇ azref / dt2 is ⁇ aref.
  • Mztmp obtained by substituting Equation 1001 into Equation 1004 into Equation 03z is Mztmp.
  • ⁇ ⁇ is the X component of the body horizontal acceleration and ay is the Y component of the body horizontal acceleration a.
  • the horizontal body position at time k-1 is substituted for Xb and Yb, and the value of time k is substituted for Xzmp, Yzmp, Xsup, d2Ysup / dt2, Xswg, and d2Yswg / dt2.
  • Figure 32 shows an example of Mztmp obtained in this way.
  • the part where Mztmp exceeds the floor reaction force moment vertical component allowable range [Mzmin, Mzmax] is shown by hatching.
  • Mztmp> Mzmax the process proceeds to S522, and Mz is determined by the following equation.
  • 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 is the entire robot including antiphase arm swing Shows the vertical component of the floor anti-camoment due to the movement of the floor.
  • the antiphase arm swing angular acceleration ⁇ a is determined so that Mz does not exceed the floor reaction force moment vertical component allowable range [Mzmin, Mzmax].
  • Mz is determined by limiting (saturating) the value of Mztm'p so that it does not exceed the floor reaction force horizontal component allowable range [Mzmin, Mzmax]. I have.
  • Mztmp is within the allowable range [Mzmih, Mzmax]
  • Mztmp becomes Mz as it is
  • Mztmp exceeds the upper limit of the allowable range [Mzmin, Mzmax] or falls below the lower limit
  • Mz is forcibly limited to Mzmax and Mzmin, respectively.
  • the antiphase arm swing angular acceleration iSa is Maz.
  • the value obtained by dividing by the equivalent inertia moment of antiphase arm swing A Maz is the reference antiphase arm swing angular acceleration.) 3 aref (2nd derivative of the reference antiphase arm swing angle) Value). That is, 13a is obtained by the above expression 1021.
  • Figure 35 shows the antiphase arm swing angular acceleration i3a.
  • the vertical component Mz of the floor reaction force moment generated by the motion of the entire rod including the antiphase arm swing does not exceed the allowable range [Mzmin, Mzmax].
  • the vertical reaction force moment vertical component Mztmp generated when the anti-phase arm swing angle acceleration is matched with the reference anti-phase arm swing angular acceleration ⁇ aref cancels out (cancels) the portion that exceeds the allowable range of Mztmp).
  • the antiphase arm swing angular acceleration j8 a is determined.
  • the processing from S5G4 to S528 in order to prevent the floor reaction force moment vertical component Mz from exceeding the floor reaction camoment vertical component allowable range [Mzmin, Mzmax] strictly, replace the processing from S5G4 to S528.
  • 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 / anti-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 the mouth port 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. When is set to robot 1, the body horizontal acceleration Q! 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 as the reference upper body angular acceleration ⁇ 8 bref (the value obtained by second-order differentiation of the reference upper body angular).
  • the process proceeds to S533, and the reference antiphase arm swing angular acceleration 13 aref (a value obtained by second-order differentiation of the reference antiphase arm swing angle) is substituted into the antiphase arm swing angular acceleration; 6a.
  • the body posture angular acceleration (body inclination angle acceleration and body angle angular 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 if you do this, exercise Since it is expected that the generated floor reaction force does not exceed the allowable range of the floor reaction force horizontal component and the allowable range of the floor reaction camouflage vertical component, there is no problem in deciding in this way.
  • the process proceeds to S 4 16, and the anti-phase arm swing speed is obtained by successively integrating the anti-phase arm swing acceleration 3 a obtained in S 4 12 (cumulative addition from time Ts to the current time k). Then, by successively integrating these (cumulative addition from time Ts to current time k), antiphase arm swing angle 0 az (this time value) is obtained.
  • the ZMP converted value of the floor reaction force moment that generates the body posture angular acceleration to return the body posture angular velocity to the initial value (the value at time Ts) by time Te (Hereinafter referred to as ZMP converted value of body posture restoring moment, abbreviated as ZMPrec).
  • Body posture angle ⁇ By generating body posture angular acceleration by using the body tilt mode during the anti-phase arm swing angle restoration period (the period from time Tm to time Ts2 and the period from time Tm2 to Te). Initial value of body posture angular velocity
  • a floor reaction force moment (k) * ⁇ is generated.
  • the ZMP (k) calculated from the motion is shifted by ⁇ ZMP obtained by the following equation. .
  • AZ MP (k) -/ 3 (k) * AMr / Fz (k) ... Equation 2 3 Therefore, if the pattern of ⁇ M r and the pattern of Fz (k) are determined (if known), ⁇
  • a body posture angular acceleration pattern that satisfies Equation 23 is generated, and the body posture angular velocity is set to an initial value (value at time Ts), The body posture angular velocity in the initial state (time Ts) of the body posture trajectory can be returned.
  • the body posture restoring moment ZMP conversion value (Z MPrec) means ⁇ ZMP (k) appropriately set in such a manner. 'When setting the body posture restoration moment ZMP conversion value using Equation 23 above, AMr is strictly Although it fluctuates, it may be approximately a constant value. This is because the dynamic accuracy of the normal gait does not need to be very high because the normal gait is only generated temporarily and does not cause the actual robot to follow this gait.
  • Figure 30 shows an example of Z M Prec.
  • a trapezoid pattern is formed as a pattern of Z M Prec in the period from time Tm to time Ts2 and the period from time Tm2 to Te.
  • the time at the break point of the trapezoid is matched with the time of the break point of the target ZMP pattern in the period between time Tm and time Ts2 and in the period from time Tm2 to time 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 this 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 during the period from time Tm2 to Te (shown by the solid line in FIG. 29). (Hereafter, when it is clear that the value is at time k, (k) may be omitted.)
  • the initial (time Ts) body posture angle matches the initial (time Ts) reference body posture angle.
  • the initial body posture angular velocity is determined so as to satisfy Equations 37a and 37b.
  • End body posture angle-Initial body posture angle Body posture angle acceleration determined to satisfy the floor reaction force horizontal component tolerance
  • Equation 3 7 a Terminal body posture angular velocity / initial body posture angular velocity
  • Equation 37b The integration period of the first term on the right side of each of Equations 37a and 37b is the sum of the period from time Ts to Tm and the period from Ts2 to Tm2.
  • the integration period of the second term on the right-hand side is the sum of the period from time Tm to Ts2 and the period from Tm2 to Te.
  • the initial state posture angle and angular velocity of the first turning gait viewed from the supporting leg coordinate system are respectively the same as the first turning gait. It must be consistent with the terminal body posture angle and angular velocity as seen from the gait support leg coordinate system (next and next gait support leg coordinate system). Therefore, in the first reference example, the initial (time Ts) body posture angle is determined to be the value of the initial (time Ts) reference body posture angle.
  • Equation 3 7 Substitute the initial body posture angle and the end body posture angle on the left side of a.
  • Equation 3 7 Substitute the initial body posture angle and the end body posture angle on the left side of a.
  • each of the equations 37a and 37b As the body posture angular acceleration related to the integration of the first term on the right side, the one obtained in S518 in FIG. 26 is used.
  • the trapezoid of Z MP rec (trapezoid pattern in Fig. 30) related to the initial body posture angular velocity of equations 37a and 37b and the integration of the second term on the right side of equations 37a and 37b
  • the height is assumed to be an unknown number (however, the time of the break point of the trapezoidal pattern of Z MPrec is predetermined as described above.
  • the trapezoid height acyc2 is the same value.
  • the initial body posture angular velocity obtained by solving the simultaneous equations of equations 37a and 37b including those unknowns is calculated as the new initial body posture angular velocity. To be determined.
  • the terminal body posture angular velocity of 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. '
  • Body posture angle acceleration 8 is given by the following equation.
  • 8 — ZMP rec * FzZ ⁇ r 'Equation 1 0 2 5
  • the target body horizontal acceleration that satisfies the target ZMP when the body tilt recovery moment is not generated is atmp as determined in S532.
  • the terminal body horizontal velocity when the body posture angle acceleration 3 is changed so as to generate the body tilt restoration moment ZMP converted value (ZM Prec) pattern as described above is From the time Ts to the terminal body horizontal velocity obtained when the ZMP conversion value (ZM Prec) pattern is not generated, the terminal horizontal body velocity obtained at S414 It is calculated as the sum of the first-order integrals of (ZM Prec * Fz / AMp).
  • the end body horizontal position is the body inclination restoration moment ZMP Conversion value (ZM Prec)
  • the terminal body horizontal position when no pattern is generated that is, the terminal value of the body horizontal position obtained in S414, is calculated as (ZM Prec * Fz / AMp) from time Ts to Te. ) Is obtained by adding the second-order integral of).
  • the process proceeds to S 3 14, and the antiphase arm swing restoration angular acceleration (i3 arec) is set so that the inversion arm swing angular velocity coincides with the initial position and the end position. decide.
  • the antiphase arm swing recovery 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 shape during the period from time Tm2 to Te
  • the height azcycl is the same
  • the antiphase arm swing acceleration i3a is calculated so that the integral value of / 3'arec from time Ts to Te and the floor reaction force moment vertical component Mz do 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.
  • Initial antiphase arm swing angular velocity Reference initial antiphase arm swing angular velocity
  • the antiphase arm swing angle when / 3 arec is 0 is the antiphase arm swing angle obtained in S 4 16 (the antiphase arm swing angle at time Te ).
  • the second-order integral of ⁇ arec is the second-order integral of the antiphase arm swing restoration angular acceleration from time Ts to Te set as shown in Fig. 36.
  • the reference initial antiphase arm swing angular velocity is a value at the time Ts of the reference antiphase arm swing angular velocity (first-order differential value of the reference antiphase arm swing angle 0 aref).
  • the initial antiphase arm swing angle may be made to match the reference initial antiphase arm swing angle.
  • the finally determined antiphase arm swing angular acceleration that is, the antiphase arm swing acceleration / 3a obtained above and the recovery angle to prevent the floor reaction force moment vertical component Mz from exceeding the allowable range
  • the arm swing angle and reference calculated when the initial antiphase arm swing angle is made to match the reference initial antiphase arm swing angle The average value of the difference from the antiphase arm swing angle or the average value of the maximum value and the minimum value of the difference is calculated, and a value obtained by subtracting half of the obtained average value from the reference initial antiphase arm swing angle is obtained.
  • the final initial antiphase arm swing angle may be determined. By doing so, it is possible to prevent the absolute value of the difference between the calculated arm swing angle and the reference antiphase arm swing angle from becoming too large.
  • the body posture angular velocity is used as the initial body posture trajectory. Even if the body posture angular acceleration / 3 is generated to return to the angular velocity, the floor reaction force horizontal component Fx is within the allowable range. This is in order not to exceed [Fxmin, Fxmax]. In other words, in the period from time Tm to Ts2 and the period from time Tm2 to Te, the floor reaction force horizontal component allowable range is sufficiently large, so that the body posture angular velocity is returned while satisfying the target ZMP. Even when the body posture angular acceleration; 8 is generated, the floor reaction horizontal component Fx does not exceed the allowable range.
  • Another reason for setting the times Ts, Tm, Ts2, and Tm2 as described above is that, in the period from the time Tm to Ts2 and the period from the time Tm2 to Te, the antiphase arm swing angular velocity is set to the reference antiphase arm. Even if the antiphase arm swing angular acceleration a is generated to return to the initial angular velocity of the swing angle trajectory, the floor reaction force moment vertical component Mz does not exceed the allowable range [Mzmin, Mzmax]. In other words, since the floor reaction force moment vertical component allowable range is sufficiently large in the period from time Tm to Ts2 and the period from time Tm2 to Te, the reverse phase arm swing angular velocity is returned. Even if the phase arm swing angular acceleration / 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 into a value viewed from the support leg coordinate system ( ⁇ "', ⁇ '", ⁇ '"coordinate system in Fig. 17) corresponding to the instantaneous support leg, and the value is defined as (X e, VX e) (X e: end body horizontal position, V xe: end body horizontal velocity).
  • the process proceeds to S2114, and it is determined whether or not the calculated body horizontal position / velocity boundary condition error (errx, errvx) is within an allowable range set in advance as appropriate. Instead of setting the allowable range of the body horizontal position / velocity boundary condition error as described above, the difference between the initial divergence component (Xs + Vxs / ⁇ ) and the terminal divergence component (Xe + VxeZcO) is obtained. , And the initial convergence component (X s _
  • ⁇ ′ is a predetermined value as described above.
  • S216 a plurality of (two in this first reference example) initial value candidates (Xs + AXs, VXs), (Xs, Vxs) near (Xs, VXs) + AV xs) is determined.
  • ⁇ X s and ⁇ V Xs mean predetermined minute changes with respect to X s and V Xs, respectively.
  • a normal gait is generated using the gait parameters by the same processing as in S208. .
  • the terminal body position and velocity of the generated normal gait are calculated from the supporting leg coordinate system ( ⁇ "', ⁇ '", ⁇ "'coordinate system corresponding to the supporting leg at that moment).
  • the value converted to the value seen (X e + AX el, V xe + AV xe 1), (X e + AX e 2,
  • V xe + ⁇ V xe 2 is obtained.
  • (Xe + AXel, Vxe + ⁇ Vxe1) means the terminal body position velocity corresponding to (Xs + AXs, Vxs)
  • (Xe + AXe2, V xe + AVxe2) means the terminal body position velocity corresponding to (Xs, Vxs + AVxs).
  • the initial state of the variable (state at time T s) may be set to be the same as that of (X s, VX s) as the initial value of the body horizontal position / velocity.
  • each initial value candidate (X s + ⁇ X s, The body horizontal position / velocity boundary condition errors corresponding to VXs) and (Xs, Vxs + AVxs) are obtained.
  • the body horizontal position / velocity boundary condition error for each of (Xs, VXs) and nearby initial value candidates (Xs + AXs, VXs), (Xs, Vxs + AVxs) The sensitivity matrix that indicates the degree of change of the body horizontal position / velocity boundary condition difference when the body horizontal position and body horizontal velocity are slightly changed from the initial value candidates (Xs, VXs) respectively
  • new initial value candidates (X s, VX s) are determined to make the body horizontal position / velocity boundary condition error smaller. Then, after the new initial value candidates (Xs, VXs) of the body horizontal position / velocity are determined in this way, 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 N ⁇ .
  • S300 in the generation processing (S208) of the 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 is the value of 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. 24).
  • (X0, V0) and (Z0, Vz0) are the upper body tilt restoring moment ZMP converted value pattern determined in S310, the initial value of the normal gait at time Ts.
  • a gait was generated based on the body posture angle and angular velocity, and the body horizontal position velocity (Xs, Vxs) at time Ts after the loop of S204 was removed to satisfy the gait conditions.
  • the vertical position and velocity are defined as the support leg coordinate system ( ⁇ '", ⁇ '", ⁇ '"coordinates corresponding to the support leg of one step starting from time Tcyc (that is, the first turning gait for the second time).
  • the body posture angle and angular acceleration determined in step (1) are calculated using the support leg coordinate system (X "', ⁇ " in Fig. 17) corresponding to the support leg of one step starting from time Tcyc (that is, the first turning gait for the second time).
  • is a certain value as described in the explanation about divergence.
  • Q "[0] also matches the divergent component at the end of the second turning gait viewed from the supporting leg coordinate system ( ⁇ ", ⁇ ", ⁇ " coordinate system in Fig. 17) of the second turning gait. I have. Therefore, ( ⁇ 0 ", V ⁇ 0") and Q "[0] may be calculated using these properties.
  • (0 az0, c az0) is the anti-phase arm swing restoration angular acceleration pattern determined in S 3 14 and S 3 16, the initial (time Ts) of the normal gait,
  • the gait is generated based on the swing angle and the angular velocity so as to satisfy the gait condition (more specifically, the floor reaction force except during the body posture angle and antiphase arm swing angle restoration period)
  • the antiphase arm swing angle trajectory is determined so that the moment vertical component does not exceed the allowable range.
  • the antiphase arm swing angular acceleration ⁇ aref and the antiphase arm swing angle
  • the anti-phase arm swing angle trajectory is determined so that the sum of the arm swing restoration angular acceleration ⁇ arec is generated
  • the antiphase arm swing angle and angular velocity determined at the time of rotation are calculated using the support leg coordinate system corresponding to the support leg of one step starting from time Tcyc (that is, the first turning gait for the second time) ( ⁇ "'in Fig. 17). , ⁇ '", ⁇ '" coordinate system).
  • 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 viewed from the current time's gait support leg coordinate system (the previous time's gait). (End position of free swing leg).
  • the current gait initial 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 current time gait support leg coordinate system (previous gait end support leg) (Foot position / posture).
  • the foot position and posture of the free gait end of the current time gait is calculated using the coordinate system of the next time's gait support leg as viewed from the current time's gait support leg coordinate system. ). That is, from the gait end free leg foot position and posture, the foot 22 was rotated until almost the entire bottom surface thereof touched the ground so that the free leg foot 22 was kept in contact with the floor and did not slip. At this time, the current gait end free leg foot position / posture is determined so that the representative point of the foot 22 coincides with the origin of the next time gait support leg coordinate system viewed from the current time gait support leg coordinate system. You.
  • the support leg foot 22 is off the floor and in the air.
  • Support leg foot In order to determine the trajectory after the floor 22 has left the floor, the planned landing position and posture of the support leg foot are set.
  • the planned landing position / posture of the support leg foot corresponds to the coordinates of the next-time gait support leg viewed from the coordinates of the gait support leg this time (the required value of the free leg foot position / posture of the second step related to the current time's gait). Is set. More specifically, the support leg foot landing 'planned position / posture, from the position / posture, is set so that the foot 2.2 remains almost in contact with the floor so that the foot 2.2 does not slip.
  • the representative point of the foot 22 when the robot is rotated until it touches the floor is set to match the origin of the next-time gait support leg coordinates viewed from the current time gait support leg coordinates.
  • the current gait end support leg foot position / posture is calculated from the current support leg position / posture (current gait initial support leg foot position / posture) to the foot landing scheduled position / posture corresponding to the next time gait support leg coordinate system (as described above).
  • the foot position / posture trajectory leading to the second leg's free leg side foot landing position / posture in the evening of the parameter is calculated using the finite time settling filter described above until the end of the gait.
  • the 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.
  • the process proceeds to S604, where the reference arm posture trajectory parameters of the current time's gait are determined in the same manner as the first turning gait / the second turning gait of the normal gait.
  • the initial reference arm posture and the rate of change of the gait this time match the current instantaneous values of the reference arm posture and change rate, and the arm posture trajectory of the current time gait is continuous with the arm posture trajectory of the normal gait.
  • the arm posture trajectory parameters determined here are determined as the normal gait parameters.
  • the position of the center of gravity of the both arms 5 and 5 (relative position with respect to the upper body 3), the right and left hands (the front ends of the both arms 5 and 5)
  • the parameters regarding the left-right spacing and 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 body 3.
  • the floor reaction force vertical component trajectory parameter of the current time's gait is defined by the parameters, similarly to the first turning gait / the second turning gait of the normal gait.
  • the floor reaction force vertical component trajectory is set so as to be a substantially continuous trajectory (values do not fly 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 vertical position of the initial total body weight center of the normal gait viewed from the gait support leg coordinate system this time is the upper body mass point of the model in Fig. 12 corresponding to the upper body vertical position Z0 "of the normal gait obtained in S224.
  • Equation 1 The vertical position and the vertical position of the leg material point on the supporting leg side and the free leg side corresponding to the value obtained by converting each foot position in the initial stage of the normal gait into the value viewed from the gait supporting leg coordinate system this time are expressed by Equation 0.
  • Equation 2 the initial overall center of gravity vertical speed of the normal gait from the gait support leg coordinate system corresponds to the body vertical speed VzO "of the normal gait obtained in S224.
  • Equation 41a and 41b are the integral values during the period from the beginning to the end of the current time's gait.
  • Equation 4 1a Vertical velocity of the entire center of gravity at the end-Vertical velocity of the initial overall center of gravity
  • At least one of the floor reaction force vertical component parameters (such as the time of a break point) that defines the floor reaction force vertical component pattern as shown in Fig. 6
  • two parameters are set as independent unknown variables, and the values of the unknown variables are determined by solving a system of equations 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 floor reaction force horizontal component allowable range [Fxmin, Fxmax] (specifically, the parameter that defines the pattern of the floor reaction force horizontal component allowable range) is the first time in the normal gait. 1 turning gait / 2nd turning gait.
  • the floor reaction force horizontal component allowable range is set in a pattern as shown in FIG.
  • the floor reaction force horizontal component allowable range is set based on the above equation 12 according to the floor reaction force vertical component pattern previously determined in S606.
  • the floor reaction force moment vertical component allowable range [Mzmin, Mzmax] (specifically, a parameter defining the pattern of the floor reaction force moment vertical component allowable range) is changed to a normal step.
  • the first turning gait of the gait is set in the same way as the second turning gait.
  • the floor reaction force moment vertical component allowable range is set in the pattern shown in Fig. 41.
  • the floor reaction camo vertical component allowable range is set on the basis of the above-mentioned equation 1102 according to the floor reaction force vertical component pattern determined in S606 previously.
  • the ZMP trajectory of the gait of this time (specifically, the parameters and time of the trajectory defining the ZMP trajectory, the time and position of the break point of the gait)
  • the stability is set as shown in FIG.
  • 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.
  • 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 in the initial stage of the normal gait.
  • the ZMP trajectory parameters of the current time's gait determined in S612 are only temporarily determined, and are modified 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 ⁇ 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 ⁇ 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.
  • the gait parameter of the current time's gait is obtained. Evening (ZMP orbit parameters) is corrected, and parameters related to antiphase arm swing angle are determined. 'In this process, the ZMP trajectory pattern is set to make the upper body posture trajectory The parameters regarding the anti-phase arm swing angle of the current time's gait are determined so that the lame is corrected and the anti-phase arm swing angle converges on the anti-phase arm swing angle trajectory of the normal gait.
  • Figure 42 is a subroutine flow chart showing the processing. First, the process proceeds to S702 through S700, and a temporary current time gait up to the current time gait end time is temporarily generated based on the temporary target ZMP pattern and other current time gait parameters.
  • the terminal state of the previous target gait (more specifically, the gait state such as the body horizontal position speed, the body vertical position speed, the body posture angle and its angular velocity, the target foot position / posture, the target arm posture, etc.) Is converted to the support leg coordinate system this time, and this is the initial state of the gait this time.
  • the target arm posture includes the target antiphase arm swing angle and angular velocity.
  • the provisional gait generation time k is before the current gait end time Tcurr (whether or not k ⁇ Tcurr) at S804 through S802. If the result is YES, the process proceeds to the current time gait instantaneous value determination subroutine in S806, where the instantaneous value of the current time gait at time k is determined.
  • the gait instantaneous value determination subroutine of S806 a provisional gait is generated as shown in FIG. However, this time's gait parameters are used instead of the normal gait parameters.
  • a A a ( ⁇ a is a predetermined minute amount), and a trapezoidal shape is formed on the current provisional target ZMP pattern according to the relationship in FIG.
  • the provisional current time gait up to the terminal is calculated based on the corrected target ZMP in the same manner as in S702.
  • a indicates that the current gait end divergence component is a normal gait. It is made to match as much as possible the initial divergence component. This is the height of the trapezoidal pan to correct the tentative target ZMP in order to approach the position and attitude orbit).
  • the correction of the provisional target ZMP is performed during a period in which almost the entire bottom surface of the support leg foot 22 is in contact with the ground (a period in which the sole is fully grounded), that is, the allowable range of the floor reaction force horizontal component is It is performed during a sufficiently wide period, and the time of the break point of the trapezoidal pattern is set to match the time of the break point of the provisional target Z M'P during the period of full contact with the sole .
  • 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 (Xe1, VX el) at the terminal of the provisional current time gait. Required.
  • ⁇ a is reduced as the terminal divergence component error errq becomes smaller by an iterative operation described below.
  • the ⁇ a may be set as described above. However, even if it is a constant, the terminal divergence component error errq can be kept within the 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 — errqZr, that is, the value obtained by dividing the terminal divergence component error errq obtained in S 706 by the parameter overnight 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).
  • This ZMPrec is a trapezoidal pattern similar to that described in the normal gait generation processing, and is specifically determined as follows.
  • the trapezoidal pattern of the ZMPrec of this time's gait is set, and the time of the top (break point) of the trapezoid is assumed to be the same as the trapezoidal pattern of ZMPrec during the second turning gait in Fig. 30.
  • the trapezoid height is set to an unknown value, and the trapezoid height (parameter) of ZMPrec is calculated as follows.
  • the time at which the trapezoidal pattern of Z MPrec starts to rise is Ta
  • 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 the first reference example, the unknown parameters are determined so that the state of the generated gait gradually approaches the state of the normal gait over a plurality of steps.
  • the Z MPrec pattern in one gait is complicated, the number of unknown parameters is set to two or more, and both the body posture angle and the body posture angular velocity at the end of the gait are in a regular gait. It may be connected continuously, but the Z MPrec pattern may fluctuate too much zigzag.
  • the calculation procedure will be described.
  • 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 err.
  • a difference between the terminal body posture angular velocity of the provisional current time gait and the initial body posture angular velocity of the normal gait is obtained, and this is defined 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 restoration momentum of the first turning gait ZMP converted value ZM Prec pattern is the ZMP rec pattern of the first turning gait obtained in S310 of FIG. The trapezoidal pattern shown in FIG. 30) and a certain value bl.
  • the gait generated in this way is called a ZM Prec modified gait, and its end (end of the first turning gait) is the body posture angle and the angular velocity are 01 and ⁇ , respectively. '
  • the original normal gait determined at the time of completion of the processing of the subroutine for obtaining the initial state of the normal gait in S024 (the normal body gait initial body posture angle and the normal gait finally determined in S310)
  • the first turning gait of the ZMP rec pattern as the initial value with the angular velocity as the initial value and the normal gait when the ZMP rec pattern is the pattern determined in S310 (the trapezoidal pattern in Fig. 30 where the height is acycl)
  • the end body posture angle and the angular velocity be ⁇ lorg and ⁇ lorg, respectively.
  • ⁇ 0 1 and ⁇ 1 are defined as follows.
  • ⁇ ⁇ 1 ⁇ 1- ⁇ lorg formula 5 0
  • Equation 51 1 ⁇ 01 and ⁇ ⁇ are the two values when the ZM Prec corrected gait and the original normal gait are generated up to the end of the first turning gait. Body posture angle between And the difference in angular velocity. If ⁇ 1 and ⁇ 0 1 become 0, following the ZM Prec corrected gait, the trapezoidal height of the ZM Prec pattern is referred to as acyc2 by the algorithm similar to the gait this time, and the second orbit is performed. When a gait is generated, this gait matches the original normal gait.
  • the current gait trapezoid height bcurr where ⁇ 0 1 and ⁇ v01 become 0, and the first turning gait trapezoid height bl are obtained, and the obtained bcurr is finally determined as the trapezoid height of the current time gait. good.
  • ⁇ 1 c21 * bcurr + c22 * bl + e2 * v9 err ... Equation 5 3
  • cll, cl2, c21, c22, el, and e2 are the gait cycle of the current gait, the first gait, and Body posture restoring moment ZMP converted value ZM Prec This coefficient is uniquely determined by the parameters of the pattern (particularly parameters related to time).
  • Equations 52 and 53 are determined so that the right sides of Equations 52 and 53 become 0. That is, bcurr and bl are obtained by solving simultaneous equations with the left-hand sides of Equations 52 and 53 set to 0.
  • the trapezoidal height of the trapezoidal pattern of the body posture restoring moment ZMP converted value (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, and the upper body obtained as described above in S718 is added to the current provisional target ZMP pattern (the provisional target ZMP pattern obtained when the loop exits the repetition loop of S700).
  • the posture recovery moment which is obtained by adding the ZMP conversion value pattern, is determined as the target ZMP pattern of the current time's gait. This processing is the same as the processing of adding a trapezoidal pattern having a height of at step S710 to the tentative target ZMP pattern.
  • the provisional current time gait generated in the loop of S700 is generated by setting the body posture restoration moment ZMP converted value ZMPrec to 0 (the height parameter of the trapezoidal pattern of ZMP rec is set to 0). It is a thing.
  • the body position velocity is continuous with or close to the normal gait, but the body posture angle is the normal gait It deviates from the upper body posture angle and may diverge in some cases.
  • the body posture restoring moment ZMP converted value pattern obtained in S 718 generates a body posture angular acceleration to make the deviation of the body posture angle from the normal gait close to zero.
  • the tentative target finally obtained in the loop of S7000 Without correcting the body posture recovery moment obtained in S 718, and generating the body posture angular acceleration in accordance with the ZMP conversion value pattern, the dynamic equilibrium condition (gravity of the mouth pot and gravity) In order to satisfy the following condition, the moment that acts on the target ZMP as the resultant force with the inertia force is zero except for the vertical component), the body horizontal position trajectory must be shifted from the temporary body gait No longer. Therefore, in this embodiment, the tentative target ZMP pattern is corrected by ZMP rec so that the body horizontal position trajectory does not need to be shifted from the one finally obtained by the loop of S700. And
  • the body posture restoration moment calculated in S 718 In addition to the motion of the provisional current time's gait, the body posture restoration moment calculated in S 718 generates a body posture angular acceleration corresponding to the ZMP conversion value pattern, and ZMP (gravity and inertia generated by the motion) The point where the moment excluding the vertical component of the resultant force becomes 0) is displaced by the body posture restoring moment ZMP converted value. Therefore, conversely, the body posture restoration moment ZMP conversion obtained in S 718 is calculated using the pattern obtained by adding the body posture restoration momentum ZMP conversion pattern to the tentative target ZMP pattern as the target ZMP pattern. The torso in leaning mode corresponding to the value pattern. If a current time gait that satisfies the target ZMP pattern is generated while generating angular acceleration, the same body translation It becomes.
  • ZMP gravitation and inertia generated by the motion
  • the pattern obtained by adding the body posture restoring moment ZMP conversion value pattern to the temporary target ZMP pattern is used as the target ZMP pattern.
  • 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, and the terminal antiphase arm swing angle speed of the provisional current time gait and the normal gait Based on the difference from the initial antiphase arm swing angular velocity of the gait, the inverted phase arm swing recovery angular acceleration of this time's gait such that the inverted phase arm swing angle trajectory approaches the antiphase arm swing angle trajectory of the normal gait
  • the pattern is determined.
  • the method of determining this pattern is to determine the body posture restoring moment ZMP converted value pattern in S718. Is almost the same, except that the variable names differ as follows: Body posture restoring moment ZMP converted value pattern—antiphase arm swing restoring angle acceleration pattern
  • the antiphase arm swing restoration angular acceleration pattern determined here is the period during which the floor reaction force moment vertical component allowable range becomes sufficiently large in the generation processing of the instantaneous gait instantaneous value described later (single leg support). During the period, the anti-phase arm swing angle trajectory is modified so that it can be connected (closed) 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 at the vertex (break point) is known (more specifically, the time of the trapezoidal break point is adjusted to the break point time of the target ZMP), and the trapezoid height is set to an unknown value.
  • the trapezoid height (parameter) of the phase arm swing restoration angular acceleration is determined.
  • 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.
  • the unknown parameter of the anti-phase arm swing recovery angular acceleration pattern is one as described above, both the anti-phase arm swing angle and the anti-phase arm swing angular velocity should be continuously connected to the normal gait at the end of the gait. Is generally not possible. Therefore, in the first reference example, the unknown parameters are determined so that the state of the generated gait gradually approaches the state of the normal gait over a plurality of steps. Shall decide. -Supplementally, 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 at the end of the gait. The swing angular velocity and the swing angular velocity may be continuously connected to a normal gait, but the anti-phase arm swing restoration angular acceleration pattern may fluctuate too much in a zigzag manner.
  • the difference between the terminal antiphase arm swing angle of the provisional current time gait and the initial antiphase arm swing angle of the normal gait obtained by setting the trapezoid height of the antiphase arm swing restoration angular acceleration pattern to 0 in S702. And set this to 0 azerr. Further, a difference between the terminal antiphase arm swing angular velocity of the provisional current time gait and the initial antiphase arm swing angular velocity of the normal gait is obtained, and this is defined as v 0 zerr.
  • the current time's gait is generated with the trapezoidal height of the antiphase arm swing restoration angular acceleration pattern as a certain value bzcurr, and that the first turning gait is subsequently generated by the same algorithm as the current time's gait. I do.
  • the anti-phase arm swing 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 manner 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 ⁇ , respectively. ⁇ zl.
  • ⁇ ⁇ zl and ⁇ ⁇ are the difference of the anti-phase arm swing angle between the anti-phase arm swing restoration angular acceleration corrected gait and the original normal gait at the time when the gait is generated up to the end of the first turning gait. It means the difference in angular velocity. If zl and ⁇ 0 become 0, following the anti-phase arm swing restoration angular acceleration correction gait, the trapezoidal height of the anti-phase arm swing restoration angular acceleration pattern is calculated using the azcyc2 When the second turning gait is generated, this gait matches the original normal gait.
  • the current gait trapezoid height bzcurr and the first turning gait trapezoid height bzl at which ⁇ 0 zl and ⁇ zl become 0 are determined, and finally the determined bzcurr is determined as the trapezoid height of the current gait. good.
  • the dynamic model of the anti-phase arm swing angle of the robot 1 has a linear characteristic like the flywheel FHaz shown in Fig. 12, ⁇ ⁇ zl and ⁇ ⁇ have the gait trapezoid height bzcurr,
  • the first turning gait trapezoid height bzl, the difference between the terminal antiphase arm swing angle of the temporary gait and the initial antiphase arm swing angle of the normal gait ⁇ zerr, the terminal antiphase arm swing angular velocity of the temporary gait It has the following relationship with the difference v0 zerr of the initial antiphase arm swing angular velocity of the normal gait.
  • ⁇ 0 zl czll * bzcurr + czl2 * bzl + 9zerr + ezl * v6zerr
  • ⁇ ⁇ 1 cz21 * bzcurr + cz22 * bzl + ez2 * v9zerr twenty one
  • 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 anti-phase arm swing restoration angular acceleration pattern. This is a coefficient that is uniquely determined by parameters related to time.
  • the coefficients czll, czl2, cz21, cz22, ezl, and ez2 of the equations 1052 and 1053 are the gait of this time, the gait cycle of the first turning gait, and the antiphase arm swing recovery angle. It can be obtained based on the parameters of the acceleration pattern (especially parameters related to time). '
  • Equations 1052 and 1053 are determined so that the right side of Equations 1052 and 1053 becomes zero. That is, the left-hand sides of Equations 105 and 103 are set to 0. bzcurr and bzl are obtained by solving the simultaneous equations.
  • the trapezoidal height of the trapezoidal pattern of the antiphase arm swing restoration angular acceleration of the current time's gait is set to the current time's gait trapezoidal height bzcurr obtained above.
  • the subroutine of FIG. 45 is executed.
  • the same processing from S400 to S411 in Fig. 25 is performed from S140 to S414 in Fig. 45, and then the subroutine of S144
  • the processing of S1000 to S10018 in FIG. 46 is performed. Specifically, first, in SI000, the value of the reference body angle at the current time is substituted for the target body angle. In addition, the value of the reference arm posture at the current time is substituted for the target arm posture except for the arm posture opposite phase 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 NO, the process proceeds to S1004, and if it is YS, the process proceeds to S106.
  • the body horizontal acceleration ⁇ , the body angle acceleration / 3, and the antiphase arm swing angular acceleration 3a are calculated when the body tilt angle and the antiphase arm swing angle are not in the restoration period (Fig. 26). The same processing as in steps S504 to S528) is performed.
  • 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 the upper body angle of the body posture is determined to be the reference upper body angle in the first reference example.
  • the target gait generation processing in the gait generator 100 has been described above.
  • the desired gait is generated as described above.
  • the desired body position / posture (trajectory) and the desired arm posture (trajectory) are sent to the robot 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) (target floor reaction force horizontal component and target floor reaction force vertical component) Is sent to the composite compliance operation determination unit 104 and also to the target floor reaction force distributor 106. 'Then, with the desired floor reaction force distributor 106, the floor reaction force is distributed to each foot 22R and 22L, The floor reaction force center point and the desired foot floor reaction force are determined. The determined target floor floor reaction force center point and the target foot floor reaction force are sent to the composite compliance operation determination unit 104.
  • the modified target foot position / posture (trajectory) with mechanism deformation compensation is sent from the composite compliance operation determination unit 104 to the mouth pot geometric model 102.
  • the mouth-pot geometric model 102 receives the target body position / posture (trajectory) and the corrected target foot position / posture (trajectory) with mechanical deformation compensation.
  • the joint displacement commands (values) of the two joints (10 R (L), etc.) are calculated and sent to the displacement controller 108.
  • the displacement controller 108 controls the displacement of the 12 joints of the lopot 1 with the joint displacement command (value) calculated by the mouth-pot geometric model 102 as a target value.
  • the lopot geometric model 102 calculates the displacement specification (value) of the arm joint that satisfies the target arm posture, and sends it to the displacement controller 108.
  • the displacement controller 108 controls the displacement of the 12 joints of the arm of the robot 1 with the joint displacement command (value) calculated by the robot geometric model 102 as a target value.
  • the floor reaction force generated at the mouth port 1 (specifically, the actual floor reaction force of each foot) is detected by the 6-axis force sensor 50.
  • the detected value is sent to the composite compliance operation determination unit 104.
  • the posture inclination angle deviation 0 errx, erry erry (of the actual body posture angle deviation (deviation between the target body posture and the actual body posture (actual posture of the body 3)) generated in the robot 1. More specifically, the deviation of the inclination angle of the actual body posture from the vertical direction with respect to the inclination angle of the target body posture with respect to the vertical direction, and the deviation of the posture inclination angle in the roll direction (around the X axis) is 0 errx.
  • 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.
  • This Post-tilt stabilization control operation unit 1 1 2 Compensating all floors around the target total floor reaction force center point (target ZMP) for restoring the actual body posture angle of robot 1 to the target body posture angle
  • the reaction force moment horizontal component is calculated and sent to the composite compliance operation determination unit 104.
  • the compensation total floor reaction force moment water 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.
  • the body posture inclination angle deviation is described in more detail below.
  • the angle deviation ⁇ ⁇ of the actual body posture angle deviation generated in the robot 1 (specifically, the posture angle deviation in the yaw direction (around the ⁇ axis) of the actual body posture angle deviation is ⁇ errz Is detected via the attitude sensor 54, and the detected value is sent to the stabilization control calculation unit 113.
  • compensation total floor reaction force moment vertical component 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 it compensates for the total floor reaction force camoment 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, the PD control law.
  • Compensated total floor reaction force moment vertical component Mdmd Z K0bz *
  • K0bz and Kcobz 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.
  • 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 force moment horizontal component acts around the target total floor reaction force center point (target ZMP).
  • the target floor reaction force is obtained by adding a compensating total floor reaction force moment vertical component to the target floor reaction force vertical component around the target total floor reaction force center point (target Z MP) dynamically balanced with the gait. Correct the force moment vertical component.
  • the composite compliance operation determining unit 104 adds the corrected target floor reaction force to the state of the actual lopot 1 and the floor reaction force calculated from the sensor detection value and the like. Determine the corrected target foot position / posture (trajectory) with mechanical deformation compensation to match. However, it is practically impossible to match all the states to the target, so a trade-off relationship is given between them so that they can be compromised. 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.
  • the current time's gait parameter is, as described above, the value obtained when the terminal divergence component of the current time's gait is the initial divergence component Q [0] 'of the normal turning gait viewed from the support leg coordinate system of the current time's gait Is modified to match Q ".
  • the divergent component is generated when a gait is generated according to the gait parameters this time using the dynamics model, and the gait is repeatedly generated according to the normal turning gait parameters overnight. It is an index for evaluating whether the upper body horizontal position of the gait converges on a steady turning gait.
  • the divergence component of the current time's gait should be the divergence of the normal turning initial divergence component Q [0] to the value Q ", which is the value seen from the support leg coordinate system of the current time's gait.
  • the components must be defined.
  • the divergent component defined by Equation 10 is actually a divergent component that approximately satisfies the above properties.
  • the gait parameters are adjusted such that the upper body posture angle of the gait converged (approached) or coincided with the upper body posture angle of the normal gait consisting of the second turning gait and the first turning gait. It has been corrected.
  • the target ZMP pattern in the gait parameters of the current gait is corrected so as to satisfy the condition (the current gait approaches the normal gait). did.
  • the trajectory indicated by reference numeral B in FIG. 47 indicates the body horizontal position trajectory generated such that the divergent components coincide at the boundary of the gait as described above.
  • the trajectory indicated by the symbol A in the figure is the upper body when the current time's gait is generated so that the horizontal position and speed of the upper body at the boundary with the normal turning gait match, and then the normal gait is repeated.
  • the horizontal position trajectory is shown.
  • the trajectory indicated by 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.
  • the gait generation method that matches only the divergent component at the gait boundary
  • divergence of the gait can be prevented as in the gait generation method that matches both the position and the speed at the gait boundary.
  • the example indicated by reference numeral C in the figure shows an example in which the trajectory is generated without considering them. In such cases, the generated trajectories will diverge over time.
  • the target ZMP pattern may be complicated, and multiple parameters may be adjusted to match both the position and speed.
  • the target ZMP pattern may be zigzag.
  • the divergence component also coincides if both the position and velocity are matched, so the method of matching both position and velocity can be said to be a special case of the method of matching the divergence component.
  • the gait was generated according to the current time's gait parameters using the dynamic model, and the gait was repeatedly generated continuously according to the normal turning gait parameters.
  • the gait parameters were corrected this time so that the upper body posture angle of the generated gait converged (approached) or matched the upper body posture angle of the normal turning gait.
  • the first turning gait immediately after this time's gait needs to be a gait corrected by the first turning gait trapezoid heights bl and bzl determined as described above.
  • the floor reaction force horizontal component allowable range can be set independently for the front-rear direction (X-axis direction) component and the left-right direction (Y-axis direction) component.
  • a gait that is more difficult to slip is generated by using the relational expression between the front-back direction and the left-right direction.
  • a so-called friction circle may be set as an allowable range as in the following equation. (X component of floor reaction force horizontal component) * (X component of floor reaction force horizontal component)
  • 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 floor reaction force horizontal component allowable range is In the case of the direction relation, it is necessary to calculate the motion on the sagittal plane and the motion on the lateral plane simultaneously or alternately so as to satisfy the allowable range simultaneously or alternately.
  • the allowable range of the pair of the floor reaction force horizontal component and the floor reaction camoment vertical component is set. 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. In addition, 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 a weighted average of the absolute value of the floor reaction force horizontal component and the absolute value of the floor reaction camo- mation vertical component.
  • the overall center of gravity of the lopot is calculated instead of the floor reaction force vertical component trajectory as a gait parameter.
  • the parameters that define the orbit may be explicitly set. It is essentially the same.
  • a parameter that defines the vertical acceleration trajectory of a part that behaves close to the total body weight trajectory of the mouth pot may be explicitly set. For example, if the mass of the legs is sufficiently smaller than the mass of the body, the vertical acceleration trajectory of the body and the vertical acceleration trajectory of the robot have almost the same or proportional relationship.
  • the body vertical acceleration trajectory may be used instead of the component trajectory.
  • the acceleration and its allowable range may be used.
  • the parameters regarding the horizontal acceleration trajectory of the part that behaves close to the overall center of gravity horizontal trajectory of the lopot may be explicitly set. For example, if the mass of the legs is sufficiently smaller than the mass of the body, the horizontal reaction trajectory and the robot's overall center-of-gravity horizontal-acceleration trajectory are almost the same or proportional.
  • the body horizontal acceleration and its allowable range may be used instead of the component and its allowable range.
  • the vertical component of the floor reaction force moment around the target ZMP and the vertical component of the rate of change of angular momentum of the entire robot around the target ZMP are proportional.
  • the vertical component of the rate of change of the angular momentum of the entire robot and the allowable range may be used.
  • two motion modes a body tilt mode and a body translation mode, are used in order to set the floor reaction force horizontal component and the floor reaction moment horizontal component around the target ZMP to appropriate values.
  • exercise modes other than these may be used.
  • one of the motion modes is a motion mode that does not generate a floor reaction force horizontal component. Regardless of the combination of the modes, as long as the two types of motion modes differing in the rate of occurrence of the floor reaction force horizontal component and the floor reaction force moment around the target ZMP, any arbitrary This is because the floor 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 a foot that is not touching (present in the air) is perturbed may be used.
  • the amount of perturbation should be returned to substantially zero immediately before landing so that the landing position does not change. It is needless to say that the exercise mode in which the tip positions of the right and left arms are swung in the same direction and the inverted arm swing mode may be used in combination.
  • the operation mode in which the floor reaction force moment around the target ZMP can be changed sufficiently large without changing the floor reaction force horizontal component so much, and the floor reaction force moment around the target ZMP should not be changed much It is desirable to combine a motion mode that can change the floor reaction force horizontal component sufficiently large.
  • an exercise mode in which the angular momentum can be changed sufficiently large without changing the total body weight center much and an exercise mode in which the overall center of gravity can be changed sufficiently large without changing the angular interlocking amount so much.
  • an exercise mode in which the overall center of gravity can be changed sufficiently large without changing the angular interlocking amount so much To It is desirable to combine them. This is because the displacement of the motion mode becomes smaller in this way.
  • the upper body rotation mode is used. Is also good.
  • the upper body rotation mode is used, the upper body 3 of the mouth pot 1 is connected to the waist (for example, the lower part of the member 54 in FIG. 1) and the upper part thereof (for example, FIG. 1). (Upper part of the 54 member) and the upper part is provided so that it can rotate in one direction (for example, around the trunk axis of the upper body 3) with respect to the hip part. It is preferable.
  • the upper part of the upper body 3 can be rotated and the vertical component of the floor anti-camoment can be adjusted without affecting the posture of the legs 2,2.
  • the rotation angle of the upper part of the body 3 and the angular velocity And its angular acceleration may be determined.
  • the relative positions of the both arms 5, 5 with respect to the upper part of the body 3, for example, may be fixed.
  • an anti-phase arm swing operation of the both arms 5, 5 may be added.
  • a motion mode for displacing parts other than the arm and the upper body may be used.
  • a mode in which the ends of both legs are moved back and forth may be used.
  • the anti-phase arm swing mode and the upper body single rotation mode may be used together.
  • the upper body single rotation mode and antiphase arm swing mode This mode generates the floor reaction force moment vertical component so that the position does not change (in other words, without generating the floor reaction force horizontal component), but the position of all the center of gravity changes (in other words, the floor reaction force horizontal (It will generate components). This is because the floor reaction water can be adjusted by combining with the upper body translation mode.
  • the following model may be used.
  • a nonlinear model in which mass points are set for multiple links.
  • Each link in this model may have an inertia (inertia moment).
  • a partial model that represents the relationship between the resultant force of gravity and inertia force (or the floor reaction force balanced with it) and the body translational motion, and the resultant force and the body posture rotation motion (the body tilting motion and the body tilting motion) (Separable model), which is separated from the partial model that expresses the relationship (rotational motion).
  • the mass point shown in FIG. 12 is a partial model representing the relationship between the resultant force and the body translational movement
  • the flywheel shown in FIG. 12 represents the relationship between the resultant force and the body posture rotational movement. It is a partial model.
  • the model used in each process may be the same, or the model may be properly used according to the process.
  • the dynamic model 3 mass points + flywheel model
  • the normal gait generation processing especially S408, S4 in Fig. 21
  • a normal gait may be generated by using the model shown in Fig. 12 and one mass point with the leg mass points 2 m and 2 m removed + a flywheel model).
  • the process of S408 and S412 in FIG. 25 may be performed with the mass of the leg mass point 2 m set to 0. . In this way, the amount of calculation in the process of generating a normal gait can be significantly reduced.
  • the block diagram, the flowchart, the algorithm, and the like may be subjected to equivalent deformation such as changing the operation processing order. Further, a low-pass filter may be appropriately inserted. '
  • the first reference example has been described with respect to a two-legged movement pot, but can be applied to a three-legged or more multi-legged mouth pot.
  • the initial state of the normal gait (mainly the initial body horizontal position velocity, the initial body vertical position velocity, and the inverse state) is obtained by using the search method or partially using the analysis method.
  • the above method is used to calculate in advance for various normal gait parameters, and the normal gait parameters and the normal gait are calculated in advance.
  • the relationship between the initial state of the gait and the map may be stored as a map or an approximate expression, and during actual movement, the initial value of the normal gait may be determined based on the map or the approximate expression. .
  • the function obtained by combining the above-described relationship mapped or approximated and the function f may be mapped or approximated and stored. In other words, it is based on the above-mentioned foot trajectory parameters and the floor reaction force vertical trajectory parameters.
  • a function for directly obtaining the divergent component of the normal gait from the normal gait parameters may be mapped or approximated and stored.
  • a normal gait is generated in advance for each of a plurality of typical sets of normal gait parameters, and the initial state of the normal gait for each set of normal gait parameters is set in advance. (Determined by S 0 2 4 in Fig. 13), and a map representing 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 was 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.
  • the horizontal position of the upper body is a normal gait
  • the swing leg is quickly moved forward after leaving the floor to shift the center of gravity of the swing leg forward.
  • the horizontal body position to satisfy the target Z MP must be further accelerated forward.
  • the horizontal position of the torso moves further forward at the end of the current time's gait, and can be matched with the normal gait.
  • the 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 target ZMP parameters are to be corrected when determining appropriate values such as the torso horizontal position by the search method
  • 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 center of gravity path of the swing leg or the cycle of the gait 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.
  • the correction amount (the correction amount a in FIG. 34 described above) over the target ZMP parameter may be excessive. For example, if a request to move at a high speed (driving request) is given from a gait hopping on the spot, the gait is connected to (close to) a high-speed normal gait (normal gait of running). It is necessary to shift the target ZMP parameter extremely backward in the direction of travel. In this case, it is desirable to correct the gait parameters other than the target Z MP parameters 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.
  • a normal gait that satisfies the request (required parameter overnight) is obtained in accordance with the procedure shown in the first reference example for the time being.
  • the gait parameters are determined, it is determined whether or not the stability margin of the target ZMP trajectory for the current time's gait has become too small. 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 requirements can be modified. good.
  • the acceleration / deceleration of the gait in advance (Period speed) Z
  • the current gait cycle is set and the required range is set.
  • the acceleration / deceleration rate corresponding to the request is calculated. If the acceleration / deceleration exceeds the allowable range, the request may be modified so that it falls within the allowable range.
  • ⁇ , ⁇ Fp, ⁇ , ⁇ Fr rMaz and Mu 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 accelerated.
  • the difference from the floor reaction force in the case where there is no difference may be obtained, and the difference may be obtained by dividing the difference by the minute amount.
  • the following method may be used to determine the trapezoid height bzcurr of the antiphase arm swing restoration angular acceleration pattern of the gait this time.
  • the antiphase arm swing angle and the angular velocity at the end of the current time gait of the antiphase arm swing restoration angular acceleration correction gait are set to 0 zcurr and v0 zcurr, respectively.
  • A0 zcerr and ⁇ v0 zcerr are the differences between the anti-phase arm swing angle and angular velocity of the normal gait.
  • the gait cycle is defined as the interval, and the difference between the terminal antiphase arm swing angle and the angular velocity of the provisional current time gait and the initial antiphase arm swing angle and angular velocity of the normal gait 0 zerr, ⁇ ⁇ zerr Is the previous state, bzcurr is input, and ⁇ 0 zcerr, ⁇ ⁇ zcerr is now [1H dog state.
  • the feedback rule may be determined using modern control theory or the like, and bzcurr may be determined based on this.
  • the antiphase arm swing restoration angular acceleration ⁇ arec of the current time's gait and / or normal gait is not trapezoidal pattern, and at each moment, the target antiphase arm swing angle ⁇ angular velocity and the reference antiphase arm swing angle ⁇ angular velocity Based on the difference or the like, the value of the reversal phase arm swing restoration angular acceleration) 3 arec at each instant may be determined using a state feedback rule or the like so that the difference converges to zero.
  • the anti-phase arm swing restoration angular acceleration of this time's gait) 3 arec is not a trapezoidal pattern, and at each moment, based on the target anti-phase arm swing angle and angular velocity of this time's gait, these are the first turning gait.
  • the antiphase arm swing restoration angle acceleration 3 arec at each instant may be determined using a state feedback rule or the like so as to approach the initial antiphase arm swing angle and angular velocity.
  • the translational floor reaction force By setting the floor parallel component (the component parallel to the floor), that is, the allowable range of the frictional force, or the floor parallel component of the overall center of gravity acceleration (this is proportional to the frictional force) Is also good.
  • the allowable range of the floor parallel component (friction force) of the translational floor reaction force is set (the same applies to the case where the allowable range of the floor parallel component of the overall center of gravity acceleration is set).
  • the determination may be made again during the generation of the gait this time, other than when the gait is completed. By doing so, the amount of computation increases, but it is possible to respond immediately when there is a change in gait requirements.
  • gait correction redetermining the gait parameters this time
  • gaits that are not corrected or tentatively corrected gaits in the middle of search
  • Gait that does not completely satisfy the search completion condition the deviation of the gait boundary condition is within the allowable value
  • An appropriate (not provisional) corrected gait may be provided by the end of the cycle.
  • the corrected target ZMP trajectory and the desired floor reaction force vertical component trajectory are continuous, and they do not change rapidly after a short time. There is almost no problem, just a slight jagged orbit.
  • the target floor reaction force vertical component may be set in a pattern as shown in FIG. 50, for example, instead of the one shown in FIG.
  • the floor reaction force vertical component trajectory is set to a trapezoidal shape that is convex on the increasing side of the floor reaction force vertical component during the two-leg support period, and is a convex shape that is convex on the decreasing side of the floor reaction force vertical component during the one-leg support period. Set to shape.
  • FIGS. 53 to 58 a second reference example will be described with reference to FIGS. 53 to 58 based on the above-described first reference example and its modifications.
  • the same components as those in the first reference example or the same functional portions will be denoted by the same reference numerals as those in the first reference example, and description thereof will be omitted.
  • the matters described in the second reference example with reference to FIGS. 1 to 3 and FIGS. 5 to 12 are the same as those in the first reference example.
  • the outline of the difference between the second reference example and the first reference example is as follows.
  • the actual body posture angle deviation (the difference between the target body posture angle and the real body posture angle) Deviation of the tilt angle and deviation of the angle of the body 3 with respect to the vertical direction)
  • the target gait was also modified to bring the Z and Z or its rate of change closer to zero.
  • it dynamically balances with the target gait according to the angle component of Z and its angular velocity in the actual body posture deviation (the resultant force of the inertia and the gravity of the motion of the target gait is the target ZMP). Balance with the vertical component of the moment generated around it.)
  • the vertical component of the floor anti-chamoment around the target ZMP has also been corrected.
  • FIG. 53 is a block diagram showing a functional configuration of the control unit 60 in the second reference example.
  • the points of the functional configuration of the control unit 60 in the second reference example different from those of the first 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 compensation total floor reaction moment horizontal component distributor 110 converts the compensation total floor reaction moment horizontal component Mdmdxy into the target floor reaction moment horizontal component for compliance control and the model operation floor reaction horizontal component. And distributed to.
  • the posture tilt stabilization control calculation unit 1 1 2 and the compensation total floor reaction force moment horizontal component distributor 1 110 provide the target floor reaction cam for compliance control.
  • the horizontal component and the model-operated floor anti-camouflage horizontal component are determined.
  • the model operation floor reaction force moment horizontal component is determined by the following equation.
  • the floor reaction force moment horizontal component allowable range is determined by the gait generator 100 as described later.
  • Model operation floor reaction force moment horizontal component —Mdmdxy + Upper limit of floor reaction camouflage horizontal component allowable range Mdmdxy lower floor reaction force moment horizontal component allowable range lower limit
  • the target floor anti-camoment horizontal component for compliance control is determined by the following equation.
  • FIG. 54 shows a block diagram of the compensating total floor reaction force moment horizontal component distributor 110 performing the above calculation.
  • the compensation total floor reaction force moment vertical component Mdmdz (see the equation d26) determined in the same manner as in the first reference example in the stabilization control calculation unit 113 is the model operation floor reaction force moment vertical.
  • the model operation floor reaction force moment vertical component determiner 1 1 1 determines the model operation floor reaction force moment vertical component based on the compensating total floor reaction camouflage vertical component Mdmdz. In other words, based on the upper body angle deviation among the actual body posture angle deviations, compensation is performed by the yaw stabilization control calculation unit 113 and the model operation floor reaction force moment vertical component determiner 111. Anti-camoment vertical component of whole floor Mdmdz and the model operation floor anti-camoment 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.
  • Equation d 2 6 b The block diagram of the model-operated floor reaction force moment vertical component determiner 1 11 1 that performs the above calculations is as shown in FIG. Therefore, the model operation floor reaction force moment vertical component is calculated by reversing the sign of the total floor reaction force moment vertical component M dmdz that deviates from the allowable range of the floor reaction force moment vertical component compensation amount. Is set.
  • the horizontal floor component of the target floor reaction chamoment for compliance control and the vertical component Mdmdz of the total floor reaction force moment are sent to the composite compliance operation determination unit 104.
  • the model operation floor reaction force moment The horizontal and vertical components are calculated using the gait generator. Sent to address 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 makes the gait generator 100 generate a target gait generated by the gait generator 100 while following the motion of the lopot 1 with the motion of the target gait generated by the gait generator 100.
  • the target floor reaction force moment for compliance control is added to the floor reaction force so that the actual floor reaction force approaches the target total floor reaction force corrected by adding the horizontal component of compensation control moment and the compensation total floor reaction moment vertical component Mdmdz.
  • the corrected target foot position / posture (trajectory) with mechanical deformation compensation is determined by correcting the flat position / posture.
  • the gait generator 10.0 has a model reaction floor reaction force moment horizontal component around the target ZMP determined by the gait generator 100.
  • the target gait movement (particularly the body position / posture trajectory) is generated using the dynamic model so that
  • the gait generator 100 is configured to provide a desired total floor reaction force center point (desired ZMP) that dynamically matches the desired gait (temporary desired gait) generated assuming that the model operation floor reaction force moment is zero. ) Correct the motion of the desired gait (especially the arm swing trajectory) so that the model operation floor reaction moment vertical component is additionally generated in the surrounding desired floor reaction cam vertical component.
  • control unit 60 is the same as that of the first reference example.
  • desired gait generated in the first reference example is In the reference example, this is the same as the target gait generated 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.
  • FIG. 56 is the main flow chart. From S310 to S308, the same processing as S010 to S028 in Fig. 13 of the first reference example is performed.
  • routine proceeds to S3003, where parameters for defining the allowable range of the floor reaction force moment horizontal component and the floor reaction force moment vertical component compensation amount around the target ZMP for compliance control are determined.
  • the floor reaction force moment horizontal component divided by the floor reaction force vertical component is
  • the gait to be described later will be described.
  • the instantaneous value determination subroutine (subroutine of S3302), the instantaneous values of those allowable ranges are determined, and the instantaneous values of the compensation total floor reaction force horizontal component distributor 110 and the model operation floor reaction force moment are determined. It is used for the above processing in the vertical component determiner 111.
  • the floor reaction force vertical component is assumed to be the floor reaction force moment vertical component allowable range for gait generation in the gait generator 100 (this is S 300).
  • S 300 the floor reaction force moment vertical component allowable range for gait generation in the gait generator 100
  • a desired gait within the target gait is generated, it is added to the floor reaction force moment where the motion of the desired gait occurs. Means quantity. Therefore, unless the allowable range of the floor reaction force moment vertical component for gait generation is set sufficiently narrower than the actual friction limit, the allowable range of the floor reaction force moment vertical component compensation amount 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 floor reaction camoment vertical component allowable range for gait generation (see FIG. 41).
  • 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 allowable range of the compensation amount for the horizontal component of the floor reaction cam around the ZMP and the vertical component of the floor reaction force moment around the ZMP is defined in S 300.
  • the process proceeds to S303, where the instantaneous gait value is determined this time.
  • the instantaneous gait instantaneous value is determined so that a model operation floor reaction force moment horizontal component determined according to the above equation d27a is generated around the target ZMP.
  • the instantaneous gait instantaneous value is determined so as not to exceed the allowable range of the vertical component of the moment.
  • the instantaneous gait value is determined according to the flowcharts of FIGS. 57 and 58. That is, in S 3 0 3 0, first, S 3 4 0 in FIG. The processing from 0 to S 3 4 1 1 is executed. The processing from S340 to S3141 is exactly the same as the processing from S140 to S414 in FIG. 45 described above.
  • the obtained floor reaction force moment horizontal component allowable range is sent to the compensating total floor reaction force moment horizontal component distributor 110 (see FIG. 53). Then, the current value (the value at the current time t) of the model-operated floor reaction force moment calculated by the distributor d 110 according to the expression d 27 a is provided to the gait generator ⁇ 00.
  • 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 14 14, where the model-operated floor reaction force moment horizontal component given from the compensating total floor reaction force moment distributor 110 is moved around the target ZMP. This time, the body horizontal acceleration and the body posture inclination angle acceleration are determined this time.
  • the body horizontal acceleration and body posture angular acceleration (body tilt) Angular acceleration) is determined.
  • the horizontal component of the moment acting around the target ZMP is the moment component of the inertia force of the motion of the robot 1 and the gravitational force.
  • the body horizontal acceleration and body posture angle acceleration (body inclination angle acceleration) of the gait are determined this time.
  • the body horizontal acceleration and the body posture inclination angular acceleration are determined so that the force obtained by reversing the sign of the inertial force horizontal component does not exceed the floor reaction force horizontal component allowable range [Fxmin, Fxmax].
  • the upper body inclination from the previous instantaneous gait state of robot 1 (gait state at time k-1)
  • the angular acceleration of the mode was set to 0 (more precisely, the angular acceleration of the body tilt mode was matched to the reference body posture angular acceleration), and the motion of the body translation mode was set to the mouth port 1
  • the body horizontal acceleration required for the model operation floor reaction force moment horizontal component to be generated around the target ZMP at this time (time k) (o; tmp in S3104, o; tmp in S3130 ⁇ ) is required.
  • the other processing is the same as the processing in FIG. 26.
  • correction amount of the antiphase arm swing angular acceleration corresponding to the model operation floor reaction force moment vertical component) 3 aadd is obtained by the following equation.
  • the desired gait generation processing in the gait generator 100 is performed, and the desired body position and posture, the desired foot position and posture, and the desired arm posture (including the antiphase arm swing angle are included). ), The instantaneous values of the target ZMP and the target total floor reaction force are sequentially determined and output.
  • the target total floor reaction force may output only the components necessary for compliance control.
  • the target ZMP is included in the target total floor reaction force, but it is particularly important, so it was intentionally given as an output.
  • composite compliance The model operation floor reaction force moment horizontal component is not output as the target floor reaction force for the impedance control device (portion surrounded by the dotted line in Fig. 53).
  • the target floor reaction force that aims to reduce the horizontal component of the floor reaction force moment about the target ZMP to zero (the target floor reaction force that satisfies the target ZMP in the original sense) ) Is output from the gait generator 100.
  • the floor reaction force moment vertical component of the current time's gait corrected in S3034 is output from the gait generator 100 as a target value.
  • the motion of the desired gait is generated such that a horizontal component of the model operation floor anti-camoment is generated around the target ZMP, while the actual floor reaction force of the robot 1 is generated. Is controlled so that a horizontal component is not added to the model operation floor reaction force moment. Therefore, the motion of the desired gait and the unbalance of the floor reaction force occur due to the horizontal component of the floor reaction force moment of the subtraction model operation.
  • the model operation floor reaction force moment horizontal component This is equivalent to applying the floor reaction force moment horizontal component, whose sign is inverted, to the actual lopot 1.
  • the actual robot 1 is adjusted to the corrected target gait (the body posture inclination angle of the actual mouth port 1 and the body posture inclination of the target gait).
  • the corrected target gait the body posture inclination angle of the actual mouth port 1 and the body posture inclination of the target gait.
  • 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 skin force moment horizontal component for compliance control is the total tilt restoring force (the actual body posture of robot 1).
  • Target the tilt angle The force to restore the body posture inclination angle).
  • the difference between the horizontal floor component of the target floor reaction chamoment for compliance control and the horizontal component of the model operation floor reaction force moment is the total posture inclination restoring force.
  • the body translational acceleration of the body translation mode and the body posture inclination angular acceleration are determined so that the floor reaction force horizontal component does not exceed the floor reaction force horizontal component allowable range.
  • the robot 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 the gait, or when the robot 1 moves on a floor with a small coefficient of friction
  • the mouth port 1 can also be prevented from slipping.
  • the allowable range of the floor reaction force horizontal component is set to 0.
  • the posture is automatically restored without depending on the body translation mode, and the posture is restored based on the body tilt mode, and the posture is not dependent on the frictional force between the floor and the sole. Restore is performed. 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 operation floor reaction force moment horizontal component is not output as the target floor reaction force for compliance control.
  • the floor reaction camo horizontal component around the target ZMP is 0 for compliance control.
  • the desired floor reaction force, which aims to become, 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 grounding property of the foot 22 is lowered or the bottom surface of the foot 22 is raised.
  • the target floor anti-camoment horizontal component for compliance control around the target ZMP is determined so as not to exceed the allowable floor anti-camoment horizontal component allowable range.
  • the functions 1 to 6 are the same as those of the technique of PCTZJP03 / 004435 previously proposed by the present applicant.
  • the motion of the desired gait is generated 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 the gait.
  • the desired floor reaction force moment vertical component balanced with the desired gait to which the model operation floor reaction force moment vertical component is added by the generator 100 is used as the target value, with the compensation total floor reaction force moment vertical component Mdmdz added.
  • the actual floor reaction force is controlled by the composite compliance control so as to approach the target value.
  • Mdmdz increases, the model reaction floor reaction force moment vertical component in the opposite direction to Mdmdz is added to the target gait, so the actual floor reaction force is controlled to approach the target value by composite compliance control.
  • the model operation floor anti-camoment vertical component is determined appropriately.
  • the actual gait pot 1 is adjusted so that the spin does not occur, and the corrected target gait (the upper body posture of the actual mouth pot 1 and / or the upper body posture angular velocity and the upper body of the desired gait) Gait that makes the difference between the posture angle and Z or the body posture angle speed converge to 0). In other words, one rotation of the actual robot 1 can be stabilized.
  • the vertical component of the total floor reaction force moment Mdmdz becomes the total rotation restoring force of the total.
  • Compensated total floor reaction moment vertical component Mdmdz is determined based on the feedback control law so that the E-angle deviation and Z or Y-angular velocity deviation approach 0, so the control stability of E-angle deviation is guaranteed. While the angular deviation and / or angular velocity deviation can approach zero.
  • the model operation floor reaction force moment vertical component can take any value ignoring the allowable range (or friction limit) of the floor reaction force moment vertical component.
  • a single rotation restoring force can be generated.
  • the target floor reaction force moment vertical component is finally the sum of the floor reaction force moment vertical component allowable range and the floor reaction force moment vertical component compensation amount allowable range.
  • the vertical component of the large floor reaction force moment cannot be generated, such as immediately before leaving the support leg side leg 2 or immediately after landing in a running gait, or on a floor with a small friction coefficient
  • the floor reaction force control by the compliance control can be appropriately performed even when the robot 1 moves, and the spinning of the mouth port 1 can be prevented. More specifically, it is possible to prevent or suppress a problem that the original contact property of the foot 22 is deteriorated and the bottom surface of the foot 22 is raised.
  • an effect 1 when the translational force vertical component of the floor reaction force is 0, that is, In other words, when neither leg is in contact with the ground, the allowable range of the floor reaction force moment vertical component and the allowable range of the floor reaction force moment vertical component compensation amount are set to 0.
  • the automatic rotation restoration is performed automatically without depending on the vertical component of the real floor anti-camo and independent of the antiphase arm swing mode, and without depending on the frictional force between the floor and the sole.
  • One rotation restoration is performed. Therefore, even in this period (air period), unlike the method of simply correcting the target floor reaction force moment vertical component of the compliance control, the one rotation restoration effect works effectively.
  • the gait is modified so that the component becomes the model operation floor reaction moment horizontal component, and the model operation floor reaction moment vertical component is generated in addition to the moment vertical component generated around the target ZMP.
  • the original gait and the modified gait are usually different gaits. 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.
  • the following operation also occurs. That is, a normal gait in which the antiphase arm swing angle trajectory of the new current time gait is newly set with the end state of the antiphase arm swing angle and the angular velocity corrected for restoring unidirectional rotation as a new initial state. Blunt The parameters of the new anti-phase arm swing angle trajectory of this new time's gait are determined so as to asymptotically approach the anti-phase arm swing angle trajectory. Can continue to generate a guaranteed gait.
  • the model operation floor reaction camouflage horizontal component is 0.
  • the horizontal component of the floor reaction moment at the time of model operation is set according to the state quantities of the dynamic model in Fig. 12 (for example, the position of the center of gravity of the mouth pot on the dynamic model, the position of the upper body mass point 3 m, etc.) You may make it.
  • the model operation floor reaction force vertical component compensation amount becomes zero.
  • the vertical operation compensation amount of the model operation floor reaction force moment at this time is represented by the state quantity of the dynamic model shown in Fig. 12 (for example, the anti-phase arm swing angle and angular velocity, (E.g., upper body angle and angular velocity).
  • FIG. 59 is a block diagram illustrating a functional configuration of the control unit 60 in the third reference example.
  • the compensated total floor reaction force moment horizontal component Mdmdxy obtained by the posture / inclination stabilization control calculation unit 112 is input to the gait generator 100.
  • the compensation total floor reaction force moment vertical component Mdmdz obtained by the stabilization control calculation unit 113 is also input to the gait generator 100.
  • the gait generator 100 is incorporated into the gait generator 100, and the gait generator 100 outputs the target floor reaction force moment for compliance control to the composite compliance operation determination unit 104.
  • the compensating total floor reaction force moment distributor 120 in the gait generator 100 includes the compensating total floor reaction force moment horizontal component distributor 110 of the second reference example and the model. Operation floor reaction force moment vertical component determiner 1 1 Performs more complicated processing than 1. Other than this, the functional configuration of the control unit 60 is the same as that of the second reference example.
  • FIG. 60 shows a flowchart of the main routine processing of the gait generator 100 in the third reference example.
  • steps from S 210 to S 208 are the same as the steps from S 110 to S 028 in the main flowchart (FIG. 13) of the first reference example. Processing is performed.
  • SO 2 8 (S 2 0 2 in the third reference example)
  • the initial state of the current time's gait is the previously corrected gait (the gait finally output by the gait generator 100).
  • the end state of the original gait determined in S 2 0 32 described later is the end state of the original gait determined in S 2 0 32 described later. Not used.
  • the process proceeds to S 2 0 32, and the instantaneous value of the original gait (the current value of time t) ) Is determined.
  • the original gait is a gait generated so that the floor reaction force moment horizontal component around the target ZMP becomes zero.
  • This original gait is generated by an algorithm in which a part of the subroutine processing of S302 in FIG. 56 of the second reference example is modified.
  • the subroutine processing in FIG. 58 which is the subroutine processing in S3302 (specifically, the subroutine processing in S33414 in FIG. 57 which is the subroutine processing in S3302)
  • the model operation floor reaction force moment water is set to 0 (the horizontal component of the desired floor reaction force moment around the target ZMP is set to 0), and the body horizontal acceleration Q! Tmp is determined.
  • the other processing may be the same as the processing of S3032 in FIG.
  • the corrected gait is a desired gait finally output from the gait generator 100.
  • S 234 is performed by a subroutine processing shown by a flowchart in FIG. 61, and the details thereof will be described below.
  • 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 corrected gait similar to the calculation process of the body horizontal position difference between the models in S2200, the corrected gait.
  • the body posture inclination angle difference between the models is obtained using the previous value or the current value of the body posture inclination angle.
  • the process proceeds to S 2 206, and based on the difference in the horizontal body position between the models, the required model body horizontal position stabilized floor reaction force moment Mpfdmd required to converge the difference to 0 is calculated. It is determined. If the floor anti-camo that generates the upper body horizontal acceleration in the corrected gait upper body translation mode simply matches the floor reaction force moment that generates the upper body horizontal acceleration in the original gait upper body translation mode, The upper body horizontal position difference between Dell diverges. Model body horizontal position stabilization floor anti-duck
  • Mpfdmd is the floor anti-duck that occurs when the body horizontal position 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 the moment obtained by subtracting the floor reaction force moment that generates the body horizontal acceleration in the body translation mode of the original gait from the ment.
  • the model body horizontal position stabilization floor reaction force moment demand value Mpfdmd is determined by, for example, the following feedback control law.
  • the PD control law is used as the feedback control law, but another feedback control law such as PID may be used.
  • Equation d 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 anti-camo that simply generates the body posture tilt angle acceleration of the corrected gait body tilt mode is the floor anti-camo that generates the body posture tilt angle acceleration of the original gait. If they match, the body posture inclination angle difference between the models will not converge to zero.
  • the model body posture inclination angle stabilized floor reaction force moment demand value Mrfdmd operates to return the corrected gait body posture inclination angle to the original gait body posture inclination angle in the body inclination mode.
  • the floor reaction chamoment which generates the body posture tilt angle acceleration of the body gait mode of the original gait is subtracted from the floor reaction force moment generated with this.
  • the model body posture inclination angle stabilized floor reaction force moment demand value Mrfdmd is determined, for example, by the following feedback control law.
  • a PD control law is used as the feedback control law, but another feedback control law such as P ID 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. Simply reverse phase arm swing of the corrected gait When the ground reaction force moment that generates the antiphase arm swing angular acceleration in the mode matches the floor reaction force moment that generates the antiphase arm swing angular acceleration in the antiphase arm swing mode of the original gait, The phase arm swing angle does not converge to zero.
  • 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 moment is obtained by subtracting the floor reaction force moment that generates the anti-phase arm swing angular acceleration in the anti-phase arm swing mode of the original gait from the floor anti-chamoment generated with this.
  • the required value Mafdmd of the model antiphase arm swing angle stabilized floor reaction force moment is determined by, for example, the following feedback control law.
  • the PD control law is used as the feedback control law, but another feedback control law such as PID may be used.
  • Equation d 2 9 b Equation d 2 9 b
  • Kar and Kav are feedback gains (proportional gain, derivative gain).
  • the floor reaction duck which generates the body horizontal acceleration of the original gait's body translation mode from the floor reaction force moment horizontal component generated with the finally determined corrected gait's body translation mode.
  • the moment obtained by subtracting the horizontal component is called the model body horizontal position stabilized floor reaction force moment.
  • the body posture tilt angle acceleration for the original gait body tilt motion mode is generated from the floor reaction force moment horizontal component generated with the finally determined corrected gait body tilt motion mode.
  • Moment with the floor anti-camo horizontal component reduced 6 3 It is called the body posture tilt angle stabilized floor reaction force moment.
  • the anti-phase arm swing angular acceleration of the anti-phase arm swing mode of the original gait can be calculated from the floor reaction force moment vertical axis component generated in the anti-phase arm swing mode of the finally determined corrected gait.
  • the generated moment of the floor reaction force moment reduced by the vertical component is called the model inverted phase arm swing angle stabilized floor reaction camo.
  • model body posture inclination angle stabilization floor reaction force moment demand value Mrfdmd and the model anti-phase arm swing angle stabilization If it is determined to match or be as close as possible to the demand value Mafdmd, the model operation floor reaction force moment appropriate for the corrected gait is generated and Converge the corrected gait upper body horizontal acceleration and body posture inclination angle acceleration to the extent possible for the original gait body horizontal acceleration and body posture inclination angle acceleration while satisfying the original conditions. be able to.
  • the process proceeds to S212, and the model body horizontal position stabilization floor reaction force moment (body body) is set so as to satisfy the following conditions (referred to as restoration conditions) as much as possible.
  • the floor reaction force moment in the translation mode), the model body posture tilt angle stabilized floor reaction camouflage (the body reaction mode floor reaction force moment), and the model antiphase arm swing angle stabilized floor reaction camoment. decide. Furthermore, the model body horizontal position stabilization floor reaction force moment, model body posture inclination angle stabilization floor reaction force moment, and model antiphase arm swing angle stabilization floor reaction gamoment should be satisfied. Then, the corrected gait's upper body horizontal acceleration, upper body posture inclination angular acceleration, and antiphase arm swing angular acceleration are determined.
  • restoration conditions the smaller the number, the higher the priority. In other words, if there are contradictory conditions that cannot be satisfied, the condition with the lower number is given priority to satisfy (establish). However, restoration conditions 1, 2, and 3 must be satisfied (established). .
  • Restoring condition 3 The sum of the floor reaction force moment vertical component of the corrected gait and the compensated total floor reaction camoment—mental vertical component Mdmdz (this is equivalent to the target floor reaction force moment vertical component for compliance control) is the floor skin force Moment vertical component Do not exceed the allowable range.
  • Restoration conditions 4) 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 body posture inclination angle of the corrected gait to converge to the body posture inclination angle of the original gait (the originally planned gait).
  • the model body horizontal position stabilized floor reaction force moment should match or be as close as possible to the model body horizontal position stabilized floor reaction force moment required value Mpfdmd.
  • This condition is a condition for the body horizontal position of the corrected gait to converge to the body horizontal position of the original gait (the originally planned gait).
  • Restoring conditions 6) The model anti-phase arm swing angle stabilized floor reaction force moment should match or be as close as possible to the model anti-phase arm swing angle stabilized floor reaction force moment requirement value Mafdmd. This condition is for the anti-phase arm swing angle of the corrected gait to converge to the anti-phase arm swing angle of the original gait (the originally planned gait).
  • Restoring conditions 7) The model body posture tilt angle stabilized floor reaction force moment, the model body horizontal position stabilized floor reaction camouflage, and the model antiphase arm swing angle stabilized floor reaction force moment must be continuous.
  • the processing of S 2 212 to determine the body horizontal acceleration, the body posture inclination angular acceleration, the anti-phase arm swing angular acceleration, etc. that satisfies the above restoration conditions 1 to 6 is specifically described as, for example, It is performed as follows.
  • model body horizontal position stabilization floor reaction force moment and model body posture 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 restoration conditions 3 and 6, and the anti-phase arm swing angular acceleration is further reduced. It is 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 stabilized floor reaction moment and the model body posture tilt angle stabilized floor reaction force moment obtained in S228 is determined as the model operation floor reaction force moment horizontal component. Is done.
  • the floor reaction force moment around the target ZMP may be directly calculated based on the instantaneous value of the corrected gait motion 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, compensation
  • the sum of the total floor reaction moment horizontal component Mdmdxy and the model operation floor reaction moment horizontal component determined in S2214 is determined as the target floor reaction moment horizontal component for compliance control.
  • the process proceeds to S2218, and the desired floor reaction force moment vertical component for compliance control is determined by the equation shown in the figure.
  • the vertical component of the floor reaction force moment is balanced with the floor reaction force moment at the time of no correction and the model is out of phase with the corrected gait balanced with the corrected gait in the formula shown in the figure (dynamically balanced with the motion of the corrected gait).
  • the vertical component of the floor reaction force moment about the target ZMP may be directly calculated based on the instantaneous value of the motion of the corrected gait which is finally determined, which is the sum of the fossilized floor reaction chamoments.
  • S2114 in FIG. 61 is completed, and the process proceeds to S2116.
  • the processing of S2116 is the same as S3416 of FIG. 57 in the second reference example, and the current value of the 'body horizontal position' is determined by the second-order integration of the body horizontal acceleration.
  • the current value of the body posture inclination angle is determined by the second-order integration of the body posture inclination angle acceleration.
  • S 21 and S 18 are the same as S 3 418 of FIG. 57 in the second reference example, and the second-order integration of the anti-phase arm swing angular acceleration results in the current value of the anti-phase arm swing angle. Is determined.
  • the state quantity of the dynamic model (or the instantaneous gait value of the previous or previous gait) is also required.
  • Two kinetic models are needed, one for generating the original gait.
  • those dynamic models are the dynamic models shown in FIG.
  • the original gait and the corrected gait are parallel.
  • the corrected gait is corrected to stabilize the posture (inclination angle and single angle) of the actual mouth port 1, and the floor reaction force moment (horizontal component and If there is still room to generate the vertical component), this margin is used to converge to the original gait as much as possible. Therefore, in addition to the operation and effect of the second reference example, it is possible to generate a gait close to the originally set gait, that is, close to the originally required gait. Therefore, if there is a predetermined traveling route, it is possible to prevent a large deviation from the traveling route.
  • the fact that the corrected body posture inclination angle converges to the body posture inclination angle of the original gait (the initially determined gait) is based on the assumption that the corrected body horizontal position is the original gait (the originally determined gait). Gait) has a higher priority than converging to the horizontal position of the upper body (adjustment of the body translation mode motion as much as possible within the range that satisfies the floor reaction force horizontal component allowable range). Large fluctuations can be suppressed.
  • control unit 60 is the same as that of the third reference example, that is, the one shown in FIG.
  • the gait generator 100 is the same as the gait generator 100 except that the compensated total floor anti-camoment vertical component Mdmdz is not input.
  • the gait generation algorithm executed by 00 differs from that of the third reference example.
  • gait students The processing of each unit other than the forming apparatus 100 is the same as that of the third reference example.
  • the compensation total floor reaction force moment vertical component Mdmdz may be input to the composite compliance operation determining unit 104 as in the first reference example.
  • FIG. 64 is a block diagram illustrating an outline of processing of the gait generator 100 in the present embodiment. With reference to FIG. 64, 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. 64 is the same for the second to fourth embodiments described later. In the present embodiment and the second to fourth embodiments described later, the dynamic model of 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 values of the parameters of the desired gait (parameters defining the desired gait) or a time-series table. This corresponds to the processing from S355 to S350 in the flowchart of FIG.
  • 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, and the target
  • the parameters that define the floor reaction force horizontal component allowable range and the ZMP allowable range are specified.
  • Parameters and parameters defining the floor reaction force moment vertical component allowable range are specified.
  • 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. There are two types, one for gait correction set in S355.
  • the ZMP allowable range (or floor reaction force moment horizontal component allowable range) is only for the full model correction (for gait correction) set in the processing of S350.
  • a parameter that defines the allowable range of the ZMP is set. This is equivalent to setting a parameter that defines the allowable range of the floor reaction force moment horizontal component.
  • the floor reaction force moment horizontal component divided by the target floor reaction force vertical component is expressed as ZMP (the floor reaction force center). This indicates the amount of deviation from the target ZMP of the point).
  • the ZMP allowable range set in the present embodiment is set as shown in FIG.
  • the details are described in detail in PCTZJP03Z004304, so that further description is omitted here.
  • the gait parameters over time determined by the gait parameter determination unit 100a are input to the target instantaneous value generation unit 100b.
  • the desired instantaneous value generator 100b is the gait parameter that has been input.Based on the overnight, the desired foot position / posture, target ZMP, target floor reaction force vertical component, target arm posture, target overall center of gravity vertical position, target
  • the instantaneous values at the current time t of the body vertical position, floor reaction force horizontal component allowable range, ZMP allowable range, reference body posture angle and reference antiphase arm swing angle are sequentially calculated (generated) (Fig. 64 Only some of the target instantaneous values are shown).
  • the processing of the target instantaneous value generation unit 100b is performed in the processing of S340 to S334 in FIG.
  • the processing corresponds to the processing of S3553 in FIG.
  • some instantaneous values (specifically, instantaneous values at the target body vertical position) are provisional values. Will be corrected later.
  • the instantaneous values of the floor reaction force horizontal component allowable range and the floor reaction force moment vertical component allowable range calculated by the target instantaneous value generator 100b are a simplified model of the gait instantaneous value and the gait correction value.
  • the target instantaneous value (partially a provisional instantaneous value) calculated (generated) by the target instantaneous value generation unit 100b is input to the full model correction unit 100c. Also, Flumo The compensated total floor reaction force moment horizontal component Mdmdxy obtained by the attitude tilt stabilization control calculation unit 112 (see FIG. 63) is also input to the Dell correction unit 100c.
  • 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 and orientation, the provisional instantaneous value of the antiphase arm swing angle, and the like from the input values based on the simplified model 100c1, and further determines The corrected body position / posture and the provisional instantaneous value of 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
  • the full model correction unit 100 0 is obtained by adding the compensation total floor reaction force moment horizontal component Mdmdxy to the floor reaction force moment that matches the motion of the corrected gait formed by the full model correction unit 100 c. It matches the floor reaction force moment for compliance control output from c.
  • the true ZMP (the ZMP that satisfies the original definition modified by generating the target floor reaction force moment for compliance control around the target ZMP) is the ZMP allowable range (the allowable range where sufficient stability margin can be maintained). Box).
  • the floor reaction force horizontal component is within the allowable range of the floor reaction force horizontal component for gait correction.
  • the target floor reaction force moment vertical component for compliance control to be generated around the target ZMP is within the allowable range of the floor reaction force moment vertical component.
  • the above condition A2 is equivalent to keeping the floor reaction force moment generated around the target ZMP within the floor reaction force moment 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. For example, changes in angular momentum around the center of gravity can be ignored) or inconsistencies (lacking rigor).
  • the kinetic model of FIG. 12 (the kinetic model described by the equations 01 to 05) described in the first reference example is used as the simplified model 100c1.
  • the full model 100 c 2 means a different model of the dynamics of the dynamics from the simplified model 100 c 1. It is desirable that this is a robot dynamics model with a higher approximation accuracy than the simplified model 100c1.
  • the dynamic model shown in FIG. 12 is used as the simplified model 100 c 1.
  • a robot dynamics model such as a multi-mass model (a model having a mass at each link of mouth port 1) shown in FIG. 49 as the full model 100c2.
  • the full model 100c2 may set the moment of inertia around the mass point.
  • the simplified model 100c1 and the full model 100c2 always The approximation accuracy of the models does not need to be different.
  • the simplified model 100c1 and the full model 100c2 have the same dynamic equation and differ in the allowable range of the floor reaction force horizontal component and / or the floor reaction force moment vertical component.
  • the allowable range for the simplified model gait and the allowable range for the gait correction may be different.
  • the floor reaction force horizontal component allowable range and floor reaction force moment vertical component allowable range when generating a gait using the simplified model 100 c1 are increased (the friction limit may be exceeded).
  • the allowable range of the floor reaction force horizontal component and the floor reaction force moment vertical component when correcting the gait using the full model 100c2 is narrowed so that slip or spin of the mouth port 1 does not easily occur You can just set it.
  • 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 (particularly, the floor reaction force moment (horizontal component and vertical component) and the floor reaction force horizontal component around the target ZMP or target ZMP) Called the "inverse dynamics model”.
  • the input of the forward dynamics model includes at least the desired floor reaction force
  • the input of the inverse dynamics model includes at least the target motion.
  • the full model 100 c included in the full model correction unit 100 c is an inverse dynamics full model (often abbreviated as “inverse full model”) or a forward dynamics full model (often abbreviated as “forward full model”) Is provided.
  • inverse full model an inverse dynamics full model
  • forward full model a forward dynamics full model
  • the calculation amount of the forward dynamics model tends to be larger than that of the inverse dynamics model.
  • the gait generator 100 of the present embodiment executes the processing shown in the flowchart of FIG. 66 to generate a gait.
  • steps S350 to S358 the same processing as the steps S310 to S308 in FIG. 56 described in the second reference example is performed. It is executed.
  • the frictional force limit may not be considered more strictly than in the case of the first, second, and third reference examples, and the frictional force limit may be set to a range exceeding the frictional force limit. This is because the floor reaction force horizontal component and the floor reaction force moment vertical component finally become the floor reaction force horizontal component allowable range and floor reaction force moment vertical component allowable range for the full model correction by the full model correction described later. It is because it is limited by.
  • the floor reaction force horizontal component allowable range, floor reaction force moment vertical component allowable range, and ZMP allowable range (floor reaction force center point allowable) for full model correction (for gait correction). Range) are determined.
  • the floor reaction force horizontal component allowable range for the full model correction is, for example, similar to the floor reaction force horizontal component allowable range for the simplified model gait, in the X-axis direction (front-rear direction) and the Y-axis direction (left and right).
  • Direction is set to a pattern as shown in FIG. 30 based on the floor reaction force vertical component trajectory and Equation 12 above.
  • the value of ka * ⁇ in Equation 12 is set as a parameter that defines the floor reaction force horizontal component allowable range for full model correction.
  • the floor reaction force horizontal component allowable range is set so that the value of the coefficient ka in Equation 12 is smaller than the floor reaction force horizontal component allowable range for the simplified model gait. It is desirable to ensure that it is within the friction limit, for example,
  • the floor reaction force moment vertical component allowable range is set in the same way as the floor reaction force horizontal component allowable range. That is, the pattern is set as shown in FIG.
  • the ZMP allowable range is set in the same manner as in the case of the setting of the floor anti-moment horizontal component allowable range in S300 of FIG. 56 in the second reference example.
  • the ZMP allowable range may be converted into an equivalent floor reaction camouflage horizontal component allowable range.
  • the instantaneous value of the gait at the current time t generated by the processing up to S3552 described above is hereinafter referred to as a simplified model gait instantaneous value.
  • the instantaneous value of the simplified model gait is calculated by using the simplified model (the dynamic model shown in FIG. 12) to calculate the resultant force of the inertial force and gravity generated by the motion in the mouth port 1. It is determined so that the floor reaction force moment water generated around the target 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 steadily zero, but the instantaneous value of the desired model reaction gait around the target ZMP is reduced by the full model correction described later.
  • 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 parameters (S 3) that define the floor reaction force horizontal range, floor reaction force moment vertical component allowable range, and ZMP allowable range for gait correction (for full model correction) are set. 530), the instantaneous value (value of current time t) of the floor reaction force horizontal component allowable range, floor reaction force moment vertical component allowable range, and ZMP allowable range for gait correction is calculated. Desired.
  • 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. 64, 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 repeats the processing from S 355 to S 358.
  • 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 feedforward correction type. It is a method that uses the inverse dynamics full model (inverse full model), does not correct the input of the simplified model gait, and uses a perturbation model.
  • FIG. 67 is a functional block for explaining the operation of the gait generator 100 according to the present embodiment, specifically, a method for correcting the gait of S 356 in the flow chart of FIG. FIG.
  • the simplified model 200 in FIG. 67 is not only a dynamic model, but also the processing from S 3510 to S 3352 described above, that is, the instantaneous value of the simplified model gait. Indicates calculation (decision) processing. Therefore, in FIG. 67, the part beyond the simplified model 200 is the processing of S 356 It corresponds to.
  • the processing for determining the instantaneous value 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 S 354 in the flowchart of FIG. Is shown.
  • the block diagram Since the actual processing is executed by one computer, the block diagram is discretized and then executed sequentially from upstream to downstream (gait output side) in the block diagram. 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-At) 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 body horizontal position), target center of gravity position, target foot position / posture, target arm posture (target antiphase arm swing)
  • An instantaneous value of a variable representing motion (including an angle) (referred to as a motion variable) and an instantaneous value of a target ZMP are input to the inverse dynamics full model (inverse full model) 201.
  • the floor reaction force horizontal component and the floor reaction force moment around the target ZMP (horizontal component and vertical component) are balanced by the motion represented by the input motion variables (that is, the motion generates a full model).
  • the full model floor reaction force horizontal component is often abbreviated as Ffull
  • the full model floor reaction force moment horizontal component is Mfullxy
  • the full model floor reaction force moment vertical component is Mfullz.
  • the inverse full model 201 calculates a body vertical position that satisfies the target center of gravity position. Although not shown, the inverse full model 201 also calculates the horizontal position of the center of gravity.
  • the target overall center of gravity vertical position is input, and the desired floor reaction force vertical component is obtained from the second derivative of the target overall center of gravity vertical position.
  • the target floor reaction force vertical component may be input to the full model for reasons such as reducing the calculation.
  • the perturbation model is composed of a perturbation model 202 for body horizontal position correction, a perturbation model 203 for body posture tilt angle correction, and a perturbation model 2301 for antiphase arm swing angle correction.
  • the perturbation model may be a single model as shown in Fig. 12 without being divided into three models.
  • the body posture inclination angle correction perturbation model 203 is abbreviated as the body posture angle correction perturbation model 203 in the figure.
  • the body horizontal position correction perturbation model 202 represents the relationship between the perturbation of the floor reaction force and the perturbation of the body horizontal position in the body translation mode.
  • the body horizontal position correction perturbation model 202 inputs the correction amount of the desired floor reaction force moment and calculates the correction amount of the target body horizontal position that dynamically balances the correction amount. This input (correction amount of the desired floor reaction force moment) is This is called the perturbation model moment Mp.
  • the output of the perturbation model 202 for correcting body upper body position (the correction amount of the target body horizontal position) is referred to as the correcting 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 point (upper mass point), and a telescopic support rod connecting these.
  • the ice point 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.
  • the relationship between the perturbation A My of the floor reaction force moment and the perturbation A Xb of the horizontal position of the body mass point is determined from the above equation 0 3 y by regarding the perturbation A My of the floor reaction force moment as a constant except for My, Xb, and Zb. .
  • ⁇ My -mb * ⁇ Xb * (g + d2Zb / dt2) + mb * (Zb ⁇ Zzmp) * d2 ⁇ Xb / dt2
  • AFx mb * d2AXb / dt2... Equation al 3
  • the body translation mode floor reaction force ratio h which is the ratio of ⁇ and AFp generated by the body horizontal acceleration, is determined by the body horizontal acceleration of the right side of equation al2. Since the ratio of the term that occurs (ie, the second term) to the equation al3, the following equation is obtained.
  • h (Zb-Zzmp) Equation al 4 That is, the body translation mode floor reaction force ratio h is equivalent to the height from the fulcrum of the upper body mass point (inverted pendulum mass point) of the simplified model. '
  • the body floor reaction force vertical component 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.
  • Equation al 9 the perturbation model for body horizontal position correction 202 is the body-translation mode floor reaction force ratio obtained by equation al 4. Using h and the body floor reaction force vertical component Fbz obtained by equation al7, it is expressed by equation al9.
  • Equation al4 Equation al7, Equation al9, and Equation a20 describe the perturbation model 202 for body horizontal position correction.
  • the perturbation of the body mass position and the perturbation of the body position are regarded as coincident, but strictly speaking, they do not always coincide. Therefore, in order to find the relationship between Mp, Fp and Xc, a model that represents the geometric relationship between the horizontal position of the body mass point and the body position is needed.
  • the body posture inclination angle correction perturbation model 203 represents the relationship between the perturbation of the floor reaction force and the perturbation of the body posture inclination angle in the body inclination mode.
  • the body posture tilt angle correction perturbation model 203 receives the correction amount of the floor reaction force moment water, and calculates the correction amount of the target body posture tilt angle that is dynamically balanced with this.
  • This input (correction amount of the floor reaction force moment) is referred to as a body posture inclination angle correction perturbation model moment Mr (sometimes abbreviated as a body posture angle correction perturbation model Mr).
  • the output of the perturbation model 203 for body posture tilt angle correction (correction amount of the target body posture tilt angle) is referred to as the perturbation model body posture tilt angle 0c for correction.
  • the floor reaction force horizontal component generated by the body posture tilt angle correction perturbation model 203 is referred to as a body horizontal position correction perturbation model floor reaction horizontal component Fr. Fr is 0 as described above. That is, the following equation always holds. ,
  • the perturbation model for body posture tilt angle correction 203 is represented by a flywheel as shown in Fig. 69. Supplementally, in Fig. 69, only the flywheel rotating around the Y-axis is shown, but the perturbation model 203 for body posture tilt angle correction is actually not only a flyhole rotating around the Y-axis, It also requires a flywheel that rotates around the X axis. The inertia of these flywheels is the same as the flywheels FHx and FHy of the simplified model (3 mass point model + flywheel) shown in FIG.
  • the rotation angle of the flywheel of the correction perturbation model 203 is the body posture inclination angle 0c of the S-property perturbation model, and the anti-floor floor generated by the flywheel. Corresponds to the correction perturbation model moment Mr.
  • a flywheel rotating around the Y axis will be mainly described, but the same applies to a flywheel rotating around the X axis.
  • This perturbation model for body posture tilt angle correction 203 (more specifically, a model relating to the sagittal plane) is expressed by the above-mentioned equation 03 y of the dynamic equation of the simplified model (the model of 3 mass points + flywheel model).
  • the perturbation ⁇ My of the floor reaction force moment and the perturbation ⁇ 0 by of the body posture inclination angle is determined from Equation 03y by regarding the other than My and 0by as constants, the following equation is obtained.
  • the anti-phase arm swing angle correction perturbation model 2 31 represents the relationship between the perturbation of the floor reaction force and the anti-phase arm swing angle in the anti-phase arm swing mode.
  • the anti-phase arm swing angle correction perturbation model 2 3 1 receives the correction amount of the floor reaction force moment vertical component, and calculates the correction amount of the target anti-phase arm swing angle that is dynamically balanced with this. This input (correction amount of the floor reaction force moment vertical component) is called the anti-phase arm swing angle correction perturbation model moment Ma.
  • the output of the antiphase arm swing angle correction perturbation model 203 (the target antiphase arm swing angle correction amount) is referred to as the correction perturbation model antiphase arm swing angle 0 ca.
  • the floor reaction force horizontal component generated by the antiphase arm swing angle correction perturbation model is called the antiphase arm swing angle correction perturbation model floor reaction force horizontal component Fa.
  • Fa is 0 as described above. That is, the following equation always holds.
  • 'Fa 0 ... Equation a 2 1 c
  • the perturbation model 2 31 for antiphase arm swing angle correction is represented by a flywheel as shown in Fig. 70.
  • the inertia of the flywheel is the same as the flywheel FHaz of the simplified model (3 mass model + flywheel) shown in Fig. 12.
  • the rotation angle of the flywheel of this anti-phase arm swing angle correction perturbation model 2 3 1 is the correction perturbation model anti-phase arm swing angle 0 ca, and the floor reaction force moment vertical component generated by the flywheel is the anti-phase arm swing.
  • the perturbation model moment Ma for angle correction corresponds to the perturbation model moment Ma for angle correction.
  • the anti-phase arm swing angle correction perturbation model 2 3 1 is obtained by calculating the perturbation ⁇ ⁇ of the floor reaction force moment in the equation 0 3 z of the dynamic equation of the simplified model (3 mass points + flywheel model).
  • perturbation of antiphase arm swing angle ⁇ 0 az Represents the relationship with 'Therefore, if we regard the relationship between the perturbation ⁇ ⁇ ⁇ of the floor reaction force moment and the perturbation ⁇ 0 az of the anti-phase arm swing angle from Equation 0 3 ⁇ ⁇ assuming that the values other than ⁇ and ⁇ ⁇ az are constants, the following equation is obtained.
  • Equation ⁇ 22 is the perturbation model moment Ma for correction of the antiphase arm swing angle and A ⁇ ⁇ By corresponding to the angle 0 ca, the following equation is obtained.
  • the anti-phase arm swing angle correction perturbation model 2 31 is expressed by the equation a 23 c.
  • a corrected gait (more specifically, a target instantaneous value obtained by correcting an instantaneous value of a part of the simplified model gait) is finally generated (output) in S35536.
  • the desired body posture inclination angle of the corrected gait (hereinafter referred to as the “captured target body posture inclination angle”) is the instantaneous value of the above-obtained simplified model body posture inclination angle (S3532).
  • the calculated perturbation model body posture inclination angle 0 c (a value obtained in the control cycle of the current time t) is calculated by the calculated instantaneous value of the desired body posture inclination angle at the current time t of the current time's gait. It is obtained by adding in 204.
  • the desired body horizontal position of the corrected gait (hereinafter referred to as the corrected desired body horizontal position) is the instantaneous value (S 3
  • the calculation unit calculates the correction perturbation model body horizontal position Xc (the value obtained in the control cycle at the current time t) at the instantaneous value of the target body horizontal position at the current time t of the current time's gait obtained in 5 32. Obtained by adding at 205.
  • the target antiphase arm swing angle of the corrected gait (hereinafter referred to as the corrected target antiphase arm swing angle) is the instantaneous value of the obtained simplified model antiphase arm swing angle (S3532).
  • the obtained perturbation model for correction (the instantaneous value of the target antiphase arm swing angle at the current time t of the current time's gait) and the antiphase arm swing angle 0 ca (the value obtained in the control cycle at the current time t) are calculated. It is obtained by adding in 2 3 2.
  • the desired floor reaction force of the corrected gait is also corrected. Specifically, the floor reaction force moment horizontal component around the target ZMP is no longer 0, and the target floor reaction force moment horizontal component for compliance control is output as the target value. Also, the desired floor reaction force horizontal component is corrected to the corrected desired floor reaction force horizontal component and output. The desired floor reaction force moment vertical component is also corrected to the corrected desired floor reaction force moment vertical component and output.
  • the motion of the corrected gait is based on the motion of the simplified model gait and the motion of the perturbation model (specifically, the perturbation model for body horizontal position correction 202 and the perturbation model for body posture inclination angle correction)
  • This is the motion (synthesized) to which the motion of 203 and the motion of the perturbation model for the antiphase arm swing angle correction 2 3 1) are added.
  • the floor reaction force generated by adding a certain perturbation motion to a certain reference motion is generated by the floor reaction force generated by the reference motion (the floor reaction force that balances the gravitational and inertial forces generated by the motion) and the perturbation motion. It is approximated by the sum of the perturbation of the floor reaction force.
  • the floor reaction force horizontal component that generates the body tilt mode the floor reaction force moment vertical component that generates the body tilt mode
  • the floor reaction force horizontal component that generates the antiphase arm swing mode and the antiphase arm swing mode occur.
  • the vertical component of the perturbation model moment for body horizontal position correction Mpz is the floor reaction force moment vertical component generated on the inverse full model 201 by the motion of the perturbation model for body horizontal position correction. It is. Still, the moments in equations h5 and hi06 are the moments around the original (simplified model) target ZMP It is an event.
  • the true ZMP of the corrected gait is the point deviated from the target ZMP (ideal target ZMP) of the simplified model gait by the value obtained by dividing the corrected desired floor reaction force moment by the desired floor reaction force vertical component. Be changed.
  • Corrected gait true ZMP target ZMP
  • the corrected desired floor reaction force moment vertical component around the true ZMP of the corrected gait was calculated from the difference between the true ZMP of the corrected gait and the target ZMP to the moment around the original target ZMP, and the equation h6. This is the sum of the cross product with the corrected target floor reaction force horizontal component.
  • the true Z MP of the corrected gait determined from equation h7 must be within the Z MP tolerance. This is called a ZMP constraint.
  • the corrected target floor reaction force horizontal component must be within the allowable range of the floor reaction force horizontal component for gait correction (for full model correction). This is called the floor reaction water equilibrium constraint.
  • the corrected target floor reaction force moment vertical component is used for gait correction (Full model
  • the floor reaction force moment must be within the allowable range for the vertical component. This is called floor anti-camoment vertical component constraint.
  • the corrected gait is calculated using the equations h5, h6, hl06, and ZMP constraints (the range of the true ZMP of the corrected gait obtained from equation h7).
  • the condition and the floor reaction force moment vertical component constraint must be satisfied.
  • the state quantities of the perturbation model 202 for body horizontal position correction, the perturbation model 203 for body posture tilt angle correction, and the perturbation model 2301 for antiphase arm swing angle correction (more specifically, Is based on the correction perturbation model body horizontal position velocity, the correction perturbation model body posture inclination angle ⁇ angular velocity, the correction perturbation model antiphase arm swing angle ⁇ angular velocity, etc.).
  • the stabilization control of the correction perturbation models 202, 203, and 231 is performed so as to converge (stabilize) to the state.
  • the control law for converging (stabilizing) the body horizontal position correction perturbation model 202 to the target settling position is called the body horizontal position correction perturbation model control law 206, and the feedback determined by this control law
  • the amount (operating amount) is called the required perturbation model stabilization moment Mpfdmd for body horizontal position correction.
  • the reason why the “request value” is added here is that, as described later, the true ZMP is within the ZMP allowable range and the floor reaction force horizontal component is within the floor reaction force horizontal component allowable range. This is because the value determined by the above control law is restricted and corrected. Restricted and corrected moment It is called the perturbation model stabilization moment Mpf for displacement correction.
  • equation h10 is used as the perturbation model control rule 206 for body horizontal position correction.
  • the target settling position is given by equation h8.
  • Mtotal is the robot total weight
  • mb is the upper body mass (inverted pendulum mass)
  • XGf is the center of gravity calculated using the full model based on the instantaneous posture of the simplified model gait.
  • the position that is, the horizontal position of the center of gravity calculated by the inverse full model.
  • Kpp and ⁇ are gains for feedback control.
  • the correction perturbation model body horizontal position speed and target settling position are the Y-axis.
  • the direction (left-right direction) component is used.
  • the correction perturbation model body horizontal position speed and target set position are in the X-axis direction (front-back direction). ) Substituting “10” for “1” in the third paragraph on the right side using the ingredients.
  • the reference body posture inclination angle output by the target instantaneous value generation unit 100b (as determined in S344 in Fig. 57) or the target body posture inclination angle using a simplified model (Fig. 57)
  • the corrected target body posture tilt angle that is, the corrected perturbation model body posture tilt angle obtained by adding the corrected target body posture tilt angle based on the simplified model to
  • the feedback amount (operating amount) is determined by a feedback control law such as PI control so that the body posture tilt angle is set or followed, and this is determined by the body posture tilt angle. It is additionally input to the correction perturbation model 203.
  • This control law is called the body posture inclination angle correction perturbation model control law 207 (sometimes abbreviated as the body posture angle correction perturbation model control law 207), and the feedback amount (operating amount) ) Is referred to as the required perturbation model stabilization moment for the body posture inclination angle Mrfdmd.
  • the “required value” is given here for the same reason as the required value of the perturbation model stabilization moment Mpfdmd for body horizontal position correction.
  • the moment corrected by the restriction is called the perturbation model stabilization moment Mrf for body posture tilt angle correction.
  • the perturbation model stabilizing moment stabilization moment request value for body posture inclination angle correction perturbation model control rule 207 for determining the required value Mrfdmd may be specifically expressed by the following equation.
  • Required value of the perturbation model stabilizing moment for body posture inclination angle correction Mrfdmd Krp * (Correction perturbation model body posture inclination angle 0 c
  • Equation h 11 1 where Krp and Krv are gains of feedback control.
  • h i 1, 0 may be used instead of (reference body posture inclination angle—target body posture inclination angle based on the simplified model).
  • the upper-body horizontal position correction perturbation model control rule 206 expression hi 0
  • the required value Mpfdmd for the perturbation model stabilization moment for body horizontal position correction is obtained.
  • the required body posture inclination angle correction perturbation model stabilization moment required value Mrfdmd is obtained by the above-mentioned body posture inclination angle correction perturbation model control rule 2 07 (formula h11).
  • the floor reaction force estimation (calculation) value F0 of the body position correction perturbation model when the body horizontal position correction perturbation model stabilization moment Mpf is assumed to be 0 is obtained by the F0 calculation unit 208.
  • the perturbation model 202 for body horizontal position correction has a full model floor anti-camoment horizontal component Mfullxy plus a perturbation model stabilization moment Mpf for body horizontal position correction. Is entered. Therefore, F0 is the perturbation model for body horizontal position correction 20 0 when only the inverse of the sign of the full model floor reaction force moment horizontal component Mfullxy is input to the perturbation model for body horizontal position correction 202 2 is the floor reaction force generated.
  • F0 is obtained by the following equation.
  • the second term on the right-hand side is directly generated in the body horizontal position correction perturbation model 202 by the previous body horizontal position correction perturbation model stabilization moment Mpf (that is, the floor-directed term). Represents the reaction force horizontal component.
  • the previous perturbation model stabilization model for upper body horizontal position correction was used.
  • the estimated value of the floor reaction force F0 of the perturbation model for body position correction assuming that Mpf was 0 is obtained.
  • the perturbation model stabilization moment Mpf for the body horizontal position correction is changed to the required perturbation model stabilization moment Mpfdmd for the body horizontal position correction.
  • the body posture inclination angle correction perturbation model stabilization moment Mrf is matched with the required body posture inclination angle correction perturbation model stabilization moment Mrfdmd, and the desired floor reaction force moment around the target ZMP.
  • the floor reaction duck generated around the target ZMP assuming that the target for compliance control and the floor reaction force moment as the water component were matched with the sum of the compensation total floor reaction moment horizontal components Mdmdxy, Mpf, and Mrf
  • the Min water is calculated by the Min operation unit 209.
  • This horizontal component of the floor reaction force moment is called the uncorrected corrected desired floor reaction force moment horizontal component Min.
  • the uncorrected corrected desired floor reaction force moment horizontal component Min is given by the following equation.
  • the horizontal component Min of the corrected desired floor reaction force moment at unlimited time is It is obtained by adding the required perturbation model stabilization moment Mpfdmd for body horizontal position correction, the required perturbation model stabilization moment for body posture tilt angle correction Mrfdmd, and the compensation total floor reaction force moment horizontal component Mdmdxy.
  • the perturbation model stabilizing moment Mpf for body horizontal position correction is changed to the perturbation model stabilization moment request value Mpfdmd for body horizontal position correction.
  • the body posture inclination angle correction perturbation model stabilization moment Mrf is matched with the body posture inclination angle correction perturbation model stabilization moment request value Mrfdmd, and the target floor reaction force for compliance control is matched.
  • the moment horizontal component is equal to the sum of the compensated total floor reaction moment horizontal component Mdmdxy, Mpf and Mrf
  • the generated floor reaction horizontal component Fin is obtained by the Fin calculation unit 210. .
  • This floor reaction force horizontal component is called the unlimited correction target floor reaction force horizontal component Fin.
  • the corrected desired floor reaction force horizontal component is obtained by the equation h6.
  • the behavior of the body posture inclination angle correction perturbation model 203 causes the body posture inclination angle correction perturbation model 203 as described above. Does not generate a floor reaction force horizontal component, that is, Fr is zero. Therefore, the uncorrected corrected desired floor reaction force horizontal component Fin is calculated as the corrected desired floor reaction force horizontal component when the perturbation model stabilization moment Mpf for the body horizontal position correction is assumed to be 0.
  • the perturbation model stabilization moment Mpf from 0 to the perturbation model stabilization moment required value Mpfdmd for body horizontal position correction, the floor reaction force horizontal component that increases due to the change is added.
  • the floor reaction force horizontal component that is increased by changing the perturbation model stabilizing moment Mpf for the upper body horizontal position correction from 0 to the required perturbation model stabilization moment Mpfdmd for the upper body horizontal position is water
  • the unlimited corrected target floor reaction force horizontal component Fin is calculated by dividing the perturbation model stabilization moment requirement Mpfdmd for the body horizontal position correction by the body translation mode floor reaction force ratio h as shown in equation hi5.
  • the obtained full model floor reaction force horizontal component Ffull is added to the calculated value, and the perturbation model stabilizing moment Mpf for upper body horizontal position correction is assumed to be 0. It is obtained by adding the calculated value F0 of the floor reaction force.
  • the limiting means (limit processing unit) 2 1 1 the uncorrected target floor reaction force moment horizontal component Min and the unlimited corrected target floor reaction force From the horizontal component Fin, the limit corrected target floor reaction force moment horizontal component Mltd (around the target ZMP) and the limit corrected target floor reaction force horizontal component Fltd are determined by adding these restrictions.
  • the target floor reaction force moment horizontal component for compliance control coincides with the limit corrected target floor reaction moment water E / Mltd, and the floor reaction force horizontal component of the corrected gait is the limit corrected target floor reaction force water. Matches the flat component Fltd.
  • the limit correction target floor reaction camouflage horizontal component Mltd and the limit correction target floor reaction force horizontal component Fltd are the true ZMP of the corrected gait (including the target floor reaction chamoment horizontal component for compliance control) is the ZMP allowable range.
  • Mltd and Fltd are determined so as to satisfy the ZMP constraint condition and the floor reaction force horizontal component constraint condition.
  • the perturbation model stabilization moment Mp for body horizontal position correction should be as close as possible to the required value Mpfdmd of the perturbation model stabilization model for body horizontal position correction. Is determined.
  • the body posture tilt angle correction perturbation model stabilization moment Mr is determined to be as close to or as close as possible to the required body posture tilt angle correction perturbation model stabilization moment Mrfdmd. This stabilizes the correction perturbation model body position Xc and the correction perturbation model body posture inclination angle 0c, and prevents divergence.
  • restriction means (restriction processing unit) 211 are described in PCTZJP0304435, which was previously proposed by the present applicant, and further description thereof will be omitted here.
  • the perturbation model stabilization moment Mpf for body horizontal position correction and the perturbation model stabilization moment Mrf for body posture tilt angle correction are expressed by the following equations, respectively, as Mpf calculation unit 212 and Mrf calculation unit. Required by 2 1 3
  • Mrf Mltd-one Mpf-Mdmdxy ⁇ ⁇ ⁇ Equation h 2 1 That is, the Mpf calculation unit 2 1 2 subtracts the full model floor reaction force horizontal component Ffull from the limit correction target floor reaction force horizontal component Fltd, and Mp is 0. By multiplying the value obtained by subtracting the calculated value F0 of the floor reaction force F0 of the body position correction perturbation model 202 in the case of the body position correction by the body body translation mode floor reaction force ratio h, the body horizontal position correction The perturbation model stabilization moment Mpf is obtained. In addition, the Mrf calculation unit 2 1 3 calculates the limit correction target floor reaction force around the target ZMP.
  • the perturbation for body posture tilt angle correction is obtained by subtracting the body horizontal position correction perturbation model stabilization moment Mpf and the compensation total floor anti-camo-motion horizontal component Mdmdxy from the movement horizontal component Mltd.
  • the model stabilization moment Mrf is obtained.
  • the perturbation model floor reaction force moment Mp for body horizontal position correction is input to the perturbation model 202 for body position correction, and the perturbation model body position Xc for the correction that is balanced with the input floor reaction force moment. Is calculated.

Abstract

床反力モーメントの鉛直成分又は該床反力モーメントの床面法線方向成分又は該ロボットの角運動量変化率の鉛直成分又は該角運動量変化率の床面法線方向成分である制限対象量の許容範囲を設定し、少なくとも目標運動の仮瞬時値を動力学モデルに入力して、動力学モデルの出力としてのモデル制限対象量瞬時値を求める。少なくともモデル制限対象量瞬時値を前記許容範囲に収めるように前記目標運動の仮瞬時値を補正して目標運動の瞬時値を決定する。

Description

明 細 書 脚式移動ロボッ トの歩容生成装置および脚式移動ロポッ トの制御装置 技術分野
本発明は、 脚式移動口ポッ トの歩行のみならず、 走行にも適した歩容 生成装置および制御装置に関する。 背景技術
脚式移動ロポッ ト、 例えば 2足移動ロボッ トの移動動作を行わせるた めの歩容 (目標歩容) の生成は、 従来、 主に口ポッ トにスムーズな歩行 動作を行なわせる歩容 (歩行歩容) を生成することを主目的として行な われてきた。 しかし、 近年では、 脚式移動口ポッ トの開発が進むにつれ て、 該ロポッ トに歩行だけでなく、 走行も行なわせるこどができる歩容 を生成することが望まれている。 さらには、 十分な摩擦力を発生できな い滑りやすい床 (いわゆる低ミュー路) 上でも口ポッ トを支障なく移動 させることができる歩容を生成することが望まれている。
尚、 「歩容」 という漢字に 「歩」 が入っているので歩行に限定される と誤解されやすいが、 本来 「歩容」 とは、 トロッ トなど、 馬の走行形態 を指す言葉として用いられているように、 走行も含んだ概念である。
ここで、 歩行と走行の特徴の違いを説明しておく。
同時に全脚が空中に存在する瞬間がある移動形態を走行と定義すること が一般的ではある。 しかし、 この定義によって歩行と走行が明確に区別 できるとは限らない。 たとえば、 速いジョギングでは、 ほとんどの人間 において、 同時に全脚が空中に存在する瞬間があるが、 遅いジョギング では、 かなりの人間において、 常にいずれかの脚が接地している。 速い ジョギングは走行であるのに遅いジョギングは歩行である、 と定義する のは、 感覚的に少し無理がある。
図 5 1に、 典型的な走行における上体鉛直位置と床反力鉛直成分 (左 右の脚に作用する床反力鉛直成分の和) のパターンを示し、 図 5 2には、 典型的な歩行における上体鉛直位置と床反力鉛直成分のパターンを示す。
尚、 上体鉛直位置速度は、 上体代表点の鉛直位置とその速度を意味す る。 上体水平位置速度は、 上体代表点の水平位置とその速度を意味する。 上体鉛直位置速度と上体水平位置速度を合わせて、 上体位置速度と呼ぶ。
また、 「床反力鉛直成分」 は、 厳密には、 床反力の鉛直軸まわりのモ —メント成分と区別するために、 「並進床反力鉛直成分」 と記述すべき であるが、 言葉が長くなるので、 ここでは 「並進」 を省略する。 以降、 「並進床反力水平成分」 も 「並進」 を省略して 「床反力水平成分」 と記 する。 1
まず上体の動きを見てみると、 歩行においては、 支持脚の上を上体が 通過する瞬間に上体は最も高く、 走行においては、 この瞬間に最も低い。 すなわち、 歩行と走行では、 上体の上下動パターンの位相が反転してい る。
一方、 床反力に関しては、 歩行では比較的一定であるのに対し、 走行 においては、 大きく変動し、 支持脚の上を上体が通過する瞬間に床反力 は最も大きい。 また、 当然のことながら、 同時に全脚が空中に存在する 瞬間において床反力は 0になっている。 より詳しく観察すると、 走行で は、 支持脚を縮めた量にほぼ比例した大きさの床反力が発生する。 言い かえると、 走行では、 脚をばねのように使って跳ねながら移動している と言える。
遅いジョギングでは、 典型的な走行と同じ上体上下動の位相を持つ。 また、 遅いジョギングでは、 同時に全脚が空中に存在する瞬間がない場 合が多いが、 その場合でも、 支持脚と遊脚の切り換えが行われる瞬間に おいて、 床反力は、 完全には 0にならないがほぼ 0になっている。
したがって、 以上のように、 上体の上下動や床反力のパターンの上記 特徴から歩行と走行を区別した方が、 遅いジョギングも走行とみなされ、 感覚とも一致して、 より適切と言えよう。
特に、 最も特徴的な点で両者を区別するならば、 走行とは、 支持脚の 切り換えが行われる瞬間において、 床反力が 0またはほぼ 0になる移動 形態であり、 歩行は、 それ以外の移動形態 (床反力鉛直成分が比較的一 定) であると言えよう。
ところで、 本出願人は先に P C T公開公報 WO 02 40224において、 脚式移動口ポッ トの床反力を含む歩容を、 動力学的平衡条件 (目標歩容 の重力と慣性力と床反力との釣り合い条件のことである。 狭義では、 目 標歩容の運動による重力と慣性力との合力が目標 Z MPまわりに作用す るモーメントの水平成分が 0であること。 詳細は後述する。) をほぼ満 足しながら、 自在かつリアルタイムに生成する技術を先に提案した。 こ の技術や、 特開平 1 0— 8 6 0 8 1号公報、 特開平 1 0— 2 7 7 9 6 9 号公報などにて本出願人が提案してきた一連の脚式移動ロボッ 卜の制御 装置は、 歩行のみならず走行にも適用できるものである。
また、 本願出願人は、 P C TZ J P 0 2 / 1 3 7 8 4において、 近似 精度の高い動力学モデルを用いて、 並進床反力水平成分や床反力モーメ ント水平成分が所要の許容範囲に収めるようにしつつ、 仮歩容を修正し て、 目標歩容を生成する技術を提案している。
しかしながら、 これらの技術においては、 目標歩容の ZMPまわりの 床反カモ一メント鉛直成分の大きさを考慮していなかった。 このため、 この床反力モーメント鉛直成分が過大となって、 '摩擦の限界を超えて、 スピンするおそれがあった。 なお、 スピンとは、 実際のロボッ トのョ一 角 (鉛直軸まわり回転角) 速度が目標ョー角速度からずれることを言う。 摩擦係数の高い床面を歩行する場合 (この場合、 少なくとも 1つの脚 体は常時接地している) には、 床反力鉛直成分が常にほぼ口ポッ トの自 重相当であるので、 摩擦力 (すなわち床反力モーメント鉛直成分) の限 界が高い。 このため、 スピンは発生しにくい。
しかるに、 走行においては、 床反力鉛直成分が 0になる、 または 0に 近くなる時があるので、 その時には、 たとえ摩擦係数が高くとも、 床面 の摩擦力のモーメント鉛直成分の限界が 0になるまたは 0に近くなる。 したがって、 目標歩容の床反力モーメント鉛直成分が限界を超え、 スピ ンして転倒する恐れがあった。
また、 歩行の場合でも、 床の摩擦係数が低い場合には、 スピンして転 倒する恐れがあった。
一方、 本出願人は先に、 例えば P C T出願 P C T Z J P 0 2 / 1 3 5 9 6の実施形態において、 目標歩容において腕以外が発生するモ一メン ト鉛直成分を打ち消すように、 腕を振るようにしたものを提案した。
この場合には、 目標歩容のモーメント鉛直成分はほぼ 0になるが、 脚 を激しく振って移動する場合には、 腕の振りも激しくなる。
一般的に、 人間型口ポッ トにおいては、 腕の質量は、 脚の質量に較べ て小さい。 したがって、 モーメント鉛直成分を完全に打ち消すためには、 腕は、 脚の振りよりも激しく振る必要がある。
しかし、 腕の動作範囲には限界があり、 また、 腕のァクチユエ一夕の トルクおよび速度にも限界があるので、 脚を激しく振って移動する場合 には、 腕によってモーメント鉛直成分を完全に打ち消すことができなく なる場合があった。
また、 目標歩容において腕以外が発生するモーメント鉛直成分を完全 に打ち消すように、 腕を振るようにすると、 腕振りの中心が徐々にオフ セッ トしていき、 左右の腕の振りが非対称になる恐れがあった。 具体的 には、 口ポッ トが左旋回する場合に、 腕以外が発生するモーメント鉛直 成分を完全に打ち消すように、 腕を振るようにすると、 脚と胴体が左を 向いたことによる角運動量変化を打ち消すために、 左腕は前側には大き く、 後ろ側には小さく振られ、 右の腕は前側には小さく後ろ側には大き く振られるようになる。 したがって、 この場合には、 左腕は、 前側の振 り動作限界に達する恐れが生じ、 右腕は、 後ろ側の振り動作限界に達す る恐れが生じる。
また、 さらに左右の腕の振りが非対称にならないように、 腕振りの中 心を戻そうとすると、 この動作によって、 床反力モーメント鉛直成分が 発生し、 目標歩容の床反力モーメント鉛直成分が限界を超え、 スピンす る恐れがあった。
したがって、 本発明の目的は、 上記の問題点を解消し、'歩行、 走行等 の歩容形態や床面の摩擦状態によらずに、 より一層好適な歩容を生成す ることができる歩容生成装置および制御装置を提供することにある。 より具体的には、 本発明は、 ロボッ トと床面との間の摩擦力のモーメ ント鉛直成分の限界を考慮し、 スピンおよびそれに起因する口ポッ トの 転倒を防止することが可能な歩容を生成できる歩容生成装置および制御 装置を提供することを目的とする。 そして、 空中時、 あるいは摩擦力の モーメント鉛直成分の限界が極めて低い時にでも、 動力学的平衡条件を 満足する歩容の運動パターンを生成できる歩容生成装置および制御装置 を提供することを目的とする。 さらに、 目標歩容の左右非対称性が大き くなることを防止して、 動作の継続性を確保することを目的とする。 発明の開示
本発明の脚式移動ロポッ 卜の歩容生成装置の第 1発明は、 上体から延設された複数の脚体を運動させて移動する脚式移動ロボッ 卜の目標歩容を生成する歩容生成装置において、
前記ロポッ トに作用させる床反カモ一メン卜の鉛直成分又は該床反力 モーメントの床面法線方向成分又は該ロポッ トの角運動量変化率の鉛直 成分又は該角運動量変化率の床面法線方向成分を制限対象量として、 該 制限対象量の許容範囲を設定する許容範囲設定手段と、
前記目標歩容を構成する目標運動の仮瞬時値を決定する仮瞬時値決定 手段と、
少なくとも前記目標運動の仮瞬時値を、 前記ロポッ 卜の運動と前記制 限対象量との関係を表す動力学モデルに入力し、 該動力学モデルの出力 としてのモデル制限対象量瞬時値を求めるモデル演算手段と、
少なくとも該モデル制限対象量瞬時値を前記許容範囲に収めるように 前記目標運動の仮瞬時値を補正して目標運動の瞬時値を決定する目標瞬 時値決定手段とを備えたことを特徴とする。
かかる第 1発明によれば、 前記動力学モデルの出力としてのモデル制 限対象量瞬時値が許容範囲に収まるように目標運動の仮瞬時値を補正し て目標運動の瞬時値を決定する。 換言すれば、 補正後の目標運動の瞬時 値を前記動力学モデルに入力した場合に、 該動力学モデル上で、 補正後 の目標運動の瞬時値に釣り合う制限対象量瞬時値が許容範囲に収まるよ うに目標運動の仮瞬時値を補正する。 このため、 床反力モーメント鉛直 成分等の制限対象量を許容範囲内に収めるような目標歩容の運動を生成 することができる。 つまり、 前記動力学モデル上で摩擦力モーメント鉛 直成分の限界を考慮して、 目標運動の瞬時値が決定される。 それにより、 ロボッ トのスピンおよびそれに起因する転倒を防止することを可能とす る目標歩容を生成できる。 また、 制限対象量が許容範囲に収まる限り、 該制限対象量を常に 0もしくはほぼ 0にする必要がないことから、 ロボ ッ トのある部位の運動が過剰に激しい運動となったりすることのない目 標歩容を生成できる。 .
なお、 前記動力学モデルは、 基本的には、 近似精度の高いものを用い ることが好適である。
かかる第 1発明では、 前記目標瞬時値決定手段は、 前記目標運動の瞬 時値に前記動力学モデル上で略釣り合う制限対象量に対応する床反カモ —メントの擗時値を前記目標歩容を構成する目標床反力モーメン卜の瞬 時値として決定することが好ましい (第 2発明)。
これによれば、 目標運動の瞬時値に対して、 動力学的な精度の高い目 標床反モ一メントの瞬時値を決定できる。
これらの第 1および第 2発明では、 前記目標瞬時値決定手段は、 前記 ロポッ トの摂動運動と制限対象量摂動分との関係を表す摂動モデルと、 少なくとも前記モデル演算手段が求めたモデル制限対象量瞬時値と前記 許容範囲とに基づき前記摂動モデルの制限対象量摂動分を操作する摂動 モデル操作量を決定する手段と、 その決定した摂動モデル操作量を前記 摂動モデルに入力することにより前記目標運動の補正量を求める手段と、 該補正量により前記目標運動の仮瞬時値を補正することにより前記目 標運動の瞬時値を決定する手段とを備えることが好ましい (第 3発明)。 すなわち、 前記摂動モデルは線形性が高いので、 前記制限対象量を許 容範囲に収める上での適正な目標運動の補正量の算出処理が容易になる と共に、 その補正量による前記目標運動の仮瞬時値の補正処理が容易に なる。
この第 3発明では、 前記摂動モデル操作量を決定する手段は、 前記摂 動モデル操作量を 0と仮定した場合の前記制限対象量の推定値を少なく とも前記モデル演算手段が求めたモデル制限対象量瞬時値に基づき決定 する手段と、 その決定した推定値を前記許容範囲と比較し、 その比較に 基づき該許容範囲内に制限してなる制限済制限対象量を決定する手段と を備え、 少なくとも前記モデル演算手段が求めたモデル制限対象量瞬時 値と前記制限済制限対象量との差に基づき前記摂動モデル操作量を決定 することが好ましい (第 4発明)。
この第 4発明によれば、 まず、 摂動モデル操作量を 0と仮定した場合、 すなわち、 摂動モデルによる目標運動の仮瞬時値の補正に付加的に発生 させる制限対象量の摂動分を 0とした場合の制限対象量の推定値を少な くとも前記モデル制限対象量瞬時値に基づき決定し、 この推定値と許容 範囲との比較に基づき制限済制限対象量を決定する。- なお、 この場合、 ジャイロ効果を考慮して、 制限対象量の推定値を決定するようにしても よい。 また、 制限済制限対象量は、 前記許容範囲内でできるだけ制限対 象量の推定値に近い値に決定することが好ましい。 そして、 少なくとも 前記モデル制限対象量瞬時値と制限済制限対象量との差に基づき、 摂動 モデル操作量を決定する。 これにより、 制限対象量が許容範囲を超える ことが無いようにすることを可能とする摂動モデル操作量を適切に決定 できる。
また、 前記第 3発明では、 より好ましくは、 少なくとも前記摂動モデ ルの状態量に応じて前記摂動モデル操作量の要求値を決定する手段を備 え、 前記摂動モデル操作量を決定する手段は、 少なくとも前記モデル演 算手段が求めたモデル制限対象量瞬時値、 前記許容範囲、 及び前記要求 値に基づき前記摂動モデルに入力する摂動モデル操作量を決定する (第 5発明)。
これによれば、 前記許容範囲とモデル制限対象量瞬時値だけでなく、 摂動モデルの状態量 (摂動モデルの要素となる回転体の回転角やその角 速度など) の要求値を考慮して、 前記摂動モデル操作量が決定される。 これにより、 該摂動モデルの状態量が前記要求値に対応する状態量から かけ離れないようにして、 不適正な目標運動の補正量が求められるよう な事態を防止することができる。
この第 5発明では、 前記摂動モデル操作量の要求値を決定する手段は、 前記摂動モデルの状態量と該状態量に対する目標値との偏差に応じたフ ィードバック制御則により前記要求値を逐次決定することが好ましい (第 6発明)。
この第 6 ·発明によれば、 摂動モデルの状態量がある目標状態量の近傍 に概ね維持されるように摂動モデル操作量が決定される。 これにより、 この摂動モデルによって決定される目標運動の補正量を、 摂動モデルの 状態を安定に保ちつつ、 制限対象量を許容範囲に収める上で好適なもの にすることができる。
さらに、 第 5および第 6発明では、 前記摂動モデル操作量を決定する 手段は、 前記摂動モデル操作量を前記要求値に一致させたと仮定した場 合の前記制限対象量の推定値を少なくとも前記モデル演算手段が求めた モデル制限対象量瞬時値と前記要求値とに基づき決定する手段と、 その 決定した推定値を前記許容範囲と比較し、 その比較に基づき該許容範囲 に制限してなる制限済制限対象量を決定する手段とを備え、 少なく とも 前記モデル演算手段が求めたモデル制限対象量瞬時値と前記制限済制限 対象量との差に基づき前記摂動モデル操作量を決定することが好ましい (第 7発明)。
これによれば、 まず、 摂動モデル操作量を前記要求値に一致させたと 仮定した場合、 すなわち、 該要求値のみを摂動モデルに入力したとした 場合の制限対象量の推定値を少なくとも前記モデル制限対象量瞬時値お よび要求値に基づき求め、 この推定値と許容範囲との比較に基づき決定 した制限済制限対象量を決定する。 なお、 この場合、 ジャイロ効果を考 慮して、 制限対象量の推定値を決定するようにしてもよい。 また、 制限 0 済制限対象量は、 前記許容範囲内でできるだけ制限対象量の推定値に近 い値に決定することが好ましい。 そして、 少なくとも前記モデル制限対 象量瞬時値と制限済制限対象量との差に基づき、 摂動モデル操作量を決 定する。 これにより、 制限対象量が許容範囲を超えることが無く、 且つ 摂動モデルの安定性も確保し得る摂動モデル操作量を適切に決定できる。
また、 前記第 4発明〜第 7発明では、 前記目標瞬時値決定手段は、 前 記制限済制限対象量に対応する床反力モーメントの瞬時値を前記目標歩 容を構成する目標床反力モーメントの瞬時値として決定することが好ま しい (第 8発明)。
これによれば、 目標床反力モーメントの瞬時値に対応する制限対象量 が確実に許容範囲内に収まることとなる。
前記第 4〜第 8発明では、 前記目標瞬時値決定手段は、 前記目標運動 の補正量を前記動力学モデルに追加的に入力する手段を備'えるようにし てもよい (第 9発明)。
これによれば、 目標運動の補正量を前記動力学モデルに追加的に入力 するので、 該動力学モデルから目標運動に瞬時値に釣り合う制限対象量 を直接的に求めることができる。 このため、 前記制限対象量の推定値を 求める処理が容易になる。
この第 9発明では、 前記目標瞬時値決定手段は、 前記制限済制限対象 量に対応する床反カモ一メントの瞬時値を前記目標歩容を構成する目標 床反力モーメントの瞬時値として決定することが好ましい (第 1 0発 明)。
これによれば、 目標床反力モーメントの瞬時値に対応する制限対象量 が確実に許容範囲内に収まることとなる。
前記第 3〜第 1 0発明では、 前記摂動モデルは、 口ポッ トの角運動量 変化率の鉛直成分又は床面法線方向成分を摂動させる摂動運動と前記制 限対象量摂動分との関係を表すモデルであることが好ましい (第 1 1発 明)。
これによれば、 前記制限対象量を許容範囲に収めるための目標運動の 補正量を適正に決定できる。
この第 1 1発明では、 前記摂動運動は、 該ロポッ トの重心位置を略一 定に維持する摂動運動であることが好適である (第 1 2発明)。
これによれば、 摂動モデルによる目標運動の補正を、 ロボッ トの並進 床反力に影響を及ぼすことなく行なうことができる。
さらに上記第 1 1および第 1 2発明では、 前記摂動運動は、 口ポッ ト の上体およびノ又は該上体から延設された腕体の摂動運動であることが 好ましい (第 1 3発明)。
これによれば、 目標運動の補正量の算出処理が容易になる。
また、 本発明の脚式移動ロポッ トの歩容生成装置の第 1' 4発明は、 上体から延設された複数の脚体を運動させて移動する脚式移動ロポッ トの目標歩容を生成する歩容生成装置において、
前記ロポッ トに作用させる床反力モーメントの鉛直成分又は該床反力 モーメントの床面法線方向成分又は該ロボッ トの角運動量変化率の鉛直 成分又は該角運動量変化率の床面法線方向成分を制限対象量として、 該 制限対象量の許容範囲を設定する許容範囲設定手段と、
前記目標歩容を構成する目標運動及び目標床反力のうちめ少なくとも 目標床反力の仮瞬時値を逐次決定する目標床反力仮瞬時値決定手段と、 少なくとも該目標床反力の仮瞬時値を、 前記口ポッ トの運動と床反力 との関係を表す第 1動力学モデルに入力し、 該第 1動力学モデルの出力 としての目標運動の仮瞬時値を求める第 1モデル演算手段と、
少なくとも前記目標運動の仮瞬時値を、 前記ロボッ トの運動と前記制 限対象量との関係を表す第 2動力学モデルに入力し、 該第 2動力学モデ ルの出力としてのモデル制限対象量瞬時値を求める第 2 ΐデル演算手段 と、
少なくとも該モデル制限対象量瞬時値を前記許容範囲に収めるように 目標床反力の床反カモ一メント補正量を求め、 その求めた床反力モ一メ ント補正量を前記第 1動力学モデルに追加的に入力する第 1モデル入力 補正手段とを備え、
少なくとも前記第 2動力学モデルの入力に基づいて前記目標運動の目 標瞬時値を決定することを特徴とする。
かかる第 1 4発明によれば、 第 2動力学モデルの出力としてのモデル 制限対象量瞬時値が許容範囲に収まるように目標床反力の床反力モ一メ ント補正量を求め、 その求めた床反力モーメント捕正量を前記第 1動力 学モデルに追加的に入力する。 このため、 少なくとも第 2動力学モデル の入力に基づいて、 前記制限対象量を許容範囲に収め得るような目標運 動の瞬時値が得られることとなる。 つまり、 第 2動力学モデル上で発生 する制限対象量が許容範囲に収まるように該第 2動力学モデルへ入力で ある目標運動の瞬時値が第 1動力学モデルを介して決定される。 従って、 床反カモ一メント鉛直成分等の制限対象量を許容範囲内に収めるような 目標歩容の運動を生成することができる。 つまり、 前記動力学モデル上 で摩擦カモ一メント鉛直成分の限界を考慮して、 目標運動の瞬時値が決 定される。 それにより、 ロボッ トのスピンおよびそれに起因する転倒を 防止することを可能とする目標歩容を生成できる。 また、 制限対象量が 許容範囲に収まる限り、 該制限対象量を常に 0もしくはほぼ 0にする必 要がないことから、 ロボッ トのある部位の蓮動が過剰に激しい運動とな つたりすることのない目標歩容を生成できる。
なお、 前記第 2動力学モデルは、 基本的には第 1動力学モデルよりも 近似精度の高いものを用いることが好適である。 3 この第 1 4発明では、 前記第 2動力学モデルが出力する前記モデル制 限対象量瞬時値に略対応する床反力モーメン卜の瞬時値を前記目標歩容 を構成する目標床反カモ一メントの瞬時値として決定する手段を備える ことが好ましい (第 1 5発明)。
これによれば、 目標運動の瞬時値に対して、 動力学的な精度の高い目 標床反モーメン卜の瞬時値を決定できる。
また、 上記第 1 4および第 1 5発明では、 前記第 1モデル入力補正手 段は、 少なくとも前記目標床反力の床反力モーメント補正量を 0と仮定 した場合に前記第 2動力学モデルが出力するモデル制限対象量瞬時値の 推定値を少なくとも前記第 2モデル演算手段が求めたモデル制限対象量 瞬時値に基づいて推定する手段と、 そのモデル制限対象量瞬時値の推定 値を前記許容範囲と比較し、 その比較に基づき該許容範囲に制限してな る制限済制限対象量を決定する手段とを備え、 少なくとも前記第 2モデ ル演算手段が求めたモデル制限対象量瞬時値と前記制限済制限対象量と の差に基づき前記床反力モーメン補正量を決定することが好ましい (第 1 6発明)。
この第 1 6発明によれば、 まず、 床反力モーメント補正量を 0と仮定 した場合の制限対象量の推定値を少なくとも前記モデル制限対象量瞬時 値に基づき決定し、 この推定値と許容範囲との比較に基づき制限済制限 対象量を決定する。 なお、 この場合、 ジャイロ効果を考慮して、 制限対 象量の推定値を決定するようにしてもよい。 また、 制限済制限対象量は、 前記許容範囲内でできるだけ制限対象量の推定値に近い値に決定するこ とが好ましい。 そして、 少なくとも前記モデル制限対象量瞬時値と制限 済制限対象量との差に基づき、 床反力モーメント補正量を決定する。 こ れにより、 制限対象量が許容範囲を超えることが無いようにすることを 可能とする適切な床反力モーメント補正量を決定することができる。 また、 前記第 1 4および第 1 5発明では、 より好まし <:は、 前記目標 床反力の床反カモ一メント補正量の要求値を決定する手段を備え、 前記 第 1モデル入力補正手段は、 少なくとも前記目標床反力の床反力モ一メ ント補正量を前記要求値に一致させたと仮定した場合に前記第 2動力学 モデルが出力するモデル制限対象量瞬時値の推定値を少なくとも前記第 2モデル演算手段が求めたモデル制限対象量瞬時値と前記要求値とに基 づいて推定する手段と、 そのモデル制限対象量瞬時値の推定値を前記許 容範囲と比較し、 その比較に基づき.該許容範囲に制限してなる制限済制 限対象量を決定する手段とを備え、 少なくとも前記第 2モデル演算手段 が求めたモデル制限対象量瞬時値と前記制限済制限対象量との差に基づ ぎ前記床反力モーメン補正量を決定する (第 1 7発明)。
この第 1 7発明によれば、 まず、 床反力モーメント補正量を前記要求 値と一致させたと仮定した場合の制限対象量の推定値を少なくとも前記 モデル制限対象量瞬時値と要求値とに基づき決定し、 この推定値と許容 範囲との比較に基づき制限済制限対象量を決定する。 なお、 この塲合、 ジャィ口効果を考慮して、 制限対象量の.推定値を決定するようにしても よい。 また、 制限済制限対象量は、 前記許容範囲内でできるだけ制限対 象量の推定値に近い値に決定することが好ましい。 そして、 少なくとも 前記モデル制限対象量瞬時値と制限済制限対象量との差に基づき、 床反 力モーメント補正量を決定する。 これにより、 前記制限対象量が許容範 囲を超えることが無いようにすることを可能とし、 且つ、 前記要求値に できるだけ近づくような適切な床反力モーメント補正量を決定できる。 また、 前記第 1 4〜第 1 7発明では、 少なくとも前記第 2モデル演算 手段が求めたモデル制限対象量瞬時値と前記許容範囲とに基づき前記目 標運動の補正量を求め、 その求めた補正量を前記第 2動力学モデルに追 加的に入力する第 2モデル入力補正手段を備えてもよい (第 1 8発明)。 これによれば、 第 1動力学モデルの安定性を高めつつ、' 制限対象量を 許容範囲により適切に収めるための目標運動の瞬時値を第 2動力学モデ ルに入力させるようにすることができる。
この第 1 8発明では、 前記ロポッ トの摂動運動と制限対象量摂動分と の関係を表す摂動モデルと、 少なくとも前記第 2モデル演算手段が求め たモデル制限対象量瞬時値と前記許容範囲とに基づき床反力モーメント の操作量を決定する手段と、 その決定した床反力モーメントの操作量を、 前記第 1動力学モデルに入力する前記目標床反力の床反力モーメント補 正量と前記摂動モデルに入力する摂動モデル操作量とに分配する分配手 段とを備え、 前記第 2モデル入力補正手段は、 前記摂動モデル操作量を 前記摂動モデルに入力することにより前記目標運動の補正量を求めるこ とが好ましい (第 1 9発明)。
これによれば、 前記床反カモ一メントの操作量を第 1動力学モデルの 入力する床反力モーメン卜補正量と摂動モデルに入力する摂動モデル操 作量とに分配するので、 第 1動力学モデルと摂動モデルとのそれぞれの 特性に適した入力をそれぞれのモデルに入力することができる。 そのた め、 第 1動力学モデルや摂動モデルが不安定になるのを防止しつつ、 制 限対象量を許容範囲に収め得る目標運動の瞬時値を適切に決定できる。 また、 摂動モデルを用いることで、 第 2動力学モデルに追加的に入力す る目標運動の補正量の算出処理が容易になる。
なお、 第 1動力学モデルに入力する床反カモ一メント補正量は床反力 モーメントの操作量のうちの低周波成分 (直流成分) であることが望ま しく、 摂動モデルに入力する摂動モデル操作量は、 床反力モーメントの 操作量のうちの高周波成分であることが望ましい。
さらに、 この第 1 9発明では、 少なくとも前記摂動モデルの状態量に 応じて前記床反力モーメントの操作量の要求値を決定する手段を備え、 前記床反力モーメントの操作量を決定する手段は、 少な <とも前記第 2 モデル演算手段が求めた前記モデル制限対象量瞬時値と前記許容範囲と 前記要求値とに基づき前記分配手段に与える床反力モーメントの操作量 を決定することが好ましい (第 2 0発明)。
この第 2 0発明によれば、 前記許容範囲だけでなく、 摂動モデルの状 態量 (摂動モデルの要素としての回転体の回転角やその角速度など) を 考慮して、 分配手段に入力する床反力モーメントの操作量が決定される ので、 摂動モデルの状態量が前記要求値に対応する状態量からかけ離れ ないようにして、 該摂動モデルによって求められる目標運動の補正量が 不適切なものとなるのを防止できる。
この第 2 0発明では、 前記床反ガモーメントの操作量の要求値を決定 する手段は、 前記摂動モデルの状態量と該状態量に対する目標値との偏 差に応じたフィードバック制御則により前記要求値を逐次決定すること が好適である (第 2 1発明)。
この第 2 1発明によれば、 摂動モデルの状態量がある目標状態量の近 傍に概ね維持されるように摂動モデル操作量が決定される。 これにより、 この摂動モデルによって決定される目標運動の補正量を、 摂動モデルの 状態を安定に保ちつつ、 制限対象量を許容範囲に収める上で好適なもの にすることができる。
また、 摂動モデルを備える前記第 1 9〜第 2 1発明では、 前記摂動モ デルは、 ロボッ トの角運動量変化率の鉛直軸回り又は床面法線軸回りの 成分を摂動させる摂動運動と前記制限対象量摂動分との関係を表すモデ ルであることが好ましい (第 2 2発明)。
これによれば、 前記制限対象量を許容範囲に収めるための目標運動の 補正量を適正に決定できる。
この第 2 2発明では、 前記摂動運動は、 口ポッ トの重心位置を略一定 に維持する摂動運動であることが好適である (第 2 3発明)。
これによれば、 摂動モデルによる目標運動の補正を、 口ポッ トの並進 床反力に影響を及ぼすことなく行なうことができる。
さらに、 上記第 2 2発明及び第 2 3発明では、 前記摂動運動は、 ロボ ッ トの上体および Z又は該上体から延設された腕体の摂動運動であるこ とが好ましい (第 2 4発明)。
これによれば、 目標運動の補正量の算出処理が^易になる。
また、 前記第 1 9発明では、 前記床反力モーメントの操作量を決定す る手段は、 前記摂動モデル操作量を 0と仮定した場合に前記第 2動力学 モデルが出力するモデル制限対象量瞬時値の推定値を少なくとも前記第 2モデル演算手段が求めたモデル制限対象量瞬時値に基づいて推定する 手段と、 そのモデル制限対象量瞬時値の推定値を前記許容範囲と比較し、 その比較に基づき該許容範囲に制限してなる制限済制限対象量を決定す る手段とを備え、 少なくとも前記第 2モデル演算手段が求めたモデル制 限対象量瞬時値と前記制限済制限対象量との差に基づき前記床反力モー メントの操作量を決定することが好ましい (第 2 5発明)。
この第 2 5発明によれば、 まず、 摂動モデル操作量を 0と仮定した場 合、 すなわち、 摂動モデルによる目標運動の仮瞬時値の補正によって付 加的に発生させる制限対象量の摂動分を 0とした場合の制限対象量の推 定値を少なくとも前記モデル制限対象量瞬時値に基づき決定し、 この推 定値と許容範囲との比較に基づき制限済制限対象量を決定する。 なお、 この場合、 ジャイロ効果を考慮して、 制限対象量の推定値を決定するよ うにしてもよい。 また、 制限済制限対象量ほ、 前記許容範囲内でできる だけ制限対象量の推定値に近い値に決定することが好ましい。 そして、 少なくとも前記モデル制限対象量瞬時値と制限済制限対象量との差に基 づき、 床反力モーメントの操作量を決定する。 これにより、 制限対象量 が許容範囲を超えることが無いようにすることを可能とする床反カモ一 メントの操作量を適切に決定できる。
また、 前記第 2 0発明では、 前記床反力モーメントの操作量を決定す る手段は、 前記摂動モデル操作量を前記要求値に一致させたと仮定した 場合に前記第 2動力学モデルが出力するモデル制限対象量瞬時値の推定 値を少なくとも前記第 2モデル演算手段が求めたモデル制限対象量瞬時 値と前記要求値とに基づいて推定する手段と、 そのモデル制限対象量瞬 時値の推定値を前記許容範囲と比較し、 その比較に基づき該許容範囲に 制限してなる制限済制限対象量を決定する手段とを備え、 少なくとも前 記第 2モデル演算手段が求めたモデル制限対象量瞬時値と前記制限済制 限対象量との差に基づき前記床反力モーメントの操作量を決定すること が好ましい (第 2 6発明)。
この第 2 6発明によれば、 まず、 摂動モデル操作量を前記要求値に一 致させたと仮定した場合、 すなわち、 該要求値のみを摂動モデルに入力 したとした場合の制限対象量の推定値を少なくとも前記モデル制限対象 量瞬時値および要求値に基づき求め、 この推定値と許容範囲との比較に 基づき決定した制限済制限対象量を決定する。. なお、 この塲合、 ジャィ 口効果を考慮して、 制限対象量の推定値を決定するようにしてもよい。 また、 制限済制限対象量は、 前記許容範囲内でできるだけ制限対象量の 推定値に近い値に決定することが好ましい。 そして、 少なくとも前記モ デル制限対象量瞬時値と制限済制限対象量との差に基づき、 摂動モデル 操作量を決定する。 これにより、 制限対象量が許容範囲を超えることが 無く、 且つ摂動モデルの安定性も確保し得る床反力モ一メントの操作量 を適切に決定できる。
また、 本発明の脚式移動口ポッ トの歩容生成装置の第 2 7発明は、 上体から延設された複数の脚体を運動させて移動する脚式移動ロポッ トの目標歩容を生成する歩容生成装置において、
前記口ポッ トに作用させる床反力モーメントの鉛直成分又は該床反力 モーメントの床面法線方向成分又は該ロポッ トの角運動量変化率の鉛直 成分又は該角運動量変化率の床面法線方向成分を制限対象量として、 該 制限対象量の許容範囲を設定する許容範囲設定手段と、
前記目標歩容を構成する目標運動及び目標床反力のうちの少なくとも 目標床反力の仮瞬時値を逐次決定する目標床反力仮瞬時値決定手段と、 少なくとも該目標床反力の仮瞬時値を、 前記ロポッ 卜の運動と床反力 との関係を表す第 1動力学モデルに入力し、 該第 1動力学モデルの出力 としての目標運動の第 1仮瞬時値を求める第 1モデル演算手段と、 少なくとも前記目標床反力の仮瞬時値を、 前記口ポッ トの運動と前記 制限対象量との関係を表す第 2動力学モデルに入力し、 該第 2動力学モ デルの出力としての目標運動の第 2仮瞬時値を、 該目標運動の第 2仮瞬 時値に前記第 2動力学モデル上で略釣り合う制限対象量瞬時値が前記許 容範囲内に収まるように求める制限付き第 2モデル演算手段と、
少なくとも前記目標運動の第 1仮瞬時値と第 2仮瞬時値との差に基づ いて、 該差が零に近づくように床反カモ一メントの操作量を求める操作 量算出手段と、
該床反カモ一メントの操作量を前記第 1動力学モデル及び第 2動力学 モデルのうちの少なくともいずれか一方に追加的に入力するモデル入力 補正手段とを備え、
前記目標運動の第 2仮瞬時値を該目標運動の瞬時値として決定するこ とを特徴とする。
この第 2 7発明によれば、 目標床反力の仮瞬時値が第 1動力学モデル に入力されて、 目標運動の第 1仮瞬時値が求められる一方、 目標床反力 の仮瞬時値が第 2動力学モデルにも入力され、 この第 2動力学モデルを 用いて目標運動の第 2仮瞬時値が求められる。 但し、 この場合、 該目標 運動の第 2仮瞬時値は、 これに第 2動力学モデル上で略釣り合う制限対 象量瞬時値が前記許容範囲内に収まるように求められる。 そして、 少な くとも前記目標運動の第 1仮瞬時値と第 2仮瞬時値との差に基づいて、 該差が零に近づくように床反力モーメントの操作量が求められ、 これが 第 1動力学モデル及び第 2動力学モデルのうちの少なくともいずれか一 方に追加的に入力される。 さらに、 目標運動の第 2仮瞬時値が該目標運 動の目標瞬時値として決定される。
このため、 制限付き第 2モデル演算手段が求める目標運動の第 2仮瞬 時値は、 前記制限対象量を許容範囲に収めつつ、 安定性の高いものとな る。 その結果、 床反力モーメント鉛直成分等の制限対象量を許容範囲内 に収めるような目標歩容の運動を生成することができる。 つまり、 前記 動力学モデル上で摩擦カモ一メント鉛直成分の限界を考慮して、 目標運 動の瞬時値が決定される。 それにより、 口ポッ トのスピンおよびそれに 起因する転倒を防止することを可能とする目標歩容を生成できる。 また、 制限対象量が許容範囲に収まる限り、 該制限対象量を常に 0もしくはほ ぼ 0にする必要がないことから、 ロポッ トのある部位の運動が過剰に激 しい運動となったりすることのない目標歩容を生成できる。
なお、 第 1動力学モデルは比較的動力学的な近似精度の低いものでよ く、 また、 第 2動力学モデルは、 第 1動力学モデルよりも勤力学的な近 似精度が高いものであることが望ましい。
この第 2 7発明では、 前記目標運動の第 1仮瞬時値と第 2仮瞬時値と の差は、 前記口ポッ トの所定の部位の姿勢の、 鉛直軸回り又は床面法線 軸回りの状態量の差を含むことが好ましい (第 2 8発明)。
これによれば、 前記所定の部位 (例えば上体) のョ一方向の姿勢状態 量の安定性を好適に高めることができる。 また、 上記第 2 7及び第 2 8発明では、 前記目標運動め瞬時値に前記 第 2の動力学モデル上で略釣り合う制限対象量に対応する床反力モ一メ ントの瞬時値を前記目標歩容を構成する目標床反力モーメントの瞬時値 として決定する手段を備えることが好ましい (第 2 9発明)。
これによれば、 目標運動の瞬時値に対して動力学的な精度の高い目標 床反カモ一メン卜の瞬時値を決定できる。
上述のような第 2 7発明は、 例えば前記第 1 7発明の構成を用いるこ とで、 容易に実現できる。 すなわち、 前記第 1 7発明において、 少なく とも前記目標床反力の仮瞬時値を、 前記ロポッ トの運動と床反力との関 係を表す第 3動力学モデルに入力し、 該第 3動力学モデルの出力として の目標運動の第 3仮瞬時値を求める第 3モデル演算手段を備え、 前記目 標床反力の床反カモ一メント補正量の要求値を決定する手段は、 前記決 定した前記目標運動の目標瞬時値と前記目標運動の第 3仮瞬時値との差 に基づいて、 該差が零に近づくように前記要求値を決定する (第 3 0発 明)。
かかる第 3 0発明では、 上記第 3動力学モデルおよび第 3モデル演算 手段がそれぞれ第 1 7発明における第 1動力学モデル、 第 1モデル演算 手段に相当するものとなる。 従って、 第 3 0発明は、 第 1 7発明と同等 のものとなり、 第 1 7発明と同様の効果を奏することができる。
また、 本発明の脚式移動ロボッ トの歩容生成装置の第 3 1発明は、 上 体から延設された複数の脚体を運動させて移動する脚式移動ロポッ トの 目標歩容を生成する歩容生成装置において、
前記口ポッ トに作用させる床反力モーメントの鉛直成分又は該床反力 モーメントの床面法線方向成分又は該ロボッ トの角運動量変化率の鉛直 成分又は該角運動量変化率の床面法線方向成分を制限対象量として、 該 制限対象量の許容範囲を設定する許容範囲設定手段と、 前記目標歩容を構成する目標運動の仮瞬時値を逐次決定する目標運動 仮瞬時値決定手段と、
前記目標運動の仮瞬時値を前記ロポッ トの運動と前記制限対象量との 関係を表す動力学モデルに入力し、 該動力学モデルの出力としてのモデ ル制限対象量瞬時値を求めるモデル演算手段と、
前記モデル制限対象量瞬時値のうちの前記許容範囲を逸脱した分を口 —パスフィル夕に通したものに応じて前記目標運動の仮瞬時値を補正し て目標運動の瞬時値を決定する目標瞬時値決定手段とを備えたことを特 徴とする。
かかる第 3 1発明によれば、 前記動力学モデルの出力としてのモデル 制限対象量瞬時値のうちの前記許容範囲を逸脱した分を口一パスフィル 夕に通したものに応じて前記目標運動の仮瞬時値を補正して目標運動の 瞬時値を決定する。 換言すれば、 前記逸脱した分の低周波成分 (直流成 分を含む) に応じて目標運動の仮瞬時値を補正する。 このため、 床反力 モーメント鉛直成分等の制限対象量を許容範囲を定常的に逸脱すること を防止し得る目標歩容の運動を生成する.ことができる。 つまり、 前記動 力学モデル上で摩擦カモ一メント鉛直成分の限界を考慮して、 目標運動 の瞬時値が決定される。 それにより、 口ポッ トのスピンおよびそれに起 因する転倒を防止することを可能とする目標歩容を生成できる。 また、 制限対象量を常に 0もしくはほぼ 0にする必要がないことから、 ロポッ 卜のある部位の運動が過剰に激しい運動となったりすることのない目標 歩容を生成できる。
この第 3 1発明では、 前記目標瞬時値決定手段は、 前記モデル制限対 象量瞬時値と前記逸脱した分との差に対応する床反カモ一メントを前記 目標歩容を構成する目標床反力モーメントの瞬時値として決定すること が好ましい (第 3 2発明)。 これによれば、 目標運動の瞬時値に対して動力学的な精度の高い目標 床反力モーメントの瞬時値を決定できる。
次に本発明の脚式移動ロボッ トの制御装置である第 3 3発明は、 前記 した第 1〜第 3 2発明の脚式移動ロポッ トの歩容生成装置により生成さ れた目標歩容に追従させるように該ロボッ トの動作を制御する制御装置 において、 前記目標歩容に追従して動作しているロポッ トの滑りの発生 を判断する滑り判断手段を備え、 前記許容範囲設定手段は、 該滑り判断 手段の判断結果に応じて前記許容範囲を可変的に設定することを特徴と する。
この第 3 3発明によれば、 実際の口ポッ トの滑りの発生の判断結果に 応じて制限対象量の許容範囲を可変的に設定するので、 ロボッ トの滑り の発生を確実に抑制できる。 なお、 滑りの発生が有ると判断されたとき には、 許容範囲は、 それを狭めるように設定されるべきである。
また、 この第 3 3発明では、 例えば、 次のようにして、 滑りの発生を 判断することができる。
すなわち、 前記滑り判断手段は、 少なくとも接地している脚体の先端 部の対地速度に基づき滑りの発生を判断する. (第 3 4発明)。 この場合、 例えば該対地速度の絶対値が所定値よりも大きいときには、 滑りの発生 が有ると判断することができる。
あるいは、 前記滑り判断手段は、 少なくとも接地している脚体に作用 する実床反力の時間的変化率と該脚体の先端部の対地速度とに基づき、 該脚体の見かけばね定数を求める手段を備え、 少なく とも該見かけばね 定数に基づき滑りの発生を判断する (第 3 5発明)。 この場合、 例えば 該見かけばね定数が所定値よりも小さいときには、 滑りの発生が有ると 判断することができる。
あるいは、 前記滑り判断手段は、 少なくとも接地している脚体に作用 する実床反力を、 所定周波数の近傍範囲に周波数通過特性を有するバン ドバスフィルタに通したものに基づき滑りの発生を判断する (第 3 6発 明)。 この場合、 前記実床反力をバンドパスフィルタに通したものは、 いわゆる滑り振動が発生しているときの、 実床反力の振動成分に相当す るものとなる。 そして、 例えばこの振動成分の大きさ (絶対値) が所定 値よりも大きいときには、 滑り振動の発生が有ると判断することができ る。 ·
なお、 滑りの発生の判断は、 第 3 4〜第 3 6発明のいずれでも行なう ことができるが、 これらの第 3 4〜第 3 6発明の 2つ以上を組み合わせ て滑りの発生の判断を行なうようにしてもよい。
図面の簡単な説明
図 1は本発明の実施形態およびこれに関連する参考例における脚式移 動口ポッ トとしての 2足移動口ポッ トの全体構成を概略的に示す図、 図 2は図 1のロボッ トの脚体の先端部の構造を示す図、 図 3は図 1のロボ ッ トに備えた制御ュニッ 卜の構成を示すブロック図、 図 4は第 1参考例 における制御ュニッ トの機能的構成を示すプロック図である。 図 5は実 施形態および参考例で生成する走行歩容を説明するための図、 図 6は目 標床反力鉛直成分軌道の例を示すグラフ、 図 7は目標 Z M P軌道の X成 分および Y成分の例を示すグラフ、 図 8はロボッ トの上体並進モードを 説明するための図、 図 9はロポッ トの上体傾斜モードを説明するための 図、 図 1 0はロボッ トの上体ョ一回転モードを説明するための図、 図 1 1 ( a ) は口ポッ トの逆位相腕振りモードを平面視で説明するための図、 図 1 1 ( b ) は口ポッ トの逆位相腕振りモードを側面視で説明するため の図、 図 1 2は実施形態で用いる動力学モデルを説明するための図であ る。 図 1 3は第 1参考例における歩容生成装置のメインルーチン処理を 示すフローチヤ一ト、 図 1 4はロボッ トの発散状態を説明するための図、 図 1 5は図 1 3の S 0 2 2のサブルーチン処理を示すフロ一チヤ一ト、 図 1 6は定常歩容と支持脚座標系とを説明するための図、 図 1 7は定常 歩容の上体軌道と支持脚座標系とを例示する図、 図 1 8は基準逆位相腕 振り角の例を示すグラフ、 図 1 9は定常歩容における目標床反力鉛直成 分軌道の設定例を示すグラフ、 図 2 0は定常歩容における床反力水平成 分許容範囲の設定例を示すグラフ、 図 2 1は定常歩容における床反カモ —メント鉛直成分許容範囲の設定例を示すグラフ、 図 2 2は定常歩容に おける目標 Z M P軌道の設定例を示すグラフである。 図 2 3は図 1 3の S 0 2 4のサブルーチン処理を示すフローチャート、 図 2 4は図 2 3の S 2 0 8のサブルーチン処理を示すフロ一チヤ一ト、 図 2 5は図 2 4の S 3 0 6のサブルーチン処理を示すフローチヤ一卜、 図 2 6は図 2 5の S 4 1 2のサブルーチン処理を示すフローチヤ一トである。 図 2 7は許 容範囲を考慮しない床反力水平成分の例を示すグラフ、 図 2 8は許容範 囲を考慮した床反力水平成分の例を示す.グラフ、 図 2 9は上体傾斜角加 速度の例を示すグラフ、 図 3 0はロポッ トの上体傾斜角を復元するため の上体傾斜復元モーメント Z M P換算値の例を示すグラフ、 図 3 1は上 体傾斜復元モーメント Z M P換算値を加味した上体傾斜角加速度の例を 示すグラフ、 図 3 2は許容範囲を考慮しない床反力モーメント鉛直成分 の例を示すグラフ、 図 3 3は許容範囲を考慮した床反力モーメント鉛直 成分の例を示すグラフ、 図 3 4は逆位相腕振りモーメントの例を示すグ ラフ、 図 3 5は図 3 4の逆位相腕振りモーメントに対応する逆位相腕振 り角加速度を示すグラフ、 図 3 6は逆位相腕振り角を復元するための逆 位相腕振り復元角加速度の例を示すグラフ、 図 3 7は図 3 6の逆位相腕 振り復元角加速度に対応する逆位相腕振り復元モーメントを示すグラフ、 図 3 8は図 3 3の床反力モ一メント鉛直成分と図 3 7の逆位相腕振り復 元モーメントとを合成してなる床反力モーメント鉛直成分を示すグラフ である。 図 3 9は図 1 3の S 0 2 6のサブルーチン処理を示すフローチ ャ一ト、 図 4 0は今回歩容の床反力水平成分許容範囲の設定例を示すグ ラフ、 図 4 1は今回歩容の床反力モーメント鉛直成分許容範囲の設定例 を示すグラフ、 図 4 2は図 1 3の S 0 2 8のサブルーチン処理を示すフ 口一チャート、 図 4 3は図 4 2の S 7 0 2のサブルーチン処理を示すフ ローチャート、 図 44は今回歩容の仮目標 Z MPと Z MP修正量と修正 後の目標 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は第 2参考例における制御ュニッ トの機能的構成を示すブロック 図、 図 5 4は図 5 3に示す補償全床反力モーメント水平成分分配器の処 理を示すブロック図、 図 5 5は図 5 3に示すモデル操作床反力モーメン ト鉛直成分決定器の処理を示すブロック図、 図 5 6は第 2参考例におけ る歩容生成装置のメインルーチン処理を示すフローチャート、 図 5 7は 図 5 6の S 3 0 3 2のサブルーチン処理を示すフローチヤ一ト、 図 5 8 は図 5 7の S 3 4 1 4のサブルーチン処理を示すフローチヤ一トである。 図 5 9は第 3参考例における制御ュニッ 卜の機能的構成を示すブロック 図、 図 6 0は第 3参考例における歩容生成装置のメインルーチン処理を 示すフローチヤ一ト、 図 6 1は図 6 0の S 2 0 3 4のサブルーチン処理 を示すフローチャート、 図 6 2は図 6 1の S 2 1 1 4のサブル一チン処 理を示すフロ一チヤ一卜である。 図 6 3は本発明の第 1実施形態におけ る制御ュニッ 卜の機能的構成を示すブロック図、 図 6 4は第 1実施形態 における歩容生成装置の機能的構成を示すブロック図、 図 6 5は第 1実 施形態における Z M P許容範囲の設定例を示す図、 図 6 6は第 1実施形 態における歩容生成装置のメインル一チン処理を示すフローチヤ一ト、 図 6 7は図 6 6の S 3 5 3 6の処理を示すブロック図、 図 6 8は図 6 7 に示す上体水平位置摂動用モデルを説明するための図、 図 6 9は図 6 7 に示す上体姿勢角補正用摂動モデルの説明するための図、 図 7 0は図 6 7に示す逆位相腕振り角補正用摂動モデルを説明するための図、 図 7 1 は図 6 7に示す逆位相腕振り角補正用摂動モデルモーメント決定部の処 理を示すブロック図である。 図 7 2は本発明の第 2実施形態における図 6 6の S 3 5 3 6の処理を示すブロック図、 図 7 3は図 7 2に示す逆位 相腕振り角補正用摂動モデルモーメント決定部の処理を示すプロック図 である。 図 7 4は本発明の第 3実施形態における歩容生成装置の機能的 構成を示すブロック図、 図 7 5は図 7 4に示す擬似順フルモデルの処理 を示すブロック図である。 図 7 6は本発明の第 4実施形態における図 6 6の S 3 5 3 6の処理を示すブロック図である。 図 7 7は本発明の第 5 実施形態に関連する第 4参考例における制御ュニッ トの機能的構成を示 すブロック図、 図 7 8は第 4参考例における歩容生成装置のメインルー チン処理を示すフローチャート、 図 7 9は図 7 8の S 2 3 3 4の処理を 示すフローチヤ一ト、 図 8 0は図 7 7に示す滑り判定部の処理を示すフ 口—チャート、 図 8 1〜図 8 3はそれぞれ図 8 0の S 5 2 1 0、 S 5 2 1 2、 S 5 2 1 4のサブルーチン処理を示すフ 0—チヤ一ト、 図 8 4は 滑り判定部の判定結果と、 許容範囲の低減率と、 床反力許容範囲との例 を示すグラフ、 図 8 5は第 1〜第 5実施形態に関する変 ¾態様の例を示 すブロック図、 図 8 6は第 1実施形態に関する逆位相腕振り角補正用摂 動モデルモーメント決定部の処理の変形態様の例 (第 6実施形態) を示 すブロック図である。 発明を実施するための最良の形態
以下、 添付図面を参照してこの発明の実施形態に係る脚式移動ロポッ トの制御装置を説明する。 尚、 脚式移動口ポッ トとしては 2足移動ロボ ッ トを例にとる。
まず、 図 1〜図 4 7を参照して、 本発明の脚式移動口ポッ トの制御装 置に関連する第 1参考例を説明しておく。 さらに、 図 5 3〜図 5 8を参 照して第 2参考例を、 図 5 9〜図 6 2を参照して第 3参考例を説明して おく。 後述する本発明の実施形態は、 その機構的構成は第 1参考例と同 一であり、 また、 口ポッ トの歩容生成処理および制御処理の一部のみが 第 1〜第 3参考例のいずれかと相違するものである。 従って、 後述する 実施形態の説明では、 この第 1〜第 3参考例の説明をしばしば援用する。 補足すると、 図 1 と後述の図 2、 図 3並びに図 5〜図 1 2を参照して説 明する事項は、 後述の実施形態においても同一である。
まず、 第 1参考例を説明する。 図 1は、 この第 1参考例に係る脚式移 動口ポッ トとしての 2足移動ロボッ トを全体的に示す概略図である。
図示の如く、 2足移動口ポッ ト (以下、 口ポッ トという) 1 は上体 (ロボッ ト 1の基体) 3から下方に延設された左右一対の脚体 (脚部リ ンク) 2, 2を備える。 両脚体 2, 2は同一構造であり、 そ,れぞれ 6個 の関節を備える。 その 6個の関節は上体 3側から順に、 股 (腰部) の回 旋 (回転) 用 (上体 3に対するョー方向の回転用) の関節 1 0 R, 1 0 L (符号 R, Lはそれぞれ右側脚体、 左側脚体に対応するものであるこ とを意味する符号である。 以下同じ) と、 股 (腰部) のロール方向 (X 軸まわり) の回転用の関節 1 2 R, 1 2 Lと、 股 (腰部) のピッチ方向 (Y軸まわり) の回転用の関節 1 4 R, 1 4 Lと、 膝部のピッチ方向の 回転用の関節 1 6 R, 1 6 Lと、 足首のピッチ方向の回転用の関節 1 8 R, 1 8 Lと、 足首のロール方向の回転用の関節 2 0 R, 2 0 Lとから 構成される。
各脚体 2·の足首の 2つの関節 1 8 R (L), 2 O R (L) の下部には、 各脚体 2の先端部を構成する足平 (足部) 2 2 R (L) が取着されると 共に、 両脚体 2 , 2の最上位には、 各脚体 2の股の 3つの関節 1 O R (L), 1 2 (L), 1 R (L) を介して前記上体 3が取り付けられ ている。 上体 3の内部には、 詳細を後述する制御ユニッ ト 6 0などが格 納される。 なお、 図 1では図示の便宜上、 制御ユニッ ト 6 0を上体 3の 外部に記載している。
上記構成の各脚体 2においては、 股関節 (あるいは腰関節) は関節 1 O (L), 1 2 R (L), 1 4 R (L) から構成され、 膝関節は関節 1 6 R (L) から構成され、 足首関節は関節 1 8 R (L), 2 0 R (L) から構成される。 また股関節と膝関節とは大腿リンク 2 4 R (L) で連 結され、 膝関節と足首関節とは下腿リンク 2 6 R (L) で連結される。 上体 3の上部の両側部には左右一対の腕体 5, 5が取り付けられると 共に、 上体 3の上端部には頭部 4が配置される。 各腕体 5は、 3つの関 節 3 0 R (L), 3 2 R (L), 3 4 R (L) から構成された肩関節と、 関節 3 6 R (L) から構成された肘関節と、 関節 3 8 R (L) から構成 された手首関節と、 この手首関節に連結された手先部 4 0 R (L) とを 備えている。 なお、 頭部 4は、 本発明の要旨と直接的な関連を有しない ため詳細な説明を省略する。
上記の構成により、 各脚体 2の足平 2 2 R (L) は、 上体 3に対して 6つの自由度を与えられている。 そして、 口ポッ ト 1の歩行等の移動中 に、 両脚体 2 , 2を合わせて 6 * 2 = 1 2個 (この明細書で 「 *」 はス カラに対する演算としては乗算を、 べク トルに対する演算としては外積 を示す) の関節を適宜な角度で駆動することで、 両足平 2 2 R, 2 2 L の所望の運動を行うことができる。 これにより、 口ポッ ト 1は任意に 3 次元空間を移動することができる。 また、 各腕体 5は、 その肩関節、 肘 関節、 手首'関節の回転によって、 腕振り等の運動を行うことができる。 図 1に示す如く、 各脚体 2の足首関節 1 8 R ( L ) , 2 0 R ( L ) の 下方には足平 2 2 R ( L ) との間に公知の 6軸力センサ 5 0が介装され ている。 該 6軸力センサ 5 0は、 各脚体 2の足平 2 2 R ( L ) の着地の 有無、 および各脚体 2に作甩する床反力 (接地荷重) 等を検出するため のものであり、 該床反力の並進力の 3方向成分 F x, F y , F z並びに モーメントの 3方向成分 M X, 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 は本第 1参考例における各脚体 2の先端部分 (各足平 2 2 R ( L ) を含む) の基本構成を概略的に示す図である。 同図に示すように、 各足平 2 2 R ( L ) の上方には、 前記 6軸力センサ 5 0との間にばね機 構 7 0が装備されると共に、 足底 (各足平 2 2 R ( L ) の底面) にはゴ ムなどからなる足底弾性体 7 1が貼られている。 これらのばね機構 7 0 及び足底弾性体 7 1によりコンプライアンス機構 7 2が構成されている。 ばね機構 7 0は詳細は後述するが、 足平 2 2 R ( L ) の上面部に取り付 けられた方形状のガイ ド部材 (図示省略) と、 足首関節 1 8 R ( L ) (図 2では足首関節 2 O R ( L ) を省略している) および 6軸力センサ 5 0側に取り付けられ、 前記ガイ ド部材に弹性材 (ゴムやばね) を介し て微動自在に収納されるピストン状部材. (図示省略) とから構成されて いる。
図 2に実線で表示された足平 2 2 R ( L ) は、 床反力を受けていない ときの状態を示している。 各脚体 2が床反力を受けると、 コンプライア ンス機構 7 2のばね機構 7 0と足底弾性体 7 1 とがたわみ、 足平 2 2 R ( L ) は図中に点線で例示したような位置姿勢に移る。 このコンプライ ンァス機構 7 2の構造は、 例えば本出願人が先に提案した特開平 5— 3 0 5 5 8 4号公報に詳細に説明されている如く、 着地衝撃を緩和するた めだけでなく、 制御性を高めるためにも重要なものである。
図 3は制御ユニッ ト 6 0の構成を示すブロック図である。 該制御ュニ ッ ト 6 0はマイクロコンピュータにより構成されており、 C P Uからな る第 1の演算装置 9 0及び第 2の演算装置 92、 AZD変換器 8 0、 力 ゥン夕 8 6、 DZA変換器 9 6、 RAM 84 , R〇M 94、 並びにこれ らの間のデータ授受を行うバスライン 8 2を備えている。 この制御ュニ ッ ト 6 0では、 各脚体 2の 6軸力センサ 50、 姿勢センサ 54 (加速度 センサおよびレートジャイロセンサ)、 ジョイスティ ック 7 3等の出力 信号は AZD変換器 8 0でデジタル値に変換された後、 パスライン 8 2 を介して R' A M84に送られる。 また口ポッ ト 1の各関節のエンコーダ 6 5 (ロータリ一エンコーダ) の出力は、 カウンタ 8 6を介して RAM 84に入力される。
前記第 1の演算装置 9 0は後述の如く目標歩容を生成すると共に、 関 節角変位指令 (各関節の変位角もしくは各電動モータ 64の回転角の指 令値) を算出し、 RAM84に送出する。 また第 2の演算装置 9 2は R AM 84から関節角変位指令と、 前記エンコーダ 6 5の出力信号に基づ いて検出された関節角の実測値とを読み出し、 各関節の駆動に必要な操 作量を算出して DZ A変換器 9 6とサーポアンプ 64 aとを介して各関 節を駆動する電動モータ 64に出力する。
図 4は、 この第 1参考例に係る脚式移動ロポッ トの制御装置の機能的 構成を全体的に示すブロック図である。 この図 4中の 「実口ポッ ト」 の 部分以外の部分が制御ュニッ ト 6 0が実行する処理機能 (主として第 1 の演算装置 90及び第 2の演算装置 9 2の機能) によって構成されるも のである。 なお、 以下の説明では、 脚体 2および腕体 5の左右を特に区 別する必要がないときは、 前記符号 R, Lを省略する。
以下説明すると、 制御ユニッ ト 6 0は、 ロボッ ト 1の目標歩容を自在 かつリアルタイムに生成して出力する歩容生成装置 1 0 0を備えている。 該歩容生成装置 1 00は、 その機能によって、 本願発明の各手段を構成 するものである。 この歩容生成装置 1 0 0が出力する目標歩容は、 目標 上体位置姿勢軌道 (上体 3の目標位置及び目標姿勢の軌道)、 目標足平 位置姿勢軌道 (各足平 2 2の目標位置及び目標姿勢の軌道)、 目標腕姿 勢軌道 (各腕体 5の目標姿勢の軌道)、 目標全床反力中心点 (目標 Z M P ) 軌道、 目標全床反力軌道から構成される。 なお、 脚体 2や腕体 5以 外に上体 3に対して可動な部位を備える場合には、 その可動部位の目標 位置姿勢軌道が目標歩容に加えられる。
ここで、 上記歩容における 「軌道」 は時間的変化のパターン (時系列 パターン) を意味し、 以下の説明では、 「軌道」 の代わりに 「パ夕一 ン」 と称することもある。 また、 「姿勢」 は空間的な向きを意味する。 具体的には、 例えば上体姿勢は Z軸 (鉛直軸) に対するロール方向 (X 軸まわり) の上体 3の傾斜角とピッチ方向 (Y軸まわり) の上体 3の傾 斜角とョ一方向 (Z軸まわり) の上体 3の回転角 (ョ一角) とで表され、 足平姿勢は各足平 2 2に固定的に設定された 2軸の空間的な方位角で表 される。 本明細書では、 上体姿勢は上体姿勢角ということもある。 また、 上体姿勢のうち、 鉛直方向に対する姿勢を上体姿勢傾斜もしくは上体姿 勢傾斜角ということもある。
尚、 以下の説明では、 誤解を生じるおそれがない場合には、 しばしば 「目標」 を省略する。 また、 歩容のうちの、 床反力に係わる構成要素以 外の構成要素、 すなわち足平位置姿勢、 上体位置姿勢等、 口ポッ ト 1の 運動に係わる歩容を総称的に 「運動」 という。 また、 各足平 2 2に作用 する床反力 (並進力及びモーメントからなる床反力) を 「各足平床反 力」 と呼び、 口ポッ ト 1の全て ( 2つ) の足平 2 2 R, 2 2 Lについて の 「各足平床反力」 の合力を 「全床反力」 という。 ただし、 以下の説明 においては、 各足平床反力はほとんど言及しないので、 特に断らない限 り、 「床反力」 は 「全床反力」 と同義として扱う。
目標床反力は、 一般的には、 作用点とその点に作用する並進力及びモ 一メントによって表現される。 作用点はどこにとっても良いので、 同一 の目標床反力でも無数の表現が考えられるが、 特に目標床反力中心点 (全床反力の中心点の目標位置) を作用点にして目標床反力を表現する と、 目標床反力のモーメント成分は、 鉛直成分 (鉛直軸 (Z軸) まわり のモーメント) を除いて零になる。 換言すれば、 目標床反力中心点まわ りの目標床反力のモーメントの水平成分 (水平軸 (X軸及び Y軸) 回り のモーメント) は零になる。
尚、 動力学的平衡条件を満足する歩容では、 ロボッ ト 1の目標運動軌 道から算出される Z M P (目標運動軌道から算出される慣性力と重力と の合力がその点まわりに作用するモーメントが、 鉛直成分を除いて零に なる点) と目標床反力中心点は一致することから、 目標床反力中心点軌 道の代わりに目標 Z M P軌道を与えると言っても同じことである (詳細 は、 本願出願人による P C T公開公報 WOZ 02/40224等を参照)。
このような背景から、 上記 P C T公開公報 WOZ 02Z 40224の明細書 では目標歩容を、 次のように定義していた。
a ) 広義の目標歩容とは、 1歩ないしは,複数歩の期間の目標運動軌道と その目標床反力軌道との組である。
b ) 狭義の目標歩容とは、 1歩の期間の目標運動軌道とその Z M P軌道 との組である。
c )一連の歩容は、 いくつかの歩容がつながったものとする。
歩行においては、 本出願人が先に特開平 1 0— 8 6 0 8 0号公報で提 案した上体高さ決定手法によってロボッ ト 1の上体 3の鉛直位置 (上体 高さ) が決定されると、 並進床反力鉛直成分は従属的に決定される。 さ らに、 目標歩容の運動による慣性力と重力との合力が目標 Z M Pまわり に発生するモーメントの水平成分が零になるようにロボッ ト 1の上体水 平位置軌道を決定することで、 並進床反力水平成分も決定される。 この ため、 P C T公開公報 WOZ 02ノ 40224の明細書では、 自標歩容の床反 力に関して明示的に設定すべき物理量としては、 目標 Z M Pだけで十分 であった。 したがって、 狭義の目標歩容の定義としては、 上記の b ) で 十分であった。 それに対し、 本第 1参考例で説明するロボッ ト 1の走行 歩容 (詳細は後述する) においては、 床反力鉛直成分 (並進床反力鉛直 成分) も制御上重要である。 このため本発明では、 この床反力鉛直成分 の目標軌道を明示的に設定した上で、 口ポッ ト 1の目標上体鉛直位置等 の軌道を決定する。 そこで、 本明細書では、 狭義の目標歩容の定義とし て、 次の b ' ) を用いる。
b ' ) 狭義の目標歩容とは、 1歩の期間の目標運動軌道と、 その目標 Z M P軌道と目標並進床反力鉛直成分軌道とを少なくとも含む目標床反力 軌道との組である。
この明細書では以降、 理解を容易にするために、 特にこ'とわらない限 り、 目標歩容は上記 b ' ) の狭義の目標歩容の意味で使用する。 この場 合、 目標歩容の 「 1歩」 は、 口ポッ ト 1の片方の脚体 2が着地してから もう一方の脚体 2が着地するまでの意味で使用する。 補足すると、 本明 細書の参考例および実施形態では、 目標歩容は 1歩の期間分の歩容の意 味で使用するが、 それは必ずしも 1歩の期間分のものである必要はなく、 複数歩分、 あるいは 1歩よりも短い (例えば半歩など) の期間分の歩容 であってもよい。 尚、 以下の説明では、 「床反力鉛直成分」 は 「並進床 反力鉛直成分」 を意味するものとし、 床反力のうちのモーメントの鉛直 成分 (鉛直軸回り成分) は、 「モーメント」 という用語を用いて 「床反 力鉛直成分」 と区別をする。 同様に、 「床反力水平成分」 は 「並進床反 力水平成分」 を意味するものとする。
また、 歩容における両脚支持期とは言うまでもなく、 口ポッ ト 1がそ の自重を両脚体 2 , 2で支持する期間、 片脚支持期とはいずれか一方の みの脚体 2で口ポッ ト 1の自重を支持する期間、 空中期-とは両脚体 2 , 2が床から離れている (空中に浮いている) 期間を言う。 片脚支持期に おいてロボッ ト 1の自重を支持しない側の脚体 2を 「遊脚」 と呼ぶ。 尚、 本第 1参考例で説明する走行歩容では、 両脚支持期は無く、 片脚支持期 (着地期) と空中期とが交互に繰り返される。 この場合、 空中期では両 脚体 2, 2とも、 口ポッ ト 1の自重を支持しないこととなるが、 該空中 期の直前の片脚支持期において遊脚であった脚体 2、 支持脚であった脚 体 2をそれぞれ該空中期においても遊脚、 支持脚と呼ぶ。
図 5に示す走行歩容を例にして、 歩容生成装置 1 0 0が生成する目標 歩容の概要を説明する。 なお、 歩容に関するその他の定義および詳細は、 先に本願出願人が提案した特開平 1 0— 8 6 0 8 1号公報にも記載され ているので、 以下では、 特開平 1 0— 8 6 0 8 1号公報に記載されてい ない内容を主に説明する。 '
まず、 図 5に示す走行歩容を説明する。 この走行歩容は、 人間の通常 的な走行歩容と同様の歩容である。 この走行歩容では、 口ポッ ト 1の左 右いずれか一方のみの脚体 2 (支持脚) .の足平 2 2が着地 (接地) する 片脚支持期と、 両脚体 2, 2が空中に浮く空中期とが交互に繰り返され る。 図 5の 1番目の状態は片脚支持期の開始時 (初期) の状態、 2番目 の状態は片脚支持期の中間時点の状態、 3番目の状態は片脚支持期に続 く空中期の開始時 (片脚支持期の終了時) の状態、 4番目の状態は空中 期の中間時点の状態、 5番目の状態は空中期の終了時 (次の片脚支持期 の開始時) の状態を示している。
この走行歩容では.、 ロボッ ト 1は、 図 5の 1番目の状態で示すように、 片脚支持期の開始時において支持脚 (口ポッ ト 1の進行方向前側の脚体 2 ) 側の足平 2 2のかかとで着地する。 続いて、' 図 5の 2番目の状態で 示すように、 口ポッ ト 1は、 着地した足平 2 2 (支持脚側の足平 2 2 ) の底面のほぼ全面を着地させた後、 図 5の 3番目の状態で示すように、 その支持脚側の足平 2 2 (図 5の 3番目の状態におけるロポッ 卜 1の進 行方向後側の脚体 2の足平 2 2 ) のつま先で床を蹴って空中に飛び上が る。 これより片脚支持期が終了すると共に空中期が開始する。 尚、 片脚 支持期における遊脚は、 図 5の 1番目の状態で示すように、 片脚支持期 の開始時で'は、 支持脚の後側に存在するが、 図 5の 2番目及び 3番目の 状態で示すように次の着地予定位置に向かって支持脚の前側に振り出さ れる。 次いで、 図 5の 4番目の状態で示す空中期を経た後、 ロボッ ト 1 は、 遊脚 (空中期 開始直前の片脚支持期で遊脚となっていた脚体 2 ) の足平 2 2のかかとで着地し、 次の片脚支持期が開始される。
図 5の走行歩容を考慮しつつ、 前記歩容生成装置 1 0 0が生成する目 標歩容の基本的な概要を説明する。 詳細は後述するが、 歩容生成装置 1 0 0が目標歩容を生成するとき、 遊脚側の足平 2 2の着地位置姿勢 (着 地予定位置姿勢) や着地時刻 (着地予定時刻) 等の目標歩容生成用の基 本的な要求値 (要求パラメータ) が、 前記ジョイスティック 7 3の所要 の操作等に応じて歩容生成装置 1 0 0に与えられる。 そして、 歩容生成 装置 1 0 0は、 その要求パラメ一タを用いて目標歩容を生成する。 より 詳しく言えば、 歩容生成装置 1 0 0は、 上記要求パラメ一夕に応じて、 目標歩容の目標足平位置姿勢軌道、 目標床反力鉛直成分軌道等、 目標歩 容の一部の構成要素を規定するパラメータ (歩容パラメ一夕という) を 決定した上で、 その歩容パラメ一夕を用いて目標歩容の瞬時値を逐次決 定し、 該目標歩容の時系列パターンを生成する。
この場合、 目標足平位置姿勢軌道 (より詳しくは、 足平の位置及び姿 勢の空間的な各成分 (X軸成分等) の目標軌道) は、 例えば本出願人が 特許第 3 2 3 3 4 5 0号にて提案した有限時間整定フィル夕を用いて各 足平 2 2毎に生成される。 この有限時間整定フィル夕は、 可変時定数の 1次遅れフィル夕、 すなわち、 伝達関数が 1 Z ( 1 + τ s ) の形で表さ れるフィル夕 ( ては可変の時定数。 以下、 このフィル夕を単位フィル夕 という) を複数段 (本第 1参考例では 3段以上)、 直列に接続したもの であり、 所望の指定時刻に指定値に到達するような軌道を生成 · 出力す ることができるものである。 この場合、 各段の単位フィルタの時定数て は、 いずれも、 有限時間整定フィル夕の出力生成を開始してから、 上記 指定時刻までの残時間に応じて逐次可変的に設定される。 より詳しくは、 該残時間が短くなるに伴い て の値が所定の初期値 (> 0 ) から減少され ていき、 最終的には、 該残時間が 0になる指定時刻にて、 て の値が 0に なるように設定される。 そして、 有限時間整定フィルタには、 前記指定 値 (より詳しくは、 有限時間整定フィルタの出力の初期値から前記指定 値への変化量) に応じた高さのステップ入力が与えられる。 このような 有限時間整定フィルタは、 指定時刻にて指定値に達するような出力が生 成されるだけでなく、 指定時刻における有限時間整定フィルタの出力の 変化速度を 0もしくはほぼ 0にすることができる。 特に、 単位フィル夕 を 3段以上 ( 3段でよい)、 接続した場合には、 有限時間整定フィルタ の出力の変化加速度 (変化速度の微分値) をも 0もしくはほぼ 0にする ことができる。
尚、 上記のように有限時間整定フィル夕により生成される目標足平位 置姿勢軌道は、 床面に固定された後述の支持脚座標系での各足平 2 2の 目標位置姿勢軌道である。
上述のように生成される目標足平位置姿勢軌道は、 各足平 2 2の位置 が、 その初期接地状態 (目標歩容の初期時刻の状態) から着地予定位置 に向かって徐々に加速しながら移動を開始するように生成される。 そし て、 該目標足平位置姿勢軌道は、 最終的に着地予定時刻までに徐々に位 置の変化速度を 0またはほぼ 0にまで減速し、 着地予定時刻にて着地予 定位置に到達して停止するように生成される。 このため、' 各足平 2 2の 着地瞬間における対地速度 (床に固定された支持脚座標系での各足平 2 2の位置の変化速度) が 0またはほぼ 0になる。 したがって、 走行歩容 において同時に全脚体 2 , 2が空中に存在する状態 (空中期での状態) から着地しても、 着地衝撃が小さくなる。
前記走行歩容においては、 ロボッ ト 1に作用する重力によって空中期 後半から上体 3の鉛直速度は下向きになり、 着地時でも下向きのままで ある。 したがって、 上記のように各足平 2 2の着地瞬間における対地速 度が 0またはほぼ 0になるように目標足平位置姿勢軌道を生成すると共 に、 後述する如く動力学的平衡条件を満たすように上体 3の目標位置姿 勢軌道を生成したとき、 着地直前において、 上体 3に対する遊脚側の足 平 2 2の相対速度は、 上向きになる。 すなわち、 走行歩容の着地瞬間で は、 ロボッ ト 1の目標歩容は遊脚側の脚体 2 2を上体 3側に引っ込めな がら着地するような歩容となる。 言い換えれば、 本第 1参考例での目標 歩容では、 口ポッ ト 1は、 着地瞬間において、 遊脚側の足平 2 2の対地 速度が 0またはほぼ 0になるように、 上体 3から見て該足平 2 2を引き 上げるようにして着地する。 これによつて、 着地衝撃は小さくなり、 着 地衝撃が過大になるのを防止するようにしている。
また、 本第 1参考例では、 有限時間整定フィルタは、 単位フィル夕を 3段以上 (例えば 3段)、 直列に接続したものであるため、 着地予定時 刻までに各足平 2 2の速度 (足平位置の変化速度) が 0またはほぼ 0に なるだけでなく、 各足平 2 2は、 その加速度も着地予定時刻にて 0また はほぼ 0になって停止する。 つまり、 着地瞬間における対地加速度も 0 またはほぼ 0になる。 したがって、 着地衝撃がより一層小さくなる。 特 に、 実際のロボッ ト 1の着地時刻が目標の着地時刻からずれても、 衝撃 があまり増大しなくなる。 補足すると、 着地予定時刻にて各足平 2 2の 対地速度を 0またはほぼ 0にする上では、 有限時間整定フィル夕の単位 フィルタの段数は 2段でもよいが、 この場合には、 着地予定時刻での各 足平 2 2の加速度は一般には 0にならない。
尚、 足平姿勢に関しては、 各足平 2 2が着地予定時刻にてその踵で着 地した後、 該足平 2 2の底面のほぼ全面が床に接地するまで動き続ける。 このため、 該足平 2 2の底面のほぼ全面が床に接地する時刻を前記指定 時刻に設定して、 前記有限時間整定フィル夕により足平姿勢軌道が生成 される。
また、 本第 1参考例では、 有限時間整定フィル夕を用いて足平位置軌 道を生成したが、 着地予定時刻での足平位置の変化速度 (足平位置の時 間微分値) が 0またはほぼ 0になるように、 さらには、 該着地予定時刻 での足平位置の変化加速度 (変化速度の時間微分値) が 0またはほぼ 0 になるように設定された多項式などの関数を用いて目標足平位置軌道を 生成するようにしても良い。 このことは、 目標足平姿勢軌道の生成に関 しても同様である。 但し、 該目標足平姿勢軌道の生成に関しては、 上述 の如く、 各足平 2 2の底面のほぼ全面が床に設置する時刻にて、 各足平 2 2の姿勢の変化速度、 さらにはその変化加速度が 0またはほぼ 0にな るように多項式などの関数が設定される。
目標床反力鉛直成分軌道は、 例えば図 6のように設定される。 本第 1 参考例では、 走行歩容における目標床反力鉛直成分軌道の形状 (詳しく は片脚支持期での形状) は、 台形状 (床反力鉛直成分の増加側に凸の形 状) に定められており、 その台形の高さ、 折れ点の時刻を目標床反力鉛 直成分軌道を規定する歩容パラメ一夕として、 それらの歩容パラメータ (床反力鉛直成分軌道パラメ一夕) が決定される。 尚、 走行歩容の空中 期では、 目標床反力鉛直成分は定常的に 0に設定される。 この例のよう に、 目標床反力鉛直成分軌道は、 実質的に連続になるように (値が不達 4 続にならないように) 設定するのが良い。 これは床反力 制御する際の 口ポッ ト 1の関節の動作を滑らかにするためである。 尚、 「実質的に連 続」 というのは、 アナログ的に連続な軌道 (真の意味での連続な軌道) を離散時間系でデジタル表現したときに必然的に生じる値の飛びは、 該 軌道の連続性を失わせるものではないということを意味するものである。
目標 Z M P軌道は次のように設定される。 図 5の走行歩容においては、 前記したように支持脚側足平 2 2のかかとで着地し、 次にその支持脚側 足平 2 2のつま先で蹴って空中に飛び上がり、 最後に遊脚側足平 2 2の かかとで着地する。 したがって、 片脚支持期での目標 Z M P軌道は、 図 7の上段図に示すように、 支持脚側足平 2 2のかかとを初期位置として、 次に支持脚側足平 2 の底面のほぼ全面が接地する期間において該足平 2 2の前後方向の中央に移動し、 その後、 離床時までに支持脚側足平 2 2のつまさきに移動するように設定される。 ここで、 図 7'の上段図は、 X軸方向 (前後方向) の目標 Z M P軌道を示すものであり、 図 7の下段 図は Y軸方向 (左右方向) の目標 Z M P軌道を示すものである。 尚、 片 脚支持期における Y軸方向の目標 Z M P軌道は、 図 7の下段図に示すよ うに、 Y軸方向での支持脚側脚体 2の足首関節の中心位置と同じ位置に 設定される。
走行歩容では、 さらに片脚支持期の終了後、 両脚体 2, 2が床から離 れ、 床反力鉛直成分が 0になる。 床反力鉛直成分が 0の時、 すなわち空 中期には、 口ポッ ト 1の全体重心は自由落下運動をし、 全体重心まわり の角運動量変化は零である。 この時、 床の任意の点において、 口ポッ ト
1に作用する重力と慣性力との合力のモーメントは 0であるので、 目標 Z M Pは不定である。 すなわち、 床のいずれの点も、 「重力と慣性力と の合力が作用するモーメントの水平成分が 0である作用点」 という Z M Pの条件を満たす。 言いかえれば、 任意の点に目標 Z M Pを設定しても、 上記合力が目標 Z MP回りに作用するモ一メントの水平成分が 0である という動力学的平衡条件を満足する。 したがって、 目標 ZMPを不連続 に設定しても構わない。 例えば、 空中期では、 目標 Z MPを、 離床時 (片脚支持期の終了時) の目標 Z M P位置から移動しないように設定し、 空中期終端において、 着地時の目標 ZMP位置に不連続 (ステップ状) に移動するように該目標 Z MP軌道を設定しても構わない。 しかし本第 1参考例で'は、 図 7の上段図に示すように、 空中期における目標 ZMP 軌道の X軸方向位置は、 次の遊脚側脚体 2の着地までに支持脚側足平 2 2のつまさきから遊脚側足平 2 2のかかとの着地位置まで連続的に移動 するようにした。 また、 図 7の下段図に示すように、 空中期における目 標 Z MP軌道の Y軸方向位置は、 次の遊脚側脚体 2の着地までに支持脚 側脚体 2の足首関節の中心の Y軸方向位置から遊脚側脚体 2の足首関節 の中心の Y軸方向位置まで連続的に移動するようにした。'すなわち、 歩 容の全期間において目標 ZMP軌道を連続 (実質的に連続) にした。 そ して、 後述するように、 目標 ZMPまわりの重力と慣性力との合力のモ 一メン卜 (鉛直成分を除く) が零になるように目標歩容を生成する (よ り具体的には目標上体位置姿勢軌道を調整する) ようにした。 モデルの 近似誤差を考慮すると、 生成された歩容が滑らかになるようにするため に、 空中期においても目標 Z MP軌道を連続 (実質的に連続) にしてお くのが望ましい。 但し、 本第 1参考例で用いる後述の動力学モデルでは、 目標 Z MPの位置によらずに、 目標 ZMP回りのモーメントの水平成分 をある値 (その値は本第 1参考例では 0であるが、 後述の実施形態では 必ずしも 0ではない) にするような目標歩容を一義的に生成できるので、 必ずしも目標 Z M Pを連続にしておく必要はない。
尚、 本第 1参考例では、 図 7に示したような目標 Z MP軌道の折れ点 の位置や時刻が、 Z MP軌道パラメ一夕 (目標 Z MP軌道を規定するパ ラメ一夕) として設定される。 また、 上記した Z M P軌這の 「実質的に 連続」 の意味は、 前記床反力鉛直成分軌道の場合と同様である。
Z M P軌道パラメ一夕は、 安定余裕が高く、 かつ急激な変化をしない ように決定される。 ここで、 ロボッ ト 1の接地面を含む最小の凸多角形 (いわゆる支持多角形) の中央付近に目標 Z M Pが存在する状態を安定 余裕が高いと言う (詳細は特開平 1 0— 8 6 0 8 1号公報を参照)。 図 7の目標 Z M P軌道はこのような条件を満たすように設定したものであ る。
また、 目標上体位置姿勢、 目標足平位置姿勢および後述の基準上体姿 勢はグローバル座標系で記述される。 グローバル座標系は床に固定され た座標系である。 グロ一バル座標系としては、 より具体的には、 後述す る支持脚座標系が用いられる。
本第 1参考例では、 歩容生成装置 1 0 0は、 目標上体姿'勢だけでなく、 基準上体姿勢も生成する。 この基準上体姿勢は、 歩容に対する要求 (歩 容生成装置 1 0 0に対する行動計画部などの装置または外部 (前記ジョ ィスティック 7 3等) からの要求) にそのまま従って生成される上体姿 勢である。
目標上体姿勢 (以降、 「基準」 が付いていない場合には、 目標上体姿 勢を表す) は、 長期的には基準上体姿勢に追従するかまたは一致するよ うに生成される。
目標上体姿勢は、 歩行においては、 本願出願人による P C T公開公報 WO/ 02/ 40224 の明細書に記載した実施形態のごとく通常、 常に基準 上体姿勢に一致させておけば良い。 P C T公開公報 WO/ 02/ 40224で は、 基準上体姿勢という概念は記載されていないが、 目標上体姿勢パ夕 ーンを、 明示的かつ優先的に与えていたので、 基準上体姿勢に目標上体 姿勢が常に一致していることと同じことである。 しかし、 走行など空中期がある歩容ゃ低摩擦床面での^行においては、 単に上体水平加速度等を調整するだけでは、 目標歩容の床反力水平成分 と床反力モーメント鉛直成分とが許容範囲以内 (あるいは摩擦限界以 内) に存在するようにしつつ動力学的平衡条件を満足することができな レ
そこで、 本第 1参考例においては、 目標上体姿勢を必要に応じて基準 上体姿勢から故意にずらすこととした。 より具体的には、 以下に説明す る運動モードを複合的に発生させることにより、 目標歩容の床反力水平 成分や床反力モーメント鉛直成分が許容範囲以内 (あるいは摩擦限界以 内) に存在しつつ動力学的平衡条件を満足させるようにした。
図 8のように、 口ポッ ト 1のある運動状態から、 上体水平加速度だけ を摂動 (微小変化) させると、 口ポッ ト 1の全体重心水平加速度と全体 重心まわりの角運動量が摂動する。 すなわち、 上体水平加速度の摂動は、 それによつて発生するロボッ ト 1の慣性力と重力との合力に対して動力 学的に釣り合う床反力鉛直成分を摂動させずに (口ポッ ト 1の全体重心 鉛直加速度を摂動させずに)、 目標 Z M Pまわりの床反力モ一メント水 平成分 (水平軸まわり成分) と床反力水平成分とを摂動させる。 このよ うにロボッ ト 1の上体水平加速度を摂動させる運動モードを上体並進モ 一ドと呼ぶ。
言いかえると、 床反力鉛直成分を変化させずに、 目標 Z M Pまわりの 床反カモ一メント水平成分と床反力水平成分とを変化させる運動を上体 並進モードと呼ぶ。 尚、 上体並進モードでは、 床反力モーメント鉛直成 分 (鉛直軸まわり成分) も摂動するが、 ここではこの点に注目しない。
この時の単位加速度当たりの床反カモ一メント水平成分の変化を Δ Μ P、 単位加速度当たりの床反力水平成分の変化を A Fp とする。 図 8に 示す状況で上体 3を前方に水平加速すると、 Δ Μ ρと A Fp は図 8に示 す矢印の向きに作用する。
感覚的に判り易くするために、 運動によって発生する慣性力と重力と の合力に釣り合う床反力を用いて表現したが、 慣性力と重力との合力を 用いて表現した方が、 理論的には的確である。 なお、 上記合力と床反力 とは、 互いに大きさが同じで向きが逆になつている。
それに対し、 図 9のように、 ロボッ ト 1のある運動状態から、 ある点 P rまわりに上体傾斜角加速度 (上体 3の傾斜角の角加速度) を摂動さ せると、 ロボッ ト 1の全体重心は摂動せずに、 全体重心まわりの角運動 量 (鉛直軸まわり成分を除く) が摂動する。 すなわち、 点 P rまわりの 上体傾斜角加速度の摂動は、 床反力鉛直成分と床反力水平成分とを摂動 させずに、 目標 Z M Pまわりの床反力モーメント水平成分を摂動させる。 このように口ポッ ト 1の上体傾斜角加速度を摂動させる運動モードを上 体傾斜モードと呼ぶ。 '
言いかえると、 床反力鉛直成分と床反力水平成分を変化させずに、 目 標 Z M Pまわりの床反カモ一メント水平成分を変化させる運動を上体傾 斜モードと呼ぶ。
この時の単位角加速度当たりの床反力モ一メント水平成分の変化を Δ M r、 単位角加速度当たりの床反力水平成分の変化を A F r とする。 Δ F rは零である。 図 9に示す状況で上体 3が前傾するように上体傾斜角 の角加速度を発生させると、 Δ Μ ΐ"は図 9に示す矢印の向きに作用する。 また、 図 1 0のように、 口ポッ ト 1のある運動状態から、 ある点 Pq まわりに上体ョ一角加速度 (上体 3の鉛直軸まわりの回転角加速度) を 摂動させると、 口ポッ ト 1の全体重心は摂動せずに、 全体重心まわりの 角運動量鉛直成分が摂動する。 ところで、 口ポッ ト 1の全体重心が摂動 しなければ、 角運動量鉛直成分の摂動は、 作用点に依存しない。 したが つて、 点 Pq まわりの上体ョ一角加速度の摂動は、 床反力鉛直成分、 床 反力水平成分および床反力モ一メント水平成分を摂動させずに、 目標 Z MPまわりの床反カモ一メント鉛直成分を摂動させる。 このようにロボ ッ ト 1の上体ョ一角加速度を摂動させる運動モードを上体ョ一回転モー ドと呼ぶ。
言いかえると、 床反力鉛直成分、 床反力水平成分および床反力モ一メ ント水平成分を変化させずに、 目標 ZMPまわりの床反力モーメント鉛 直成分を変化させる上体運動を上体ョ一回転モードと呼ぶ。
この時の単位角加速度当たりの床反力モーメント鉛直成分の変化を Δ Mbz;、 単位角加速度当たりの床反力水平成分の変化を AFb とする。 △ Fb は零である。 図 1 0に示す状況で上体 3を矢印の向きに単位角加速 度で回転させる (角加速度
Figure imgf000048_0001
で回転させる) と、 AMbz は図 1 0 に示す矢印の向きに作用する。
尚、 図 1 0に示す運動では、 両腕体 5 , 5の手先位置が支持脚座標系 (床に固定された座標系) から見て変わらないように、 上体 3を回転さ せたが、 上体 3に対する腕体 5の相対位置姿勢を変えずに、 上体 3と共 に腕体 5を回転させる運動を上体ョ一回.転モードと定義しても良い。 た だし、 この場合には、 後述する運動方程式に若干変更が必要である。 また、 図 1 1 ( a), (b) のように、 口ポッ ト 1のある運動状態から、 両腕体 5 , 5の先端を互いに前後に逆方向に摂動させると、 ロボッ ト 1 の全体重心は摂動せずに、 全体重心まわりの角運動量鉛直成分が摂動す る。 以降、 この運動モードを逆位相腕振りモードと呼ぶ。 言い換えると、 床反力鉛直成分、 床反力水平成分および床反力モーメント水平成分を摂 動させずに、 目標 Z MPまわりの床反カモ一メント鉛直成分を摂動させ る腕振り運動モードを逆位相腕振りモードと呼ぶ。
右腕体 5 Rを前側に単位量移動させ、 左腕体 5 Lを後ろに単位量移動 させる動作を、 単位角度の逆位相腕振りと呼ぶ。 図 1 1 ( a), (b) は、 逆位相腕振り角度が Θ azの状態を表す。
逆位相腕振りモ一ドの単位角加速度当たりの床反力モーメント鉛直成 分の変化を ΔΜ&ζ、 単位角加速度当たりの床反力水平成分の変化を△ Fa とする。 AFaは零である。 図 1 1 ( a), (b) に示す状況で右腕体 5 Rを前側に加速し、 左腕体 5 Lを後ろ側に加速する (角加速度) 3 a> 0 で振る) と、 図 1 1 ( a) に示す矢印の向き (鉛直軸の正の向き) に 床反力モ一メント鉛直成分 Mazが作用する。
次に、 本第 1参考例に用いられるロポッ ト 1の動力学モデルについて 説明する。 本第 1参考例では単純化された (近似された) 以下に示す動 力学モデルを用いる。 ただし、 以下に示す動力学モデルに関しては、 キ ネマテイクスモデル (関節、 リンクの構造や寸法を表すモデルであり、 言い換えると、 関節変位とリンクの位置姿勢との関係を表すモデルであ る。) も必要である。 '
図 1 2は、 本第 1参考例に用いられるロボッ ト 1の動力学モデルであ る。 図示の如く、 この動力学モデルは、 ロボッ ト 1の各脚体 2にそれぞ れ対応する 2つの質点 2 m, 2 m、 及び上体 3に対応する質点 3 mから なる合計 3質点と、 イナーシャがあって質量のない 4つのフライホイ一 ル F Hx、 F Hy、 F Hbz、 F Haz とから構成されるモデルである。 フ ライホイール F Hx、 F Hy、 F Hbz、 F Haz は、 それぞれ X軸 (前後 方向軸)、 Y軸 (左右方向軸)、 Z軸 (鉛直軸)、 Z軸 (鉛直軸) の回り に回転可能なものである。 この動力学モデルでは、 デカップルド、 即ち、 脚体 2 , 2の動力学 (各質点 2 m, 2 mの動力学) と上体 3の動力学 (質点 3 m及びフライホイール FHx、 F Hy および F Hbz の動力学) と腕体 5 , 5の動力学 (フライホイール F Haz の動力学) とが相互に 非干渉に構成されると共に、 ロボッ ト 1全体の動力学は、 それらの線形 結合で表される。 また、 さらに、 上体 3の運動と床反力との関係も、 上 体 3の並進運動 (上体並進モード) と床反力との関係、 上体 3の傾斜運 動 (上体傾斜モード) と床反力との関係、 上体 3のョ一回転運動 (上体 ョ一回転モード) と床反力との関係、 並びに両腕体 5, 5の逆位相腕振 り運動 (逆位相腕振りモード) と床反力との関係に分離される。 具体的 には、 上体質点 3 mの水平運動によって発生する床反力は、 上体 3の水 平方向並進運動 (上体並進モード) によって発生する床反力に対応し、 フライホイール F H x および F Hy の回転運動によって発生する床反力 は、 上体 3の傾斜角の回転運動 (上体傾斜モード) によって発生する床 反力に対応する。 なお、 フライホイール F H x の回転運動は、 上体 3の 傾斜角のロール方向 (X軸回り) の回転運動に対応し、 フライホイ一ル F H y の回転運動は、 上体 3の傾斜角のピッチ方向 (Y軸回り) の回転 運動に対応している。 また、 フライホイール F H bz の回転運動によつ て発生する床反力は、 上体 3のョ一回転運動 (上体ョ一回転モード) に よって発生する床反力に対応する。 また、 フライホイール F H az の回 転運動によって発生する床反力は、 逆位相腕振り (逆位相腕振りモー ド) によって発生する床反力に対応する。
尚、 口ポッ ト 1の腕体の質量は上体 3に含まれるものとし、 上体質点 3 mは腕体 5, 5の質量を含む質量をもつ。
説明の便宜上、 動力学モデルに関する変数およびパラメ一夕を以下の ように定義する。 なお、 各質点 2 m, 2 m , 3 mはそれが対応する部位 の代表点であるか、 あるいはその部位の位置姿勢から幾何学的に一義的 に決定される点に相当する。 例えば、 支持脚側脚体 2の質点 2 mの位置 は、 該脚体 2の足平 2 2の底面の前記代表点から所定の距離だけ上方の 点とする。
Z sup: 支持脚質点鉛直位置
Z swg: 遊脚質点鉛直位置 Z b: 上体質点鉛直位置 (上体鉛直位置とは一般的には真なる。) Z Gtotal: 全体重心鉛直位置
Xsup: 支持脚質点 X位置
Y sup: 支持脚質点 Y位置
Xswg : 遊脚質点 X位置
Yswg:遊脚質点 Y位置
Xb : 上体質点 X位置 (上体質点位置は、 前記点 P rから上体の前後方 向にある所定の距離だけオフセッ トした点である。 オフセッ トは、 直立 時などにおいて、 厳密モデルの重心位置と、 本動力学モデルの重心位置 がなるベく一致するように、 決定される。 上体水平位置とは一般的には 異なる。)
Yb: 上体質点 Y位置
XGtotal: 全体重心水平 X位置 '
Y Gtotal: 全体重心水平 Y位置
9 bx: 鉛直方向に対する X軸回りの上体傾斜角
6 by: 鉛直方向に対する Y軸回りの上伴.傾斜角
Θ bz: 上体ョ一回転角
Θ ΆΖ: 逆位相腕振り角
mb: 上体質点質量
msup:支持脚質点質量
mswg: 遊脚質点質量
mtotal: ロポッ ト総質量 ( = mtotal+ msup + mswg)
J : 上体慣性モーメント (上体傾斜モードにおける等価慣性モーメント である。 すなわち、 FHxおよび FHy の慣性モーメントである。 実ロボ ッ ト 1の上体 3部位の慣性モーメントとは一般的には一致しない。)
J bz: 鉛直軸まわり上体慣性モーメント (上体ョ一回転モードにおけ る等価慣性モ一メントである。 実口ポッ ト 1の上体 3部位の慣性モーメ ン卜とは一般的には一致しない。)
J az: 腕振り鉛直軸まわり慣性モーメント (スピンキャンセルのため の逆位相腕振りにおける等価慣性モーメントである。 すなわち、 FHz の慣性モーメントである。)
Fx : 床反力 X成分 (詳しくは並進床反力の前後方向 (X軸) 成分) Fy :床反力 Ύ成分 (詳しくは並進床反力の左右方向 (Y軸) 成分) Fz : 床反力鉛直成分 (詳しくは並進床反力の鉛直方向 (Z軸) 成分。 本第 1参考例では、 これは目標並進床反力鉛直成分に等しい)
Mx: 目標 Z M Pまわりの床反力モーメント X成分 (詳しくは床反カモ —メントの前後軸 (X軸) まわり'成分)
My : 目標 Z M Pまわりの床反力モーメント Y成分 (詳しくは床反カモ 一メントの左右軸 (Y軸) まわり成分) '
Mz: 目標 Z M Pまわりの床反力モーメント Z成分 (詳しくは床反カモ —メントの鉛直軸 (Z軸) まわり成分)
なお、 各質点 2 m, 3 mの X位置、 Y .位置はそれぞれ前後方向 (X軸 方向) の位置、 左右方向 (Y軸方向) の位置を意味している。 また、 本 第 1参考例では、 各脚体 2の質点 2 mの位置と、 その脚体 2の足平 2 2 の位置 (足平 2 2のあらかじめ定めた代表点の位置) との位置関係はあ らかじめ定められており、 一方の位置が決まれば、 他方の位置は一義的 に定まるものとされている。 また、 上体質点 3 mと、 上体 3の位置 (上 体 3のあらかじめ定められた代表点の位置) との位置関係は、 上体 3の 姿勢角 (以降、 上体に関しては、 姿勢角とは、 傾斜角とョ一角を意味す るものとする。) に応じてあらかじめ定められており、 一方の位置と姿 勢角とが決まれば、 他方の位置は一義的に定まるものとされている。
また、 任意の変数 Xに対して、 dX/dt は Xの 1階微分を表わし、 d2X/dt2 は Xの 2階微分を表わす。 したがって、 変数 Xが、変位ならば、 dX/dt は速度、 d2X/dt2 は加速度を意味する。 gは重力加速度定数を示 す。 ここでは、 gは正の値とする。
上記動力学モデルの運動方程式 (動力学的平衡条件を表す式) は、 式 0 1、 式 0 2 x、 式 0 2 y、 式 0 3 x、 式 0 3 y、 式 0 3 zで表される。 F z = mb * (g+d2Zb/dt2) + msup * (g+d2Zsup/dt2)
' +mswg* (g+d2Zswg/dt2) ……式 0 1
F =mb* d2Xb/dt2 + msup * d2Xsup/dt2 + mswg * d2Xswg/dt2
式 0 2 x
F =mb * d2Yb/dt2 + msup * d2Ysup/dt2 + mswg * d2Yswg/dt2
式 0 2 y Mx=mb * (Yb-Yzmp) * (g+d2Zb/dt2) '
-mb * (Zb一 Zzmp) * (d2Yb/dt2)
+ msup * (Ysup― Yzmp) * (g+d2Zs p/dt2)
一 msup * (Zsup - Zzmp) * (d2Ysup/dt2)
+ mswg * (Yswg— Yzmp) * (g+d2Zswg/dt2)
― mswg * (Zswg- Zzmp) (d2Yswg/dt2) + J * d2 Θ bx/dt2
……式 0 3 x
My= -mb * (Xb― Xzmp) * (g+d2Zb/dt2)
+ mb * (Zb一 Zzmp) * (d2Xb/dt2)
― msup * (Xsup一 Xzmp) * (g+d2Zsup/dt2)
+ msup * (Zsup一 Zzmp) * (d2Xsup/dt2) 一 mswg * (Xswg- Xzmp) * (g+d2Zswg/dt2) + mswg * (Zswg- Zzmp) * (d2Xswg/dt2) + J ^ d2 Θ by/dt2
……式 0 3y Mz = mb* (Xb- Xzmp) * (d2Yb/dt2) - mb * (Yb一 Yzmp) * (d2Xb/dt2)
+ msup * (Xsup - Xzmp) * (d2Ysup/dt2)
msup * (Ysup― Yzmp) * (d2Xsup/dt2)
+ mswg * (Xswg- Xzmp) * (d2Yswg/dt2)
一 mswg * (Yswg— Yzmp) * (d2Xswg/dt2)
+ Jbz * d20 bz/dt2 + Jaz*d2 Θ az/dt2
……式 0 3 z また、 ロポッ ト全体重心位置には次の関係式が成立する'。
Z Gtotal= (mb * Zb+ msup * Zsup + mswg* Zswg)/ mtotal
……式 0 4
X Gtotal= (mb * Xb + msup * Xsup + mswg * Xswg)/mtotal
式 0 5 x
Y Gtotal= (mb * Yb + msup * Ysup + mswg * Yswg) mtotal
……式 0 5 y 以下に上記動力学モデルと前記 AFp ΔΜρ AFr Δ Μ Γの関係 を示す。
前記 AFp は、 式 0 2 Xまたは式 0 2 yにおいて、 d2Xb/dt2 または d2Yb/dt2を単位量だけ摂動させたときの Fxまたは Fyの摂動量である から、 次式によって求められる。
Δ Fp = mb …式 0 6 すなわち、 上体並進モードの各水平軸 (X軸、 Y軸) 方尚の単位加速度 当たりの床反力水平成分の変化 ΔΓρ は、 上記動力学モデルの上体質点 3 mの質量に相当する。
前記 ΔΜρ は、 式 0 3 yまたは式 0 3 Xにおいて、 d2Xb/dt2 または d2Yb/dt2 を単位量だけ摂動させたときの My または Mxの摂動量であ るから、 次式によって求められる。
AMp = mb* (Zb-Zzmp) …式 0 7
すなわち、 上体並進モードの各水平軸 (X軸、 Y軸) 方向の単位加速度 当たりの床反力モ一メント水平成分の変化 Δ Mpは、 上記動力学モデル の上体質点質量に、 上体質点 3 mの目標 ZMPからの高さ (鉛直位置) を乗じたものになる。 このときの上体質点 3m及び目標 Z MPの位置と、 上体質点 3 mの運動との関係は、 上体質点 3mを倒立振子質点、 目標 Z
MPを倒立振子支点に対応づけたときの倒立振子の挙動に相当する。 な お、 Y軸方向の ΔΜρ は、 より正確には、 式 0 7の右辺の符号を反転さ せたものである。
前記 AFrは、 式 0 2 Xまたは式 0 2 yにおいて、 d20by/dt2 を単位 量だけ摂動させたときの Fx または Fy の摂動量であるから、 次式によ つて求められる。
Δ F r =0 …式 0 8
すなわち、 上体傾斜モードの各水平軸 (X軸、 Y軸) 方向の単位加速度 当たりの床反力水平成分の変化 AFrは、 0である。
前記 Δ M rは、 式 0 3 Xまたは式 0 3 yにおいて、 d2 Θ bx/dt2または d2 Θ by/dt2を単位量だけ摂動させたときの Mxまたは Myの摂動量であ るから、 次式によって求められる。
ΔΜ r = J …式 0 9
すなわち、 上体傾斜モードの各水平軸 (X軸、 Y軸) 方向の単位加速度 当たりの床反力モーメント水平成分の変化 A Mr は、 水平軸フライホイ ール (FHxおよび Fhy) の慣性モーメントに相当する。
前記 A Mbz は、 式 0 3 z において、 d2 0 bz/dt2 を単位量だけ摂動さ せたときの Mzの摂動量であるから、 次式によって求められる。
A Mbz= J bz …式 0 9 b
すなわち、 上体ョ一回転モ一ドの単位加速度当たりの床反力モーメント 成分の変化 A Mbz は、 上体ョ一回転に対応するフライホイール F Hbz の慣性モーメントに相当する。
前記 A Maz は、 式 0 3 z において、 d2 0 az/dt2 を単位量だけ摂動さ せたときの Mzの摂動量であるから、 次式によって求められる。
△ Maz= J az …式 0 9 a
すなわち、 逆位相腕振りの単位角加速度当たりの床反力モーメント成分 の変化 A Maz は、 腕振りに対応するフライホイール FHiiz の慣性モー メントに相当する。
本第 1参考例における歩容生成装置 1 0 0は、 口ポッ ト 1の片方の脚 体 2が着地してから他方の脚体 2が着埤するまでの 1歩分の目標歩容 (前記狭義の意味での目標歩容) を単位として、 その 1歩分の目標歩容 を順番に生成する。 従って、 本第 1参考例で生成する図 5の走行歩容で は、 該目標歩容は片脚支持期の開始時から、 これに続く空中期の終了時 (次の片脚支持期の開始時) までの目標歩容が順番に生成される。 ここ で、 新たに生成しょうとしている目標歩容を 「今回歩容」、 その次の目 標歩容を 「次回歩容」、 さらにその次の目標歩容を 「次次回歩容」、 とい うように呼ぶ。 また、 「今回歩容」 の一つ前に生成した目標歩容を 「前 回歩容」 と呼ぶ。
また、 歩容生成装置 1 0 0が今回歩容を新た 生成するとき、 該歩容 生成装置 1 0 0には、 口ポッ ト 1の 2歩先までの遊脚側足平 2 2の着地 予定位置姿勢、 着地予定時刻の要求値 (要求) が歩容に対する要求パラ メ一夕として入力される (あるいは歩容生成装置 1 0 0が記憶装置から 要求パラメータを読み込む)。 そして、 歩容生成装置 1 0 0は、 これら の要求パラメ一夕を用いて、 目標上体位置姿勢軌道、 目標足平位置姿勢 軌道、 目標 Z M P軌道、 目標床反力鉛直成分軌道、 目標腕姿勢軌道等を 生成する。 このとき、 これらの軌道を規定する歩容パラメ一夕の一部は、 歩行の継続性を確保するように適宜修正される。
以下に図 5の走行歩容を生成することを例にして、 本第 1参考例にお ける歩容生成装置 1 0 0の歩容生成処理の詳細を図 1 3〜図 4 6を参照 しつつ説明する。 図 1 3は、 その歩容生成装置 1 0 0が実行する歩容生 成処理のメインルーチンを示すフローチャート (構造化フローチヤ一 ト) である。
まず S 0 1 0において時刻 t を 0に初期化するなど種々'の初期化作業 が行なわれる。 この処理は、 歩容生成装置 1 0 0の起動時等に行なわれ る。 次いで、 S 0 1 2を経て S 0 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参 考例では、 歩容生成装置 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
例えば図 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の足首中心から床面に延ばした垂線が該床面と 交わる点 (この点は、 本第 1参考例の例では支持脚側足平 2 2の底面の ほぼ全面を床面に接触させた状態では、 該足平 2 2の代表点と合致す る) を原点とし、 その原点を通る水平面を X Y平面とするグロ一バル座 標系 (床に固定された座標系) である。 この場合、 X軸方向、 Y軸方向 は、 それぞれ支持脚側足平 2 2の前後方向、 左右方向である。 尚、 支持 脚座標系の原点は、 必ずしも支持脚側足平 2 2の底面のほぼ全面を床面 に接触させた状態での該足平 2 の代表点 (足平 2 2の位置を代表する 点) に合致する必要はなく、 該代表点と異なる床面上の点に設定されて もよい。
このとき、 · 次回歩容支持脚座標系は、 図示のように今回歩容の遊脚側 足平 2 2 Lの着地予定位置姿勢の要求値に従って該足平 2 2を着地させ た場合 (足平 2 2の代表点を着地予定位置の要求値に一致させ、 且つ、 足平 2 2の姿勢 (向き) を着地予定姿勢の要求値に一致させた場合) に おける該足平 2 2 Lの代表点 (より詳しくは該代表点に合致する床上の 点) を原点とし、 該原点を通る水平面内における該足平 2 2 Lの前後方 向、 左右方向をそれぞれ X ' 軸方向、 Y ' 軸方向とする座'標系である。 上記と同様に、 2歩目の遊脚側足平 2 2の着地予定位置姿勢の要求値 に応じて次々回歩容支持脚座標系 (図 1 6の X " Y " 座標を参照) が定 まる。 また、 今回歩容周期は、 今回歩容の支持脚側足平 2 2の着地予定 時刻 (要求値) から、 1歩目 (今回歩容) の遊脚側足平 2 2の着地予定 時刻 (要求値) までの時間として定まり、 次回歩容周期は、 1歩目の遊 脚側足平 2 2の着地予定時刻 (要求値) から 2歩目の遊脚側足平 2 2の 着地予定時刻 (要求値) までの時間として定まる。
尚、 前記要求パラメータは、 本第 1参考例ではジョイスティック 7 3 の所要の操作によって歩容生成装置 1 0 0に入力されるものであるが、 あらかじめ該要求パラメ一夕あるいはこれに対応する上記の支持脚座標 系の位置姿勢及び歩容周期をロポッ ト 1の移動スケジュールとして記憶 しておいても良い。 あるいは、 ジョイステイ ツグ 7 3などの操縦装置か らの指令 (要求) とそのときまでの口ポッ トの 1の移動履歴とを基に前 記次回及び次次回歩容支持脚座標系、 並びに今回及び次回歩容周期を決 定しても良い。
次いで S 0 2 2に進み、 歩容生成装置 1 0 0は、 今回歩容に続く仮想 的な周期的歩容としての定常旋回歩容の歩容パラメ一夕を決定する。 該 歩容パラメ一夕は、 定常旋回歩容における目標足平位置姿勢軌道を規定 する足平軌道パラメータ、 基準とする上体姿勢軌道を規定する基準上体 姿勢軌道パラメータ、 基準とする腕姿勢軌道を規定する基準腕姿勢軌道 パラメ一夕、 目標 Z M P軌道を規定する Z M P軌道パラメ一夕、 目標床 反力鉛直成分軌道を規定する床反力鉛直成分軌道パラメ一夕を含む。 さ らに、 床反力水平成分許容範囲および床反力モーメント鉛直成分許容範 囲を規定するパラメータも歩容パラメ一夕に含まれる。
尚、 この明細書で 「定常旋回歩容」 は、 その歩容を繰り返したときに 歩容の境界 (本第 1参考例では 1歩毎の歩容の境界) においてロボッ ト 1の運動状態 (足平位置姿勢、 上体位置姿勢等の状態) に不連続が生じ ないような周期的歩容を意味するものとして使用する。 以降、 「定常旋 回歩容」 を 「定常歩容」 と略す場合もある。
周期的歩容である定常旋回歩容は、 本第 1参考例では、 ロボッ ト 1の 2歩分の歩容、 すなわち今回歩容に続く第 1旋回歩容と該第 1旋回歩容 に続く第 2旋回歩容とからなる歩容を該定常旋回歩容の 1周期分の歩容 として、 その 1周期分の歩容を繰り返す歩容である。 尚、 ここで 「旋 回」 なる用語を用いたのは、 旋回率を零とするときは直進を意味するの で、 直進も広義の意味で旋回に含ませることができるからである。 また、 生成する目標歩容が.前記図 5の走行歩容であると、 その目標歩容の今回 歩容は、 片脚支持期及び空中期を有する走行歩容であるので、 定常旋回 歩容の第 1旋回歩容及び第 2旋回歩容は、 いずれも今回歩容と同様に片 脚支持期と空中期とを有する歩容である。 つまり、 第 1旋回歩容及び第 2旋回歩容の基本的な歩容形態は今回歩容と同一である。
定常旋回歩容について補足すると、 2足移動口ポッ トでは、 定常旋回 歩容の 1周期分は、 前記した狭義の意味での歩容が、 少なくとも 2歩分、 必要である。 そして、 3歩以上の歩容を 1周期分の歩容とする複雑な定 常旋回歩容を設定することも可能である。 但し、 定常旋回歩容は、 後述 の如く、 今回歩容の終端 (終了時刻) における発散成分 (詳細は後述す る) を決定するためだけに用いられる。 このため、 3歩以上の歩容を 1 周期とする定常旋回歩容を用いることは、 歩容生成の処理が煩雑となる にも関わらず、 効果は少ない。 そこで、 本第 1参考例での定常旋回歩容 の 1周期分の歩容を 2歩分の歩容 (第 1及び第 2旋回歩容) により構成 するようにしている。 尚、 3足以上の脚式移動口ポッ トにあっては、 そ れに応じて定常旋回歩容を定義するに足る歩容数が増加する。 以下では、 説明の便宜上、 複数の狭義の歩容 (本第 1参考例では 2歩分の歩容) か ら成る定常旋回歩容を 1歩の歩容とみなす。
定常旋回歩容は、 歩容生成装置 1 0 0で今回歩容の終端における発散 成分や上体鉛直位置速度、 上体姿勢角 ¾びその角速度等のロボッ ト 1の 運動状態を決定するために暫定的に作成されるものであり、 歩容生成装 置 1 0 0からそのまま出力されるものではない。
尚、 「発散」 とは、 図 1 4に示すように、 2足移動ロボッ ト 1の上体 3の位置が両足平 2 2, 2 2の位置からかけ離れた位置にずれてしまう ことを意味する。 発散成分の値とは、 2足移動ロボッ ト 1の上体 3の位 置が両足平 2 2, 2 2の位置 (より具体的には、 支持脚側足平 2 2の接 地面に設定されたグローバル座標系 (支持脚座標系) の原点) からかけ 離れていく具合を表す数値である。
本第 1参考例では、 目標歩容が、 前記発散を生じることなく、 継続的 に生成されるように、 発散成分を指標にして歩容を生成するようにした。 ただし、 継続的な歩容の代表例である定常歩容 (歩容の軌道の不連続を 発生することなく、 同じパターンの歩容を繰り返すことができる周期的 歩容であり、 原理上、 無限回繰り返しても発散しない歩容) の初期発散 成分 (定常歩容の初期時刻での発散成分) であっても、 単純に 0ではな く、 定常歩容のパラメ一夕が変われば、 その初期発散成分も変わる。 す なわち、 歩き方あるいは走り方等の歩容形態によって、 適切な発散成分 が変わる。 そこで、 本第 1参考例では、 これから生成しょうとする今回 歩容の後に続く定常歩容が前記今回歩容に係わる要求パラメ一夕に応じ て設定され、 定常歩容の初期発散成分を求めてから、 今回歩容の終端発 散成分を定常歩容の初期発散成分に一致させる (より一般的には、 今回 歩容を定常歩容に連続させもしくは近づける) ように、 今回歩容を生成 する。 これのような歩容生成の基本的な指針は本出願人が先に提案した
P C T公開公報 WO/ 02Z 40224のものと同様である。 '
本発明の第 1参考例では、 P C T公開公報 WOZ02 40224の第 1実 施形態で用いたような線形な 3質点動力学モデルを用いていないが、 次 式で定義される発散成分および収束成分の概念は、 図 1 2に示したモデ ルのような非線形な動力学モデルの挙動の摂動分に対しても、 近似的に 十分な精度で適用することができる。 発散成分 =上体質点水平位置 +上体質点水平速度 Ζ ω Ο
…式 1 0 収束成分 =上体質点水平位置一上体質点水平速度 Ζ ω Ο '
…式 1 1 ただし、 ここでの上体質点水平位置は、 図 1 2に示す前記動力学モデ ルにおいては、 上体質点水平位置 Xbを表す。
また、 ω 0、 ω θ ' はある所定の値である。 これらの ω 0、 ω θ ' 値は ほぼ同じ値であるが、 厳密には一致しない。 そして、 走行時では、 P C T公開公報 WOZ02Z 40224の歩行歩容生成時の値に対して若干変更す る必要がある。
発散成分および収束成分に関するその他の詳細は、 P C T公開公報 WOZ02 40224 に記述されているので、 ここではこれ以上言及しない。
本第 1参考例においては、 P C T公開公報 WOZ02Z40224に示した 方式に加え; さらに、 後述するように、 目標床反力鉛直成分軌道を規定 する歩容パラメ一夕を設定し、 この目標床反力鉛直成分を動力学的に満 足するように口ポッ ト 1の全体重心鉛直位置を決定する。 この場合、 床 反力鉛直成分の 2階積分値がロポッ ト 1の全体重心鉛直位置を規定する ものになるので、 目標床反力鉛直成分の設定が悪いと、 口ポッ ト 1の全 体重心鉛直位置もしくは上体鉛直位置が高くなり過ぎたり低くなり過ぎ たりする。 したがって、 目標床反力鉛直成分の設定方法お重要な課題で ある。 しかし、 床反力鉛直成分と上体鉛直位置との関係は、 Z M Pと上 体水平位置との関係に似ているので、 上体水平位置速度を適切にするた めの目標 Z M P決定手法の一部を、 以下の本第 1参考例に示すように、 少し変更するだけで、 上体鉛直位置速度を適切にするための目標床反力 鉛直成分の決定手法に適用することができる。
本題に戻り、 S 0 2 2では、 図 1 5に示すフローチャートに従って、 以下の処理が行われる。
まず、 S 1 0 0において、 今回歩容、 第 1旋回歩容、 第 2旋回歩容の 順に足平位置姿勢軌道がつながるように、 定常歩容の歩容パラメータの うちの足平軌道パラメータが決定される。 以下に具体的な設定方法を図 1 6を参照して説明する。 尚、 以降の説明では、 支持脚側の脚体 2の足 平 2 2を支持脚足平と称し、 遊脚側の脚体 2の定平 2 2を遊脚足平を称 する。 また、 歩容の 「初期」、 「終端」 はそれぞれ歩容の開始時刻、 終了 時刻もしくはそれらの時刻における瞬時歩容を意味する。
足平軌道パラメ一夕は、 第 1旋回歩容および第 2旋回歩容の初期及び 終端のそれぞれにおける支持脚足平及び遊脚足平のそれぞれの位置姿勢、 各旋回歩容の歩容周期等から構成される。 この足平軌道パラメ一夕のう ち、 第 1旋回歩容初期遊脚足平位置姿勢は、 次回歩容支持脚座標系から 見た今回歩容終端支持脚足平位置姿勢とされる。 この場合、 走行歩容で は、 今回歩容終端における支持脚足平 2 2は、 空中に移動している。 そ して、 今回歩容終端支持脚足平位置姿勢は、 今回歩容初期支持脚足平位 置姿勢 (=前回歩容終端遊脚足平位置姿勢) から、 前記要求パラメ一夕 における 2歩目の遊脚側足平 2 2の着地予定位置姿勢の要求値 (今回歩 容の支持脚足平 2 2の次回歩容における着地予定位置姿勢の要求値) も しくは該要求値に対応する次次回歩容支持脚座標系に応じて定まる次回 歩容終端遊脚足平位置姿勢に至る足平位置姿勢軌道 (詳しくは次回歩容 支持脚座標系から見た軌道) を、 今回歩容終端まで前記有限時間整定フ ィルタを用いて生成することにより求められる。
尚、 次回歩容終端遊脚足平位置姿勢は.、 その位置姿勢から足平 2 2を 接地させたまま、 つま先を下げるように該足平 2 2を水平姿勢までピッ チ方向に所定角度回転させたときの該足平の位置姿勢が次次回歩容支持 脚座標系の位置姿勢に合致するように決定される。 換言すれば、 次回歩 容終端遊脚足平位置姿勢は、 前記要求パラメ一夕における 2歩目の遊脚 側足平 2 2の着地位置姿勢の要求値から、 該足平 2 2をすベらないよう に接地させたまま、 つま先を持ち上げるように該足平 2 2をピッチ方向 に所定角度回転させた状態 (つま先を上げてかかとを着地させた状態) での該足平 2 2の位置姿勢である。
また、 第 1旋回歩容初期支持脚足平位置姿勢ば、 次回歩容支持脚座標 系から見た今回歩容終端遊脚足平位置姿勢とされる。 この場合、 今回歩 容終端遊脚足平位置姿勢は、 前記次回歩容終端遊脚足平位置姿勢の場合 と同様、 前記次回歩容支持脚座標系もしくはこれに対応する前記要求パ ラメ一夕の 1歩目 (今回歩容) の遊脚着地予定位置姿勢の要求値に応じ て定まるものである。 すなわち、 該今回歩容終端遊脚足平位置姿勢は、 その位置姿勢から、 足平 2 2を接地させたまま、 つま先を下げるように 該足平 2 2を回転させて該足平 2 2の底面のほぼ全面を床面に接地させ たときの該足平の代表点が次回歩容支持脚座標系の原点に合致するよう に決定される。
第 1旋回歩容終端遊脚足平位置姿勢は、 今回歩容終端遊脚足平位置姿 勢や次回歩容終端遊脚足平位置姿勢の決定手法と同様に、 次回歩容支持 脚座標系から見た次次回歩容支持脚座標系の位置姿勢に基づいて決定さ れる。 より具体的には、 第 1旋回歩容終端遊脚足平位置姿勢は、 その位 置姿勢から足平 2 2を接地させたまま、 すべらないように該足平 2 2を 水平姿勢まで所定角度回転させたときの足平位置姿勢が、 次回歩容支持 脚座標系から見た次次回歩容支持脚座標系の位置姿勢に合致するように 設定される。
第 1旋回歩容終端では、 支持脚足平 2 2は離床して空中にある。 支持 脚足平 2 2が離床してから後の軌道を決定するために、 第 1旋回歩容支 持脚足平着地予定位置姿勢が設定される。 第 1旋回歩容支持脚足平着地 予定位置姿勢は、 次回歩容支持脚座標系から見た次次次回歩容支持脚座 標系の位置姿勢に基づいて設定される。 より具体的には、 第 1旋回歩容 支持脚足平着地予定位置姿勢は、 次回歩容支持脚座標系から見た次次次 回歩容支持脚座標系の位置姿勢である。 なお、 次次次回歩容支持脚座標 系は、 次次回歩容支持脚座標系と次次次回歩容支持脚座標系との相対的 位置姿勢関係が、 今回歩容支持脚座標系と次回歩容支持脚座標系との相 対的位置姿勢関係と一致するように設定される。 第 1旋回歩容終端支持脚足平位置姿勢は、 第 1旋回歩容初期支持脚足 平位置姿勢を求めた場合と同様に、 第 1旋回歩容初期支持脚足平位置姿 勢から、 前記第 1旋回歩容支持脚足平着地予定位置姿勢に至る足平位置 姿勢軌道 (より詳しくは次回歩容支持脚座標系から見た軌道) を、 第 1 旋回歩容終端まで前記有限時間整定フィルタを用いて生成することによ り求められる。
第 2旋回'歩容初期遊脚足平位置姿勢は、 次次回歩容支持脚座標系から 見た第 1旋回歩容終端支持脚足平位置姿勢とされる。 第 2旋回歩容初期 支持脚足平位置姿勢は、 次次回歩容支持脚座標系から見た第 1旋回歩容 終端遊脚足平位置姿勢とされる。
第 2旋回歩容終端遊脚足平位置姿勢は、 今回歩容支持脚座標系から見 た今回歩容終端遊脚足平位置姿勢とされる。 第 2旋回歩容終端支持脚足 平位置姿勢は、 今回歩容支持脚座標系から見た今回歩容終端支持脚足平 位置姿勢とされる。
第 1旋回歩容および第 2旋回歩容の歩容周期は、 次回歩容周期と同一 に設定される。 これらの第 1旋回歩容¾び第 2旋回歩容の歩容周期は、 互いに同一にすることは必ずしも必要ではないが、 いずれの周期も、 少 なくとも次回歩容周期に応じて決定するのが好ましい。 尚、 今回歩容、 第 1旋回歩容および第 2旋回歩容の上記以外の運動パラメータ (両脚支 持期時間などの時間パラメ一夕を含む) は、 上記決定されたパラメータ に応じて、 歩容の条件 (ァクチユエ一夕の速度が許容範囲に入っている か、 可動角を超えていないか、 床などと干渉していないかなど) を満足 するように適宜決定する。
次に、 S 1 0 2に進み、 目標上体姿勢が追従すべき基準上体姿勢軌道 を規定する基準上体姿勢軌道パラメ一夕が決定きれる。 基準上体姿勢は、 定常歩容の初期 (第 1旋回歩容の初期) と終端 (第 2旋回歩容の終端) とでつながるように (定常歩容の初期、 終端での基準上体姿勢の姿勢角 及びその角速度が一致するように) に設定されている限り、 一定姿勢で ある必要はないが、 本第 1参考例では理解を容易にするため、 基準上体 姿勢のうちの傾斜角 (鉛直方向に対する傾斜角) に係わる姿勢は、 直立 姿勢 (鉛直姿勢) に設定される。 つまり、 本第 1参考例では、 上体 3の 傾斜角に関する基準上体姿勢は、 定常歩容の全期間において直立姿勢に 設定される。 従って、 本第 1参考例では、 基準上体姿勢のうちの傾斜角 の角速度及び角加速度は 0である。 基準上体姿勢のうちのョ一角軌道 (以降、 基準ョ一角軌道とも呼ぶ) 0 bz は、 例えば一定角速度 (定常 歩容の平均旋回速度) の運動にすれば良い。 あるいは、 後述の基準逆位 相腕振り軌道の例 (図 1 8 ) のようにサイン波状にしても良い。 ただし、 定常歩容を繰り返した時に基準ョ一角およびその角速度が連続となるよ うに設定する。 '
尚、 本第 1参考例では、 目標上体姿勢のうちのョ一角軌道 (以降、 目 標ョ一角軌道とも呼ぶ) は、 基準ョ一角軌道に一致させるものとする。 次に、 S 1 0 4に進み、 基準腕姿勢軌道パラメ一夕が決定される。 具 体的には、 両腕体 5, 5の全体の重心位置 (上体 3に対する相対的な重 心位置)、 左右の手先 (両腕体 5 , 5の先端) の左右方向の間隔、 およ び逆位相腕振り角に関するパラメータが決定される。 基準逆位相腕振り 角は、 たとえば図 1 7のように左旋回する場合には、 図 1 8のように設 定すれば良い。 図 1 8のように、 基準逆位相腕振り角 S azref は、 定常 歩容を繰り返した時に歩容の境界 (第 2旋回歩容の終端と次の第 1旋回 歩容の境界) において逆位相腕振り角および角速度が共に連続になり、 かつ第 1旋回歩容初期における支持脚と逆位相腕振り角の相対関係が、 次の第 1旋回歩容初期における支持脚と逆位相腕振り角の相対関係に一 致するように設定される。 すなわち、 第 1旋回歩容の初期逆位相腕振り 角速度と第 2旋回歩容の終端逆位相腕振り角速度が一致し、 第 2旋回歩 容の終端逆位相腕振り角は、 定常歩容の旋回角 (第 1旋回歩容と第 2旋 回歩容の旋回角の和) に第 1旋回歩容初期逆位相腕振り角を加えた値に 設定される。 図 1 8では基準逆位相腕振り角 0 azref をサイン波状の波 形としたが、 一定角速度に設定しても良い。 あるいは、 支持脚のョ一角 と遊脚のョ一角の平均の値としても良い。
尚、 本第' 1参考例では、 目標腕姿勢の両腕体 5, 5の全体の重心位置 (上体 3に対する相対位置) は、 上体 3に対して一定に維持されるよう に設定される。
次に、 S 1 0 6に進み、 床反力鉛直成分軌道パラメータが設定される。 この場合、 該パラメータにより規定される床反力鉛直成分軌道が、 第 1 旋回歩容および第 2旋回歩容のいずれにおいても図 6のように実質的に 連続な (値がステップ状に飛ばない) ものとなるように床反力鉛直成分 軌道パラメータが設定される。 すなわち、 定常旋回歩容の目標床反力鉛 直成分軌道は図 1 9のようなパターンで設定される。 そのパターンでは、 第 1旋回歩容及び第 2旋回歩容のいずれにおいても、 片脚支持期では床 反力鉛直成分が台形状に変化し、 空中期では床反力鉛直成分が 0に維持 される。 そして、 このパターンの折れ点の時刻や、 台形部分の高さ (ピ ーク値) が床反力鉛直成分軌道パラメータとして設定される。
この床反力鉛直成分軌道パラメ一夕の設定に際しては、 床反力鉛直成 分の歩容全期間 (第 1旋回歩容と第 2旋回歩容両方の期間を合わせた期 間で定常歩容の 1周期の期間) における平均値をロポッ ト 1の自重と一 致させる。 すなわち、 床反力鉛直成分の平均値が口ポッ ト 1に作用する 重力と同じ大きさで反対向きになるようにする。
上記のごとく床反力鉛直成分軌道を設定するごとは、 定常歩容の条件 を満たすために必要である。 定常歩容の条件とは、 支持脚座標系 (支持 脚側足平 2 2の接地面に設定された座標系) から見た歩容のあらゆる状 態変数 (ロボッ ト 1の各部の位置、 姿勢、 速度等) の初期状態 (第 1旋 回歩容の初期状態) と次の支持脚座標系 (次の第 1旋回歩容の支持脚座 標系) から見た歩容の終端状態 (第 2旋回歩容の終端状態) がー致して いることである (以下、 この条件を定常歩容の境界条件ということがあ る)。 したがって、 定常歩容終端における口ポッ ト 1の全体重心鉛直速 度と定常歩容初期における全体重心鉛直速度との差 (詳細には、 第 2旋 回歩容終端の全体重心鉛直速度と第 1旋回歩容初期の全体重心鉛直速度 との差) も零でなければならない。 上記差は床反力鉛直成分と重力との 差の積分値 ( 1階積分値) であるから、 上記差を零にするためには、 上 記のごとく床反力鉛直成分軌道を設定する必要がある。
尚、 本第 1参考例では、 床反力鉛直成分の第 1旋回歩容、 第 2旋回歩 容それぞれの期間における平均値をロポッ ト 1の自重と一致させるよう にした。 より具体的には、 例えば第 1旋回歩容及び第 2旋回歩容の歩容 周期に応じて各旋回歩容における床反力鉛直成分軌道の台形部分の折れ 点の時刻を設定した上で、 その台形部分の高さを、 床反力鉛直成分の第 1旋回歩容、 第 2旋回歩容それぞれの期間における平均値がロボッ ト 1 の自重と一致するように決定した (台形の高さを未知数として、 上記平 均値及び自重の一致条件を表す方程式を解く ことで台形の高さを求め る)。
こうすることにより、 第 1旋回歩容終端の全体重心鉛直速度と第 1旋 回歩容初期の全体重心鉛直速度との差も 0、 第 2旋回歩容終端の全体重 心鉛直速度と第 2旋回歩容初期の全体重心鉛直速度との差も 0になる。 ただし、 このようにする必然性はない。 例えば、 第 1旋回歩容と第 2旋 回歩容との境界あたりで上体鉛直位置が高くなり'過ぎたり低くなり過ぎ たりして無理な姿勢になりそうな場合には、 各旋回歩容で上記平均値及 び自重を一致させた状態から各旋回歩容の床反力鉛直成^軌道の台形の 高さ等を修正するようにしてあよい。
次に、 S 1 0 8に進み、 上記のごとく図 1 9のように設定された床反 力鉛直成分軌道に応じて、 床反力水平成分の許容範囲 [Fxmin , Fxmax] (より詳しくはこれを規定するパラメ一夕) が図 2 0のように設定され る。 図 2 0の負側の折れ線が床反力水平成分許容下限値 Fxmin、 正側 の折れ線が床反力水平成分許容上限値 Fxmax を表す。 これらの設定方 法に関して以下に補足する。 以下では、 床面が水平である場合について 説明する。
床反力水平成分は、 床と足平 2 2との間の摩擦によって発生するが、 摩擦はいく らでも発生できるわけではなく、 限界がある。 したがって、 生成された目標歩容に従って実際のロポッ ト 1が移動した時にスリップ しないようにするためには、 目標歩容の床反力水平成分が、 常に摩擦限 界以内になければならない。 そこで、 この条件を満足させるために、 床 反力水平成分許容範囲を設定し、 後述するように、 目標歩容の床反力水 平成分がこの許容範囲内になるように、 目標歩容を生成することとした。 床と足平 2 2 との間の摩擦係数を とすると、 Fxmin は、 常に一 *床反力鉛直成分以上に、 Fxmax は *床反力鉛直成分以下に設定さ れなければならない。 最も単純な設定方法は、 次式による設定である。 ただし、 kaは 1より小さい正の定数である。
Fxmin = ~ ka * *床反力鉛直成分
Fxmax = ka * ^ *床反力鉛直成分
…式 1 2
図 2 0の床反力水平成分許容範囲は、 式 1 2にしたがって設定した例 である。 床反力水平成分許容範囲を規定するパラメ一夕として、 図 2 0 の台形波形などの折れ点での値と時刻を設定してもよいが、 式 1 2によ り床反力水平成分許容範囲を決定するときには、 単に式 1 2における (ka * の値をパラメ一夕として設定するだけでも良い。
尚、 上記条件 (目標歩容の床反力水平成分を常に摩擦限界以内にする という条件) を満足しているならば、 他の設定方法で床反力水平成分許 容範囲を設定するようにしても構わない。
次に、 S 1 0 9に進み、 上記のごとく図 1 9のように設定された床反 力鉛直成分軌道などに応じて、 床反カモ一メント鉛直成分の許容範囲 [Mzmin , Mzmax] (より詳しくはこれを規定するパラメータ) が図 2 1のように設定される。 図 2 1の負側の折れ線が床反力モーメント鉛直 成分許容下限値 MZmin、 正側の折れ線が床反力モーメント鉛直成分許 容上限値 Mzmax を表す。 これらの設定方法に関して以下に補足する。 以下では、 床面が水平である場合について説明する。
床反力モーメント鉛直成分は、 床と足平 2 2との間の摩擦によって発 生するが、 摩擦はいく らでも発生できるわけではなく、 限界がある。 し たがって、 生成された目標歩容に従って実際のロボッ ト 1が移動した時 にスピンしないようにするためには、 目,標歩容の床反力モーメント鉛直 成分が、 常に摩擦限界以内になければならない。 そこで、 この条件を満 足させるために、 床反力モーメント鉛直成分許容範囲を設定し、 後述す るように、 目標歩容の床反力モーメント鉛直成分がこの許容範囲内にな るように、 目標歩容を生成することとした。
床と足平 2 2との間の摩擦係数を μ、 モーメント鉛直成分を発生する ための床と足平 2 2との間の接触面の有効半径 (あるいは床と足平 2 2 との間の接触面の目標 Z M Pまわりの断面 2次モーメントの平方根) を r とすると、 Mzmin は、 常に一 * r *床反力鉛直成分以上に、 Mzmaxは * r *床反力鉛直成分以下に設定されなければならない。 最 も単純な設定方法は、 次式による設定である。 ただし、 ka は 1より小 さい正の定数である。
Mzxmin^ - ka * * r *床反力鉛直成分
Mzmax= ka * * r *床反力鉛直成分
…式 1 0 1 2 図 2 1の床反力モーメント鉛直成分許容範囲は、 式 1 0 1 2にしたが つて設定した例である。 床反カモ一メント鉛直成分許容範囲を規定する パラメ一夕'として、 図 2 1の台形波形などの折れ点での値と時刻を設定 してもよいが、 式 1 0 1 2により床反カモ一メント鉛直成分許容範囲を 決定するときには、 単に式 1 0 1 2における(ka * の値をパラメ一夕 として設定するだけでも良い。 rは、 各瞬間において目標 Z M Pと接地 面から算出するのが良いが、 定数としても構わない。
尚、 上記条件 (目標歩容の床反力モーメント鉛直成分を常に摩擦限界 以内にするという条件) を満足しているならば、 他の設定方法で床反力 モーメント鉛直成分許容範囲を設定するようにしても構わない。
さらには、 床反力水平成分許容範囲と床反力モーメント鉛直成分許容 範囲を独立に設定するのではなく、 床反.力水平成分と床反力鉛直成分モ ーメントの組み合わせの許容範囲を設定するようにしても良い。 なぜな ら、 床反力水平成分が大きくなると、 床反力モーメント鉛直成分の許容 範囲が狭くなり、 また、 床反力モーメント鉛直成分が大きくなると、 床 反力水平成分の許容範囲が狭くなるからである。
次に、 S 1 1 0に進み、 第 1旋回歩容および第 2旋回歩容を合わせた 定常歩容の Z M P軌道を規定する Z M P軌道パラメ一夕が設定される。 この場合、 目標 Z M P軌道は、 前述したように安定余裕が高くかつ急激 な変化をしないように設定される。
さらに詳細には、 図 5の走行歩容においては、'支持脚足平 2 2のかか とで着地した後、 しばらくして該支持脚足平 2 2の底面のほぼ全面が接 7 地し、 さらにしばらく して、 支持脚足平 2 2のつま先だけが接地する。 そして、 次に支持脚足平 2 2のつま先で蹴って空中に飛び上がり、 最後 に遊脚足平 2 2のかかとで着地する。 また、 目標 Z M Pは接地面内に存 在しなければならない。 そこで、 本第 1参考例では、 定常歩容の第 1旋 回歩容及び第 2旋回歩容のそれぞれの目標 Z M Pの X軸方向の位置は、 前記図 7の上段図に示したように、 支持脚足平 2 2のかかとを初期位置 として、 該足平 2 2の底面のほぼ全体が接地するまでその位置に留まる ように設定される。 次に、 目標 Z M Pは支持脚足平 2 2の中央に移動し、 該足平 2 2がつま先接地状態になるまでにつま先に移動し、 その後、 離 床時まで支持脚足平 2 2のつまさきに留まるように設定される。 さらに その後は、 目標 Z M Pは、 前述のごとく、 次の遊脚足平 2 2の着地まで に目標 Z M Pが、 支持脚足平 2 2のつまさきから遊脚足平 2 2のかかと の着地位置まで連続的に移動するように設定される。 したがって、 第 1 旋回歩容と第 2旋回歩容とから成る定常歩容の目標 Z M P軌道 (X軸方 向の軌道) は、 図 2 2のようになる。 そして、 この目標 Z M P軌道の折 れ点の時刻及び位置が Z M P軌道パラメータとして設定される。 この場 合、 折れ点の時刻は、 前記要求パラメータに応じて定めた第 1旋回歩容 及び第 2旋回歩容の歩容周期に応じて設定され、 該折れ点の位置は、 次 回歩容支持脚座標系及び次次回歩容支持脚座標系の位置姿勢あるいはこ れらの座標系を規定する要求パラメータの 1歩目及び 2歩目の遊脚側足 平着地予定位置姿勢の要求値に応じて設定される。 尚、 Z M P軌道の Y 軸方向の位置は、 前記図 7の下段図に示したものと同様に設定される。 より詳しくは、 第 1旋回歩容における目標 Z M Pの Y軸方向位置の軌道 は、 図 7の下段図のものと同一パターンで設定され、 第 2旋回歩容にお ける目標 Z M Pの Y軸方向位置の軌道は、 第 1旋回歩容のものと同じ形 の軌道で、 該軌道の終端につながるものに設定される。 次に、 S 1 1 2に進み、 定常歩容 1歩 ( 1周期) の初期時刻、 終端時 刻、 期間が以下のように再定義される。
定常歩容は、 その初期と終端での状態変数が連続的につながる歩容で なければならない。 このような歩容の決定を容易にするために、 本第 1 参考例では、 定常歩容を決定するまでは、 前述の狭義の歩容の定義とは 異なり、 定常歩容の 1歩の初期、 終端、 期間を便宜上、 図 1 9のように 定める。 すなわち、 第 1旋回歩容の片脚支持期の後半において床反力鉛 直成分がある程度減少した時刻を定常歩容の初期時刻 Ts として設定す る。 なお、 初期時刻 Ts は、 図 7に示すように、 支持脚足平 2 2の底面 のほぼ全面が接地した状態からつま先接地に変わる瞬間あるいはその直 前の時刻 (図 7の足底全面接地期間の終了時刻もしくはその直前の時 刻) に設定するのが望ましい。 また、 S 1 1 0において設定した図 2 2 (または図 7 ) に示す目標 Z M Pと時刻 Ts との関係を説明すると、 第 1旋回歩容において支持脚足平 2 2の底面のほぼ全面が接地した後に、 目標 Z M Pが支持脚足平 2 2の中央に移動し、 つま先接地状態になるま でにつま先に移動を完了した瞬間が、 時刻 Ts となっているのが望まし い。 このような初期時刻 Ts は例えば先に設定した目標 Z M P軌道パラ メータに応じて設定される。 上記のごとく初期時刻 Ts を設定する理由 は後述する。
また、 図 1 9に示すように、 定常歩容の周期 Tcyc は第 1旋回歩容と 第 2旋回歩容の歩容周期の和である。 定常歩容の終端時刻を Te とする。
Teは、 Tsに Tcycを加えた時刻に設定される。
定常歩容が決定された時点 (後述の図 2 3の S 2 0 4のループを抜け た時点) から、 改めて、 歩容の初期、 終端等の定義を、 前述の狭義の歩 容の定義に戻すこととする。 以下の説明では、 前述の狭義の歩容の定義 による初期時刻 (支持脚側足平 2 2の着地当初の時刻) を 0とし、 定常 歩容を決定するまで用いる上記初期時刻 Ts を参照符号 Ts を用いて (単に 「Ts」 と省略することもある) 本来の初期時刻 0と区別する。 最後に S 1 1 4に進み、 定常歩容の上体姿勢角 ·逆位相腕振り角復元 期間 [Tm, Ts2]および [Tm2, Te]を設定する。 補足すると、 定常歩容を 繰り返した時に歩容の境界において上体姿勢角および逆位相腕振り角は 連続であるべきである。 そのためには、 定常歩容の初期上体姿勢角速度 と終端上体姿勢角速度が一致し、 定常歩容の初期逆位相腕振り角速度と 終端逆位相腕振り角速度が一致しなければならない。 前記期間は、 その ようにするための、 上体姿勢角軌道と逆位相腕振り角軌道を調整する期 間である。
具体的には、 初期時刻 Ts から第 1旋回歩容の空中期を経て第 2旋回 歩容になり、 床反力鉛直成分がある所定の大きさまで増加した時刻 Tm が設定される。 さらに、 第 2旋回歩容の片脚支持期の後半において床反 力鉛直成分がある程度減少した時刻 Ts2 が設定される。 さらに、 第 2 旋回歩容の空中期を経て第 1旋回歩容になり、 床反力鉛直成分がある所 定の大きさまで増加した時刻 Tm2が設定される。
図 1 9にこれらの時刻を示す。 時刻 Tmは、 支持脚足平 2 2の底面の ほぼ全面が接地した瞬間あるいはその直後に設定するのが望ましい。 時 刻 Tm2 も同様である。 また、 時刻 Ts2 は、 前記初期時刻 Ts 同様、 足 平 2 2の底面のほぼ全面が接地した状態からつま先接地に変わる瞬間あ るいはその直前に設定するのが望ましい。
また、 前記図 1 5の S 1 1 0において設定した図 2 2の目標 Z M Pと これらの時刻 Tm, Ts2, Tm2 との関係を説明すると、 第 2旋回歩容に おいて、 目標 Z M Pが、 支持脚足平 2 2のかかとを初期位置として、 該 足平 2 2の底面のほぼ全体が接地するまでその位置に留まり、 次に支持 脚足平 2 2の中央に移動し始める瞬間を時刻 Tmとすることが望ましい。 その後、 支持脚足平 2 2のつま先だけ接地した状態になるまでに、 目標 Z M Pがつま先に移動を完了した瞬間を、 時刻 Ts2 とすることが望ま しい。 さらに次の第 1旋回歩容において、 目標 Z M Pが、 支持脚足平 2 2のかかとを初期位置として該足平 2 2の底面のほぼ全体が接地するま でその位置に留まり、 次に支持脚足平 2 2の中央に移動し始める瞬間を 時刻 Tm2とすることが望ましい。
上記のごとく設定する理由は後述する。 尚、 上体姿勢角を復元 (調 整) する期間と逆位相腕振り角を復元 (調整) する期間を別々に設定し ても良い。
図 1 3の S 0 1 0から S 0 2 2までに示す処理が行われた後、 S 0 2 4に進み、 定常歩容の初期状態が算出される。 ここで算出される初期状 態は、 定常歩容の初期上体水平位置速度 (水平方向での初期上体位置及 び初期上体速度)、 初期上体鉛直位置速度 (鉛直方向での'初期上体位置 及び初期上体速度)、 初期発散成分、 初期上体姿勢角、 角速度、 および 初期逆位相腕振り角、 角速度である。 この初期状態の算出は、 図 2 3の フローチャートに従って、 探索的に行なわれる。
図 2 3のフローチヤ一卜においては、 先ず、 S 2 0 0において、 定常 歩容の歩容パラメータ (前記図 1 3の S 0 2 2で設定したパラメ一夕) に基づいて、 目標足平位置姿勢、 目標腕姿勢、 および目標上体姿勢角 (傾斜角とョ一角) の初期状態 (初期時刻 Ts での状態) が決定される。 ここで状態とは、 位置や姿勢角とその変化率 (時間微分) とを表す。 この場合、 支持脚側の目標足平位置姿勢の初期状態は、 前記図 1 5の S 1 0 0で決定した足平軌道パラメータの第 1旋回歩容初期支持脚足平 位置姿勢から、 第 2旋回歩容終端遊脚足平位置姿勢に至る足平位置姿勢 軌道 (次回歩容支持脚座標系から見た軌道) を時刻 Ts まで有限時間整 定フィル夕により生成することにより決定される。 遊脚側の目標足平位 置姿勢の初期状態は、 次回歩容支持脚座標系から見た今回歩容初期支持 脚足平位置姿勢から、 第 1旋回歩容終端遊脚足平位置姿勢に至る足平位 置姿勢軌道を時刻 Ts まで有限時間整定フィル夕により生成することに より決定される。 また、 目標腕姿勢の初期状態は、 図 1 5の S 1 0 4で 決定した基準腕姿勢軌道パラメ一夕に基づいて求められる時刻 Ts にお ける基準腕姿勢に決定される。 より具体的には、 目標腕姿勢の両腕体 5, 5の全体重心位置 (上体 3に対する相対位置)、 左右の手先 (両腕体 5 , 5の先端部) の左右方向の間隔および逆位相腕振り角 · 角速度が決定さ れる。 但し、 逆位相腕振り角 · 角速度は、 後述するように、 定常歩容を 繰り返した時に歩容の境界で連続するように修正されるので、 ここでは まだ仮に決定されただけである。
また、 目標上体姿勢角の初期状態は、 図 1 5の S 1 0 2で決定した基 準上体姿勢軌道パラメ一夕により定まる時刻 Ts における基準上体姿勢 (傾斜角およびョ一角) 及びその角速度が該目標上体姿勢角の初期状態 として決定される。 なお、 本第 1参考例では、 上体 3の傾斜角に係る基 準上体姿勢は鉛直姿勢であるので、 目標上体姿勢のうちの傾斜角の初期 状態 (傾斜角及びその角速度) は 0である。
また、 本第 1参考例では、 定常歩容の目標足平位置姿勢軌道、 床反力 鉛直成分軌道、 及び目標 Z M P軌道は、 それぞれ、 図 1 5のフローチヤ 一卜で決定した足平軌道パラメ一夕、 床反力鉛直成分軌道パラメ一夕、 Z M P軌道パラメータにより互いに独立的に決定される。 例えば定常歩 容の瞬時瞬時の目標足平位置姿勢は、 床反力鉛直成分の瞬時値に依存す ることなく足平軌道.パラメ一夕に応じて決定される。
次いで S 2 0 2において初期上体水平位置速度の候補 (すなわち初期 時刻 Tsでの上体水平位置速度候補) である (X s, V xs) ( X s : 水平位 置、 V xs : 水平速度) が仮決めされる。 ここで仮決めする候補 (X s, V xs) は、 任意でよいが、 例えば前回歩容の生成時に求めた定常歩容の 初期状態における上体水平位置速度を仮決め候補 (X s, V xs) とすれ ばよい。
尚、 説明を簡略にするため、 サジタルプレーン上で X方向 (前後方 向) での定常歩容の初期状態を探索する場合を例にとるが、 実際には位 置 · 速度とも X方向 (前後方向), Y方向 (左右方向) を別々にあるい は同時に定常歩容の初期状態 (定常歩容の前記境界条件を満たす初期状 態) を探索する必要がある。
補足すると、 サジタルプレーン上では、 ョ一回転やモーメント鉛直成 分など鉛直軸まわりに関する概念は存在しないので、 少なく ともョ一回 転やモーメント鉛直成分に関しては、 3次元空間で演算される。
探索的な決定手法としては、 擬似ヤコビアン (感度マトリックス) を 求め、 最急降下法などにより次候補を決定する方法や、 シンプレックス 法などを用いれば良い。 本実施例では、 最急降下法を用いる。
次いャ、 S 2 0 4を経て S 2 0 6において、 定常歩容を繰り返した時 に上体鉛直位置速度が連続になり、 かつ、 膝等の関節角が伸び過ぎたり 縮み過ぎたりしないように、 初期 (時刻 Ts) 上体鉛直位置速度 (Zs, V zs) ( Zs : 鉛直位置、 V zs : 鉛直速度) が、 決定される。 これについ ての詳細は、 例えば本願出願人が先に出願した P C T Z J P 0 2 / 1 3 5 9 2に記載されているので、 ここでは省略する。
S 2 0 6の処理の後、 次いで S 2 0 8に進み、 定常旋回歩容が仮に生 成される (この仮生成される定常旋回歩容を以降、 仮歩容ということが ある)。 より具体的には、 前記図 1 3の S 0 2 2で決定した定常歩容の 歩容パラメ一夕を基に、 初期時刻 Ts から終端時刻 Te までの各瞬間に おける目標 Z M P、 目標床反力鉛直成分、 目標足平位置姿勢、 基準上体 姿勢、 目標腕姿勢、 床反力水平成分許容範囲および床反力モーメント鉛 直成分許容範囲が逐次求められる。 そして、 求めた目標 Z M Pと目標床 反力鉛直成分とに関する動力学的平衡条件、 並びに床反力水平成分許容 範囲の条件を満足するように、 前記動力学モデル (図 1 2のモデル) を 用いて、 前記上体水平位置速度 (X s, V x s) 上体鉛直位置速度 (Zs, V z s) を上体 3の初期 (時刻 Ts) 状態として、 上体位置姿勢を逐次決 定することによって、 時刻 Ts から終端時刻 Te までの歩容を生成する。 また、 この時、 上体姿勢は、 基準上体姿勢になるべく一致するように生 成される。
また、 床反力モーメント鉛直成分に関する条件、 すなわち、 床反カモ —メント鉛直成分許容範囲を満足するように、 逆位相腕振り動作が決定 される。
尚、 この定常歩容の歩容生成は歩容生成装置 1 0 0の内部で行われる だけであって、 実際のロボッ ト 1を駆動するための目標値として、 後述 する複合コンプライアンス動作決定部 1 0 4に出力されることはない。 以下に、 S 2 0 8の処理である逐次演算による定常歩容生成処理の詳 細を説明する。
図 2 4はその処理を示すサブルーチンフローチャートである。
以下説明すると、 S 3 0 0において、 諸々の初期化が行われる。 具体 的には、 仮歩容生成用時刻 k に初期時刻 Ts を代入する。 さらに、 上体 水平位置速度に、 現在仮決定されている (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 であるか否か) が判 断され、 その判断結果が Y E Sである場合には、 S 3 0 6の歩容瞬時値 決定サブルーチンに進み、 歩容瞬時値が決定される。 次いで歩容生成装 置 1 0 0の処理は、 S 3 0 8に進み、 仮歩容生成用時刻 kを だけ増 やした後、 S 3 0 4に戻る。
ここで、 Δ ΐε は、 仮歩容生成のインターバルであり、 通常、 制御周期 Δ t と一致させておけば良い。 なお、 は、 仮歩容の動力学的精度を 落としても良いならば、 演算量を低減するために、 を A tよりも長 く設定しても良い。
S 3 0 4の判断結果が N Oである場合には、 S 3 1 0に進む。 以上の 処理により、 S 3 1 0に進むまでに定常歩容 (仮歩容) が初期から終端 まで生成される。
以下に、 S 3 0 6の歩容瞬時値決定サブルーチンの詳細を図 2 5を参 照して説明する。
まず図 2 5の S 4 0 0において、 定常歩容パラメ一夕 (床反力鉛直成 分軌道パラメータ) を基に、 前記図 1 9に示した目標床反力鉛直成分の 時刻 k における値 (今回値) が求められる。 さらに、 S 4 0 2におい て、 定常歩容パラメ一夕 (Z M P軌道パラメ一夕) を基に、 前記図 2 2 に示した目標 Z M P軌道の時刻 k における値 (今回値) が求められる。 次いで S 4 0 4に進み、 定常歩容パラメータ (足平軌道パラメ一夕、 基準上体姿勢軌道パラメ一夕、 及び腕姿勢軌道パラメータ) を基に、 時 刻 k における目標両足平位置姿勢 (支持脚側友び遊脚側の両者の目標 足平位置姿勢)、 基準上体姿勢および基準腕姿勢の値 (今回値) が求め られる。 基準腕姿勢に関しては、 具体的には、 両腕体 5, 5の全体重心 位置 (上体 3 に対する相対位置)、 左右の手先 (両腕体 5, 5の先端 部) の左右方向の間隔および逆位相腕振り角の値 (今回値) が求められ る。
尚、 目標足平位置姿勢の今回値 (時刻 kでの値) は、 前記図 2 3の S 2 0 0で初期時刻 Ts での足平位置姿勢を求めた場合と同様に求められ る。 '
次いで S 4 0 6に進み、 目標床反力鉛直成分を満足する (ロボッ ト 1 の鉛直方向の慣性力と重力との和を目標床反力鉛直成分に釣り合わせ る) ような時刻 k における全体重心鉛直位置速度の値 (今回値) が算 出される。 具体的には、 例えば前記図 1 2の動力学モデルに係わる前記 式 0 1 と式 0 4とに基づいて、 全体重心鉛直位置速度が算出される。 す なわち、 式 0 1 と式 0 4とによれば、 ロボッ ト 1の運動による全体重心 鉛直加速度と重力加速度との和にロポッ ト 1の全体質量を乗算したもの が床反力鉛直成分に等しいという関係式 (口ポッ ト 1の全体重心の鉛直 方向に関する運動方程式) が得られる。 ,従って、 この閼係式と目標床反 力鉛直成分とから、 全体重心鉛直加速度が求められる。
尚、 この関係式自体は、 ロボッ ト 1のモデルに依存することなく一般 的に成立するものである。 そして、 この求めた全体重心鉛直加速度を積 分することにより、 全体重心鉛直速度が算出され、 さらにその全体重心 鉛直速度を積分することにより、 全体重心鉛直位置が算出される。 これ らの算出は、 より一般的には、 次式 1 5および式 1 6で表される動力学 関係式 (ニュートンの運動方程式を離散化した式) を用いて行なわれる。 時刻 kにおける全体重心鉛直速度
=時刻(k一 A k)における全体重心鉛直速度 + ((床反力鉛直成分 Zロポッ トの全体質量) +重力加速度) * 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 ) の目標上体姿勢角) とから上体 鉛直位置が求められる。
次いで S 4 1 0に進み、 前記図 1 5の S 1 0 8で決定した歩容パラメ 一夕 (床反力水平成分許容範囲を規定するパラメータ) に基づいて、 図 2 0に示した床反力水平成分許容範囲 [Fxmin, Fxmax]の時刻 k におけ る値 (今回値) が求められる。
次いで S 4 1 1に進み、 前記図 1 5の S 1 0 9で決定した歩容パラメ 一夕 (床反力モーメント鉛直成分許容範囲を規定するパラメータ) に基 づいて、 図 2 1 に示した床反カモ一メント鉛直成分許容範囲 [Mzmin, Mzmax]の時刻 kにおける値 (今回値) が求められる。
次いで S 4 1 2に進み、 目標 Z M Pに関する動力学的平衡条件 (ロボ ッ ト 1の慣性力と重力との合力が目標 Z M Pまわりに発生するモ一メン 卜の水平成分が 0であるという条件) を満足するように、 目標上体水平 加速度と目標上体姿勢加速度との今回値が決定される。 ただし、 床反力 水平成分 Fx が [Fxmin, Fxmax]を越えないように、 上体水平加速度と 上体姿勢角加速度 (より詳しくは、 上体傾斜角加速度) とが決定される。 また、 床反力モーメント鉛直成分 Mzが [Mzmin, Mzmax]を越えないよ うに、 目標逆位相腕振り角加速度の今回値が決定される。
尚、 上体姿勢角のうち、 ョ一角は基準上体姿勢角のうちのョ一角に一 致するように決定される。 まだ、 目標腕姿勢に関しては、 逆位相腕振り 角以外の成分は、 基準腕姿勢に一致するように決定される。 また、 この 際、 上記条件を満足しつつも、 目標上体傾斜角と目標逆位相腕振り角と は、 それぞれ基準上体傾斜角と基準逆位相腕振り角とになるべく追従す るように決定される。 以下にこの詳細を..説明する。
この時点において、 前記の如く足平位置姿勢および上体鉛直位置の瞬 時値 (今回値) が決定されており、 また、 腕姿勢に関して、 逆位相腕振 り角以外の成分は、 基準腕姿勢のそれに一致するように決定されている。 このため、 残りの上体水平位置と上体姿勢角と逆位相腕振り角とを決定 すれば、 ロボッ ト 1の目標運動は一義的に決定できる。 したがって、 す ベての床反力も一義的に決定される。 なお、 本第 1参考例では、 定常歩 容の目標床反力鉛直成分及び目標 Z M Pは、 それぞれ前記図 1 3の S 0 2 2で決定した床反力鉛直成分軌道パラメータ及び目標 Z M P軌道パラ メータによって規定される。
ところで、 歩容生成において、 前記上体並進モードをあまり用いずに 主に上体傾斜モードを用いることにより、 目標 Z M Pを満足させる (目 標 Z M Pまわりの床反力モーメントの水平成分を 0にする) と、 上体姿 勢角が大きく振れ過ぎてしまう恐れがある。 したがって、 これを防ぐた めには、 なるべく上体並進モードを用いるべきである。 しかし、 上体並 進モードは、 床反力水平成分の変化を伴うので、 床反力水平成分許容範 囲が狭い場合には、 上体並進モードを強く働かせるとスリツプする恐れ がある。 この場合には、 上体傾斜モードに頼るしかない。 特に、 前記走 行歩容のように床反力水平成分許容範囲が 0となる期間では、 床反力水 平成分を発生させるような歩容を生成することはできないので、 上体傾 斜モードに頼らざるを得ない。
一方、 逆位相腕振り運動は、 目標 Z M Pまわりの床反力モーメントの 水平成分および床反力水平成分のいずれも変化させることなく、 床反力 モーメント鉛直成分のみを変化させることができるので、 '床反力モ一メ ント鉛直成分が前記床反力モーメント鉛直成分許容範囲を越えないよう にするために用いることができる。 以上のことを考慮し、 本第 1参考例 では、 図 2 6に示すフローチャートに従,.つて、 上体水平加速度と上体姿 勢角加速度と逆位相腕振り加速度とが決定される。 尚、 理解の便宜上、 上体水平加速度と上体姿勢角加速度 (上体 3の傾斜角の角加速度) の決 定に関しては、 サジタルプレーン上で X方向 (前後方向) での上体水平 加速度および上体姿勢角加速度を決定する場合を例にとって説明するが、 実際には Y方向 (左右方向) の上体水平加速度および上体姿勢角加速度 も X方向と同様に決定される。
まず S 5 0 0において、 目標上体ョ一角に時刻 k での基準上体ョー 角の値を代入する。 また、 腕姿勢の逆位相腕振り角 · 角速度成分を除き、 目標腕姿勢に時刻 kでの基準腕姿勢の値を代入する。
次に S 5 0 2において現在時刻 (定常歩容作成用タイマーの値) k が、 上体姿勢角 · 逆位相腕振り角復元期間 (定常歩容の場合、. 上体姿勢角 · 逆位相腕振り角復元期間は、 時刻 Tm から時刻 Ts2 の期間および時刻 Tm2 カゝら Te までの期間である。) の間にあるか否かが判定される。 S 5 0 2の判定結果が N Oであるならば、 S 5 0 4に進み、 Y E Sである ならば S 5 3 0に進む。
S 5 0 4では、 ロボッ ト 1の前回瞬時歩容状態 (時刻 k一 1の歩容状 態) から、 仮に、 上体傾斜モードの角加速度を 0にして、 上体並進モ一. ドの運動を口ポッ ト 1にさせた場合に今回 (時刻 k ) の目標 Z M Pを満 足するために必要な上体水平加速度ひ tmp が求められる。 このひ tmp は、 例えば前記図 1 2の動力学モデルに係わる前記式 0 3 yを用いて求 められる。 より具体的には、 例えば、 現在時刻 kまでに求められた目標 足平位置姿勢の時系列値を用いて、 現在時刻 kにおける支持脚質点 2 m 及び遊脚質点 2 mの鉛直加速度が求められると共に、 現'在時刻 k (今 回) の目標足平位置姿勢を用いて支持脚質点 2 m及び遊脚質点 2 mの鉛 直位置が求められる。 また、 現在時刻 k (今回) の床反力鉛直位置を用 いて上体質点 3 mの鉛直位置が求められると共に、 現在時刻 kまでに求 めた目標上体鉛直位置の時系列値を用いて現在時刻 kにおける上体質点 3 mの鉛直加速度が求められる。 そして、 これらの求めた値を前記式 0 3 yに代入すると共に、 同式 0 3 yの My、 d2 0 by/dt2を 0にしてなる 式を、 d2Xb/dt2 について解く ことにより、 上体質点水平加速度が上体 水平加速度 a tmp として求められる。 尚、 より厳密な動力学モデルを 用いて、 目標 Z M P回りの床反カモ一メントの水平成分を零にするよう な上体水平加速度 a.tmp を探索的に求めるようにしてもよい。 また、 本第 1参考例では、 上体 3の傾斜角に関する基準上体姿勢が鉛直姿勢で、 該基準上体姿勢による上体姿勢角加速度 (上体 3の傾斜角の角加速度) が 0であるため、 上体傾斜モードの角加速度を 0にして上体水平加速度 atmp を求めるようにした。 但し、 基準上体姿勢のうちの傾斜角が変 化するように該基準上体姿勢軌道パラメ一夕を設定した場合で、 それに より定まる現在時刻 kにおける基準上体姿勢角加速度 (上体 3の傾斜角 の基準角加速度) が 0でない場合には、 上体傾斜モードの角加速度をそ の 0でない基準上体姿勢角加速度の値にして、 上体水平加速度 atmp を動力学モデルを用いて求める (例えば式 0 3 yの d20by/dt2 を 0で ない基準上体姿勢角加速度に設定して上記と同様に上体水平加速度 α tmpを求める) ようにすればよい。
次に、 S 5 0 6に進み、 上体水平加速度が a tmp の場合の時刻 kに おける床反力水平成分 Fxtmp が動力学モデルを用いて求められる。 本 第 1参考例においては、 前記動力学モデルの式 0 2 Xを用いて Fxtmp が求められる。 すなわち、 次式 1 7によって Fxtmp が求められる。 伹 し、 d2Xsup/dt2 および d2XswgZdt2 はそれぞれ時刻 k'における支持 脚足平.質点水平加速度、 遊脚足平質点水平加速度を表す。
Fxtmp = mb * tmp + msup * d2Xsup 'dt2
+ mswg* d2Xswg/dt2 …式 1 7 このようにして求められる Fxtmp の例を図 2 7に示す。 図 2 7に、 Fxtmpが床反力水平成分許容範囲 [Fxmin, Fxmax]を越えている部分を 斜線で示す。
次に、 S 5 0 8に進み、 上体並進モードの上体水平加速度ひ、 これに よって発生する床反力水平成分 Fx、 上体傾斜モードの上体角加速度 3 が次のように決定される (S 5 0 8〜S 5 1 6 )。
すなわち、
Fxtmp >Fxmax ならば、 S 5 1 0に進み、 次式により Fx が決定され る。
Fx= Fxmax …式 1 8 Fxtmpく Fxminならば、 S 5 1 2に進み、 次式により F xが決定される。 Fx= Fxmiri …式 1 9 それ以外、 すなわち、 Fxtmp が、 床反力水平成分許容範囲 [Fxmin, Fxmax]内に存するならば、 S 5 1 4に進み、 次式により Fx が決定さ れる。
Fx = Fxtmp …式 2 0 いずれの場合においても、 次いで S 5 1 6に進み、 次式により上体水 平加速度 α、 上体姿勢角加速度 (上体傾斜角加速度) )3が決定される。 a = tmp + (F - Fxtmp)/ Δ Fp …式 2 1
β =( tmp - α)* ΔΜρ /ΔΜ τ …式 2 2 ただし、 A Fp、 ΔΜρおよび ΔΜ rはそれぞれ前記式 0 6 、 0 7 、 および式 0 9により決定される。
補足すると、 より.動力学演算の精度を高めようとするならば、 上記の ごとく上体角加速度 /3を求めた後、 上体並進モードと上記求めた上体角 加速度 βの上体傾斜モードとを合成した運動が目標 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]から越えないように制限 (飽 和) させたものになっている。 より詳しくは、 上体並進モードのみによ る上体水平加速度 a tmp に応じた Fxtmp が許容範囲 [Fxmin, Fxmax] 内にある場合には、 Fxtmpがそのまま Fx となる。 また、 上体並進モー ドのみによる上体水平加速度 Q! tmp に応じた Fxtmpが許容範囲 [Fxmin, Fxmax]の上限を超え、 もしくは下限を下回った場合には、 それぞれ Fx は、 それぞれ強制的に FxmaX、 Fxmin に制限される。 特に走行歩容の 空中期では、 常に、 Fxmax = Fxmin = 0であるので、 Fx = 0となる。
また、 上記のように求められる上体姿勢角加速度 iQを図 2 9に示す。 上体並進モードによって発生する Fx が許容範囲 [Fxmin, Fxmax]を越 えないように、 上体並進モードの加速度を制限したことによって不足し た床反力モーメント.(より詳しくは目標 Z M P回りの床反力モーメント の水平成分を 0にする上で必要な慣性力モーメントから、 制限した上体 水平運動と両脚体 2 , 2の運動とによるモーメント成分を差し引いたモ —メント) を、 上体傾斜モードで補ったことになる。 なお、 走行歩容の 空中期では、 上体並進モードによる上体水平加速度ひは常に 0に制限さ れることとなるので、 上体傾斜モ一ドによる上体姿勢角加速度 のみに よって、 上記不足分の床反力モーメン卜が補われることとなる。
次に、 S 5 1 8に進み、 仮に上体並進モードの上体水平加速度がひ、 上体傾斜モードの上体角加速度 (上体傾斜角加速度) が ;8、 上体ョ一回 転モー ドの上体加速度 (上体ョ一角加速度) が基準ョ一角加速度 d2 0 b zref/dt2、 '逆位相腕振り角加速度 /3 a が基準逆位相腕振り角加速度 d2 Θ azref/dt2 である運動をさせた場合の床反力モーメン ト鉛直成分 Mztmp を求める。 以降、 d2 0 b zref/dt2 を /3 bref、 d2 Θ azref/dt2 を β 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 Θ b z/dt2= ^ bref …式 1 0 0 3 d2 Θ az/dt2= |3 aref …式 1 0 0 4 ただし、 α χ は、 上体水平加速度ひの X成分、 a y は、 上体水平加速 度 aの Y成分を表す。 また、 Xb、 Yb には時刻 k — 1における上体水平 位置 を代入 し 、 Xzmp 、 Yzmp 、 Xsup 、 d2Ysup/dt2 、 Xswg 、 d2Yswg/dt2には、 時刻 kの値を代入するものとする。
このようにして求められる Mztmp の例を図 3 2に示す。 図 3 2に、 Mztmp が床反力モーメント鉛直成分許容範囲 [Mzmin, Mzmax]を越え ている部分を斜線で示す。
次に、 S 5 2 0に進み、 逆位相腕振り角加速度 β 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に進み、 次式により逆位相 腕振り角加速度 jS aが決定される。 β Ά= β aref + (Mztmp - Mz)/ Δ 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に示すように、 Mztm'p の値を 床反力水平成分許容範囲 [Mzmin , Mzmax]から越えないよう に制限 (飽和) させたものに決定されている。 より詳しくは、 Mztmp が許容 範囲 [Mzmih, 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に示 す。
逆位相腕振り角加速度 iS aは、 Mazを.逆位相腕振りの等価慣性モーメ ント A Maz で割ったものを基準逆位相腕振り角加速度 ) 3 aref (基準逆 位相腕振り角を 2階微分した値) に加えることによって得られる。 すな わち、 13 aは前記式 1 0 2 1で求められる。 逆位相腕振り角加速度 i3 a を図 3 5に示す。
以上のごとく S 5 0 4から S 5 2 8までの処理では、 逆位相腕振りを 含めたロポッ ト全体の運動によって発生する床反力モーメント鉛直成分 Mz が許容範囲 [Mzmin, Mzmax]を越えないように (逆位相腕振り角加 速度を基準逆位相腕振り角加速度 β aref に一致させた場合に発生する 床反力モーメント鉛直成分 Mztmp が許容範囲'を越えた分を打ち消す (キャンセルする) ように)、 逆位相腕振り角加速度 j8 a が決定される。 補足すると、 床反力モーメント鉛直成分 Mzが床反カモ一メント鉛直 成分許容範囲 [Mzmin , Mzmax]を厳密に越えないようにするために、 S 5 G 4から S 5 2 8までの処理の代わりに、 逆位相腕振り角加速度 β a を、 より厳密な動力学モデルを用いて解析的あるいは探索的に決定し た方が良い。 なお、 探索的な決定法としては、 擬似ヤコビアン (感度マ トリックス) を求め、 擬似ニュートン法などにより次候補を決定する方 法や、 シンプレックス法などを用いれば良い。
以上が、 時刻 kが上体姿勢角 · 逆位相腕振り角復元期間の間にない場 合の処理である。
S 5 0 2の判定結果が Y E Sである場合には以下の処理が行われる。 まず、 S 5 3 0に進み、 口ポッ ト 1の前回瞬時歩容状態 (時刻 k _ 1の 歩容状態) から、 上体傾斜モードの角加速度を 0にして、 上体並進モー ドの運動をロボッ ト 1にさせた場合に今回 (時刻 k ) の目標 Z M Pを満 足するために必要な上体水平加速度 Q!が求め、 これを最終的な上体水平 加速度と決定する。
次に、 S 5 3 2に進み、 上記場合に床反力水平成分 Fxを求める。 次に、 S 5 3 4に進み、 上体姿勢角加速度 (上体傾斜角加速度) βを 0に決定する。 なお、 上体ョ一角加速度は、 基準上体ョ一角加速度 ι8 bref (基準上体ョ一角を 2階微分した値) に決定される。
次いで最後に、 S 5 3 6に進み、 逆位相腕振り角加速度 ;6 a に、 基準 逆位相腕振り角加速度 13 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で求めた逆位相腕振り加速度 3 a を逐 次積分する (時刻 Ts から現在時刻 kまで累積加算する) ことにより逆 位相腕振り速度が求められ、 さらにこれを逐次積分する (時刻 Ts から 現在時刻 kまで累積加算する) ことにより、 逆位相腕振り角 0 az (今 回値) が求められる。
-以上のごとく図 2 4の S 3 0 6の定常歩容瞬時値決定サブルーチンが 実行された後、 S 3 0 8に進み、 歩容生成用時刻 k の値が歩容生成ィ ンターバル Δ kだけ増加される。 次いで S 3 0 4に戻り、 S 3 0 4に示 す条件が成立している限り、 S 3 0 6と S 3 0 8の処理が繰り返され、 S 3 0 4に示す条件が成立しなくなったら、 すなわち終端 (時刻 Te = Ts + Tcyc) まで仮歩.容の生成が完了したら、 S 3 1 0に進む。
定常歩容では、 それを繰り返したときに境界でロポッ ト 1の運動状態 が不連続にならないように、 初期上体姿勢角及^その角速度を決定する 必要がある。 そのために、 S 3 1 0では、 上体姿勢角速度を、 時刻 Te までに、 初 期値 (時刻 Ts での値) に戻すための上体姿勢角加速度を発生させる床 反力モーメントの Z M P換算値 (以降、 上体姿勢復元モーメント Z MP 換算値と呼び、 Z MPrecと略す) のパターンを設定する。
これについて以下に詳細に説明する。
上体姿勢角 ·逆位相腕振り角復元期間 (時刻 Tm から時刻 Ts2 の期 間および時刻 Tm2 から Te までの期間) に、 上体傾斜モードを用いて 上体姿勢角加速度を発生させることにより、 上体姿勢角速度を初期値
(時刻 Ts での値) に戻すことを考える。 このための上体姿勢角加速度 パターンを、 i6 (k)とする。 なお、 上記期間以外では、 j3 (k)=0 とする。 上体傾斜モードでは、 上体姿勢角加速度) 3 (k)を発生させようとする と、 床反力モーメント (k)* ΔΜ Γが発生する。 この結果、 その瞬間 における床反力鉛直成分が Fz(k)であるとすると、 (目'標 Z M Pでな く) 運動から算出される Z M P(k)は、 次式で求められる Δ Z M Pだけ ずれる。
A Z MP(k)= - /3 (k)* AMr /Fz(k) …式 2 3 したがって、 △ M rのパターンと Fz( k )のパターンが決まっていれば (既知であれば)、 Δ Z M P (k)のパターンを適当に設定することによ つて、 式 2 3を満足する上体姿勢角加速度パターンを発生させて、 上体 姿勢角速度を初期値 (時刻 Ts での値)、 すなわち基準上体姿勢軌道の 初期 (時刻 Ts)状態における上体姿勢角速度に戻すことができる。
前記上体姿勢復元モーメント Z M P換算値 (Z MPrec) は、 そのよ うに適切に設定された Δ Z M P (k)を意味する。 '前記式 2 3を用いて上 体姿勢復元モ一メント Z MP換算値を設定する際に、 AMrは厳密には 変動するが、 近似的に一定値としても良い。 定常歩容は仮に生成される だけであり、 実際のロボッ トをこの歩容に追従させるわけではないので、 定常歩容の動力学的精度はあまり高くなくても良いからである。
図 3 0に Z M Prec の一例を示す。 図 3 0では、 Z M Prec のパター ンとして、 時刻 Tmから時刻 Ts2 の期間および時刻 Tm2から Te まで の期間に台形パターンが形成されている。 その台形部の折れ点の時刻は、 時刻 Tm と時刻 Ts2 との間の期間および時刻 Tm2から Te までの期間 における目標 Z M Pパターンの折れ点の時刻 (図 2 2参照) に一致させ てある。 これは、 後述するが、 今回歩容の目標 Z M Pパターンの修正が 簡単になるからである。
式 2 3の A Z M P (k)に Z M Prec(k)を代入することにより次式が得 られる。 i8 (k)= - Z M Prec(k)* Fz(k)/AM r …式 2 4 したがって、 この式 2 4で求められる /3 (k)は、 図 3 1の実線で示す ようになる。 なお、 図 3 1の点線で示すものは、 時刻 Ts から時刻 Tm までの期間および時刻 Tm2 から Te までの期間の上体姿勢角加速度 (図 2 9の実線示のもの) である。 (以降、 時刻 kでの値であることが 明らかな場合には、 (k)を省略する場合がある。)
初期 (時刻 Ts) 上体姿勢角は、 初期 (時刻 Ts) 基準上体姿勢角に一 致させる。
また、 初期上体姿勢角速度は、 式 3 7 a、 3 7 bを満たすように決定 する。 終端上体姿勢角一初期上体姿勢角 =床反力水平成分許容範囲を満たすように決定された上体姿勢角加速 '度の 2階積分
+ Z M P recによって発生する上体姿勢角加速度の 2階積分
+初期上体姿勢角速度 *定常歩容の周期
……式 3 7 a 終端上体姿勢角速度一初期上体姿勢角速度
=床反力水平成分許容範囲を満たすように決定された上体姿勢角加速 度の 1階積分
+ Z M P recによって発生する上体姿勢角加速度の 1階積分
……式 3 7 b なお、 式 3 7 a、 3 7 bのそれぞれの右辺第 1項の積分期間は、 時刻 Tsから Tm までの期間と、 Ts2から Tm2までの期間とを合わせた期間 であり、 右辺第 2項の積分期間は、 時刻 Tm から Ts2 までの期間と Tm2から Teまでの期間とを合わせた期間である。
より具体的に説明すると定常歩容では、 第 1旋回歩容の支持脚座標系 (次回歩容支持客座標系) から見た初期状態姿勢角及び角速度が、 それ ぞれ、 次の第 1旋回歩容の支持脚座標系 (次次次回歩容支持脚座標系) から見た終端上体姿勢角および角速度に一致していなければならない。 そこで、 本第 1参考例では、 初期 (時刻 Ts) 上体姿勢角は、 初期 (時 刻 Ts) 基準上体姿勢角の値に決定し、 これと、 これを定常歩容におけ る口ポッ ト 1のトータルの旋回角 (鉛直軸回りの旋回角) に応じたマト リクス (回転座標変換のマトリクス) により次回歩容支持脚座標系から 見た値に座標変換したものとをそれぞれ式 3 7 aの左辺の初期上体姿勢 角、 終端上体姿勢角に代入する。 また、 式 3 7 a, 3 7 bのそれぞれの 右辺第 1項の積分に係る上体姿勢角加速度は、 前記図 2 6の S 5 1 8で 求められたものが用いられる。
そして、 式 3 7 a, 3 7 bの初期上体姿勢角速度と、 式 3 7 a , 3 7 bの右辺第 2項の積分に係る Z MP rec (図 3 0の台形状のパターン) の台形高さをと未知数として (但し、 Z MPrec の台形パターンの折れ 点の時刻は前記のごとくあらかじめ定める。 また、 第 1旋回歩容の ZM 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 P rec) パターンを基に、 これによる上体水平位置 · 速度への影響量を 求め、 終端上体水平位置 ·速度に加算する。
この処理について解説する。 なお、 その詳細は、 本願出願人の P CT J P 0 2 Z 1 3 5 9 2にて説明されているので、 ここでは簡略な説明 に留める。
時刻 Tsから Tmの期間および時刻 Ts2から Te の期間において、 上 記のごとく上体傾斜復元モーメント Z MP換算値 ( Z MPrec) パター ンを発生するように上体姿勢角加速度 /3を変化させると、 上体姿勢角加 速度 )8は、 次式のよ.うになる。 |8 =— Z M P rec* FzZ ΔΜ r '式 1 0 2 5 上体傾斜復元モーメントを発生させない場合に目標 Z M Pを満足する 上体水平加速度は、 S 5 3 2において求めたごとく atmp であるが、 上記のごとく上体姿勢角加速度 /3を変化させると、 目標 Z M Pを満足す るために必要な上体水平加速度ひは、 次式のようになる。 = atmp- ( ΔΜ Γ Ζ ΔΜΡ ) * β …式 1 0 2 6 式 1 0 2 5および 1 0 2 6より、 = tmp + Z M P rec * Fz/ Δ M p …式 1 0 2 7 すなわち、 上体傾斜復元モーメント Z M P換算値 (Z M P rec) によつ て、 加速度が式 1 0 2 7の右辺第 2項分だけ増加する。 '
式が線形であることを利用すると、 上記のごとく上体傾斜復元モーメ ント Z M P換算値 ( Z M Prec) パターンを発生するように上体姿勢角 加速度 3を変化させた場合の終端上体水平速度は、 上体傾斜復元モーメ ント Z M P換算値 (Z M Prec) パターンを発生させなかった場合の終 端上体水平速度、 すなわち S 4 1 4で求めた上体水平速度の終端値に、 時刻 Ts から Te までの (Z M Prec* Fz/ AMp ) の 1階積分を加算し たものとして求められる。 また、 上記のごとく上体傾斜復元モーメント Z M P換算値 (Z M P rec) パターンを発生するように上体姿勢角加速 度 )3を変化させた場合の終端上体水平位置は、 上体傾斜復元モーメント Z M P換算値 (Z M Prec) パターンを発生させなかった場合の終端上 体水平位置、 すなわち S 4 1 4で求めた上体水平位置の終端値に、 時刻 Ts から Te までの (Z M Prec* Fz/AMp ) の 2階積分を加算したも のとして求められる。 S 3 1 2の処理を完了した後、 S 3 1 4に進み、 逆位ネ目腕振り角速度 が初期と終端で一致するように逆位相腕振り復元角加速度 ( i3 arec) パ 夕一ンを決定する。 , - 具体的には、 逆位相腕振り復元角加速度パターンを図 3 6のように台 形状に設定し、 時刻 Tmから Ts2 までの期間の台形高さ azcyc2 と時刻 Tm2 から Te までの期間の台形高さ azcycl を同一とし、 時刻 Ts から Te までの /3'arec の積分値と床反力モーメント鉛直成分 Mz が許容範囲 を越えないようにするための前記求めた逆位相腕振り加速度 i3 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) 逆位相腕振り角お よび角速度を決定する。
具体的には、 初期逆位相腕振り角速度は、 以下の式によって決定する。 初期逆位相腕振り角速度 =基準初期逆位相腕振り角速度
一 ( iS arecが 0の場合の逆位相腕振り角
+ i3 arecパターンの 2階積分) / Tcyc
…式 1 0 3 0 ただし、 上式において、 /3 arec が 0の場合の逆位相腕振り角とは、 S 4 1 6において求めた逆位相腕振り角 (時刻 Te における逆位相腕振 り角) のことである。 また、 β 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までの期間とにおいては、 床反力水平成分許容範囲が十分に大きいため、 目標 ZMPを満足しつつ、 上体姿勢角速度を戻すように上体姿勢角加速度 ;8を発生させても、 床反 力水平成分 Fxは、 許容範囲を越えることがない。
また時刻 Ts、 Tm、 Ts2 および Tm2 を前記のごとく設定したもうひ とつの理由は、 時刻 Tmから Ts2 までの期間と時刻 Tm2から Te まで の期間とにおいて、 逆位相腕振り角速度を基準逆位相腕振り角軌道の初 期角速度に戻すように逆位相腕振り角加速度 a を発生させても、 床反 力モーメント鉛直成分 Mzが許容範囲 [Mzmin, Mzmax]を越えないよう にするためである。 換言すれば、 時刻 Tm カゝら Ts2 までの期間と時刻 Tm2から Te までの期間とにおいては、 床反力モーメント鉛直成分許容 範囲が十分に大きいため、 逆位相腕振り角速度を戻すよう'に逆位相腕振 り角加速度 /3a を発生させても、 床反力モーメント鉛直成分 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 x e ) とが一致していなけ ればならない。 従って、 上体水平位置速度境界条件誤差 (errx, errvx) が零またはほぼ零でなければならない。 本第 1参考例では、 以 下のように、 上体水平位置速度境界条件誤差 (errx, errvx) がほぼ零 となる (X s , V X s ) が探索的に求められる。
次いで S 2 1 4に進み、 算出した上体水平位置速度境界条件誤差 (errx, errvx) が、 あらかじめ適宜設定された許容範囲内にあるか否 かが判断される。 尚、 このように上体水平位置速度境界条件誤差の許容 範囲を設定する代わりに、 初期発散成分 (X s + V x s /ωθ) と終端 発散成分 (X e + V x e Zc O) との差、 および初期収束成分 (X s _
V X s / ω θ') と終端収束成分 (X e — V x e Z O') との差がそれ ぞれある許容範囲内にあるか否か判断するようにしても良い。 ただし ω
0, ωθ' は、 前述したように、 ある所定の値である。
S 2 1 4の判断結果が NOであるときには S 2 1 6に進む。 この S 2 1 6では、 (X s, V X s ) の付近に複数 (本第 1参考例'では 2つ) の 初期値候補 (X s + A X s, V X s ), (X s , V x s + A V x s ) が決 定される。 ここで、 Δ X s , △ V X sは、 それぞれ X s , V X s に対す る所定の微小変化量を意味している。 そ.して、 これらの初期値候補のそ れぞれを上体水平位置速度の初期状態として、 前記 S 2 0 8と同様の処 理によって定常歩容が歩容パラメータを用いて生成される。 さらに、 そ の生成された定常歩容の終端上体位置速度を、 その瞬間の支持脚に対応 する支持脚座標系 (図 1 7の Χ"', Υ'" , Ζ"'座標系) から見た値に変 換した値 (X e + A X e l , V x e + A V x e 1 ), (X e + A 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 V x e 2 ) は (X s, V x s + A V x s ) に対応する終端上体位置速度を意味している。 なお、 この場合の定常歩容 (仮歩容) の生成処理では、 上体水平位置速度以外 の変数の初期状態 (時刻 T sでの状態) は、 例えば上体水平位置速度の 初期値候補を (X s, V X s ) とした塲合と同一に設定すればよい。 S 2 1 6ではさらに、 前記 S 2 1 0と同様の処理によって、 各初期値候補 とこれに対応する終端上体位置速度との差、 すなわち、 各初期値候補 (X s + Δ X s , V X s ), (X s, V x s + A V x s ) のそれぞれに対 応する上体水平位置速度境界条件誤差が求められる。
次いで S 2 1 8に進み、 (X s, V X s ) およびその付近の初期値候 補 (X s + A X s , V X s ), (X s , V x s + AVx s ) のそれぞれに 対する上体水平位置速度境界条件誤差を基に、 (X s , V X s ) の次の 初期値候補が探索法 (擬似ヤコビアン (感度マトリックス) を求め、 最 急降下法などにより次候補を決定する方法や、 シンプレックス法など) により決定される。 すなわち、 (X s, V X s ) およびその付近の初期 値候補 (X s + A X s , V X s ), (X s , Vx s + AV x s ) のそれぞ れに対する上体水平位置速度境界条件誤差によって、 上体水平位置及び 上体水平速度をそれぞれ初期値候補 (X s, V X s ) から微小変化させ たときの、 上体水平位置速度境界条件鼷差の変化度合いを示す感度マト リックスが求められ、 その感度マトリックスに基づいて、 上体水平位置 速度境界条件誤差をより小さくするような初期値候補 (X s, V X s ) が新たに決定される。 そして、 このように上体水平位置速度の新たな初 期値候補 (X s, V X s ) が決定された後、 S 2 0 6に戻る。
S 2 1 4の判断結果が N〇となる限りは上記した処理 (S 2 0 6〜S 2 1 8の処理) が繰り返される。 なお、 この場合、 上体水平位置速度の 新たな初期値候補 (X s, Vx s ) に対応する定常歩容の生成処理 (S 2 0 8 ) における S 3 0 0 (図 2 4参照) では、 上体姿勢角速度の初期 値は、 基準上体姿勢角速度の初期値ではなく、 上体水平位置速度の前回 の初期値候補 (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 0 4の繰り返しループを抜けたときの直前に生 成された仮定常歩容が、 境界条件を満たす定常歩容として得られること となる。
S 2 2 0では、 本来の初期時刻 0 (今回歩容の終端時刻) における初 期上体水平位置速度 (X0, V0) と初期時刻 0における初期上体鉛直 位置速度 ( Z 0、 V z 0) と初期時刻 0における初期上体姿勢角および 角速度が求められる。
具体的には、 (X0, V0) と (Z0, V z 0) は、 S 3 1 0において決 定された上体傾斜復元モーメント ZMP換算値パターン、 時刻 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", Ζ" 座標系) から見た第 2旋回歩容終端上体鉛直 位置速度に一致している。 また、 Q " [ 0 ] も第 2旋回歩容の支持脚座 標系 (図 1 7の Χ", Υ", Ζ" 座標系) から見た第 2旋回歩容終端発散 成分に一致している。 したがって、 これらの性質を用いて、 (Ζ 0 ", V ζ 0 ") および Q" [ 0 ] を算出するようにしても良い。 '
さらに、 S 2 2 6に進み、 本来の初期時刻 0 (今回歩容の終端時刻) における初期逆位相腕振り角および角速度(0 azO, c azO)を求め、 さら に、 これを今回歩容の支持脚座標系から見た値である azO", ω azO") を求める。 具体的には、 (0 az0,c az0)は、 S 3 1 4および S 3 1 6に おいて決定された逆位相腕振り復元角加速度パターン、 定常歩容の初期 (時刻 Ts) 逆位相腕振り角および角速度とを基に、 歩容の条件を満足 するように歩容を生成した場合における (より具体的には、 上体姿勢 角 ·逆位相腕振り角復元期間以外では、 床反力モーメント鉛直成分が許 容範囲を越えないように、 逆位相腕振り角軌道を決定し、 上体姿勢角 , 逆位相腕振り角復元期間では、 前記基準逆位相腕振り角加速度 β aref と逆位相腕振り復元角加速度 β arec の和が発生するように逆位相腕振 り角軌道を決定した場合における) 第 2旋回歩容から第 1旋回歩容に切 り換わった瞬間の時刻、 すなわち、 時刻 k =Tcyc (時刻 Te— Ts) であ るときに決定される逆位相腕振り角および角速度を、 時刻 Tcyc から始 まる一歩 (すなわち 2度目の第 1旋回歩容) の支持脚に対応する支持脚 座標系 (図 1 7の Χ "', Υ '", Ζ'"座標系) から見た値に変換した値に決 定される。
以上により、 図 1 3の S 0 2 4の処理、 すなわち定常歩容の初期状態 を求めるサブルーチン処理が終了する。
次いで、 図 1 3の S 0 2 6に進み、 今回歩容の歩容パラメータを決定 (一部は仮決定) する。 S 0 2 6では、 より具体的には、 図 3 9に示す フロ一チャートに従って、 以下の処理が行われる。
まず、 S 6 0 0において、 今回歩容の足平位置姿勢軌道が定常歩容の 足平位置姿勢軌道につながるように、 今回歩容の足平軌道パラメ一夕が 設定される。
具体的には、 今回歩容初期遊脚足平位置姿勢 (今回歩容遊脚足平位置 姿勢の初期値) は、 今回歩容支持脚座標系から見た現在遊脚位置姿勢 (前回歩容終端遊脚位置姿勢) に設定される。 今回歩容初期支持脚足平 位置姿勢 (今回歩容支持脚足平位置姿勢の初期値) は、 今回歩容支持脚 座標系から見た現在支持脚足平位置姿勢 (前回歩容終端支持脚足平位置 姿勢) に設定される。 また、 今回歩容終端遊脚足平位置姿勢は、 今回歩 容支持脚座標系から見た次回歩容支持脚座標系 (今回歩容に係わる 1歩 目の遊脚着床位置姿勢の要求値) に対応して決定される。 すなわち、 今 回歩容終端遊脚足平位置姿勢から遊脚足平 2 2を床に接触させたまま、 すべらないように該足平 2 2をその底面のほぼ全面が接地するまで回転 させたときの、 該足平 2 2の代表点が今回歩容支持脚座標系から見た次 回歩容支持脚座標系の原点に合致するように今回歩容終端遊脚足平位置 姿勢が決定される。
今回歩容終端では、 支持脚足平 2 2は離床して空中にある。 支持脚足 平 2 2が離床してから後の軌道を決定するために、 支持脚足平着地予定 位置姿勢を設定する。 支持脚足平着地予定位置姿勢は、 今回歩容支持脚 座標から見た次次回歩容支持脚座標 (今回歩容に係わる 2歩目の遊脚足 平位置姿勢の要求値) に対応して設定される。 より具体的には、 支持脚 足平着地'予定位置姿勢は、 その位置姿勢から、 足平 2 2を床に接触させ たまま、 すべらないように該足平 2. 2をその底面のほぼ全面が床に接地 するまで回転させたときの該足平 2 2の代表点が今回歩容支持脚座標か ら見た次次回歩容支持脚座標の原点に合致するように設定される。
今回歩容終端支持脚足平位置姿勢は、 現在支持脚位置姿勢 (今回歩容 初期支持脚足平位置姿勢) から、 次回歩容支持脚座標系に対応する足平 着地予定位置姿勢 (前記要求パラメ一夕における 2歩目の遊脚側足平着 地位置姿勢の要求値) に至る足平位置姿勢軌道を、 今回歩容終端まで前 記有限時間整定フィル夕により生成することにより求められる。
次いで、 S 6 0 2に進み、 今回歩容の基準上体姿勢軌道パラメータが、 定常歩容の第 1旋回歩容ゃ第 2旋回歩容と同様に決定される。 ただし、 今回歩容の基準上体姿勢軌道が前記定常歩容の基準上体姿勢軌道に連続 してつながる (今回歩容終端での基準上体姿勢角及び角速度がそれぞれ 定常歩容初期の基準上体姿勢角及び角速度に一致する) ように上記パラ メータが設定される。 なお、 本第 1参考例では、 傾斜角に関する基準上 体姿勢は、 今回歩容及び定常歩容のいずれでも定常的な鉛直姿勢である。 次いで、 S 6 0 4に進み、 今回歩容の基準腕姿勢軌道パラメ一夕が、 定常歩容の第 1旋回歩容ゃ第 2旋回歩容と同様に決定される。 ただし、 今回歩容の初期基準腕姿勢およびその変化率が基準腕姿勢および変化率 の現在瞬間値に一致し、 かつ、 今回歩容の腕姿勢軌道が前記定常歩容の 腕姿勢軌道に連続してつながるように上記パラ ータを設定する。 なお、 ここで決定される腕姿勢軌道パラメータは、 定常歩容パラメータの決定 (図 1 5の S 1 0 4 ) の場合と同様、 たとえば、 両腕体 5 , 5の全体の 重心位置 (上体 3に対する相対位置)、 左右の手先 (両腕体 5 , 5の先 端) の左右方向の間隔および逆位相腕振り角に関するパラメ一夕が決定 される。 尚、 本第 1参考例では、 両腕体 5, 5の全体の重心位置は、 上 体 3に対して一定に維持されるように設定される。
次いで、 S 6 0 6に進み、 今回歩容の床反力鉛直成分軌道パラメ一夕 が、 定常歩容の第 1旋回歩容ゃ第 2旋回歩容と同様、 該パラメータによ り規定される床反力鉛直成分軌道が前記図 6のように実質的に連続な (値がステップ状に飛ばない) 軌道になるように設定される。
ただし、 床反力鉛直成分軌道パラメ一夕は、 今回歩容の全体重心鉛直 位置速度と床反力鉛直成分軌道とのいずれもが、 前記定常歩容と連続し てつながるように決定される。
具体的には、 まず、 前記図 1 3の S 0 2 4の処理 (定常歩容初期状態 の決定処理) で最終的に求めた定常歩容の初期上体鉛直位置速度を今回 歩容支持脚座標系から見た値に変換した値 (Z 0 ", V z 0 すなわ ち、 図 2 3の S 2 2 4で求めた ( Z 0 " , V z 0 ") 等を基に、 例えば前 記式 0 4 (あるいは口ポッ ト 1のキネマテイクスモデル) を用いて、 今 回歩容支持脚座標系から見た定常歩容の初期全体重心鉛直位置速度が求 められる。 具体的には、 今回歩容支持脚座標系から見た定常歩容の初期 全体重心鉛直位置は、 S 2 2 4で求めた定常歩容の上体鉛直位置 Z0" に対応する図 1 2のモデルの上体質点鉛直位置と、 定常歩容初期の各足 平位置を今回歩容支持脚座標系から見た値に変換したものに対応する支 持脚側及び遊脚側の脚体質点鉛直位置とを式 0 4に代入することで求め られる。 また、 今回歩容支持脚座標系から見た定常歩容の初期全体重心 鉛直速度は、 S 2 2 4で求めた定常歩容の上体鉛直速度 VzO" に対応す る図 1 2のモデルの上体質点鉛直速度と、 定常歩容初期の各足平鉛直速 度を今回歩容支持脚座標系から見た値に変換したものに対応する支持脚 側及び遊脚側の脚体質点鉛直速度とを式 0 4の両辺を微分してなる式に 代入することにより求められる。 なお、 この初期全体重心鉛直位置速度 の算出は、 より厳密なモデルを用いて行なうようにしてもよい。
そして、 このようにして求めた定常歩容の初期全体重心鉛直位置速度 を、 次式 4 1 a、 4 1 bの終端全体重心鉛直位置速度に代入すると共に、 前回の目標'歩容瞬時値 (より厳密には、 前回目標歩容の終端状態を今回 支持脚座標系に変換したもの) の全体重心鉛直位置および速度を、 式 4 1 a、 4 1 bの初期全体重心鉛直位置および速度に代入し、 式 4 1 a、 4 1 bの関係を満足するように、 今回歩容の床反力鉛直成分パターン (より具体的にはパラメ一夕値) が決定される。 ただし、 式 4 1 a、 4 1 bにおける積分値は今回歩容の初期から終端までの期間の積分値とす る。 ' 終端全体重心鉛直位置一初期全体重心鉛直位置
= (床反力鉛直成分 Z口ポッ トの全体質量) の 2階積分
+重力加速度の 2階積分
+初期全体重心鉛直速度 * 1歩の時間
…式 4 1 a 終端全体重心鉛直速度一初期全体重心鉛直速度
= (床反力鉛直成分/口ポッ トの全体質量) の 1階積分
+重力加速度の 1階積分
…式 4 1 b
ただし、 重力加速度は負の値とする。
より具体的には、 まず、 図 6のような床反力鉛直成分パターンを規定 する床反力鉛直成分パラメ一夕 (折れ点の時刻等) のうちの、 少なくと も 2つのパラメ一夕を独立な未知変数として、 その未知変数の値を、 式 4 1 a、 4 1 bからなる連立方程式を解いて決定する。
未知変数とする床反力鉛直成分パラメ一夕には、 例えば、 図 6の台形 の高さ (床反力鉛直成分のピーク値) と幅 (片脚支持期時間) とを選択 すれば良い。 この場合、 図 6の台形の両側部分の傾きは今回歩容周期等 に応じてあらかじめ定めた値とし、 あるいは、 片脚支持期から空中期に 移行する時刻を除く床反力鉛直成分パターンの折れ点の時刻を今回歩容 周期等に応じてあらかじめ定めた値とする。 補足すると、 未知変数を 1 つとすると、 一般的には式 4 1 a、 4 1 bの連立方程式を満足する解が 存在しない。
次いで、 S 6 0 8に進み、 床反力水平成分許容範囲 [Fxmin, Fxmax] (具体的には該床反力水平成分許容範囲のパターンを規定するパラメ一 夕) が、 定常歩容の第 1旋回歩容ゃ第 2旋回歩容と同様に設定される。 たとえば図 4 0に示すようなパターンで床反力水平成分許容範囲が設定 される。 本第 1参考例では、 先に S 6 0 6で決定した床反力鉛直成分パ ターンに応じて前記式 1 2に基づいて床反力水平成分許容範囲が設定さ れる。
次いで、 S 6 1 0 に進み、 床反力モーメン ト鉛直成分許容範囲 [Mzmin, Mzmax] (具体的には該床反力モーメント鉛直成分許容範囲 のパターンを規定するパラメ一夕) が、 定常歩容の第 1旋回歩容ゃ第 2 旋回歩容と同様に設定される。 たとえば図 4 1 に示すようなパターンで 床反力モーメント鉛直成分許容範囲が設定される。 本第 1参考例では、 先に S 6 0 6で決定した床反力鉛直成分パターンに応じて前記式 1 0 1 2に基づいて床反カモ一メント鉛直成分許容範囲が設定される
次いで、 S 6 1 2に進み、 今回歩容の Z M P軌道 (具体的には Z M P 軌道を規定するパラメ一夕で、 軌道の折れ点の時刻や位置) が、 定常歩 容の第 1旋回歩容ゃ第 2旋回歩容と同様、 安定余裕が高くかつ急激な変 化をしないように、 前記図 7に示すごとく設定される。 ただし、 今回歩 容の Z M P軌道が前記定常歩容の Z M P軌道に連続してつながるように 上記パラメータを設定される。 つまり、 今回歩容終端における Z M Pの 位置が定常歩容初期の ZMP位置に一致するように、 ZMP軌道パラメ —夕が決定される。 この場合、 走行歩容では、 片脚支持期における Z M P軌道の折れ点の時刻や位置の設定の仕方は、 前述した定常歩容の Z M P軌道パラメータの設定の仕方と同様でよい。 そして、 空中期における 目標 ZMP軌道が、 空中期開始時から、 定常歩容初期の Z MP位置まで、 直線的に連続して変化するように Z MP軌道パラメータを設定すればよ い。
なお、 S 6 1 2で決定される今回歩容の Z M P軌道パラメータは、 仮 決定されただけであり、 後述するように修正される。 そこ'で、 上記のご とく設定した今回歩容の ZMP軌道を、 以降、 今回歩容の仮目標 ZMP 軌道と呼ぶこととする。
最後に、 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に進み、 今回 歩容の歩容パラメ一夕 (ZMP軌道パラメ一夕) が修正され、 また、 逆 位相腕振り角に関するパラメータが決定される。'この処理では、 上体位 置姿勢軌道を定常歩容に連続させ、 もしくは近づけるべく Z MP軌道パ ラメ一夕が修正され、 かつ、 逆位相腕振り角が定常歩容の逆位相腕振り 角軌道に収束するように今回歩容の逆位相腕振り角に関するパラメ一夕 が決定される。
図 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と 同様、 図 2 5に示すごとく仮歩容を生成する。 ただし、 歩容パラメ一夕 として、 定常歩容パラメータの代わりに今回歩容パラメ一夕が用いられ る。
次いで S 8 0 8に進み、 仮歩容生成用時刻 kが だけ増加され、 S 8 0 4に戻る。 S 8 0 4の判断結果が NOである場合には、 図 4 3に示すフ口一チヤ 一卜の処理が完了する。
以上の処理により、 仮の今回歩容が初期から終端まで生成される。 次いで S 7 04に進み、 上記のごとく 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の判断結果が N Oであるときは S 7 1 0に進み、 a = A a (△ aは所定の微小量) とし、 図 44の関係に従って現在の仮目標 ZM Pパターンに台形状の修正を加えた目標 Z MPを基に、 前記 S 7 0 2と 同様に、 終端までの仮今回歩容を計算する。 ここで、 図 44を参照して、 aは、 今回歩容終端発散成分を定常歩容.初期発散成分にできるだけ一致 させる (今回歩容の上体水平位置姿勢軌道を定常歩容の上体水平位置姿 勢軌道に近づける) ために、 仮目標 Z M Pを修正するための台形パ夕一 ンの高さである。 この場合、 本第 1参考例では、 仮目標 ZMPの修正は、 支持脚足平 2 2の底面のほぼ全面が接地する期間 (足底全面接地期間)、 すなわち、 床反力水平成分許容範囲が十分に広いものとなる期間におい て行なうようにしており、 上記台形パターンの折れ点の時刻は、 足底全 面接地期間における仮目標 Z M'Pの折れ点の時刻に合わせて設定されて いる。 なお、 S 7 1 0で a = Δ aとするのは、 現在の仮目標 ZMP軌道 を上記台形パターンによって微小量、 修正したときの前記終端発散成分 誤差 errqの変化を観測するためである。 上記のように S 7 1 0にて、 a = A aとして仮目標 ZMP軌道を修正 したときの仮今回歩容を終端まで生成した後、 さらに S 7 1 2に進み、 S 7 1 0で求めた仮今回歩容終端での上体水平位置速度 (X e 1, V X e l) を基に、 この仮今回歩容における終端発散成分 q l[k]が図示の式 (前記式 1 0 ) を用いて求められる。
尚、 S 7 1 0において は、 本第 1参考例では、 適宜に設定される 微小量の定数としたが、 以下に説明する繰り返し演算によって終端発散 成分誤差 errq が小さくなるにつれて Δ aを減少させるように該 Δ aを 設定するようにしても良い。 ただし、 定数にしておいても、 数回の繰り 返し演算で終端発散成分誤差 errq を許容範囲内に収めることができる。 次いで S 7 1 4に進み、 パラメ一夕感度 r (△ aに対する終端発散成 分誤差の変化の割合) が図示の式から求められる。 さらに、 S 7 1 6に 進み、 a =— errqZr、 すなわち S 7 0 6で求めた終端発散成分誤差 errq を、 S 7 1 4で求めたパラメ一夕感度 rで割った値を高さ aとす る台形パターンの修正量を図 44の関係に従って仮目標 Z MPパターン に加えることにより、 仮目標 Z MPパターンが修正される (新たな仮目 標 Z MPパターンが決定される)。
次いで S 7 0 2に戻る。 そして、 S 7 0 8の判断結果が N Oである限 りは、 上記した S 7 0 2〜S 7 1 6の処理が繰り返され、 S 7 0 8の判 断結果が Y E Sになったときには、 その繰り返しループ ( S 7 0 0 ) を 抜けて S 7 1 8に進む。
S 7 1 8では、 仮今回歩容の終端上体姿勢角と定常歩容の初期上体姿 勢角との差、 および仮今回歩容の終端上体姿勢角速度と定常歩容の初期 上体姿勢角速度との差などを基に、 今回歩容の上体姿勢角軌道が定常歩 容の上体姿勢角軌道に近づくように、 今回歩容の上体姿勢復元モ一メン ト Z MP換算値 ( Z MPrec) のパターンが決定される。 ここで決定す る Z MPrec は、 後述する今回歩容瞬時値の生成処理で: 床反力水平成 分許容範囲が十分に大きいものとなる期間 (片脚支持期内の期間) にお いて、 上体姿勢角軌道を定常歩容につながらせる (近づける) ように上 体姿勢角加速度を発生させても、 今回歩容終端発散成分と定常歩容初期 発散成分との一致性 (S 7 0 8の条件) を維持できるように、 仮目標 Z M Pを修正するためのものである。
この ZMPrec は、 前記定常歩容生成処理で説明したものと同様に台 形状のパターンであり、 具体的には次のように決定される。 すなわち、 図 3 0における第 2旋回歩容の期間の Z MPrec の台形パターンと同様 に、 今回歩容の ZMPrec の台形パタ一ンを設定し、 台形の頂点 (折れ 点) の時刻は既知とする (より具体的には台形の折れ点の時刻を目標 Z MPの折れ点時刻に合わせる) と共に、 台形高さを未知数とし、 以下の ように ZMPrec の台形高さ (パラメータ) が求められる。 ただし、 Z MPrec の台形パターンが立ち上がり始める時刻を Ta とし、 台形パタ —ンから 0に戻る時刻を Tb とする。
上記のように上体姿勢復元モーメン卜 Z M P換算値パターンの未知パ ラメ一夕がひとつの場合には、 今回歩容の終端において上体姿勢角と上 体姿勢角速度の両方を定常歩容に連続につなげることは一般的にはでき ない。 そこで、 本第 1参考例では、 複数歩に渡って徐々に、 生成される 歩容の状態が定常歩容の状態に近づけるように、 未知パラメータを決定 することとする。
補足すると、 1歩容の中での Z MPrec パターンを複雑にし、 未知パ ラメ一夕を 2つ以上にして、 今回歩容の終端において上体姿勢角と上体 姿勢角速度との両者を定常歩容に連続につなげても良いが、 Z MPrec パターンがジグザグに大きく変動し過ぎる恐れがある。
以下では、 算出原理を説明した後、 算出手順を説明する。 前述のごとく 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旋回歩容の終端) 上体姿勢角と角速度をそれぞれ 0 1、 νθ ΐ と する。 '
S 0 2 4における定常歩容の初期状態を求めるサブルーチンの処理が 完了した時点で求められた本来の定常歩容 (最終的に S 3 1 0において 決定された定常歩容初期上体姿勢角およ.び角速度を初期値とし、 Z M P recパターンを S 3 1 0において求められたパターン (高さが acycl で ある図 3 0の台形パターン) とした場合の定常歩容) の第 1旋回歩容終 端上体姿勢角と角速度をそれぞれ Θ lorg, νθ lorgとする。
ここで、 Δ 0 1、 Δνθ 1を次のように定義する。
Α θ 1 =θ 1- Θ lorg 式 5 0
Δ v θ 1 =ν θ 1~νθ lore- "式 5 1 Δ 0 1および Δνθ ΐ は、 Z M Prec修正歩容と本来の定常歩容を第 1 旋回歩容の終端まで生成した時点において、 両者間における上体姿勢角 の差及び角速度の差を意味する。 もし、 Δ θ 1 および Δν0 1 が 0にな れば、 Z M Prec 修正歩容に引き続いて、 今回歩容と同様のァルゴリズ ムによって、 Z M Precパターンの台形高さを前記 acyc2 として第 2旋 回歩容が生成されると、 この歩容は、 本来の定常歩容に一致する。
したがって、 Δ 0 1および△ v01が 0となる今回歩容台形高さ bcurr、 第 1旋回歩容台形高さ bl を求め、 求めた bcurr を今回歩容の台形高さ として最終的に決定すれば良い。
ところで、 口ポッ ト 1の上体姿勢角に関する動力学モデルが図 1 2に 示すフライホイール FHx、 FHy のような線形特性を持つことから、 △ 0 1および Δνθ ΐは、 今回歩容台形高さ bcurr、 第 1旋回歩容台形高さ bl、 仮今回歩容の終端上体姿勢角と定常歩容の初期上体姿勢角の差 Θ err, 仮今回歩容の終端上体姿勢角速度と定常歩容の初期上体姿勢角速 度の差 v0 errと以下の関係を持つ。 ' Δ Θ l = cll* bcurr +cl2*bl+ 6> err+el* νθ err …式 5 2
Ανθ 1= c21 * bcurr + c22 * bl + e2* v9 err …式 5 3 だだし、 cll、 cl2、 c21、 c22、 el、 e2 は、 今回歩容、 第 1旋回歩容の 歩容周期、 上体姿勢復元モーメント Z M P換算値 Z M Prec パターンの パラメ一夕 (特に時間に関するパラメータ) などによって一義的に決定 される係数である。
以上の原理に基づき、 算出手順として、 まず、 仮今回歩容と定常歩容 との境界での上体姿勢角の差 0 err と角速度の差 V 0 err が求められる。 次いで、 式 5 2, 5 3の係数でぁる (;11、 cl2、 c21、 c22、 el、 e2 が、 今回歩容、 第 1旋回歩容の歩容周期、 上体姿勢復元モーメント Z M P換 算値 Z M P rec パターンのパラメ一夕 (特に時間に関するパラメ一夕) などを基に求められる。
次いで式 5 2、 式 5 3 の右辺が 0 となるように今回歩容台形高さ bcurr, 第 1旋回歩容台形高さ bl が決定される。 すなわち、 式 5 2、 式 5 3の左辺を 0とした連立方程式を解く ことによって、 bcurr、 bl が 求められる。
最後に、 今回歩容の上体姿勢復元モーメント Z M P換算値 ( Z M P rec) の台形パターンの台形高さが、 上記求めた今回歩容台形高さ bcurrに設定される。
次いで S 7 2 0に進み、 現在の仮目標 ZMPパターン (S 7 0 0の繰 り返しループを抜けたときの仮目標 Z M Pパターン) に、 S 7 1 8で上 記のように求めた上体姿勢復元モ一メント Z MP換算値パターンを加算 してなるパ夕一ンが今回歩容の目標 ZMPパターンとして決定される。 なお、 この処理は、 S 7 1 0において の高さの台形パ'夕一ンを仮目 標 Z MPパターンに加える処理と同様である。
以下に仮目標 Z MPパターンに上体姿勢復元モーメント Z MP換算値 パターンを加算した理由を述べる。 .
S 7 0 0のループにおいて生成される仮今回歩容は、 上体姿勢復元モ 一メント Z MP換算値 Z MPrec を 0 ( Z M P rec の台形パターンの高 さパラメ一夕を 0 ) にして生成されたものである。 このようにして S 7 0 0のループで最終的に生成された仮今回歩容では、 その上体位置速度 は、 定常歩容に連続し、 もしくは近づくが、 上体姿勢角は、 定常歩容の 上体姿勢角からずれ、 場合によっては発散してしまう。
S 7 1 8で求められた上体姿勢復元モーメント Z MP換算値パターン は、 上体姿勢角の定常歩容に対するずれを 0に近づけるための上体姿勢 角加速度を発生させるものである。
しかし、 S 7 0 0のループで最終的に得られた仮目標 Z MPパ夕一ン を修正することなく、 S 7 1 8で求められた上体姿勢復元モ一メント Z M P換算値パターンに応じた上体姿勢角加速度を発生させると、 動力学 的平衡条件 (口ポッ トの重力と慣性力との合力が目標 Z M Pに作用する モーメントが鉛直成分を除いて 0になること) を満足させるために、 上 体水平位置軌道を前記仮今回歩容の上体水平位置軌道からずらさざるを 得なくなる。 そこで、 本実施例では、 上体水平位置軌道を S 7 0 0のル ープで最終'的に得られるものからずらさなくて済むように、 Z M P rec によつて仮目標 Z M Pパターンを修正することとした。
前記仮今回歩容の運動に加えて、 S 7 1 8で求めた上体姿勢復元モー メント Z M P換算値パターンに対応する上体姿勢角加速度を発生させる と、 Z M P (運動によって発生する重力と慣性力の合力の鉛直成分を除 くモーメントが 0になる点) は上体姿勢復元モーメント Z M P換算値だ けずれる。 したがって、 逆に、 仮目標 Z M Pパターンに上体姿勢復元モ —メント Z M P換算値パ夕一ンを加算したパターンを目標 Z M Pパタ一 ンとして、 S 7 1 8で求めた上体姿勢復元モーメント Z M P換算値パ夕 ーンに対応する上体傾斜モードの上体姿.勢角加速度を発生させながら、 目標 Z M Pパターンを満足する今回歩容を生成すれば、 前記仮今回歩容 と同じ上体並進運動となる。
以上が、 仮目標 Z M Pパターンに上体姿勢復元モーメント Z M P換算 値パ夕一ンを加算したパターンを目標 Z M Pパターンとした理由である。 次いで S 7 2 2に進み、 仮今回歩容の終端逆位相腕振り角と定常歩容 の初期逆位相腕振り角との差および仮今回歩容の終端逆位相腕振り角速 度と定常歩容の初期逆位相腕振り角速度との差を基に、 今回歩容の逆位 相腕振り角軌道が定常歩容の逆位相腕振り角軌道に近づくように、 逆位 相腕振り復元角加速度パターンが決定される。 このパターンの決定方法 は、 S 7 1 8で上体姿勢復元モーメント Z M P換算値パターンを決定す る方法と、 変数名が次のように異なること以外は、 ほぼ同じである。 上体姿勢復元モーメント Z M P換算値パターン—逆位相腕振り復元角加 速度パターン
水平成分—モーメント鉛直成分 以下に詳細を説明する。 ここで決定する逆位相腕振り復元角加速度パ 夕一ンは、 後述する今回歩容瞬時値の生成処理で、 床反力モーメント鉛 直成分許容範囲が十分に大きいものとなる期間 (片脚支持期内の期間) において、 逆位相腕振り角軌道を定常歩容につながらせる (近づける) ように修正するためのものである。
この逆位相腕振り復元角加速度パターンは、 前記定常歩容生成処理で 説明したものと同様に台形状のパターンであり、 具体的には次のように 決定される。 すなわち、 図 3 6における第 2旋回歩容の期間の逆位相腕 振り復元角加速度の台形パターンと同様に、 今回歩容の逆位相腕振り復 元角加速度の台形パターンを設定し、 台.形の頂点 (折れ点) の時刻は既 知とする (より具体的には台形の折れ点の時刻を目標 Z M Pの折れ点時 刻に合わせる) と共に、 台形高さを未知数とし、 以下のように逆位相腕 振り復元角加速度の台形高さ (パラメータ) が求められる。 ただし、 逆 位相腕振り復元角加速度の台形パターンが立ち上がり始める時刻を Ta とし、 台形パターンから 0に戻る時刻を Tbとする。
上記のように逆位相腕振り復元角加速度パターンの未知パラメータが ひとつの場合には、 今回歩容の終端において逆位相腕振り角と逆位相腕 振り角速度の両方を定常歩容に連続につなげることは一般的にはできな い。 そこで、 本第 1参考例では、 複数歩に渡って徐々に、 生成される歩 容の状態が定常歩容の状態に近づけるように、 未知パラメータを決定す ることとする。 ― 補足すると、 1歩容の中での逆位相腕振り復元角加速度パターンを複 雑にし、 未知パラメ一夕を 2つ以上にして、 今回歩容の終端において逆 位相腕振り角と逆位相腕振り角速度との両者を定常歩容に連続につなげ ても良いが、 逆位相腕振り復元角加速度パターンがジグザグに大きく変 動し過ぎる恐れがある。
前述のごとく S 7 0 2で逆位相腕振り復元角加速度パターンの台形高 さを 0として求めた仮今回歩容の終端逆位相腕振り角と定常歩容の初期 逆位相腕振り角との差を求め、 これを 0 azerr とする。 また、 仮今回歩 容の終端逆位相腕振り角速度と定常歩容の初期逆位相腕振り角速度との 差を求め、 これを v 0 zerrとする。
ここで、 逆位相腕振り復元角加速度パターンの台形高さをある値 bzcurr として今回歩容が生成され、 引き続いて、 今回歩容と同様のァ ルゴリズムによって第 1旋回歩容が生成されると想定する。 ただし、 第 1旋回歩容の逆位相腕振り復元角加速度パターンは、 図 2 4の S 3 1 4 において求められた第 1旋回歩容の逆位相腕振り復元角加速度パターン (高さが前記 azcycl である図 3 6の台形パターン) とある値 bzl の和 であるとする。
このようにして生成された歩容を逆位相腕振り復元角加速度修正歩容 と呼び、 その終端 (第 1旋回歩容の終端) 逆位相腕振り角と角速度をそ れぞれ 0 zl、 ν θ zlとする。
S 0 2 4における定常歩容の初期状態を求めるサブルーチンの処理が 完了した時点で求められた本来の定常歩容 (最終的に S 3 1 4において 決定された定常歩容初期逆位相腕振り角および角速度を初期値とし、 逆 位相腕振り復元角加速度パターンを S 3 1 4において求められたパター ン (高さが azcycl である図 3 6の台形パターン) とした場合の定常歩 容) の第 1旋回歩容終端逆位相腕振り角と角速度をそれぞれ Θ zlorg、 V Θ zlorgとす。。
ここで、 Δ 0 ζ1、 Δν0 zlを次のように定義する。 Δ 0 zl =0 zl— Θ zlorg …式 1 0 5 0
Δ v 6> zl =v 0 zl- v 0 zlorg …式 1 0 5 1
Δ Θ zl および Δνθ ζΐ は、 逆位相腕振り復元角加速度修正歩容と本 来の定常歩容を第 1旋回歩容の終端まで生成した時点において、 両者間 における逆位相腕振り角の差及び角速度の差を意味する。 もし、 zl および Δνθ ζΐ が 0になれば、 逆位相腕振り復元角加速度修正歩容 に引き続いて、 今回歩容と同様のアルゴリズムによって、 逆位相腕振り 復元角加速度パターンの台形高さを前記 azcyc2 として第 2旋回歩容が 生成されると、 この歩容は、 本来の定常歩容に一致する。
したがって、 Δ 0 zl および ΔνΘ zl が 0 となる今回歩容台形高さ bzcurr, 第 1旋回歩容台形高さ bzl を求め、 求めた bzcurr を今回歩容 の台形高さとして最終的に決定すれば良い。
ところで、 ロボッ ト 1の逆位相腕振り角に関する動力学モデルが図 1 2に示すフライホイール FHazのような線形特性を持つことから、 △ Θ zl および Δνθ ζΐ は、 今回歩容台形高さ bzcurr、 第 1旋回歩容台形高 さ bzl、 仮今回歩容の終端逆位相腕振り角と定常歩容の初期逆位相腕振 り角の差 Θ zerr, 仮今回歩容の終端逆位相腕振り角速度と定常歩容の初 期逆位相腕振り角速度の差 v0 zerrと以下の関係を持つ。
Δ 0 zl= czll * bzcurr + czl2 * bzl + 9zerr + ezl * v6zerr
…式 1 0 5 2
Δ νθζ1 = cz21 * bzcurr+ cz22 * bzl + ez2 * v9zerr 21
…式 1 0 5 3 だだし、 czll、 czl2、 cz21、 cz22、 ezl、 ez2 は、 今回歩容、 第 1旋回 歩容の歩容周期、 逆位相腕振り復元角加速度パターンのパラメ一夕 (特 に時間に関するパラメ一夕) などによって一義的に決定される係数であ る。
以上の原理に基づき、 算出手順として、 まず、 仮今回歩容と定常歩容 との境界での逆位相腕振り角の差 0 zerr と角速度の差 v 0 zerr が求め られる。
次いで、 式 1 0 5 2, 1 0 5 3の係数である czll、 czl2、 cz21、 cz22、 ezl、 ez2 が、 今回歩容、 第 1旋回歩容の歩容周期、 逆位相腕振 り復元角加速度パターンのパラメ一夕 (特に時間に関するパラメータ) などを基に求められる。 '
次いで式 1 0 5 2、 式 1 0 5 3の右辺が 0 となるように今回歩容台形 高さ bzcurr、 第 1旋回歩容台形高さ bzl が決定される。 すなわち、 式 1 0 5 2、 式 1 0 5 3の左辺を 0とした.連立方程式を解くことによって、 bzcurr、 bzlが求められる。
最後に、 今回歩容の逆位相腕振り復元角加速度の台形パターンの台形 高さが、 上記求めた今回歩容台形高さ bzcurrに設定される。
図 1 3に戻って、 上記のごとく S 0 2 8において今回歩容パラメータ を修正した後、 あるいは S 0 1 6の判断結果が NOである場合には、 S 0 3 0に進み、 今回歩容瞬時値が決定される。
S 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 I 0 0 0において、 目標上体ョ一角に現在時刻で の基準上体ョ一角の値を代入する。 また、 腕姿勢逆位相腕振り角 · 角速 度を除き、 目標腕姿勢に現在時刻での基準腕姿勢の値を代入する。
次いで S 1 0 0 2に進み、 現在時刻が、 上体姿勢角 ·逆位相腕振り角 復元期間 (時刻 Ta から時刻 Tb の期間) の間にあるか否かが判定され る。 S 1 0 0 2の判定結果が NOであるならば、 S 1 0 04に進み、 Y E Sであるならば S 1 0 0 6に進む。
S 1 0 0 4では、 上体傾斜角 ·逆位相腕振り角復元期間でない場合の 上体水平加速度 α、 上体角加速度 /3、 逆位相腕振り角加速度 3 a 算出処 理 (図 2 6の S 5 0 4から S 5 2 8 ) と同様の処理を行う。
S 1 0 0 6に進む場合では、 まず、 S 1 0 0 6において、 仮に上体並 進モードの運動をさせた場合に今回 (時刻 k) 目標 ZMPを満足するた めに必要な上体水平加速度 atmpを求める。 '
次いで S 1 0 0 8に進み、 現在時刻における上体傾斜復元モ一メント Z MP換算値パターンの瞬間値 ZMPrec を、 S 7 1 8において決定し た上体傾斜復元モーメント Z MP換算镶パターンに関するパラメ一夕を 基に算出する。
次いで S 1 0 1 0に進み、 現在時刻における逆位相腕振り復元角加速 度パターンの瞬間値) 3 arec を、 S 7 2 2において決定した逆位相腕振 り復元角加速度パターンに関するパラメ一夕を基に算出する。
次いで S 1 0 1 2に進み、 図示する式によって、 上体傾斜モードの上 体角加速度 (上体傾斜角加速度) ]3が決定される。
次いで S 1 0 1 4に進み、 図示する式によって、 上体水平加速度 が 決定される。
次いで S 1 0 1 6に進み、 S 1 0 1 0で算出した逆位相腕振り復元角 加速度パターンの瞬間値) 3 arec と基準逆位相腕振り角加速度) 3 aref (基準逆位相腕振り角を 2階微分した値) の和を目標逆位相腕振り角加 速度 3 aに代入する。
次いで S 1 0 1 8に進み、 上体水平加速度が αの場合の床反力水平成 分 Fxを求める。
次いで S 1 4 1 4に進み、 上体水平加速度と上体姿勢角加速度を積分 して上体水平速度と上体姿勢角速度 (上体傾斜角速度) を算出する。 こ れをさらに積分して、 上体水平位置と上体姿勢 (上体傾斜角) を決定す る。 なお、 上体姿勢のうちの上体ョ一角は、 本第 1参考例では基準上体 ョ一角に決定される。
次いで S 1 4 1 6に進み、 逆位相腕振り加速度を積分して逆位相腕振 り角速度を算出する。 これをさらに積分して、 逆位相腕振り角を決定す る。
以上のごとく、 図 1 3の S 0 3 0の処理が完了する。 '
次いで S O 3 2に進み、 歩容生成用時刻 t を Δ tだけ増やし、 S 0 1 4に戻り、 以上のごとく歩容生成を続ける。
以上が、 歩容生成装置 1 0 0における.目標歩容生成処理である。
図 4を参照して本第 1参考例に係る装置の動作をさらに説明すると、 歩容生成装置 1 0 0において、 上記したように目標歩容が生成される。 生成された目標歩容のうち、 目標上体位置姿勢 (軌道)、 目標腕姿勢 (軌道) が、 ロボッ ト幾何学モデル (逆キネマテイクス演算部) 1 0 2 に送出される。
また、 目標足平位置姿勢 (軌道)、 目標 Z M P軌道 (目標全床反力中 心点軌道)、 および目標全床反力 (軌道) (目標床反力水平成分と目標床 反力鉛直成分) は、 複合コンプライアンス動作決定部 1 0 4に送られる と共に、 目標床反力分配器 1 0 6にも送られる。'そして、 目標床反力分 配器 1 0 6で、 床反力は各足平 2 2 R , 2 2 Lに分配され、 目標各足平 床反力中心点および目標各足平床反力が決定される。 この決定された目 標各足平床反力中心点および目標各足平床反力は複合コンプライアンス 動作決定部 1 0 4に送られる。
複合コンプライアンス動作決定部 1 0 4から、 機構変形補償付き修正 目標足平位置姿勢 (軌道) が口ポッ ト幾何学モデル 1 0 2に送られる。 口ポッ ト幾何学モデル 1 0 2は、 目標上体位置姿勢 (軌道) と機構変形 補償付き修正目標足平位置姿勢 (軌道) を入力されると、 それらを満足 する脚体 2, 2の 1 2個の関節 ( 1 0 R ( L ) など) の関節変位指令 (値) を算出して変位コントローラ 1 0 8に送る。 変位コントロ一ラ 1 0 8は、 口ポッ ト幾何学モデル 1 0 2で算出された関節変位指令 (値) を目標値としてロポッ ト 1の 1 2個の関節の変位を追従制御する。 また、 ロポッ ト幾何学モデル 1 0 2は、 目標腕姿勢を満足する腕関節の変位指 定 (値) を算出して変位コントロ一ラ 1 0 8に送る。 変位コントローラ 1 0 8は、 ロボッ ト幾何学モデル 1 0 2で算出された関節変位指令 (値) を目標値としてロボッ ト 1の腕体の 1 2個の関節の変位を追従制 御する。
口ポッ ト 1に生じた床反力 (詳しくは実各足床反力) は 6軸力センサ 5 0によって検出される。 その検出値は前記複合コンプライアンス動作 決定部 1 0 4に送られる.。
また、 ロボッ ト 1に生じた実上体姿勢角偏差 (目標上体姿勢と実上体 姿勢 (上体 3の実際の姿勢) との偏差) のうちの姿勢傾斜角偏差 0 errx, Θ erry (詳しくは目標上体姿勢のうちの鉛直方向に対する傾斜角に対す る実上体姿勢のうちの鉛直方向に対する傾斜角の偏差で、 ロール方向 ( X軸回り) の姿勢傾斜角偏差が 0 errx であり、 ピッチ方向 (Y軸回 り) の姿勢傾斜角偏差が 0 erry である) が姿勢センサ 5 4を介して検 出され、 その検出値は姿勢傾斜安定化制御演算部 1 1 2に送られる。 こ の姿勢傾斜安定化制御演算部 1 1 2で、 ロボッ ト 1の実上体姿勢角を目 標上体姿勢角に復元するための目標全床反力中心点 (目標 Z M P ) まわ り補償全床反力モーメント水平成分が算出されて複合コンプライアンス 動作決定部 1 0 4に送られる。
より具体的には、 本第 1参考例では、 補償全床反力モーメント水平成 分 Mdmdxyは、 例えば P D制御則を用いて次式により決定される。 補償全床反力モーメント水平成分 Mdmdxy
= K0 b*上体姿勢傾斜角偏差
+Kc b*上体姿勢傾斜角速度偏差
…… d 2 5 ここで、 K 0 b、 Κ ω bは所定のゲインである。 また、 上体姿勢傾斜 角速度偏差は、 上体姿勢傾斜角偏差の時間微分値であり、 '目標上体姿勢 傾斜角速度に対する実上体姿勢傾斜角速度の偏差を意味する。 また、 上 体姿勢傾斜角偏差は、 より詳しくは、 口ポッ ト 1の上体 3のロール方向 (X軸回り) の姿勢傾斜角偏差と、 ピッ.チ方向 (Y軸回り) の姿勢傾斜 角偏差とからなるべク トルである。
また、 ロボッ ト 1に生じた前記実上体姿勢角偏差のうちのョ一角偏差 θ βνχζ (詳しくは実上体姿勢角偏差のうちのョー方向 (Ζ軸回り) の姿 勢角偏差が Θ errz である) が姿勢センサ 5 4を介して検出され、 その 検出値はョ一安定化制御演算部 1 1 3に送られる。 このョー安定化制御 演算部 1 1 3で、 口ポッ ト 1の実上体ョ一角および Zまたは角速度を目 標上体ョ一角および/または角速度に収束させるための目標全床反力中 心点 (目標 Z M P ) まわり補償全床反力モーメント鉛直成分が算出され て複合コンプライアンス動作決定部 1 0 4に送られる。 複合コンプライ アンス動作決定部 1 0 4は、 入力値に基づいて目標床反力を修正する。 具体的には、 目標全床反力中心点 (目標 Z MP) 回りに it償全床反カモ —メントが作用するように目標床反力を修正する。
よ .り具体的には、 本第 1参考例では、 補償全床反力モーメント鉛直成 分 Mdmdzは、 例えば P D制御則を用いて次式により決定される。 補償全床反力モーメント鉛直成分 MdmdZ=K0bz*上体ョ一角偏差
+ K obz*上体ョ一角速度偏差
…… d 2 6 ここで、 K 0 bz、 K cobz は所定のゲインである。 また、 上体ョ一角 速度偏差は、 上体ョ一角偏差の時間微分値であり、 目標上体ョー角速度 に対する実上体ョー角速度の偏差を意味する。
補足すると、 補償全床反力モーメント鉛直成分 Mdmdz'を前記式 d 2
6により求めるとき、 足平 2 2と床の間の鉛直軸まわり回転滑りまたは 鉛直軸まわり回転振動を防止したいだけなら、 K 0bz を 0にすれば良 い。 上体ョ一角偏差までも 0に近づけようとすると、 実床反力モーメン ト鉛直成分が大きくなる傾向があるからである。
複合コンプライアンス動作決定部 1 0 4は、 入力値に基づいて目標床 反力を修正する。 具体的には、 目標全床反力中心点 (目標 Z MP) 回り に補償全床反力モーメント水平成分が作用するように目標床反力モ一メ ン卜水平成分を修正し、 さらに、 目標歩容に動力学的に釣り合う目標全 床反力中心点 (目標 Z MP) 回りの目標床反力鉛直成分に補償全床反力 モ一メント鉛直成分を付加的に追加することによって目標床反力モーメ ント鉛直成分を修正する。
複合コンプライアンス動作決定部 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 " に一致するように修正される。
実は、 発散成分とは、 動力学モデルを用いて今回歩容パラメ一夕に従 つて歩容を生成し、 そのまま連続して定常旋回歩容パラメ一夕に従って 歩容を繰り返し生成したとき、 生成した歩容の上体水平位置が定常旋回 歩容に収束するか否かを評価する指標である。 収束する場合にちょうど、 今回歩容の終端発散成分が、 定常旋回初期発散成分 Q [ 0 ] を今回歩容 の支持脚座標系から見た値である Q " に一致するように、 本来、 発散成 分は定義されなければならない。
式 1 0で定義した発散成分は、 実は、 上記の性質を近似的に満足する 発散成分である。
したがって、 本第 1参考例においては、 動力学モデルを用いて今回歩 容パラメ一夕に従って歩容を生成し、 そのまま連続して定常旋回歩容パ ラメ一夕に従って歩容を繰り返し生成したとき、 生成した歩容の上体水 平位置が定常旋回歩容の上体水平位置に収束する (近づく) ように、 今 回歩容パラメ一夕を修正した、 と言える。 但し、 厳密には、 今回歩容直 後の第 1旋回歩容だけは、 前記の如く求めた第 1旋回歩容台形高さ bl, bzl によって修正された歩容にする必要がある。 別の言い方をすれば、 今回歩容と第 1旋回歩容とを合わせた歩容を今回歩容と見なせば、 本参 考例においては、 上記の如く歩容を繰り返し生成したとき、 生成した歩 容の上体姿勢角が第 2旋回歩容と第 1旋回歩容とからなる定常歩容の上 体姿勢角に収束し (近づき)、 もしくは一致するように、 今回歩容パラ メータを修正した、 と言える。
これは、 P C T公開公報 WOZ02Z40224のものと同様である。
特に、 本第 1参考例においては、 その条件 (今回歩容が定常歩容に近 づく) を満足するように、 今回歩容の歩容パラメ一夕のうちの目標 Z M Pパターンを修正するようにした。 図 4 7を参照して説明'すると、 同図 に符合 Bで示す軌道は、 上記したように歩容の境界において発散成分が 一致するように生成した上体水平位置軌道を示す。
同図に符合 Aで示す軌道は、 定常旋回歩容との境界における上体水平 位置速度が一致するように今回歩容を生成し、 続いて定常歩容を繰り返 し生成した場合の上体水平位置軌道を示す。
図示の如く、 符合 Bで示す軌道は、 今回歩容と最初の定常旋回歩容と の境界においては、 一般的に符合 Aで示す軌道からずれているが、 その 後、 徐々に符合 Aで示す軌道に収束し (近づき)、 次の定常旋回歩容時 期において符合 Aで示す軌道にほぼ一致する。 このように、 歩容境界で 発散成分のみを一致させる歩容生成手法でも、 歩容境界で位置速度両方 を一致させる歩容生成手法と同様、 歩容の発散を防止することができる。 尚、 同図に符合 Cで示す例は、 それらを考慮せずに軌道を生成した場合 の例を示す。 このような場合は、 生成した軌道は経時的に発散してしま 2 9 う。 当然、 目標 Z M Pパターンを複雑なものにし、 複数のパラメ一夕を 調整して、 位置速度両方を一致させても良いが、 目標 Z M Pパターンが ジグザグになる恐れがある。 なお、 位置速度両方を一致させれば、 発散 成分も一致するから、 位置速度両方を一致させる方法も発散成分を一致 させる方法の特殊例であると言える。
またさらに、 本第 1参考例においては、 動力学モデルを用いて今回歩 容パラメ一'夕に従って歩容を生成し、 そのまま連続して定常旋回歩容パ ラメ一夕に従って歩容を繰り返し生成したとき、 生成した歩容の上体姿 勢角が定常旋回歩容の上体姿勢角に収束し (近づき)、 もしくは一致す るように、 今回歩容パラメ一夕を修正した、 と言える。 但し、 厳密には、 今回歩容直後の第 1旋回歩容だけは、 前記の如く求めた第 1旋回歩容台 形高さ bl, bzlによって修正された歩容にする必要がある。
次に、 本第 1参考例の変形態様を以下にいくつか説明する。
本第 1参考例では、 理解を容易にするために、 床反力水平成分許容範 囲は、 前後方向 (X軸方向) 成分と左右方向 (Y軸方向) 成分それぞれ 独立に設定できることとしたが、 前後方向と左右方向の関係式で表した 方が、 よりスリップし難い歩容が生成される。
例えば、 次式のようにいわゆる摩擦円を許容範囲としても良い。 (床反力水平成分の X成分) * (床反力水平成分の X成分)
+ (床反力水平成分の Y成分) * (床反力水平成分の Y成分)
≤ (ka * * Fz) * (ka * * Fz)
…式 5 9 ただし、 Fz は、 目標床反力鉛直成分を は摩擦係数、 ka は 1以下の 正の定数を表す。
ただし、 以上のように、 床反力水平成分許容範囲を前後方向と左右方 向の関係式で表す場合、 許容範囲を同時にあるいは交互に満足するよう に、 サジタルプレーン上での運動とラテラルプレーン上での運動を同時 あるいは交互に求める必要がある。
また、 床反力水平成分許容範囲と床反力モーメント鉛直成分許容範囲 とを上記のごとく別々に設定する代わりに、 床反力水平成分と床反カモ —メント鉛直成分との組の許容範囲を設定するようにしても良い。 床反 力水平成分が大きくなるにつれ、 床反力モーメント鉛直成分の摩擦限界 は、 小さくなる。 また、 床反力モーメント鉛直成分が大きくなるにつれ、 床反力水平成分の摩擦限界は、 小さくなる。 したがって、 このことを鑑 みて床反力水平成分と床反カモ一メント鉛直成分との組の許容範囲を設 定するようにした方が、 より現実の摩擦限界特性に近い許容範囲を設定 することができる。 具体的には、 床反力水平成分の絶対値と床反カモ一 メント鉛直成分の絶対値との重み付き平均に対して許容範囲を設定して も良い。
尚、 口ポッ トの全体重心鉛直加速度と重力加速度との和は床反力鉛直 成分に比例するので、 歩容パラメ一夕として、 床反力鉛直成分軌道の代 わりにロポッ トの全体重心鉛直加速度軌道を規定するパラメ一夕を明示 的に設定しても構わない。 本質的に同じことである。 また、 口ポッ トの 全体重心軌道に近い挙動をする部位の鉛直加速度軌道を規定するパラメ 一夕を明示的に設定しても構わない。 例えば、 脚体の質量が上体の質量 に比べて十分に小さい場合には、 上体鉛直加速度軌道とロボッ トの全体 重心鉛直加速度軌道は、 ほぼ同じか比例関係になるので、 床反力鉛直成 分軌道の代わりに上体鉛直加速度軌道を用いても良い。 同様に、 床反力 水平成分と口ポッ トの全体重心水平加速度は、 比例関係にあるので、 本 第 1参考例における床反力水平成分およびその許容範囲の代わりに、 口 ポッ ト全体重心水平加速度およびその許容範囲を用いても構わない。 ま た、 ロポッ 卜の全体重心水平軌道に近い挙動をする部位の水平加速度軌 道に関するパラメ一夕を明示的に設定しても構わない。 例えば、 脚体の 質量が上体の質量に比べ十分に小さい場合には、 上体水平加速度軌道と ロボッ トの全体重心水平-加速度軌道は、 ほぼ同じか比例関係にあるので、 床反力水平成分およびその許容範囲の代わりに上体水平加速度およびそ の許容範囲を用いても良い。
また、 目標 Z M Pまわりの床反力モーメント鉛直成分と、 目標 Z M P まわりのロボッ ト全体の角運動量変化率鉛直成分は、 比例関係にあるの で、 本第 1参考例における床反力モーメント鉛直成分およびその許容範 囲の代わりに、 ロボッ ト全体角運動量変化率鉛直成分およびその許容範 囲を用いても構わない。
前記第 1参考例では、 床反力水平成分と目標 Z M Pまわりの床反カモ ーメント水平成分を適切な値にするために、 上体傾斜モー'ドと上体並進 モードとの 2つの運動モードを用いたが、 これら以外の運動モードを用 いても良い。
例えば、 図 4 8のように、 股関節を中,心に上体姿勢を回転させると、 全体重心まわりの角運動量が変化すると共に全体重心も変化する。 この 運動と前記上体並進モードをある所定の割合で重ね合わせると (合成す ると)、 前記上体傾斜モードとほとんど同じ運動になり、 床反力水平成 分が発生しなくなる。 したがって、 これを改めて前記上体傾斜モードと みなせば、 本第 1参考例のアルゴリズムにしたがって、 同様の歩容を生 成することができる。
したがって、 運動モードのひとつが床反力水平成分を発生しない運動 モードである必要もない。 いかなるモードの組み合わせであっても、 床 反力水平成分と目標 Z M Pまわりの床反力モー ントとの発生の割合が 異なるふたつの運動モードを用いさえすれば、 上記例のように、 任意の 床反力水平成分と目標 Z M Pまわりの床反力モーメントとを発生させる ことができるからである。
また、 上体姿勢を変化させる運動モード以外の運動モードを用いても 良い。 ただし、 なるべく小さい変位で大きな床反力水平成分または目標 Z M Pまわりの床反力モーメントが発生できる運動モードを選ぶことが 好ましい。
例えば、 左右の腕体の先端位置を同一方向に振りまわす運動モード、 接地していない (空中に存在する) 足平の位置を摂動させる運動モード でも良い。 ただし、 遊脚軌道を摂動させる場合には、 着地位置が変わら ないように着地直前までには、 摂動量を実質的に 0に戻すべきである。 なお、 左右の腕体の先端位置を同一方向に振りまわす運動モードと逆位 相腕振りモードとを併用してもよいことはもちろんである。
また、 3つ以上の運動モードを用いても良い。 '
また、 選択した運動モードのうちの少なくとも 2つは、 その運動モ一 ドによる床反力水平成分と目標 Z M Pまわりの床反力モーメントとの発 生比率が、 互いに異なるものである必要がある。 そうでないと、 一般的 に連立方程式の解がなくなる (各運動モードの挙動を一義的に決定でき ない) からである。
さらにできる限り、 床反力水平成分をあまり変化させないで目標 Z M Pまわりの床反力モーメントを十分に大きく変化させることができる運 動モードと、 目標 Z M Pまわりの床反力モーメントをあまり変化させな いで床反力水平成分を十分に大きく変化させることができる運動モード とを組み合わせることが望ましい。
言いかえると、 全体重心をあまり変化させないで角運動量を十分に大 きく変化させることができる運動モードと、 角連動量をあまり変化させ ないで全体重心を十分に大きく変化させることができる運動モードとを 組み合わせることが望ましい。 このようにすると、 運動モードの変位が 小さくなるからである。
また、 床反カモ一メント鉛直成分が許容範囲を越えないようにするた めに (スピン力をキャンセルするために)、 逆位相腕振りモードの代わ りに、 上体ョ一回転モードを用いても良い。 上体ョ一回転モードを用い る場合には、 口ポッ ト 1の上体 3を腰寄りの部分 (例えば図 1の 5 4の 部材の下側の部分) とその上側の部分 (例えば図 1の 5 4の部材の上側 の部分) とに分割し、 上側の部分が腰寄りの部分に対してョ一方向に (例えば上体 3の体幹軸回り) に回転し得るように設けておく ことが好 ましい。 このようにすると、 脚体 2, 2の姿勢に影響を及ぼすことなく、 上体 3の上側の部分を回転させて、 床反カモ一メント鉛直成分を調整す ることができる。 このようにした場合の第 1参考例は、 例えば前記第 1 参考例で逆位相腕振り角、 その角速度およびその角加速度を決定する代 わりに、 上体 3の上側の部分の回転角、 その角速度およびその角加速度 を決定するようにすればよい。 この場合、 両腕体 5, 5は、 例えば上体 3の上側の部分に対する相対位置を一定..とすればよい。 但し、 上体 3の 上側の部分のョ一回転に加えて、 両腕体 5, 5の逆位相腕振り動作を加 えてもよいことはもちろんである。
また、 床反力モーメント鉛直成分が発生するものであれば、 腕、 上体 以外の部位を変位させる運動モードを用いても良い。
例えば、 空中期において、 両脚先端を前後逆方向に動かすモードを用 いても良い。
あるいは、 床反力モーメント鉛直成分が発生するいくつかの運動モ一 ドを併用しても良い。 例えば、 逆位相腕振りモードと上体ョ一回転モ一 ドを併用しても良い。
また、 上体ョ一回転モードおよび逆位相腕振りモードは、 全体重心位 置が変わらないように (言い換えると床反力水平成分を発生させずに) 床反力モーメント鉛直成分を発生させるモ一ドであるが、 全体重心位置 が変わってしまう (言い換えると床反力水平成分を発生してしまう) 運 動でも良い。 上体並進モードと組み合わせることにより、 床反力水平成 分を調整することができるからである。
前記第 1参考例に用いた動力学モデル (図 1 2の動力学モデル) 以外 にも以下のモデルを用いても良い。
1 ) 図 4 9に示したように複数のリンクに質点を設定した非線形なモデ ル (多質点モデル)。 このモデルの各リンクには、 イナーシャ (慣性モ ーメント) が設定されていてもよい。
2 ) 本願出願人による P C T公開公報 WO/02Z40224に示された 3質 点モデル
3 ) 上体ョ一回転モードあるいは逆位相腕振りモ一ドによって生じる慣 性力のモーメントを無視したモデル。
4 ) 重力と慣性力との合力 (またはこれと釣り合う床反力) と上体並進 運動との関係を表す部分モデルと、 上記合力と上体姿勢回転運動 (上体 傾斜運動と上体ョ一回転運動) の関係を表す部分モデルとを分離して持 つ分離型モデル。 例えば、 図 1 2に示す質点は、 上記合力と上体並進運 動との関係を表す部分モデルであり、 図 1 2に示すフライホイールは、 上記合力と上体姿勢回転運動との関係を表す部分モデルである。
なお、 上記 1 ) 〜4 ) のいずれの場合でも、 慣性力のモーメント鉛直 成分を発生させる運動モードは必要である。
また、 各処理で用いられるモデルは同一でも良いし、 処理に応じて適 宜、 モデルを使い分けても良い。 例えば、 前記定常歩容は今回歩容の終 端状態を決定するためだけに生成されるものであるので、 その定常歩容 の動力学的な精度に対する要求は、 今回歩容に比べて小さい。 そこで、 例えば、 今回歩容の生成処理では、 図 1 2の動力学モデル ( 3質点 +フ ライホイールのモデル) を用いる一方、 定常歩容の生成処理 (特に図 2 1の S 4 0 8、 S 4 1 2 ) では、 各脚体 2の質量を無視し、 上体 3に対 応する上体質点 3 mと、 フライホール FHx、 F Hy、 F Haz、 F Hbz と で構成される動力学モデル (図 1 2のモデルで脚質点 2 m, 2 mを除去 した 1質点 +フライホイールのモデル) を用いて定常歩容を生成するよ うにしても'よい。 この場合の定常歩容の生成処理では、 前記第 1参考例 において、 脚質点 2 mの質量を 0として前記図 2 5の S 4 0 8、 S 4 1 2の処理を行なうようにすればよい。 このようにすると、 定常歩容の生 成処理における演算量を大幅に削減できる。
尚、 前記第 1参考例において、 ブロック線図、 フローチャート、 およ びアルゴリズムなどは、 演算処理順序を変えるなどの等価変形をしても 良い。 また、 適宜ローパスフィルタを挿入しても良い。 '
また、 前記第 1参考例を 2足移動ロポッ トに関して説明してきたが、 3足以上の多脚口ポッ トにも応用することができる。
前記第 1参考例のごとく、 探索手法を.用いたり、 部分的に解析手法を 用いたりして、 定常歩容の初期状態 (主に初期上体水平位置速度、 初期 上体鉛直位置速度および逆位相腕振り角 · 角速度のこと) を決定する手 法の代わりに、 あらかじめ、 上記手法を用いて様々な定常歩容パラメ一 夕に対して計算しておき、 定常歩容パラメ一夕と定常歩容の初期状態と の関係をマツプ化あるいは近似式化して記憶して置き、 実移動時には、 マツプ化あるいは近似式化された上記関係を基に、 定常歩容の初期値を 決定しても良い。
さらには、 マップ化あるいは近似式化された上記関係と上記関数 f を 合成した関数をマップ化あるいは近似式化して記憶しても良い。 すなわ ち、 前記した足平軌道パラメ一夕、 床反力鉛直軌道パラメータ等からな る定常歩容パラメータから、 定常歩容の発散成分を直接求める関数をマ ップ化あるいは近似式化して記憶しても良い。 例えば、 複数種類の代表 的な定常歩容パラメ一夕の組のそれぞれに対して、 事前に定常歩容を生 成しておき、 各組の定常歩容パラメ一夕に対する定常歩容の初期状態 (図 1 3の S 0 2 4で求めるもの) を求めておき、 さらにその各組の定 常歩容パラメータと、 定常歩容初期状態との関係を表すマツプをあらか じめ作成しておく。 そして、 目標歩容を生成する際に、 決定された定常 歩容パラメ一夕の組から、 上記マツプに基づいて選択あるいは補間によ つて定常歩容初期状態を求めるようにすればよい。 このようにすれば、 今回歩容の生成毎に、 定常歩容を生成する必要がなくなり、 目標歩容生 成処理の演算量を大幅に削減できる。
定常歩容につなげる (近づける) ための今回歩容の修正方法として、 本第 1参考例では、 今回歩容の目標 Z M Pパラメータを修正したが、 そ れ以外のパラメ一夕を修正しても良い。
たとえば、 今回歩容の遊脚の空中での軌道を変えても良い。 また、 た とえば、 上体水平位置が定常歩容ょりも.後方にずれてしまいそうな場合 には、 遊脚を離床後すばやく前方に移動させて遊脚重心位置を前方にず らす。 こうすることにより、 目標 Z M Pを満足するための上体水平位置 は、 前方により一層加速せざるを得なくなる。 この結果、 上体水平位置 が今回歩容終端において、 より一層前方に移動し、 定常歩容に一致させ ることができる。
また、 目標 Z M Pパラメータを修正する代わりに、 今回歩容の周期を 修正しても良い。 たとえば、 上体水平位置が定常歩容よりも後方にずれ てしまいそうな場合には、 今回歩容の周期を長くすれば良い。 今回歩容 の周期を長くことで、 上体水平位置が移動する時間が延び、 それだけ前 方に移動できるからである。 ただし、 探索手法によって、 上体水平位置等の適正値を決定するとき に、 目標 Z M Pパラメ一夕を修正する場合では、 目標 Z M Pの修正量に ほぼ比例して、 今回歩容終端上体水平位置が変化するので、 上記適正値 の探索回数が少なくて済む。 これに対して、 遊脚重心軌道や歩容の周期 を修正する場合には、 その修正に対して、 今回歩容終端上体水平位置が、 かなり非線形に変化するので、 上記適正値の探索により多くの探索回数 を要する。 ·
定常歩容につなげる (近づける) ための今回歩容の修正方法として、 本第 1参考例では、 今回歩容の目標 Z M Pパラメ一夕を修正した。 この 方法では、 場合によっては、 目標 Z M Pパラメ一夕の修正量 (前記図 3 4の修正量 a) が過大になることがある。 たとえば、 その場でホッピン グしている歩容からいきなり高速で移動する要求 (走行要求) が与えら れると、 高速の定常歩容 (走行の定常歩容) につなげる (近づける) た めに、 目標 Z M Pパラメ一夕は、 進行方向に対して後ろに極端に大きく ずらす必要が生じる。 この場合には、 上記したように目標 Z M Pパラメ 一夕以外の歩容パラメ一夕も修正するこ.とが望ましい。 但し、 この場合 では、 実は、 急激な加速を要求すること自体に無理があったわけである から、 要求値自身を修正しても良い。
要求値の修正を行なう場合には、 例えば、 とりあえず本第 1参考例に 示した手順に従って、 要求 (要求パラメ一夕) を満足する定常歩容を求 め、 この定常歩容につながるように今回歩容パラメータを決定した時点 で、 今回歩容の目標 Z M P軌道の安定余裕が少なくなり過ぎたか否かを 判定する。 そして、 安定余裕が少なくなり過ぎた場合 (いわゆる支持多 角形から目標 Z M Pが外れたり、 支持多角形の端部付近に目標 Z M Pが 位置するような場合) には、 要求を修正するようにすれば良い。
または、 あらかじめ歩容の加減速度 (次回歩容初期速度一今回歩容初 期速度) Z今回歩容の周期) の許容範囲を設定して置き、 要求 (歩容周 期に関する要求パラメ一夕) を受けた時点で、 該要求に対応する加減速 度を求め、 その求めた加減速度が許容範囲を越えていたら、 許容範囲に なるように、 要求を修正しても良い。
補足すると、 前記 ΔΜρ、 Δ Fp, Δ Μ Γ 、 Δ F r △ Maz および厶 Mbz は、 上記のごとく単純な動力学モデルを用いる場合には、 動力学 演算により解析的に求めても良いが、 一般的なより複雑な動力学モデル を用いる場合には、 上体 3を上体並進モードで微小量だけ加速または上 体傾斜モードで微小量だけ加速させた場合の床反力を求め、 加速させな かった場合の床反力との差を求め、 この差を上記微小量で割ることによ つて求めれば良い。
また、 あらかじめ標準的な歩容における ΔΜρ、 AFp, Δ Μ Γ 、 AF r、 AMaz、 Δ Mbz および Δ M p Z Δ M rなどのそれぞれの平均値を求 めておいて、 それを用いても良い。 ΔΜρ、 Δ Fp, Δ Μ Γ 、 AFr、 Δ Maz、 AMbz および ΔΜρ /AMrは、 状態 (姿勢とその変化率) によ つて変わるので、 各瞬間の状態ごとに求,める方法に較べて、 精度は若干 低下するが、 上記モデルよりも複雑なモデルを用いた場合には、 演算量 を大幅に低減できる。
今回歩容の逆位相腕振り復元角加速度パターンの台形高さ bzcurr を 決定する方法として、 以下の方法を用いても良い。
前記逆位相腕振り復元角加速度修正歩容 (図 4 2の S 7 2 2の説明を 参照) の今回歩容終端時点での逆位相腕振り角と角速度をそれぞれ 0 zcurr, v0 zcurr とし、 これらと、 定常歩容の逆位相腕振り角、 角速度 との差を A 0 zcerr、 △ v 0 zcerrとす 。
歩容周期をインタ一バルとし、 仮今回歩容の終端逆位相腕振り角、 角 速度と定常歩容の初期逆位相腕振り角、 角速度との差 0 zerr、 ν Θ zerr を前回状態、 bzcurr を入力、 △ 0 zcerr、 Α ν θ zcerr を今 [1H犬態とする 離散系の状態方程式を立てて、 Δ 0 zcerr、 Α ν θ zcerr を 0に収束させ るように、 現代制御理論等を用いてフィードバック則を決定し、 これに 基づいて bzcurrを求めても良い。
今回歩容およびまたは定常歩容の逆位相腕振り復元角加速度 β arec は、 台形パターンとせず、 各瞬間において、 目標逆位相腕振り角 · 角速 度と基準逆位相腕振り角 ·角速度との差などを基に、 その差が 0に収束 するように、 状態フィードバック則などを用いて、 各瞬間における逆位 相腕振り復元角加速度 )3 arecの値を決定しても良い。
今回歩容の逆位相腕振り復元角加速度) 3 arec は、 台形パターンとせ ず、 各瞬間において今回歩容の目標逆位相腕振り角 ·角速度を基に、 こ れらが第 1旋回歩容の初期逆位相腕振り角 · 角速度に近づくように、 状 態フィードバック則などを用いて、 各瞬間における逆位相腕振り復元角 加速度 3 arecを決定しても良い。
斜面移動時 (傾斜した床面で口ポッ ト 1を移動させるとき) の歩容生 成においては、 床反力水平成分許容範囲や全体重心加速度水平成分許容 範囲の代わりに、 並進床反力の床面平行成分 (床面に平行な成分)、 す なわち摩擦力の許容範囲、 あるいは全体重心加速度の床面平行成分 (こ れは摩擦力に比例する) の許容範囲を設定するようにしてもよい。 例え ば、 並進床反力の床面平行成分 (摩擦力) の許容範囲を設定する場合に 関して説明 (この説明は全体重心加速度の床面平行成分の許容範囲を設 定する場合でも同様である) すると、 該摩擦力は、 床面の水平面に対す る傾斜角度 0 f (ロボッ ト 1の進行方向に向かって前下がり斜面の場合 を正とする) とすると、 次式 7 2の関係が成立する。 従って、 前記第 1 参考例と同様のアルゴリズムに歩容を生成する場合、 この式 7 2の関係 を用いて、 摩擦力許容範囲を床反力水平成分許容範囲に変換することで、 該床反力水平成分許容範囲を設定するようにすればよい。. なお、 この場 合、 式 7 2の床反力鉛直成分には、 目標床反力鉛直成分を用いればよい, 摩擦力 =床反力水平成分 * cos( 0 f)—床反力鉛直成分 * sin( 0 f)
…式 7 2 また、 斜面移動時 (傾斜した床面で口ポッ ト 1を移動させるとき) の 歩容生成においては、 床反力モーメント鉛直成分は、 式 1 0 7 2によつ て床面摩擦力法線方向モ一メントに変換することができるので、 床反力 モーメント鉛直成分許容範囲の代わりに、 床反力モーメントの床面法線 方向成分、 すなわち床面摩擦力法線方向モーメントの許容範囲の許容範 囲を設定するようにしてもよい。 床面摩擦力法線方向モーメント=床反力モーメント鉛直成分 * cos( 0 f) …式 1 0 7 2 今回歩容のパラメ一夕決定は、 前記第 1参考例のように前回歩容が完 了した時点で行う以外に、 本願出願人による P C T公開公報 WO/ 02/ 40224に記述されているように、 今回歩容の生成途中で、 再決定しても 良い。 こうすることにより、 演算量は増えるが、 歩容に対する要求に変 更があった時に即応できるからである。
また、 歩容の修正 (今回歩容パラメ一夕を再決定すること) が、 今回 制御周期で間に合わない場合には、 とりあえず今回は、 修正しない歩容 あるいは暫定的に修正した歩容 (探索途中の歩容であって、 完全には、 探索完了条件 (歩容境界条件のずれが許容値以内に入っていること) を 満足していない歩容) を出力し、 次回制御周期までに、 あるいは複数制 御周期後までに (暫定的でない) 適切な修正歩容にしても良い。 修正さ れた目標 Z M P軌道と目標床反力鉛直成分軌道は連続であり、 短時間後 では、 これらが急激に変化することはないので、 今回歩容の目標 Z M P 軌道と目標床反力鉛直成分軌道が若干ぎざぎざになるだけで、 ほとんど 問題はない。
また、 前記第 1参考例では、 図 5の走行歩容を生成する場合を例に採 つて説明レたが、 口ポッ ト 1の歩行歩容を生成する場合でも、 前記第 1 参考例と同様に目標歩容を生成できる。 この場合には、 例えば前記第 1 参考例において、 目標床反力鉛直成分を前記図 6に示したものに代えて、 例えば図 5 0に示すようなパターンで設定すればよい。 この例では、 床 反力鉛直成分軌道は、 両脚支持期では床反力鉛直成分の増加側に凸の台 形状に設定され、 片脚支持期では床反力鉛直成分の減少側に凸の台形状 に設定される。 なお、 台形部分の高さ C l、 C 2 の設定方法などの詳細 は、 例えば本願出願人による P C T公開公報 WOノ 03Z 057425ZA1 に 詳細に説明されているのでここでの説明は省略する。
次に、 以上説明した第 1参考例およびその変形態様を基礎として、 第 2参考例を図 5 3〜図 5 8を参照して説明する。 なお、 本第 2参考例の 説明において、 前記第 1参考例と同一構成部分もしくは同一機能部分に ついては前記第 1参考例と同一の参照符号を用いて説明を省略する。 特 に、 本第 2参考例は、 前記図 1〜図 3および図 5〜図 1 2を参照して説 明した事項は、 前記第 1参考例と同一である。
第 2参考例が前記第 1参考例と相違する点の概要を説明すると、 第 2 参考例では、 目標上体姿勢角と実上体姿勢角の差である実上体姿勢角偏 差 (上体 3の鉛直方向に対する傾き角の偏差およびョ一角の偏差)、 及 び Z又はその変化率を 0に近づけるために、 コンプライアンス制御への 目標床反力を操作することに加え、 目標歩容も修正するようにした。 特 に、 実上体姿勢偏差のうちのョ一角成分及び Z又はその角速度に応じて、 目標歩容に動力学的に釣り合う (目標歩容の運動の慣性力と重力との合 力が目標 Z M Pまわりに発生するモーメントの鉛直成分に釣り合 う) 目標 Z M Pまわりの床反カモ一メントの鉛直成分も修正するように した。 ·
第 2参考例における制御ュニッ ト 6 0の機能的構成を表すブロック図 を図 5 3に示す。 以下、 第 2参考例における制御ュニッ ト 6 0の機能的 構成が前記第 1参考例のもの (図 4のもの) と相違する点を説明する。 第 2参考例においては、 姿勢傾斜安定化制御演算部 1 1 2において算 出される補償全床反力モーメント水平成分 Mdmdxy は、 補償全床反力 モーメント水平成分分配器 1 1 0に入力される。 捕償全床反力モーメン ト水平成分分配器 1 1 0 は、 補償全床反力モーメ ン ト水平成分 Mdmdxy を、 コンプライアンス制御用目標床反力モーメント水平成分 とモデル操作床反カモ一メント水平成分とに分配する。 換言すれば、 実 上体姿勢傾斜角偏差を基に、 姿勢傾斜安定化制御演算部 1 1 2及び補償 全床反力モーメント水平成分分配器 1 1 0により、 コンプライアンス制 御用目標床反カモ一メント水平成分とモデル操作床反カモ一メント水平 成分とが決定される。
具体的には、 補償全床反力モーメント水平成分分配器 1 1 0において は、 まず、 モデル操作床反力モーメント水平成分が次式で決定される。 なお、 床反力モーメント水平成分許容範囲は、 後述するごとく歩容生成 装置 1 0 0において決定される。
Mdmdxy>床反力モーメント水平成分許容範囲上限値である場合
モデル操作床反力モ一メント水平成分 =—Mdmdxy +床反カモ一メント水平成分許容範囲上限値 Mdmdxyぐ床反力モーメント水平成分許容範囲下限値である場合
モデル操作床反力モ一メント水平成分 =—Mdmdxy
+床反力モーメント水平成分許容範囲下限値 床反力モーメ ン ト水平成分許容範囲下限値≤ Mdmdxy、 且つ、 Mdmdxy≤床反カモ一メント水平成分許容範囲上限値である場合
モデル操作床反カモ一メント水平成分 == 0
……式 d 2 7 a 次に、 コンプライアンス制御用目標床反カモ一メント水平成分が次式 で決定される。
コンプライアンス制御用目標床反力モーメント水平成分
= Mdmdxy +モデル操作床反力モーメン卜水平成分
•·;…式 d 2 7 b 従って、 コンプライアンス制御用目標床反力モーメント水平成分とモ デル操作床反力モーメント水平成分との差が Mdmdxy に等しくなるよ うにそれらの床反力モーメント水平成分が決定される。
上記のような演算を行なう補償全床反力モーメント水平成分分配器 1 1 0をブロック図で表すと、 図 5 4に示すようになる。
また、 ョー安定化制御演算部 1 1 3において前記第 1参考例と同様に 決定された補償全床反力モーメント鉛直成分 Mdmdz (前記式 d 2 6を 参照) は、 モデル操作床反力モーメント鉛直成分決定器 1 1 1に入力さ れる。 モデル操作床反力モーメント鉛直成分決定器 1 1 1は、 補償全床 反カモ一メント鉛直成分 Mdmdz を基に、 モデル操作床反力モーメント 鉛直成分を決定する。 換言すれば、 実上体姿勢角偏差のうちの上体ョー 角偏差を基に、 ョー安定化制御演算部 1 1 3及ぴモデル操作床反力モー メント鉛直成分決定器 1 1 1により、 補償全床反カモ一メント鉛直成分 Mdmdzとモデル操作床反カモ一メント鉛直成分とが決 される。
具体的には、 モデル操作床反力モーメント鉛直成分決定器 1 1 1にお いて、 モデル操作床反力モーメント鉛直成分が次式で決定される。 なお、 床反力モーメント鉛直成分補償量許容範囲は、 後述するごとく歩容生成 装置 1 0 0において決定される。
Mdmdz>床反力モーメント鉛直成分捕償量許容範囲上限値である場 モデル操作床反力モ一メント鉛直成分 = — Mdmdz
+床反力モーメント鉛直成分補償量許容範囲上限値 Mdmdz<床反力モ一メント鉛直成分補償量許容範囲下限値である場 モデル操作床反力モーメント鉛直成分 = — Mdmdz
+床反力モーメント鉛直成分補償量許容範囲下限値 床反力モーメント鉛直成分補償量許容範囲下限値≤Mdmdz、 且つ、 Mdmdz≤床反カモ一メント鉛直成分補償量許容範囲上限値である場合 モデル操作床反力モーメン卜鉛直成分 = 0
……式 d 2 6 b 上記のような演算を行なうモデル操作床反力モーメン卜鉛直成分決定 器 1 1 1をブロック図で表すと、 図 5 5に示すようになる。 従って、 モ デル操作床反力モーメント鉛直成分は、 補償全床反力モーメント鉛直成 分 M dmdz のうち、 床反力モーメント鉛直成分補償量許容範囲を逸脱し た分の符号を反転させたものに設定される。
コンプライアンス制御用目標床反カモ一メント水平成分および補償全 床反力モーメント鉛直成分 Mdmdz は、 複合コンプライアンス動作決定 部 1 0 4に送られる。
モデル操作床反力モーメント水平成分および鉛直成分は、 歩容生成装 置 1 0 0に送られる。
尚、 補償全床反力モーメント鉛直成分 Mdmdz の代わりに、 補償全床 反カモ一メント鉛直成分 Mdmdz とモデル操作床反力モーメント鉛直成 分との和を、 コンプライアンス制御用目標値として、 複合コンプライア ンス動作決定部 1 0 4に送っても良い。
複合コンプライアンス動作決定部 1 0 4は、 歩容生成装置 1 0 0が生 成する目標歩容の運動にロポッ ト 1の運動を追従させつつ、 歩容生成装 置 1 0 0が生成する目標全床反力にコンプライアンス制御用目標床反力 モーメント水平成分と補償全床反力モーメント鉛直成分 Mdmdz を加え ることによって修正される目標全床反力に実床反力が近づくように、 目 標足平位置姿勢を修正することにより、 機構変形補償付き修正目標足平 位置姿勢 (軌道) を決定する。
この場合、 ロポッ ト 1の足平位置姿勢や床反力の全ての状態を目標に 一致させることは事実上不可能であるので、 第 1参考例と同様、 これら の間にトレ一ドオフ関係を与えて妥協的になるベく一致させる。
詳細は後述するが、 歩容生成装置 1 0 .0は、 該歩容生成装置 1 0 0に おいて決定される目標 Z M Pまわりの床反力モーメント水平成分がモデ ル操作床反力モーメント水平成分となるように動力学モデルを用いて目 標歩容の運動 (特に上体位置姿勢軌道) を生成する。 さらに、 歩容生成 装置 1 0 0は、 モデル操作床反力モーメントが 0であるとして生成され た目標歩容 (仮目標歩容) に動力学的に釣り合う目標全床反力中心点 (目標 Z M P ) 回りの目標床反カモ一メント鉛直成分にモデル操作床反 力モーメント鉛直成分が付加的に発生するように目標歩容の運動 (特に 腕振り軌道) を修正する。
これら以外の、 制御ユニッ ト 6 0の機能的構成は、 前記第 1参考例と 同一である。 補足すると、 前記第 1参考例で生成した目標歩容は、 第 2 参考例で、 前記モデル操作床反力モーメント水平成分と、 モデル操作床 反力モーメン卜鉛直成分とを定常的に 0に設定した場合に生成される目 標歩容と同じである。
第 2参考例における歩容生成装置 1 0 0の動作 (歩容生成処理) をそ のメインフローチヤ一トである図 5 6を用いて以下に詳説する。 S 3 0 1 0から S 3 0 2 8までは、 前記第 1参考例の図 1 3の S 0 1 0から S 0 2 8と同様の処理を行う。
次いで、 S 3 0 3 0に進み、 コンプライアンス制御用の目標 Z M Pま わりの床反力モーメント水平成分と床反力モーメント鉛直成分補償量の 許容範囲を規定するパラメ一夕が決定される。
なお、 床反力モーメント水平成分を、 床反力鉛直成分で割ったものが、
ZMP (床反力中心点) の目標 ZMPからのずれ量を表すものとなる。 従って、 床反力モーメント水平成分許容範囲を、 床反力鉛直成分で割る ことによって、 床反力中心点に変換した Z MP許容範囲 (床反力中心点 許容範囲) のパラメ一夕を設定するようにしてもよい。
補足すると、 S 3 0 3 0で決定するコンプライアンス制御用の床反力 モ一メント水平成分許容範囲と床反カモ一メント鉛直成分補償量許容範 囲のパラメータとを基に、 後述する今回歩容瞬時値決定サブルーチン ( S 3 0 3 2のサブルーチン) において、 それらの許容範囲の瞬時値が 決定され、 それが、 前記補償全床反力モーメント水平成分分配器 1 1 0 およびモデル操作床反力モーメント鉛直成分決定器 1 1 1における前記 の処理に用いられる。
この床反力モーメント水平成分許容範囲については、 本願出願人によ る P C T出願 P C TZ 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 M Pまわりに 発生する慣性力モーメントの鉛直成分に釣り合う) 床反力モーメント鉛 直成分が床反力モーメント鉛直成分許容範囲を越えないように今回歩容 瞬時値が決定される。
具体的には、 図 5 7、 図 5 8のフローチャートにしたがって歩容瞬時 値が決定される。 すなわち、 S 3 0 3 0では、 まず、 図 5 7の S 3 4 0 0から S 3 4 1 1までの処理が実行される。 これらの S 3 4 0 0から S 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の値) が歩容生成装置 Γ 0 0に与えら れる。
また、 求められた床反力モーメント鉛直成分補償量容範囲は、 前記モ デル操作床反力モーメント鉛直成分決定器 1 1 1 (図 5 3参照) に送ら れる。 そして、 このモデル操作床反力モーメント鉛直成分決定器 1 1 1 で前記式 d 2 6b により算出されたモデル操作床反力モーメント鉛直成 分の今回値 (現在時刻 tの値) が歩容生成装置 1 0 0に与えられる。 次いで、 歩容生成装置 1 0 0の処理は、 S 3 4 1 4に進み、 補償全床 反力モーメント分配器 1 1 0から与えられたモデル操作床反力モーメン ト水平成分が目標 ZMPまわりに発生するように、 今回歩容の上体水平 加速度と上体姿勢傾斜角加速とが決定される。 ただし、 床反力水平成分 Fx が、 S 3 4 1 0で決定された床反力水平成分許容範囲 [Fxmin, Fxmax]を越えないように上体水平加速度および上体姿勢角加速度 (上 体傾斜角加速度) が決定される。 言い換えると、 ロボッ ト 1の運動の慣性力と重力との合力が目標 Z M Pまわりに作用するモ一メント水平成分がモデル操作床反力モ一メント 水平成分の符号を反転したモーメン卜になるように、 今回歩容の上体水 平加速度と上体姿勢角加速 (上体傾斜角加速度) とが決定される。 ただ し、 慣性力水平成分の符号を反転した力が床反力水平成分許容範囲 [Fxmin, Fxmax]を越えないように上体水平加速度および上体姿勢傾斜 角加速度が決定される。
S3 4 1 4では、 具体的には、 図 5 8に示すフローチャートに従って、 上体水平加速度と上体姿勢角加速度とが決定される。 本フローチャート は、 S 3 1 0 4および S 3 1 3 0を除いて、 前記図 2 6と同様の処理が 行われる。 S3 1 0 4および S3 1 3 0では、 図 2 6の S5 0 4および S 5 3 0と異なり、 ロボッ ト 1の前回瞬時歩容状態 (時刻 k— 1の歩容 状態) から、 上体傾斜モードの角加速度を 0にして (より正確には上体 傾斜モ一ドの角加速度を基準上体姿勢角加速度に一致させて)、 上体並 進モードの運動を口ポッ ト 1にさせた場合に今回 (時刻 k) の目標 ZM Pまわりに前記モデル操作床反力モーメント水平成分が発生するために 必要な上体水平加速度 ( S 3 1 0 4では o;tmp、 S 3 1 3 0では α ) が 求められる。
これ以外の処理は図 2 6の処理と同じである。
以上のごとく S3 4 1 4の処理を行った後、 S34 1 6に進み、 図 4 5の S 1 4 1 4と同一の処理が実行され、 今回歩容の上体水平位置およ び上体姿勢傾斜角 (詳しくはそれらの現在時刻 t における今回値) が決 定される。
次いで S3 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 さらに、 ^ aadd を制御周期の期間積分して、 逆位相腕振り角速度の 修正量を求め、 さらにこれを積分して逆位相腕振り角の修正量を求める。 最後に、 S 3 0 3 2で生成した今回歩容の逆位相腕振り角および角速 度にそれぞれ、 逆位相腕振り角速度の修正量および逆位相腕振り角の修 正量を加えることにより、 今回歩容の逆,位相腕振り角および角速度を修 正する。
次いで S 3 0 3 6に進み、 時刻 t に制御周期△ tを加え、 再び、 S 3 0 1 4に戻り、 制御周期毎のタイマー割り込みを待つ。
第 2参考例では、 以上のごとく、 歩容生成装置 1 0 0における目標歩 容生成処理が行なわれ、 目標上体位置姿勢、 目標足平位置姿勢、 目標腕 姿勢 (逆位相腕振り角を含む)、 目標 Z M Pおよび目標全床反力の瞬時 値が逐次決定されて出力される。
この場合、 目標全床反力は、 コンプライアンス制御に必要な成分だけ を出力しても良い。 なお、 目標 Z M Pは、 目標全床反力に含まれるが特 に重要であるので、 あえて出力として挙げた。 また、 複合コンプライア ンス制御装置 (図 5 3の点線で囲った部分) に対しては、. モデル操作床 反力モーメント水平成分は、 目標床反力として出力されない。 すなわち、 コンプライアンス制御に対しては、 目標 Z M Pまわりの床反力モーメン ト水平成分が 0になることを目標とする目標床反力 (本来の意味での目 標 Z M Pを満足する ¾標床反力) が、 歩容生成装置 1 0 0から出力され る。
また、 複合コンプライアンス制御装置に対しては、 S 3 0 3 4におい て修正された今回歩容の床反力モーメント鉛直成分が目標値として歩容 生成装置 1 0 0から出力される。
以上説明した第 2参考例の作用 1 として、 目標歩容の運動は、 モデル 操作床反カモ一メント水平成分が目標 Z M Pまわりに発生するように生 成されつつ、 実際のロボッ 1の床反力は、 モデル操作床反力モーメント 水平成分が付加されないように制御される。 したがって、 '差し引きモデ ル操作床反力モーメント水平成分の分だけ、 目標歩容の運動と床反力の 不平衡 (アンバランス) を生じる。 このことは、 実ロボッ ト 1の上体姿 勢傾斜角と目標歩容の上体姿勢傾斜角と,の差を 0に収束させる効果に関 して言えば、 モデル操作床反力モーメント水平成分の符号を反転した床 反力モーメント水平成分を実ロポッ ト 1に作用させることと等価である。 つまり、 モデル操作床反カモ一メント水平成分を適宜決定することに より、 実ロボッ ト 1を、 修正目標歩容 (実口ポッ ト 1の上体姿勢傾斜角 と目標歩容の上体姿勢傾斜角との差を 0に収束させる歩容) に収束させ ることができる。 つまり、 実口ポッ ト 1の姿勢傾斜を安定化させること ができる。
作用 2として、 モデル操作床反力モーメント水平成分の符号を反転し たモ一メントとコンプライアンス制御用目標床皮力モーメント水平成分 との和がトータルの傾斜復元力 (ロボッ ト 1の実上体姿勢傾斜角を目標 上体姿勢傾斜角に復元させる力) になる。 すなわち、 コンプライアンス 制御用目標床反カモ一メント水平成分とモデル操作床反力モーメント水 平成分との差がトータルの姿勢傾斜復元力になる。
また、 作用 3として、 モデル操作床反力モーメント水平成分は、 Z M P存在可能範囲を無視していかなる値でも取ることが可能であるので、 非常に高い姿勢傾斜復元力を発生することができる。
また、 作用 4として、 床反力水平成分が、 床反力水平成分許容範囲を 越えないように上体並進モ一ドの上体並進加速度と上体傾斜モードの上 体姿勢傾斜角加速度とが決定されるので、 走行歩容における支持脚側脚 体 2の離床直前や着床直後など、 大きな床反力水平成分を発生できない 時期や、 摩擦係数の小さい床をロボッ ト 1が移動する場合においても口 ポッ ト 1のスリップを防止することができる。
また、 作用 5として、 床反力の並進力鉛直成分が 0の時期、 すなわち、 両脚がいずれも接地していない時期では、 床反力水平成分の許容範囲が 0に設定されることにより、 前記した第 2参考例のアルゴリズムにより 自動的に、 上体並進モードに依存せずに上体傾斜モードに依存した姿勢 傾斜復元が行われ、 床と足底の間の摩擦力に依存せずに姿勢復元が行わ れる。 したがって、 この時期 (空中期) においても、 単に、 上体並進モ 一ドを修正するだけの方式と異なり、 有効に姿勢傾斜復元作用が働く。 なお、 この時には、 床反力水平成分が 0になるように生成されるから、 歩容の全体重心水平加速度は 0となる。
また、 作用 6として、 上記したごとく、 コンプライアンス制御に対し ては、 モデル操作床反力モーメント水平成分は、 目標床反力として出力 されない。 すなわち、 目標 Z M Pまわりにモデル操作床反力モーメント 水平成分を発生させるように歩容生成が行なわれても、 コンプライアン ス制御に対しては、 目標 Z M Pまわりの床反カモ一メント水平成分が 0 になることを目標とする目標床反力が、 歩容生成装置 1 0 0から与えら れる。 したがって、 コンプライアンス制御による床反力制御を妨げず、 コンプライアンス制御による床反力制御を適切に行うことができる。 よ り具体的には、 足平 2 2の本来の接地性が低下したり、 足平 2 2の底面 が浮いてしまうような不具合が発生することを防止または抑制すること ができる。
なお、 後述するように、 第 1実施形態以降でも、 目標 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又は上体姿勢ョー角速度との差を 0に 収束させる歩容) に収束させることができる。 つまり、 実ロボッ ト 1の ョ一回転を安定化させることができる。
作用 8として、 補償全床反力モーメント鉛直成分 Mdmdzがト一タル のョ一回転復元力になる。 補償全床反力モ一メント鉛直成分 Mdmdzは ョ一角偏差および Zまたはョー角速度偏差を 0に近づけるようにフィ一 ドバック制御則に基づき決定されるので、 ョ一角偏差の制御的な安定性 が保証されつつ、 ョ一角偏差および/またはョ一角速度偏差を 0に近づ けることができる。
また、 作用 9として、 モデル操作床反力モーメント鉛直成分は、 床反 力モーメント鉛直成分の許容範囲 (あるいは摩擦限界) を無視していか なる値でも取ることが可能であるので、 非常に高い姿勢ョ一回転復元力 を発生することができる。
また、 作用 1 0として、 コンプライア.ンス制御に対しては、 最終的に 目標床反力モーメント鉛直成分が、 床反力モーメント鉛直成分許容範囲 と床反力モーメント鉛直成分補償量許容範囲の和の範囲を越えないよう に決定されるので、 走行歩容における支持脚側脚体 2の離床直前や着床 直後など、 大きな床反力モーメント鉛直成分を発生できない時期や、 摩 擦係数の小さい床をロポッ ト 1が移動する場合においてもコンプライア ンス制御による床反力制御を適切に行うことができ、 口ポッ ト 1のスピ ンを防止することができる。 より具体的には、 足平 2 2の本来の接地性 が低下したり、 足平 2 2の底面が浮いてしまうような不具合が発生する ことを防止または抑制することができる。
また、 作用 1 1 として、 床反力の並進力鉛直成分が 0の時期、 すなわ ち、 両脚がいずれも接地していない時期では、 床反力モーメント鉛直成 分許容範囲と床反力モーメント鉛直成分補償量許容範囲が 0に設定され ることにより、 前記した第 2参考例のアルゴリズムにより自動的に、 実 床反カモ一メント鉛直成分に依存せずに逆位相腕振りモ一ドに依存した ョ一回転復元が行われ、 床と足底の間の摩擦力に依存せずにョ一回転復 元が行われる。 したがって、 この時期 (空中期) においても、 単に、 コ ンプライアンス制御の目標床反力モ一メント鉛直成分を修正するだけの 方式と異なり、 有効にョ一回転復元作用が働く。
作用 1 2として、 目標 Z M Pまわりに発生するモ一メント水平成分が 0になるように生成したとした場合の歩容を元歩容、 前記第 2参考例の 如く 目標 Z M Pまわりに発生するモーメント水平成分がモデル操作床反 力モーメント水平成分になり、 且つ、 目標 Z M Pまわりに発生するモ一 メント鉛直成分に付加的にモデル操作床反力モーメント鉛直成分が発生 するように生成される歩容を修正歩容と呼ぶと、 通常、 元歩容と修正歩 容とは異なる歩容となる。 元歩容は定常歩容に漸近するように設定され ているので、 修正歩容は、 通常、 定常歩容に漸近しない歩容となる。
しかし、 今回歩容 (修正歩容) の生成が完了した直後に、 再び S 3 0 2 0から S 3 0 2 8が実行され、 修正歩容の終端状態を新たな初期状態 とした新たな今回歩容が、 新たに設定される定常歩容に漸近するように、 新たな今回歩容パラメ一夕が決定されるので、 継続的に (長期的に) 安 定性が保証された歩容を生成し続けることができる。
上記した作用 1 2は、 本願出願人が先に提案した P C T / J P 0 3 / 0 0 4 3 5の技術とほぼ同様である。 伹し、 これに加えて第 2参考例で は、 次のような作用も発生する。 すなわち、 ョ一角回転復元のために修 正された逆位相腕振り角および角速度の終端状態を新たな初期状態とし た新たな今回歩容の逆位相腕振り角軌道が新たに設定される定常歩容の 逆位相腕振り角軌道に漸近するように、 新たな今回歩容の逆位相腕振り 角軌道に関するパラメ一夕が決定されるので、 継続的に (長期的に) 逆 位相腕振り角の安定性が保証された歩容を生成し続けることができる。
なお、 第 2参考例では、 補償全床反力モーメント水平成分 Mdmdxy が床反力モーメント水平成分許容範囲内の値であるときには、 モデル操 作床反カモ一メント水平成分は 0になるが、 このときのモデル操作床反 力モーメント水平成分を図 1 2の動力学モデルの状態量 (例えば動力学 モデル上での口ポッ トの重心位置や、 上体質点 3 mの位置等) に応じて 設定するようにしてもよい。
また、 第 2参考例では、 補償全床反力モーメント鉛直成分 Mdmdzが 床反力モーメント鉛直成分補償量許容範囲内の値であるときには、 モデ ル操作床反カモ一メント鉛直成分補償量は 0になるが、 このときのモデ ル操作床反力モーメント鉛直成分補償量を図 1 2の動力学モデルの状態 量 (例えば動力学モデル上でのロポッ ト 1の逆位相腕振り角および角速 度、 上体ョ一角および角速度等) に応じて設定するようにしてもよい。
次に本発明の第 3参考例を図 5 9〜図 6 2を参照して説明する。 なお、 第 3参考例の説明において、 前記第 1参考例もしくは前記第 2参考例と 同一構成部分もしくは同一機能部分については前記第 1参考例もしくは 第 2参考例と同一の参照符号を用いて説明を省略する。 第 3参考例は、 前記第 1参考例で前記図 1〜図 3および図 5〜図 1 2を参照して説明し た事項は、 前記第 1参考例と同一である。
第 3参考例が前記第 1参考例および第 2参考例と相違する点の概要を 説明すると、 元歩容と修正歩容が同時に生成される。 修正歩容は、 実口 ポッ ト 1の上体姿勢 (傾斜角およびョ一角) の安定化のために元歩容か ら修正される。 さらに、 該修正歩容は、 コンプライアンス制御により姿 勢復元に必要な床反カモ一メントを発生してもまだ余裕がある (目標 Z MPまわりに発生可能な床反力モーメントに余裕がある) 場合には、 こ の余裕を用いて、 可能な範囲で元歩容に収束するように決定される。 第 3参考例における制御ュニッ ト 6 0の機能的構成を表すブロック図 を図 5 9に示す。 第 3参考例では、 姿勢傾斜安定化制御演算部 1 1 2が 求める補償全床反力モーメント水平成分 Mdmdxy は、 歩容生成装置 1 0 0に入力される。
また、 ョ一安定化制御演算部 1 1 3が求める補償全床反力モーメント 鉛直成分 Mdmdzも、 歩容生成装置 1 0 0に入力される。
そして、 この Mdmdxy および Mdmdz を基にモデル操作床反力モー メント (水平成分および鉛直成分) とコンプライアンス制御用目標床反 力モーメント (水平成分および鉛直成分) とを決定する補償全床反カモ ーメント分配器 1 2 0が、 歩容生成装置 1 0 0に組み込まれ、 該歩容生 成装置 1 0 0からコンプライアンス制御用目標床反力モーメントが複合 コンプライアンス動作決定部 1 0 4に出力される。 そして、 歩容生成装 置 1 0 0内の補償全床反力モーメント分配器 1 2 0は後述するように、 前記第 2参考例の補償全床反力モーメント水平成分分配器 1 1 0および モデル操作床反力モーメント鉛直成分決定器 1 1 1よりも複雑な処理を 行う。 これ以外の、 制御ユニッ ト 6 0の機能的構成は、 前記第 2参考例 と同一である。
図 6 0に第 3参考例における歩容生成装置 1 0 0のメインルーチン処 理のフローチャート.を示す。
同図 6 0おいて、 S 2 0 1 0から S 2 0 2 8までは、 前記第 1参考例 のメインフローチャート (図 1 3 ) の S 0 1 0から S 0 2 8までの処理 と同一の処理が行なわれる。 なお、 S O 2 8 (第 3参考例では S 2 0 2 8 ) のサブルーチンである図 4 3のフローチャートの S 8 0 0における 初期化においては、 今回歩容初期状態は、 前回修正歩容 (歩容生成装置 1 0 0が最終的に出力する歩容) の終端状態を今回支持脚座標系に変換 したものであり、 後述の S 2 0 3 2で決定される元歩容の終端状態は、 S 2 0 2 8のサブル一チンの S 8 0 0では用いられない。
次いで S 2 0 3 0に進み、 コンプラインァス制御用の床反力モーメン ト水平成分'許容範囲を決定する。 この床反カモ一メント水平成分許容範 囲の決定方法は、 第 2参考例の S 3 0 3 2 (図 5 6 ) と同様である。
S 2 0 3 0の処理を完了した後、 あるいは S 2 0 1 6の判断結果が N 〇である場合には、 S 2 0 3 2に進み、 元歩容の瞬時値 (時刻 tの今回 値) が決定される。 元歩容は、 目標 ZMPまわりの床反力モーメント水 平成分が 0になるように生成される歩容である。
この元歩容は、 前記第 2参考例の図 5 6の S 3 0 3 2のサブルーチン 処理の一部を変更したアルゴリズムによって生成される。 すなわち、 S 3 0 3 2内のサブルーチン処理 (詳しくは S 3 0 3 2のサブルーチン処 理である図 5 7の S 3 4 1 4のサブルーチン処理) である図 5 8の S 3 1 0 4および S 3 1 3 0において、 モデル操作床反力モーメン卜水平成 分を 0として (目標 Z MPまわりの目標床反力モーメント水平成分を 0 として)、 上体水平加速度 Q!tmp が求められる。 これ以外の処理は、 図 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までは、 第 2参考例で説明した図 5 7 の S 3 4 0 0から S 3 4 1 1 と同一の処理が実行される。 次いで、 S 2 1 1 2に進み、 歩容パラメ一夕を基に現在時刻での床反 力モーメント水平成分許容範囲 [Mxymin, Mxymax]を求める。 これは、 図 5 7の S 3 4 1 2での床反力モ一メント水平成分許容範囲 [Mxymin, Mxymax]の決定と同様に行われる。
次いで、 S 2 1 1 4に進み、 床反力モーメント水平成分許容範囲と床 反力モーメント鉛直成分許容範囲と床反力水平成分許容範囲との条件を 満足するよ'うに、 モデル操作床反力モーメント (水平成分および鉛直成 分)、 コンプライアンス制御用目標床反力モーメント、 上体水平加速度、 上体姿勢傾斜角加速および逆位相腕振り角加速度が決定される。
S 2 1 1 4の詳細を、 その処理を示す図 6 2のフローチャートを用い て、 以下に説明する。
まず、 S 2 2 0 0において、 修正歩容の上体水平位置と元歩容の上体 水平位置との差であるモデル間上体水平位置差が求められる。 この時点 では、 修正歩容の上体水平位置の今回値 (時刻 tでの値) は未だ求めら れていない。 そこで、 S 2 2 0 0では、 修正歩容の上体水平位置の前回 値 (時刻 t 一 Δ tの制御周期で最終的に求められた値) と、 元歩容の上 体水平位置の前回値 (時刻 t 一 Δ tの制御周期で S 2 0 3 2において求 められた値) あるいは今回値 (時刻 tの制御周期で S 2 0 3 2において 求められた値) とを用いて、 モデル間上体水平位置差が算出される。
次いで、 S 2 2 0 2に進み、 修正歩容の上体姿勢傾斜角と元歩容の上 体姿勢傾斜角との差であるモデル間上体姿勢傾斜角差が求められる。 こ の S 2 2 0 2では、 S 2 2 0 0のモデル間上体水平位置差の算出処理の 場合と同様、 修正歩.容の上体姿勢傾斜角の前回値と、 元歩容の上体姿勢 傾斜角の前回値又は今回値とを用いてモデル間上体姿勢傾斜角差が求め られる。
次いで、 S 2 2 0 4に進み、 修正歩容の逆位相腕振り角と元歩容の逆 位相腕振り角との差であるモデル間逆位相腕振り角差が求められる。 こ の S 2 2 0 4では、 S 2 2 0 0のモデル間上体水平位置差の算出処理の 場合と同様、 修正歩容の逆位相腕振り角の前回値と、 元歩容の逆位相腕 振り角の前回値又は今回値とを用いてモデル間逆位相腕振り角差が求め られる。
次いで、 S 2 2 0 6に進み、 モデル間上体水平位置差を基に、 その差 を 0に収束させるために必要なモデル上体水平位置安定化床反力モ一メ ント要求値 Mpfdmd が決定される。 単に修正歩容の上体並進モードの 上体水平加速度を発生させる床反カモ一メントを元歩容の上体並進モー ドの上体水平加速度を発生させる床反力モーメントに一致させると、 モ デル間上体水平位置差は発散する。 モデル上体水平位置安定化床反カモ
—メント要求値 Mpfdmd は、 前記上体並進モードによって修正歩容の 上体水平位置を元歩容の上体水平位置に戻すよう動作を行った時に、 こ れに伴って発生する床反カモ一メントから元歩容の上体並進モードの上 体水平加速度を発生させる床反力モーメントを減じたモーメントとして の意味を持つ。 ,
具体的には、 モデル上体水平位置安定化床反力モーメント要求値 Mpfdmd は、 例えば次式のフィードバック制御則によって決定される。 この例では、 フィードバック制御則として、 P D制御則を用いているが、 P I D等、 他のフィードパック制御則を用いてもよい。
Mpfdmd= Kmp *モデル間上体水平位置差
+ Kmpv *モデル間上体水平位置差の時間微分値
式 d 2 8 伹し、 Kmp、 Kmpv はフィードバックゲイン ('比例ゲイン、 微分ゲイ ン) である。 次いで、 S 2 2 0 8に進み、 モデル間上体姿勢傾斜角差を基に、 その 差を 0に収束させるために必要なモデル上体姿勢傾斜角安定化床反カモ 一メント要求値 Mrfdmd が決定される。 単に修正歩容の上体傾斜モー ドの上体姿勢傾斜角加速度を発生させる床反カモ一メントを元歩容の上 体傾斜モードの上体姿勢傾斜角加速度を発生させる床反カモ一メントに 一致させると、 モデル間上体姿勢傾斜角差は 0に収束しない。 モデル上 体姿勢傾斜角安定化床反力モーメント要求値 Mrfdmd は、 上体傾斜モ ードによつて修正歩容の上体姿勢傾斜角を元歩容の上体姿勢傾斜角に戻 すよう動作を行った時に、 これに伴って発生する床反力モーメントから 元歩容の上体傾斜モードの上体姿勢傾斜角加速度を発生させる床反カモ —メントを減じたモーメントとしての意味を持つ。
具体的には、 モデル上体姿勢傾斜角安定化床反力モー'メント要求値 Mrfdmdは、 例えば次式のフィードバック制御則によつて決定される。 この例では、 フィードパック制御則として、 P D制御則を用いているが、 P I D等、 他のフィードバック制御則を.用いてもよい。
Mrfdmd= Kmr *モデル間上体姿勢傾斜角差
+ Kmrv *モデル間上体姿勢傾斜角差の時間微分値
……式 d 2 9 但し、 Kmr、 Kmrv はフィードバックゲイン (比例ゲイン、 微分ゲイ ン) である。 次いで、 S 2 2 1 0に進み、 モデル間逆位相腕振り角差を基に、 その 差を 0に収束させるために必要なモデル逆位相腕振り角安定化床反カモ 一メント要求値 Mafdmd が決定される。 単に修正歩容の逆位相腕振り モードの逆位相腕振り角加速度を発生させる床反力モーメントを元歩容 の逆位相腕振りモ一ドの逆位相腕振り角加速度を発生させる床反力モー メントに一致させると、 モデル間逆位相腕振り角は 0に収束しない。 モ デル逆位相腕振り角安定化床反力モーメント要求値 Mafdmd は、 逆位 相腕振りモードによって修正歩容の逆位相腕振り角を元歩容の逆位相腕 振り角に戻すよう動作を行った時に、 これに伴って発生する床反カモ一 メントから元歩容の逆位相腕振りモードの逆位相腕振り角加速度を発生 させる床反力モーメントを減じたモーメントとしての意味を持つ。
具体的には、 モデル逆位相腕振り角安定化床反力モーメント要求値 Mafdmdは、 例えば次式のフィードバック制御則によって決定される。 この例では、 フィードバック制御則として、 P D制御則を用いているが、 P I D等、 他のフィードパック制御則を用いてもよい。
Mafdmd= Ka *モデル間逆位相腕振り角差
+ Kav *モデル間逆位相腕振り角差の時間微分値
……式 d 2 9 b 但し、 Kar、 Kav はフィードバックゲイン (比例ゲイン、 微分ゲイン) である。 ところで、 最終的に決定された修正歩容の上体並進モードに伴って発 生する床反力モーメント水平成分から元歩容の上体並進モードの上体水 平加速度を発生させる床反カモ一メント水平成分を減じたモーメントを、 モデル上体水平位置安定化床反力モーメントと呼ぶ。 また、 最終的に決 定された修正歩容の上体傾斜運動モードに伴って発生する床反力モーメ ント水平成分から元歩容の上体傾斜運動モードめ上体姿勢傾斜角加速度 を発生させる床反カモ一メント水平成分を減じたモ一メントを、 モデル 6 3 上体姿勢傾斜角安定化床反力モーメントと呼ぶ。 また、 蕞終的に決定さ れた修正歩容の逆位相腕振りモードに伴って発生する床反力モーメント 鉛直成分から元歩容の逆位相腕振りモ一ドの逆位相腕振り角加速度を発 生させる床反力モーメント鉛直成分を減じたモーメントを、 モデル逆位 相腕振り角安定化床反カモ一メントと呼ぶ。
一方、 摂動運動と摂動床反力とには線形性が近似的に成立する、 すな わち、 異なる摂動運動を元歩容の運動に加えた運動の床反力は、 元歩容 の床反力にそれぞれの摂動運動が発生する摂動床反力を加えたものにほ ぼ一致する。 また、 逆位相腕振りモードでは、 床反力モーメント水平成 分は変化しない。 したがって、 次式が近似的に成立する。 モデル操作床反力モーメント水平成分
=モデル上体水平位置安定化床反力モーメント '
+モデル上体姿勢傾斜角安定化床反カモ一メント
……式 d 3 0 この式 d 3 0が近似的に成立することと、 逆位相腕振り角加速度に比 例して床反カモ一メント鉛直成分が変化することとを考慮しつつ、 モデ ル上体水平位置安定化床反力モーメントをモデル上体水平位置安定化床 反力モーメント要求値 Mpfdmd に一致またはなるべく近くなるように 決定し、 かつ、 モデル上体姿勢傾斜角安定化床反力モーメントをモデル 上体姿勢傾斜角安定化床反力モーメント要求値 Mrfdmd に一致または なるべく近くなるように決定しつつ、 かつ、 モデル逆位相腕振り角安定 化床反力モーメントをモデル逆位相腕振り角安定化床反力モーメント要 求値 Mafdmd に一致またはなるべく近くなるように決定すれば、 修正 歩容に適切なモデル操作床反力モーメントを発生させて、 以下に示す復 元条件を満足しつつ、 修正歩容の上体水平加速度と上体姿勢傾斜角加速 度とを、 それぞれ元歩容の上体水平加速度と上体姿勢傾斜角加速度とに 可能な範囲で収束させることができる。
そこで、 S 2 2 1 0の後、 S 2 2 1 2に進み、 以下の条件 (これらを 復元条件と呼ぶ) をできる限り満足するようにモデル上体水平位置安定 化床反力モーメント (上体並進モードの床反力モーメント) とモデル上 体姿勢傾斜角安定化床反カモ一メント (上体傾斜モードの床反力モーメ ント) とモデル逆位相腕振り角安定化床反カモ一メントとを決定する。 さらに、 上記のモデル上体水平位置安定化床反力モーメントとモデル上 体姿勢傾斜角安定化床反力モーメントとモデル逆位相腕振り角安定化床 反ガモ一メン卜との定義を満足するように、 修正歩容の上体水平加速度 と上体姿勢傾斜角加速度と逆位相腕振り角加速度とを決定する。 なお、 以下に示す復元条件は、 番号が小さい条件ほど優先度が高いものとする。 つまり相反して両立できない条件がある場合には、 番号が小さい条件を 優先して満足 (成立) させる。 ただし、 復元条件 1 、 2および 3は必ず 満足 (成立) させる。 .
復元条件 1 ) 補償全床反力モーメント水平成分 Mdmdxy とモデル操 作床反力モーメントの和 (これは、 前記式 d 2 7 bが成立する場合には、 コンプライアンス制御用目標床反力モーメント水平成分に相当する) が 床反力モーメント水平成分許容範囲を越えないこと。
復元条件 2 ) 修正歩容の床反力水平成分が床反力水平成分許容範囲を 越えないこと。
復元条件 3 ) 修正歩容の床反力モーメント鉛直成分と補償全床反カモ —メント鉛直成分 Mdmdzの和 (これは、 コンプライアンス制御用目標 床反力モーメント鉛直成分に相当する) が、 床皮力モーメント鉛直成分 許容範囲を越えないこと。 復元条件 4 ) モデル上体姿勢傾斜角安定化床反力モーメントが、 モデ ル上体姿勢傾斜角安定化床反力モーメント要求値 Mrfdmd に一致また はできる限り近いこと。 この条件は、 修正歩容の上体姿勢傾斜角が元歩 容 (当初予定した歩容) の上体姿勢傾斜角に収束するための条件である。 復元条件 5 ) モデル上体水平位置安定化床反力モーメントが、 モデル 上体水平位置安定化床反力モーメント要求値 Mpfdmd に一致またはで きる限り近いこと。 この条件は、 修正歩容の上体水平位置が元歩容 (当 初予定した歩容) の上体水平位置に収束するための条件である。
復元条件 6 ) モデル逆位相腕振り角安定化床反力モーメントが、 モデ ル逆位相腕振り角安定化床反力モーメント要求値 Mafdmd に一致また はできる限り近いこと。 この条件は、 修正歩容の逆位相腕振り角が元歩 容 (当初予定した歩容) の逆位相腕振り角に収束するための条件である。 復元条件 7 ) モデル上体姿勢傾斜角安定化床反力モーメント、 モデル 上体水平位置安定化床反カモ一メントおよびモデル逆位相腕振り角安定 化床反力モーメントがそれぞれ連続であること。
上記のような復元条件 1 〜 6を満足するような上体水平加速度、 上体 姿勢傾斜角加速度、 逆位相腕振り角加速度等を決定する S 2 2 1 2の処 理は具体的には例えば次のように実行される。
まず、 上記復元条件 1 、 2、 4および 5を満足するように、 モデル上 体水平位置安定化床反力モーメントおよびモデル上体姿勢傾斜角安定化 床反力モーメントが決定され、 さらに上体水平加速度および上体姿勢傾 斜角加速度が決定される。 この処理の詳細は、 本願出願人が先に提案し た P C T / J P 0 3 Z 0 0 4 3 5の技術に記載されているので、 ここで は説明を省略する。
次いで、 上記復元条件 3および 6を満足するようにモデル逆位相腕振 り安定化床反力モーメントが決定され、 さらに逆位相腕振り角加速度が 決定される。
具体的には、 上記のごとく決定された上体水平加速度および上体姿勢 傾斜角加速度と元歩容の逆位相腕振り角加速度 β aorg で仮に運動した 場合に発生する (運動に動力学的に釣り合う) 目標 Z M Pまわりの床反 力モーメント鉛直成分を求める。 以降、 これを無補正時床反カモ一メン ト鉛直成分と呼ぶ。
次いで、 次式のように、 無補正時床反力モーメント鉛直成分とモデル 逆位相腕振り角安定化床反力モーメント要求値 Mafdmd と補償全床反 力モ一メント鉛直成分 Mdmdzとの和 Msumzを求める。
Msumz=無補正時床反力モーメント鉛直成分
+ Mafdmd + Mdmdz 次いで、 次式により、 モデル逆位相腕振り安定化床反力モーメントが 決定される。
Msumz>床反力モーメント鉛直成分許容範囲上限値である場合
モデル逆位相腕振り安定化床反力モーメント =— Mdmdz
一無補正時床反力モーメント鉛直成分
+床反力モーメント鉛直成分許容範囲上限値
Msumz<床反力モーメント鉛直成分許容範囲下限値である場合
モデル逆位相腕振り安定化床反力モーメント =—Mdmdz
一無補正時床反力モーメント鉛直成分
+床反力モーメント鉛直成分許容範囲下限値 床反力モーメント鉛直成分許容範囲下限値≤MsumZ、 且つ、 Msumz≤ 6 7 床反力モーメント鉛直成分許容範囲上限値である場合 '
モデル逆位相腕振り安定化床反カモ一メント
=モデル逆位相腕振り角安定化床反カモ一メント要求値 Mafdmd
……式 d 2 6 c 次いで、 修正歩容の逆位相腕振り角加速度が次式によって求められる 修正歩容の逆位相腕振り角加速度
=元歩容の逆位相腕振り角加速度 β aorg
+モデル逆位相腕振り安定化床反力モーメント
腕振り運動の等価慣性モーメント A Maz 修正歩容の床反カモ一メント鉛直成分は、 元歩容の逆位'相腕振り角加 速度 /3 aorg とモデル逆位相腕振り安定化床反力モ一メントの和である ことから、 上式のごとくモデル逆位相腕振り安定化床反力モーメントを 決定することにより、 上記復元条件 3が.満足される。
上述したように S 2 2 1 2の処理を実行した後、 S 2 2 1 4に進み、 前記式 d 3 0により、 モデル操作床反力モーメント水平成分が決定され る。 すなわち、 S 2 2 0 8で求めたモデル上体水平位置安定化床反カモ ーメン卜とモデル上体姿勢傾斜角安定化床反力モーメントとの和がモデ ル操作床反力モーメント水平成分として決定される。 なお、 最終的に決 定される修正歩容の運動の今回瞬時値に基づいて目標 Z M Pまわりの床 反力モーメン卜を直接算出して、 これをもってモデル操作床反力モーメ ントとしても良い。
次いで、 S 2 2 1 6に進み、 前記式 d 2 7 bにより、 コンプライアン ス制御用目標床反力モーメント水平成分が決定される。 すなわち、 補償 全床反力モ一メント水平成分 Mdmdxy と S 2 2 1 4で彔めたモデル操 作床反力モーメント水平成分との和がコンプライアンス制御用目標床反 力モーメント水平成分として決定される。
次いで、 S 2 2 1 8に進み、 図示する式によって、 コンプライアンス 制御用目標床反力モーメント鉛直成分を決定する。 なお、 図示する式に おける修正歩容に釣り合う (修正歩容の運動に動力学的に釣り合う) 床 反力モーメ'ント鉛直成分は、 無補正時床反力モーメント鉛直とモデル逆 位相腕振り安定化床反カモ一メントの和であるが、 最終的に決定される 修正歩容の運動の今回瞬時値に基づいて目標 Z M Pまわりの床反力モー メント鉛直成分を直接算出しても良い。
以上により、 図 6 1の S 2 1 1 4の処理が終了し、 次に、 S 2 1 1 6 に進む。 この S 2 1 1 6の処理は、 前記第 2参考例における図 5 7の S 3 4 1 6と同一であり、 上体水平加速度の 2階積分により'上体水平位置 の今回値が決定されると共に、 上体姿勢傾斜角加速度の 2階積分により 上体姿勢傾斜角の今回値が決定される。
次に、 S 2 1 1 8に進む。 この S 2 1 , 1 8の処理は、 前記第 2参考例 における図 5 7の S 3 4 1 8と同一であり、 逆位相腕振り角加速度の 2 階積分により逆位相腕振り角の今回値が決定される。
次いで、 図 6 0の S 2 0 3 6に進んで、 時刻 tに制御周期 Δ t を加え、 再び、 S 2 0 1 4に戻り、 制御周期毎のタイマ一割り込みを待つ。
補足すると、 第 3参考例における動力学モデルによる歩容瞬時値決定 においては、 動力学モデルの状態量 (あるいは前回、 前前回の歩容瞬時 値) も必要であるので、 修正歩容生成用と元歩容生成用との 2つの動力 学モデルが必要である。 第 3参考例では、 それらの動力学モデルは図 1 2に示した動力学モデルである。
第 3参考例においては、 上記のごとく、 元歩容と修正歩容とが並列的 に生成され、 修正歩容は、 実口ポッ ト 1の姿勢 (傾斜角およびョ一角) 安定化のために修正されると共に、 コンプライアンス制御により姿勢復 元に必要な床反力モーメント (水平成分および鉛直成分) を発生しても まだ余裕がある場合には、 この余裕を用いて、 可能な範囲で元歩容に収 束するようにしている。 このため、 前記第 2参考例の作用効果に加え、 当初設定した元歩容に近い、 すなわち、 当初の要求通りの歩容に近い歩 容を生成することができる。 したがって、 あらかじめ設定された移動経 路がある場合には、 移動経路から大きくずれることを防止することが可 能となる。 また、 修正歩容の上体姿勢傾斜角が元歩容 (当初決定した歩 容) の上体姿勢傾斜角に収束することを、 修正歩容の上体水平位置が元 歩容 (当初決定した歩容) の上体水平位置に収束することよりも優先し た (床反力水平成分許容範囲を満たす範囲で可能な限り上体並進モード の運動を調整した) ので、 上体姿勢傾斜角が大きく変動することを抑制 することができる。
次に本発明の第 1実施形態を図 6 3〜図 7 1を参照して説明する。 な お、 本実施形態の説明で、 前記第 1〜第 3参考例のいずれかと同一構成 部分もしくは同一機能部分については該第 1〜第 3参考例と同一の参照 符号を用いて詳細な説明を省略する。
図 6 3を参照して、 本実施形態では、 制御ユニッ ト 6 0の機能的構成 は、 前記第 3参考例のもの、 すなわち前記図 5 9に示したものから、 ョ 一安定化制御演算部 1 1 3を削除したものと同一であり、 歩容生成装置 1 0 0には、 補償全床反カモ一メント鉛直成分 Mdmdzは入力されなレ^ そして、 本実施形態では、 歩容生成装置 1 0 0が実行する歩容生成のァ ルゴリズムは、 前記第 3参考例のものと相違している。 そして、 歩容生 成装置 1 0 0以外の各部の処理は、 前記第 3参考例と同一である。 補足 すると、 補償全床反力モーメント鉛直成分 Mdmdz を第 1参考例の如く、 複合コンプライアンス動作決定部 1 0 4に入力するようにしてもよい。
図 6 4は、 本実施形態における歩容生成装置 1 0 0の処理の概要を示 すブロック図である。 この図 6 4を参照して、 歩容生成装置 1 0 0の処 理の概要を以下に説明する。 なお、 図 6 4を用いて以下に説明する処理 の概要は、 後述する第 2〜第 4実施形態についても同様である。 また、 本実施形態および後述の第 2〜第 4実施形態では、 前記図 1 2の動力学 モデルを単純化モデルと称する。
図示の如く、 歩容生成装置 1 0 0は歩容パラメ一夕決定部 1 0 0 aを 備える。 歩容パラメータ決定部 1 0 0 aは、 目標歩容のパラメ一夕 (目 標歩容を規定するパラメータ) の値あるいは時系列テーブルを決定する。 これは、 後述の図 6 6のフローチャートの 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 M P許容範囲 (もしくは床 反力モーメント水平成分許容範囲) は、 S 3 5 3 0の処理で設定される フルモデル補正用 (歩容補正用) のものだけである。 なお、 本実施形態 では、 S 3 5 3 0では Z MP許容範囲を規定するパラメ一夕を設定する が、 これは、 床反力モーメント水平成分許容範囲を規定するパラメ一夕 と設定することと同等である。 これは、 前記第 2参考例の図 5 6の S 3 0 3 0に関して説明した如く、 床反力モーメント水平成分を、 目標床反 力鉛直成分で割ったものが、 Z MP (床反力中心点) の目標 Z MPから のずれ量を表すものとなるからである。
ここで、 本実施形態で設定する Z MP許容範囲は、 図 6 5の如く設定 される。 詳細は、 P C TZ J P 0 3 Z 0 0 4 3 5に詳細に記載されてい るのでここでは、 これ以上の説明を省略する。
歩容パラメータ決定部 1 0 0 aで決定された歩容パラメ一夕は目標瞬 時値発生部 1 0 0 bに入力される。 目標瞬時値発生部 1 0 0 bは入力さ れた歩容パラメ.一夕に基づき、 目標足平位置姿勢、 目標 ZMP、 目標床 反力鉛直成分、 目標腕姿勢、 目標全体重心鉛直位置、 目標上体鉛直位置、 床反力水平成分許容範囲、 Z MP許容範囲、 基準上体姿勢角および基準 逆位相腕振り角の、 現在時刻 t における瞬時値を逐次算出 (発生) する (図 6 4では一部の目標瞬時値のみを 載している)。 この目標瞬時値 発生部 1 0 0 bの処理は、 後述の図 6 6のフローチャート S 3 5 3 2の 処理のなかで実行される図 5 7の S 3 4 0 0〜 S 3 4 1 2の処理、 並び に、 図 6 6の 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 (図 6 3を参照) で求められる補償全床反力モーメント水平成分 Mdmdxy も 入力される。 フルモデル補正部 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 を加えたものがフルモデル補正部 1 0 0 cから出力するコンプライアン ス制御用床反力モーメントに一致する。
A2) 真の Z M P (目標 Z M Pのまわりにコンプライアンス制御用目標 床反力モーメントを発生させることによって修正された本来の定義を満 足する Z M P ) は、 Z M P許容範囲 (安定余裕が十分維持できる許容範 囲) に存在する。
A3) 床反力水平成分は歩容補正用の床反力水平成分許容範囲内にある。 A4) 目標 Z M Pのまわりに発生すべきコンプライアンス制御用目標床 反力モーメント鉛直成分が床反力モーメント鉛直成分許容範囲内にある。 という条件を満足するように、
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参考例で説明した図 1 2の動力学モデル (前記式 0 1〜 0 5で記述される動力学モデル) が単純化モデル 1 0 0 c 1 として用い られる。
また、 フルモデル 1 0 0 c 2は、 単純化モデル 1 0 0 c 1 とは異なる ロポッ ト動力学モデルを意味する。 これは、 単純化モデル 1 0 0 c 1よ りも近似精度の高いロボッ ト動力学モデルであることが望ましい。 図示 例で説明すれば、 本実施形態では先に述べたように前記図 1 2に示した 動力学モデルを単純化モデル 1 0 0 c 1 として用いるので、 それよりも、 近似精度の高い動力学モデル、 例えば前記図 4 9に示した多質点モデル (口ポッ ト 1の各リンクにそれぞれ質点を有するモデル) のようなロボ ッ ト動力学モデルをフルモデル 1 0 0 c 2として用いることが望ましレ 。 この場合、 該フルモデル 1 0 0 c 2は、 質点のまわりに慣性モーメント を設定するものであっても良い。
しかし、 単純化モデル 1 0 0 c 1 とフルモデル 1 0 0 c 2とは、 必ず しもモデルの近似精度が異なる必要はない。 単純化モデル 1 0 0 c 1 と フルモデル 1 0 0 c 2とは、 動力学方程式が同じで、 床反力水平成分許 容範囲およびまたは床反力モーメント鉛直成分許容範囲が異なっている、 すなわち、 単純化モデル歩容用の許容範囲と、 歩容補正用 (フルモデル 補正用) の許容範囲とが異なっているだけでも良い。 たとえば、 単純化 モデル 1 0 0 c 1を用いた歩容を生成する際の床反力水平成分許容範囲 および床反力モーメント鉛直成分許容範囲を大きくとり (摩擦限界を越 えていても良い)、 フルモデル 1 0 0 c 2を用いて歩容を修正する際の 床反力水平成分許容範囲および床反力モーメント鉛直成分許容範囲を口 ポッ ト 1のスリップもしくはスピンが発生しにくいように狭く設定する だけでも良い。
尚、 この明細書において、 目標足平位置姿勢、 目標床反力 (特に、 目 標 Z M Pと目標床反力鉛直成分) に基づいて (入力して) '上体位置姿勢 および逆位相腕振り角を算出する (出力させる) のに使用するモデルを 「順動力学モデル」 と呼び、 目標足平位置姿勢、 目標上体姿勢、 目標上 体位置および逆位相腕振り角に基づいて. (入力して) 床反力 (特に、 目 標 Z M Pもしくは目標 Z M Pまわりの床反力モーメント (水平成分およ び鉛直成分) と床反力水平成分) を算出する (出力させる) のに使用す るモデルを 「逆動力学モデル」 と呼ぶ。 順動力学モデルの入力には、 少 なくとも目標床反力が含まれ、 逆動力学モデルの入力には、 少なくとも 目標運動が含まれる。
フルモデル補正部 1 0 0 cが備えるフルモデル 1 0 0 c 2は、 逆動力 学フルモデル (しばしば 「逆フルモデル」 と略称) または順動力学フル モデル (しばしば 「順フルモデル」 と略称) を備える。 一般的には、 逆 動力学モデルの演算に比べ、 順動力学モデルの演算は、 演算量が多くな りがちである。 以上が本実施形態 (第 1実施形態) での歩容生成装置 1 0 0における 処理の概要である。
次に、 本実施形態における歩容生成装置 1 0 0の処理を詳説する。 本 実施形態における歩容生成装置 1 0 0は、 図 6 6のフローチャートに示 す処理を実行して、 歩容を生成する。
まず、 S 3 5 1 0から S 3 5 2 8までにて、 前記第 2参考例で説明し た図 5 6の' S 3 0 1 0から S 3 0 2 8までの処理と同一の処理が実行さ れる。 なお、 S 3 0 2 6のサブルーチンである図 3 9の S 6 0 8で決定 する今回歩容の床反力水平成分許容範囲および S 6 1 0で決定する床反 力モーメント鉛直成分許容範囲は、 前記第 1参考例、 第 2参考例および 第 3参考例の場合よりも厳密に摩擦力限界を考慮せずともよく、 摩擦力 限界を超えるような範囲に設定してもよい。 これは、 後述するフルモデ ル補正によって、 床反力水平成分および床反力モーメン卜鉛直成分は最 終的にフルモデル補正用の床反力水平成分許容範囲および床反力モーメ ント鉛直成分許容範囲によって制限されることとなるからである。
次いで、 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に示したようなパターンに設定される。
また、 Z M P許容範囲は、 前記第 2参考例における図 5 6の S 3 0 3 0で床反カモ一メント水平成分許容範囲の設定に関して説明した場合と 同様に設定される。 なお、 Z M P許容範囲に目標床反力鉛直成分を乗じ ることで、 Z M P許容範囲をこれと等価な床反カモ一メント水平成分許 容範囲に変換してもよいことはもちろんである。
次いで、 S 3 5 3 2に進み今回歩容瞬時値 (現在時刻 tの値) が前記 単純化モデル (図 1 2の動力学モデル) を用いて決定される。 この S 3 5 3 2の処理は、 前記第 1参考例における図 1 3の S O 3 0の処理と同 一である。 '
以上説明した S 3 5 3 2までの処理によって生成された現在時刻 t に おける歩容の瞬時値を、 以降、 単純化モデル歩容瞬時値という。 本実施 形態では、 この単純化モデル歩容瞬時値,は、 単純化モデル (図 1 2の動 力学モデル) を用いて、 口ポッ ト 1にその運動によって発生する慣性力 と重力との合力が目標 Z M Pまわりに発生する床反力モーメント水平成 分が 0になるように (目標 Z M Pに関する動力学的平衡条件を満たすよ うに) 決定される。
この場合、 単純化モデル歩容瞬時値のうちの、 上体水平位置および上 体姿勢傾斜角の瞬時値と、 上体鉛直位置の瞬時値と、 逆位相腕振り角の 瞬時値とは仮瞬時値であり、 後述するフルモデル補正によって捕正され るものである。 また、 本実施形態における単純化モデル歩容瞬時値のう ち、 目標 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 4を参照して説明したように、 補正目標上体位置姿勢、 補正目 標逆位相腕振り角や、 目標 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の処理は、 本実施形態の特徵をなす部分であり、 以下 にその処理を詳説する。 本実施形態に係る装置の歩容補正手法は、 フル モデルフィードフォワード補正型である。 また、 逆動力学フルモデル (逆フルモデル) を用いる手法で、 かつ単純化モデル歩容の入力を補正 しない手法であり、 かつ摂動モデルを用いる手法である。
図 6 7は、 本実施形態に係る歩容生成装置 1 0 0の動作、 具体的には、 図 6 6のフロー · チャートの S 3 5 3 6の歩容の修正手法を説明する機 能ブロック図である。 ただし、 図 6 7の単純化モデル 2 0 0は、 単に動 力学モデルだけでなく、 前述の S 3 5 1 0から S 3 5 3 2の処理、 すな わち単純化モデル歩容瞬時値の算出 (決定) 処理を表す。 したがって、 図 6 7において、 単純化モデル 2 0 0から先の部分が S 3 5 3 6の処理 に相当する。
尚、 歩容補正用 (フルモデル補正用) の床反力水平成分許容範囲と Z M P許容範囲の瞬時値を決定する処理は、 図 6 6のフローチャートの参 照符号 S 3 5 3 4を用いて示している。
実際の処理はひとつのコンピュータで実行されるので、 ブロック図を 離散化した後、 ブロック図の上流側から下流側 (歩容出力側) に向かつ て順に実行される。 ただし、 上流側に戻るフィードバック量は、 前回制 御周期 (現在時刻 tに対して時刻 t 一 Δ t ) に算出した値 (状態量) を 用いることとする。 尚、 以降、 前回制御周期 (時刻 t 一 A t ) に算出し た値を前回値と略す。
S 3 5 3 6の処理が実行される毎に、 ブロック図の 1制御周期分の演 算が実行される。
S 3 5 3 6では、 まず、 上記のごとく得られた単純化モデル歩容の目 標上体姿勢角 (以降、 単純化モデル上体姿勢角と呼ぶ。 また、 このうち の傾斜角成分を単純化モデル上体姿勢傾斜角と呼ぶ。)、 目標上体水平位 置 (以降、 単純化モデル上体水平位置 呼ぶ)、 目標重心位置、 目標足 平位置姿勢、 目標腕姿勢 (目標逆位相腕振り角を含む) などの運動を表 す変数 (これを運動変数と呼ぶ) の瞬時値と、 目標 Z M Pの瞬時値とが 前記逆動力学フルモデル (逆フルモデル) 2 0 1に入力される。 入力さ れた運動変数で表される運動に釣り合う (すなわち運動によってフルモ デルが発生する) 床反力水平成分と目標 Z M Pまわりの床反力モーメン ト (水平成分および鉛直成分) が、 逆フルモデル 2 0 1の演算処理によ つて算出される。 なお、 本実施形態では、 単純化モデル歩容における目 標 Z M Pまわりの床反力モ一メント水平成分は 0であるので、 逆フルモ デル 2 0 1によって算出される目標 Z M Pまわりの床反カモ一メント水 平成分は、 単純化モデル歩容の誤差としての意味を持つものである。 なお、 逆フルモデル 2 0 1により求められた床反力水平 分と床反カモ ーメント水平成分と床反力モーメント鉛直成分とをそれぞれ 「フルモデ ル床反力水平成分」、 「フルモデル床反力モーメント水平成分」、 「フルモ デル床反力モーメント鉛直成分」 と呼ぶ。 また、 以降、 しばしば、 フル モデル床反力水平成分を Ffull、 フルモデル床反力モーメント水平成分 を Mfullxy、 フルモデル床反力モーメント鉛直成分を Mfullz、 と略す。 また、 前記逆フルモデル 2 0 1は、 目標重心位置を満足する上体鉛直 位置を算出する。 さらに、 図示は省略しているが、 逆フルモデル 2 0 1 は、 重心水平位置も算出する。
補足すると、 フルモデルには目標全体重心鉛直位置を入力しており、 また目標床反力鉛直成分は目標全体重心鉛直位置の 2階微分値から求め られるので、 フルモデルには、 特に目標床反力鉛直成分を入力する必要 はない。 冗長であっても演算を減らすためなどの理由で、 'フルモデルに 目標床反力鉛直成分を入力しても良い。
ここで、 歩容補正に用いられる摂動モデルについて説明する。
摂動モデルは、 上体水平位置補正用摂,動モデル 2 0 2、 上体姿勢傾斜 角補正用摂動モデル 2 0 3および逆位相腕振り角補正用摂動モデル 2 3 1から成る。 尚、 摂動モデルは、 このように 3つのモデルに分離しない で、 図 1 2のようなひとつのモデルにしても良い。 また、 上体姿勢傾斜 角補正用摂動モデル 2 0 3は図では上体姿勢角補正用摂動モデル 2 0 3 と略す。
上体水平位置補正用摂動モデル 2 0 2は、 前記上体並進モードにおけ る床反力の摂動と上体水平位置の摂動との関係を表す。
上体水平位置補正用摂動モデル 2 0 2は、 目標床反力モーメン卜の補 正量を入力し、 これに動力学的に釣り合う目標上体水平位置の補正量を 算出する。 この入力 (目標床反力モーメントの補正量) を、 上体水平位 置補正用摂動モデルモーメント Mp と呼ぶ。 また、 上体永平位置補正用 摂動モデル 2 0 2の出力 (目標上体水平位置の補正量) を、 補正用摂動 モデル上体水平位置 Xc と呼ぶ。 また、 上体水平位置補正用摂動モデル 2 0 2が発生する床反力水平成分を上体水平位置補正用摂動モデル床反 力水平成分 Fpと呼ぶ。
上体水平位置補正用摂動モデル 2 0 2は、 図 6 8のように、 支点と倒 立振子質点'(上体質点) とこれらを結合する伸縮自在な支持棒から成る 倒立振子で表される。 支点の氷平位置は前記した今回歩容の支持脚座標 系の原点の水平位置に一致し、 支点の鉛直位置は目標 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/dt2
…式 a 1 2 同様に、 Fx、 Xb 以外は定数とみなして、 床反力水平成分の摂動 A Fx と上体質点水平位置の摂動 A Xb の関係を前記式 0 2 Xから求めると、 次式が得られる。
AFx=mb* d2AXb/dt2 …式 al 3 上体水平加速度によって発生する ΔΜρと AFp の比である上体並進 モード床反力比率 hは、 式 al 2の右辺のうちの上体水平加速度によつ て発生する項 (すなわち第 2項) と式 al 3との比であるから、 次式が 得られる。 h=(Zb-Zzmp) …式 al 4 すなわち、 上体並進モード床反力比率 hは、 単純化モデルの上体質点 (倒立振子質点) の支点からの高さに相当する。 '
よって、 式 al 2 と式 a1 4とより次式が得られる。
Δ My =— mb * Δ Xb * (g+d2Zb/dt2) + mb* * 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質点 +フライホイールのモデル) の両脚質 点に作用する重力と慣性力との合力の並進力鉛直成分との和に等しい。 式 a l 6を式 a l 5に代入することにより、 次式が得られる。
△ My =— Fbz * AXb + mb* h* ά2Δ Xb/dt2 …式 a 1 8 式 a l 8の AMy を上体水平位置補正用摂動モデルモーメント Mp、
△ Xb を補正用摂動モデル上体水平位置 Xc に対応させることにより (式 a l 8の AMy に上体水平位置補正用摂動モデルモーメント Mp、
AXb に補正用摂動モデル上体水平位置 Xc を代入することにより)、 次 式が得られる。
Mp = - Fbz * Xc + mb * h * d2Xc/dt2 …式 a l 9 すなわち、 上体水平位置補正用摂動モデル 2 0 2は、 式 a l 4によつ て求められる上体並進モード床反力比率 hと式 a l 7によって求められ る上体床反力鉛直成分 Fbzを用いて、 式 a l 9で表される。
また、 式 a l 3の AFx を上体水平位置補正用摂動モデル床反力水平 成分 Fpに対応させることにより、 次式が得られる。
Fp = mb* d2Xc/dt2 …式 a 2 0 すなわち、 式 a l 4、 式 a l 7、 式 a l 9、 式 a2 0によって上体水 平位置補正用摂動モデル 2 0 2が記述される。 補足すると、 ここでは、 上体質点位置の摂動と上体位置 (上体代表点 位置) の摂動は一致するものとみなしているが、 厳密には、 一致すると は限らない。 従って、 Mp、 Fp と Xc の関係を求めるためには、 さらに 上体質点水平位置と上体位置の幾何学的関係を表すモデルが必要である。 一方、 上体姿勢傾斜角補正用摂動モデル 2 0 3は、 前記上体傾斜モー ドにおける床反力の摂動と上体姿勢傾斜角の摂動の関係を表す。
上体姿勢傾斜角補正用摂動モデル 2 0 3は、 床反力モーメント水平成 分の補正量が入力され、 これに動力学的に釣り合う目標上体姿勢傾斜角 の補正量を算出する。 この入力 (床反力モーメントの補正量) を、 上体 姿勢傾斜角補正用摂動モデルモーメント Mr (上体姿勢角補正用摂動モ デル Mr と略すこともある) と呼ぶ。 また、 上体姿勢傾斜角補正用摂動 モデル 2 0 3の出力 (目標上体姿勢傾斜角の補正量) を補正用摂動モデ ル上体姿勢傾斜角 0 c と呼ぶ。 また、 上体姿勢傾斜角補正用摂動モデル 2 0 3が発生する床反力水平成分を上体水平位置補正用摂動モデル床反 力水平成分 Frと呼ぶ。 Frは前述したごとく 0である。 すなわち、 次式 が常に成立する。 ,
Fr= 0 …式 a 2 1 上体姿勢傾斜角補正用摂動モデル 2 0 3は、 図 6 9のように、 フライ ホイールで表される。 補足すると、 図 6 9では、 Y軸まわり回転のフラ ィホイールのみを示したが、 上体姿勢傾斜角補正用摂動モデル 2 0 3は、 実際には、 Y軸まわり回転のフライホールだけでなく、 X軸まわり回転 のフラ一ホイールも必要とする。 それらのフライホイールのイナーシャ は、 図 1 2に示した前記単純化モデル ( 3質点'モデル +フライホイ一 ル) のフライホイール FHx、 FHy と同じである。 この上体姿勢傾斜角 補正用摂動モデル 2 0 3のフライホイ一ルの回転角度が S正用摂動モデ ル上体姿勢傾斜角 0 c、 そのフライホイ一ルによって発生する床反カモ —メン卜水平成分が上体姿勢傾斜角補正用摂動モデルモ一メント Mr に 相当する。 なお、 以下の説明では理解の便宜上、 Y軸まわり回転のフラ ィホイールを中心に説明するが、 X軸まわり回転のフライホイールにつ いても同様である。
この上体姿勢傾斜角補正用摂動モデル 2 0 3 (より詳しくはサジタル プレーンに関するモデル) は、 前記単純化モデル ( 3質点 +フライホイ. ールのモデル) の動力学方程式の前記式 0 3 yにおいて、 床反力モーメ ントの摂動 Δ Myと上体姿勢傾斜角の摂動 Δ 0 byの関係を表している。 そこで、 My、 0by 以外は定数とみなして、 床反力モーメント水平成 分の摂動 Δ My と上体姿勢傾斜角の摂動 Δ 0 byの関係を式 0 3yから求 めると、 次式が得られる。 ' AMy= J* d2A Θ by/dt2 …式 a2 2 式 a2 2の AMy を上体姿勢傾斜角補正用摂動モデルモーメント Mr、 Δ ^ y を補正用摂動モデル上体姿勢傾斜角 0 c に対応させることによ り、 次式が得られる。
Mr= J* (12Δ θ c/dt2 …式 a2 3 すなわち、 上体姿勢傾斜角補正用摂動モデル 2 0 3は、 式 a2 3で表 される。 また、 上体水平位置補正用摂動モデル床反力水平成分 Fr は上 記したごとく式 a 2 1のようになる (Fr= 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は、 図 7 0のように、 フライ ホイールで表される。 フライホイールのイナーシャは、 図 1 2に示した 前記単純化モデル ( 3質点モデル +フライホイール) のフライホイール FHaz と同じである。 この逆位相腕振り角補正用摂動モデル 2 3 1のフ ライホイールの回転角度が補正用摂動モデル逆位相腕振り角 0 ca、 その フライホイールによって発生する床反力モーメント鉛直成分が逆位相腕 振り角補正用摂動モデルモーメント Maに相当する。
この逆位相腕振り角補正用摂動モデル 2 3 1は、 前記単純化モデル ( 3質点 +フライホイールのモデル) の動力学方程式の前記式 0 3 z に おいて、 床反力モーメントの摂動 Δ Μζ と逆位相腕振り角の摂動 Δ 0 az との関係を表している。 ' そこで、 Μζ、 Θ az 以外は定数とみなして、 床反力モーメントの摂動 ΔΜζ と逆位相腕振り角の摂動△ 0 azの関係を式 0 3 ζ ら求めると、 次 式が得られる。
Δ Mz = Jaz * d2 Δ Θ az/dt2 …式 a 2 2 c 式 a 2 2 cの Δ Μζ を逆位相腕振り角補正用摂動モデルモーメント Ma、 A θ αζを補正用摂動モデル逆位相腕振り角 0 caに対応させること により、 次式が得られる。
Ma= Jaz水 d2厶 0 ca/dt2 …式 a 2 3 c すなわち、 逆位相腕振り角補正用摂動モデル 2 3 1は、 式 a 2 3 c で 表される。 また、 逆位相腕振り角補正用摂動モデル床反力水平成分 Fr は上記したごとく式 a 2 l cのようにな (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であることを考慮すると、 補正歩容の運動に逆フル W
モデル 2 0 1上で釣り合う床反力モーメントに補償全床反カモ一メント 水平成分 Mdmdxy を加えたものが補正目標床反力モーメントに一致す る (前記 A1 の条件を満たす) ためには、 以下の 3つの式を満足しなけ ればならない。 フルモデル床反力モ一メント水平成分 Mfullxy
+上体水平位置補正用摂動モデルモ一メント Mp
+上体姿勢傾斜角補正用摂動モデルモーメント Mr
+補償全床反カモ一メント水平成分 Mdmdxy
= 補正目標床反力モーメント水平成分
…式 h 5 フルモデル床反力水平成分 Ffull
+上体水平位置補正用摂動モデル床反力水平成分 Fp
= 補正目標床反力水平成分
フルモデル床反カモ一メント鉛直成分 Mfullz
+上体水平位置補正用摂動モデルモーメント鉛直成分 Mpz
+逆位相腕振り角補正用摂動モデルモーメント鉛直成分 Maz
= 補正目標床反力モーメント鉛直成分
…式 h 1 0 0 6 ただし、 上体水平位置補正用摂動モデルモーメント鉛直成分 Mpz は、 上体水平位置補正用摂動モデルの運動によって逆フルモデル 2 0 1上で 発生する床反力モーメント鉛直成分である。 まだ、 式 h 5、 式 h i 0 0 6のモーメントは、 元の (単純化モデルの) 目標 Z M Pまわりのモーメ ントである。
また、 補正歩容の真の ZMPは、 補正目標床反力モーメントを目標床 反力鉛直成分で割った値だけ、 単純化モデル歩容の目標 ZMP (理想目 標 Z MP) からずれた点に変更される。 補正歩容の真の Z MP =目標 ZMP
- +補正目標床反力モーメントノ目標床反力鉛直成分
…式 h7 尚、 補正歩容の真の Z MPの X 方向 (前後方向) 成分を算出する場 合には、 補正目標床反力モーメントの Y 軸 (左右方向軸) まわり成分 を用いる。 また、 補正歩容の真の Z MPの Y 方向成分を算出する場合 には、 補正目標床反力モーメントの X 軸 (前後軸) まわり成分を用い る。 ただし、 補正歩容の真の Z MPの Y 方向成分を算出する場合には、 式 h 7の右辺の 「十」 は 「―」 にしなければならない。
補足すると、 補正歩容の真の ZMPまわりの補正目標床反力モーメン ト鉛直成分を算出するようにしても良い. P
補正歩容の真の Z MPまわりの補正目標床反力モーメント鉛直成分は、 元の目標 Z MPまわりのモーメントに補正歩容の真の Z MPと目標 ZM Pの差と式 h 6で求めた補正目標床反力水平成分との外積を加えたもの となる。
式 h7から求められる補正歩容の真の Z MPは、 Z MP許容範囲内に なければならない。 これを Z M P制約条件と呼ぶ。
また、 補正目標床反力水平成分は、 歩容補正用 (フルモデル補正用) の床反力水平成分許容範囲内になければならない。 これを床反力水平成 分制約条件と呼ぶ。
また、 補正目標床反力モーメント鉛直成分は、 歩容補正用 (フルモデ ル補正用) の床反力モーメント鉛直成分許容範囲内になければならなレ 。 これを床反カモ一メント鉛直成分制約条件と呼ぶ。
以上のように、 補正歩容は、 式 h5、 式 h6、 式 hl 0 0 6、 ZMP 制約条件 (式 h7から得られる補正歩容の真の Z MPの存在範囲条件) 床反力水平成分制約条件および床反力モーメント鉛直成分制約条件を満 足しなければならない。
しかし、 単に、 これらの式や条件を満足するだけでは、 前記補正用摂 動モデル上体位置と前記補正用摂動モデル上体姿勢傾斜角と前記補正用 摂動モデル逆位相腕振り角が発散してしまう。
そこで、 前記上体水平位置補正用摂動モデル 2 0 2と前記上体姿勢傾 斜角補正用摂動モデル 2 0 3と前記逆位相腕振り角補正用摂動モデル 2 3 1の状態量 (より具体的には、 補正用摂動モデル上体水平位置速度、 補正用摂動モデル上体姿勢傾斜角 · 角速度、 補正用摂動モデル逆位相腕 振り角 ·角速度など) を基に、 これらの状態量がある所定の状態に収束 する (安定する) ように、 補正用摂動モデル 2 0 2, 2 0 3 , 2 3 1の 安定化制御を行う。
まず、 上体水平位置補正用摂動モデル 2 0 2の安定化制御について詳 細を説明する。
上体水平位置補正用摂動モデル 2 0 2を目標整定位置に収束 (安定) させるための制御則を上体水平位置補正用摂動モデル制御則 2 0 6と呼 び、 この制御則が決定するフィードバック量 (操作量) を上体水平位置 補正用摂動モデル安定化モーメント要求値 Mpfdmd と呼ぶ。 ここで 「要求値」 を付けたのは、 後述するように、 真の Z MPが前記 Z MP許 容範囲内に存在し、 かつ、 床反力水平成分が床反力水平成分許容範囲内 になるように、 上記制御則で決定された値に制限が加えられて修正され るからである。 制限が加えられて修正されたモーメントを、 上体水平位 置補正用摂動モデル安定化モーメント Mpf と呼ぶ。
具体的に上体水平位置補正用摂動モデル制御則 2 0 6 としては、 式 h 1 0を用いる。 ただし、 目標整定位置は、 式 h8で与えられる。 また、 mtotal は前記ロボッ ト総重量、 mb は前記上体質点質量 (倒立振子質 量) であり、 XGf は、 単純化モデル歩容の瞬間姿勢を基にフルモデル を用いて計算される重心水平位置、 すなわち、 前記逆フルモデルが算出 する重心水平位置である。 また、 Kpp、 Κρνはフィードバック制御のゲ ィンである。 目標整定位置 =— mtotalZmb* (XGf— XGs) …式 h8 上体水平位置補正用摂動モデル安定化モーメント要求値 Mpfdmd = Kpp* (補正用摂動モデル上体水平位置 Xc—目標整定位置)
+ Kpv*補正用摂動モデル上体水平速度 dXc/dt
—補正用摂動モデル上体水平位置 Xc*上体床反力鉛直成分 Fbz
…式 hi 0 上体水平位置補正用摂動モデル安定化モーメント要求値 Mpfdmd の X軸 (前後方向軸) まわり成分を求める場合には、 補正用摂動モデル上 体水平位置速度および目標整定位置は Y 軸方向 (左右方向) 成分を用 いる。
上体水平位置補正用摂動モデル安定化モーメント要求値 Mpfdmd の Y軸 (左右方向軸) まわり成分を求める場合には、 補正用摂動モデル上 体水平位置速度および目標整定位置は X 軸方向 (前後方向) 成分を用 い、 右辺第 3項の 「一」 を 「十」 に代える。
詳細は、 先に本出願人が提案した P C TZ 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 1 1 ただし、 Krp、 Krvはフィードバック制御のゲインである。 なお、 式 h i 1 において、 (基準上体姿勢傾斜角—単純化モデルによ る目標上体姿勢傾斜角) の代わりに 0としてもよい。
再び、 図' 6 7の機能ブロック図を用いて 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一 Δ t ) の上体水平位置補正用摂動モデ ル 2 0 2の床反力水平成分を表す。
右辺第 2項は、 前回の上体水平位置補正用摂動モデル安定化モ一メン ト Mpf によって、 上体水平位置補正用摂動モデル 2 0 2に直接的に発 生した (すなわち直達項の) 床反力水平成分を表す。
すなわち、 上体水平位置補正用摂動モデル 2 0 2の前回の上体質点水 平加速度に上体質点の質量 mb を乗じた値から、 前回の上体水平位置補 正用摂動モデル安定化モ一メント Mpf を上体並進モード床反力比率 h で割った値を減じることによって、 Mpf が 0であつたと仮定した場合 の上体位置補正用摂動モデルの床反力 F0の推定値が求められる。
次に、 前記制約 (床反力水平成分制約条件および Z M P制約条件) を 無視して、 上体水平位置補正用摂動モデル安定化モーメント Mpf を上 体水平位置補正用摂動モデル安定化モーメント要求値 Mpfdmd に一致 させ、 かつ、 上体姿勢傾斜角補正用摂動モデル安定化モーメント Mrf を、 上体姿勢傾斜角補正用摂動モデル安定化モーメント要求値 Mrfdmd に一致させると共に、 目標 Z M Pまわりの目標床反力モーメント水平成 分としてのコンプライアンス制御用目標,床反力モーメントを補償全床反 力モーメント水平成分 Mdmdxyと Mpf と Mrf との総和に一致させたと 仮定した場合に、 目標 Z M Pまわりに発生する床反カモ一メント水平成 分 Minが Min演算部 2 0 9により求められる。 この床反力モーメント 水平成分を無制限時補正目標床反力モーメント水平成分 Min と呼ぶ。 無制限時補正目標床反力モーメント水平成分 Min は、 次式によって求 められる。
Min = Mpfdmd + Mrfdmd + Mdmdxy …式 h i 3 すなわち、 無制限時補正目標床反力モーメント水平成分 Min は、 上 体水平位置補正用摂動モデル安定化モーメント要求値 Mpfdmd と上体 姿勢傾斜角補正用摂動モデル安定化モーメント要求値 Mrfdmd と補償 全床反力モーメント水平成分 Mdmdxy とを加算することにより得られ る。
次いで、 前記制約 (床反力水平成分制約条件および Z M P制約条件) を無視して、 上体水平位置補正用摂動モデル安定化モーメント Mpf を 上体水平位置補正用摂動モデル安定化モーメント要求値 Mpfdmd に一 致させ、 かつ、 上体姿勢傾斜角補正用摂動モデル安定化モーメント Mrf を、 上体姿勢傾斜角補正用摂動モデル安定化モ一メント要求値 Mrfdmd に一致させると共に、 コンプライアンス制御用目標床反力モーメント水 平成分を補償全床反力モ一メント水平成分 Mdmdxyと Mpf と Mrf との 総和に一致させたと仮定した場合に、 発生する床反力水平成分 Fin が Fin演算部 2 1 0により求められる。 この床反力水平成分を無制限時補 正目標床反力水平成分 Finと呼ぶ。
補正目標床反力水平成分は、 前記式 h 6によって得られるが、 前述の ごとく、 上体姿勢傾斜角補正用摂動モデル 2 0 3の挙動によって上体姿 勢傾斜角補正用摂動モデル 2 0 3には床反力水平成分は発生しない、 す なわち Fr は 0である。 したがって、 無制限時補正目標床反力水平成分 Fin は、 上体水平位置補正用摂動モデル安定化モーメント Mpf が 0で あつたと仮定した場合の補正目標床反力水平成分に、 上体水平位置補正 用摂動モデル安定化モーメント Mpf を 0から上体水平位置補正用摂動 モデル安定化モーメント要求値 Mpfdmd に変更したことによって増加 する床反力水平成分を加えたものになる。
ところで、 上体水平位置補正用摂動モデル安定化モーメント Mpf を 0 か ら上体水平位置補正用摂動モデル安定化モーメ ン ト要求値 Mpfdmd に変更したことによって増加する床反力水平成分は、 上体水 平位置補正用摂動モデル安定化モーメント要求値 Mpfdmd を上体並進 モード床反力比率 hで割った値になる。
したがって、 無制限時補正目標床反力水平成分 Finは、 式 h i 5に示 すように、 上体水平位置補正用摂動モデル安定化モーメン ト要求値 Mpfdmd を上体並進モード床反力比率 hで割った値に、 前記求めたフ ルモデル床反力水平成分 Ffull を加算し、 さらに、 上体水平位置補正用 摂動モデル安定化モーメント Mpf が 0であったと仮定した場合の上体 位置補正用摂動モデルの床反力の算出値 F0 を加算することによって得 られる。
Fin= 1/h * Mpfdmd + Ffull + F0 …式 h i 5 次いで、 制限手段 (制限処理部) 2 1 1によって、 無制限時補正目標 床反力モ一メント水平成分 Min と無制限時補正目標床反力水平成分 Fin とから、 これらに制限を加えた値である (目標 Z M Pまわりの) 制 限補正目標床反力モーメント水平成分 Mltd と制限補正目標床反力水平 成分 Fltd が決定される。 本実施形態では、 コンプライアンス制御用目 標床反力モーメント水平成分は、 制限補正目標床反力モーメント水平成 分 Mltd に一致し、 補正歩容の床反力水平成分は制限補正目標床反力水 平成分 Fltdに一致する。
制限補正目標床反カモ一メント水平成分 Mltd と制限補正目標床反力 水平成分 Fltd とは、 補正歩容 (コンプライアンス制御用目標床反カモ ーメント水平成分を含む) の真の Z M Pが前記 Z M P許容範囲内に存在 し、 かつ、 補正歩容の床反力水平成分が床反力水平成分許容範囲内にな るように決定される。 すなわち、 Mltdおよび Fltdは Z M P制約条件お よび床反力水平成分制約条件を満足するように決定される。 また、 上記制約条件下で、 上体水平位置補正用摂動モデル安定化モー メント Mpは、 可能な限り、 上体水平位置補正用摂動モデル安定化モー メント要求値 Mpfdmd に一致または近い値になるように決定される。 同様に、 上体姿勢傾斜角補正用摂動モデル安定化モーメント Mrは、 可 能な限り上体姿勢傾斜角補正用摂動モデル安定化モーメント要求値 Mrfdmd に一致または近い値になるように決定される。 これにより、 前 記補正用摂動モデル上体位置 Xc と前記補正用摂動モデル上体姿勢傾斜 角 0 cとを安定化し、 発散することを防止する。
制限手段 (制限処理部) 2 1 1の詳細は、 先に本出願人が提案した P C T Z J P 0 3 0 0 4 3 5に記載されているので、 ここではこれ以上 の説明を省略する。
次いで、 以下の式により、 上体水平位置補正用摂動モデル安定化モー メント Mpf、 および上体姿勢傾斜角補正用摂動モデル安定化モ一メン ト Mrf がそれぞれ Mpf 演算部 2 1 2、 Mrf 演算部 2 1 3により求めら れる。
Mpf= (Fltd - Ffull - F0) * h …式 h 2 0
Mrf = Mltd一 Mpf- Mdmdxy …式 h 2 1 すなわち、 Mpf 演算部 2 1 2では、 制限補正目標床反力水平成分 Fltdから、 フルモデル床反力水平成分 Ffull を減じ、 Mp が 0であった と仮定した場合の上体位置補正用摂動モデル 2 0 2の床反力の算出値 F0 を減じた値に、 上体並進モード床反力比率 hを乗じることにより、 前記上体水平位置補正用摂動モデル安定化モーメント Mpf が得られる。 また、 Mrf演算部 2 1 3では、 目標 Z M Pまわりの制限補正目標床反力 モ一メント水平成分 Mltd から前記上体水平位置捕正用摂動モデル安定 化モ一メント Mpf と補償全床反カモ一メント水平成分 Mdmdxy とを減 じることにより、 上体姿勢傾斜角補正用摂動モデル安定化モーメント Mrfが得られる。
次いで、 以下の式により、 上体水平位置補正用摂動モデル床反力モー メント Mp、 および上体姿勢傾斜角補正用摂動モデル床反力モーメント Mrが求められる。
Mp = Mpf- Mfull …式 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 J , Ρ Ο 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 1を用いて詳細を説明する。
まず、 上記のごとく、 前記逆位相腕振り角補正用摂動モデル制御則 2 3 0 a (式 h3 0 ) によって逆位相腕振り角補正用摂動モデル安定化モ ーメント要求値 Mafdmdが求められる。
次いで、 上体水平位置補正用摂動モデル 2 0 2を用いた上体水平位置 補正に起因する床反力モーメント鉛直成分摂動量 Mpz が、 上体水平位 置補正に起因する床反力モーメント鉛直成分摂動量算出部 2 3 0 bによ つて求められる。
具体的には、 次式によって求められる。
Mpz= (単純モデル上体質点位置
+補正用摂動モデル上体位置 Xc—目標 Z MP)
* (単純モデル上体質点水平加速度
+補正用摂動モデル上体加速度 d2Xc/dt2) 一 (単純モデル上体質点位置 一 目標 ZMP)
* (単純モデル上体質点水平加速度)
…式 h3 1
あるいは、 上式を近似した以下の式を用いても良い。
Mpz 補正用摂動モデル上体位置 Xc
* (単純モデル上体質点水平加速度
+補正用摂動モデル上体加速度 d2Xc/dt2)
+ (単純モデル上体質点位置一目標 Z MP)
* 補正用摂動モデル上体加速度 d2Xc/dt2)
…式 h3 2 次に、 前記床反力モーメント鉛直成分制約条件を無視して、 逆位相腕 振り角補正用摂動モデル安定化モーメント Maf を、 逆位相腕振り角補 正用摂動モデル安定化モーメント要求値 Mafdmd に一致させると共に、 目標 Z M Pまわりの目標床反力モーメント鉛直成分としてのコンプライ アンス制御用目標床反力モーメント鉛直成分を Maf と Mfullz と Mpz との総和に一致させたと仮定した場合に、 目標 Z M Pまわりに発生する 床反カモ一メント鉛直成分 Minzが演算部 2 3 0 cにより求められる。 この床反カモ一メント鉛直成分を無制限時補正目標床反力モーメント鉛 直成分 Minz と呼ぶ。 無制限時補正目標床反力モーメント鉛直成分 Minzは、 次式によって求められる。 Minz = Mafdmd + Mfullz + Mpz …式 h 3 3 すなわち、 無制限時補正目標床反力モーメント鉛直成分 Minz は、 逆 位相腕振り角補正用摂動モデル安定化モーメント要求値 Mafdmd とフ ルモデル床反力モーメント鉛直成分を 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=床反カモ一メント鉛直成分許容範囲下限値
床反力モーメント鉛直成分許容範囲下限値≤Minz、 且つ、 Minz≤床反 力モーメント鉛直成分許容範囲上限値である場合
Mltdz = Minz '
-"…式 h 3 4 次いで、 以下の式により、 逆位相腕振 角補正用摂動モデルモーメン ト Ma ( =逆位相腕振り角補正用摂動モデル安定化モーメント Maf) が Maf演算部 2 3 0 eにより求められる。 Ma = Mltdz - (Mfullz + Mp z) …式 h 3 5 すなわち、 Maf 演算部 2 3 0 eでは、 制限補正目標床反力モーメン ト鉛直成分 Mltdz から、 フルモデル床反力モーメント鉛直成分 Mfullz と上体水平位置補正用摂動モデルモーメント鉛直成分 Mpz とを減じる ことによって、 逆位相腕振り角補正用摂動モデル安定化モーメント Maf としての逆位相腕振り角補正用摂動モデルモーメント Maが得られ る。
一方、 目標 ZMPまわりのコンプライアンス制御用目標床反力モ一メ ント鉛直成分として制限補正目標床反力モーメント鉛直成分 Mltd が出 力される。
すなわち、 次式 h3 5に従って、 目標 Z MPまわりの補正目標床反力 モーメント鉛直成分が床反力モーメント鉛直成分 (目標 ZMPまわりの モーメント鉛直成分) の最終的な目標瞬時値として決定され、 これらが 出力される。 コンプライアンス制御用目標床反カモ一メント鉛直成分
=制限補正目標床反力モーメント鉛直成分 Mltdz
…式 h3 6 以上のごとく、 逆位相腕振り角補正用摂動モデルモーメント決定部 2 3 0の処理が行われた後、 逆位相腕振り角補正用摂動モデルモーメント Ma は、 図 6 7の逆位相腕振り角補正用.モデル 2 3 1に入力され、 その 入力された逆位相腕振り角捕正用摂動モデルモーメント Ma に釣り合う 補正用摂動モデル逆位相腕振り角 0caが、 式 a2 3c を用いて (積分す ることによって) 算出される。
次いで、 演算部 2 3 2にて、 次式 h3 7に従って、 補正目標逆位相腕 振り角が決定され、 これが逆位相腕振り角の最終的な目標瞬時値として 出力される。 補正目標逆位相腕振り角
=単純化モデル逆位相腕振り角
+補正用摂動モデル逆位相腕振り角 0ca …式 h 3 7 すなわち、 単純化モデル逆位相腕振り角に補正用摂動モデル逆位相腕 振り角 0 ca を加えることにより補正目標逆位相腕振り角が得られる、 これが最終的な目標逆位相腕振り角として出力される。
以上のごとく、 S 3 5 3 6の歩容補正が行われる。
尚、 補足すると、 本実施形態は、 フィードフォワード型の補正であり、 また、 摂動動力学モデルは厳密モデルではない。 このため、 上記のごと く式 h 5、 式 h 6および式 h 1 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、 補正用摂動モデル上体姿 勢傾斜角 Θ cおよび補正用摂動モデル逆位相腕振り角 0 caの算出が行な われる。 これにより各摂動モデル 2 0 2 , 2 0 3, 2 3 1の挙動の安定 性をより一層高めることができる。 なお、 上記のような単純化モデル 2 0 0の状態量の修正は、 歩容の生成途中で適宜行なってもよい。 逆に、 上記のような単純化モデル 2 0 0の状態量の修正や摂動モデルのリセッ トを、 歩容の生成途中に行なわなくてもよい。
また、 上記のような単純化モデル 2 0 0の状態量の修正は、 後述する 第 2、 第 3実施形態においても同様に行なわれる。
本実施形態では、 前記復元条件 3 ) を除く復元条件のすべてを満足す る。 この場合、 本実施形態では、 歩容生成装置 1 0 0に Mdmdz を入力 しないため、 復元条件 3 ) の代わりに次の復元条件 3 ' ) が満足される。 復元条件 3 ' ) 修正歩容の床反力モーメント鉛直成分 (これは、 コン プライアンス制御用目標床反力モーメン,ト鉛直成分に相当する) が、 床 反力モーメント鉛直成分許容範囲を越えないこと。
さらに、 第 3参考例の作用効果に加え、 前記復元条件 1, 2, 3 ', 4〜7を満足するように上体水平位置、 上体姿勢傾斜角および逆位相腕 振り角を決定する際に、 演算量を比較的少ないものとすることができる。 以上説明した第 1実施形態は、 本発明の第 1〜第 3発明、 第 5〜第 8 発明、 および第 1 1〜第 1 3発明の実施形態になっている。 この場合、 第 1実施形態における床反力モーメント鉛直成分が制御対象量に相当す る。 また、 第 1実施形態における歩容生成用 (フルモデル補正用) の床 反カモ一メント鉛直成分許容範囲 [Mzmin,Mzmax]が制限対象量の許容 範囲に相当する。 また、 単純化モデル歩容の運動成分が目標運動の仮瞬 時値に対応し、 これを S 3 5 3 6で修正したものが目標 ¾動の瞬時値に 対応する。 また、 発明における動力学モデルは、 フルモデル (逆位相腕 振り角補正用摂動モデルを含む) が相当する。 そして、 前記逆位相腕振 り角補正用摂動モデルモーメント M aが第 3発明における摂動モデル操 作量、 補正用摂動モデル逆位相腕振り角 0 ca が第 3発明における目標 運動の補正量に相当する。 さらに、 第 1実施形態における、 無制限時補 正目標床反力モ一メント鉛直成分 Minzが第 Ί発明における制限対象量 の推定値、 逆位相腕振り角補正用モデル安定化モーメント Mafdmd が 摂動モデル操作量の要求値に相当する。 さらに、 第 1実施形態における フルモデル床反力モーメント鉛直成分 Mfullz に上体水平位置補正に起 因する床反力モーメント鉛直成分 Mpz を加えたものが、 モデル制限対 象量瞬時値に相当する。
なお、 前記第 1実施形態においては、 Mafdmdは定常的に 0となるも のでは無いが、 これを定常的に 0とすれば、 本発明のうちの第 4発明の 実施形態が構成されることとなる。
次に本発明の第 2実施形態を以下に図 7 2及び図 7 3を参照して説明 する。 第 2実施形態に係る装置の補正手法は、 前記第 1実施形態のもの と歩容生成装置 1 0 0の処理 (図 6 6の S 3 5 3 6の処理〉 のみが相違 するものであり、 フルモデルフィードバック補正型である。 また、 逆動 力学フルモデル (逆フルモデル) を用いる手法で、 かつ単純化モデル歩 容の入力を補正しない手法であり、 かつ摂動モデルを用いる手法である。
図 7 2は、 この第 2実施形態に係る装置の動作、 具体的には、 図 6 6 のフローチャートの S 3 5 3 6の歩容の修正手法を説明する機能ブロッ ク図である。 ただし、 図 7 2の単純化モデル 2 0 0は、 前記第 1実施形 態と同様、 単に動力学モデルだけでなく、 図 6 6の S 3 5 1 0から S 3
5 3 2の処理、 すなわち単純化モデル歩容瞬時値の算出 (決定) 処理を 表す。 したがって、 図 7 2において、 単純化モデル 2 0 0から先の部分 が S 3 5 3 6の処理に相当する。 なお、 図 7 2の機能部分のうち、 第 1 実施形態に係る図 6 7と同一の機能分については、 図 6 7と同一の参照 符号を用い、 詳細な説明を省略する。
S 3 5 3 6の処理以外の構成は第 3実施形態と同じであるので説明を 省略し、 以下に図 7 2を用いて S 3 5 3 6の処理を詳細に説明する。
S 3 5 3 6では、 まず、 前述のごとく図 6 6の S 3 5 3 2で求めた単 純化モデル歩容の目標上体水平位置の瞬時値 (現在時刻 tの制御周期で 求めた仮瞬時値) に、 前回制御周期 (時刻 t 一 A t ) で後述のごとく算 出した補正用摂動モデル上体水平位置 Xc を演算部 2 0 5により加える ことにより、 最終的な目標上体水平位置 (補正目標上体水平位置) が求 められる。 また、 図 6 6の S 3 5 3 2で求めた単純化モデル歩容の目標 上体姿勢傾斜角の瞬時値 (現在時刻 tの制御周期で求めた仮瞬時値) に、 前回制御周期 (時刻 t 一 A t ) で算出した後述する補正用摂動モデル上 体姿勢傾斜角 0 c を演算部 2 0 4により加えることにより、 最終的な目 標上体姿勢傾斜角 (補正目標上体姿勢傾斜角) が求められる。 また、 図
6 6の S 3 5 3 2で求めた単純化モデル歩容の目標逆位相腕振り角の瞬 時値 (現在時刻 tの制御周期で求めた仮瞬時値) に、 前回制御周期 (時 刻 t _ Δ t ) で算出した後述する補正用摂動モデル逆位相腕振り角 Θ ca を演算部 2 3 2により加えることにより、 最終的な目標逆位相腕振り角 (補正目標逆位相腕振り角) が求められる。
そして、 これらの補正目標上体水平位置、 補正目標上体姿勢傾斜角お よび補正目標逆位相腕振り角が、 それぞれ上体水平位置、 上体姿勢傾斜 角および逆位相腕振り角の最終的な目標瞬時値として出力される。 すなわち、 前記式 h 2 4、 式 h 2 5、 式 h 3 7により、 補正目標上体 水平位置と補正目標上体姿勢傾斜角と補正目標逆位相腕振り角とが求め られる。
次いで、 上記の如く単純化モデル歩容を補正して得られた目標上体水 平位置 (補正目標上体水平位置)、 目標上体姿勢傾斜角 (補正目標上体 姿勢傾斜角)、 目標逆位相腕振り角 (補正目標逆位相腕振り角)、 および 前述のごとく得られた単純化モデル歩容の目標重心位置、 目標足平位置 姿勢、 目標腕姿勢などの運動変数の瞬時値と目標 Z M Pの瞬時値とを、 前記逆動力学フルモデル 2 0 1に入力し、 その入力された運動変数で表 される運動に釣り合う (すなわち運動によって逆フルモデル 2 0 1が発 生する) 床反力水平成分と目標 Z M Pまわりの床反力モーメント (水平 成分および鉛直成分) とが算出される。 従って、 本実施形態では、 逆フ ルモデル 2 0 1には、 単純化モデル上体水平位置、 上体姿勢傾斜角、 逆 位相腕振り角に加えて、 補正用摂動モデル上体水平位置 Xc と補正用摂 動モデル上体姿勢傾斜角 Θ cと補正用摂動モデル逆位相腕振り角 0 caと が追加的に入力される。 以降、 第 1実施形態と同様、 逆フルモデル 2 0 1により算出された床反力水平成分、 床反力モーメント水平成分、 床反 力モーメント鉛直成分、 をそれぞれフルモデル床反力水平成分 Ffullxy フルモデル床反力モーメント水平成分 Mfullxy、 フルモデル床反力モー メント鉛直成分 Mfullzと呼ぶ。
フルモデル床反力水平成分 Ffull は、 補正目標床反力水平成分 (現在 時刻 t における床反力水平成分の最終的な目標瞬時値) として出力され る。
すなわち、 以下の式により、 補正目標床反力水平成分が決定されて出 力される。 2 1 補正目標床反力水平成分 =フルモデル床反力水平成分 Ffull
…式 h 4 8 以上の処理からわかるように、 本実施形態では、 フルモデル補正歩容 は、 単純化モデル歩容に上体水平位置補正用摂動モデル 2 0 2の挙動と 上体姿勢傾斜角補正用摂動モデル 2 0 3の挙動と逆位相腕振り角補正用 摂動モデル' 2 3 1の挙動とを加えたものになる。 さらに、 上体傾斜モー ドが発生する床反力水平成分および逆位相腕振りモードが発生する床反 力水平成分がいずれも 0であることを考慮すると、 次式が成立する。 た だし、 単純化モデル床反力水平成分は、 単純化モデル歩容の運動によつ て発生する床反力を逆フルモデル 2 0 1を用いて算出したものの並進力 水平成分である。 フルモデル床反力水平成分 Ffull
=単純化モデル床反力水平成分
+上体水平位置補正用摂動モデル床反力,水平成分 Fp
…式 h 5 1 次いで、 上体水平位置補正用摂動モデル制御則 2 0 6により、 上体水 平位置補正用摂動モデル安定化モーメント要求値 Mpfdmd が決定され る。 本実施形態における上体水平位置補正用摂動モデル制御則 2 0 6は、 特願 2 0 0 1 - 1 3 3 6 2 1号で本願出願人が提案した如く、 設定され る。 例えば、 次式のように該制御則 2 0 6が決定される。 上体水平位置補正用摂動モデル安定化モーメント要求値 Mpfdmd
= Kpg *重心差 + Kvg *補正用摂動モデル上体水平速度 dXc/dt …式 h 5 2 ただし、 重心差は、 次式で求められる。 重心差 =フルモデル重心水平位置 -単純化モデル重心水平位置
…式 h 5 3 式 h 5 2における Kpg、 Kvgはフィードバック制御則のゲインであり、 フルモデル重心水平位置、 単純化モデル重心水平位置および補正用摂動 モデル上体水平速度 dXc/dt は、 それぞれ、 前回 (時刻 t 一 Δ t ) に後 述のごとく算出したフルモデル歩容瞬時値の重心水平位置、 単純化モデ ル歩容瞬時値の重心水平位置 (単純化モデル歩容の瞬間姿勢を基に単純 化モデルを用いて計算される重心水平位置 XGs)、 および補正用摂動モ デル上体水平速度 dXc/dtである。
即ち、 フルモデル重心水平位置から単純化モデル重心水平位置を減算 して得た重心差と摂動モデルの状態量のひとつである摂動モデル上体速 度とに基づいて摂動モデル制御用フィードバック量 (操作量) を演算す るようにした。 かかる摂動モデル制御則,により、 前記重心差の時間的平 均値を、 ほぼ 0に制御することができる。
次いで、 上体姿勢傾斜角補正用摂動モデル制御則 2 0 7により、 上体 姿勢補正用摂動モデル安定化モーメント要求値 Mrfdmd が決定される。 これは、 第 1実施形態と同様の制御則を用いれば良い。 従って、 該制御 則 2 0 7としては、 例えば前記式 h i 1が用いられる。
次いで、 無制限時補正目標床反力モーメント Minが Min演算部 2 0 9により求められる (推定される)。 無制限時補正目標床反力モーメン ト Min は、 第 1実施形態と同様、 前記制約 (Z M P制約条件および床 反力水平成分制約条件) を無視して、 上体水平位置補正用摂動モデル安 定化モーメント Mpf を上体水平位置補正用摂動モデル安定化モ一メン ト要求値 Mpfdmd に一致させ、 かつ、 上体姿勢傾斜角 ffi正用摂動モデ ル安定化モーメント Mrf を、 上体姿勢傾斜角補正用摂動モデル安定化 モーメント要求値 Mi'fdmd に一致させると共に、 目標 Z M Pまわりの 目標床反カモ一メントとしてのコンプライアンス制御用目標床反力モー メント水平成分を補償全床反カモ一メント水平成分 Mdmdxy と Mpf と Mrf との総和に一致させた場合に、 目標 Z M Pまわりに発生する床反力 モ一メント水平成分である。
無制限時補正目標床反力モーメント水平成分 Min は、 第 1実施形態 と同様、 前記式 h i 3の演算によって求められる。 すなわち、 無制限時 補正目標床反力モーメント水平成分 Min は、 上体水平位置補正用摂動 モデル安定化モーメント要求値 Mpfdmd と上体姿勢傾斜角補正用摂動 モデル安定化モーメント要求値 Mrfdmd と補償全床反力モーメント水 平成分 Mdmdxyとを加算することにより得られる。 '
さらに、 Fin演算部 2 1 0により、 無制限時補正目標床反力水平成分 Fin も求められる (推定される)。 無制限時補正目標床反力水平成分 Fin は、 第 1実施形態と同様、 前記制約 (Z M P制約条件および床反力 水平成分制約条件) を無視して、 上体水平位置補正用摂動モデル安定化 モーメント Mpf を上体水平位置補正用摂動モデル安定化モーメント要 求値 Mpfdmd に一致させ、 かつ、 上体姿勢傾斜角補正用摂動モデル安 定化モーメント Mrf を、 上体姿勢傾斜角補正用摂動モデル安定化モー メント要求値 Mrfdmd に一致させると共に、 コンプライアンス制御用 目標床反力モーメント水平成分を補償全床反力モーメン ト水平成分 Mdmdxy と Mpf と Mrf との総和に一致させたとした場合に、 逆フルモ デル 2 0 1が発生する床反力水平成分 (Ffullに相当) である。
無制限時補正目標床反力水平成分 Fin は、 第 1実施形態とは異なり、 次式により求められる。 無制限時補正目標床反力水平成分 Fin
=フルモデル床反力水平成分 Ffull
+ 1/h
* (上体水平位置補正用摂動モデル安定化モーメント要求値 Mpfdmd 一上体水平位置補正用摂動モデル安定化モーメント Mpf)
…式 h 5 4 ただし、 上体水平位置補正用摂動モデル安定化モーメント Mpf は前 回値 (時刻 t — A tでの値) が用いられる。 すなわち、 上体水平位置補 正用摂動モデル安定化モーメント要求値 Mpfdmd と上体水平位置補正 用摂動モデル安定化モーメント Mpf の差を求め、 上体水平位置補正用 摂動モデルの入力を前記差だけ増加させることに起因するフルモデル床 反力水平成分 Ffullの増加量を、 前記差を上体並進モ一ド床反力比率 h で割ることにより推定する。 さらに、 これにフルモデル床反力水平成分 Ffull を加えることにより、 無制限時補正目標床反力水平成分 Fin が推 定される。
次いで、 第 1実施形態と同様の制限手段 (制限処理部 2 1 1 ) によつ て、 無制限時補正目標床反力モーメント水平成分 Min と無制限時補正 目標床反力水平成分 Fin とから、 前記制約 ( Z M P制約条件および床 反力水平成分制約条件) を満足するように、 これらに制限を加えた値で ある (目標 Z M Pまわりの) 制限補正目標床反力モーメント水平成分 Mltdと制限補正目標床反力水平成分 Fltd とが決定される。 この処理手 法は、 第 1実施形態と同一である。
本実施形態においても、 コンプライアンス制御用目標床反力モーメン ト水平成分は制限補正目標床反力モーメント水平成分 Mltd に一致され、 また、 補正目標床反力水平成分は制限補正目標床反力水平成分 Fltd に ほぼ一致するので、 上記のごとく制限補正目標床反力モーメント水平成 分 Mltd と制限補正目標床反力水平成分 Fltd とを決定することによつ て、 コンプライアンス制御用目標床反カモ一メント水平成分および補正 目標床反力水平成分は、 それぞれ Z M P制約条件および床反力水平成分 制約条件をほぼ満足する。
次いで、 Mpf 演算部 2 1 5 によって、 上体水平位置補正用摂動モデ ル安定化モーメント Mpf が求められる。 さらに詳細には、 制限補正目 標床反力水平成分 Fltd からフルモデル床反力水平成分 Ffull を減じた 値にゲイン Kc を乗じたものを積分器 2 1 5 aにて積分し、 さらに得ら れた積分値に上体並進モード床反力比率 hを乗じることにより、 上体水 平位置補正用摂動モデル安定化モーメント Mpf が求められる。 すなわ ち、 次式により、 上体水平位置補正用摂動モデル安定化モーメン ト Mpfが得られる。 ' Mpf= * 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 Z 0 0 4 3 5の通りであるので、 ここでの説明は以上に留める。
本実施形態ではさらに、 逆位相腕振り角補正用摂動モデルモーメント 決定部 2 3 0 において、 逆位相腕振り角モーメント補正用摂動モデル Maが決定される。
さらに逆位相腕振り角補正用摂動モデルモーメント Maが逆位相腕振 り角補正用摂動モデルに入力されて、 補正用摂動モデル逆位相腕振り角 Θ caが決定される。
以下に、 本実施形態での逆位相腕振り角補正用摂動モデルモーメント 決定部 2 3 0の動作についてその機能プロック図である図 7 3を用いて 詳細を説明する。
まず、 逆位相腕振り角補正用摂動モデル制御則により、 逆位相腕振り 角補正用摂動モデル安定化モーメント要求値 Mafdmd が決定される。 これは、 第 1実施形態と同様の制御則を用いれば良い。 従って、 該制御 則としては、 例えば前記式 h 3 0が用いられる。
次いで、 演算部 2 3 0 gにおいて、 フルモデル床反カモ一メント鉛直 成分 Mfullz と逆位相腕振り角補正用摂動モデル安定化モーメント要求 値 Mafdmd との和から逆位相腕振り補正用摂動モデルモーメント Ma の前回値 (後述する積分器の出力) を減じることによって無制限時補正 目標床反力モーメント鉛直成分 Minz を求める。 次いで、 制限手段 (制 限処理部) 2 3 O hにおいて、 無制限時補正目標床反力モーメント鉛直 成分 Minz を床反力鉛直成分モーメント許容範囲を越えないように制限 を加えることにより. (すなわち図示する飽和特性関数に通して)、 制限 時補正目標床反力モーメント鉛直成分 Mltdz を求める。 次いで、 フル モデル床反力モーメント鉛直成分 Mfullz と逆位相腕振り角補正用摂動 モデル安定化モーメント要求値 Mafdmd との和を制限時補正目標床反 力モ一メント鉛直成分 Mltdz から減じた値を積分器 2 3 0 i により、 積分ゲイン Kaで積分することにより逆位相腕振り補正用摂動モデルモ —メント Maを求めて、 これを出力する。 また、 制限時補正目標床反力 モーメント鉛直成分 Mltdz をコンプライアンス制御用目標床反力モー メント鉛直成分として出力する。
以上のごとく、 逆位相腕振り角補正用摂動モデルモーメント決定部 2 3 0において、 逆位相腕振り補正用摂動モデルモーメント Maとコンプ ライアンス制御用目標床反カモ一メント鉛直成分が決定される。
求めた補正用摂動モデル上体位置 Xc、 補正用摂動モデル上体姿勢傾 斜角 0 c、 補正用摂動モデル逆位相腕振り角 0 ca、 上体水平位置補正用 摂動モデル安定化モーメント Mpf および逆位相腕振り補正用摂動モデ ルモーメント Maは、 前述のごとく次回制御周期 (時刻 t + A t ) にお いて、 前回値として用いられる。 '
残余の構成および処理は、 第 1実施形態と同一である。 この第 2実施 形態によれば、 第 1実施形態と同様の作用効果を奏することができる。 以上説明した第 2実施形態は、 本発明のうちの第 1〜第 3発明、 第 5 〜第 1 3発明の実施形態になっている。 この場合、 第 2実施形態におけ る床反力モーメント鉛直成分が制御対象量に相当する。 また、 第 2実施 形態における歩容生成用 (フルモデル補正用) の床反力モーメント鉛直 成分許容範囲 [MZmin,Mzmax]が制限対象量の許容範囲に相当する。 ま た、 単純化モデル歩容の運動成分が目標運動の仮瞬時値に対応し、 これ を S 3 5 3 6で修正したものが目標運動の瞬時値に対応する。 また、 発 明における動力学モデルは、 フルモデル (逆位相腕振り角補正用摂動モ デルを含む) が相当する。 そして、 前記逆位相腕振り角補正用摂動モデ ルモーメント M aが第 3発明における摂動モデル操作量、 補正用摂動モ デル逆位相腕振り角 0 ca が第 3発明における目標運動の補正量に相当 する。 さらに、 第 2実施形態における、 無制限時補正目檩床反力モ一メ ント鉛直成分 Minzが第 7発明における制限対象量の推定値、 逆位相腕 振り角補正用モデル安定化モーメント Mafdmd が摂動モデル操作量の 要求値に相当する。 さらに、 第 2実施形態におけるフルモデル床反カモ 一メント鉛直成分 Mfullz が、 モデル制限対象量瞬時値に相当する。 ま た、 第 2実施形態では、 第 9発明の如く、 目標運動の補正量 (補正用摂 動モデル逆位相腕振り角 Θ ca) が動力学モデルであるフルモデルに追加 的に入力される。
なお、 前記第 2実施形態においては、 Mafdmdは定常的に 0となるも のでは無いが、 これを定常的に 0とすれば、 本発明のうちの第 4発明の 実施形態が構成されることとなる。
次に、 本発明の第 3実施形態を図 7 4および図 7 5を参照して説明す る。 第 3実施形態は、 前記第 1および第 2実施形態で用いた逆動力学フ ルモデル (逆フルモデル) 2 0 1に代えて、 順動力学モデル (より正確 には擬似順動力学モデル) を用いて歩容を修正しつつ生成する手法であ る。
図 7 4は、 この第 3実施形態に係る装置の動作を説明する機能ブロッ ク図である。 同図 7 4に示すように、 本実施形態では、 擬似順フルモデ ル (擬似順動力学フルモデル) 2 2 2を備えている。
この擬似順フルモデル 2 2 2は、 上体水平位置安定化モーメント要求 値 Mpfdmd、 上体姿勢傾斜角安定化モーメント要求値 Mrfdmd、 逆位相 腕振り角安定化モーメント要求値 Mafdmd、 目標 Z M P、 目標床反力鉛 直成分、 および補償全床反力モーメント水平成分 Mdmdxy と、 目標足 平位置姿勢および目標腕姿勢など上体 3を除く部位の運動状態とを入力 として、 目標上体鉛直位置、 目標上体水平位置、 目標上体姿勢傾斜角、 目標逆位相腕振り角、 目標 Z M Pまわりの目標床反力モーメントとして のコンプライアンス制御用目標床反力モーメント (水平成分および鉛直 成分)、 および目標床反力水平成分を出力するモデルである。 なお、 擬 似順フルモデル 2 2 2の目標値入力は、 前記図 6 4を参照して説明した 如く、 歩容パラメ一夕決定部 1 0 0 aで決定される歩容パラメ一夕を基 に、 目標瞬時値発生部 1 0 0 bにより生成される。
上記擬似順フルモデル 2 2 2は、 具体的には図 7 5の機能ブロック図 で表され、 図 7 5の破線で囲った部分が擬似順フルモデル 2 2 2に相当 する。 なお、 この機能ブロック図で前記第 2実施形態の図 7 2と同一機 能部分については、 図 7 2と同一の参照符号を用いている。
ここで、 同図 7 5の単純化モデル 2 0 0は、 単に動力学モデルだけで なく、 前述の図 6 6の S 3 5 1 0から S 3 5 3 2の処理、 'すなわち単純 化モデル歩容瞬時値の算出 (決定) 処理を表す。 また、 S 3 5 3 2の今 回歩容瞬時値 (単純化モデル歩容瞬時値) の算出 (決定) 処理において は、 前記第 1実施形態で説明したように.目標 Z M Pまわりのモデル操作 床反カモ一メント水平成分を 0として歩容の瞬時値を生成した上で、 さ らに第 1実施形態において述べた上体姿勢傾斜角補正用摂動モデルモー メント Mr に相当する単純化歩容上体姿勢傾斜角補正用モーメント Mr (前回値) を発生する上体傾斜モ一ドの摂動運動と第 1実施形態におい て述べた上体水平位置補正用摂動モデルモーメント Mp に相当する単純 化モデル上体水平位置補正用モーメント Mp (前回値) を発生する上体 並進モードの摂動運動と第 1実施形態において述べた逆位相腕振り角補 正用摂動モデルモーメント Maに相当する単純化モデル逆位相腕振り角 補正用モーメント Ma (前回値) を発生する逆位相腕振りモードの摂動 運動を付加する。 これにより、 単純化モデル 2 0 0が出力する歩容の瞬 時値を補正する。
より具体的に説明すると、 本実施形態における図 6 6の S 3 5 3 2の 処理においては、 そのサブルーチン処理である図 5 7の S 3 4 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* d2 Θ by/dt2 という式に基づいて求められる上体姿勢傾斜角加 速度 (d20 by/dt2) を摂動分として加えてなる上体姿勢傾斜角加速度 を今回歩容の初期から現在時刻 tまで 2階積分することにより、 現在時 刻!:における上体姿勢傾斜角の瞬時値が求められる。 また、 図 5 7の S 3 4 1 4において、 単純化モデル 2 0 0.で求めた逆位相腕振り角加速度 に、 前記式 0 3 z の右辺第 8項を Ma (前回値) に等しいとした式、 す なわち、 Ma= Jaz* d20 az/dt2 という式に基づいて求められる逆位相 腕振り角加速度 (d20 az/dt2)を摂動分として加えてなる逆位相腕振り 角加速度を今回歩容の初期から現在時刻 tまで 2階積分することにより、 現在時刻 t における逆位相腕振り角の瞬時値が求められる。
補足すると、 上体水平位置と上体姿勢傾斜角については、 サジ夕ルプ レーン上の瞬時値について述べたが、 ラテラルプレーン上の瞬時値も同 様に求める。
図 7 5において、 単純化モデル 2 0 0から先め部分が S 3 5 3 6の処 理に相当する処理を実行する部分である。 以下に図 7 5を用いて S 3 5 3 6の処理を詳細に説明する。
S 3 5 3 6では、 まず、 S 30 3 2において上記の如く単純化モデル 上体水平位置補正用モ一メント Mp (詳しくは時刻 ( t一 Δ t ) の制御 周期での前回値) を基に補正された単純化モデル水平上体位置が目標上 体水平位置 (時刻 tでの上体水平位置の最終的な目標瞬時値) として出 力される。 また、 単純化モデル上体姿勢傾斜角補正用モーメント Mr (詳しくは峙刻 ( t一 A t) の制御周期での前回値) を基に補正された 単純化モデル上体姿勢傾斜角が目標上体姿勢傾斜角 (時刻 tでの上体姿 勢傾斜角の最終的な目標瞬時値) として出力される。 また、 単純化モデ ル逆位相腕振り角補正用摂動モデルモーメント Ma (詳しくは時刻 ( t -A t ) の制御周期での前回値) を基に補正された単純化モデル逆位相 腕振り角が目標逆位相腕振り角 (時刻 tでの逆位相腕振り角の最終的な 目標瞬時値) として出力される。 '
すなわち、 式 hl 0 0、 式 hl 0 1、 式 hl 02により、 最終的な目 標上体水平位置と目標上体姿勢傾斜角とが決定される。 目標上体水平位置 =単純化モデル上体水平位置 …式 hi 0 0 目標上体姿勢傾斜角 =単純化モデル上体姿勢傾斜角 …式 hi 0 1 目標逆位相腕振り角-単純化モデル逆位相腕振り角 …式 hi 02 次いで、 目標上体水平位置 (すなわち単純化モデル上体水平位置)、 目標上体姿勢傾斜角 (すなわち単純化モデル上体姿勢傾斜角)、 目標逆 位相腕振り角 (すなわち単純化モデル逆位相腕振り角) および前述のご とく得られた単純化モデル歩容の目標全体重心位置、 目標足平位置姿勢、 目標腕姿勢などの運動変数の瞬時値と目標 ZMPの瞬時値とを、 前記逆 動力学フルモデル (逆フルモデル) 2 0 1に入力し、 入力された運動変 数で表される運動に釣り合う (すなわち運動によって逆フルモデル 2 0 1が発生する) 床反力水平成分と目標 Z M Pまわりの床反力モーメント (水平成分および鉛直成分) とが算出される。 以降、 第 4実施形態と同 様、 これらの算出された床反力水平成分、 床反力モーメント水平成分お よび床反力モーメント鉛直成分をそれぞれフルモデル床反力水平成分 FfulK フルモデル床反力モーメント水平成分 Mfullxy、 床反力モーメ ント鉛直成分 Mfullzと呼ぶ。
第 2実施形態と同様、 フルモデル床反力水平成分 Ffull は、 目標床反 力水平成分 (時刻 tでの床反力水平成分の最終的な目標瞬時値) として 出力される。
本実施形態では、 上体姿勢傾斜角補正用摂動モデルと上体水平位置補 正用摂動モデルと逆位相腕振り角補正用摂動モデルとを備えないので、 上体水平位置補正用摂動モデル制御則と上体姿勢傾斜角補正用摂動モデ ル制御則と逆位相腕振り角補正用摂動モデル制御則とに相当する処理は、 後述するように、 第 2実施形態とは異なる。
このことを除けば、 上記処理以降、 単純化モデル上体姿勢傾斜角補正 用モ一メント Mr と単純化モデル上体水平位置補正用モーメント Mp と 単純化モデル逆位相腕振り角補正用モーメント Maとを決定するまでは、 第 2実施形態において、 上体姿勢傾斜角補正用摂動モデルモーメント 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の処理は、 第 2実施形態 と同一である。 さらに、 逆位相腕振り角補正用摂動モデル制御則とに相 当する処理を除けば、 単純化モデル逆位相腕振り角補正用モ一メント決 定部 2 3 0の処理は、 前記第 2実施形態における逆位相 1Ϊ宛振り角補正用 摂動モデルモーメント決定部 2 3 0の処理と同一である。 なお、 本実施 形態では、 Mr、 Mpおよび Maは、 それぞれ第 2実施形態における上体 姿勢傾斜角補正用摂動モデルモーメント Mr と上体水平位置補正用摂動 モデルモーメント Mp と逆位相腕振り角補正用摂動モデルモーメント Ma とにそれぞれ対応するものであるが、 第 2実施形態のように摂動モ デルに入力するものではなく、 単純化モデル 2 0 0に入力するものであ る。 このため、 Mr、 Mpおよび Maの名称を本実施形態では、 単純化モ デル上体姿勢傾斜角補正用モーメント、 単純化モデル上体水平位置補正 用モーメント、 単純化モデル逆位相腕振り角補正用モーメントと称して いる。
上記のごとく求められた単純化モデル上体姿勢傾斜角補正用モーメン ト Mr と単純化モデル上体水平位置補正用モーメント Mp'と単純化モデ ル逆位相腕振り角補正用モ一メント Maとは、 前述のごとく次回制御周 期 (時刻 t + A t ) に、 単純化モデル歩容瞬時値の決定 (生成) 時に前 回値として用いられる。
残余の構成及び処理は、 第 2実施形態と同一である。
以下に、 上体姿勢傾斜角安定化モーメント要求値 Mrfdmd と上体水 平位置安定化モーメント要求値 Mpfdmd と逆位相腕振り角安定化モー メント要求値 Mafdmd との決定処理について図 7 4を参照して説明す る。
図 7 4に示すように、 本実施形態では、 前述したように擬似順フルモ デル 2 2 2に備える単純化モデル 2 0 0とは別の単純化モデル 2 2 3を 備えている。 この単純化モデル 2 2 3は、 本実施形態でのその機能は、 前述した単純化モデル 2 0 0と同一であり、 単に動力学モデルだけでな く、 前述の図 6 6の S 3 5 1 0から S 3 5 3 2の処理、 すなわち単純化 モデル歩容瞬時値の算出 (決定) 処理を表すものである。 なお、 単純化 モデル 2 2 3は、 実際上は、 上体姿勢傾斜角の瞬時値と、 上体水平位置 の瞬時値とを決定できればよく、 必ずしも図 6 6の S 3 5 1 0から S 3 5 3 2の処理の全てを行なう必要はない。
以下に図 7 4を用いて本実施形態における Mpfdmd および Mrfdmd の決定処理を詳細に説明する。
本実施形態においては、 単純化モデル 2 2 3を用いて生成される歩容 と前記擬似順動力学フルモデル 2 2 2を用いて前述の通り算出される歩 容との間の上体水平位置、 上体姿勢傾斜角および逆位相腕振り角のそれ ぞれの差が演算部 2 2 4, 2 2 5、 2 2 8により求められる。 そして、 これらの差に応じて、 これらの差が 0に収束するように P I Dなどのフ イー ドバック制御則によって上体水平位置安定化モーメン ト要求値 Mpfdmd、 上体姿勢傾斜角安定化モ一メント要求値 Mrfdindおよび逆位 相腕振り角安定化モーメント要求値 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からの出力である目標上体鉛直位置、 目標上体水平位置、 目標 上体姿勢傾斜角、 目標逆位相腕振り角、 目標床反力水平成分およびコン プライアンス制御用目標床反力モーメント (水平成分および鉛直成分) を最終的な今回歩容の目標瞬時値として出力する。
以上説明した第 3実施形態によれば、 前記第 2実施形態と同様の作用 効果を奏することができる。
なお、 前記第 3実施形態では、 上体姿勢傾斜角安定モーメント要求値 Mrfdmd, 上体水平位置安定化モーメント要求値 Mpfdmdおよび逆位相 腕振り角安定化モーメント要求値 Mafdmd を擬似順フルモデル 2 2 2 のみに入力するようにしたが、 Mrfdmd、 Mpfdmdおよび Mafdmdを単 純化モデル 2 2 3に入力するようにしてもよく、 あるいは、 単純化モデ ル 2 2 3と擬似順フルモデル 2 2 2とに分配 · 供給するようにしてもよ い。
以上説明した第 3実施形態は、 本発明.のうちの第 2 7〜第 3 0発明の 実施形態となっている。 この場合、 第 3実施形態における床反力モーメ ント鉛直成分が制御対象量に相当する。 また、 第 3実施形態における歩 容生成用 (フルモデル補正用) の床反力モーメント鉛直成分許容範囲 [Mzmin,Mzniax]が制限対象量の許容範囲に相当する。 また、 単純化モ デル歩容の運動成分が目標運動の仮瞬時値に対応し、 これを S 3 5 3 6 で修正したものが目標運動の瞬時値に対応する。 また、 第 2 7発明の第 1動力学モデルおよび第 2動力学モデルにはそれぞれ図 7 4の単純化モ デル 2 2 3、 擬似順フルモデル 2 2 2が相当する。 なお、 第 3 0発明に おける第 1動力学モデル、 第 2動力学モデル、 第 3動力学モデルには、 それぞれ図 1 2の単純化モデル、 図 7 5の逆フルモデル、 図 7 4の単純 化モデル 2 2 3が相当する。 そして、 第 3実施形態にお(ナる逆位相腕振 り角安定化モーメント Mafdmd が第 2 7発明における床反力モ一メン トの操作量に相当し、 これはフルモデル (擬似順ダルモデル) に追加的 に入力される。
次に、 本発明の第 4実施形態を図 7 6を参照して説明する。 図 7 6は、 この発明の第 4実施形態に係る装置の動作、 具体的には、 図 6 6のフロ 一チャートの S 3 5 3 6の歩容の修正手法を説明する機能ブロック図で ある。 なお、 図 7 6では、 第 1実施形態もしくは第 2実施形態と同一機 能部分については、 図 6 7又は図 7 2と同一の参照符号を用いる。
第 4実施形態においては、 上体水平位置補正用摂動モデル 2 0 2と上 体姿勢傾斜角補正用摂動モデル 2 0 3と逆位相腕振り角補正用摂動モデ ル 2 3 1 とを備える。 また、 3つの分配器 2 2 0 , 2 2 1 , 2 4 1を備 える。
分配器 2 2 0, 2 2 1 , 2 4 1を定義すると、 いずれも、 1入力 2出 力の伝達ブロックであり、 入力に応じて、 一方の出力を決定し (例えば、 入力に周波数特性、 不感帯特性、 飽和特性などの信号処理を行って一方 の出力を決定し)、 2つの出力の和が入力に一致またはほぼ一致するよ うに、 他方の出力を決定する伝達ブロックである。
分配器 2 2 0には、 制限補正目標床反力モーメント水平成分 Mltdxy から、 上体水平位置補正用摂動モデル安定化モーメント Mpf と補償全 床反力モーメント水平成分 Mdmdxyとを減じたもの (Mr演算部 2 1 4 の出力) である上体姿勢傾斜角補正用モーメント Mrが入力され、 上体 姿勢傾斜角補正用摂動モデル 2 0 3に入力する上体姿勢傾斜角補正用摂 動モデル入力 Mri と、 単純化モデル 2 0 0に入力する単純化モデル上 体姿勢傾斜角補正用モーメント Mrs とに分配される。 この時、 上体姿 勢傾斜角補正用摂動モデル入力 Mri と単純化モデル上体姿勢傾斜角補 正用モーメント Mrs との和が上体姿勢傾斜角補正用モーメント Mr に 一致するように、 上体姿勢傾斜角補正用摂動モデル入力 Mri と単純化 モデル上体姿勢傾斜角補正用モーメント Mrs とが決定される (出力さ れる)。
より具体的には、 上体姿勢傾斜角補正用モーメント Mr に応じて、 上 体姿勢傾斜角補正用摂動モデル入力 Mri が決定される。 例えば、 上体 姿勢傾斜角補正用モーメント Mr を不感帯特性、 飽和特性、 あるいは周 波数特性を持つ信号処理を通して、 上体姿勢傾斜角補正用摂動モデル入 力 Mri が決定される。 また、 上体姿勢傾斜角補正用モーメント Mr か ら上体姿勢傾斜角補正用摂動モデル入力 Mri を差し引いたものが、 単 純化モデル上体姿勢傾斜角補正用モーメント Mrs としで決定される。 さらに具体的に説明すると、 本実施形態では、 分配器 2 2 0は、 例えば、 入力 (上体姿勢傾斜角補正用モ一メント Mr = 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に入力される。 これは、 前記第 3実施形態における図 7 5において、 単純化モデル上体姿勢傾斜 角補正用モーメント 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の出力) をローパスフィルタに通してなる低周波 成分 (直流分) を単純化モデル上体水平位置補正用モーメント Mps と して出力すると共に、 その入力 (積分器 2 1 7 aの出力) から Mps を 差し引いた成分を誤差補正モーメント Me として出力する。 この場合、 低周波成分 (直流分) である単純化モデル上体水平位置補正用モーメン ト Mps に関しては、 不感帯特性を持たせておき、 上記ローパスフィル 夕の出力が、 ある所定値を中心とする所定範囲内に存在する状態では、 Mpsが該所定値 (例えば 0 ) に維持されるようにしておく。
分配器 2 2 1の出力である誤差補正モーメント Me に上体水平位置補 正用モデル安定化モーメン卜 Mpf を Mp 演算部 2 1 7 bで加算するこ とにより上体水平位置補正用摂動モデルモーメント Mpが求められる。 そして、 上体水平位置補正用摂動モデルモーメント Mpは、 上体水平位 置補正用摂動モデル 2 0 2に入力され、 上体水平位置補正用摂動モデル
2 0 2により補正用摂動モデル上体水平位置 Xcが決定される。
分配器 2 2 1のもうひとつの出力である単純化モデル上体水平位置補 正用モーメント Mps は単純化モデル 2 0 0に入力される。 これは、 前 記第 3実施形態の図 7 5において、 単純化モデル上体水平位置補正用モ
—メント Mpを単純化モデル 2 0 0に入力することに相当するものであ る。
逆位相腕振り角補正用摂動モデルモーメント決定部 2 3' 0は、 第 2実 施形態において用いた図 7 3に示す逆位相腕振り角補正用摂動モデルモ 一メント決定部と同一である。 ただし、 図 7 3の出力である逆位相腕振 り角補正用摂動モデルモーメント 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により補正用摂動モデル逆位相腕 振り角 Θ caが決定される。
分配器 2 4 1のもうひとつの出力である単純化モデル逆位相腕振り角 補正用モ一メント Mas は単純化モデル 2 0 0に入力される。 これは、 前記第 3実施形態における図 7 5において、 単純化モデル逆位相腕振り 角補正用モ一メント Maを単純化モデル 2 0 0に入力することに相当す るものである。
単純化モデル 2 0 0は、 前記第 3実施形態と同様、 単純化モデル歩容 瞬時値の算出 (決定) 処理において、 目標 Z M Pまわりに床反力モーメ ント水平成分が発生しないように (モデル操作床反力モーメントを 0と して) 歩容の瞬時値を生成した上で、 単純化モデル上体姿勢傾斜角補正 用モーメント Mrs (前回値) を発生する上体傾斜モードの摂動運動を 付加し、 単純化モデル上体水平位置補正用モーメント Mps (前回値) を発生する上体並進モードの摂動運動を付加し、 さらに単純化モデル逆 位相腕振り角補正用モーメント Mas を発生する逆位相腕振りモードの 摂動運動を付加して、 歩容の瞬時値を補正する。
なお、 本実施形態では、 図 6 6の 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 の絶対値 が小さくなるので、 歩容パラメ一夕の修正量の絶対値も小さくなる。 その他の構成及び処理は、 第 2実施形態と同一である。 より詳しくは、 演算部 2 0 4 , 2 0 5 , 目標上体水平位置を演算する演算部、 Merr 演 算部 2 1 6、 上体姿勢傾斜角補正用摂動モデル制御則 2 0 7、 上体水平 位置補正用摂動モデル制御則 2 0 6 、 Min演算部 2 0 9、 Fin演算部 2 1 0、 制限処理部 2 1 1 、 Mpf 演算部 2 1 5、 逆位相腕振り角補正用 摂動モデルモーメン卜決定部 2 4 0の処理は、 前記第 2実施形態と同一 である。
なお、 本実施形態では、 前記第 1実施形態で説明したように今回歩容 の終端等で各摂動モデル 2 0 2、 2 0 3、 2 3 1の状態量により単純化 モデル 2 0 0の状態量を修正するような処理は行なう必要はない。 これ は、 分配器 2 2 0 , 2 2 1 , 2 4 1から単純化モデル上体姿勢傾斜角補 正用モーメント Mrs、 単純化モデル上体水平位置補正用モーメント
Mps 及び単純化モデル逆位相腕振り角補正用モ一メント Mas が追加入 力されるからである。
かかる本実施形態では、 前記第 2実施形態あるいは第 3'実施形態と同 様の作用効果を奏することができる。
なお、 本実施形態では、 各分配器 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 にすると、 第 2実施形態と同一の作用効果を奏することとなる (事実上、 第 2実施形態のものと同一構成となる)。
また、 誤差補正モーメント Me に上体水平位置補正用モデル安定化モ
—メント Mpf を加算した値を図示しない第 3の分配器に入力し、 その 出力の一方を上体水平位置補正用摂動モデルに入力し、 もう一方の出力 を単純化モデル上体水平位置補正用モーメント Mps に加算しても良い。 この場合、 分配器 2 2 1の出力である単純化モデル上体水平位置補正用 モーメント Mps を 0にしても良い。 すなわち、 分配器 2 2 1を省略し、 フルモデル床反力モーメント誤差 Merrにゲイン Kmを乗じた値を積分 して符号を反転した値を上体水平位置補正用モデル安定化モ一メント Mpf に加算した値を第 3の分配器に入力しても良い。
以上説明した第 4実施形態は、 本発明のうちの第 1〜第 3発明、 第 5 〜第 1 5発明、 第 1 7〜第 2 4発明、 並びに第 2 6発明の実施形態にな つている。 この場合、 第 4実施形態における床反力モーメント鉛直成分 が制御対象量に相当する。 また、 第 4実施形態における歩容生成用 (フ ルモ デル補正用 ) の 床反 力 モ ー メ ン ト 鉛 直成分許容範 囲 [MZmin,MzmaX]が制限対象量の許容範囲に相当する。 また、 単純化モ デル歩容の運動成分が目標運動の仮瞬時値に対応し、 これを S 3 5 3 6 で修正したものが目標運動の瞬時値に対応する。 また、 第 1〜第 3発明、 第 5〜第 1 4発明における動力学モデルはフルモデルが相当し、 第 1 5 発明、 第 1 7発明〜第 2 4発明、 および第 2 6発明における第 1動力学 モデル、 第 2動力学モデルはそれぞれ図. 1 2の単純化モデル、 フルモデ ルが相当する そして、 前記逆位相腕振り角補正用モーメント M aのう ちの Mai が第 3発明における摂動モデル操作量、 補正用摂動モデル逆 位相腕振り角 0 ca が第 3発明における目標運動の補正量に相当する。 さらに、 第 4実施形態における、 無制限時補正目標床反力モーメント鉛 直成分 Minzが第 7発明における制限対象量の推定値、 逆位相腕振り角 補正用モデル安定化モーメント Mafdmd が摂動モデル操作量の要求値 に相当する。 さらに、 第 4実施形態におけるフルモデル床反力モーメン ト鉛直成分 Mfullz が、 モデル制限対象量瞬時値に相当する。 また、 第 4実施形態では、 第 9発明の如く、 目標運動の補正量 (補正用摂動モデ ル逆位相腕振り角 0 ca) が動力学モデルであるフルモデルに追加的に入 力される。
また、 前記逆位相腕振り角補正用モ一メント M aが第 1 9発明におけ る床反力モーメン卜の操作量に相当し、 該 Maのうちの単純化モデル逆 位相腕振り角補正用モーメント Mas が第 1 4発明における床反カモ一 メン卜補正量に、 Mai が第 1 9発明における摂動モデル操作量に相当 する。 また、 第 4実施形態における逆位相腕振り角補正用モデル安定化 モーメント要求値 Mafdmd が床反力モーメントの操作量の要求値に相 当し、 補正用摂動モデル逆位相腕振り角 0 ca が第 1 8発明における目 標運動の補正量に相当する。 さらに、 第 4実施形態における、 無制限時 補正目標床反力モーメント鉛直成分 Minzが第 2 6発明における制限対 象量の推定値、 逆位相腕振り角補正用モデル安定化モーメント Mafdmd が摂動モデル操作量の要求値に相当する。 さらに、 第 4実施形態におけ るフルモデル床反力モーメント鉛直成分 Mfullz が、 モデル制限対象量 瞬時値に相当する。 また、 第 4実施形態では、 第 1 8発明の如く、 目標 運動の補正量 (補正用摂動モデル逆位相腕振り角 0 ca) が動力学モデル であるフルモデルに追加的に入力される.。
なお、 前記第 4実施形態においては、 Mafdmdは定常的に 0となるも のでは無いが、 これを定常的に 0とすれば、 本発明のうちの第 4発明、 第 1 6発明、 および第 2 5発明の実施形態が構成されることとなる。 なお、 以上説明した第 1〜第 4実施形態においては、 補償全床反カモ 一メント水平成分 Mdmdxy は、 上体姿勢角 · 角速度の代わりに、 全体 重心水平位置 ·速度など、 ロボッ ト 1の他の姿勢に関する状態量に基づ いて決定しても良い。
次に、 本発明に関連した第 4参考例を図 7 7から図 8 4を参照して説 明する。 この第 4参考例は後述する本発明の第 5実施形 Mに関連するも のである。
第 4参考例における制御ュニッ ト 6 0の機能ブロック図を図 7 7に示 す。 なお、 本実施形態では、 前記第 3参考例と同一構成部分もしくは同 一機能部分については第 3参考例と同一の参照符号を用いる。
第 4参考例では、 第 3参考例 (図 5 9参照) に比較して、 実ロボッ ト 1の滑りの有無を判定する滑り判定部 1 1 4が追加されている。 また、 滑り判定部 1 1 4から出力される滑り判定結果が歩容生成装置 1 0 0に 入力される。 歩容生成装置 1 0 0においては、 滑り判定結果が滑りあり と判定されると、 歩容パラメ一夕を基に決定される床反力水平成分許容 範囲および床反力モーメント鉛直成分許容範囲を狭める。 また、 歩容生 成装置 1 0 0は、 滑り判定結果が滑りなしと判定されると、 歩容パラメ
—夕を基に決定され1 ¾床反力水平成分許容範囲および床反力モーメント 鉛直成分許容範囲に戻す。 他の構成および処理に関しては、 前記第 3参 考例と同一である。
滑り判定部 1 1 4を、 その処理を表す,フローチヤ一トである図 8 0を 用いて詳細に説明すると、 まず、 S 5 2 1 0において、 スピン判定サブ ルーチンが実行される。 スピン判定サブルーチンでは、 そのフローチヤ —トである図 8 1の S 5 3 1 0に進み、 実上体姿勢角速度および関節角 指令 (検出値) を基に支持脚足平 2 2の対地角速度鉛直成分 c supz を 求める。 次いで S 5 3 1 2に進み、 足平 2 2の 6軸力センサ 5 0の検出 値 (実床反力) を基に、 支持脚に作用している実床反力モーメント鉛直 成分の時間的な変化率である支持脚床反力モーメント鉛直成分の変化率 dMsupactz/dt を求める。 次いで S 5 3 1 4に進み、 前記支持脚足平 2 2の対地角速度鉛直成分 o supz の絶対値がある'所定の値 o e を越えて いるか否かを判定する。 越えている場合には、 S 5 3 1 6に進み、 前記 支持脚床反力モーメント鉛直成分の変化率 dMsupactz/dt を前記支持脚 足平の対地角速度鉛直成分 supz で割って符号を反転した値である、 支持脚の見かけねじりばね定数 Ksupt を求める。 次いで S 5 3 1 8に 進み、 Ksupt がある所定の値 Ksuptmin よりも小さいか否かを判定し、 小さい場合には、 S 5 3 2 0に進み、 スピン判定結果を、 スピンありと 判定し、 そうでない場合には、 S 5 3 2 2に進み、 スピン判定結果を、 スピンなしと判定する。 また、 S 5 3 1 4において、 前記支持脚足平の 対地角速度鉛直成分 supz の絶対値が前記所定の値 e を越えていな いと判定された場合には、 S 5 3 2 4に進み、 スピン判定結果を、 スピ ンなしと判定する。 このようにスピンの有無を判定することで、 足平 2 2などの撓み (弾性変形) によって、 cosupz の絶対値がある所定の値 coe を超えたようなときに、 スピン有りと誤判定されるような事態が回 避される。 '
以上のごとく S 5 2 1 0の処理を完了した後、 S 5 2 1 2に進み、 並 進滑り判定サブルーチンが実行される。
並進滑り判定サブルーチンでは、 その.フローチヤ一トである図 8 2の S 5 4 1 0に進み、 実上体姿勢角速度、 加速度検出値および関節角指令 (検出値) を基に支持脚足平 2 2の対地並進速度水平成分 Vsupxyを求 める。 次いで S 5 4 1 2に進み、 足平 2 2の 6軸力センサ 5 0の検出値 (実床反力) を基に、 支持脚に作用している実床反力水平成分の時間的 な変化率である支持脚床反力水平成分の変化率 dFsupactxy/dt を求め る。 次いで S 5 4 1 4に進み、 前記支持脚足平の対地並進速度水平成分 Vsupxy の絶対値がある所定の値 Ve を越えているか否かを判定する。 越えている場合には、 S 5 4 1 6に進み、 前記支持脚床反力水平成分の 変化率 dFsupactxy/dt を前記支持脚足平 2 2の'対地並進速度水平成分 Vsupxy で割って符号を反転した値である、 支持脚の見かけせん断ばね 定数 Ksups(=(— dFsupactxy/dt)/Vsupxy)を求める。 次いで S 5 4 1 8 に進み、 Ksups がある所定の値 Ksupsmin よりも小さいか否かを判定 し、 小さい場合には、 S 5 4 2 0に進み、 並進滑り判定結果を、 並進滑 りありと判定し、 そうでない場合には、 S 5 4 2 2に進み、 並進滑り判 定結果を、 並進滑りなしと判定する。 また、 S 5 4 1 4において、 前記 支持脚足平の対地並進速度水平成分 Vsupxy の絶対値が前記所定の値 Ve を越えていないと判定された場合には、 S 5 4 2 4に進み、 並進滑 り判定結果を、 並進滑りなしと判定する。 このように並進滑りの有無を 判定することで、 足平 2 2などの撓み (弾性変形) によって、 K sups の絶対値がある所定の値 Ksupsmin を超えたようなときに、 並進滑り 有りと誤判定されるような事態が回避される。
以上のごとく S 5 2 1 2の処理を完了した後、 S 5 2 1 4に進み、 滑 り振動判定サブルーチンが実行される。 '
滑り振動判定サブルーチンでは、 そのフローチャートである図 8 3の 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 8に第 4参考例における歩容生成装置 1 0 0のメインルーチン処 理のフローチャートを示す。
同図 7 8おいて、 S 2 3 1 0から S 2 3 3 2までは、 第 3参考例のフ 口一チャート (図 6 0 ) の S 2 0 1 0から S 2 0 3 2までの処理と同一 の処理が行なわれる。
次いで S 2 3 3 4に進み、 修正歩容瞬時値決定サブル一チンが実行さ れる。
第 4参考例では、 修正歩容瞬時値決定サブルーチンでは、 元歩容に近 づくように目標 ZMPおよび逆位相腕振り復元角加速度パ夕一ンを修正 しつつ、 修正された目標 Z MPまわりにモデル操作床反力モーメント (水平成分および鉛直成分) が付加的に発生するように修正歩容瞬時値 が決定される。 ただし床反力許容範囲を滑り判定結果に応じて変更され、 この点が第 3参考例と相違する。
図 7 9に修正歩容瞬時値決定サブルーチンのフローチヤ一トを未す。 修正歩容瞬時値決定サブルーチンでは、 まず S 5 1 0 0から S 5 1 1 4 までの処理が、 第 3参考例の修正歩容瞬時値決定サブルーチンである図 6 1の S 2 1 0 0から S 2 1 1 2と同様に実行される。 次いで、 S 5 1 1 6に進み、 前記滑り判定部 1 1 4による滑り判定結果が滑りありであ るか否かを判定し、 前記滑り判定結果が滑りありの場合には、 S 5 1 1 8に進み、 許容範囲低減率 att を徐々に 0に近づける (実質的に連続的 に減少させる)。 尚、 許容範囲低減率 att は 0から 1までの値をとるも のとする。 S 5 1 1 6において前記滑り判定結果が滑り ¾しと判定され た場合には、 S 5 1 2 0に進み、 許容範囲低減率 att を徐々に 1に近づ ける (実質的に連続的に増加させる)。
次いで S 5 1 2 2に進み、 S 5 1 1 0および S 5 1 1 2で決定した床 反力水平成分と床反カモ一メント鉛直成分の許容範囲の上限値および下 限値である Fxmin, Fxmax, Mzminおよび Mzmax にそれぞれ許容範 囲低減率 attを乗じることにより、 床反力水平成分許容範囲と床反カモ —メント鉛直成分許容範囲を狭める。 以降、 この S 5 1 2 2で決定され る床反力水平成分許容範囲および床反カモ一メント鉛直成分許容範囲を 総称的に最終的床反力許容範囲という。 尚、 当然のことながら低減率が 1の場合には、 最終的床反力許容範囲は、 S 5 1 1 0および S 5 1 1 2 で決定した床反力水平成分と床反力モーメント鉛直成分の許容範囲 (以 下、 これらを元の床反力許容範囲ということがある) に 致し、 該元の 床反力許容範囲から狭まらない。
図 8 4に、 滑り判定結果に応じて、 許容範囲低減率 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に戻り、 歩容生成を続ける。 '
以上が、 第 4参考例における歩容生成装置 1 0 0の処理である。
上記のごとく、 第 4参考例においては、 床反力水平成分許容範囲およ び床反力モーメント鉛直成分許容範囲を滑り判定結果に応じて変更する ようにしたが、 床反力水平成分許容範囲および床反力モーメント鉛直成 分許容範囲のいずれか一方だけを変更するようにしても良い。
一般的に、 足平 2 2が床面上で平行に滑っている場合 (せん断方向に 滑っている場合) には、 スピン方向 (ョ一方向) のグリップ力も低下す る。 また逆に、 スピン方向 (ョ一方向) に滑っている場合には、 足平 2 2が床面上で平行に滑り易くなる。 したがって、 いずれかの滑りが検知 されたならば、 床反力水平成分許容範囲および床反力モーメント鉛直成 分許容範囲の両方を狭める ( 0にする) 方が滑りから回復する効果は高 い。
第 4参考例では、 歩容生成装置 1 0 0 として、 前記第 3参考例のもの を用いたが、 代わりに前記第 1〜第 4実施形態のいずれのものを用いて も良い。 前述のごとく、 第 1〜第 4実施形態においては、 床反力水平成 分許容範囲および床反カモ一メント鉛直成分許容範囲は、 単純化モデル 歩容用のものと歩容補正用 (フルモデル補正用) のものとの 2種類があ る。 これら許容範囲のすべてを変更するようにしても良い。 また、 そう しなく とも、 少なくとも、 歩容補正用のいずれかの許容範囲を滑り判定 結果に応じて、 変更するようにすべきである。 この場合、 例えば前記第 1実施形態において、 前記制限手段 (制限処理部) 2 1 1 , 2 3 0 dの 処理を実行する際に、 図 7 9の S 5 1 1 6〜 S 5 1 2 2の処理を行なつ て、 許容範囲を可変的に設定するようにすることで、 第 5実施形態が構 成されることとなる。 あるいは、 前記第 2〜第 4実施形態のいずれかに おいて、 前記制限手段 (制限処理部) 2 1 1 , 2 3 O hの処理を実行す る際に、 図 7 9の 3 5 1 1 6〜3 5 1 2 2の処理を行なつ'て、 許容範囲 を可変的に設定するようにして、 第 5実施形態を構成するようにしても よい。
なお、 前記第 1実施形態に許容範囲の可変的設定を適用した、 上記第 5実施形態は、 前記第 1実施形態と同様、 本発明のうちの第 1〜第 3発 明、 第 5〜第 8発明、 および第 1 1〜第 1 3発明の実施形態となること はもちろんであるが、 それに加えて第 3 3〜第 3 6発明の実施形態とな る。 また、 前記第 2〜第 4実施形態に許容範囲の可変的設定を適用した、 実施形態は、 第 2〜第 4実施形態と同様に本発明の実施形態となること に加えて、 第 3 3〜第 3 6発明の実施形態にもなる。
また、 第 4参考例および第 5実施形態においで、 滑りの判定方法とし ては、 実施の形態において挙げた方式以外にも、 以下のようないずれを 用いても良い。 あるいはこれらの結果を総合的に (論理和、 積などの論 理演算を用いてい) 判断しても良い。
1 ) 角速度検出器などを基に床に対する足平 2 2の角速度を求め、 この 値の絶対値がある所定の値を越えたら、 滑りが発生と判定する。
2 ) いずれかの脚体 2の床反力モーメントの絶対値がある所定の値を越 えたら、 滑りが発生と判定する。
3 ) 全床反力モーメント (両脚体 2, 2の床反力の合力のモーメント) の絶対値がある所定の値を越えたら、 滑りが発生と判定する。
4 ) 両脚支持期において、 全床反力モーメントの変化率と上体姿勢角速 度偏差との比に (— 1 ) を乗じた値がある所定の値 (両脚接地時ねじり 剛性) よりも小さいならば、 滑りが発生と判定する。
5 ) 視覚センサや空間フィルタ等を用いた非接触型の対地速度、 角速度 検出器、 あるいは接触型の対地速度、 角速度検出器の検出値 (推定値) の絶対値がある所定の値を越えたならば、 滑りが発生と判定する。 次に、 前記第 1〜第 5実施形態に係る.変形態様を以下に説明する。 前記第 1〜第 5実施形態においては、 補償全床反力モーメント水平成 分を決定するようにしたが、 それを 0に設定しても良い。 ただしこの場 合には、 フルモデル補正は、 単に単純化モデルによる目標歩容の精度を 高めるために用いられ、 フルモデルを用いて歩容を修正することによる 上体姿勢傾斜復元効果はなくなる。
前記第 1〜第 5実施形態においては、 単純化モデル 2 0 0による歩容 生成 (単純化モデル歩容生成) には、 本願出願人が先に提案した特開平 5 - 3 3 7 8 4 9号公報の第 1実施例、 第 2実施例の歩容生成装置を用 いても良い。 フルモデルによる補正量を小さくすることができるので、 補正された歩容が単純化モデル歩容から大きくずれることを防止できる。 前記 1〜第 5実施形態においては、 補償全床反力モーメント水平成分 Mdmdxy とモデル操作床反力モ一メント水平成分との和が床反カモ一 メント許容範囲を越えると、 コンプライアンス制御用目標床反力モ一メ ント水平成分は、 床反力モーメント水平成分許容範囲の上限値あるいは 下限値になる。 但し、 補償全床反力モーメント水平成分 Mdmdxy とモ デル操作床反力モ一メント水平成分との和が床反力モーメント水平成分 許容範囲を越えていても、 補償全床反力モーメント水平成分 Mdmdxy モデル操作床反カモ一メント水平成分との和の増加もしくは減少に応じ てコンプライアンス制御用目標床反力モーメント水平成分も増加もしく は減少するようにしても良い。 コンプライアンス制御用目標床反力モー メント水平成分が床反カモ一メン卜水平成分許容範囲に接近すると、 コ ンプライアンス制御によって制御される霁床反力モーメント水平成分が 目標よりも少なめになる傾向があり、 このためコンプライアンス制御用 目標床反力モーメント水平成分が少々許容範囲を越えても、 すぐには、 足平 2 2の本来の接地感を低下させたり、 足平 2 2の底面が浮いてしま うような不具合が発生しない場合が多いからである。
同様の理由により、 床反カモ一メント水平成分許容範囲をいわゆる支 持多角形で表される Z M P存在可能範囲 (厳密な表現では、 実床反力作 用点の存在許容範囲) をモーメント水平成分に換算して得られる許容範 囲を越えて設定しても良い。
コンプライアンス制御によって発生する床反力モーメント水平成分に 過度に期待すると、 上記のごとく足平 2 2の本来の接地感を低下させた り、 足平 2 2の底面が浮いてしまうような不具合が発生する。 よって、 床反力モーメント水平成分許容範囲は、 姿勢制御がコンプライアンス制 御に期待する実床反力モーメント水平成分の許容範囲であると言える。 床反力モーメント水平成分許容範囲は、 歩容パラメ一夕からのみなら ず、 検出された実床反力にも基づいて決定しても良い。 た、 階段での エッジ位置検出値など、 足平 2 2の接地領域の検出値にも基づいて決定 してもよい。
前記第 2参考例に係る図 5 6の S 3 0 2 8における今回歩容パラメ一 夕の修正 (目標 Z M Pの修正) を制御周期毎に実行するように、 メイン フローチャートの処理を変更しても良い。
修正歩容 (目標歩容) が元歩容より大きくずれてしまう場合 (発散し てしまう場合) ヒは、 次回歩容の歩容パラメータ修正をする頃に既に、 大きくずれて過ぎてしまい (発散し過ぎてしまい)、 次回歩容の歩容パ ラメ一夕修正だけでは、 継続的長期的に安定な目標歩容を生成すること が困難になる。 今回歩容パラメ一夕の修正 (目標 Z M Pの修正) を制御 周期毎に実行することによって、 この問題をかなり解決することができ る。 '
さらには、 元歩容からのずれ具合によって、 今回歩容の足平着地位置 や着地時刻などを制御周期毎に変更しても良い。
具体的には、 S 3 0 2 0から S 3 0 3 0までの処理を制御周期毎に実 行するように処理フローを変更しておき、 S 3 0 2 0において、 次回歩 容支持脚座標系 (次回歩容支持脚座標系は、 次の足平着地位置姿勢に対 応)、 次次回歩容支持脚座標系 (次次回歩容支持脚座標系は、 次の次の 足平着地位置姿勢に対応)、 今回歩容周期 (今回歩容周期ほ、 次の足平 着地時刻に対応) および次回歩容周期 (次回歩容周期は、 定常歩容の周 期に相当) の少なくともいずれかを、 S 3 0 2 8における今回歩容パラ メータの修正 (特に目標 Z M Pの修正) が小さくなるように (すなわち、 今回歩容の安定余裕が高く維持されるように)、 適宜変更すれば良い。
さらには、 上記以外の歩容パラメ一夕を変更しても良い。
また、 修正歩容の元歩容からのずれは、 単純化モデル上体姿勢傾斜角 補正用モーメント Mr、 単純化モデル上体水平位置補正用モーメント Mp および単純化モデル逆位相腕振り角補正用モ一メント Ma などから 動力学モデルを用いて推定することができるので、 Mr, Mp および Ma に応じてモデルの挙動ずれを推定し、 推定された挙動ずれを基に、 歩容 パラメータを修正してもよい。 あるいは、 Mr, Mpおよび Maと歩容パ ラメ一夕の修正量の適正値との関係をあらかじめ求めてマツプ化してお いて、 Mr, Mp および Ma に応じてマップを基に歩容パラメ一夕の修 正量を決定してもよい。
また、 前記第 1〜第 5実施形態に対しても上記と同様に、 処理フロー を変更して良い。
復元条件には、 前記した条件以外にも、 関節角が許容範囲を越えてい ないか、 脚などの干渉がないか、 関節角速度、 トルクが過大でないかな どのキネマティクス条件、 ダイナミクス条件を加えても良い。
また、 これに伴って、 前述したごとく、 今回歩容パラメ一夕の修正 (目標 Z M Pあるいは着地位置、 時刻などの修正) を制御周期毎に実行 するようにメインフローチャートの処 ¾を変更した場合には、 今回歩容 の安定余裕が高く維持されるように適宜変更される歩容パラメ一夕の値 が、 適切な値になるように (ある制約条件を満足するように) すること も、 復元条件のひとつに加えても良い。
歩容の切り変わり目で決定された (読み込まれた) 着地位置、 着地時 刻は、 上位の制御装置からの指示 (歩行計画決定部ゃォペレ一夕からの 指示など。 これを当初の要求と呼ぶ。) によって決定されるので、 修正 歩容の着地位置、 着地時刻は、 できる限り歩容の切り変わり目で決定さ れた (読み込まれた) 着地位置、 着地時刻に戻るべきである。 そこで、 歩容の切り変わり目で決定された (読み込まれた) 着地位置、 着地時刻 を記憶し、 修正歩容の着地位置、 着地時刻が、 記憶された着地位置、 着 地時刻にできる限り一致または近づくことも復元条件に加えても良い。 ただし、 実は、 前記復元条件 4、 5および 6によって、 修正歩容の着地 位置、 着地時刻は、 できる限り歩容の切り変わり目で決定された (読み 込まれた) 着地位置、 着地時刻に徐々に戻る作用が働くので、 あえて追 加する必要はない。
また、 状況の変化に対応して、 当初の要求を変更し、 変更した要求を 満足する歩容パラメータに、 上記のごとく歩容の安定余裕を高く維持す るために適宜変更される歩容パラメータが、 できる限り一致または近づ くことを復元条件に加えても良い。 この場合、 前記前記復元条件 4、 5 および 6は削除するべきである。
前述した各種の復元条件を満足するモデル上体水平位置安定化床反力 モ一メントとモデル上体姿勢傾斜角安定化床反力モーメン卜の決定法に は、 制約条件下で最適値を求めるための線形計画法 (シンプレックス法 など) や探索法を用いれば良い。 または、 ファジー推論を用いても良い。
また、 着地位置を変更する場合には、 歩行環境の障害物なども考慮し なければならない状況も考えられる。 このような状況にも対処できるよ うにするためには、 環境認識や行動決定などの人工知能の分野に属する 処理も加えて、 修正歩容を決定すべきである。
モデル逆位相腕振り角安定化床反力モーメン卜の決定法も同様である。 前記第 1〜第 5実施形態における制限手段 (制限処理部) の前後のブ 口ック図は、 例えば本願出願人による P C T Z J P 0 2 Z 1 3 5 9 3で 示したように、 等価変換あるいは近似変換しても良い。
この場合、 上体水平位置補正用モデル安定化モーメント Mpf を hで 割った値をローパスフィル夕に通した値を補正目標床反力水平成分 (フ ルモデル床反力水平成分 Ffull) から減じた値が上記 P C T出願におけ るバイアス推定値 destm に相当する。 したがって、 例えば、 前記第 2 〜第 4実施形態におけるゲイン Kc の積分を、 時定数 1 /Kc の 1次遅れ をフィードバック要素としたポジティブフィードバック系に置き換えた りして、 図 8 5のように、 近似変換をしても良い。 この例では、 第 2〜 第 4実施形態における Mpf 演算部 2 1 5が図示の如く近似変換されて いる。
逆位相腕振り角補正用摂動モデルモ一メントも、 同様に等価変換ある いは近似変換して求めるようにしても良い。
前記第 1実施形態においては、 前記逆位相腕振り角補正用摂動モデル モーメントは、 図 7 1に示す機能ブロック図の代わりに、 図 8 6に示す 機能ブロック図の処理を行うようにしても良い。 これを第 6実施形態と して以下に説明すると、 図 7 1では、 逆位相腕振り角補正用モデルが復 元する動作によって発生するモーメント鉛直成分までも含めて、 床反力 モーメント鉛直成分許容範囲を越えるか否かが判定されて、 逆位相腕振 り角補正用モデルの挙動が決定されたが、 図 8 6に示す機能プロック図 の処理では、 逆位相腕振り角補正用モデルが復元する動作によって発生 するモーメン卜鉛直成分は、 床反力モーメント許容範囲を越えるか否か を判定する上で無視される。
図 8 6に示す機能ブロック図の処理を詳細に説明すると、 フルモデル 床反力モーメント鉛直成分 Mfullz と上体水平位置補正に起因する床反 力モーメント鉛直成分摂動量 Mpz との和を無制限時補正目標床反カモ ーメント鉛直成分 Minz とし、 これに図 7 0 と同様に制限を加えること により、 制限時補正目標床反力モーメント鉛直成分 Mltdz を求める。 制限時補正目標床反力モーメント鉛直成分 Mltdz は、 コンプライアン ス制御用目標床反力モーメント鉛直成分として出力される。 さらに、 制 限時補正目標床反力モーメント鉛直成分 Mltdz 'から無制限時補正目標 床反力モーメント鉛直成分 Minz を減じた値、 すなわち、 無制限時補正 目標床反力モーメント鉛直成分 Minz のうちの床反カモ一メント鉛直成 分許容範囲を越えた分である Maa を求める。 次いで、 補正用摂動モデ ル逆位相腕振り角 0 ca の前回値を基に、 P D制御等を用いた逆位相腕 振り角補正用摂動モデル制御則によって逆位相腕振り角補正用モデル安 定化モーメント要求値 Mafdmdを求め、 これを Maaから減じた値 (モ ーメント) を逆位相腕振り角補正用摂動モデルに入力し、 補正用摂動モ デル逆位相腕振り角 0 caを得る。
Maa から補正用摂動モデル逆位相腕振り角 0 ca までの伝達関数は、 口一パスフィル夕の伝達関数になる。
すなわち、 言い換えると、 逆位相腕振り角補正用モデルによる床反力 モーメント鉛直成分のキャンセル (超過防止動作) を行わない場合に発 生する床反力モーメント鉛直成分 (無制限時床反力モーメント鉛直成 分) を、 床反力モーメント鉛直成分許容範囲を越えないように制限する 制限手段 (飽和手段) に通すことにより、 コンプライアンス制御用目標 床反力モーメント鉛直成分 (制限時補正目標床反力モーメント鉛直成分 Mltdz) を得ると共に、 無制限時床反力モーメント鉛直成分を、 床反力 モーメント鉛直成分許容範囲を越えた分を求める不感帯手段に通した値 をローパスフィルタ (すなわちハイカッ トフィル夕) に通すことにより、 補正用摂動モデル逆位相腕振り角 0 caを得る。
以上説明した第 6実施形態は、 本発明のうちの第 3 1および第 3 2発 明の実施形態になっている。 この場合、 第 6実施形態における床反カモ 一メント鉛直成分が制御対象量に相当する。 また、 第 6実施形態におけ る歩容生成用 (フルモデル補正用) の床反力モーメント鉛直成分許容範 囲 [Mzmin,MzmaX]が制限対象量の許容範囲に相当する。 また、 単純化 モデル歩容の運動成分が目標運動の仮瞬時値に対応し、 これを S 3 5 3 6で修正したものが目標運動の瞬時値に対応する。 また、 発明における 動力学モデルは、 フルモデル (逆位相腕振り角補正用摂動モデルを含 む) が相当する。 そして、 第 6実施形態におけるフルモデル床反カモ一 メント鉛直成分 Mfullz に上体水平位置補正に起因する床反カモ一メン ト鉛直成分 Mpz を加えたもの (Minz) が、 モデル制限対象量瞬時値に 相当し、 これとコンプラインス制御用目標床反力モーメント鉛直成分 Mltdzとの差が第 3 1発明における 「逸脱した分」 に相当する。 補足すると、 前記第 2参考例においては、 本願出願人が提案した特開 平 5— 3 3 7 8 4 9号公報に記載の構成に加え、 床反力の並進力水平成 分が床反力水平成分の許容範囲を越えないように、 床反力水平成分と目 標 Z M Pまわりの床反力モーメント水平成分との発生の割合が異なる 2 つの運動モードの挙動、 例えば、 上体並進運動モードの上体並進加速度 と上体傾斜運動モードの上体姿勢傾斜角加速度が決定されるので、 実口 ポッ ト 1を、 修正目標歩容 (最終的に歩容生成装置 1 0 0が出力する歩 容) に収束させることができる。 つまり、 実口ポッ ト 1の姿勢を安定化 させることができる。 .
また、 コンプライアンス制御用目標床反力モーメント水平成分とモデ ル操作床反力モーメント水平成分の差がトータルの復元力になる。
また、 モデル操作床反力モーメント水平成分は、 Z M P存在可能範囲 を無視していかなる値でも取ることが可能であるので、 非常に高い姿勢 復元力を発生することができる。
また、 床反力の並進力水平成分が、 床反力水平成分の許容範囲を越え ないので、 口ポッ ト 1のスリップを防止できる。
また、 床反力モーメント鉛直成分 (コンプライアンス制御用目標床反 力モーメント鉛直成分) しいては実床反力モーメント鉛直成分が、 床反 カモ一メント鉛直成分の許容範囲を越えないので、 ロボッ ト 1のスリツ プをより一層防止できる。
また、 床反力鉛直成分が 0の時期、 すなわち、 両脚体 2 , 2がいずれ も接地していない時期では、 上体並進運動モードに依存せずに上体回転 運動モ一ドに依存した姿勢復元が行われ、 床と足平 2 2の間の摩擦力に 依存せずに効果的に姿勢復元が行われる。
また、 実床反力モーメントが過大になることを防止するので、 足平 2 2の本来の接地性が低下したり、 足平 2 2の底面が浮いてしまうような 不具合が発生することを防止または抑制することができる。
また、 1歩分の修正歩容の終端状態を新たな初期状態とした新たな今 回歩容が、 定常歩容に漸近するように、 今回歩容パラメータが決定また は変更されるので、 継続的に (長期的に) 安定性が保証された歩容を生 成し続けることができる。
また、 前記第 3参考例においては、 上記のごとく、 元歩容と修正歩容 が同時に生成され、 修正歩容は、 実ロボッ ト 1の姿勢安定化のために修 正されると共に、 コンプライアンス制御により姿勢復元に必要な床反力 モーメント (水平成分及び鉛直成分) を.発生してもまだ余裕がある場合 には、 この余裕を用いて、 可能な範囲で元歩容に収束するようにしてい る。 このため、 第 2参考例の効果に加え、 当初設定した元歩容に近い、 すなわち、 当初の要求通りの歩容に近い歩容を生成することができる。 したがって、 あらかじめ設定された移動経路がある場合には、 移動経路 から大きくずれることを防止できる。 また、 修正歩容の上体姿勢角が元 歩容 (当初決定した歩容) の上体姿勢角に収束することを、 修正歩容の 上体水平位置が元歩容 (当初決定した歩容) の上体水平位置に収束する ことよりも優先したので、 上体姿勢角が大きく変動することを抑制する ことができる。
前記第 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 を移動させるとき) の 歩容生成においては、 床反カモ一メント鉛直成分許容範囲の代わりに、 床反力モーメントの床面法線方向成分、 すなわち摩擦カモ一メントの許 容範囲を設定するようにしてもよい。 例えば、 該摩擦力モーメントは、 床面の水平面に対する傾斜角度を Θ 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まわりの床反力モ一メントをあまり変化させな いで床反力水平成分を十分に大きく変化させることができる運動モ一ド とを組み合わせることが望ましい。
言いかえると、 全体重心をあまり変化させないで角運動量を十分に大 きく変化させることができる運動モードと、 角運動量をあまり変化させ ないで全体重心を十分に大きく変化させることができる運動モードとを 組み合わせることが望ましい。 運動モードの変位が小さくなるからであ る。 床反カモ一メント鉛直成分を適切な値にするために、 前記の各実施形 態では、 逆位相腕振りモードを用いたが、 これら以外の運動モードを用 いても良い。 例えば、 前記第 1参考例の変形態様について説明した如く、 上体ョ一回転モードを用いたり、 上体ョ一回転モードと逆位相腕振りモ —ドとを併用しても良い。
また、 床反力モーメント鉛直成分を適切な値にするために用いられる 運動モ一ド'が床反力水平成分および床反カモ一メント水平成分を発生し ない運動モードである必要もない。 例えば、 遊脚を前後に振る運動モー ドを用いても良い。 その運動モードによって発生した床反力水平成分お よび床反力モーメント水平成分は、 上体傾斜モードと上体並進モードと の 2つの運動モードを調整することによって、 打ち消すことができるか らである。
前記フルモデルを用いる実施形態では、 単純化モデルとして、 前記実 施形態に用いた動力学モデル (図 1 2のモデル) 以外にも以下のモデル を用いても良い。
1 ) 図 4 9に示したように複数のリンク.に質点を設定した非線形なモデ ル (多質点モデル)
2 ) 本願出願人による特願 2 0 0 0— 3 5 2 0 1 1号に示された 3質点 モデル
3 ) 上体にのみ質量がある 1質点モデル
4 ) 全体重心まわりの角運動量変化によって生じる慣性力のモーメント を無視したモデル -
5 ) 重力と慣性力との合力 (または床反力) と上体並進運動との関係を 表す部分モデルと、 上記合力と上体回転運動の関係を表す部分モデルを 分離して持つ分離型モデル。 例えば、 図 1 2に未す質点は、 上記合力と 上体並進運動との関係を表す部分モデルであり、 図 1 2に示すフライホ ィ一ルは、 上記合力と上体回転運動との関係を表す部分モデルである。 ただし、 単純化モデルに単純化モデル上体姿勢傾斜角補正用モ一メン トが加えられる実施形態においては、 上記 2 )、 3 )、 および 4 ) のモデ ルを用いることはできない。
尚、 フルモデルは、 基本的には、 単純化モデルよりもより近似精度の 高い動力学モデルを用いることが好ましいが、 単純化モデルと同等の近 似精度の動力学モデルを用いてもよい。
また、 前述した各実施形態において、 ブロック線図、 フロ一チャート、 およびアルゴリズムなどは、 演算処理順序を変えるなどの等価変形をし ても良い。 また、 適宜ローパスフィルタを揷入しても良い。
また、 前記各実施形態を 2足移動ロポッ トに関して説明してきたが、
1足もしくは 3足以上の多脚ロポッ トにも本発明を適応することができ る。 ' 産業上の利用可能性
以上のように本発明は、 2足移動ロボ.ッ ト等の脚式移動ロボッ トと床 面との摩擦力が小さくなるような状況でも、 ロポッ トのスピンを生じる ことなく該ロポッ トを円滑に移動させることが可能な歩容を生成するこ とができるものとして有用である。

Claims

請 求 の 範 囲
1 . 上体から延設された複数の脚体を運動させて移動する脚式移動ロボ ッ トの目標歩容を生成する歩容生成装置において、
前記口ポッ トに作用させる床反力モーメントの鉛直成分又は該床反力 モーメン卜の床面法線方向成分又は該ロポッ 卜の角運動量変化率の鉛直 成分又は該角運動量変化率の床面法線方向成分を制限対象量として、 該 制限対象量の許容範囲を設定する許容範囲設定手段と、
前記目標歩容を構成する目標運動の仮瞬時値を決定する仮瞬時値決定 手段と、
少なくとも前記目標運動の仮瞬時値を、 前記口ポッ トの運動と前記制 限対象量との関係を表す動力学モデルに入力し、 該動力学モデルの出力 としてのモデル制限対象量瞬時値を求めるモデル演算手段と、
少なくとも該モデル制限対象量瞬時値を前記許容範囲に収めるように 前記目標運動の仮瞬時値を補正して目標運動の瞬時値を決定する目標瞬 時値決定手段とを備えたことを特徴とする脚式移動ロポッ トの歩容生成 装置。 .
2 . 前記目標瞬時値決定手段は、 前記目標運動の瞬時値に前記動力学モ デル上で略釣り合う制限対象量に対応する床反カモ一メン卜の瞬時値を 前記目標歩容を構成する目標床反力モーメントの瞬時値として決定する ことを特徴とする請求の範囲第 1項に記載の脚式移動ロポッ トの歩容生 成装置。
3 . 前記目標瞬時値決定手段は、 前記口ポッ トの摂動運動と制限対象量 摂動分との関係を表す摂動モデルと、
少なくとも前記モデル演算手段が求めたモデル制限対象量瞬時値と前 記許容範囲とに基づき前記摂動モデルの制限対象量摂動分を操作する摂 動モデル操作量を決定する手段と、 その決定した摂動モデル操作量を前記摂動モデルに入力することによ り前記目標運動の補正量を求める手段と、
該補正量により前記目標運動の仮瞬時値を補正することにより前記目 標運動の瞬時値を決定する手段とを備えることを特徴とする請求の範囲 第 1項に記載の脚式移動ロポッ トの歩容生成装置。
4 . 前記摂動モデル操作量を決定する手段は、 前記摂動モデル操作量を.
0と仮定した場合の前記制限対象量の推定値を少なくとも前記モデル演 算手段が求めたモデル制限対象量瞬時値に基づき決定する手段と、 その 決定した推定値を前記許容範囲と比較し、 その比較に基づき該許容範囲 内に制限してなる制限済制限対象量を決定する手段とを備え、 少なくと も前記モデル演算手段が求めたモデル制限対象量瞬時値と前記制限済制 限対象量との差に基づき前記摂動モデル操作量を決定することを特徴と する請求の範囲第 3項に記載の脚式移動ロポッ トの歩容生成装置。
5 . 少なくとも前記摂動モデルの状態量に応じて前記摂動モデル操作量 の要求値を決定する手段を備え、
前記摂動モデル操作量を決定する手段,は、 少なくとも前記モデル演算 手段が求めたモデル制限対象量瞬時値、 前記許容範囲、 及び前記要求値 に基づき前記摂動モデルに入力する摂動モデル操作量を決定することを 特徴とする請求の範囲第 3項に記載の脚式移動ロボッ トの歩容生成装置。
6 . 前記摂動モデル操作量の要求値を決定する手段は、 前記摂動モデル の状態量と該状態量に対する目標値との偏差に応じたフィードバック制 御則により前記要求値を逐次決定することを特徴とする請求の範囲第 5 項に記載の脚式移動ロポッ トの歩容生成装置。
7 . 前記摂動モデル操作量を決定する手段は、 前記摂動モデル操作量を 前記要求値に一致させたと仮定した場合の前記制限対象量の推定値を少 なくとも前記モデル演算手段が求めたモデル制限対象量瞬時値と前記要 求値とに基づき決定する手段と、 その決定した推定値を前記許容範囲と 比較し、 その比較に基づき該許容範囲に制限してなる制限済制限対象量 を決定する手段とを備え、 少なくとも前記モデル演算手段が求めたモデ ル制限対象量瞬時値と前記制限済制限対象量との差に基づき前記摂動モ デル操作量を決定することを特徴とする請求の範囲第 5項に記載の脚式 移動ロボッ トの歩容生成装置。
8 . 前記目標瞬時値決定手段は、 前記制限済制限対象量に対応する床反 カモ一メン卜の瞬時値を前記目標歩容を構成する目標床反力モーメン卜 の瞬時値として決定することを特徴とする請求の範囲第 4項または第 7 項に記載の脚式移動ロポッ トの歩容生成装置。
9 . 前記目標瞬時値決定手段は、 前記目標運動の補正量を前記動力学モ デルに追加的に入力する手段を備えたことを特徴とする請求の範囲第 4 項又は第 7項に記載の脚式移動ロボッ トの歩容生成装置。'
1 0 . 前記目標瞬時値決定手段は、 前記制限済制限対象量に対応する床 反カモ一メントの瞬時値を前記目標歩容を構成する目標床反カモ一メン 卜の瞬時値として決定することを特徴と.する請求の範囲第 9項に記載の 脚式移動ロボッ トの歩容生成装置。
1 1 . 前記摂動モデルは、 口ポッ トの角運動量変化率の鉛直成分又は床 面法線方向成分を摂動させる摂動運動と前記制限対象量摂動分との関係 を表すモデルであることを特徴とする請求の範囲第 3項記載の脚式移動 ロボッ トの歩容生成装置。
1 2 . 前記摂動運動は、 該ロポッ トの重心位置を略一定に維持する摂動 運動であることを特徴とする請求の範囲第 1 1項に記載の脚式移動ロボ ッ トの歩容生成装置。
1 3 . 前記摂動運動は、 ロボッ トの上体および/又は該上体から延設さ れた腕体の摂動運動であることを特徴とする請求の範囲第 1 1項又は第 1 2項に記載の脚式移動ロボッ トの歩容生成装置。 -
1 4 . 上体から延設された複数の脚体を運動させて移動する脚式移動口 ポッ 卜の目標歩容を生成する歩容生成装置において、
前記口ポッ トに作用させる床反力モーメントの鉛直成分又は該床反力 モーメン卜の床面法線方向成分又は該ロボッ 卜の角運動量変化率の鉛直 成分又は該角運動量変化率の床面法線方向成分を制限対象量として、 該 制限対象量の許容範囲を設定する許容範囲設定手段と、
前記目標歩容を構成する目標運動及び目標床反力のうちの少なくとも 目標床反力の仮瞬時値を逐次決定する目標床反力仮瞬時値決定手段と、 少なくとも該目標床反力の仮瞬時値を、 前記ロボッ トの運動と床反力 との関係を表す第 1動力学モデルに入力し、 該第 1動力学モデルの出力 としての目標運動の仮瞬時値を求める第 1モデル演算手段と、
少なくとも前記目標運動の仮瞬時値を、 前記ロボッ トの'運動と前記制 限対象量との関係を表す第 2動力学モデルに入力し、 該第 2動力学モデ ルの出力としてのモデル制限対象量瞬時値を求める第 2モデル演算手段 と、
少なくとも該モデル制限対象量瞬時値を前記許容範囲に収めるように 目標床反力の床反カモ一メント補正量を求め、 その求めた床反力モーメ ント補正量を前記第 1動力学モデルに追加的に入力する第 1モデル入力 補正手段とを備え、
少なくとも前記第 2動力学モデルの入力に基づいて前記目標運動の目 標瞬時値を決定することを特徴とする脚式移動ロボッ トの歩容生成装置。
1 5 . 前記第 2動力学モデルが出力する前記モデル制限対象量瞬時値に 略対応する床反力モーメントの瞬時値を前記目標歩容を構成する目標床 反力モーメン卜の瞬時値として決定する手段を備えたことを特徴とする 請求の範囲第 1 4項に記載の脚式移動ロボッ トの歩容生成装置。
1 6 . 前記第 1モデル入力補正手段は、 少なく とも前記目標床反力の床 反力モーメント補正量を 0と仮定した場合に前記第 2動力学モデルが出 力するモデル制限対象量瞬時値の推定値を少なく とも前記第 2モデル演 算手段が求めたモデル制限対象量瞬時値に基づいて推定する手段と、 そ のモデル制限対象量瞬時値の推定値を前記許容範囲と比較し、 その比較 に基づき該許容範囲に制限してなる制限済制限対象量を決定する手段と を備え、 少なくとも前記第 2モデル演算手段が求めたモデル制限対象量 瞬時値と前記制限済制限対象量との差に基づき前記床反カモ一メン補正 量を決定することを特徴とする請求の範囲第 1 4項に記載の脚式移動口 ポッ トの歩容生成装置。
1 7 . 前記目標床反力の床反力モーメント補正量の要求値を決定する手 段を備え、
前記第 1モデル入力補正手段は、 少なくとも前記目標床反力の床反力 モーメン卜補正量を前記要求値に一致させたと仮定した場合に前記第 2 動力学モデルが出力するモデル制限対象量瞬時値の推定値を少なくとも 前記第 2モデル演算手段が求めたモデル制限対象量瞬時値と前記要求値 とに基づいて推定する手段と、 そのモデル制限対象量瞬時値の推定値を 前記許容範囲と比較し、 その比較に基づき該許容範囲に制限してなる制 限済制限対象量を決定する手段とを備え、 少なく とも前記第 2モデル演 算手段が求めたモデル制限対象量瞬時値と前記制限済制限対象量との差 に基づき前記床反力モーメン補正量を決定することを特徴とする請求の 範囲第 1 4項に記載の脚式移動ロポッ トの歩容生成装置。
1 8 . 少なくとも前記第 2モデル演算手段が求めたモデル制限対象量瞬 時値と前記許容範囲とに基づき前記目標運動の補正量を求め、 その求め た補正量を前記第 2動力学モデルに追加的に入力する第 2モデル入力補 正手段を備えたことを特徴とする請求の範囲第 1 4項に記載の脚式移動 ロポッ トの歩容生成装置。
1 9 . 前記ロポッ 卜の摂動運動と制限対象量摂動分との関係を表す摂動 モデルと、
少なくとも前記第 2モデル演算手段が求めたモデル制限対象量瞬時値 と前記許容範囲とに基づき床反力モーメン卜の操作量を決定する手段と、 その決定した床反力モーメントの操作量を、 前記第 1動力学モデルに 入力する前記目標床反力の床反カモ一メント補正量と前記摂動モデルに 入力する摂動モデル操作量とに分配する分配手段とを備え、
前記第 2モデル入力補正手段は、 前記摂動モデル操作量を前記摂動モ デルに入力することにより前記目標運動の補正量を求めることを特徴と する請求の範囲第 1 8項に記載の脚式移動ロボッ トの歩容生成装置。
2 0 . 少なくとも前記摂動モデルの状態量に応じて前記床反力モーメン トの操作量の要求値を決定する手段を備え、 '
前記床反力モーメントの操作量を決定する手段は、 少なく とも前記第 2モデル演算手段が求めた前記モデル制限対象量瞬時値と前記許容範囲 と前記要求値とに基づき前記分配手段に.与える床反力モーメントの操作 量を決定することを特徴とする請求の範囲第 1 9項に記載の脚式移動口 ポッ 卜の歩容生成装置。
2 1 . 前記床反力モーメントの操作量の要求値を決定する手段は、 前記 摂動モデルの状態量と該状態量に対する目標値との偏差に応じたフィ一 ドバック制御則により前記要求値を逐次決定することを特徴とする請求 の範囲第 2 0項に記載の脚式移動ロボッ 卜の歩容生成装置。
2 2 . 前記摂動モデルは、 口ポッ トの角運動量変化率の鉛直軸回り又は 床面法線軸回りの成分を摂動させる摂動運動と前記制限対象量摂動分と の関係を表すモデルであることを特徴とする請求の範囲第 1 9項に記載 の脚式移動ロポッ トの歩容生成装置。
2 3 . 前記摂動運動は、 口ポッ トの重心位置を略一定に維持する摂動運 動であることを特徴とする請求の範囲第 2 2項に記載の脚式移動ロポッ トの歩容生成装置。
2 4 . 前記摂動運動は、 口ポッ トの上体および Z又は該上体から延設さ れた腕体の摂動運動であることを特徴とする請求の範囲第 2 3項または 第 2 3項に記載の脚式移動ロポッ トの歩容生成装置。
2 5 . 前記'床反力モーメントの操作量を決定する手段は、 前記摂動モデ ル操作量を 0と仮定した場合に前記第 2動力学モデルが出力するモデル 制限対象量瞬時値の推定値を少なくとも前記第 2モデル演算手段が求め たモデル制限対象量瞬時値に基づいて推定する手段と、 そのモデル制限 対象量瞬時値の推定値を前記許容範囲と比較し、 その比較に基づき該許 容範囲に制限してなる制限済制限対象量を決定する手段とを備え、 少な くとも前記第 2モデル演算手段が求めたモデル制限対象量瞬時値と前記 制限済制限対象量との差に基づき前記床反力モーメントの操作量を決定 することを特徴とする請求の範囲第 1 9項に記載の脚式移動ロポッ トの 歩容生成装置。
2 6 . 前記床反力モーメントの操作量を決定する手段は、 前記摂動モデ ル操作量を前記要求値に一致させたと仮定した場合に前記第 2動力学モ デルが出力するモデル制限対象量瞬時値の推定値を少なくとも前記第 2 モデル演算手段が求めたモデル制限対象量瞬時値と前記要求値とに基づ いて推定する手段と、 そのモデル制限対象量瞬時値の推定値を前記許容 範囲と比較し、 その比較に基づき該許容範囲に制限してなる制限済制限 対象量を決定する手段とを備え、 少なくとも前記第 2モデル演算手段が 求めたモデル制限対象量瞬時値と前記制限済制限対象量との差に基づき 前記床反力モーメントの操作量を決定することを特徴とする請求の範囲 第 2 0項に記載の脚式移動ロポッ トの歩容生成装置。
2 7 . 上体から延設された複数の脚体を運動させて移動する脚式移動口 ボッ 卜の目標歩容を生成する歩容生成装置において、
前記口ポッ トに作用させる床反力モーメントの鉛直成分又は該床反力 モーメントの床面法線方向成分又は該ロポッ トの角運動量変化率の鉛直 成分又は該角運動量変化率の床面法線方向成分を制限対象量として、 該 制限対象量の許容範囲を設定する許容範囲設定手段と、
前記目標歩容を構成する目標運動及び目標床反力のうちの少なくとも 目標床反力の仮瞬時値を逐次決定する目標床反力仮瞬時値決定手段と、 少なくとも該目標床反力の仮瞬時値を、 前記ロボッ トの運動と床反力 との関係を表す第 1動力学モデルに入力し、 該第 1動力学モデルの出力 としての目標運動の第 1仮瞬時値を求める第 1モデル演算手段と、 少なくとも前記目標床反力の仮瞬時値を、 前記ロポッ トの運動と前記 制限対象量との関係を表す第 2動力学モデルに入力し、 該第 2動力学モ デルの出力としての目標運動の第 2仮瞬時値を、 該目標運動の第 2仮瞬 時値に前記第 2動力学モデル上で略釣り合う制限対象量瞬時値が前記許 容範囲内に収まるように求める制限付き第 2モデル演算手段と、
少なくとも前記目標運動の第 1仮瞬時値と第 2仮瞬時値との差に基づ いて、 該差が零に近づくように床反カモ一メントの操作量を求める操作 量算出手段と、
該床反カモ一メントの操作量を前記第 1動力学モデル及び第 2動力学 モデルのうちの少なくともいずれか一方に追加的に入力するモデル入力 補正手段とを備え、
前記目標運動の第 2仮瞬時値を該目標運動の瞬時値として決定するこ とを特徴とする脚式移動ロポッ 卜の歩容生成装置。
2 8 . 前記目標運動の第 1仮瞬時値と第 2仮瞬時値との差は、 前記ロボ ッ 卜の所定の部位の姿勢の、 鉛直軸回り又は床面法線軸回りの状態量の 差を含むことを特徴とする請求の範囲第 2 7項に記載の脚式移動ロポッ 卜の歩容生成装置。
2 9 . 前記目標運動の瞬時値に前記第 2の動力学モデル上で略釣り合う 制限対象量に対応する床反力モーメントの瞬時値を前記目標歩容を構成 する目標床反力モーメン卜の瞬時値として決定する手段を備えたことを 特徴とする請求の範囲第 2 7項に記載の脚式移動ロポッ トの歩容生成装 置。 ·
3 0 . 少なくとも前記目標床反力の仮瞬時値を、 前記口ポッ トの運動と 床反力との関係を表す第 3動力学モデルに入力し、 該第 3動力学モデル の出力としての目標運動の第 3仮瞬時値を求める第 3モデル演算手段を 備え、 前記目標床反力の床反力モーメント補正量の要求値を決定する手 段は、 前記決定レた前記目標運動の目標瞬時値と前記目標運動の第 3仮 瞬時値との差に基づいて、 該差が零に近づくように前記要求値を決定す ることを特徴とする請求の範囲第 1 7項に記載の脚式移動ロボッ トの歩 容生成装置。
3 1 . 上体から延設された複数の脚体.を運動させて移動する脚式移動 ロポッ トの目標歩容を生成する歩容生成装置において、
前記口ポッ トに作用させる床反力モーメントの鉛直成分又は該床反力 モ一メントの床面法線方向成分又は該ロポッ トの角運動量変化率の鉛直 成分又は該角運動量変化率の床面法線方向成分を制限対象量として、 該 制限対象量の許容範囲を設定する許容範囲設定手段と、
前記目標歩容を構成する目標運動の仮瞬時値を逐次決定する目標運動 仮瞬時値決定手段と、
前記目標運動の仮瞬時値を前記ロポッ トの運動と前記制限対象量との 関係を表す動力学モデルに入力し、 該動力学モデルの出力としてのモデ ル制限対象量瞬時値を求めるモデル演算手段と、 前記モデル制限対象量瞬時値のうちの前記許容範囲を逸脱した分を口 一パスフィル夕に通したものに応じて前記目標運動の仮瞬時値を補正し て目標運動の瞬時値を決定する目標瞬時値決定手段とを備えたことを特 徴とする脚式移動ロポッ トの歩容生成装置。
3 2 . 前記目標瞬時値決定手段は、 前記モデル制限対象量瞬時値と前記 逸脱した分との差に対応する床反力モーメントを前記目標歩容を構成す る目標床反ヵモ一メントの瞬時値として決定することを特徴とする請求 の範囲第 3 1項に記載の脚式移動ロポッ トの歩容生成装置。
3 3 . 請求の範囲第 1項、 第 1 4項、 第 2 7項および第 3 1項のいずれ か 1項に記載の脚式移動ロポッ トの歩容生成装置により生成された目標 歩容に追従させるように該ロポッ トの動作を制御する制御装置において、 前記目標歩容に追従して動作しているロボッ トの滑りの発生を判断す る滑り判断手段を備え、 前記許容範囲設定手段は、 該滑り判断手段の判 断結果に応じて前記許容範囲を可変的に設定することを特徴とする脚式 移動口ポッ トの制御装置。
3 4 . 前記滑り判断手段は、 少なくとも接地している脚体の先端部の対 地速度に基づき滑りの発生を判断することを特徴とする請求の範囲第 3 3項に記載の脚式移動ロボッ トの制御装置。
3 5 . 前記滑り判断手段は、 少なくとも接地している脚体に作用する実 床反力の時間的変化率と該脚体の先端部の対地速度とに基づき、 該脚体 の見かけばね定数を求める手段を備え、 少なくとも該見かけばね定数に 基づき滑りの発生を判断することを特徴とする請求の範囲第 3 3項に記 載の脚式移動ロポッ トの制御装置。
3 6 . 前記滑り判断手段は、 少なくとも接地している脚体に作用する実 床反力を、 所定周波数の近傍範囲に周波数通過特性を有するバンドパス フィル夕に通したものに基づき滑りの発生を判断することを特徴とする 請求の範囲第 3 3項に記載の脚式移動ロポッ 卜の制御装 。
PCT/JP2004/009476 2003-06-27 2004-06-28 脚式移動ロボットの歩容生成装置および脚式移動ロボットの制御装置 WO2005000535A1 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
KR1020057019907A KR101083412B1 (ko) 2003-06-27 2004-06-28 다리식 이동 로봇의 보용생성 장치 및 다리식 이동 로봇의제어장치
EP04746945A EP1642688B1 (en) 2003-06-27 2004-06-28 Gait generating device of legged mobile robot and legged mobile robot controller
JP2005511138A JP4126061B2 (ja) 2003-06-27 2004-06-28 脚式移動ロボットの歩容生成装置および脚式移動ロボットの制御装置
US10/561,988 US7379789B2 (en) 2003-06-27 2004-06-28 Gait generating device of legged mobile robot and legged mobile robot controller

Applications Claiming Priority (2)

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

Publications (1)

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

Family

ID=33549677

Family Applications (3)

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

Family Applications Before (2)

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 脚式移動ロボットの制御装置

Country Status (6)

Country Link
US (4) US7603234B2 (ja)
EP (10) EP2210713B1 (ja)
JP (3) JP4155993B2 (ja)
KR (3) KR101083414B1 (ja)
DE (2) DE602004031425D1 (ja)
WO (3) WO2005000534A1 (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011073119A (ja) * 2009-10-01 2011-04-14 Honda Motor Co Ltd 移動体の制御装置
JP2011093027A (ja) * 2009-10-28 2011-05-12 Honda Motor Co Ltd 脚式移動ロボットの制御装置
JP2014070042A (ja) * 2012-09-28 2014-04-21 Mitsubishi Corp フラーレン誘導体及びその製造方法

Families Citing this family (103)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7774177B2 (en) * 2001-06-29 2010-08-10 Honda Motor Co., Ltd. Exoskeleton controller for a human-exoskeleton system
US7650204B2 (en) * 2001-06-29 2010-01-19 Honda Motor Co., Ltd. Active control of an ankle-foot orthosis
JP3672101B2 (ja) * 2001-12-28 2005-07-13 本田技研工業株式会社 脚式移動ロボットの歩容生成装置
US7319918B2 (en) * 2001-12-28 2008-01-15 Honda Giken Kogyo Kabushiki Kaisha Gait generation device for legged mobile robot
KR101083414B1 (ko) * 2003-06-27 2011-11-14 혼다 기켄 고교 가부시키가이샤 다리식 이동 로봇의 제어장치
JP4199236B2 (ja) * 2003-06-27 2008-12-17 本田技研工業株式会社 脚式移動ロボットの歩容生成装置
US7603199B2 (en) 2003-11-27 2009-10-13 Honda Motor Co., Ltd. Control device for mobile body
US7400108B2 (en) * 2004-04-15 2008-07-15 University Of Utah Research Foundation System and method for controlling modular robots
JP4485279B2 (ja) * 2004-08-02 2010-06-16 本田技研工業株式会社 脚式移動ロボットの歩容生成装置および制御装置
JP2006068872A (ja) * 2004-09-03 2006-03-16 Honda Motor Co Ltd 脚式移動ロボット
JP4492395B2 (ja) * 2005-03-09 2010-06-30 トヨタ自動車株式会社 脚式ロボットとその動作制御方法
US8082062B2 (en) * 2005-06-10 2011-12-20 Honda Motor Co., Ltd. Regenerative actuation in motion control
JP4812426B2 (ja) * 2005-12-27 2011-11-09 富士通株式会社 ロボット制御装置
JP4908020B2 (ja) * 2006-03-02 2012-04-04 本田技研工業株式会社 ハンド制御システム
JP2008073830A (ja) * 2006-09-25 2008-04-03 Fanuc Ltd ロボット制御装置
WO2008086629A1 (en) 2007-01-19 2008-07-24 Victhom Human Bionics Inc. Reactive layer control system for prosthetic and orthotic devices
RU2452479C2 (ru) 2007-02-16 2012-06-10 Оно Фармасьютикал Ко., Лтд. Терапевтический агент при нарушении мочевыделения
WO2009040885A1 (ja) * 2007-09-25 2009-04-02 Fujitsu Limited ロボット制御装置、ロボット制御方法およびロボット制御プログラム
US8138707B2 (en) * 2007-10-23 2012-03-20 Honda Motor Co., Ltd. Bipedal 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
KR20110082712A (ko) * 2010-01-12 2011-07-20 삼성전자주식회사 로봇 및 그 제어방법
KR101687628B1 (ko) * 2010-01-12 2016-12-21 삼성전자주식회사 로봇의 보행 제어 장치 및 그 제어 방법
FR2958152A1 (fr) 2010-03-31 2011-10-07 Benjamin Penot Systeme d'articulation complexe pour orthese, prothese, robotique, exosquelette
KR101200191B1 (ko) * 2010-07-14 2012-11-13 서울대학교산학협력단 데이터 기반 바이페드 제어 장치 및 방법
KR101766755B1 (ko) * 2010-08-17 2017-08-10 삼성전자주식회사 보행 로봇 및 그 제어방법
KR20120024098A (ko) * 2010-09-06 2012-03-14 삼성전자주식회사 보행 로봇 및 그 제어방법
KR101760883B1 (ko) * 2010-09-09 2017-08-04 삼성전자주식회사 로봇 및 그 제어방법
US8467948B2 (en) * 2010-09-29 2013-06-18 Honda Motor Co., Ltd. Omnidirectional moving body operation system and omnidirectional moving body operation method
CA2812955C (en) 2010-09-29 2018-09-04 Ossur Hf Prosthetic and orthotic devices and methods and systems for controlling the same
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
JP6110636B2 (ja) 2012-08-09 2017-04-05 日本電産サンキョー株式会社 産業用ロボット
KR101371756B1 (ko) * 2012-12-17 2014-03-12 현대자동차(주) 로봇의 보행제어방법
JP5642214B2 (ja) * 2013-02-15 2014-12-17 株式会社神戸製鋼所 多関節ロボットの弾性変形補償制御装置
JP5888309B2 (ja) * 2013-10-31 2016-03-22 カシオ計算機株式会社 トレーニング支援装置およびシステム、フォーム解析装置および方法、ならびにプログラム
CN105934724B (zh) * 2014-01-23 2018-12-21 三菱电机株式会社 电动机控制装置
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
US9517561B2 (en) 2014-08-25 2016-12-13 Google Inc. Natural pitch and roll
US9618937B1 (en) 2014-08-25 2017-04-11 Google Inc. Slip detection using robotic limbs
US9387588B1 (en) * 2014-08-25 2016-07-12 Google Inc. Handling gait disturbances with asynchronous timing
US9499219B1 (en) 2014-08-25 2016-11-22 Google Inc. Touch-down sensing for robotic devices
US10081098B1 (en) 2014-08-25 2018-09-25 Boston Dynamics, Inc. Generalized coordinate surrogates for integrated estimation and control
US9387896B1 (en) 2014-08-25 2016-07-12 Google Inc. Slip avoidance
US9623556B1 (en) * 2014-09-03 2017-04-18 X Development Llc Robotic sole joint
US9352470B1 (en) * 2014-11-11 2016-05-31 Google Inc. Yaw slip handling in a robotic device
US9446518B1 (en) * 2014-11-11 2016-09-20 Google Inc. Leg collision avoidance in a robotic device
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
WO2016159346A1 (ja) * 2015-04-02 2016-10-06 国立大学法人大阪大学 脚型機構体、歩行ロボット、姿勢制御方法及びプログラム
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
WO2020107279A1 (zh) * 2018-11-28 2020-06-04 深圳市优必选科技有限公司 双足机器人及其移动方法、装置和存储介质
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 中国有色金属工业昆明勘察设计研究院有限公司 一种昔格达地层岩质边坡稳定性计算的拟动力上限法
CN111872941B (zh) * 2020-08-06 2021-09-07 深圳市优必选科技股份有限公司 平衡控制方法、装置、仿人机器人及可读存储介质
US11833676B2 (en) 2020-12-07 2023-12-05 Sarcos Corp. Combining sensor output data to prevent unsafe operation of an exoskeleton
CN113246123B (zh) * 2021-04-30 2022-10-18 深圳市优必选科技股份有限公司 机器人控制方法、装置、计算机可读存储介质及机器人
DE102021112485B3 (de) 2021-05-12 2022-08-11 Deutsches Zentrum für Luft- und Raumfahrt e.V. Verfahren zur Balancierung eines Roboters, Verfahren zur Ganzkörpersteuerung eines Roboters, Regler sowie Roboter
CN113359800A (zh) * 2021-06-30 2021-09-07 深圳市优必选科技股份有限公司 机器人行走控制方法、装置、机器人控制设备及存储介质
CN113377113B (zh) * 2021-07-02 2022-01-04 北方工业大学 足式机器人足端轨迹规划方法、系统及控制方法、系统
US11738452B1 (en) * 2022-07-29 2023-08-29 Sarcos Corp. Sole with various compliant regions for robots
US11826907B1 (en) 2022-08-17 2023-11-28 Sarcos Corp. Robotic joint system with length adapter
US11717956B1 (en) 2022-08-29 2023-08-08 Sarcos Corp. Robotic joint system with integrated safety
US11897132B1 (en) 2022-11-17 2024-02-13 Sarcos Corp. Systems and methods for redundant network communication in a robot
US11924023B1 (en) 2022-11-17 2024-03-05 Sarcos Corp. Systems and methods for redundant network communication in a robot

Citations (3)

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

Family Cites Families (31)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS60221288A (ja) * 1984-04-13 1985-11-05 株式会社 富士電機総合研究所 圧覚認識制御装置
JP2570392B2 (ja) 1988-06-30 1997-01-08 三菱電機株式会社 車椅子乗用踏段付エスカレータ
JPH0213596A (ja) 1988-06-28 1990-01-17 Aichi Steel Works Ltd クレーンのトング装置
JP2581175B2 (ja) 1988-06-30 1997-02-12 三菱電機株式会社 車椅子乗用踏段付きエスカレータ
JPH0213784A (ja) 1988-06-30 1990-01-18 Kaneko Agricult Mach Co Ltd 乾燥施設における試料穀物の乾燥方法およびその装置
JP2548799B2 (ja) 1989-05-29 1996-10-30 日鋼特機株式会社 管の縮径成形装置
JPH034355A (ja) 1989-05-31 1991-01-10 Nec Corp データ伝送方式
US5355064A (en) * 1992-03-04 1994-10-11 Honda Giken Kogyo Kabushiki Kaisha Control system for legged mobile robot
JP3148827B2 (ja) 1992-04-30 2001-03-26 本田技研工業株式会社 脚式移動ロボットの歩行制御装置
JP3233450B2 (ja) 1992-05-22 2001-11-26 本田技研工業株式会社 指定時刻到達関数発生器
JP3330710B2 (ja) * 1993-12-30 2002-09-30 本田技研工業株式会社 移動ロボットの位置検知および制御装置
US5644204A (en) * 1994-11-03 1997-07-01 Nagle; John Anti-slip control for a legged robot and realisitc simulation of a legged creature
JP3658147B2 (ja) 1996-07-25 2005-06-08 本田技研工業株式会社 脚式移動ロボットの歩容生成装置
JP3663034B2 (ja) 1996-07-25 2005-06-22 本田技研工業株式会社 脚式移動ロボットの歩容生成装置
JP3672406B2 (ja) * 1997-01-31 2005-07-20 本田技研工業株式会社 脚式移動ロボットの歩容生成装置
EP1053835B1 (en) * 1997-01-31 2006-12-27 Honda Giken Kogyo Kabushiki Kaisha Leg type mobile robot control apparatus
JP3629133B2 (ja) 1997-01-31 2005-03-16 本田技研工業株式会社 脚式移動ロボットの制御装置
WO1999054095A1 (fr) * 1998-04-20 1999-10-28 Honda Giken Kogyo Kabushiki Kaisha Controleur pour robot mobile muni de jambes
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
EP1467265B8 (en) 2001-12-28 2009-07-08 Honda Giken Kogyo Kabushiki Kaisha Control system
US7319918B2 (en) * 2001-12-28 2008-01-15 Honda Giken Kogyo Kabushiki Kaisha Gait generation device for legged mobile robot
JP3672101B2 (ja) 2001-12-28 2005-07-13 本田技研工業株式会社 脚式移動ロボットの歩容生成装置
WO2003061917A1 (fr) 2002-01-18 2003-07-31 Honda Giken Kogyo Kabushiki Kaisha Dispositif de commande pour robot bipede
US7319919B2 (en) * 2002-04-26 2008-01-15 Honda Giken Kogyo Kabushiki Kaisha Control device and footstep determination device for legged mobile robot
US6963185B2 (en) * 2002-04-26 2005-11-08 Honda Giken Kogyo Kabushiki Kaisha System for estimating attitude of leg type moving robot itself
KR101083414B1 (ko) * 2003-06-27 2011-11-14 혼다 기켄 고교 가부시키가이샤 다리식 이동 로봇의 제어장치

Patent Citations (3)

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

Non-Patent Citations (1)

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

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011073119A (ja) * 2009-10-01 2011-04-14 Honda Motor Co Ltd 移動体の制御装置
JP2011093027A (ja) * 2009-10-28 2011-05-12 Honda Motor Co Ltd 脚式移動ロボットの制御装置
JP2014070042A (ja) * 2012-09-28 2014-04-21 Mitsubishi Corp フラーレン誘導体及びその製造方法

Also Published As

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

Similar Documents

Publication Publication Date Title
WO2005000535A1 (ja) 脚式移動ロボットの歩容生成装置および脚式移動ロボットの制御装置
JP4246638B2 (ja) 脚式移動ロボットの制御装置
JP3679105B2 (ja) 脚式移動ロボットの歩容生成装置
WO2005000533A1 (ja) 脚式移動ロボットの歩容生成装置
WO2002040224A1 (fr) Dispositif generateur d&#39;un modele de demarche pour robot mobile pourvu de jambes
WO2006040867A1 (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: 2005511138

Country of ref document: JP

WWE Wipo information: entry into national phase

Ref document number: 1020057019907

Country of ref document: KR

WWE Wipo information: entry into national phase

Ref document number: 2006184276

Country of ref document: US

Ref document number: 10561988

Country of ref document: US

WWE Wipo information: entry into national phase

Ref document number: 2004746945

Country of ref document: EP

WWP Wipo information: published in national office

Ref document number: 1020057019907

Country of ref document: KR

WWP Wipo information: published in national office

Ref document number: 2004746945

Country of ref document: EP

WWP Wipo information: published in national office

Ref document number: 10561988

Country of ref document: US