WO2005082582A1 - 移動ロボットの歩容生成装置 - Google Patents
移動ロボットの歩容生成装置 Download PDFInfo
- Publication number
- WO2005082582A1 WO2005082582A1 PCT/JP2005/003346 JP2005003346W WO2005082582A1 WO 2005082582 A1 WO2005082582 A1 WO 2005082582A1 JP 2005003346 W JP2005003346 W JP 2005003346W WO 2005082582 A1 WO2005082582 A1 WO 2005082582A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- reaction force
- floor reaction
- motion
- error
- force component
- Prior art date
Links
Classifications
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J13/00—Controls for manipulators
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B62—LAND VEHICLES FOR TRAVELLING OTHERWISE THAN ON RAILS
- B62D—MOTOR VEHICLES; TRAILERS
- B62D57/00—Vehicles 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/02—Vehicles 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/032—Vehicles 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
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J5/00—Manipulators mounted on wheels or on carriages
Definitions
- the present invention relates to a device for generating a desired gait such as a bipedal mobile robot.
- Patent Document 2 Japanese Patent Application Laid-Open No. 2002-326173
- Patent Document 3 PCT International Publication No. lgWO / 03/057427 / Al
- Patent Document 3 the first dynamic model (simplified model) representing the relationship between the motion of the robot (position and posture of each part) and the floor reaction force is used. Satisfy the dynamic equilibrium condition on the first dynamic model (the condition that the translational force component of the floor reaction force reaches the target value, and the floor reaction force moment around a certain point reaches the target value).
- an instantaneous target gait composed of an instantaneous value of the target motion of the robot (instant target motion) and an instantaneous value of the desired floor reaction force (instant target floor reaction force) is sequentially created.
- this instantaneous desired gait is input to a second dynamic model (full model), and a part of the instantaneous desired movement (a desired upper body posture and a desired moment around the desired ZMP) is corrected.
- the final instantaneous target gait is generated in time series.
- a high linearity! ⁇ model is used as a first dynamic model (simple model).
- a relatively dynamic kinetic model as a second dynamic model (full model).
- a model with high target accuracy it is possible to make the dynamic accuracy between the gait motion and the floor reaction force finally generated closer to the dynamics of the real robot.
- the present invention has been made in view of a powerful background, and can efficiently generate a gait that can satisfy a predetermined component of a floor reaction force that is set to prevent slipping of a robot. It is another object of the present invention to provide a gait generating device for a mobile robot, which can ensure good dynamic accuracy between the motion of the gait and the floor reaction force.
- the first invention of the gait generating device for a mobile robot of the present invention sets an allowable range of a predetermined floor reaction force component of a floor reaction force generated by the movement of the mobile robot in order to achieve the object. And a gait generator that generates a desired gait including at least the desired motion of the mobile robot so as to satisfy the allowable range.
- Provisional target motion creating means for creating a temporary motion that is a temporary value of the target motion using a predetermined first dynamic model of the mobile robot so that the floor reaction force component satisfies the allowable range;
- the first reaction is generated by the floor reaction force component generated on the second dynamic model and the motion.
- An evaluation unit for evaluating whether the floor reaction force component error calculated by the floor reaction force component error calculation unit is within a predetermined allowable error range; and When the floor reaction force component error corresponding to the temporary motion falls within the allowable error range, the temporary motion is determined as the target motion, and the floor reaction force component error corresponding to the temporary motion is reduced to the allowable error range.
- a target motion determining means for correcting the provisional motion at least once or more to determine the target motion.
- the target motion determining means corrects the n-th (n: n ⁇ l) integer of the tentative motion.
- the post-correction motion determined by the n-th post-correction motion is referred to as the n-th post-correction motion
- the floor reaction force component error calculated from the n-th post-correction motion by the floor reaction force component error calculating means is referred to as the n-th floor reaction force component error.
- the target motion determining means may include an error of the (n ⁇ 1) th floor reaction force component and at least the (n ⁇ 1) th floor reaction force component error in the floor reaction force component generated on the first dynamic model by the nth corrected motion.
- a post-correction motion determining process for determining the n-th post-correction motion such that the sum of the floor reaction force correction amount determined according to the component error and the floor reaction force correction amount satisfies the allowable range; and The difference between the n-th floor reaction force component error corresponding to the motion and the n-1 floor reaction force component error corresponding to the n-1 corrected motion, and the n-th floor reaction force component error and at least the n-th floor reaction force component error -1 Determines whether the floor reaction force component error change amount AFM defined as one of the difference with the floor reaction force component correction amount determined according to the floor reaction force component error has converged to 0 or not. The convergence determination process is repeated at least until it is determined that the floor reaction force component error change amount AFM has converge
- the dynamic accuracy of the second dynamic model is different from that of the first dynamic model. Is higher than the floor reaction force generated on the second dynamic model by the arbitrary motion of the robot than the floor reaction force generated on the first dynamic model by the motion. This means that the actual floor reaction force (actual floor reaction force) acting on the robot when the actual robot performs the motion on the floor on which the motion is performed is closer to the actual floor reaction force. This applies not only to the first invention but also to any of the second to sixteenth inventions described below.
- an arbitrary motion model of the robot satisfies a predetermined floor reaction force component (a translational floor reaction force horizontal component, a floor reaction force moment vertical component, etc.) on an arbitrary dynamic model
- a predetermined floor reaction force component a translational floor reaction force horizontal component, a floor reaction force moment vertical component, etc.
- the predetermined floor reaction force component generated on the dynamic model due to the motion (the predetermined floor reaction force component of the floor reaction force for which the dynamics of the dynamic model is established with respect to the motion) Min.) Falls within the allowable range.
- the provisional target movement creating means generates a provisional movement that is a provisional value of the target movement for the time being. This provisional motion is created using the first dynamics model such that the floor reaction force component satisfies the allowable range.
- the evaluation means evaluates whether or not the floor reaction force component error obtained from the temporary motion by the floor reaction force component error calculation means falls within a predetermined allowable error range.
- the floor reaction force component error corresponding to the provisional motion is generated on the first dynamic model by the provisional motion and the floor reaction force component generated on the second dynamic model. Since this is a difference from the floor reaction force component, it means an error of the floor reaction force component on the first dynamic model with respect to the provisional motion.
- the provisional movement In the evaluation by the evaluation means, when the floor reaction force component error corresponding to the provisional movement is within an allowable error range, the provisional movement generates on the first dynamic model. Since the error of the floor reaction force component is sufficiently small !, the provisional motion is determined as the target motion. If the floor reaction force component error corresponding to the provisional movement deviates from the permissible error range, the provisional movement is corrected at least once by the target movement determining means. can get. In correcting the temporary motion, the target motion determining means determines that the corrected motion determining process and the convergence determining process have converged at least to the floor reaction force component error change amount AFM to 0. Repeat until Then, the post-correction motion determined in the final post-correction motion determination process in the repetition process is determined as the target motion.
- the floor reaction force component generated on the first dynamic model by the n-th post-correction motion after the n-th correction is added to the (n ⁇ 1) th correction. It is determined according to the (n ⁇ 1) th floor reaction force component error calculated corresponding to the post-motion (the 0th corrected motion is the tentative motion) and at least the (n ⁇ 1) th floor reaction force component error.
- the n-th corrected motion is determined on the second dynamic model because the n-th corrected motion is determined so that the sum of the floor reaction force correction amount and the floor reaction force correction value satisfies the allowable range. There is a high possibility that the floor reaction force component will satisfy the allowable range.
- the n-th corrected motion is not generally the same as the (n-1) -th corrected motion
- the n-th floor reaction force component error added in determining the n-th corrected motion is considered.
- the floor reaction force correction amount corresponding to this is not necessarily appropriate. Therefore, in the first invention, it is determined in the convergence determination processing whether or not the floor reaction force component error change amount ⁇ FM converges to 0, and the corrected motion determination is performed at least until it is determined that convergence is achieved. Repeat the process.
- the nth floor reaction force component error corresponding to the nth corrected motion determined at that time is the (n ⁇ 1) th floor reaction force component error or the Since the floor reaction force correction amount is substantially equivalent to the floor reaction force correction amount, the (n ⁇ 1) th floor reaction force component error or the floor reaction force correction amount corresponding to the (n ⁇ 1) th floor reaction force component error when determining the n-th corrected motion is appropriate. It can be said that there is a (highly reliable!) Floor reaction force component error. Then, the n-th corrected motion at this time is determined as the target motion.
- the corrected motion is created on a first kinetic model (which is generally more linear than the second kinetic model), and the second kinetic model is simply an n-th (1) Since it is used to calculate the floor reaction force from the post-correction motion, the process of generating the n-th post-correction motion and the process of calculating the floor reaction force for the (n-1) post-correction motion must be performed efficiently and in a short time. Can be. Further, the tentative motion (the motion after the 0th correction) does not require much dynamic accuracy, so that the temporary motion can be easily and quickly created using a highly linear dynamic model such as the first dynamic model. it can.
- the first invention it is possible to efficiently generate a gait that satisfies the allowable range of the predetermined component of the floor reaction force, and to obtain a dynamic between the motion of the gait and the floor reaction force. Good target accuracy can be ensured.
- the target motion is created using the first dynamics model, which is generally more linear than the second dynamics model, the floor reaction force component error or the corresponding It is possible to efficiently generate a target motion such that the floor reaction force component considering the floor reaction force correction amount can appropriately satisfy the allowable range.
- the second aspect of the mobile robot gait generating device of the present invention provides an allowable range of a predetermined floor reaction force component of a floor reaction force generated by the movement of the mobile robot.
- a gait generator for generating a desired gait including at least a desired movement of the mobile robot so as to satisfy a permissible range by setting a surrounding area;
- Provisional target movement creating means for creating a provisional movement that is a provisional value of the target movement; a predetermined first dynamics model of the mobile robot; and a predetermined dynamics accuracy higher than the first mobile dynamics model.
- the floor reaction force component generated on the second dynamic model by the motion with respect to an arbitrary motion of the mobile robot and the first dynamic model by the motion A floor reaction force component error calculating means for obtaining a floor reaction force component error that is a difference from the floor reaction force component generated in;
- Target movement determining means for correcting the temporary movement at least once or more to determine the target movement
- the corrected motion obtained by the target motion determining means by the n-th correction (n: n ⁇ 1) of the provisional motion is referred to as an n-th corrected motion, and the floor movement is calculated from the n-th corrected motion.
- the floor reaction force component error obtained by the force component error calculation means is defined as the n-th floor reaction force component error
- the temporary motion is defined as the 0th corrected motion
- the floor reaction force component error calculation means obtains the temporary motion from the temporary motion.
- the target motion determining means includes an error of the (n ⁇ 1) th floor reaction force component and at least the (n ⁇ 1) th floor reaction force component error in the floor reaction force component generated on the first dynamic model by the nth corrected motion.
- a post-correction motion determining process for determining the n-th post-correction motion so that the sum of any of the floor reaction force correction amounts determined according to the component errors satisfies the allowable range; and The nth floor reaction force component error corresponding to the motion and the n-1st corresponding to the n-1st corrected motion The difference between the floor reaction force component error, and the difference between the n-th floor reaction force component error and the floor reaction force correction amount determined in accordance with at least the (n-1) th floor reaction force component error.
- the convergence determination process for determining whether the defined floor reaction force component error change amount AFM has converged to 0 is performed until at least the floor reaction force component error change amount AFM is determined to have converged to 0. It is characterized in that the corrected motion determined in the last post-correction motion determination process in this repetition process is determined as the target motion.
- the evaluation means in the first invention is omitted, and the corrected motion determination process and the convergence determination process are executed at least once.
- the temporary motion may be created using the first dynamics model so that the floor reaction force component satisfies the allowable range, as in the first invention. Good, but it doesn't have to be.
- the operation and effect of the post-correction motion determination processing and the convergence determination processing are the same as those of the first invention. Therefore, a desired gait with high dynamic accuracy that can satisfy the allowable range of the floor reaction force component on the second dynamic model can be generated on the first dynamic model.
- the corrected motion is created on the first dynamic model, and the second dynamic model simply calculates the floor reaction force from the n-1 corrected motion. Since it is used to calculate the motion, the process of generating the n-th corrected motion and the process of calculating the floor reaction force for the n-1 th corrected motion can be performed efficiently and in a short time. In addition, since the tentative motion (the motion after the 0th correction) does not require much dynamic accuracy, the tentative motion is easily created in a short time using a highly linear dynamic model such as the first dynamic model. it can.
- the second invention similarly to the first invention, it is possible to efficiently generate a gait that can satisfy the allowable range of the predetermined component of the floor reaction force, and to simultaneously exercise the gait with the floor reaction force.
- the dynamic accuracy between the force and the force can be secured well.
- the target motion is created by using the first dynamic model, which is generally more linear than the second dynamic model, the floor reaction force component error or the corresponding The desired motion can be efficiently generated such that the floor reaction force component in consideration of the corrected floor reaction force correction amount can appropriately satisfy the allowable range.
- a third invention of the gait generation device for a mobile robot of the present invention includes a target value of a predetermined first floor reaction force component of the floor reaction force generated by the motion of the mobile robot and the first floor reaction force component. And a predetermined allowable range of the second floor reaction force component, which is different from the target value of the mobile robot, so that the target value of the first floor reaction force component and the allowable range of the second floor reaction force component are satisfied.
- a gait generator for generating a desired gait including at least movement
- the second dynamics A floor reaction force component error Aerr which is a difference between the first floor reaction force component generated on the dynamic model and the first floor reaction force component generated on the first dynamic model due to the motion, and A floor reaction force component error which is a difference between the second floor reaction force component generated on the second dynamic model due to the motion and the second floor reaction component generated on the first dynamic model due to the motion.
- the created temporary motion force The floor reaction force component error Aerr of the floor reaction force component error Aerr and Berr obtained by the floor reaction force component error calculation means falls within a predetermined first allowable error range! And evaluation means for evaluating whether or not the floor reaction force component error Berr falls within a predetermined second allowable error range,
- the evaluation means when both the floor reaction force component errors Aerr and Berr corresponding to the provisional movement fall within the corresponding first and second allowable error ranges, respectively, The motion is determined as the target motion, and at least one of the floor reaction force component errors Aerr and Berr corresponding to the provisional motion is either the first allowable error range or the second allowable error range corresponding to the error.
- the corrected motion determined by the target motion determining means by the n-th (n: n ⁇ l) correction of the tentative motion is referred to as an n-th corrected motion, and the floor reaction from the n-th corrected motion is performed.
- the floor reaction force component errors Aerr and Berr obtained by the force component error calculation means are respectively the nth floor reaction force component errors Aerr (n) and Berr (n), the provisional motion is the 0th corrected motion, and the provisional motion is Floor reaction force component errors Aerr and Berr corresponding to the zeroth floor reaction force component errors A err (0) and Berr (0), respectively.
- the target motion determining means includes, for the first floor reaction force component generated on the first dynamic model by the n-th corrected motion, an (n ⁇ 1) th floor reaction force component error Aerr (nl) and at least the second floor reaction force component error Aerr (nl).
- the value obtained by adding any one of the first floor reaction force correction amount determined according to the n-1 floor reaction force component error Aerr (nl) coincides with the target value, and
- the second floor reaction force component generated on the first dynamics model has an n-1st floor reaction force component error Berr (nl) and at least the n-1th floor reaction force component error Berr (nl).
- n floor A floor reaction defined as one of a difference between a force component error Aerr (n) and the first floor reaction force correction amount determined according to at least the (n ⁇ 1) th floor reaction force component error A err (nl).
- Force component error change amount ⁇ Aerr the n-th floor reaction force component error corresponding to the determined n-th corrected motion Berr (n) and the (n ⁇ 1) th corrected motion corresponding to the (n ⁇ 1) -th corrected motion Error Berr (nl), and the second floor reaction force determined in accordance with the n-th floor reaction force component error Berr (n) and at least the n-1st floor reaction force component error Berr (nl).
- a convergence determination process for determining whether the floor reaction force component error change amount ⁇ Berr defined as one of the differences from the force correction amount has converged to 0. It repeats until it is determined that both the forces ⁇ Aerr and ⁇ Berr have converged to the force ⁇ , and is determined in the last modified motion determination process in this repetition process. The motion after the correction is determined as the target motion.
- satisfying a desired value of a predetermined floor reaction force component on an arbitrary dynamic model with respect to an arbitrary motion of the robot is determined by the motion.
- the predetermined floor reaction force component generated on the dynamic model matches or almost matches the target value.
- the third aspect of the invention is based on a floor reaction force acting on the mobile robot, in addition to an allowable range of a second floor reaction force component (which corresponds to a predetermined floor reaction force component in the first invention).
- a desired gait including a desired exercise is generated so as to satisfy the desired value of the first floor reaction force component.
- the provisional target motion creating means generates a provisional motion that is a provisional value of the target motion for the time being. This provisional motion is created using the first dynamics model so that the first floor reaction force component matches the target value and the second floor reaction force component satisfies the allowable range. You.
- the floor reaction force component error Aerr and Berr obtained from the temporary motion by the floor reaction force component error calculation means fall within the first allowable error range and the second allowable error range, respectively. Evaluated by means.
- the floor reaction force component error Aerr corresponding to the tentative motion is represented by the first floor reaction force component generated on the second dynamic model by the tentative motion and the first dynamic model by the tentative motion. Since this is a difference from the first floor reaction force component generated in the above, it means an error of the first floor reaction force component on the first dynamic model with respect to the provisional motion.
- the floor reaction force component error Berr corresponding to the tentative motion is calculated on the first dynamic model by the second reaction force component generated on the second dynamic model by the tentative motion and by the tentative motion. Since this is a difference from the generated second floor reaction force component, it means an error of the second floor reaction force component on the first dynamic model with respect to the provisional motion. Note that the first allowable error range and the second allowable error range may be the same range.
- both the floor reaction force component errors Aerr and Berr corresponding to the provisional motion fall within the corresponding first and second allowable error ranges.
- the provisional motion is controlled by the eye movement. It is determined as a target movement.
- one of the floor reaction force component errors Aerr and Berr corresponding to the provisional motion deviates from the corresponding first or second allowable error range.
- the provisional motion is corrected at least once by the target motion determining means, and the correction results in the target motion.
- the target motion determining means sets the corrected motion determining process and the convergence determining process to at least both the floor reaction force component error change amounts AAerr and ⁇ Berr to 0. It repeats until it is determined that it has converged, and determines the post-correction motion determined in the final post-correction motion determination process in this repetition process as the target motion.
- the first floor reaction force component generated on the first dynamic model by the n-th post-correction motion after the n-th correction is added to the post-n ⁇ 1 post-correction component.
- the motion (the 0th corrected motion is the provisional motion) is the n ⁇ 1th floor reaction force component error Aerr (nl) and at least the (n ⁇ 1) th floor reaction force component error Aerr ( nl), the sum of the first floor reaction force correction amount and the first floor reaction force correction amount that matches the target value, and the second floor reaction force generated on the first dynamic model by the n-th corrected motion
- the 2 floor reaction force component error Berr (nl) and at least the n-1 floor reaction force component error Berr (nl) calculated corresponding to the n-1 post-correction motion are added to the 2 floor reaction force component.
- the n-th corrected motion is determined such that the sum of the second floor reaction force correction amount and the second floor reaction force correction amount satisfies the allowable range.
- the n-th corrected motion is not generally the same as the (n-1) -th corrected motion, the (n-1) -th floor reaction force component error Aerr (nl ) And Berr (nl), or the first floor reaction force correction amount and the second floor reaction force correction amount corresponding to these, are not necessarily appropriate. Therefore, in the third invention, based on the same concept as in the first invention, it is determined whether the floor reaction force component error change ⁇ Aerr and the floor reaction force component error change ⁇ Berr converge to 0, respectively.
- the corrected motion determination process is repeated until it is determined that at least both ⁇ Aerr and ⁇ Berr have converged.
- the nth floor reaction force component error Aerr (n), Berr (n) corresponding to the nth corrected motion determined at that time is The n ⁇ 1th floor reaction force component error Aerr (nl), Berr (n-1), respectively, or approximately the same as the first floor reaction force correction amount and the second floor reaction force correction amount corresponding to these.
- the n-th floor reaction force component error Aerr (nl) or the first floor reaction force correction amount corresponding to the n-th floor reaction force component error A 1 Floor reaction force component error Berr (nl) or the second floor reaction force error It can be said that both the force correction amount and the appropriate (highly reliable) floor reaction force component error.
- the motion after the n-th correction at this time is determined as the target motion.
- the corrected motion is created on a first kinetic model (which is generally more linear than the second kinetic model), and the second kinetic model is simply an n-th (1) Since it is used to calculate the floor reaction force from the post-correction motion, the process of generating the n-th post-correction motion and the process of calculating the floor reaction force for the (n-1) post-correction motion must be performed efficiently and in a short time. Can be.
- the temporary motion (the motion after the 0th correction) does not require much dynamic accuracy, so that the temporary motion can be easily created in a short time using a highly linear dynamic model such as the first dynamic model. it can.
- a gait that can satisfy the target value of the first floor reaction force component and the allowable range of the second floor reaction force component can be efficiently generated, and the gait of the gait can be efficiently generated.
- the dynamic accuracy between the movement and the floor reaction force can be ensured well.
- the target motion is created using the first dynamic model which is generally more linear than the second dynamic model, the floor reaction force component error Aerr or the corresponding The first floor reaction force component, which tastes the first floor reaction force correction amount, appropriately satisfies the target value, and the floor reaction force component error Berr or the second floor reaction force correction amount corresponding thereto is calculated. It is possible to efficiently generate a target motion in which the added second floor reaction force component can appropriately satisfy the allowable range.
- the fourth invention of the gait generation device for a mobile robot of the present invention provides a first floor reaction force component of a floor reaction force generated by the movement of the mobile robot.
- a target value and an allowable range of a predetermined second floor reaction force component different from the first floor reaction force component are set, and a target value of the first floor reaction force component and an allowable range of the second floor reaction force component are set.
- a gait generator that generates a desired gait including at least the desired movement of the mobile robot so as to satisfy the following condition: tentative target movement creating means for creating a temporary movement that is a temporary value of the desired movement.
- Target movement determining means for correcting the temporary movement at least once or more to determine the target movement
- the corrected motion obtained by the target motion determining means by the n-th correction (n: n ⁇ 1) of the provisional motion is referred to as an n-th corrected motion, and the floor movement is calculated from the n-th corrected motion.
- the floor reaction force component errors Aerr and Berr obtained by the force component error calculation means are respectively the nth floor reaction force component errors Aerr (n) and Berr (n), the temporary motion is the 0th corrected motion,
- the floor reaction force component errors Aerr and Berr obtained from the motion by the floor reaction force component error calculation means are respectively set to the zeroth floor reaction force component errors Aerr (O) and Berr (O)
- the target motion determining means includes, for the first floor reaction force component generated on the first dynamic model by the n-th corrected motion, an (n ⁇ 1) th floor reaction force component error Aerr (nl) and at least the second floor reaction force component error Aerr (nl).
- the value obtained by adding any one of the first floor reaction force correction amount determined according to the n-1 floor reaction force component error Aerr (nl) coincides with the target value, and
- the second floor reaction force component generated on the first dynamics model has an n-1st floor reaction force component error Berr (nl) and at least the n-1th floor reaction force component error Berr (nl).
- n Floor reaction force A floor reaction force defined as one of a difference between a minute error Aerr (n) and the first floor reaction force correction amount determined according to at least the (n ⁇ 1) th floor reaction force component error A err (nl).
- the floor reaction force component error change amount ⁇ Berr defined as one of the difference from the second floor reaction force correction amount determined according to the reaction force component error Berr (nl)
- the convergence determination process of determining whether or not the error has been converged to at least both the floor reaction force component error change amount ⁇ Aerr and ⁇ Berr is determined.
- the modified motion determined by the processing is determined as the target motion.
- the evaluation means in the third invention is omitted, and the corrected motion determination processing and the convergence determination processing are executed at least once.
- the first floor reaction force component matches the target value by using the first dynamics model, as in the third invention, and
- the second floor reaction force component may be created so as to satisfy the allowable range! ⁇ is not necessarily created in this way.
- the operational effects of the post-correction motion determination processing and the convergence determination processing are the same as those of the third invention. Therefore, a desired gait with high dynamic accuracy that satisfies the target value of the first floor reaction force component and the allowable range of the second floor reaction force component on the second dynamic model. Can be generated on the first kinetic model.
- the corrected motion is created on the first dynamic model, and the second dynamic model simply calculates the floor reaction force from the n-1 corrected motion. Since it is used to calculate the motion, the process of generating the n-th corrected motion and the process of calculating the floor reaction force for the n-1 th corrected motion can be performed efficiently and in a short time. In addition, since the tentative motion (the motion after the 0th correction) does not require much dynamic accuracy, the tentative motion is easily created in a short time using a highly linear dynamic model such as the first dynamic model. it can.
- a gait that can satisfy the target value of the first floor reaction force component and the allowable range of the second floor reaction force component can be efficiently generated.
- the target motion is created using the first dynamic model, which is generally more linear than the second dynamic model.
- the first floor reaction force component appropriately satisfies the target value and the floor reaction force component error Berr is added. It is possible to efficiently generate a target motion such that the second floor reaction force component appropriately satisfies the allowable range.
- the floor reaction force component is a translational floor reaction force horizontal component of a floor reaction force acting on the mobile robot (a fifth invention). According to this, it is possible to generate a desired gait in which the translational floor reaction force horizontal component appropriately satisfies the allowable range (contains within the allowable range), so that it is possible to appropriately generate a desired gait that is unlikely to cause a slip of the robot.
- the first floor reaction force component is a floor reaction force of the floor reaction force acting on the moving robot around a predetermined point of action (for example, a target ZMP). It is a force moment horizontal component, and the second floor reaction force component is preferably a translational floor reaction force horizontal component of a floor reaction force acting on the mobile robot (a sixth invention).
- the floor reaction force moment horizontal component around the predetermined action point satisfies the target value
- the translational floor reaction force horizontal component satisfies the allowable range (ie, falls within the allowable range). Since the gait can be generated, it is difficult for the robot to slip while satisfying the dynamic equilibrium condition. ⁇ The desired gait can be generated appropriately.
- the seventh invention of the mobile robot gait generator of the present invention provides a target ZMP of the mobile robot and a translational floor reaction force generated by the motion of the mobile robot.
- a gait generator which sets a permissible range of a horizontal component and generates a desired gait including at least a target motion of the mobile robot so as to satisfy the target ZMP and the permissible range of the translational floor reaction force horizontal component.
- Error ZMPerr which is the difference between ZMP calculated on the dynamic model and ZMP calculated on the first dynamics model by the motion
- Translation which is the difference between the translational floor reaction force horizontal component generated and the translational floor reaction force horizontal component generated on the first dynamic model by the motion.
- Error calculating means for obtaining a floor reaction force horizontal component error Ferr
- At least one of the ZMP error ZMPerr and the translational floor reaction force horizontal component error Ferr corresponding to the provisional motion deviates from the corresponding first or second allowable error range! / If you want! Then, the corrected motion determined by the target motion determining means by the n-th correction of the provisional motion (n: an integer satisfying n ⁇ l) is referred to as an n-th corrected motion, and the floor motion is calculated from the n-th corrected motion.
- the ZMP error ZMPerr and the translational floor reaction force horizontal component error Ferr obtained by the reaction force component error calculation means are defined as an n-th ZMP error ZMPerr (n) and an n-th translational floor reaction force horizontal component error Ferr (n), respectively.
- the target motion determining means is responsive to the ZMP calculated on the first dynamic model by the n-th corrected motion, the (n ⁇ 1) th ZMP error ZMPerr (nl) and at least the (n ⁇ 1) th ZMP error ZMPerr (nl).
- the translational floor generated on the first dynamics model by the n / m-corrected motion matches the target ZMP with!
- the deviation from the ZMP correction amount determined in The reaction force horizontal component includes the n-1st translational floor reaction force horizontal component error Ferr (nl) and at least the floor reaction force correction amount determined according to the n-1st translational floor reaction force horizontal component error Ferr (nl) When Determine the n-th corrected motion so that the sum of the deviations satisfies the allowable range.
- the corrected motion determination process, and the n-th ZMP error ZMPerr (n) corresponding to the determined n-th corrected motion.
- the ZMP error change amount A ZMPerr defined as one of the difference from the ZMP correction amount determined accordingly and the n-th translational floor reaction force horizontal component error Ferr (n ) And the n-1 translational floor reaction force horizontal component error F err (nl) corresponding to the n-1 corrected motion, and at least the n-th translation floor reaction force horizontal component error Ferr (n)
- the convergence judgment processing for judging whether or not the flat component error variation ⁇ Ferr has converged to 0 is performed at least by the ZMP error variation ⁇ ZMPerr and the translational floor reaction force horizontal component error variation ⁇ Ferr. It repeats until it is determined that it has converged to 0, and determines the post-correction motion determined in the last post-correction motion determination process in this repetition process as the target motion.
- satisfying the target ZMP on an arbitrary dynamic model for an arbitrary motion of the robot means that the robot generates on the dynamic model by the motion. It means that the horizontal component of the moment generated around the target ZMP (or the floor reaction force moment horizontal component that balances the moment) is zero or almost zero, as the resultant of the inertial force and the gravity acting on the robot. This is the same in the eighth, tenth, fifteenth, and sixteenth inventions described below.
- the provisional target movement creating means generates a provisional movement that is a provisional value of the target movement for the time being.
- the provisional motion is created using the first dynamics model such that the target ZMP is satisfied and the translational floor reaction force horizontal component satisfies the allowable range.
- the ZMP error ZMPerr and the translational floor reaction force horizontal component error Ferr obtained from the provisional motion by the error calculating means fall within the first allowable error range and the second allowable error range, respectively. Is evaluated by In this case, the ZMP error ZMPerr corresponding to the provisional motion is calculated on the second dynamic model by the provisional motion.
- the difference between the ZMP calculated on the first dynamic model and the ZMP calculated on the first dynamic model by the temporary motion means an error of the ZMP on the first dynamic model with respect to the temporary motion.
- the translational floor reaction force horizontal component error Berr corresponding to the provisional motion is the translational floor reaction force horizontal component generated on the second dynamic model due to the provisional motion and the first dynamic model Since this is the difference from the translational floor reaction force horizontal component generated above, it means the error of the translational floor reaction force horizontal component on the first dynamic model for the tentative motion.
- both the ZMP error ZMPerr and the translational floor reaction force horizontal component error Ferr corresponding to the provisional motion correspond to the first allowable error range and the second allowable error range, respectively. If the error is within the allowable error range, the ZMP calculated on the first dynamic model by the provisional motion is sufficiently small and the translational floor generated on the first dynamic model by the provisional motion is generated. Since the error of the reaction force horizontal component is both sufficiently small! /, The provisional movement is determined as the target movement.
- the target motion determining means determines the corrected motion determining process and the convergence determining process by at least the ZMP error change ⁇ ZMPerr and the translational floor reaction force horizontal component error. The process is repeated until it is determined that both the change amounts ⁇ Ferr converge to 0, and the corrected motion determined in the final corrected motion determination process in this repetition process is determined as the target motion.
- the ZMP calculated on the first dynamic model by the n-th post-correction motion after the n-th correction is added to the n ⁇ 1 post-correction motion (
- the motion after the 0-th correction is the provisional motion
- an (n ⁇ 1) -ZMP error ZMPerr (nl) calculated corresponding to the temporary motion is the provisional motion
- the translational floor reaction force horizontal component generated on the first dynamic model by the n-th corrected motion is obtained by adding any one of N ⁇ 1 translational floor reaction force horizontal component error Ferr (nl) calculated in accordance with and the floor reaction force correction amount determined according to at least the n ⁇ 1 translational floor reaction force horizontal component error Ferr (nl) And added either The n-th corrected motion is determined so that the object satisfies the above-mentioned tolerance.
- the convergence judgment is made based on the same concept as in the first invention, whether or not the ZMP error change amount ⁇ ZMPerr and the translational floor reaction force horizontal component error change amount ⁇ Ferr converge to 0, respectively.
- the corrected motion determination process is repeated until it is determined that at least both ⁇ ZMPerr and ⁇ Ferr have converged.
- the nZMP error ZMPerr (n) and the nth translational floor reaction force horizontal component error Ferr corresponding to the nth corrected motion determined at that time (n) is the n-1st ZMP error ZMPerr (nl), the n-1st translational floor reaction force horizontal component error Ferr (n-1), or the ZMP correction amount and the floor reaction force correction amount corresponding to these, respectively.
- n-th ZMP error ZMPerr (nl) or the ZMP correction amount corresponding thereto which is added when determining the n-th corrected motion, and the n-th translational floor reaction force horizontal It can be said that both the component error Ferr (nl) and the floor reaction force correction amount corresponding thereto are appropriate (highly reliable) floor reaction force component errors. Then, the n-th corrected motion at this time is determined as the target motion.
- a target gait with high dynamic accuracy that satisfies the target ZMP on the second dynamic model and the allowable range of the translational floor reaction water in the first dynamic model can be obtained. It can be generated on the model.
- the corrected motion is created on a first kinetic model (which is generally more linear than the second kinetic model), and the second kinetic model is simply an n-th (1) Since it is used to find the ZMP and floor reaction force from the post-correction motion, the process of generating the n-th post-correction motion and the process of calculating the ZMP and floor reaction force for the (n-1) post-correction motion are efficiently shortened. Do it in time. In addition, since the tentative motion (the motion after the 0th correction) does not require much dynamic accuracy, it can be easily and quickly performed using a highly linear dynamic model such as the first dynamic model. Can be created.
- the target ZMP and the allowable range of the translational floor reaction force horizontal component are satisfied.
- a possible gait can be efficiently generated, and dynamic accuracy between the motion of the gait and the floor reaction force can be ensured well.
- the ZMP error ZMPerr or the corresponding ZMP taking into account the ZMP correction amount appropriately satisfies the target ZMP, and the translational floor reaction force horizontal component error Ferr or the translational floor reaction force horizontal component taking into account the floor reaction force correction amount corresponding to this is appropriately allowed.
- the target motion that can satisfy the range can be efficiently generated.
- an eighth aspect of the mobile robot gait generator of the present invention provides a target ZMP of the mobile robot and an allowable range of a translational floor reaction force horizontal component generated by the motion of the mobile robot. And a gait generator for generating a desired gait including at least the desired motion of the mobile robot so as to satisfy the desired ZMP and the allowable range of the translational floor reaction force horizontal component.
- a temporary target motion creating means for creating a temporary motion that is a temporary value of the target motion; a predetermined first dynamic model of the mobile robot; and a predetermined second dynamic model having a higher dynamic accuracy than the first dynamic model.
- ZMP calculated on the second dynamic model by the motion and ZMP calculated on the first dynamic model by the motion And the translational floor reaction force horizontal component generated on the first dynamics model by the motion and the translational floor reaction force horizontal component generated on the second dynamics model by the motion.
- Error calculating means for obtaining a translational floor reaction force horizontal component error Ferr, which is a difference from
- Target movement determining means for correcting the temporary movement at least once or more to determine the target movement
- the corrected motion determined by the target motion determining means by the n-th correction (n: n ⁇ 1) of the temporary motion is referred to as an n-th corrected motion, and the floor movement is calculated from the n-th corrected motion.
- the ZMP error ZMPerr and the translational floor reaction force horizontal component error Ferr obtained by the force component error calculation means are defined as the n-th ZMP error ZMPerr (n) and the n-th translational floor reaction force horizontal component error F err (n), respectively.
- the motion is assumed to be the 0th corrected motion, and the ZMP error ZMPerr and the translational floor reaction force horizontal component error Ferr obtained from the provisional motion by the floor reaction force component error calculating means are calculated.
- the target motion determining means includes an (n ⁇ 1) -th ZMP error ZMPerr (nl) and at least the (n ⁇ 1) -th ZMP error ZMPerr (n ⁇ 1) in the ZMP calculated on the first dynamic model by the n-th corrected motion.
- the difference between the! / And the ZMP correction amount determined in accordance with the target is the same as the target ZMP, and the n-corrected motion is generated on the first dynamic model.
- the translational floor reaction force horizontal component includes an (n ⁇ 1) th translational floor reaction force horizontal component error Ferr (nl) and at least the n ⁇ 1th translational floor reaction force horizontal component error Ferr (nl).
- the n-th corrected motion is determined so that the sum of the correction amount and the deviation or the difference satisfies the allowable range.
- the ZMP error defined as one of the differences from the ZMP correction amount determined according to the ZMPerr (n-1)
- the change amount A ZMPerr corresponding to the determined n-th corrected motion The difference between the nth translational floor reaction force horizontal component error Ferr (n) and the n-1st translational floor reaction force horizontal component error F err (nl) corresponding to the n-1st corrected motion, and the nth translation
- the difference between the floor reaction force horizontal component error Ferr (n) and the floor reaction force correction amount determined in accordance with at least the n ⁇ 1th translational floor reaction force horizontal component error Ferr (nl) is defined as V or deviation.
- the convergence determination process for determining whether or not the translational floor reaction force horizontal component error change ⁇ Ferr converges to 0, respectively, at least by the ZMP error change ⁇ ZMPerr and the translational floor reaction force horizontal component error change. Repeat until it is determined that both of the quantities ⁇ Ferr have converged to 0, and repeat until it is determined that both of the forces have converged to ⁇ . Is characterized in determining a corrected was determined at the end of the corrected motion determination processing motion in processing returns as the target exercise.
- the evaluation means in the seventh invention is omitted, and the corrected motion determination processing and the convergence determination processing are executed at least once.
- the provisional motion is created using the first dynamics model so that the target ZMP is satisfied and the translational floor reaction force horizontal component satisfies the allowable range.
- the operation and effect of the post-correction motion determination processing and the convergence determination processing are the same as those of the seventh invention. Accordingly, a target gait with high dynamic accuracy that satisfies the target ZMP on the second dynamic model and satisfies the allowable range of the horizontal component of the floor reaction force in the first dynamic model. Can be generated by
- the corrected motion is created on a first kinetic model (which is generally more linear than the second kinetic model). Is simply used to determine the n ⁇ 1th corrected motion force ZMP and the floor reaction force, so the generation of the nth corrected motion and the ZMP and floor reaction force The calculation process can be performed efficiently and in a short time. Also, since the tentative motion (the motion after the 0th correction) does not require much dynamic accuracy, it can be easily and quickly created using a highly linear dynamic model such as the first dynamic model. it can.
- the eighth invention similarly to the seventh invention, it is possible to efficiently generate a gait that satisfies the target ZMP and the allowable range of the translational floor reaction force horizontal component, and at the same time, moves the gait.
- the dynamic accuracy between the ground reaction and the floor reaction can be ensured well.
- the ZMP error ZMPerr or the ZMP The ZMP that takes into account the correction amount appropriately satisfies the target ZMP, and the translational floor reaction force horizontal component error Ferr or the translational floor reaction force horizontal component that takes into account the floor reaction force correction amount corresponding to this error is appropriately set. It is possible to efficiently generate a target motion that satisfies the allowable range.
- the first floor reaction force component generated on the first dynamic model by the provisional motion is the same as the first invention. It matches or almost matches the target value.
- the n-th corrected motion includes the first floor reaction force horizontal component generated on the first dynamics model, the (n ⁇ 1) th floor reaction force component error Aerr (nl), and a predetermined The value obtained by adding any one of the values multiplied by the first coefficient is determined to be equal to the target value.
- the first floor reaction force horizontal component generated on the first dynamic model by the n-th corrected motion is calculated from the target value by the n ⁇ 1th floor reaction force component error Aerr (nl) and a predetermined error It is equal to or almost equal to the value obtained by subtracting one of the values multiplied by the first coefficient.
- Aerr nl
- a predetermined error It is equal to or almost equal to the value obtained by subtracting one of the values multiplied by the first coefficient.
- the floor reaction force component error calculating means is configured to determine whether or not the temporary motion is generated on the first dynamic model by the temporary motion.
- the floor reaction force component error Aerr corresponding to the provisional movement is calculated, and for the n-th corrected movement other than the provisional movement, the n
- the first floor reaction force component error Aerr (nl) based on the target value and at least the n-1 floor
- the floor reaction force component error A corresponding to the n-th corrected motion is obtained by subtracting any force from the first floor reaction force correction amount determined according to the reaction force component error Aerr (nl).
- err may be calculated (the ninth invention).
- the provisional motion creating means is configured to satisfy a target value of the first floor reaction force component on at least the first dynamic model.
- the provisional motion is generated by the first floor reaction force component error calculating means, the first reaction force generated on the first dynamic model by the provisional motion is generated.
- the floor reaction force component error Aerr corresponding to the provisional movement is calculated by using the target value as the force component, and for the n-th corrected movement other than the provisional movement, the n-th corrected movement is performed.
- the (n ⁇ 1) th floor reaction force component error Aerr (nl) and at least the (n ⁇ 1) th floor reaction force component are calculated from the target value.
- the difference obtained by subtracting any of the first floor reaction force correction amounts determined according to the error Aerr (nl) May be set to so that to calculate the floor reaction force component error Aerr corresponding after said n corrected motion by Being (tenth aspect).
- the ninth invention or the tenth invention without directly calculating the first floor reaction force component from the n-th corrected motion by the first dynamics model, the floor corresponding to these motions is not calculated.
- the reaction force component error can be easily obtained.
- the floor reaction force component error calculating means responds to the temporary motion by the first dynamics by the temporary motion.
- the ZMP error ZMPerr to be calculated is calculated, and for the n-th corrected motion other than the provisional motion, the ZMP calculated on the first dynamic model by the n-th corrected motion is calculated from the target ZMP.
- the n-th correction is performed by subtracting any one of the (n ⁇ 1) -th ZMP error ZMPerr (nl) and the ZMP correction amount determined according to at least the (n ⁇ 1) -th ZMP error ZMPerr (nl).
- the ZMP error ZMPerr corresponding to the post-motion may be calculated (eleventh invention).
- the reaction force component error calculating means uses the target ZMP as the ZMP calculated on the first dynamics model by the provisional motion by using the target ZMP error for the provisional motion.
- ZMPerr is calculated, and for the n-th corrected motion other than the provisional motion, as the ZMP calculated on the first dynamic model by the n-th corrected motion, from the target ZMP to the (n ⁇ 1) ZMP Either the error ZMPerr (nl) or at least the (n ⁇ 1) -th ZMP error ZMPerr (n ⁇ 1) determined in accordance with the ZMP error (n ⁇ 1).
- the ZMP error ZMPerr corresponding to the movement may be calculated as follows. Akira).
- the ZMP errors corresponding to these motions are not directly calculated from the provisional motion or the n-th corrected motion by the first dynamic model, but are calculated. Can be easily obtained.
- the target movement, the provisional movement, and the corrected movement are the time series of the instantaneous values of the movement of the mobile robot during a predetermined period.
- the m-th floor reaction force component error (m: an integer that satisfies m ⁇ 0) obtained by the floor reaction force component error calculation means is calculated by the m-th correction motion.
- the predetermined allowable error range of the evaluation means is an allowable error range for a predetermined first characteristic amount of the time-series notons constituting the zeroth floor reaction force component error, and the target motion determining means
- the corrected motion determination process of the present invention includes, at each time t of the n-th corrected motion, an instantaneous value FM of the floor reaction force component generated on the first dynamic model at time t by the n-th corrected motion.
- (t) the value obtained by adding one of the value of the (n ⁇ 1) th floor reaction force component error at the time t and the value of the floor reaction force correction amount determined at least in accordance with the value is obtained at the time.
- the instantaneous value of the n-th corrected motion at the time t is determined so as to satisfy the allowable range at the time t, and the floor reaction force component error change amount AFM is the n-th floor reaction force component error.
- the floor reaction force component error change amount AFM is the n-th floor reaction force component error.
- the convergence determination process of the target motion determining means is such that the predetermined second characteristic amount of the time series pattern forming the floor reaction force component error change amount ⁇ FM is a predetermined allowable change. It is preferable that the process is a process of determining that the floor reaction force component error change amount AFM force SO has converged when the value falls within the range (the thirteenth invention).
- the types of the first feature amount and the second feature amount are a maximum value of an absolute value of a time series (an absolute value of each value of a time series), or The sum of the absolute values, the effective value of the pattern of the time series, or the difference between the maximum value and the minimum value of the time series is exemplified.
- the types of the first feature amount and the second feature amount need not be the same, but may be the same.
- the evaluation means includes: a first characteristic of a time-series pattern constituting the zeroth floor reaction force component error (that is, the floor reaction force component error corresponding to the provisional motion). Since it is evaluated whether the amount falls within the allowable error range, it can be evaluated whether the time series of the zeroth floor reaction force component error is sufficiently small as a whole. As a result, it is possible to appropriately evaluate whether or not the entire time series of the instantaneous values of the provisional movement is suitable as the time series of the target movement. Further, in the convergence determination process, it is determined that the predetermined second feature amount of the time-series pattern constituting the floor reaction force component error change amount AFM falls within a predetermined allowable change amount range.
- the time series of the determined instantaneous values of the n-th corrected motion is a force determined by taking into account a highly reliable floor reaction force component error or a highly reliable floor reaction force correction amount. It is possible to judge appropriately. As a result, the reliability of the dynamic accuracy of the desired gait including the finally determined desired movement can be improved.
- the target motion, the provisional motion, and the corrected motion are the motions of the mobile robot in a predetermined period.
- the m-th floor reaction force component error (m: an integer that satisfies m ⁇ 0) obtained by the floor reaction force component error calculation means is the m-th corrected motion.
- the corrected motion determining process of the target motion determining means is performed at each time t of the n-th corrected motion, which is formed from a time series of the difference between the instantaneous value of the floor reaction force component and the instantaneous value during the predetermined period.
- the first dynamics at time t by the n-th corrected motion The instantaneous value FM of the floor reaction force components that occur on Dell (t), the first n - 1 floor values and at least the floor reaction force correction determined in accordance with said value of reaction force component error of the time t And determining the instantaneous value of the n-th corrected motion at the time t such that the sum of the deviations satisfies the allowable range at the time t.
- the floor reaction force component error variation ⁇ FM Is the difference between the value of the n-th floor reaction force component error at each time and the value of the (n-1) th floor reaction force component error at that time, and the time of the n-th floor reaction force component error. At least one of the value of the floor reaction force correction amount determined according to the value of the floor reaction force component error at the time and the value of the floor reaction force correction amount at least at the (n ⁇ 1) th floor reaction force component error.
- the convergence determination process of the target motion determining means is configured so that a predetermined feature amount of a time-series pattern constituting the floor reaction force component error change amount ⁇ FM falls within a predetermined allowable change amount range. At the same time, the process is to judge that the floor reaction force component error change amount AFM has converged to 0. Preferred (14th invention).
- examples of the type of the feature amount include those exemplified with respect to the thirteenth invention.
- a predetermined feature amount of a time-series pattern constituting the floor reaction force component error change amount ⁇ FM falls within a predetermined allowable change amount range. It is determined that the floor reaction force component error change amount AFM has converged to 0 at the time of execution, so that the time series of the determined instantaneous value of the n-th corrected motion is, as in the case of the thirteenth invention, Highly reliable ⁇ ⁇ Floor reaction force component error or highly reliable ⁇ It is possible to appropriately judge whether or not the force is determined in consideration of the floor reaction force correction amount. As a result, the reliability of the dynamic accuracy of the desired gait including the finally determined desired movement can be improved.
- the target movement, the provisional movement and the corrected movement are performed for a predetermined period. And a time series of instantaneous values of the motion of the mobile robot at
- the m-th floor reaction force component error Aerr of the m-th floor reaction force component error Aerr, B err (m: an integer that satisfies m ⁇ 0) obtained by the floor reaction force component error calculation means is the m-th corrected
- the time series of the difference between the instantaneous value of the first floor reaction force component occurring above and the instantaneous value in the predetermined period, and the m-th floor reaction force component error Berr is obtained at each time of the m-th corrected motion.
- the zeroth floor reaction force component error Aerr (O) is an allowable error range for a predetermined first feature amount of the time series pattern, and the predetermined second allowable error range is the zeroth floor reaction force component.
- the error Berr (O) is an allowable error range for a predetermined second feature amount of the time-series pattern constituting the error Berr (O), and the corrected motion determining process of the target motion determining means is performed on the n-th corrected motion.
- the n-th repair The instantaneous value of the first floor reaction force component generated on the first dynamics model at time t due to the posterior movement is calculated by adding the value at time t of the (n ⁇ 1) th floor reaction force component error Aerr (nl). A value obtained by adding at least one of the first floor reaction force correction amount determined according to the value satisfies the target value at the time t, and the time obtained by the n-th corrected motion is the time.
- the instantaneous value of the n-th corrected motion at the time t is determined so that a value obtained by adding a deviation from the value of the second floor reaction force correction amount determined accordingly satisfies the allowable range at the time t.
- the floor reaction force component error change amount ⁇ Aerr is a value at each time of the n-th floor reaction force component error Aerr (n) and the (n ⁇ 1) th floor reaction force component error Aerr ( nl) and the value of the n-th floor reaction force component error Aerr (n) at each time and at least the (n ⁇ 1) th floor reaction force component error Aerr (nl) at that time.
- a Berr Is the difference between the value of the n-th floor reaction force component error Berr (n) at each time and the value of the (n-1) th floor reaction force component error Berr (nl) at that time, and the n-th
- the second floor reaction force correction amount determined according to the value of the floor reaction force component error Berr (n) at each time and at least the (n ⁇ 1) th floor reaction force component error Berr (nl) at that time.
- the convergence determination process of the target motion determining means includes determining that a predetermined third feature amount of a time-series pattern constituting the floor reaction force component error change amount ⁇ Aerr is a predetermined tolerance for the third feature amount. It is determined that the floor reaction force component error change amount ⁇ Aerr has converged to 0 when falling within the change amount range, and the second of the time series patterns constituting the floor reaction force component error change amount ⁇ Berr is determined. Preferably, when the four characteristic amounts fall within a predetermined allowable change amount range for the fourth characteristic amount, the floor reaction force component error change amount ⁇ Berr force converges to ⁇ Berr force ⁇ . ).
- examples of each of the first to fourth feature amounts include those exemplified with respect to the thirteenth invention.
- the types of the first to fourth feature quantities need not be the same, but may be the same!
- the evaluation means calculates the zeroth floor reaction force component error Aerr (O) (ie, the floor reaction force component error Aerr corresponding to the provisional motion).
- the first feature amount of the series pattern and the second feature amount of the time series pattern forming the zeroth floor reaction force component error Aerr (O) (that is, the floor reaction force component error Berr corresponding to the provisional motion) Since it is evaluated whether they fall within the first and second allowable error ranges corresponding to each, the time series of Aerr (0) and Berr (0) is Small enough! /, Or not. As a result, it is possible to appropriately evaluate whether or not the entire time series of the instantaneous values of the provisional movement is suitable as the time series of the target movement.
- the predetermined third feature amount force of the time series pattern forming the floor reaction force component error change amount ⁇ Aerr is set to the predetermined third feature amount force when the value falls within the permissible change amount range corresponding thereto. It is determined that the variation has converged to the Aerr force ⁇ , and the predetermined fourth characteristic amount of the time series pattern constituting the floor reaction force component error variation amount ⁇ Berr falls within the permissible variation amount range corresponding thereto.
- the time series of the (n ⁇ 1) th floor reaction force component error Aerr (nl) and Berr (n ⁇ 1) corresponding to the (n ⁇ 1) th corrected motion Alternatively, each of the time series of the first floor reaction force correction amount and the second floor reaction force correction amount according to these Aerr (nl) and Berr (nl), and the n-th floor corresponding to the n-th corrected motion It can be determined whether or not the time series of the reaction force component errors Aerr (n) and Berr (nl) have substantially the same overall pattern. As a result, the time series of the instantaneous values of the n-th corrected motion determined as described above is highly reliable!
- the floor reaction force component error Aerr, Berr or the highly reliable first floor reaction force correction amount and second floor It is possible to appropriately determine whether or not the force is determined in consideration of the reaction force correction amount. As a result, the reliability of the dynamic accuracy of the desired gait including the finally determined desired movement can be improved.
- the target movement, the provisional movement, and the corrected movement are the movements of the moving port bot during a predetermined period.
- the m-th floor reaction force component error Aerr Berr (m: m is an integer that satisfies m ⁇ 0) which is obtained by the floor reaction force component error calculation means.
- the m-th floor reaction force component error Aerr is the instantaneous value of the first floor reaction force component generated on the second dynamic model at each time of the m-th corrected motion due to the m-th corrected motion and the m-th corrected
- the first floor generated on the first kinetic model at the time due to the corrected motion A time-series force of the difference between the instantaneous value of the reaction force component and the instantaneous value of the reaction force component during the predetermined period is formed, and the m-th floor reaction force component error Berr is calculated at each time of the m-th corrected motion in the second dynamic model.
- the corrected motion determination process of the target motion determining means is performed at each time t of the n-th corrected motion at the time t by the n-th corrected motion at a time t.
- the instantaneous value of the first floor reaction force component generated on the dynamic model is added to the value of the (n ⁇ 1) th floor reaction force component error Aerr (nl) at time t and at least the value determined in accordance with the value. The value obtained by adding!
- the instantaneous value of the second floor reaction force component generated on the first dynamic model at the time t by the n-corrected motion at the time t is calculated at the time t of the n ⁇ 1th floor reaction force component error Berr (nl).
- the n-th corrected motion at the time t so that the one that radiates at least one of the value and at least the value of the second floor reaction force correction amount determined according to the value satisfies the allowable range at the time t.
- the floor reaction force component error change amount AAerr is a value at each time of the nth floor reaction force component error Aerr (n) and the (n ⁇ 1) th floor reaction force component error.
- the difference change amount ⁇ Berr is a difference between the value of the n-th floor reaction force component error Berr (n) at each time and the value of the (n ⁇ 1) th floor reaction force component error Berr (nl) at the time, and The second floor reaction force determined in accordance with the value at each time of the n-th floor reaction force component error Berr (n) and at least the value of the n ⁇ 1th floor reaction force component error Berr (nl) at the time.
- the convergence determination process of the target motion determining means comprises the floor reaction force component error change amount ⁇ Aerr.
- the process is a process for determining that the floor reaction force component error change amount ⁇ Berr force ⁇ has converged (16th invention).
- examples of the types of the third feature quantity and the fourth feature quantity include those exemplified with respect to the thirteenth invention.
- the types of the third and fourth feature amounts need not be the same, but may be the same.
- the predetermined third characteristic amount of the time-series pattern forming the floor reaction force component error change amount ⁇ Aerr corresponds to the permissible change. It is determined that the AAerr has converged to 0 when the value falls within the range, and the predetermined fourth feature amount of the time-series pattern constituting the floor reaction force component error change amount ⁇ Berr corresponds to this. Is determined to have converged to the ⁇ Berr force SO when the variation falls within the allowable change amount range, the time series of the determined instantaneous values of the n-th corrected motion are reliable, as in the thirteenth invention.
- the target movement, the provisional movement, and the corrected movement are the instantaneous values of the movement of the mobile robot during a predetermined period.
- the mZMP error ZMPerr and the translational floor reaction force horizontal component error Ferr (m: an integer that satisfies m ⁇ 0) obtained by the floor reaction force component error calculation means.
- the predetermined first allowable error range of the means is a predetermined first characteristic amount of a time-series pattern forming the zeroth ZMP error ZMPerr (O).
- the predetermined second allowable error range is a predetermined second characteristic amount of a time-series pattern forming the zeroth translational floor reaction force horizontal component error Ferr (O).
- the corrected motion determining process of the target motion determining means is performed at each time t of the n-th corrected motion at the time t by the n-th corrected motion on the first dynamic model.
- the instantaneous value of the ZMP calculated in the above is calculated by subtracting one of the value at the time t of the (n ⁇ 1) th ZMP error ZMPerr (nl) and the value of the ZMP correction amount determined at least according to the value. Satisfies the target ZMP at the time t and the instantaneous value of the translational floor reaction force horizontal component generated on the first dynamic model at the time t by the n-th corrected motion is n-1
- the translational floor reaction force horizontal component error Ferr (nl) is determined at least according to the value at time t.
- the ZMP error change amount A ZMPerr is the difference between the value of the n-th ZMP error ZMPerr (n) at each time and the value of the (n ⁇ 1) -th ZMP error ZMPerr (n ⁇ 1) at that time, and Any one of the difference between the value of the nZMP error ZMPerr (n) at each time and the value of the ZMP correction amount determined according to at least the value of the (n ⁇ 1) th ZMP error ZMPerr (nl) at the time.
- the translational floor reaction force horizontal component error change amount ⁇ Ferr is composed of the value at each time of the nth translational floor reaction force horizontal component error Ferr (n) and the nth — 1 Difference between the translational floor reaction force horizontal component error Ferr (nl) and the value at that time, and the n-th translational floor reaction force horizontal component error Ferr (n) at each time and at least n-1 translational floor reaction force horizontal component error Ferr (nl) from the time series in the predetermined period of any one of the differences from the value of the floor reaction force correction amount determined according to the value at the time.
- the convergence determining process of the target motion determining means is configured such that a predetermined third feature amount of a time-series pattern forming the ZMP error change amount ⁇ ZMPerr is a predetermined tolerance for the third feature amount. It is determined that the ZMP component error change amount ⁇ ZMPerr force SO has converged when falling within the change amount range, and a predetermined one of the time-series patterns constituting the translational floor reaction force horizontal component error change amount ⁇ Ferr.
- the process is a process of judging that the translational floor reaction force horizontal component error deviation A Ferr has converged to 0 when the fourth feature amount falls within a predetermined allowable variation range with respect to the fourth feature amount.
- examples of the types of the first to fourth feature amounts include those exemplified with respect to the thirteenth invention. In this case, the types of the first to fourth feature amounts need not be the same, but may be the same.
- the evaluation means includes a first characteristic of a time-series pattern constituting the zeroth ZMP error ZMPerr (O) (ie, the ZMP error ZMPerr corresponding to the provisional motion). And the second feature value of the time-series pattern forming the zeroth translational floor reaction force horizontal component error Ferr (O) (that is, the translational floor reaction force horizontal component error Ferr corresponding to the provisional motion).
- O zeroth ZMP error ZMPerr
- Ferr (0) that is, the translational floor reaction force horizontal component error Ferr corresponding to the provisional motion
- the target movement, the provisional movement, and the corrected movement are the instantaneous values of the movement of the mobile robot during a predetermined period.
- the floor reaction force component error calculating means The mZMP error ZMPerr of the mZMP error ZMPerr and the translational floor reaction force horizontal component error Ferr (m: an integer that satisfies m ⁇ 0) is obtained by the m-th corrected motion.
- the m-th translational floor reaction horizontal component error Berr is the instantaneous translational floor reaction horizontal component generated on the second dynamic model at each time of the m-th corrected motion.
- the post-correction motion determination process of The instantaneous value of ZMP calculated on the first dynamic model at time t by the n-th corrected motion is calculated by adding the value at time t of the n ⁇ 1th ZMP error ZMPerr (nl) and at least the value at time t.
- the value of the ZMP correction amount determined in accordance with the following formula satisfies the target ZMP at the time t, and the first motion is performed at the time t by the n-th corrected motion.
- the instantaneous value of the translational floor reaction force horizontal component generated on the dynamic model is determined in accordance with at least the value at time t of the (n ⁇ 1) th translational floor reaction force horizontal component error Ferr (nl) and the value determined at least in accordance with the value. And determining the instantaneous value of the n-th corrected motion at the time t such that the value obtained by adding any of the floor reaction force correction values satisfies the allowable range at the time t.
- the error change amount ⁇ ZMPerr is the value of the n-th ZMP error ZMPerr (n) at each time and the value of the (n ⁇ 1) -th ZMP error ZMPerr (n ⁇ 1) at that time.
- the translational floor reaction force horizontal component error change amount ⁇ Ferr is composed of the time-series force in one of the predetermined periods, and the time difference of the n-th translational floor reaction force horizontal component error Ferr (n) is obtained.
- the convergence determination process of the target motion determining means includes a ZMP error change amount ⁇ ZMPerr.
- the translation is performed when a predetermined fourth feature amount of the time-series patterns constituting the translational floor reaction force horizontal component error change amount ⁇ Ferr falls within a predetermined allowable change amount range for the fourth feature amount.
- the process is a process of determining that the floor reaction force horizontal component error deviation A Ferr has converged to 0 (the eighteenth invention).
- the types of the third feature quantity and the fourth feature quantity include those exemplified with respect to the thirteenth invention.
- the types of the third and fourth feature amounts need not be the same, but may be the same.
- the predetermined third characteristic amount force of the time series pattern forming ZMPerr falls within the permissible change amount range corresponding thereto, it is determined that the A ZMPerr force has converged, and the translational floor reaction force horizontal Since it is determined that the ⁇ Ferr force SO has been converged when the predetermined fourth feature amount of the time-series pattern constituting the component error change amount ⁇ Ferr falls within the permissible change amount range corresponding thereto.
- the time series of the determined instantaneous values of the n-th corrected operation is highly reliable!
- the ZMP error ZMPerr and the translational floor reaction water equilibrium error Ferr or the reliability It is possible to appropriately judge whether or not the force is determined by taking into account the highly responsive ZMP correction amount and the floor reaction force correction amount. As a result, the reliability of the dynamic accuracy of the desired gait including the finally determined desired movement can be improved.
- the error change amount generally converges to zero. Therefore, in the convergence determination process, when, for example, the number of repetitions (the number of executions) of the corrected motion determination process reaches a predetermined number, the error change amount converges to 0 (when two types of error change amounts are used). In such a case, it may be determined that both have converged.)
- the convergence of the error change amount to zero may be determined based on a difference between the n-th corrected motion and the (n ⁇ 1) -th corrected motion.
- the desired gait may include not only the desired movement but also the desired floor reaction force.
- the nth corrected motion finally determined as the target motion is used for the first and second inventions. 1
- the floor reaction force component obtained by adding the floor reaction force component generated on the dynamic model to the error of the n-1th floor reaction force component, or! / What is necessary is just to set the target value of the component.
- a floor reaction force component generated on the second dynamic model by the n-th corrected motion finally determined as the target motion may be set as the target value of the floor reaction force component.
- the tentative motion is determined as the target motion
- the floor reaction force component generated on the first dynamic model by the tentative motion may be set as the target value! ,.
- the final movement is finally determined as the target movement.
- the target value of the first floor reaction force component is defined as the target value of the first floor reaction force component
- the second floor reaction force component generated on the first dynamic model by the n-th corrected motion is calculated as The difference between the first floor reaction force component error Berr (nl) and the second floor reaction force correction amount corresponding thereto may be added as the target value of the second floor reaction force component.
- the first floor reaction force component and the second floor reaction force component generated on the second dynamic model by the n-th corrected motion finally determined as the target motion may be set as the respective target values.
- the provisional movement is determined as the target movement
- the first floor reaction force component and the second floor reaction force component generated on the first dynamic model by the provisional movement are set as respective target values.
- the n-th correction after finally determining the target movement is performed.
- the translational floor reaction force horizontal component generated on the first dynamics model by the movement is calculated by adding the n-1st translational floor reaction force horizontal component error Ferr (nl) or the floor reaction force correction amount corresponding to this to! / ⁇
- the value obtained by adding the above may be used as the target value of the translational floor reaction force horizontal component.
- Target ZMP can be left as it is.
- the translational floor reaction force horizontal component generated on the second dynamic model by the n-th corrected motion finally determined as the target motion may be set as the target value thereof. Further, when the provisional movement is determined as the target movement, the provisional movement causes the movement to be generated on the first dynamic model.
- the translational floor reaction force horizontal component that is generated should be the target value!
- the desired gait generated thereby is further corrected using a full model (third dynamic model) as described in Patent Documents 2 and 3.
- a full model third dynamic model
- the target gait generated in the eleventh to twelfth inventions has high dynamic accuracy, divergence of the gait in the full model hardly occurs. For this reason, it is possible to prevent the amount of correction of the target ZMP trajectory or the floor reaction force moment around the target ZMP from becoming excessive, and to keep the stability margin of the robot high.
- a bipedal mobile robot is taken as an example of the mobile robot.
- FIG. 1 is a schematic diagram showing an outline of an overall configuration of a bipedal mobile robot to which an embodiment of the present invention is applied.
- a bipedal mobile robot (hereinafter, referred to as a robot) 1 includes a pair of left and right legs (leg links) 2, 2 extending downward from an upper body (base of the robot 1) 3. . Both legs 2 and 2 have the same structure, each having six joints.
- the six joints are joints 10R and 10L for rotation (rotation) of the crotch (waist) (rotation in the Y direction with respect to the upper body 3) and the roll direction of the crotch (waist) in the order of the upper body 3 side force.
- Joints 12R and 12L for rotation (around the X axis), Joints 14R and 14L for rotation in the crotch (lumbar) pitch direction (around the Y axis), and joints 16R and 16L for rotation in the knee pitch direction And joints 18R and 18L for rotation of the ankle in the pitch direction, and joints 20R and 20L for rotation of the ankle in the roll direction.
- symbols R and L are symbols corresponding to the right side and the left side of the robot 1, respectively.
- a foot (foot) 22R (L) constituting the tip of each leg 2 is attached.
- the upper body 3 is attached to the top of both legs 2 and 2 via three joints 10R (L), 12R (L), and 14R (L) of the crotch of each leg 2. ing. Inside the body 3, a control unit 60 and the like, which will be described in detail later, are stored. In FIG. 1, the control unit 60 is shown outside the body 3 for convenience of illustration.
- the hip joint (or the hip joint) is connected to the joints 10R (L) and 12R.
- the knee joint is composed of the joint 16R (L)
- the ankle joint is the joint It is composed of 18R (L) and 20R (L).
- the hip joint and the knee joint are connected by a thigh link 24R (L)
- the knee joint and the ankle joint are connected by a lower leg link 26R (L).
- a pair of left and right arms 5 and 5 is attached to both upper sides of the upper body 3, and a head 4 is disposed at the upper end of the upper body 3.
- Each arm 5 has a shoulder joint composed of three joints 30R (L), 32R (L) and 34R (L), an elbow joint composed of joint 36R (L), and a joint 38R (L). And a wrist part 40R (L) connected to the wrist joint. Rigid links are formed between the shoulder joint and the elbow joint, and between the elbow joint and the wrist joint.
- the joint shown below
- the desired motion of both feet 22R and 22L can be performed.
- the robot 1 can arbitrarily move in the three-dimensional space.
- each arm 5 can perform a motion such as arm swing by rotating its shoulder joint, elbow joint, and wrist joint.
- a known 6-axis force sensor 50 is interposed between the ankle joints 18R (L) and 20R (L) of each leg 2 and the foot 22R (L). ing.
- the 6-axis force sensor 50 is for detecting whether the foot 22R (L) of each leg 2 lands, and detecting a floor reaction force (ground load) acting on each leg 2 and the like.
- the detection signals of the three-directional components Fx, Fy, Fz of the translational force of the floor reaction force and the three-directional components Mx, My, Mz of the moment are output to the control unit 60.
- the body 3 is provided with a posture sensor 54 for detecting the inclination angle and the angular velocity of the body 3 with respect to the Z axis (vertical direction (gravity direction)), and the detection signal is controlled by the posture sensor 54. Output to control unit 60.
- the attitude sensor 54 includes an acceleration sensor and a gyro sensor (not shown), and detection signals from these sensors are used to detect the attitude angle (inclination angle) of the body 3 and its angular velocity.
- each joint of the robot 1 is provided with an electric motor 64 (see FIG. 3) for driving the joint and a rotation amount (rotation angle of each joint) of the electric motor 64.
- An encoder (rotary encoder) 65 for detection is provided, and a detection signal of the encoder 65 is supplied to the encoder 6. 5 to the control unit 60.
- a joystick (operator) 73 for manipulating the robot 1 is provided outside the force robot 1, which is not shown in Fig. 1, and is operated by operating the joy stick 73.
- the robot 1 steps, such as specifying the direction of movement of the robot 1 such as turning the robot 1 that is moving straight ahead, specifying the movement mode of the robot 1 such as walking and running, and the friction state of the floor surface (road surface state). It is configured such that a request or a constraint condition for the contents can be input to the control unit 60 as needed.
- the joystick 73 can communicate with the control unit 60 by wire or wirelessly.
- FIG. 2 is a diagram schematically showing a basic configuration of a distal end portion (including each foot 22R (L)) of each leg 2 in the present embodiment.
- a spring mechanism 70 is provided between the foot 22R (L) and the six-axis force sensor 50, and the sole (the bottom surface of each foot 22R, L) is provided.
- a sole elastic body 71 which is also strong such as rubber is attached.
- a compliance mechanism 72 is configured by the spring mechanism 70 and the sole elastic body 71.
- the spring mechanism 70 includes a rectangular guide member (not shown) attached to the upper surface of the foot 22R (L) and an ankle joint 18R (L) (in FIG. 2, the ankle joint). 20R (L) is omitted) and 6-axis force sensor 50 side, and a piston-like member (not shown) that is finely movably housed in the guide member via an elastic material (rubber or spring) It is composed of
- the foot 22R (L) indicated by a solid line in Fig. 2 shows a state when no floor reaction force is applied.
- the spring mechanism 70 of the compliance mechanism 72 and the sole elastic body 71 bend, and the foot 22R (L) moves to the position and posture as exemplified by the dotted line in the figure.
- the structure of the compliance mechanism 72 is important not only to reduce the landing impact but also to enhance controllability. The details thereof are described in detail in, for example, Japanese Patent Application Laid-Open No. 5-305584 previously proposed by the present applicant, and further description in this specification will be omitted.
- FIG. 3 is a block diagram showing a configuration of the control unit 60.
- the control unit 60 is composed of a microcomputer, and has a first arithmetic unit 90 and a second arithmetic unit 92 which also have CPU power, an AZD variable ⁇ 80, a counter 86, a DZA variable ⁇ 96, a RAM84, a ROM94, And a bus line 82 for exchanging data between them.
- This control unit 60 In, the output signals of the 6-axis force sensor 50, posture sensor 54 (acceleration sensor and rate gy mouth sensor), joystick 73, etc. of each leg 2 are converted into digital values by AZD conversion 80, and then transmitted via the bus line 82. Sent to RAM84.
- the outputs of the encoders 65 (rotary encoders) of the joints of the robot 1 are input to the RAM 84 via the counter 86.
- the first arithmetic unit 90 generates a desired gait as described later and calculates a joint angle displacement command (a displacement angle of each joint or a command value of a rotation angle of each electric motor 64). Send to 4.
- the second arithmetic unit 92 reads the joint angle displacement command and the actually measured joint angle detected based on the output signal of the encoder 65 from the RAM 84, and determines the amount of operation required to drive each joint. The calculated operation amount is output to the electric motor 64 that drives each joint via the DZA converter 96 and the servo amplifier 64a.
- FIG. 4 is a block diagram showing a main functional configuration of the control unit 60 of the robot 1 according to the embodiment of the present specification.
- the parts other than the “real robot” part in FIG. 4 are constituted by the processing functions executed by the control unit 60 (mainly the functions of the first arithmetic unit 90 and the second arithmetic unit 92). It is.
- the processing function is realized by a program or the like mounted on the control unit 60.
- the symbols R and L are omitted when it is not necessary to particularly distinguish the left and right of each part (the leg 2, the arm 5, etc.) of the robot 1.
- the control unit 60 includes a gait generator 100 that generates and outputs a desired gait freely and in real time, as described later.
- the gait generator 100 realizes the embodiment of the present invention by its function.
- the desired gait output by the gait generator 100 includes a corrected desired body posture trajectory (trajectory of the desired posture of the body 3), a corrected target body position trajectory (a trajectory of the desired position of the body 3), Foot position / posture trajectory (trajectory of target position and target posture of each foot 22), target arm posture trajectory (trajectory of target posture of each arm), target ZMP (target total floor reaction force center point) trajectory, target It consists of the corrected desired floor reaction force moment trajectory around the ZMP and the desired total floor reaction force trajectory.
- a movable part such as the head
- the target position / posture trajectory of the movable part is added to the target gait.
- gait means a temporal change pattern (time-series pattern), and is sometimes called a “pattern” instead of a “trajectory”.
- pattern means spatial orientation
- the body posture is the inclination angle (posture 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 (posture angle) of the body 3 in the pitch direction (around the Y axis).
- the foot posture is represented by a spatial azimuth of two axes fixedly set for each foot 22.
- the body posture may be referred to as the body posture angle.
- the target arm posture regarding the arm body 5 is represented by a relative posture with respect to the body 3 in the embodiment of the present specification.
- the body position refers to the position of a representative point of the body 3 which is roughly determined (a fixed point in the local coordinate system arbitrarily fixed with respect to the body 3).
- the foot position means the position of a representative point of each foot 22 that has been roughly determined (fixed point in a local coordinate system arbitrarily fixedly set for each foot 22).
- the representative point of each foot 22 is on the bottom surface of each foot 22 (more specifically, the point where the perpendicular from the center of the ankle joint of each leg 2 to the bottom surface of each foot 22 intersects the bottom surface). Is set to
- the corrected target body posture and the corrected target body position for the body 3 are based on a certain basic target body posture (temporary target body position) and a target body position (temporary target body position). It has been corrected.
- the basic target body position / posture is a target body position / posture determined by a simplified model gait generator described later (the target body position / posture determined by S032 in FIG. 10 described later). Body position).
- the components of the gait other than the components relating to the floor reaction force that is, the components relating to the position and orientation of each part of the robot 1, such as the foot position and orientation, the body position and orientation, are collectively referred to as “movements”. Movement.
- the floor reaction force acting on each foot 22 (floor reaction force composed of translational force and moment) is called “each foot floor reaction force”, and the robot 1 has two (two) foot reaction forces for the foot 22R and 22L.
- the resultant force of each foot floor reaction is called the total floor reaction.
- each floor floor reaction force is hardly mentioned, and unless otherwise noted, “floor reaction force” is treated as synonymous with “total floor reaction force”.
- the desired floor reaction force is defined as the point of action and the translational force and moment acting on that point. Is represented by Since the point of action is good for everywhere, countless expressions can be considered for the same desired floor reaction force.However, in particular, the target floor reaction force center point (the target position of the center point of the total floor reaction force) is used as the working point, When expressing the reaction force, the moment component of the desired floor reaction force is zero except for the vertical component (moment component around 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)) becomes zero.
- the ZMP calculated from the target motion trajectory of the robot 1 (the target motion trajectory force is also calculated and the resultant force of inertia and gravity acts around that point)
- the moment when the moment becomes zero excluding the vertical component) and the desired floor reaction force center point coincide with each other, so it is the same as giving the desired ZMP trajectory instead of the desired floor reaction force center point trajectory.
- the vertical position of the body 3 of the robot 1 is determined by the body height determination method proposed by the present applicant in Japanese Patent Application Laid-Open No. Hei 10-86080.
- the translational floor reaction vertical component is determined dependently.
- the horizontal position trajectory of the robot 1 (or the trajectory of the overall center of gravity) is set so that the resultant force of the inertia and gravity due to the motion of the desired gait becomes zero in the horizontal component of the moment generated around the target ZMP. Is determined, the translational floor reaction force horizontal component is also determined dependently. Therefore, when the robot 1 walks, only the target ZMP may be the only physical quantity that should be explicitly set for the floor reaction force of the target gait.
- the trajectory of the robot 1 such as the desired vertical body position. Also, when walking the robot 1, if the coefficient of friction is low and the robot 1 moves on the floor (low mu road), the translational floor reaction force vertical component (more strictly, the translational floor reaction force Since the component perpendicular to the floor affects the frictional force, it is desirable to explicitly set the target trajectory of the translational floor reaction vertical component to prevent the robot 1 from slipping. Further, in the embodiment of the present invention, in the target gait finally output by the gait generator 100, the target ZMP or Instead, generate a corrected desired floor reaction force moment (a moment whose horizontal component is not always 0).
- the corrected target floor around the target ZMP is used as a component relating to the floor reaction force of the target gait output by the gait generator 100.
- the reaction moment and the target translational floor reaction force vertical component are included!
- the desired gait output by the gait generator 100 is, in a broad sense, “a set of a desired motion trajectory and a desired floor reaction force trajectory during one or more steps”. In a narrow sense, it is used as a meaning of ⁇ a set of a target motion trajectory during one step and a target floor reaction force trajectory including a target ZMP, a corrected target floor reaction force moment, and a target translational floor reaction force vertical component. '' Used in a meaning.
- a desired gait provisional desired gait created in the process of determining the final desired gait (the desired gait output by the gait generator 100) In)
- the result obtained by subtracting the corrected desired floor reaction force moment from the narrowly defined desired gait is used in the meaning of the desired gait.
- a desired gait temporary desired gait created in the process of determining a final desired gait (the desired gait output by the gait generator 100) is a real gait. It is closely related to the invention. For this reason, most of the desired gaits appearing in the following description are used in the meaning of the narrowly defined desired gaits excluding the corrected desired floor reaction force moment.
- the floor reaction force vertical component means “translational floor reaction force vertical component”
- the vertical component of the moment of the floor reaction force (the component around the vertical axis) is The term “moment” is used to distinguish it from the “floor reaction force vertical component”.
- the “floor floor reaction force horizontal component” means “translational floor reaction force horizontal component”.
- the translational floor reaction force is sometimes referred to as a floor reaction force translational force component.
- the "one step" of the desired gait is used in the meaning from the time when one leg 2 of the robot 1 lands to the time when the other leg 2 lands.
- the two-leg supporting period in the gait is a period in which the robot 1 supports its own weight with the two legs 2, 2, and the one-leg supporting period is the robot 1's own weight with only one of the legs 2.
- the aerial period refers to the period in which both legs 2 and 2 are separated from the floor (floating in the air).
- Piece The leg 2 that does not support the weight of the robot 1 during the leg support period is called a free leg. Note that there is no double leg support period in the running gait of the robot 1 in which the one leg support period and the aerial period are alternately repeated.
- both the legs 2 and 2 do not support the weight of the robot 1 during the aerial period, but for convenience, the leg 2 and the supporting leg, which were the free legs during the one-leg supporting period immediately before the aerial period, are not used.
- the legs 2 are also referred to as a free leg and a supporting leg during the aerial period, respectively.
- the trajectory of the desired gait is described in a global coordinate system (a coordinate system fixed to the floor).
- a support leg coordinate system determined corresponding to the landing position / posture of the support leg foot 22 is used.
- a vertical line extending from the center of the ankle joint to which the foot 22 is connected to the floor surface is connected to the floor, for example, with almost the entire bottom surface of the support leg foot 22 grounded to the floor.
- a coordinate system in which the point of intersection is the origin and the front and rear directions of the foot 22 when projected on a horizontal plane passing through the origin is the X axis direction and the left and right direction is the Y axis direction (the Z axis direction is vertical Direction).
- the X, X, and ⁇ coordinates mean the coordinates of the supporting leg coordinate system unless otherwise specified.
- FIG. 5 is a block diagram showing details of gait generator 100. With reference to FIG. 5, a more specific outline of the processing of the gait generator 100 will be described below.
- the gait generator 100 includes a gait parameter determination unit 100a.
- the gait parameter determination unit 100a determines a gait parameter value or a time-series table that defines a desired gait.
- the gait parameters determined by the gait parameter determining unit 100a include, among the desired gaits, a desired foot position / posture trajectory, a desired arm posture trajectory, a desired ZMP trajectory, And a parameter defining the desired floor reaction force vertical component trajectory, respectively.
- the gait generator 100 when the gait generator 100 generates a desired gait, a basic gait for generating a gait such as a planned landing position / posture of the free leg foot 22 and a planned landing time or a stride or a moving speed is used.
- the required value (required parameter) is given to the joystick 73 or a device gait generator 100 such as a not-shown action planning unit (device for creating an action plan of the robot 1).
- the gait generator 100 also reads the required parameters from a storage medium that previously stores the required parameters.
- the gait parameter determination unit 100a of the gait generator 100 determines a gait parameter according to the required parameter.
- the gait parameters determined by the gait parameter determining unit 100a include a reference body posture trajectory, a ZMP allowable range, and a floor reaction force horizontal component allowable range, respectively.
- the parameters to be specified are also included.
- the reference body posture trajectory is not finally output by the gait generator 100, but is taken into account when determining a desired gait.
- the reference body posture trajectory is given from the joystick 73 or the action planning unit with respect to the body posture of the robot 1 or directly follows a predetermined request (a request for maintaining the body posture in a vertical posture). This is the generated body posture trajectory.
- the desired body posture hereafter, ⁇ body posture '' without the ⁇ reference '' indicates the desired body posture
- the desired gait generates a corrected desired floor reaction force moment (which is generally not 0) around the desired ZMP. Will be corrected as follows. Therefore, the target ZMP is different from the original definition (the definition that the horizontal component of the floor reaction force moment is zero), and ZMP (hereinafter, true ZMP) that satisfies the original definition is Move to a position shifted from the target ZMP by the value obtained by dividing the corrected target floor reaction force moment by the target floor reaction force vertical component.
- the true ZMP of the corrected gait (the desired gait finally output by the gait generator 100) is at least the ZMP possible range (so-called supporting polygon. Floor and bottom of foot 22) And the floor reaction force action point (ZMP), assuming that no adhesive force acts between and. Furthermore, in order to secure a sufficient stability margin of the robot 1, it is desirable that the true ZMP of the corrected gait is in the vicinity of the center of the ZMP possible range. Therefore, in the embodiment of the present specification, an allowable range in which a true ZMP of the corrected gait can exist is set. This range is called the ZMP allowable range.
- the ZMP allowable range is set to match the ZMP possible range or to be included in the ZMP possible range.
- the value obtained by dividing the corrected desired floor reaction force moment around the target ZMP by the vertical component of the desired floor reaction force represents the amount of deviation of the true ZMP position from the target ZMP.
- the ZMP allowable range can be converted into a corrected target floor reaction force moment allowable range by multiplying the boundary position by the target floor reaction force vertical component. It may be set instead of the ZMP allowable range.
- the floor reaction force horizontal component allowable range is a floor reaction force horizontal component that can generate a friction force on the ground contact surface of the foot 22 of the robot 1 with the floor so that the foot 22 does not slip. It is the allowable range of the component.
- at least the motion of the desired gait (the desired motion) finally output by the gait generator 100 is the floor reaction force generated by the motion, which is in proportion to the water equivalent of the inertial force of the robot 1.
- the horizontal component is generated so that it falls within the floor reaction force horizontal component allowable range (so as to satisfy the floor reaction force horizontal component allowable range).
- the floor reaction force horizontal component allowable range set in the embodiment of the present specification is for a normal gait set in the process of S022 described later and the basic gait set in the process of S026. There is one for gait and one for gait correction (full model correction) set in S030. However, these floor reaction force horizontal component allowable ranges need not necessarily be different from each other, and may be the same. On the other hand, the ZMP allowable range is only for gait correction (full model correction) set in S030 processing.
- gait parameters for generating a desired gait include parameters other than the above-described parameters. These are determined in the gait parameter determination unit 100a so as to satisfy required boundary conditions.
- the gait parameters determined by the gait parameter determination unit 100a are input to the target instantaneous value generation unit 100b.
- the target instantaneous value generator 100b sets the reference body posture, target foot position / posture, target ZMP, target floor reaction force vertical component, ZMP allowable range, and floor reaction force horizontal component allowable range. For example, an instantaneous value (a value for each predetermined control processing cycle of the control unit 60) of some constituent elements (excluding the desired body position / posture) of the desired gait is sequentially calculated (generated).
- the target instantaneous value generation unit 100b includes a translational floor reaction force (translational force component of the floor reaction force) error trajectory (specifically, a time series of the instantaneous value of the error of the translational floor reaction force horizontal component) and a floor reaction force moment error trajectory.
- translational force component of the floor reaction force translational force component of the floor reaction force
- floor reaction force moment error trajectory specifically, a time series of the instantaneous value of the error of the translational floor reaction force horizontal component
- floor reaction force moment error trajectory For details, see the error of the horizontal component of the floor reaction force moment around the target ZMP. Is also output.
- These error trajectories are based on the floor reaction force generated by the simplified model (first dynamic model) described later with respect to the floor reaction force generated by the semi-full model (second dynamic model) described later due to the motion of the gait. It corresponds to a time series pattern of errors.
- the target instantaneous value calculated by the target instantaneous value generation unit 100b is input to the simplified model gait generation unit 100c.
- the simple dani model gait generator 100c is based on the input target instantaneous value, and a simplified model (first power) described later as a dynamic model that approximates the relationship between the motion of the robot 1 and the floor reaction force.
- the instantaneous value of the target body position / posture (temporary target body position / posture for the full model correction unit described later) is calculated using the dynamic model and the semi-full model (second dynamic model).
- the simplified model used here is the same as that used in the target instantaneous value generator 100b.
- the simple dani model gait generator 100c calculates the instantaneous value of the desired body position and orientation so that required dynamic conditions regarding the floor reaction force moment around the target ZMP and the translational floor reaction force are satisfied.
- the dynamic condition is a floor reaction force moment horizontal component obtained by correcting the floor reaction force moment horizontal component around the target ZMP generated on the simplified model by the motion of the gait according to the floor reaction force moment error.
- the condition is that the translational floor reaction force horizontal component generated by correcting the translational floor reaction force horizontal component generated on the model according to the translational floor reaction force error satisfies the floor reaction force horizontal component allowable range.
- the instantaneous value of the desired body position / posture is determined by the translation of the resultant force of inertia force and gravity generated by the desired motion.
- the dynamic condition that the force vertical component (in other words, the resultant force of the inertial force and gravity due to the vertical translation of the entire center of gravity of the robot 1) balances the desired floor reaction force vertical component is also satisfied. It is determined.
- the instantaneous value of the desired gait (temporary desired gait) including the desired body position / posture is sequentially determined by the arithmetic processing of the simplified model gait generator 100c.
- a desired gait having the desired body position / posture determined by the simplified model gait generator 100c as a component is referred to as a simple gait model gait.
- the simplified model gait including the desired body position / posture determined by the simple model model gait generator 100c is input to the full model corrector 100D. This full model correction unit lOOd
- the full model correction unit lOOd executes the processing of E1 or E2 so as to satisfy the following conditions of D1 to D3. That is, the full model correction unit lOOd
- a gait generated using the simple model is corrected using a displacement dimension correcting model (hereinafter referred to as a displacement dimension corrected gait). Satisfies dynamic equilibrium conditions with accuracy.
- the true ZMP (ZMP that satisfies the original definition modified by generating a corrected desired floor reaction force moment around the target ZMP) is the ZMP allowable range (the allowable range where sufficient stability margin can be maintained).
- the process of E2 is executed so as to satisfy the conditions of D1 to D3.
- the processing of the full model correction unit lOOd in the embodiment of the present specification is described in detail in, for example, PCT International Publication WOZ03Z057427ZA1 previously proposed by the present applicant (specifically, This is the same as in step S038 in FIG. 13). Therefore, a detailed description of the processing of the full model correction unit lOOd in this specification is omitted.
- the correction is performed by the full model correction unit lOOd, but the correction is omitted, and the instantaneous value of the simple gait model gait is directly output from the gait generator 100. Just do it.
- the gait parameter determination unit 100a, the desired instantaneous value generation unit 100b, and the simple model model gait generation unit 100c execute processing related to the core of the present invention. Become.
- the gait generator 100 uses a simplified model as a first dynamic model and a semi-full model as a second dynamic model described in detail below for each control processing cycle of the control unit 60. To determine the instantaneous value of the desired gait.
- the floor reaction force horizontal component of the desired gait is generated by generating two movement modes (body translation mode and body rotation mode) of the body 3 described below in a combined manner. Is within the allowable range (or within the friction limit) while satisfying the dynamic equilibrium condition.
- a motion that changes the horizontal component of the floor reaction force moment around the target ZMP without changing the vertical component of the floor reaction force and the horizontal component of the floor reaction force is called a body rotation mode.
- the motion of the body 3 includes a body vertical movement mode in addition to the body translation mode and the body rotation mode. This is a movement that moves the upper body 3 in the vertical direction.
- FIG. 7 shows a structural example of a simplified model. As shown in the figure, this simplified model has two mass points (foot mass points) 2m and 2m corresponding to each leg 2 of the robot 1, and mass points (upper mass point) corresponding to the upper body 3 and a total force of 24m.
- This model is composed of a mass point and a flywheel FH with inertia and mass.
- Zsup Support leg mass point vertical position
- Zswg Swing leg mass point vertical position
- Zb Upper body mass point vertical position
- Z Gtotal Overall center of gravity vertical position
- Xsup Support leg mass point horizontal position
- Xswg Swing leg mass point horizontal position
- Xb Upper body mass horizontal position
- XGtotal Overall center of gravity horizontal position
- ⁇ by: Upper body posture angle (tilt angle) around the Y axis with respect to the vertical direction
- mb Upper body mass point mass
- msup Support leg mass point mass
- mswg Swing leg Mass point mass
- J Body moment of inertia (equivalent moment of inertia in body rotation mode)
- Fx Floor reaction force horizontal component (Details: Before and after translation floor reaction force)
- Fz Vertical floor reaction force vertical component (Detail
- XGtotal (mb * Xb + msup * Xsup + mswg * Xswg) / mtotal ... Equation 1 e
- the dynamics of the legs 2 and 2 the dynamics of each mass 2m and 2m
- the dynamics are configured so as not to interfere with each other, and the dynamics of the entire robot 1 are represented by a linear combination thereof.
- the relationship between the motion of the upper body 3 and the floor reaction force includes the relationship between the translational motion of the upper body 3 (upper body translation mode) and the floor reaction force, and the rotational motion of the upper body 3 (upper body rotation). Mode) and the floor reaction force.
- the floor reaction force generated by the horizontal motion of the upper body mass point 24m corresponds to the floor reaction force generated by the horizontal translational motion of the upper body 3 (upper body translation mode), and the rotation of the flywheel
- the floor reaction force generated by the movement corresponds to the rotational movement of the body 3 (body rotation mode), that is, the floor reaction force generated by the posture change movement of the body 3.
- the mass of the arm of the robot 1 is assumed to be included in the upper body mass 24m, and the upper body mass 24m has a mass including the mass of the arm.
- the movement of the arm in the target gait is performed while canceling the moment of inertial force around the vertical axis generated in the robot 1 by movement other than the arm swing of the robot 1 as described later.
- the effect of the arm swinging motion of the arms (excluding the component around the vertical axis) on the floor reaction force moment and the floor reaction The effect on the force horizontal component is ignored.
- FIG. 8 illustrates the structure of the semi-full model.
- the semi-full model has corresponding masses in the vicinity of the knee joint of the upper body 3, each foot 22, and each leg 2 (the part near the knee joint of the thigh link).
- upper body 3 has inertia (inertial moment) lb around the body mass point.
- the dynamic equation is omitted.
- the relationship between the motion of the robot 1 and the floor reaction force is the same as that of the simple dani model described above. It is described as the relationship between the translational motion and the posture change motion of the upper body 3 and the floor reaction force (translational floor reaction force and floor reaction force moment around the target ZMP).
- This semi-full model has higher dynamic accuracy than the simplified model.
- the fact that the dynamic accuracy of the semi-full model is higher than that of the simple dani model means, more specifically, that the floor reaction force generated on the semi-full model by any target motion of the robot 1 depends on the target motion.
- the target motion is matched by the actual floor reaction force that actually acts on the robot 1 when the actual robot 1 performs on the assumed floor surface, rather than the floor reaction force generated on the simple dani model. Do).
- the full model used by the full model correction unit 100d is a multi-mass model having a mass at each link of the robot 1 as shown in FIG. 9, for example.
- each link of the robot 1 may have an inertia around the corresponding mass point.
- the semi-full model may have the same structure as the full model.
- the gait generator 100 includes a target gait for one step from the landing of one leg 2 of the robot 1 to the landing of the other leg 2 (the target in the narrow sense). Using the gait as a unit, the desired gait for that one step is generated in order.
- the target gait that is to be newly generated is “this gait”
- the next target gait is “next gait”
- the next target gait is “next next gait”
- the target gait generated just before the “current gait” is called the “previous gait”.
- the gait generator 100 When the gait generator 100 newly generates a current time's gait, the gait generator 100 includes a landing position / posture of the free leg side foot 22 up to two steps ahead of the robot 1, The required value (request) of the scheduled landing time is input as a required parameter for the gait (or the gait generator 100 reads the required parameter from the storage device). Then, based on these required parameters, the gait generator 100 corrects the desired body position / posture trajectory, the desired foot position / posture trajectory, the desired ZMP trajectory, the desired floor reaction force vertical component trajectory, the desired arm posture trajectory, Generates the desired floor reaction force moment trajectory.
- FIG. 10 is a flowchart (structured flowchart) showing a main routine of gait generation processing executed by the gait generator 100.
- the procedure of the main routine process is the same as, for example, PCT International Publication WOZ03Z057427ZA1 (hereinafter referred to as Patent Document 1) by the present applicant, except for a part of the subroutine process.
- This process is performed when the gait generator 100 is activated. Next, the process proceeds to S 14 via S012, and the gait generator 100 waits for a timer interrupt for each control cycle (the calculation processing cycle in the flowchart of FIG. 10). The control cycle is ⁇ t.
- the flow proceeds to S016, in which it is determined whether or not the force is a gait switch. If the gait is a switch, the process proceeds to S018, and if not, the process proceeds to S030.
- 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 time t is initialized to 0, and then proceed to S020 to read the next time's gait support leg coordinate system, the next time's gait support leg coordinate system, the current time's gait cycle and the next time's gait cycle. Be included.
- These support leg coordinate system and gait cycle are determined by the required parameters. That is, in the present embodiment, the required parameters given from the joystick 44 or the like to the gait generator 100 are the landing position / posture of the free leg side foot 22 up to two steps ahead (the foot 22 has landed and the force is also the sole). (The foot position and posture in a state where the foot is rotated without slipping so that it touches the floor almost completely), and the required values for the scheduled landing time.
- the requested values of the gaits are given to the gait generator 100 before the start of generation of the current gait (the gait switching in S016) as corresponding to the current gait and the next gait, respectively. It is a thing. These required values can be changed even during the generation of the current time's gait.
- the next time's gait support leg coordinates correspond to the required value of the landing scheduled position / posture of the first free leg side foot 22 (the free leg side foot 22 in the current time's gait) in the above request parameters.
- the system is determined. Also, one after another according to the required value of the scheduled landing position and orientation of the foot 22 on the swing leg side of the second step.
- the gait support leg coordinate system is determined.
- this time's gait cycle is based on the scheduled landing time of the free leg side foot 22 of the first step (this time's gait) from the scheduled landing time of the support leg side foot 22 of this time's gait (required value). Value), and the next gait cycle is the scheduled landing time of the second 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). Value).
- the gait generator 100 determines a gait parameter (normal gait parameter) of a normal gait as a virtual periodic gait following the current time's gait.
- the gait parameters determined here include a foot trajectory parameter that defines a desired foot position and posture trajectory in a normal gait, a reference body posture trajectory parameter that defines a reference body posture trajectory, and a target arm. Arm trajectory parameters that specify the attitude trajectory, ZMP trajectory parameters that specify the target ZMP trajectory, floor reaction force vertical component trajectory parameters that specify the desired floor reaction force vertical component trajectory, and allowable range of the target floor reaction force horizontal component There are parameters to do.
- the "normal gait” indicates that the motion state of the robot 1 (the state of the foot position, the posture of the body, etc.) at the boundary of the gait when the gait is repeated. It is used to mean a periodic gait that does not cause continuity.
- the “normal gait” includes not only a periodic gait for moving the robot 1 straight, but also a periodic gait for turning the robot 1. In this case, when the turning rate is set to zero, it means straight traveling, so “turning” includes straight traveling in a broad sense. For this reason, in the embodiments of the present specification, the “normal gait” is often referred to as a “normal turning gait”.
- the normal turning gait which is a periodic gait
- the normal turning gait is a gait for two steps of the robot 1, that is, a first turning gait following the current time gait, and a gait following the first turning gait.
- the gait composed of the second turning gait is a gait for one cycle of the normal turning gait, and the gait for one cycle is repeated.
- the generated gait for this time is, for example, a running gait (one leg When the gait has a support period and an aerial period), the first and second turning gaits of the normal turning gait are also running gaits, and the walking gait for walking the robot 1 (one leg) When the gait has a support period and a two-leg support period), the first turning gait and the second turning gait of the normal turning gait are also running gaits. That is, the basic gait forms of the first turning gait and the second turning gait are the same as the current time gait.
- the normal turning gait is used 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 speed, the body posture angle, and its angular speed. It is created tentatively and is not output directly from the gait generator 100.
- divergence means that the position of the upper body 3 of the robot 1 is shifted to a position far away from the positions of both feet 22,22.
- the value of the divergent component means that the position of the upper body 3 of the robot 1 is the position of both feet 22 and 22 (more specifically, the global coordinate system (support leg set on the ground surface of the support leg side foot 22). It is a numerical value that indicates how far away from the origin of the coordinate system).
- the divergent component is obtained by the following equation for each of the dynamic models described above.
- Divergent component upper body mass point horizontal position + upper body mass point horizontal velocity Z ⁇ ... Equation 2
- ⁇ is a predetermined value.
- the divergent component in the gait is obtained by using the body horizontal position and the body horizontal velocity, respectively, instead of the body mass point horizontal position and the body mass point horizontal velocity of Equation 2.
- a gait (current gait) is generated using a divergent component as an index so that a desired gait is continuously generated without generating the divergence. That is, a normal gait (more precisely, a normal gait parameter) following the current gait for which the force is to be generated is set according to the required parameters related to the current gait, and the initial gait of the normal gait is set. After calculating the divergent component, the terminal divergent component of this time's gait is used as the initial divergent component of the normal gait. The current time's gait is generated so as to match (more generally, the current time's gait is made continuous or close to the normal gait).
- the gait parameters of the normal gait are determined according to the subroutine processing flowchart shown in FIG. That is, the foot trajectory parameters, reference body posture trajectory parameters, arm orbit parameters, ZMP trajectory parameters, floor reaction force vertical component trajectory parameters, and target floor reaction force horizontal component allowable range related to the normal gait are defined. Parameters to be determined are determined by the processing of S100-S110. Then, in S112, the initial time Ts of the normal gait and the period of one step (the time of one cycle of the normal gait) Tcyc are redefined. Since these processes are the same as the processes of the flowchart of FIG.
- the gait meter of the normal gait determined by the forces S100-S110 is respectively shown. Are determined so that the trajectory defined by the above parameters satisfies the periodicity of the normal gait and satisfies the gait requirement represented by the above-mentioned required parameters.
- the 15 of the above-mentioned publication 1 is the expected landing position / posture of the free leg foot 22 of the first turning gait following the current time gait (
- the above-mentioned landing position / posture (request value) of the second step matches the above-mentioned landing position / posture (request value) of the second step, and the free leg foot of the second turning gait. Is determined so as to match the expected landing position / posture (required value) of the free leg foot 22 of the current time's gait.
- the ZMP trajectory parameters are based on the foot trajectory parameters so that the target ZMP is located near the center of the contact surface of the supporting leg foot 22 and changes continuously over the entire period of the normal gait. Is determined.
- the initial time Ts of the normal gait redefined in S112 of Fig. 13 is the time of the starting point when a gait of one cycle of the normal gait is created as described later (this is the present embodiment). This is different from the time at the end of the current time's gait), and is the time immediately before the start of the aerial period (time when the desired floor reaction force vertical component becomes 0) of the first turning gait.
- the period Tcyc of one step of the normal gait is a period of the total time of the first turning gait and the second turning gait of the normal gait.
- the normal gait depends on the periodicity of the gait. And its change speed state) are gaits that are the same as the state at time Tx + Tcyc. Since the normal gait is a periodic gait in which a gait of two steps is one cycle, in this specification, the period of the one cycle (the first turning gait and the second turning gait) Is regarded as the period of one step of the normal gait.
- the parameters of the normal gait determined in the processing of S100 to S110 are not all the parameters that define the normal gait.
- the gait parameter (normal gait parameter) that defines the normal gait is the beginning or end of one period of the normal gait (start time of the period) in addition to the parameter determined in S022. It includes the position and speed of the body 3 at (the end time of the period), the posture angle of the body 3 and its angular velocity, and a peak value of a body tilt recovery moment ZMP converted value described later.
- the horizontal position and horizontal speed of the body 3, the angular velocity of the posture angle of the body 3, and the peak value of the ZMP converted value are exploratively determined in the processing of S024 described later.
- the normal gait parameter is a gait parameter that can uniquely generate a normal gait using the values of the respective parameters constituting the gait parameter and the above-described simplified model.
- the initial state of the normal gait is calculated.
- the initial state calculated here is the initial body horizontal position speed of the normal gait (initial body position and initial body speed in the horizontal direction), and the initial body vertical position speed (the initial body position in the vertical direction). Position and initial body velocity), initial divergent component, initial body posture angle and its angular velocity.
- the calculation of this initial state is performed using the simplified model and the semi-full model according to the flowchart of the subroutine processing of FIG.
- the processing of FIG. 12 is schematically described below.
- the generated normal gait is substantially equivalent to the boundary condition (the state of the initial and the terminal (the body horizontal position, the body horizontal velocity, the body posture angle, the body posture angular velocity in the present embodiment)). It is determined whether or not the value satisfies the condition. If the condition is not satisfied, the value of the search target is changed. By repeating this, the initial state that can finally satisfy the boundary condition of the normal gait is determined.
- the basic concept (method) of the processing in FIG. 12 is the same as the processing in FIG.
- the search target includes the body posture angular velocity and the peak value of the body inclination restoration moment ZMP conversion value, which is the same as the processing shown in FIG. Is different.
- a part of the detailed processing (subroutine processing) of the processing in S208 is also different from that of the above-mentioned publication.
- the body tilt recovery moment ZMP converted value peak value ZMPrecpeek obtained in the process of the flowchart of Fig. 12 is determined in the one-leg supporting period of the robot 1 (more specifically, from immediately after the start of the one-leg supporting period to immediately before the end).
- the ZMP conversion value of the floor reaction force moment required to bring the body posture closer to the reference body posture during the body tilt angle restoration period (hereinafter referred to as the ZMPrec (reference target ZMP (determined in S022)).
- Fig. 19 shows the peak value of the target ZMP (force deviation) specified by the obtained ZMP trajectory parameters.
- the ZMPrec has a trapezoidal pattern as shown in the figure, and the peak value (height of the trapezoid) is ZMPrecpeek.
- the foot position / posture, the body posture angle ⁇ , and the arm based on the normal gait parameters (the parameters determined in S022)
- the initial state of the posture (the state at the initial time Ts of the normal turning gait) is determined. Note that these initial states are states viewed in the support leg coordinate system of the first turning gait (the above-described next time gait support leg coordinate system).
- the initial state of the foot position / posture is determined at each time Ts in the foot position / posture trajectory calculated using the finite time settling filter based on the foot trajectory parameters determined in S022.
- the position and orientation of the foot 22 are determined.
- the finite time settling filter has been described in the above-mentioned publication 1 and the like, and the description is omitted here.
- the initial state of the body posture angle ⁇ bs is determined to be the same as the reference body posture angle at the time Ts determined by the reference body posture trajectory parameter determined in S022, and the initial state of the arm posture is S022 Is determined in the same way as the state at time Ts determined by the arm posture trajectory parameters determined in.
- the candidate (Xs, Vx, cobs, ZMPrecpeek) for these search targets is provisionally determined with the initial body horizontal velocity, initial body posture angular velocity, and body tilt restoration moment peak value of the ZMP converted value as search targets.
- the initial value of the candidate value to be searched is determined.
- the tentatively determined candidate value may be basically arbitrary, but may be determined based on, for example, the initial state of the normal gait obtained at the time of the previous generation of the gait. It should be noted that these provisionally determined values are values as viewed in the support leg coordinate system of the first turning gait (the aforementioned next time gait support leg coordinate system).
- S206 The processing of S218 will be described more specifically.
- the body vertical position and body vertical velocity (Zs, Vzs) of the initial state (time Ts) of the normal gait on the simplified model are It is determined.
- the resultant force of the vertical inertial force and gravity of the overall center of gravity of the robot 1 on the simple model is balanced with the desired floor reaction force vertical component, and the vertical position of the overall center of gravity is the boundary condition of the normal gait. Is determined to satisfy.
- This process is performed in the same manner as the process of S206 in FIG. Note that (Zs, Vzs) depends on the values (candidate values) of Xsl, Vxsl, 0 bsl, and ⁇ si which are determined or provisionally determined as described above.
- the upper body horizontal position, the upper body horizontal velocity, the upper body posture angle and the angular velocity of the end of the gait generated in S208 are represented by the supporting leg coordinate system of the next one step of the gait.
- the supporting leg coordinate system of the next one step of the gait (Support leg coordinate system of the first turning gait following the second turning gait of the normal gait generated in S208) And the value is set to (Xe, Vxe, 0 be, ⁇ be).
- the respective values of Xs, Vx, co bs, and ZMPrecpeek are set near the candidate values of the current search target (Xs, Vx, co bs, ZMPrecpeek).
- Xs, Vx, co bs, ZMPrecpeek are changed by predetermined small amounts
- a Xs, A Vx, A cobs, ⁇ ZMPrecpeek, and a plurality of (four in this embodiment) search target candidates are determined.
- the gait parameters normal gait parameters in which the search target of the normal gait parameters is corrected to each newly determined candidate
- the same processing as in S2088-S212 is executed to correspond to each candidate to be searched. Find the boundary condition error.
- the steady turning initial divergence component q [0], which is the divergence component at the next initial time 0, is obtained.
- the value obtained in S222 is a value seen in the support leg coordinate system of the first turning gait of the normal turning gait following the current time gait.
- the initial divergence component q [0] of the normal turning is represented by q "which is a value viewed from the support leg coordinate system of the current time's gait, and the initial (time 0) body vertical position / velocity is represented by the current time's gait.
- the value of (Xs, Vx, ⁇ bs, ZMPrecpeek) to be searched is determined so as to satisfy the boundary condition of the normal gait, and the value of the search object is used to determine the simple gait.
- the initial state (including the initial divergent component) of the normal gait generated on the dani model, which is the state (the motion state of the upper body 3) at the original initial time (time 0) is determined.
- the floor reaction force moment error Merr_p (k) as the error of the floor reaction force moment horizontal component around the target ZMP generated on the simple model by the tentatively created gait movement (temporary movement)
- a sequence and a time series of a translational floor reaction force error Ferr_p (k) as an error of a translational floor reaction force horizontal component generated on the simplified model by the motion are obtained.
- the process of FIG. 13 includes a process of calculating these errors Merr_p (k) and Ferr_p (k) as well as creating a normal gait. Further, these errors Merr_p (k) and Ferr_p (k) are updated in the process of FIG. 13 and are finally determined.
- the floor reaction force moment error Merr_p (k) is generally defined as the period from the initial time Ts of the normal gait to the end time Ts + Tcyc (one cycle of the normal gait).
- a gait generated using the simple dani model (first dynamic model) generates a motion around a predetermined action point such as the target ZMP on the semi-full model (second dynamic model). Satisfies the difference between the floor reaction force moment and the floor reaction force moment generated around the point of action on the simple model, or the desired value of the floor reaction force moment around a predetermined point of action on the simple model.
- Time series of the difference between the floor reaction force moment generated around the action point and the target value of the floor reaction force moment around the action point on the semi-full model by the motion of the gait generated to (Time series for each width ⁇ k).
- the floor reaction force moment horizontal component around the target ZMP (the target ZMP defined by the ZMP trajectory parameters determined in S022) is focused on, and generated so as to satisfy the target ZMP on the simplified model.
- the floor reaction force moment horizontal component generated around the target ZMP on the semi-full model due to the gait motion and the floor reaction camoment horizontal component generated around the target ZMP on the simple model model or its target value ( 0) (The difference in the instantaneous value of the floor reaction force moment horizontal component at each time k) is the time series of the floor reaction force moment error Merr_p (k).
- the translational floor reaction force error Ferr_p (k) is a period from the initial time Ts of the normal gait to the end time Ts + Tcyc (a period of one cycle of the normal gait).
- the gait motion generated by using the simple dani model generates a translational floor reaction force generated on the semi-full model (second dynamics model), and a translational floor reaction force generated on the simplified model. It shows the time series of the difference from the translational floor reaction force (time series for each predetermined time width).
- the gait generated by the simplified model is focused on the translational floor reaction force horizontal component.
- the difference between the translational floor reaction force horizontal component generated on the semi-full model and the translational floor reaction force horizontal component generated on the simple dani model due to the movement of the volume (the instantaneous moment of the translational floor reaction force horizontal component at each time k)
- the time series of the value difference) is the time series of the translational floor reaction force error Merr_p (k).
- the normal gait is generated on the simple model by the motion of the gait (the normal gait to be created) at each time k from the beginning to the end.
- the floor reaction force moment around the target ZMP plus the floor reaction force moment error Merr_p (k) is regarded as the true floor reaction force moment around the target ZMP, and the true floor reaction force moment is 0. (To satisfy the original definition of the target ZMP).
- the normal gait also includes the translational floor reaction force generated on the simplified model by the motion of the gait (the normal gait to be created) at each time k until the initial force ends.
- the translational floor reaction force error Ferr_p (k) is added to the force.
- the force is regarded as the true translational floor reaction force horizontal component, and the true floor reaction force horizontal component satisfies the floor reaction force horizontal component allowable range. Created.
- Merr_p (k) and Ferr_p (k) change according to the gait movement pattern while it is desirable to increase their reliability.
- the initial state (state at time Ts) of the motion of the upper body 3 is a value provisionally determined in the processing of Fig. 12 (current state).
- (Xs, Vxs, ⁇ bs, cos, Zs, Vzs) are set.
- the time series values of the floor reaction force moment error Merr_p (k) and the translational floor reaction force error F err_p (k) are initialized to zero.
- the reason for initializing Merr_p (k) and Ferr_p (k) to 0 is that the target ZMP is satisfied on the simple model in S306 described later. This is for creating a gait satisfying the floor reaction force horizontal component allowable range.
- the processing of S306-S312 is executed for each time from the initial time Ts of the normal gait to the end time Ts + Tcyc via S304.
- the target ZMP at time k on the simplified model (defined by the ZMP trajectory parameters determined in S022 Around the target ZMP)-Merr_p (k) is generated and the translational floor reaction force horizontal component (translational floor reaction force that balances the inertial force associated with the translational acceleration horizontal component of the overall center of gravity of the gait on a simplified model)
- the gait of the normal gait should be such that Ferr_p (k) is within the allowable range of the floor reaction force horizontal component at time k (the allowable floor reaction force horizontal component defined by the parameters determined in S022).
- a time series of instantaneous values is created.
- a Merr (k) and A Ferr (k) are updated each time a gait is created in the loop processing of S314-S328 described later.
- the time series of A Merr (k) is called the floor reaction force moment error change
- the time series of A Ferr (k) is called the translation floor reaction force error change.
- both Merr_p (k) and Ferr_p (k) are initialized to 0 in S302
- a Merr (k) and A Ferr (k) calculated in S308 are the same as those obtained in S306. (k) and Ferr (k) respectively.
- a Merr (k) and A Ferr (k) calculated in S308 are substantially equivalent to the gait motion (created in S306 so as to satisfy the target ZMP and the floor reaction force horizontal component allowable range ( This indicates the error of the floor reaction force generated on the simple dani model due to the provisional motion).
- ⁇ Merr (k) and ⁇ Ferr (k) calculated in S308 are the initial values of the floor reaction force moment error change ⁇ Merr (k) and the translational floor reaction force error change ⁇ Ferr (k), respectively. have.
- the determination process of S316 is performed via S314.
- the predetermined feature values of the time series of ⁇ Merr (k) (current time series) and the time series of ⁇ Ferr (k) (current time series) are within a predetermined allowable range. It is determined whether there is a certain force.
- This judgment process determines whether both the time series of ⁇ Merr (k) and the time series of ⁇ Ferr (k) converge to almost 0 (this is based on the time series pattern of Merr_p (k) and Ferr_p ( This is a process for determining whether or not the force in each of the time series patterns of k) converges to a substantially constant pattern.
- the maximum value of the absolute value of the time series of ⁇ Merr (k) (the absolute value of the value at each time k), or the sum of the absolute values, or the effective value of the pattern of the time series
- the difference between the maximum value and the minimum value of the time series is used as a feature amount for determining the convergence of the time series of ⁇ Merr (k). Is determined in S314.
- the maximum value of the absolute value of the time series of A Ferr (k) (the absolute value of the value at each time k), or the sum of the absolute values, or the effective value of the pattern of the time series
- the value or the difference between the maximum value and the minimum value of the time series is used as a feature amount for determining the convergence of the time series of ⁇ Ferr (k), and whether the feature amount is in an allowable range close to 0 or not. Is determined in S314.
- the types of the feature amounts may be the same for ⁇ Merr (k) and A Ferr (k), but they need not be the same. Also, it is not necessary that the permissible range for the feature value is the same for ⁇ Merr (k) and ⁇ Ferr (k).
- the determination process of S316 is a process of evaluating whether or not the floor reaction force moment error Merr_p (k) and the translational floor reaction force error Ferr_p (k) regarding the gait created in the processes of S300 to S312 are sufficiently small.
- ⁇ Merr (k) and ⁇ Ferr (k) time series may be performed separately.
- the type of the feature amount may be different between the evaluation process and the convergence determination process, or the allowable range for the feature amount may be different.
- the loop processing of S314-S328 ends, and the processing of Fig. 13 also ends.
- the gait finally created by the processing in FIG. 13 is obtained as the gait (normal gait) to be created in S208 in FIG. Therefore, after the processing of S300-S312 is completed, if the first determination result of S316 is YES, the gait created by the processing of S300-S312 is the gait to be created in S208 of FIG. Obtained as a normal gait).
- the gait is a gait having sufficient dynamic accuracy because the judgment result in S316 is YES.
- S300 and S304 Similar processing power as S312 Repeated with S318—S328. More specifically, in S318, the initial state of the body 3 is set as in S300. Further, the processing power of S322-S328 is executed for each time from the initial time Ts of the normal gait to the end time Ts + Tcyc via S320 (this is the same as S304). The processing of S322-S328 is the same as the processing of S306-S312, respectively.
- the gait movement corresponding to the n-first gait generation is performed.
- the n-th gait is generated by correcting for errors Merr_p (k) and Ferr_p (k).
- the n-th gait changes the sign of the floor reaction force moment error Merr_p (k) when the n-th gait is generated on the simplified model by the motion of the n-th gait.
- An inverted Merr_p (k) is generated around the target ZMP at time k, and the translational floor reaction force horizontal component generated on the simplified model by the n-th gait motion is expressed as n- It is created so that the sum of the translational floor reaction force error Ferr_p (k) during the first generation of the gait falls within the floor reaction force horizontal component allowable range at time k.
- the 0th gait generation means gait generation in S300-S312.
- the state in which the determination result of S316 is NO indicates that the time series pattern of Merr_p (k) or Ferr_p (k) is updated each time it is repeated. Changes.
- the kinetic force of the gait corrected using such a time series of Merr_p (k) and Ferr_p (k) The time series of Merr_p (k) or Ferr_p (k) newly obtained is The reliability as an error of the floor reaction force generated on the simple dani model is low.
- the judgment result of S316 is YES
- the time series pattern of Merr_p (k) or Ferr_p (k) is updated every time the processing of S318-S328 is repeated.
- the instantaneous values of the body horizontal caloric velocity and the body posture angular acceleration are determined by the processing of S412 so as to satisfy the conditions described in the figure.
- Merr_p (k) (the Merr_p (k) obtained at the time of n-th gait generation) becomes simple at time k due to the motion of the gait being created (gait during the n-th gait creation).
- Merr_p (k) around the target ZM P (the target ZMP obtained in S402) is considered as the error of the horizontal component of the floor reaction force moment around the target ZMP generated on the target model.
- the true floor reaction force moment horizontal component around the target ZMP generated by the actual robot 1 by the determined motion is generated on a semi-full model.
- the floor reaction force moment horizontal component around the target ZMP is considered to be almost 0 (the original target value of the floor reaction force moment horizontal component around the target ZMP). Therefore, in S412, the body horizontal acceleration and the body posture angular acceleration are determined on the simplified model so that Merr_p (k) is generated around the target ZMP. This is due to the addition of the error Merr_p (k) to the floor reaction force moment horizontal component (-Mer_p (k)) around the target ZMP generated on the simplified model by the motion of the gait to be created. This is equivalent to determining the body horizontal acceleration and body posture angular acceleration so that the original desired value of the floor reaction force moment horizontal component around the target ZMP becomes 0.
- the translational floor reaction force horizontal component acting on the actual robot 1 by the determined motion is within the allowable range of the floor reaction force water. It is thought to fit in. Therefore, in S412, the translational floor reaction force horizontal component generated on the simple dani model due to the motion of the gait to be created has Ferr_p (k) added to the floor reaction force horizontal component allowable range (S410 Determine the body horizontal acceleration and body posture angular acceleration as shown below.
- the body horizontal acceleration and the body posture angular acceleration determined in S412 as described above are respectively integrated by the second order, and the instantaneous values of the body horizontal position and the body posture angle are obtained. It is determined. Up to this point, the instantaneous values of the body vertical position, foot position / posture, and arm posture have already been determined (see S404 and S408), and the instantaneous values of the body horizontal position and the body posture angle have been determined. This means that the instantaneous value of the motion of the robot 1 (the instantaneous value of the target motion of the normal gait) is determined.
- each leg 2 since each leg 2 has six degrees of freedom, if the instantaneous value of the target position and orientation of each foot 22 and the instantaneous value of the target position and orientation of the body 3 are determined, The displacement of each joint of each leg 2 of the robot 1 is uniquely determined.
- a floor reaction force moment around the target ZMP is determined using a simple model based on the target motion including the determined foot position / posture, body position 'speed, body posture angle' angular velocity.
- the horizontal component Msmpl (k) and the translational floor reaction force horizontal component Fsmpl (k) may be calculated. That is, Msmpl (k) is the inertial force generated by the motion of each element (the material point and the flywheel in the present embodiment) of the simple model and the overall center of gravity of the simple model, which are determined in accordance with the target motion.
- the resultant force with gravity acting on the target is calculated by reversing the sign of the instantaneous value of the horizontal component of the moment generated around the target ZMP (the value at each time k).
- Fsmpl (k) is the horizontal acceleration of the overall center of gravity of the simple dani model corresponding to the target motion.
- the instantaneous value of the minute (the value at each time k) is multiplied by the total mass of the simple Eich model (the horizontal component of the inertial force generated by the motion of the total center of gravity), and the sign is inverted.
- Msmpl (k) and Fsmpl (k) may be obtained by the following equation instead of performing the operation of the simplified model as described above.
- the floor reaction force moment Msmpl (k) about the target ZMP coincides or almost coincides with Merr_p (k), and therefore Msmpl (k) may be obtained by the above equation 3a. “0” in the above may be omitted.
- Fx '(k) in Equation 3b is a translational floor reaction force horizontal component Fsmpl (k) generated on the simple dani model by the motion of the gait created by the processing from S410 to S414.
- Fsmpl (k) generated on the simple dani model by the motion of the gait created by the processing from S410 to S414.
- Ferr_p (k) To the translational floor reaction force error (translational floor reaction force horizontal component error) Ferr_p (k), which satisfies the floor reaction force horizontal component allowable range in the processing described later in S412.
- the target value of the floor reaction force horizontal component (F S mpl (k) + Ferr_p (k)) when determining the body horizontal acceleration (satisfies the floor reaction force horizontal component allowable range) Is determined as the target value)).
- the translational floor reaction horizontal component Fsmpl (k) generated on the simplified model by the motion of the gait created by the processing from S410 to S414 matches or almost matches the value on the right side of Equation 3b.
- Fsmpl (k) may be determined by Equation 3b using the value of Fx ′ (k) determined during the processing of S412.
- Msmpl (k) and Fsmpl (k) may be obtained using Equations 3a and 3b !, which means that the gait creation processing described later (the processing of S028 described later or The same applies to the processing of S032).
- the floor reaction force moment water around the target ZMP generated on the semi-full model is generated based on the target motion of the gait determined as described above.
- the instantaneous value Msemifoll (k) of the flat component and the instantaneous value Fsemifoll (k) of the translational floor reaction force horizontal component are calculated.
- the method of calculation is the same as in the case of calculating the instantaneous values Msmpl (k) and Fsmpl (k) on the simplified model in S415.
- Msemifoll (k) and Fsemifoll (k) cannot be obtained by the same method as in the above equations 3a and 3b, it is necessary to perform actual arithmetic processing of the semi-full model.
- Msemifoll (k) and Fsemifoll (k) are true of the floor anti-camoment horizontal component and the translational floor reaction horizontal component acting on the robot 1 when the actual robot 1 moves according to the target motion, respectively. It is equivalent to a value.
- times Tm, Ts2, and Tm2 that define a body inclination angle restoration period of a normal gait are determined. These times define the period for generating the body tilt restoration moment ZMP conversion value ZMPrec as shown in FIG. That is, the time immediately after the start of the first one-leg supporting period after the initial time Ts of the normal gait is Tm, The time immediately before the end of the period is determined as Ts2, and the time immediately after the start of the next one-leg support period is determined as Tm2. Then, the period [Tm, Ts2] and the period [Tm2, Te] are respectively defined as periods during which ZMPrec is generated (body tilt angle restoration period in a normal gait). This is the same as the processing of S500 in FIG.
- the body horizontal caloric velocity a tmp due to the body translation mode motion is calculated so that the floor reaction force moment horizontal component Merr_p (k) is generated on the simplified model (S504).
- a tmp is the provisional value of the horizontal body acceleration in the gait being created.
- the translational floor reaction force horizontal component Fxtmp which balances the inertial force due to the horizontal acceleration of the center of gravity of the simple model when the body horizontal acceleration is a tmp, has a translational floor reaction force error (translational floor reaction force horizontal component
- the translation floor reaction force horizontal component Fx generated on the simplified model by the motion of the gait being created is replaced by the current value of the translation floor reaction force error (translation floor reaction force horizontal component error) Ferr_p (k ),
- the body rotation is performed so that the floor reaction force moment horizontal component around the target ZMP becomes Merr_p (k) on the simplified model by the motion of the body translation mode and the body rotation mode of X.
- the body angle acceleration ⁇ of the mode is determined (S518).
- Merr_p (k) is generated around the target ZMP on the simplified model (the floor reaction force moment generated around the target ZMP on the simple model is due to the motion of the gait being created).
- the current value of the floor reaction force moment error, Merr (k) becomes 0, which is the original target value around the target ZMP), and the horizontal acceleration of the entire center of gravity on the simple model
- the translational floor reaction force horizontal component Fx ' which is the floor reaction force horizontal component Fx that balances the inertia force and the current value of the translational floor reaction force error Ferr_p (k), which is generated by the motion of the gait being created
- the body horizontal acceleration a in the body translation mode and the body angular acceleration j8 in the body rotation mode are determined so that the horizontal floor reaction force horizontal component corresponding to the horizontal floor reaction force component falls within the allowable range of the floor reaction force horizontal component.
- the processing in S520 to S530 is executed.
- the body angle acceleration ⁇ is calculated using the simplified model, the body tilt restoring moment ⁇ the instantaneous value of the converted value pattern (this is the body tilt angle temporarily determined in the process of S12).
- Recovery moment ⁇ ⁇ Determined according to the converted value peak value (latest candidate value) and the current time k. (See Fig. 19) It is determined to generate a floor reaction force moment around the target ZMP (S520). And S522).
- the body horizontal acceleration ⁇ is the floor reaction force moment around the target ⁇ ⁇ generated by the motion in the body translation mode
- the current value of the reaction force moment error, Merr_p (k) is subtracted, and the upper body horizontal velocity ⁇ x tmp to match the resulting floor reaction force moment horizontal component, Merr_p (k), and the body determined earlier It is obtained as the difference between the floor reaction force moment due to the angular acceleration ⁇ and the body horizontal acceleration that generates the same floor reaction force moment (S524 and S526).
- the basic concept (method) of the processing in FIG. 15 is the same as the processing in FIG.
- the target ZMP is satisfied on the simplified model (the floor reaction force moment horizontal component force around the target ZMP becomes ⁇ ), and the floor reaction force horizontal component on the simplified model is obtained.
- the body horizontal acceleration and the body posture angular acceleration are determined so as to satisfy the allowable range.
- the horizontal component of the floor reaction force moment Merr_p (k) is generated on the simplified model (in other words, the horizontal component of the floor reaction force moment generated around the target ZMP by the motion of the robot 1 on the simplified model) Then, the current value of the floor reaction force moment error, Merr_p (k), is added to the original horizontal component of the desired floor reaction force moment around the target ZMP, which is 0).
- the translational floor reaction force horizontal component Fx ' which is the sum of the floor reaction force horizontal component Fx that matches the inertial force due to the horizontal acceleration of the horizontal acceleration and the current value of the translational floor reaction force error Ferr_p (k), defines the allowable floor reaction force horizontal component Body horizontal acceleration and body to satisfy (within the acceptable range) Energized angular acceleration is determined.
- the current value Ferr_p (k) of the translational floor reaction force error is added to the floor reaction force horizontal component Fx that balances the inertia force due to the horizontal acceleration of the overall center of gravity on the simple model.
- Fx is calculated from the upper limit value and the lower limit value of the floor reaction force horizontal component allowable range.
- the body horizontal acceleration and the body posture angular acceleration may be determined so as to satisfy the allowable range obtained by subtracting the current value of the translational floor reaction force error Ferr_p (k). Even in this case, it is equivalent to the original method.
- the generated normal gait is a floor reaction force generated on the semi-full model by the movement (this accurately matches the floor reaction force acting on the actual robot 1 by the movement).
- the normal gait is highly linear, taking into account the errors Merr_p (k) and Ferr_p (k) of the floor reaction force generated on the simple model for the motion of the gait. !, Generated based on the dynamics of the simple model. Further, the instantaneous value of each time k of the normal gait is generated by correcting the correction by Merr_p (k) and Ferr_p (k) at that time. Merr_p (k) and Ferr_p (k) used in this case represent the error of the floor reaction force generated on the simplified model since the convergence judgment result of S316 is YES. As reliable as.
- the initial state of the normal gait can be determined exploratively and efficiently in a short time without diverging the gait movement.
- the semi-full model is used only for calculating the floor reaction force (floor reaction force moment horizontal component and translational floor reaction force horizontal component) generated by gait motion created using the simple dani model. The calculation can be easily performed in a short time without requiring an exploratory process.
- the gait parameters of the current time gait are determined (partially tentatively determined) in S026.
- the gait parameters determined here include the foot position / posture trajectory (the position / posture trajectory of each foot 22), the reference body posture trajectory, the arm posture trajectory, the floor reaction force vertical component trajectory, and the floor reaction force in this gait.
- the body inclination angle restoration period [Ta, Tb] in the current time's gait is set.
- gait parameters defining each trajectory are determined so as to lead to a normal gait while satisfying the above requirements for the current time gait.
- the foot trajectory parameters relating to the free leg foot 22 of the current time's gait are determined at the end of the current time's gait while the expected landing position and time of the free time foot 22 of the current time's gait satisfy those required values.
- the position and orientation of the free leg foot 22 should be the same at the beginning of the normal gait (at the end of the current time's gait). Is determined.
- the ZMP trajectory parameter determined in S610 is a provisional value, and an example of a ZMP trajectory defined by the provisional value (an example of a trajectory in the X-axis direction) is shown at the top of FIG. I have.
- the ZMP trajectory parameters are set such that the target ZMP is located near the center of the contact surface of the support leg foot 22 in the one leg support period of the present time gait, and the target ZMP is in the aerial period following the one leg support period. Is determined to change continuously at the end of the current time's gait up to the initial ZMP of the normal gait.
- the body tilt angle restoration period set in S612 in FIG. 16 is a period from time Ta force to time Tb in FIG. 21 and a period from immediately after the start of the one-leg support period of the current time gait to immediately before the end. .
- gait parameters (current gait parameters) defining the current time's gait include, in addition to the parameters determined in S026, a ZMP correction parameter for correcting the ZMP trajectory specified by the ZMP trajectory parameter; Upper body tilt recovery moment The peak value of the ZMP conversion value (in this case, two types of peak values) is included. These parameters are determined exploratively in the process of S028 described below.
- the flow proceeds to S028, where the gait parameters (ZMP trajectory parameters) of the current time's gait are corrected.
- the divergent component at the end of the current time's gait matches the initial divergent component of the normal turning gait determined in S024 (more specifically, the body position / posture trajectory is made to be continuous or close to the normal gait. ),
- the gait parameters of the current time's gait are corrected, and the final current time's gait parameters are determined.
- the ZMP correction parameter and the body inclination restoring moment The ZMP conversion value has two types of peak Is determined).
- This processing is performed according to a subroutine processing shown in the flowchart of FIG.
- the processing in Fig. 17 is such that the terminal divergence component of the current time's gait matches or almost coincides with the initial divergence component of the normal gait on the simplified model.
- the ZMP correction parameter a which defines the ZMP correction amount
- the first peak value ZMPrecpeeka and the second peak value ZMPrecpeekb of the body tilt restoration moment ZMP converted value are exploratively determined.
- ZMPrecpeekb is the two peak values of the ZMP-converted value of the floor reaction force moment required to bring the body posture closer to the reference body posture during the recovery period [Ta, Tb] of the gait body inclination angle.
- FIG. 20 shows an example. Resting moment of body tilt in normal gait The peak value of the ZMP converted value was one force. The body posture angle and its angular velocity at the end of the current time's gait are the initial body posture angle of the normal gait and In this embodiment, a first peak value ZMPrecpeeka and a second peak value ZMPrecpeekb are used as two adjustable parameters of the body tilting restoring moment ZMP converted value to match the angular velocity. In the present embodiment, as shown in FIG.
- the ZMP-converted value of the body inclination restoring moment in this time's gait is based on the trapezoidal pattern in the first half of the one-leg supporting period and the trapezoidal pattern in the second half.
- the peak value of the trapezoidal pattern in the first half is the first peak value ZMPrecpeeka
- the peak value of the trapezoidal pattern in the second half is the second peak value ZMPrecpeekb.
- the ZMP correction parameter a obtained in the processing of Fig. 17 connects the current time's gait to a normal gait (the divergent component at the end of the current time's gait substantially matches the initial divergent component q "of the normal gait)
- This is a parameter that defines the target ZMP correction amount, and its example is shown in the middle part of Fig. 21.
- the ZMP correction amount specified by the ZMP correction parameter a is The trapezoidal pattern is generated until immediately before the end of the one leg support period and immediately before the end of the force, and the peak value a is used as the ZMP correction parameter.
- Initial candidates of values on the simplified model of ZMPrecpeeka and ZMPrecpeekb are provisionally determined.
- the initial candidates may be basically arbitrary, but may be determined based on, for example, the values of a, ZMPrecpeeka and ZMPrecpeekb finally determined at the time of creating the previous time's gait.
- a loop process from S704 to S714 is executed.
- the current gait (temporary current gait) is calculated using the current candidate values of a, ZMPrecpeeka and ZMPrecpeekb to be searched, and the simple model. Is done. More specifically, a ZMP trajectory parameter corrected based on the current value of the ZMP correction parameter a, This time's gait parameters consisting of the current values of ZMPrecpeeka and ZMPrecpeekb and parameters other than the ZMP trajectory parameters determined in S026 (foot trajectory parameters, floor reaction force vertical component trajectory parameters, etc.) Is used to calculate a provisional current time gait. The more specific processing in S704 will be described later.
- the divergent component at the end of the provisional current time gait (scheduled landing time of the free leg foot of the current time's gait) calculated in S704 and the initial divergent component q ”( Difference between the final body posture angle at the end of the provisional current time gait and the initial body posture angle of the normal gait (finally calculated at S024).
- the difference and the difference between the angular velocity of the body posture angle at the end of the provisional current time gait and the initial body posture angular velocity of the normal gait (finally calculated in S024) are obtained. If the difference value satisfies the condition of whether or not the force is within the allowable range (close to 0 or not), the force is determined.
- the gait parameters can be modified so that the provisional current time gait can be connected to the normal gait on the simplified model. a, ZMPrecpeeka and ZMPrecpeekb are determined as.
- S706 The processing of S716 will be described in more detail.
- the terminal divergence component qO [k ] Is calculated according to the definition formula of the divergent component described above.
- the difference between the initial body posture angle of the normal gait and the terminal body posture angle of the provisional current time gait created in S704 is obtained as the terminal body posture angle error ⁇ berr
- the difference between the initial body posture angular velocity of the normal gait and the terminal body posture angular velocity of the provisional current time gait created in S704 is determined as the terminal body posture angular velocity error ⁇ berr.
- the values of the respective parameters are set to predetermined small amounts ⁇ a, ⁇ ZMPrecpeeka near the candidate values of the current search target (a, ZMPrecpeeka, ZMPrecpeekb).
- ⁇ ZMPrecpeekb is changed and a plurality of (three in this embodiment) search target candidates are determined, and the same processing as in S704—S710 is executed based on the current time's gait parameters including the respective search target candidates. Then, a set of errors (errq, 0 berr, co berr) corresponding to each candidate to be searched is obtained.
- the current time's gait parameter is exploratively determined so that the current time's gait is linked to the normal gait, with (a, ZMPrecpeeka, ZMPrecpeekb) as the search target.
- the floor reaction force moment error and the translation floor reaction force error around the target ZMP are determined and the current time gait ( This is a process in which the instantaneous value of the temporary gait is sequentially created in time series from the beginning to the end.
- the only difference from the normal gait generation processing of FIG. 13 is the initial state of the gait and the period of gait generation. More specifically, regarding this difference, in the processing of FIG. 18, in S800 and S818, the terminal state of the previous gait (specifically, the terminal state viewed in the support leg coordinate system of the current gait) is changed to the current gait (temporary). This is set as the initial state of the gait.
- the processing of S804-S812 corresponds to the processing of S304-S312 in FIG. 13, and the processing of S820-S828, or the processing of S320-S328 in FIG. Therefore, the processing in S806 and S822 in FIG. 18 is executed by the subroutine processing in FIG. 14, and the processing in S412 in FIG.
- FIG. 14 is executed by the subroutine processing in FIG. However, among the processing of S806 and S822 in FIG. 18, the processing of S500 is omitted in the processing of FIG. 15 which is the subroutine processing of S412 of FIG. This is because the body tilt angle restoration period of the gait this time is the period [Ta, Tb] set in S612 of FIG.
- a provisional current time gait is generated as described above in S028.
- the target ZMP ZMP trajectory parameter determined in S026 on the simplified model 17 satisfies the target ZMP defined by the ZMP correction parameter a (latest candidate value) provisionally determined in the processing of FIG. 17 and the floor reaction force horizontal component allowable range (S026).
- the gait is provisionally created so as to satisfy the allowable range defined by the determined parameters.
- the floor reaction force moment error (floor reaction force moment horizontal component error) Merr_p (k) is calculated using the simple dani model and the semi-full model.
- gait correction (creation of gait) is repeated using the latest values of the time series of Merr_p (k) and Ferr_p (k).
- the horizontal component of the floor anti-camo generated around the target ZMP is Merr_p (k) (the sign of the error Merr_p (k) obtained when generating the n-th gait is inverted)
- the translational floor reaction force horizontal component generated on the simple dani model by the n-th gait is represented by Ferr_p (k) (the error found when the n-th gait was generated).
- Ferr_p (k)) is created so that it falls within the allowable range of the floor reaction force horizontal component related to the gait this time.
- the gait of the 0th time is a gait created in the processing of S800-S812.
- the process in FIG. 13 ends, and the gait finally created at this point is the current gait to be created in S704 in FIG. 17 (temporary current gait) ). If the judgment result of the first S816 after the processing of S800-S812 is YES, the gait created in the processing of S800-S812 (the 0th gait) is created in S704 of FIG. Obtained as the current time's gait (provisional current time's gait).
- a Ferr (k) may use the same type of feature quantity, but does not have to be. Also, the permissible range for the feature does not need to be the same for A Merr (k) and A Ferr (k).
- the semi-IJ disconnection processing of S816 is performed only after the convergence judgment of ⁇ Merr (k) and ⁇ Ferr (k) in the repetition of the processing of S818-S828, similar to the case of S316.
- the first process in S816 is to determine whether the floor reaction force moment error Merr_p (k) and the translational floor reaction force error Ferr_p (k) for the gait created in S800-S812 are sufficiently small (S300-S312).
- the kinetic accuracy of the gait created in step (2) also serves as a process for evaluating the force / strength sufficiently. These evaluation processes and the convergence judgment process are performed separately as in the case of S316. In such a case, the type of feature quantity or the allowable range for the feature quantity may be different between the evaluation process and the convergence determination process.
- the provisional current time gait finally generated in S028 leads to a normal gait while satisfying the target ZMP and the floor reaction force horizontal component allowable range on the semi-full model by its motion. (Like satisfying the boundary condition of the gait this time).
- the provisional current time gait is generated based on the dynamics of the simplified model, taking into account errors Merr_p (k) and Ferr_p (k) of the floor reaction force on the simple model.
- the instantaneous value at each time k of the current time's gait is generated by correcting the correction by Merr_p (k) and Ferr_p (k) at that time.
- Merr_p (k) and Ferr_p (k) used in this case represent the error of the floor reaction force generated on the simplified model since the convergence judgment result of S816 is YES. As reliable as. For this reason, gait movements are effective in a short time without diverging.
- the gait parameters (a, ZMPrecpeeka and ZMPrecpeekb) of the current time's gait can be determined exploratively.
- the gait parameter determination unit 100a executes the gait parameter determination unit 100a.
- the time series of Merr_p (k) relating to the provisional current time gait finally generated in S028 is the floor reaction force moment error trajectory (see FIG. 5).
- the time series of (k) is the translational floor reaction force error trajectory (see FIG. 5).
- the process proceeds to SO32, and the instantaneous value of the current time's gait is sequentially determined.
- the subroutine process of this process is the same as the process of the flowchart of FIG. However, in this case, the value finally determined in S028 of FIG. 10 is used as the time-series value of Merr_p (k) and Ferr_p (k) used in S412. Further, the processing of S416 and S418 is omitted.
- the step size of the time series of the instantaneous value of the current time's gait (the value of Ak) is set to the control period At of the control unit 60.
- the flow advances to S034, where the operation of the arm for canceling the spin (rotation about the vertical axis) of the robot 1 is determined.
- This processing is based on the vertical reaction force moment generated around the target ZMP when the robot 1 moves along the target gait without swinging the robot 1 arm.
- the posture of the arm is determined so as to be generated by swinging the arm of the body (movement of swinging the arms back and forth), and is performed in the same manner as in S034 of FIG.
- the details are described in Japanese Patent Application Laid-Open Publication No. H11-157, and further description is omitted here.
- the process proceeds to S036 for full model correction (processing of the full model correction unit 100e).
- the instantaneous value of the ZMP allowable range and the instantaneous value of the floor reaction force horizontal component allowable range are determined. In this processing, it is determined based on the gait parameters that define the ZMP allowable range and the floor reaction force horizontal component allowable range determined in S030.
- the processing of S032-S036 (excluding the processing of S412 and S414 in S032 and the processing of S034) is the processing executed by the target instantaneous value generation unit 100b.
- a corrected gait using the full model is generated.
- This process is a process executed by the full model correction unit 100c.
- this process is the same as the process of S038 in FIG. 13 of the above-mentioned publication 1, and is executed as described in the publication 1. Therefore, detailed description is omitted in this specification.
- a corrected target body position and posture and a corrected desired floor reaction force moment which are obtained by further correcting the desired body position and posture (the body position and posture of the displacement dimension corrected gait), are determined.
- the gait generation processing of the gait generator 100 according to the present embodiment has been described above.
- the present embodiment is an embodiment of the first, third, fifth, sixth, ninth, thirteenth, and fifteenth inventions.
- the normal gait finally generated in the process of S024 in FIG. 10 or the current time gait finally generated in S028 of FIG. 10 corresponds to the target gait in each of the above inventions.
- the processing power of S300-S312 in FIG. 13 or the processing power of S800-S812 in FIG. I do.
- the processing force of S306 and S322 in FIG. 13 or the processing power of S415 and S418 in FIG. 14 executed in the processing of S806 and S822 in FIG. hand! /
- the repetition processing of S316-S328 in FIG. 13 or the repetition processing of S816-S828 in FIG. 18 corresponds to the target motion determining means in each invention described above.
- the judgment processing of S316 or S816 is performed by the target motion determining means.
- the processing of S322 or the processing of S822 corresponds to the corrected motion determination processing.
- the first floor reaction force component and the second floor reaction force component in the third invention correspond to the floor reaction force moment horizontal component and the translation floor reaction force horizontal component, respectively, in the present embodiment.
- the case of using the equation 3a in the process of S415 in FIG. 14 is the ninth embodiment of the present invention.
- the operation of the composite compliance control apparatus 101 will be described with reference to FIG.
- the operation of the composite compliance control device 101 is described in detail in Japanese Patent Application Laid-Open No. Hei 10-277969 filed earlier by the present applicant, so that only a brief description will be given in this specification.
- the gait generator 100 among the target gaits generated as described above, the corrected target body position / posture (trajectory) and the target arm posture (trajectory) are converted into a robot geometric model (inverse kinematics calculation unit). Sent to 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) (corrected desired floor reaction force moment and desired floor reaction force)
- the vertical component is sent to the composite compliance operation determining unit 104 and also to the target floor reaction force distributor 106.
- the desired floor reaction force distributor 106 distributes the floor reaction force to each foot 22, and determines the desired center of each foot floor reaction force and the desired foot floor reaction force.
- the determined target foot floor reaction force center points and the desired foot floor reaction force are sent to the composite compliance operation determination unit 104.
- the corrected target foot position / posture (trajectory) with mechanism deformation compensation is sent from the composite compliance operation determination unit 104 to the robot geometric model 102.
- the robot geometric model 102 receives the 12 joints of the legs 2 and 2 that satisfy them. Calculate the joint displacement command (value) of the joint and send it to the displacement controller 108.
- the displacement controller 108 controls the displacement of the twelve joints of the robot 1 according to the joint displacement command (value) calculated by the robot geometric model 102 as a target value.
- the robot geometric model 102 calculates a displacement designation (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 twelve 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 by the robot 1 (specifically, the actual floor reaction force of each foot) is detected by the six-axis force sensor 50. The detected value is sent to the composite compliance operation determination unit 104.
- the posture inclination deviation ⁇ errx, erry erry generated at the mouth bot 1 (specifically, the deviation of the actual posture angle from the target body posture angle, the posture angle deviation in the roll direction (around the X axis) is err errx, and the pitch
- the posture angle deviation in the direction (around the Y axis) is erryerry) is detected via the posture sensor 54, and the detected value is sent to the posture stabilization control calculation unit 112.
- the posture stabilization control calculation unit 112 calculates a compensation total floor reaction force moment around a target total floor reaction force center point (target ZMP) for restoring the body posture angle of the robot 1 to the target body posture angle. It is sent to the composite compliance operation determination unit 104.
- target ZMP target total floor reaction force center point
- the composite compliance operation determining unit 104 corrects the desired floor reaction force based on the input value. Specifically, the compensation total floor reaction force moment or the sum of the compensation total floor reaction force moment and the corrected target floor reaction force moment acts around the target total floor reaction force center point (target ZMP). Correct the desired floor reaction force.
- the composite compliance operation determining unit 104 attempts to match the corrected target floor reaction force with the state of the actual robot for which the force such as a sensor detection value is also calculated and the floor reaction force with the mechanism deformation compensation described above. Determine the flat position and attitude (trajectory).
- the corrected target foot position / posture with the mechanical deformation compensation takes into account the mechanical deformation of the compliance mechanism 72 and the like.
- 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.
- 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.
- Ferr—p (k) Ferr—p (k) + p * ⁇ Ferr (k) Equation 1 Ob
- p is a predetermined coefficient of 1 or less and 0 or more.
- the floor reaction force moment horizontal component generated around the target ZMP on the simplified model by the motion of the gait (target gait) including the body horizontal acceleration and the body posture angular acceleration to be determined is
- the floor reaction force moment horizontal component Merr_p (k) obtained by subtracting the correction amount Merr_p (k) obtained from Equation 10a from the original desired floor reaction force moment horizontal component ( 0), and the upper body to be determined
- the correction amount Ferr_p (k) obtained by Equation 10b is added to the floor reaction force horizontal component Fx generated on the simple model by the motion of the gait (target gait) including the horizontal acceleration and the body posture angular acceleration.
- the body acceleration and the body posture angular acceleration may be determined such that the translational floor reaction force horizontal component satisfies the floor reaction force horizontal component allowable range.
- the floor reaction force moment horizontal component, Merr_p (k) is determined by the following formula:
- the gait motion is determined so that the horizontal component of the floor reaction force moment obtained by adding the correction amount Merr_p (k) to the original component matches the original desired floor reaction force moment horizontal component. Means to specify.
- the determination processing of the first S316 before executing the processing of S318-S328 in FIG. 13 may be omitted. That is, the processing of S318 to S328 may be executed at least once after the processing of S300 to S312 in FIG. Similarly, after the processing of S800-S812 in FIG. 18 is completed, the first judgment processing of S816 before executing the processing of S818-S828 in FIG. 18 is omitted, and the processing power of S818-S828 S It may be executed.
- Such an embodiment is an embodiment of the second, fourth, fifth, sixth, tenth, fourteenth, and sixteenth inventions described above. It becomes. In this case, the correspondence between these inventions and the second embodiment excludes the evaluation means! (Evaluation means is not provided in the second embodiment.)
- the above-described embodiment the embodiment first described in the present specification (hereinafter, referred to as the first embodiment)) and the first invention or the third invention This is the same as the correspondence with the invention.
- the convergence of A Merr (k) and A Ferr (k) may be determined based on the number of repetitions as described above. Alternatively, based on the difference between the gait motion generated at each gait generation and the gait motion generated at the previous time (for example, the difference between the position and posture of a certain part such as the upper body), ⁇ The convergence of Merr (k) and ⁇ Ferr (k) may be determined.
- the error Merr_p (k) related to the floor reaction force moment horizontal component around the target ZMP is used.
- an action point is set at a point different from the target ZMP, and the action point is set.
- the error about the horizontal component of the floor reaction force moment around the point (here, this is Merr_p '(k)) may be used.
- the error is determined from the target value of the floor reaction force moment horizontal component around the action point (the target value such that the floor reaction force moment water around the target ZMP becomes zero).
- the determination of the body horizontal acceleration and the body horizontal acceleration so that Merr_p (k) occurs around the target ZMP This is equivalent to determining the body posture angular acceleration (in other words, determining the instantaneous value of the motion of the target gait).
- the floor reaction force vertical component trajectory (or a parameter defining the same) may be set, for example, as shown in FIG.
- the body tilt angle restoring period may be set, for example, to a two-leg supporting period.
- the floor reaction force horizontal component allowable range is sufficiently large for the entire period of one step of a gait in which the friction coefficient of the floor assumed in gait generation is large! If the generated translational floor reaction force horizontal component is surely within the floor reaction force horizontal component allowable range), the entire period may be used as the body tilt angle restoration period.
- the ZMP conversion value of the body tilt restoring moment may be zero.
- a force using the floor reaction force moment error Merr_p (k) is obtained by dividing this Merr_p (k) by the desired floor reaction force vertical component at each time k of the gait. Is the ZMP at time k (the sum of the inertial force generated by the motion of the gait of Robot 1 and gravity). This corresponds to the deviation (error) from the target ZMP at the point on the floor where the moment horizontal component of the force is 0). Therefore, instead of the floor reaction force moment error Merr_p (k), an error of the ZMP from the target ZMP (here, this is referred to as a ZMP error ZMPerr_p (k)) may be used. In this case, in the processing of S412 in FIG.
- the resultant force of the inertia force and gravity generated by the motion of the gait of the robot 1 ZMP error ZMPerr_p (k) is calculated as the deviation of ZMP from the target ZMP.
- the converted value or the value obtained by multiplying the ZMP error ZMPerr_p (k) by a predetermined coefficient (for example, a positive number less than 1).
- a predetermined coefficient for example, a positive number less than 1.
- Determining the body horizontal acceleration and the body posture angle acceleration so that the horizontal component becomes 0 is determined by the Merr_p (k) around the target ZMP or the floor reaction force moment horizontal component obtained by multiplying this by a predetermined coefficient.
- the body horizontal acceleration and the body posture angle acceleration are determined so as to generate Determining the instantaneous value of the dynamic) becomes equivalent to.
- the value of ZMPerr_p (k) or the value obtained by multiplying ZMPerr_p (k) or ZMPerr_p (k) by a predetermined coefficient is added to the position of ZMP calculated on the motility of the gait to be created. This is the same as determining the body horizontal acceleration and body posture angular acceleration so that the calorie matches the position of the target ZMP (and thus the instantaneous value of the target gait movement).
- Error ZMPerr_p (k) is the ZMP calculated on the semi-full model from the motion of the gait being created in the processing of S306 and S322 in FIG. 13 or S806 and S822 in FIG. This means the difference from the ZMP calculated on the dani model.
- S308, S324, or S808, S At 824 at each time k, the difference between the newly obtained ZMP error and the ZMP error obtained at the time of generating the immediately preceding gait is obtained as the ZMP error change amount ⁇ ZMPerr (k), which is obtained as S316 or It can be used instead of A Merr in the judgment process of S816.
- the embodiment S hereinafter, referred to as a third embodiment of the seventh invention and the seventeenth invention is configured.
- the eighth invention is achieved. And an embodiment of the eighteenth invention (hereinafter, referred to as a fourth embodiment).
- the floor reaction force moment Msmpl (k) generated around the target ZMP on the simplified model is calculated according to the above equation 3a.
- the error ZMPerr_p (k) determined as described above is calculated as S306, S322 in FIG.
- the motion (temporary motion) of the gait being created in the processing of S806 and S822 in FIG. 18 also means the difference between the ZMP calculated on the semi-full model and the target ZMP. Therefore, the embodiment in this case corresponds to the embodiment of the eleventh invention or the twelfth invention.
- the fifteenth invention, and the sixteenth invention will be constructed.
- the floor reaction force becomes a vertical component force ⁇ and the ZMP becomes indefinite, so that the floor reaction force moment error as in the above embodiment may be used.
- ZMPerr_p (k) can be used for the entire period of the gait because there is no aerial period.
- the ZMP error ZMPerr_p (k) determined as described above the right side of the above equation 10a is divided by the floor reaction force vertical component at time k (this is the ZMP correction amount in the present invention). May be used).
- the target ZMP and the floor reaction After generating a gait that satisfies the allowable range of the force horizontal component from the beginning to the end, the gait that corrects the floor reaction force moment error Merr_p (k) and the translational floor reaction force Ferr_p (k) (normal The gait or the current time's gait was generated up to the end of the initial force.
- the generation of the instantaneous value of the gait corrected for the floor reaction force moment error Merr_p (k) and the translational floor reaction force Ferr_p (k) determined based on the gait motion (temporary motion) It may be performed sequentially from the beginning to the end.
- the semi-full model may be the same as the full model for full model correction.
- the floor reaction force horizontal component allowable range for the semi-full model must be equal to the full model in order to perform the process for exploratory determination of the gait parameters (the processes of S024 and S028 in Fig. 10) in a short time and efficiently. It is preferable to set it wider than the allowable floor reaction force horizontal component range.
- the gait correction processing using the full model is excluded, and only the allowable range of the translational floor reaction force horizontal component around the target ZMP is set.
- the allowable range of the vertical component of the floor reaction force moment around the target ZMP may be set.
- the error of the floor reaction force moment vertical component which can be obtained only by the error of the floor reaction force moment horizontal component, is also calculated, and the error for the vertical component is added to the floor reaction force moment vertical component generated on the simplified model.
- the motion of the desired gait may be generated such that the generated moment satisfies an allowable range for the vertical component.
- the gait generating device for a mobile robot of the present invention The gait that can prevent slipping of the gait can be efficiently generated, and the dynamic accuracy between the motion of the gait and the floor reaction force can be secured well. This is useful in that a gait of a mobile robot having inherently low stability can be generated while ensuring the stability of the mobile robot.
- FIG. 1 is a diagram schematically illustrating the overall configuration of a mobile robot (bipedal walking robot) to which an embodiment of the present invention is applied.
- FIG. 2 is a side view showing a configuration of a foot portion of each leg of the robot in FIG.
- FIG. 3 is a block diagram showing a configuration of a control unit provided in the robot of FIG. 1.
- FIG. 4 is a block diagram showing a functional configuration of the control unit in FIG. 3.
- FIG. 6 (a) and (b) are diagrams for explaining the motion modes (body translation mode and body rotation mode) of the robot, respectively.
- FIG. 7 A diagram showing the structure of a first dynamics model (simple model) used in gait generation.
- FIG. 8 is a diagram showing the structure of a second dynamic model (semi-full model) used for gait generation.
- FIG. 9 is a diagram showing a structure of a full model used in gait generation.
- FIG. 10 is a flowchart showing a main routine process of the gait generator in the embodiment.
- FIG. 11 is a flowchart showing a subroutine process of FIG. 10;
- FIG. 12 is a flowchart showing a subroutine process of FIG. 10;
- FIG. 13 is a flowchart showing a subroutine process of FIG. 12.
- FIG. 14 is a flowchart showing the subroutine processing of FIG.
- FIG. 15 is a flowchart showing the subroutine processing of FIG. 14.
- FIG. 16 is a flowchart showing a subroutine process of FIG. 10;
- FIG. 17 is a flowchart showing a subroutine process of FIG. 10;
- FIG. 18 is a flowchart showing a subroutine process of FIG. 17.
- FIG. 19 is a graph showing an example of a ZMP-converted value of a body inclination restoring moment in a normal gait.
- FIG. 20 is a graph showing an example of a ZMP conversion value of a body inclination restoring moment in a current time gait.
Landscapes
- Engineering & Computer Science (AREA)
- Mechanical Engineering (AREA)
- Chemical & Material Sciences (AREA)
- Combustion & Propulsion (AREA)
- Transportation (AREA)
- Robotics (AREA)
- Manipulator (AREA)
Abstract
Description
Claims
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020067017634A KR101140812B1 (ko) | 2004-02-27 | 2005-02-28 | 이동 로봇의 보용생성장치 |
JP2006510511A JP4805818B2 (ja) | 2004-02-27 | 2005-02-28 | 移動ロボットの歩容生成装置 |
US10/597,933 US7774098B2 (en) | 2004-02-27 | 2005-02-28 | Gait generating device for moving robot |
EP05719663A EP1738879B1 (en) | 2004-02-27 | 2005-02-28 | Gait generating device for moving robot |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2004052823 | 2004-02-27 | ||
JP2004-052823 | 2004-02-27 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2005082582A1 true WO2005082582A1 (ja) | 2005-09-09 |
Family
ID=34908714
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/JP2005/003346 WO2005082582A1 (ja) | 2004-02-27 | 2005-02-28 | 移動ロボットの歩容生成装置 |
PCT/JP2005/003345 WO2005082583A1 (ja) | 2004-02-27 | 2005-02-28 | 移動ロボットの歩容生成装置 |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/JP2005/003345 WO2005082583A1 (ja) | 2004-02-27 | 2005-02-28 | 移動ロボットの歩容生成装置 |
Country Status (5)
Country | Link |
---|---|
US (2) | US7715945B2 (ja) |
EP (2) | EP1738879B1 (ja) |
JP (2) | JP4805818B2 (ja) |
KR (2) | KR101160161B1 (ja) |
WO (2) | WO2005082582A1 (ja) |
Families Citing this family (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7649536B1 (en) * | 2006-06-16 | 2010-01-19 | Nvidia Corporation | System, method, and computer program product for utilizing natural motions of a user to display intuitively correlated reactions |
KR100835354B1 (ko) * | 2006-07-05 | 2008-06-04 | 삼성전자주식회사 | 보행로봇 및 그의 제어방법 |
US7943874B2 (en) * | 2007-09-18 | 2011-05-17 | Honeywell International Inc. | Ground contact switch for personal navigation system |
JP5251253B2 (ja) * | 2008-05-20 | 2013-07-31 | 株式会社安川電機 | 脚式歩行ロボットの安定化制御装置 |
JP5232124B2 (ja) * | 2009-10-28 | 2013-07-10 | 本田技研工業株式会社 | 脚式移動ロボットの制御装置 |
KR101687629B1 (ko) * | 2010-01-18 | 2016-12-20 | 삼성전자주식회사 | 인간형 로봇 및 그 보행 제어방법 |
US8437993B2 (en) | 2010-08-12 | 2013-05-07 | International Business Machines Corporation | Dynamically adjusting simulation fidelity based on changes in activity levels of components |
US8428921B2 (en) | 2010-08-12 | 2013-04-23 | International Business Machines Corporation | Dynamically adjusting simulation fidelity based on checkpointed fidelity state |
US8407035B2 (en) * | 2010-08-12 | 2013-03-26 | International Business Machines Corporation | Dynamically adjusting simulation fidelity in a self-optimized simulation of a complex system |
US8468005B2 (en) | 2010-08-12 | 2013-06-18 | International Business Machines Corporation | Determining simulation fidelity in a self-optimized simulation of a complex system |
WO2016185877A1 (ja) * | 2015-05-20 | 2016-11-24 | ボッシュ株式会社 | ウェアラブルロボットの制御装置、ウェアラブルロボット、及び、ウェアラブルロボットの制御方法 |
US9586316B1 (en) * | 2015-09-15 | 2017-03-07 | Google Inc. | Determination of robotic step path |
KR102556924B1 (ko) * | 2016-09-05 | 2023-07-18 | 삼성전자주식회사 | 보행 보조 방법 및 이를 수행하는 장치 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002326173A (ja) * | 2001-04-27 | 2002-11-12 | Honda Motor Co Ltd | 脚式移動ロボットの動作生成装置 |
WO2003057427A1 (fr) * | 2001-12-28 | 2003-07-17 | Honda Giken Kogyo Kabushiki Kaisha | Dispositif de commande pour robot mobile sur jambes |
WO2003061917A1 (fr) * | 2002-01-18 | 2003-07-31 | Honda Giken Kogyo Kabushiki Kaisha | Dispositif de commande pour robot bipede |
Family Cites Families (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3167404B2 (ja) * | 1992-02-26 | 2001-05-21 | 本田技研工業株式会社 | ロボットの関節駆動制御装置 |
JP3148827B2 (ja) | 1992-04-30 | 2001-03-26 | 本田技研工業株式会社 | 脚式移動ロボットの歩行制御装置 |
JP3273443B2 (ja) * | 1992-05-22 | 2002-04-08 | 本田技研工業株式会社 | ロボットのリンクなどの軌道生成方法及び装置 |
JP3663034B2 (ja) | 1996-07-25 | 2005-06-22 | 本田技研工業株式会社 | 脚式移動ロボットの歩容生成装置 |
US5872893A (en) * | 1996-07-25 | 1999-02-16 | Honda Giken Kogyo Kabushiki Kaisha | Gait generation system of legged mobile robot |
JP3672406B2 (ja) | 1997-01-31 | 2005-07-20 | 本田技研工業株式会社 | 脚式移動ロボットの歩容生成装置 |
JP3629133B2 (ja) | 1997-01-31 | 2005-03-16 | 本田技研工業株式会社 | 脚式移動ロボットの制御装置 |
JP3443077B2 (ja) | 1999-09-20 | 2003-09-02 | ソニー株式会社 | ロボットの運動パターン生成装置及び運動パターン生成方法、並びにロボット |
JP3615702B2 (ja) * | 1999-11-25 | 2005-02-02 | ソニー株式会社 | 脚式移動ロボットの動作制御装置及び動作制御方法、並びに、脚式移動ロボット |
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 |
DE60237041D1 (de) * | 2001-12-28 | 2010-08-26 | Honda Motor Co Ltd | Gangerzeugungsvorrichtung und steuervorrichtung für beweglichen roboter mit beinen |
US6999851B2 (en) * | 2002-08-30 | 2006-02-14 | Sony Corporation | Robot apparatus and motion controlling method therefor |
US7236852B2 (en) * | 2002-10-11 | 2007-06-26 | Sony Corporation | Motion controlling apparatus and method and remote controlling apparatus and method for legged mobile robot |
US7054718B2 (en) * | 2002-10-11 | 2006-05-30 | Sony Corporation | Motion editing apparatus and method for legged mobile robot and computer program |
-
2005
- 2005-02-28 EP EP05719663A patent/EP1738879B1/en not_active Expired - Fee Related
- 2005-02-28 JP JP2006510511A patent/JP4805818B2/ja not_active Expired - Fee Related
- 2005-02-28 WO PCT/JP2005/003346 patent/WO2005082582A1/ja active Application Filing
- 2005-02-28 JP JP2006510510A patent/JP4805817B2/ja not_active Expired - Fee Related
- 2005-02-28 EP EP05719662A patent/EP1736286B1/en not_active Expired - Fee Related
- 2005-02-28 US US10/597,931 patent/US7715945B2/en active Active
- 2005-02-28 US US10/597,933 patent/US7774098B2/en not_active Expired - Fee Related
- 2005-02-28 WO PCT/JP2005/003345 patent/WO2005082583A1/ja active Application Filing
- 2005-02-28 KR KR1020067017772A patent/KR101160161B1/ko active IP Right Grant
- 2005-02-28 KR KR1020067017634A patent/KR101140812B1/ko not_active IP Right Cessation
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002326173A (ja) * | 2001-04-27 | 2002-11-12 | Honda Motor Co Ltd | 脚式移動ロボットの動作生成装置 |
WO2003057427A1 (fr) * | 2001-12-28 | 2003-07-17 | Honda Giken Kogyo Kabushiki Kaisha | Dispositif de commande pour robot mobile sur jambes |
WO2003061917A1 (fr) * | 2002-01-18 | 2003-07-31 | Honda Giken Kogyo Kabushiki Kaisha | Dispositif de commande pour robot bipede |
Also Published As
Publication number | Publication date |
---|---|
WO2005082583A1 (ja) | 2005-09-09 |
JPWO2005082582A1 (ja) | 2007-10-25 |
EP1736286B1 (en) | 2011-11-30 |
JP4805818B2 (ja) | 2011-11-02 |
JP4805817B2 (ja) | 2011-11-02 |
US20070061038A1 (en) | 2007-03-15 |
US20070156284A1 (en) | 2007-07-05 |
US7715945B2 (en) | 2010-05-11 |
EP1738879A4 (en) | 2009-12-09 |
KR101140812B1 (ko) | 2012-05-03 |
US7774098B2 (en) | 2010-08-10 |
KR20060126803A (ko) | 2006-12-08 |
EP1738879B1 (en) | 2011-12-21 |
KR20060129423A (ko) | 2006-12-15 |
EP1736286A4 (en) | 2009-12-09 |
EP1736286A1 (en) | 2006-12-27 |
JPWO2005082583A1 (ja) | 2007-10-25 |
EP1738879A1 (en) | 2007-01-03 |
KR101160161B1 (ko) | 2012-06-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4800037B2 (ja) | 移動ロボットの歩容生成装置 | |
WO2005082582A1 (ja) | 移動ロボットの歩容生成装置 | |
JP5221688B2 (ja) | 脚式移動ロボットの歩容生成装置 | |
JP5483997B2 (ja) | 脚式移動ロボットの制御装置 | |
JP5219956B2 (ja) | 移動体の制御装置 | |
JP5456588B2 (ja) | 脚式移動ロボットの制御装置 | |
JP4225968B2 (ja) | 脚式移動ロボットの制御装置 | |
JP4800038B2 (ja) | 移動ロボットの歩容生成装置 | |
JPWO2005000536A1 (ja) | 脚式移動ロボットの制御装置 | |
JP2011093024A (ja) | 脚式移動ロボットの制御装置 | |
JPWO2005000533A1 (ja) | 脚式移動ロボットの歩容生成装置 | |
JP5465074B2 (ja) | 2足移動ロボットの制御装置 | |
JP5468974B2 (ja) | 2足移動ロボットの制御装置及び歩容生成装置 | |
JP5232120B2 (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 SM 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 IS IT LT 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: 2006510511 Country of ref document: JP |
|
WWE | Wipo information: entry into national phase |
Ref document number: 2007061038 Country of ref document: US Ref document number: 10597933 Country of ref document: US |
|
WWE | Wipo information: entry into national phase |
Ref document number: 1020067017634 Country of ref document: KR |
|
WWE | Wipo information: entry into national phase |
Ref document number: 2005719663 Country of ref document: EP |
|
WWP | Wipo information: published in national office |
Ref document number: 1020067017634 Country of ref document: KR |
|
WWP | Wipo information: published in national office |
Ref document number: 2005719663 Country of ref document: EP |
|
WWP | Wipo information: published in national office |
Ref document number: 10597933 Country of ref document: US |