WO2006067904A1 - 脚式移動ロボットの歩容生成装置 - Google Patents
脚式移動ロボットの歩容生成装置 Download PDFInfo
- Publication number
- WO2006067904A1 WO2006067904A1 PCT/JP2005/017806 JP2005017806W WO2006067904A1 WO 2006067904 A1 WO2006067904 A1 WO 2006067904A1 JP 2005017806 W JP2005017806 W JP 2005017806W WO 2006067904 A1 WO2006067904 A1 WO 2006067904A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- gait
- target
- trajectory
- robot
- reaction force
- Prior art date
Links
Classifications
-
- 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
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1602—Programme controls characterised by the control system, structure, architecture
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10S—TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10S901/00—Robots
- Y10S901/01—Mobile robot
Definitions
- the present invention relates to an apparatus for generating a target gait for causing a legged mobile robot to perform an operation of moving an object.
- a legged mobile robot such as a biped mobile robot performs a task such as pushing a target object to move it
- the robot receives a floor force or a floor reaction force that contacts the tip of the leg.
- the reaction force that the robot receives from the object is called the object reaction force.
- Patent Document 1 Japanese Patent Laid-Open No. 10-230485 by the present inventor is disclosed.
- This technology removes the vertical component of the moment generated around the target ZMP (target floor reaction force center point) by the resultant force of the inertial force generated by the movement of the mouth bot and the gravity and target reaction force acting on the robot.
- the desired gait is generated so as to satisfy the dynamic equilibrium condition that (horizontal component) becomes 0 (the floor reaction force acting on the center point of the desired floor reaction force balances the resultant force). .
- the center of gravity of the robot can maintain the robot's dynamic balance.
- the robot's target gait is adjusted to balance the center of gravity.
- the trajectory (time series) of the target value of the acting force from the robot to the object or the object It is necessary to determine the trajectory (time series) of the target value of the reaction force.
- the target value of the object reaction force will be representatively shown below. The trajectory of this shall be determined.
- the trajectory of the target value of the object reaction force (hereinafter referred to as the target object reaction force) is, for example, a movement plan of the object (a plan such as how to move the object at any timing) To be determined.
- the actual object reaction force acting on the robot does not always coincide with the target object reaction force.
- the target target reaction force is 0 to a certain value ( ⁇ 0) at the scheduled time.
- the actual reaction force of the object may not change at the scheduled time due to a shift in the positional relationship between the actual robot and the object.
- the gait generated based on the target object reaction force trajectory is generated with the object reaction force scheduled to change at the scheduled time.
- the stability of the robot is likely to be impaired.
- the present invention has been made in view of a strong background, and a gait for causing a robot to perform an operation of moving an object is obtained by applying an action force between a future robot and the object.
- Legged movement that can be generated considering the deviation from the target value, and can generate the robot's gait so that the stability of the robot's posture can be ensured even if the applied force deviates from the target value.
- An object is to provide a robot gait generator.
- a first invention of a gait generator for a legged mobile robot provides an object to a legged mobile robot including a plurality of legs extending from an upper body.
- the robot in the new target gait is at least based on the movement plan of the object.
- a first robot which is a trajectory of the target value of the acting force between the object and a first acting force trajectory determining means for temporarily determining a target acting force trajectory between the objects;
- the robot in the new target gait First leg motion parameter determining means for tentatively determining first leg motion parameters defining the movement of the legs of the robot;
- the first robot's target target trajectory between the actual robot and the target may be changed after the predetermined time in the future. Assuming that the trajectory has changed to a trajectory different from the applied force trajectory, set the target applied force trajectory between the second robot and the target, which is the trajectory of the target value of the applied force between the robot and the object after the predetermined time.
- Second acting force trajectory setting means
- the target gait of the robot up to the predetermined time point is generated using the first leg motion parameter and the first robot 'target motion force trajectory between the objects, and further the target gait up to the predetermined time point
- the target gait of the robot after a predetermined time is defined as a variable that can be variably set as a second leg motion parameter that is a leg motion parameter that defines the motion of the leg of the robot after the predetermined time.
- the second leg motion that allows the target gait of the robot after the predetermined time point to satisfy a predetermined dynamical constraint condition when generated using the leg motion parameters and the second robot / object interaction force
- a judgment means for judging whether or not the force is capable of setting a parameter
- the first leg When it is determined by the determining means that the second leg motion parameter that allows the target gait of the robot after the predetermined time to satisfy the predetermined dynamic constraint condition can be set, the first leg The new target gait is generated using the body motion parameter and the first robot 'target motion force trajectory between the objects, and the target gait of the robot after the predetermined time satisfies the predetermined dynamic constraint condition.
- the movement plan of the object is corrected, and at least the corrected movement plan is used to change the first leg motion parameter and the first leg movement parameter.
- Robot 'target target force trajectory between objects is re-determined, and the new target gait is generated using the re-determined first leg motion parameters and the first mouth bot / target target force trajectory. Do It is characterized by doing so.
- the target gait of the robot after the predetermined time point that is, the trajectory of the action force between the robot and the target object after the predetermined time point is the target action force between the first robot and the target object.
- the second robot is different from the trajectory.
- the second leg motion parameter (hereinafter, this second leg motion parameter is referred to as the appropriate second leg motion parameter) in which the target gait of the formed robot can satisfy the dynamic constraint conditions.
- the determination means determines whether or not the force is settable. In this determination, if an appropriate second leg motion parameter can be set, it is assumed that the actual acting force between the mouth bot and the object is the target action force between the first robot and the object after the predetermined time.
- the new target gait is generated by using the first leg motion parameter and the first robot'target motion force trajectory between objects.
- the actual acting force between the robot and the target object is determined after the predetermined time point.
- the robot becomes the target action force trajectory between the first robot and the target action force between the target robots
- the target gait that satisfies the dynamic constraint conditions cannot be generated and the robot It is difficult to ensure the stability. Therefore, according to the first aspect of the present invention, in this case, the movement plan of the object is corrected, and at least the corrected movement plan is used to determine the first leg motion parameter and the target action force between the first robot and the object. Redetermine the trajectory. Then, the new target gait is generated using the re-determined first leg motion parameter and the first robot 'target motion target trajectory.
- the gait for causing the robot to perform the operation of moving the object is taken into consideration when the acting force between the robot and the object in the future deviates from the target value force.
- the robot's gait can be generated so that the stability of the robot's posture can be ensured.
- a leg motion parameter is generated.
- ZMP ZMP (the horizontal component of the moment generated by the combined force of the inertial force generated by the robot's motion and the force acting on the robot's object force and the gravity acting on the robot becomes zero)
- target ZMP the trajectory of the target position of zero moment point
- robot dynamic model to satisfy the target ZMP (so that the horizontal component force SO of the moment around the target ZMP).
- the predetermined time point is, for example, the magnitude of the acting force of the first robot's target acting force trajectory between the objects temporarily determined by the first acting force trajectory determining means, or of the acting force.
- the time point at which the magnitude of the change speed exceeds a predetermined threshold value, and the second robot 'target target action force trajectory is the magnitude of the action force between the robot and the object after the predetermined time, or It is preferable that the trajectory has a change speed of the acting force that is smaller than the predetermined threshold (second invention).
- the predetermined dynamic constraint condition is that at least the inertia force generated by the motion of the target gait of the robot, the gravity acting on the robot, and the robot If the ZMP determined by the resultant force acting on the object is within the predetermined allowable range, it is preferable to include the condition (third invention).
- the actual acting force between the robot and the object is Said
- the target gait (ZMP is predetermined) to ensure the stability of the robot when the second robot 'target target force trajectory different from the first robot' target target force applied after the predetermined time point It is possible to appropriately determine whether or not it is possible to generate a gait that falls within the allowable range.
- a gait generator for a legged mobile robot according to an embodiment of the present invention will be described with reference to the accompanying drawings.
- a legged mobile robot a biped mobile robot is taken as an example.
- Fig. 1 is a schematic diagram showing the entire biped mobile robot as a legged mobile robot according to this embodiment.
- a bipedal mobile robot (hereinafter referred to as a robot) 1 includes a pair of left and right legs (leg links) 2 and 2 extending downward from an upper body (base of the robot 1) 3. . Both legs 2, 2 have the same structure, each with six joints. The six joints are the joints 10R, 10L for the rotation (rotation) of the crotch (waist) (in the direction of the rotation relative to the upper body 3) in order of the upper body 3 side force.
- the rotation joints 20R, 20L and force are also configured.
- a foot (foot) 22R (L) constituting the tip of each leg 2 is attached.
- the upper body 3 is attached to the uppermost positions of both legs 2 and 2 through three joints 10R (L), 12R (L) and 14R (L) of the crotch of each leg 2. ing.
- a control unit 60 and the like, which will be described in detail later, are stored.
- the control unit 60 is shown outside the upper body 3 for the convenience of illustration.
- the hip joint (or the hip joint) has joints 10R (L) and 12R.
- the knee joint is composed of joint 16R (L)
- the ankle joint is composed of joints 18R (L) and 20R (L).
- the hip joint and knee joint are connected by a thigh link 24R (L)
- the knee joint and ankle joint are connected by a crus link 26R (L).
- a pair of left and right arms (arm links) 5 and 5 are attached to both sides of the upper part of the upper body 3
- the head 4 is disposed at the upper end of the upper body 3.
- Both arms 5 and 5 have the same structure, each with 7 joints. That is, each arm body 5 has a shoulder joint composed of three joints 30R (L), 32R (L), 34R (L), an elbow joint composed of one joint 36R (L), and three
- a wrist joint composed of joints 38R (L), 40R (L), and 42R (L) and a hand portion (hand) 44R (L) connected to the wrist joint are provided.
- the head 4 does not have a direct relationship with the gist of the present invention, and therefore a detailed description is omitted.
- the foot 22R (L) of each leg 2 is given six degrees of freedom with respect to the upper body 3.
- “*" is multiplication for scalar operations and cross product for vectors.
- the desired joints 22R and 22L can be exercised by driving the joint shown in FIG.
- the robot 1 can arbitrarily move in the three-dimensional space.
- the desired work such as pushing the trolley can be performed.
- a known 6-axis force sensor 50 is interposed between the foot 22R (L) below the ankle joints 18R (L) and 20R (L) of each leg 2 as shown in FIG. ing.
- the six-axis force sensor 50 is for detecting the presence / absence of the foot 22R (L) of each leg 2 and the floor reaction force (ground load) acting on each leg 2, etc.
- the detection signals of the three-direction components Fx, Fy, Fz of the translational force of the floor reaction force and the three-way components Mx, My, Mz of the moment are output to the control unit 60.
- the 6-axis force sensor 52 which is similar to the 6-axis force sensor 50, includes a wrist portion (node) 44R (L) and wrist joints 38R (L), 40R (L), 42R (L) of each arm body 5.
- the detection signal of the three-direction component of the translational force of the external force acting on the hand portion 44R (L) and the three-way component of the moment is output from the six-axis force sensor 52 to the control unit 60.
- the body 3 detects the inclination angle of the body 3 with respect to the Z axis (vertical direction (gravity direction)) and its angular velocity, and the rotation angle (one angle) of the body 3 around the Z axis and its angular velocity.
- a posture sensor 54 is provided, and a detection signal thereof is output from the posture sensor 54 to the control unit 60.
- This posture sensor 54 includes a triaxial acceleration sensor and a triaxial gyro sensor (not shown).
- the detection signals of these sensors indicate the posture angle (tilt angle and horizontal angle) of the upper body 3 and its angular velocity. Inspection It is used for estimating the self-position and posture of the robot 1.
- each joint of the robot 1 has an electric motor 64 (see FIG. 2) for driving the joint and a rotation amount of the electric motor 64 (a rotation angle of each joint).
- An encoder (rotary encoder) 65 for detection is provided, and a detection signal of the encoder 65 is output from the encoder 65 to the control unit 60.
- an elastic body such as a spring is interposed between each foot 22R (L) and the six-axis force sensor 50, and the bottom surface of the foot 22R (L)
- An elastic body such as rubber is attached to the surface.
- FIG. 2 is a block diagram showing the configuration of the control unit 60.
- the control unit 60 is constituted by a microcomputer, and the first arithmetic unit 90 and the second arithmetic unit 92, which also have CPU power, an AZD variable ⁇ 80, a counter 86, a DZA variable ⁇ 96, a RAM 84, a ROM 94, a parallel And a bus line 82 for exchanging data between them.
- the output signals from the 6-axis force sensor 50 of each leg 2, the 6-axis force sensor 52 of each arm 5, and the attitude sensor 54 (acceleration sensor and rate gyro sensor) are output from the AZD converter 80. After being converted to a digital value, it is sent to the RAM 84 via the bus line 82.
- the output of the encoder 65 (rotary encoder) of each joint of the robot 1 is input to the RAM 84 via the counter 86.
- the first arithmetic unit 90 generates a target gait as described later, calculates a joint angle displacement command (a command value of a displacement angle of each joint or a rotation angle of each electric motor 64), and RAM8 Send to 4. Further, the second arithmetic unit 92 reads out the joint angle displacement command from the RAM 84 and the actually measured value of the joint angle detected based on the output signal of the encoder 65, and calculates the operation amount necessary for driving each joint. It is calculated and output to the electric motor 64 that drives each joint via the DZA converter 96 and the servo amplifier 64a.
- FIG. 3 is a block diagram generally showing a functional configuration of the control device for the legged mobile robot according to the embodiment of the present specification.
- the portion surrounded by a broken line in FIG. 3 is constituted by processing functions (mainly functions of the first arithmetic device 90 and the second arithmetic device 92) executed by the control unit 60.
- processing functions mainly functions of the first arithmetic device 90 and the second arithmetic device 92
- the left and right sides of leg 2 and arm 5 are The symbols R and L are omitted when there is no need to distinguish between them.
- the functional configuration of the control unit 60 includes a gait generator 100, an object reaction force balance controller 102, a leg main controller 104, and an arm main controller 106.
- the applicant of the present invention has previously described the processing of the object reaction force balance control device 102, the leg main control device 104, and the arm main control device 106. This is the same as that proposed in Japanese Patent Laid-Open No. 10-230485 (Patent Document 1). Therefore, in the following description of the embodiment, the gait generator 100 will be mainly described, and the object reaction force balance controller 102, the leg main controller 104, and the arm main controller 106 will be schematically described. stop.
- the gait generator 100 generates and outputs the target gait of the robot 1 freely and in real time.
- the target gait output by the gait generator 100 is a target body position / posture trajectory (target position trajectory and target posture trajectory of upper body 3), target foot position / posture trajectory (target position trajectory of each foot 22) And target posture trajectory), target hand position / posture trajectory (target position trajectory and target posture trajectory of the hand 44 of each arm 5), target total floor reaction force center point trajectory (the target position of all floor reaction force center points) Trajectory))), target total floor reaction force trajectory, and target object reaction force trajectory.
- the target position / posture trajectory of the movable part is added to the target gait.
- target is often omitted when there is no risk of misunderstanding.
- a “trajectory” in a gait means a temporal change pattern (time-series pattern).
- the "position" of each part of the robot 1, such as the foot position and the body position means the position of a certain representative point that is fixedly set in that part.
- the representative point of each foot 22 is a point where a perpendicular extending from the center of the ankle joint of the leg 2 including the foot 22 to the bottom surface of the foot 22 intersects the bottom surface.
- the position of the representative point is the foot position.
- “Position” means spatial orientation.
- the body posture is the tilt angle of the upper body 3 in the roll direction (around the X axis) and the tilt direction of the upper body 3 in the pitch direction (around the Y axis) It is represented by the angle of rotation of the upper body 3 (around the Z axis). It is expressed as a biaxial spatial azimuth that is fixedly set on each foot 22.
- the gait related to the motion of the robot 1 such as the foot position / posture, the body position / posture, etc. other than the components related to the floor reaction force and the object reaction force in the gait are generic. It is called “exercise”.
- the motion trajectory may be constant (does not change with time) or substantially constant. For example, when the robot 1 keeps its feet 22 and 22 landed and does not move, the foot position / posture trajectory is constant.
- the object reaction force in the gait is the reaction force of the force that acts on the object from the robot 1 when moving the object on the robot 1 (the force that acts on the robot 1 from the object).
- the target object reaction force trajectory corresponds to the trajectory of the target acting force between the robot and the object in the present invention.
- the hand portions 44R and 44L of the arms 5 and 5 are engaged with a predetermined portion of the object 120 (the carriage in the illustrated example) where the robot 1 is located.
- An example will be described in which the object 120 is pushed while walking in the combined state.
- the force received by the robot 1 from the object 120 is the object reaction force.
- the object reaction force is generally composed of a translational force component and a moment component.
- the object reaction force means the translational force acting on the robot 1 from the object 120, and the moment around the point acting on the robot 1 by the translational force is targeted. This is called the reaction force moment.
- the object reaction force is obtained by reversing the sign (direction) of the force applied to the object 120 from the robot 1, so that the action force from the robot 1 to the object 120 is replaced with the object reaction force. You may use for.
- the position of the object 120 means the position of a representative point fixedly set on the object 120, like the foot position of the robot 1.
- the posture of the object 120 means the spatial orientation of the object 120, like the posture of the foot 22 of the robot 1.
- the position and orientation of the object 120 are sometimes collectively referred to as object movement.
- each foot floor reaction force (the floor reaction force consisting of translational force and moment) acting on each foot 22 is called “each foot floor reaction force", and all (two) foot 22R,
- the resultant force of “each foot floor reaction force” for 22L is called “all floor reaction force”.
- each foot floor reaction force is hardly mentioned, and unless otherwise noted, “floor reaction force” is treated as the same as “whole floor reaction force”.
- the target floor reaction force is generally expressed by an action point and a translational force and a moment acting on the point.
- the action point can be used anywhere, and there are countless expressions for the same target floor reaction force, but the target floor reaction force center point (target position of the center point of all floor reaction forces) is the target point.
- the moment component of the desired floor reaction force is zero except for the vertical component (moment about the lead straight axis (Z axis)).
- the horizontal component of the moment of the desired floor reaction force around the desired floor reaction force center point is zero. Therefore, in the embodiment of the present specification, the gait generator 100 generates the target floor reaction force center point as the action point of the target total floor reaction force.
- the center point of the desired floor reaction force has a meaning as the point of action of the desired total floor reaction force, so it can be said that it is essentially one component of the desired total floor reaction force.
- the target floor reaction force center point of the target floor reaction force is closely related to the motion control of the robot 1, in FIG.
- the center point of the desired floor reaction force, which is the point of action, is described separately from the desired total floor reaction force.
- ZMP zero moment point
- ZMP is the resultant force of the inertial force generated by the movement of the robot and the gravity acting on the robot and the reaction force of the object (or the floor reaction force that balances the resultant force).
- ZMP Is used to mean the point where the moment acting around the point becomes 0 except for the vertical component.
- the ZMP calculated from the target motion trajectory of the robot, gravity, and the target object reaction force coincides with the target floor reaction force center point.
- the target ZMP is often referred to as the target ZMP instead of the target floor reaction force center point.
- the target gait means a set of a target motion, a target floor reaction force (including a target ZMP) for a predetermined period, and a target object reaction force.
- the target gait (including the case where it is simply referred to as a gait) is the target motion and the target floor reaction force (including the target ZMP) for one step of the robot 1 unless otherwise stated.
- the target object reaction force “1 step” of the target gait is used in the meaning from the time when one leg 2 of the robot 1 is landed until the other leg 2 is landed. It is assumed that a series of gaits are connected with several gaits (gait for a predetermined period).
- the target gait for the period of one step may be called a unit gait.
- the period of one step when the robot 1 does not move is a predetermined period ( This is the period corresponding to the period of one step when Robot 1 moves.
- the both-leg support period in the gait is a period in which the robot 1 supports its own weight with both legs 2 and 2 (a period in which both legs 2 and 2 become support legs). This is the period during which either one of the legs 2 supports the weight of the robot 1 (the period during which only one leg 2 is the supporting leg).
- the target gait (unit gait) in the present embodiment is the target gait for the period until the end of the next one-leg support period.
- the leg 2 that supports the weight of the robot 1 is called the support leg.
- both legs 2 and 2 are support legs
- one leg 2 is a support leg.
- the leg 2 on the side that does not support the weight of the robot 1 during the one-leg support period (the leg 2 that is not the support leg) is called a free leg.
- the supporting leg in the target gait is the leg 2 that lands at the start of the both-leg supporting period 2 (the leg that becomes the supporting leg in the one-leg supporting period following the both-leg supporting period) It shall mean 2).
- the foot 22 of the leg 2 on the support leg side and the foot 22 of the leg 2 on the free leg side are referred to as the support leg foot 22 and the free leg foot 22, respectively.
- the robot 1 is not moving (while maintaining the contact between both feet 22 and 22), for convenience, it is assumed that one leg 2 is a supporting leg and the other leg 2 is a free leg. .
- a target gait (unit gait) that is newly generated by the gait generator 100 or a target gait that is being generated (unit gait) is referred to as a current time gait.
- the target gait one step before is called the previous time gait
- the target gait one step after the current gait is called the next gait
- the next one step is called the next gait.
- the target gait is described in a support leg coordinate system as a global coordinate system.
- the support leg coordinate system is such that the support leg foot 22 is in a horizontal posture (more generally, a posture parallel to the floor surface) and substantially the entire bottom surface of the support leg foot 22 is on the floor surface.
- the center force of the ankle joints 18 and 20 of the supporting leg intersects with the floor surface (this point is supported in the example of the embodiment of the present specification).
- the global coordinate system floor that matches the representative point of the foot foot 22
- the horizontal plane that passes through the origin is the XY plane. Coordinate system).
- the X-axis direction and the Y-axis direction are the front-rear direction and the left-right direction of the support leg foot 22, respectively.
- the X-axis, Y-axis, and Z-axis are the support leg seats unless otherwise specified. It shall mean the three axes of the standard system. Note that the origin of the support leg coordinate system does not necessarily match the representative point of the foot 22 in a state where almost the entire bottom surface of the support leg foot 22 is in contact with the floor surface. It may be set to a point on the surface.
- the gait generator 100 includes first acting force trajectory determining means, first leg motion parameter determining means, second acting force trajectory determining means, and judging means according to the present invention, depending on its arithmetic processing function.
- the gait generator 100 sequentially executes the processes shown in the flowcharts of FIGS. 5 to 8 at a predetermined calculation processing cycle.
- a movement plan for the object 120 is determined.
- the movement plan determined here includes a movement plan of the object 120 for at least a predetermined period in the future (for a plurality of steps of the robot 1) from the current time.
- This movement plan is basically determined according to the movement request of the object 120 (design requirement of how and when the object 120 is moved), and the position of the object 120 is determined. It consists of a posture trajectory (time series of position and posture), or a parameter or a function expression that defines the trajectory. For example, if the movement request of the object 120 is a request to move the object 120 at a constant speed in the X-axis direction from a certain time tO, the movement plan is determined as shown by the graph gl in FIG.
- the Graph gl shows the time course of the object position (X-axis direction position) in the movement plan.
- the time series of the position of the object 120 at each time after the current time (at every step) may be determined as the movement plan! /
- the time tO and the slope of the graph gl target
- the moving speed of the object 120 may be determined as an element (parameter) that defines the movement plan, or a function expression of the graph gl may be determined as an element (parameter) that defines the movement plan.
- the movement request is appropriately given to the gait generator 100 from the outside, or is stored and held in a storage unit (not shown) of the control unit 60 in advance.
- the movement plan determined by the SOI is not necessarily determined according to the movement request, but is appropriately corrected as necessary. This will be described later.
- Next step S03 Go forward, based on the movement plan determined in S01 as described above, the target object motion trajectory (target target position / posture trajectory) and target The object reaction trajectory is provisionally determined.
- FIG. 10 is a block diagram showing a calculation process for obtaining a target object position trajectory and a target object reaction force trajectory in the target object motion trajectory in S03.
- a portion surrounded by a broken line in this block diagram is an object dynamics model representing a relationship between a force acting on the object 120 and a motion of the object 120.
- the object 120 is moved on a substantially horizontal floor will be described as an example.
- the object dynamic model shown in FIG. 10 is a dynamic model (forward motion) that outputs the position of the object 120 by inputting a force acting on the object 120 (more specifically, a translational force in the horizontal direction).
- Dynamic model More specifically, this object dynamics model is obtained by setting the reciprocal 1ZM of the mass M of the object 120 to the input value of the horizontal translation force acting on the object 120 (value obtained by the adding unit 204 described later). By multiplying by the multiplication unit 206, the motion acceleration of the object 120 is obtained, and this is sequentially integrated by the integrators 208 and 210 (double integration) to thereby determine the position of the object 120 (on the object dynamics model). Output position). That is, in the present embodiment, the object dynamic model shown in FIG.
- the output of the integrator 208 means the moving speed of the object 120 on the object dynamic model, and this is hereinafter referred to as the object model speed.
- the target object speed that is the instantaneous target speed (at each time) of the object 120 based on the movement plan determined in S01 is subtracted from the object model speed previously obtained by the integrator 208.
- the target object speed is the object in the movement plan. It is a value obtained as the first derivative of 120 position trajectories, or a component of the movement plan. In the example of the movement plan shown in FIG. 9, it is sufficient to use the slope of the graph gl as it is as the target object speed. In this case, the target object speed is continuously constant.
- a time series of target object speeds for a predetermined period in the future (a plurality of steps of robot 1) from the current time is sequentially input to the subtracting unit 200.
- the object model speed input to the subtraction unit 200 is the value output from the integrator 208 when the target object speed one before the newly input target object speed is input to the subtraction unit 200. is there.
- the required value of the translational force to be applied to the object 120 from the robot 1 is obtained by multiplying the deviation by a predetermined gain Kv by the multiplication unit 202.
- the required value of the translational force is set so that the deviation between the target object speed and the target model speed converges to 0 (so that the target model speed follows the target target speed).
- the feed knock control law In this example, a proportional control law is used as the feedback control law.
- a time series obtained by reversing the sign of the calculated required value of the translational force is output as the target object reaction force trajectory.
- the required value of the obtained translational force and an estimated disturbance force that is an estimated value of a disturbance force (such as a friction force acting on the floor force object 120) that acts on the actual object 120 other than the robot 1 force.
- the adding unit 204 is added to the adding unit 204, and the sum of the required value of the translational force and the estimated disturbance force is obtained by the adding unit 204 as an input value of the translational force for the object dynamic model.
- the estimated disturbance force is obtained by the processing of S61 described later for each arithmetic processing cycle of the gait generator 100.
- a value (previous value) obtained in the previous calculation processing cycle of the gait generator 100 is used as the estimated disturbance force input to the adding unit 120.
- the position of the object 120 is obtained as described above, and the time series of the obtained position is obtained from the integrator 210 as a target.
- Target position Output as trajectory.
- the initial value of the output of the integrator 208 of the object dynamics model (the initial value for each arithmetic processing cycle of the gait generator 100) is the same as that of S03 in the previous arithmetic processing cycle of the gait generator 100.
- the time series of the object model speed obtained by executing the process it is set to a value at the time corresponding to the previous calculation processing cycle (current time in the previous calculation processing cycle).
- the initial value of the output of the integrator 210 is the previous calculation processing cycle in the time series of the target object position obtained by executing the processing of S03 in the previous calculation processing cycle of the gait generator 100. It is set to a value at the time corresponding to the period (current time in the previous calculation processing cycle).
- the target object posture trajectory of the target object motion trajectory is determined so as to substantially coincide with the direction of the target object speed, for example.
- the processing of S03 is not necessarily performed by the gait generator 100. It is not necessary to carry out every calculation processing cycle. Therefore, for example, the process of S03 is performed for each step of the robot 1 or for each of a plurality of calculation processing cycles of the gait generator 100, or when the movement plan is changed in S01, or the estimated disturbance force is relatively low. You can do it when there is a big change!
- the target object movement trajectory and the target object reaction force trajectory for a predetermined period in the future from the current time are provisionally determined.
- process of S03 includes the function as the first acting force trajectory determining means in the present invention because the target object reaction force trajectory is provisionally determined as described above.
- the inverse dynamic model is used as the target dynamic model, but the target target position trajectory and the target target reaction force trajectory are provisionally determined using the forward dynamic model. You may rub.
- the target object position trajectory is generated by integrating the target object speed based on the movement plan, and the minute value (first-order differential value) of the target object speed is set to the target object speed trajectory.
- the estimated disturbance force is subtracted from the product of the mass.
- the target object reaction force trajectory may be generated by reversing the sign of the subtraction result.
- the planned landing position / posture and scheduled landing time of the free leg foot 22 of the mouth bot 1 are provisionally determined based on the target object motion trajectory provisionally determined as described above.
- the planned landing position / posture and scheduled landing time to be provisionally determined here are the planned landing position / posture and landing scheduled time of the free leg foot 22 in the current time's gait, which is the target gait that is currently being created. This includes the planned landing position and scheduled landing time of the free leg foot 22 for multiple steps (at least two steps) of the robot 1.
- the planned landing position The scheduled landing time includes at least the planned landing position / posture and landing time of the free leg foot 22 of the current time gait and the planned landing position / posture and planned landing time of the free leg foot 22 of the next time's gait.
- the planned landing position / posture and the planned landing time of the free leg foot 22 are, for example, the landing position / posture of the free leg foot 22 at the planned landing time with respect to the target object motion trajectory determined in S03. The relationship between the object position and orientation at that time and a predetermined relative position and orientation is determined so as to be different.
- the planned landing position / posture and the planned landing time of the free leg foot 22 do not necessarily have to be determined in such a manner as to follow the target object position / posture.
- the object 120 is pushed and moved.
- the planned landing position / posture of the free leg foot 22 in each gait is maintained constant over time.
- the planned landing position / posture and scheduled landing time of the free leg foot 22 are designed according to the motion of the robot 1 that moves only by the target object motion trajectory. Determined on demand
- the planned landing position / posture of the free leg foot 22 is not slipped after the heel of the free leg foot 22 is landed and the free leg foot 22 is in contact with the floor.
- the position / posture of the supporting leg coordinate system in each unit gait is correspondingly determined. Will be determined. Specifically, the supporting leg coordinate system in each unit gait is such that the foot 22 of the unit gait immediately preceding the unit gait matches the planned landing position / posture.
- the center force of the ankle joint of the leg 2 having the flat 22 is a coordinate system with the origin at the point where the perpendicular extending to the floor intersects the floor.
- the ZMP trajectory parameters tentatively determined here are the target ZMP of the current gait specified by the gait (hereinafter referred to as the temporary target ZMP and ⁇ ⁇ ), the planned landing position / posture and planned landing time (details) Is determined by the landing position / posture and scheduled landing time of the free leg foot 22 in the previous gait and the current gait), and is supported by the current time gait. It exists near the center of the so-called support polygon (including the ground plane) and is determined so as not to make a sudden change.
- the temporary target ZMP of the gait this time is located in the position where the stability margin of the robot 1 is as high as possible within the contact surface (or support polygon) of the robot 1 and changes rapidly.
- the ZMP trajectory parameters are determined as follows.
- the temporary target ZMP determined by such a guide has a pattern as shown in Fig. 11 (a), for example.
- Fig. 11 (a) shows the pattern of the position of the temporary target ZMP in the X-axis direction.
- the position and time of the break point of the temporary target ZMP pattern (trajectory) are provisionally determined as the ZMP trajectory parameters.
- Force moment trajectory time series of instantaneous values of the object reaction force moment in the current time's gait
- the position / posture of the part has a predetermined position / posture relationship with respect to the position / posture of the object 120.
- the hand position / posture trajectory of the robot 1 (which defines the trajectory of the point of action of the object reaction force on the robot 1) is obtained so as to match the motion trajectory (position / posture trajectory) of the part.
- the object reaction force moment around the temporary target ZMP at each time is calculated from the obtained hand position / posture trajectory, the target object reaction force trajectory, and the temporary target ZMP trajectory.
- the time series of the calculated object reaction force moment is obtained as the object reaction force moment trajectory.
- the gait parameters are the foot trajectory parameters that define the foot position / posture trajectory in the normal turning gait, the ZMP trajectory parameters that define the target ZMP trajectory, and the object reaction force that defines the target object reaction force moment trajectory. Includes trajectory parameters.
- the normal turning gait is the motion state (foot position / posture, body position) of the robot 1 at the gait boundary (in this embodiment, the gait boundary for each step) when the gait is repeated. It means a cyclic gait that does not cause discontinuities in the posture and other conditions.
- the normal turning gait which is a periodic gait, follows the gait of two steps of the robot 1, that is, the first turning gait following the current time gait and the first turning gait.
- the gait consisting of the second turning gait is the gait for one cycle of the normal turning gait and the gait is repeated for one cycle.
- turning is used here as a force that can be included in a turn in a broad sense because straight turn means straight turn when the turn rate is zero.
- the normal turning gait may be abbreviated as a normal gait.
- one cycle of the normal gait is composed of at least two steps of gaits (two consecutive unit gaits). It is also possible to set a complex normal gait with a gait of three steps or more for one cycle. However, the normal gait is used only to determine the divergent component (details will be described later) at the end of the current gait as described below. For this reason, using a normal gait with a gait of three or more steps as one cycle is less effective, although the gait generation process is complicated. Therefore, the gait for one cycle of the normal gait in this embodiment is configured by gaits for two steps (first and second turning gaits).
- the normal gait composed of two steps of gait is regarded as one step gait.
- the normal gait is temporarily determined by the gait generator 100 to determine the divergent component at the end of the current gait. This is a hypothetical virtual gait (in the arithmetic processing of the generation device 100) and is not output from the gait generation device 100 as it is.
- divergence means that the horizontal position of the upper body 3 of the bipedal mobile robot 1 is shifted to a position far from the positions of both feet 22 and 22.
- the value of the divergent component means that the horizontal position of the upper body 3 of the biped robot 1 is the position of both feet 22 and 22 (more specifically, the support leg coordinates set on the ground contact surface of the support foot 22) This is a numerical value indicating how far away from the origin of the system.
- the gait is generated using the divergent component as an index so that the desired gait is continuously generated without causing the divergence. That is, after determining the initial divergent component of the normal gait following the current time's gait, the terminal divergent component of the current time's gait matches the initial divergent component of the normal gait (more generally, the current time's gait) The current time's gait is generated (the gait parameter that defines the current time's gait is determined) so that the body position / posture of the body converge to the body position / posture of the normal gait).
- the initial divergent component of the normal gait is based on the gait parameters determined in S11, at the initial stage of the normal gait (initial stage of the first turning gait) and at the end (end of the second turning gait). ) And the normal gait condition that the motion state of the robot 1 is the same (hereinafter referred to as the boundary condition of the normal gait) on the robot 1 dynamic model.
- the basic guidelines for generating such a gait are the same as those of PCT International Publication No. WO / 02 / 40224A1 previously proposed by the present applicant. Therefore, in the following description of the normal gait, technical matters different from those described in PCT International Publication No. WO / 02 / 40224A1 will be mainly described, and detailed descriptions of similar technical matters may be omitted. .
- the foot trajectory parameters of the gait parameters of the normal gait are the foot leg 22 and the supporting leg foot 22 at the initial stage and the end of the second turning gait, respectively. It consists of the position and orientation of the free leg foot 22 and the gait cycle of each turning gait, etc.
- the foot position / posture trajectory is connected in the order of the current time's gait, the first turning gait, and the second turning gait. To be determined. A specific setting method will be described below with reference to FIG.
- the initial swing leg position / posture of the first turning gait is the foot position / posture at the end of the current time's gait viewed from the support leg coordinate system of the next time's gait.
- the support leg foot position / posture at the end of this time's gait is such that the support leg foot 22 in the initial gait is in contact with the floor and does not slip.
- the position and orientation of the supporting leg foot 22 when the flat 22 is rotated in the pitch direction until almost the entire bottom surface touches the floor (this is the landing position / posture of the free leg foot 22 in the previous gait) Match).
- the position / posture of the next time's gait support leg coordinate system is determined in correspondence with the planned landing position / posture of the free leg foot 22 of the current time's gait as shown in FIG.
- the initial supporting leg foot position / posture of the first turning gait is the free leg foot position / posture of the current time gait as seen from the next time's gait supporting leg coordinate system.
- the free leg foot position / posture at the end of this time's gait is determined to be the position / posture corresponding to the planned landing position / posture of the free leg foot 22 of the current time's gait (or the next time's gait support leg coordinate system determined accordingly). Is done.
- the free leg foot position / posture at the end of the current time gait is determined so that is the planned landing position / posture of the free leg foot 22 of the current time's gait.
- the free leg foot position / posture at the end of the first turning gait is the free leg foot position / posture at the end of the next gait viewed from the next time's gait supporting leg coordinate system.
- This next gait end free leg foot position / posture is the same as the method for determining the current time gait end free leg foot position / posture.
- the position and orientation corresponding to the next gait supporting leg coordinate system) determined in this way are determined.
- the supporting leg foot position / posture at the end of the first turning gait is such that the supporting leg foot 22 whose position / posture coincides with the next time's gait supporting leg coordinate system is kept in contact with the floor and does not slip. Position and posture of the supporting foot foot 22 when the foot foot 22 is rotated in the pitch direction until almost the entire bottom surface of the foot foot touches the floor (this position and posture is the landing position of the free leg foot 22 of this time's gait) Agree with the planned position).
- the initial swing leg position / posture of the second turning gait is the foot position / posture at the end of the first turning gait as seen from the next time's gait supporting leg coordinate system.
- the foot position / posture at the initial stage of the second turning gait is the foot position / posture at the end of the first turning gait as seen from the next time's gait supporting leg coordinate system.
- the free leg foot position / posture at the end of the second turning gait is the position / posture when viewed from the next time's gait supporting leg coordinate system. It is determined to match the foot position / posture.
- the foot position / posture at the end of the second turning gait The position / posture viewed from the next time's gait supporting leg coordinate system is determined so as to match the foot position / posture of the current time's gait supporting leg viewed from the current time's gait supporting leg coordinate system.
- the gait cycle of the first turning gait and the second turning gait is the next gait cycle (this is the scheduled landing time of the free leg foot 22 of the current time gait and the free leg foot of the next time gait 22). It is set to be the same as the estimated landing time.
- the gait cycles of the first turning gait and the second turning gait do not necessarily need to be the same, but it is preferable to determine both cycles according to at least the next gait cycle.
- the movement parameters (including time parameters such as both leg support periods) of the current time's gait, the first turning gait and the second turning gait are determined according to the parameters determined above. Determine appropriately so as to satisfy the conditions (for example, whether the speed of the actuator is within the allowable range, whether it does not exceed the movable angle, or does not interfere with the floor, etc.).
- the ZMP trajectory parameter of the gait parameters of the normal gait is the same as when the target ZMP trajectory parameter is provisionally determined in S07, and the ZMP trajectory specified by the ZMP trajectory parameter is The foot trajectory parameters of the normal gait so as to increase the margin and prevent a sudden change (support leg foot 22 in the initial and final gait of the first turning gait and the second turning gait, respectively) The position and orientation of the free leg foot 22 and the support time of both legs are determined).
- the object reaction force moment trajectory parameter of the normal gait is determined so as to satisfy the condition of periodicity. For example, assume that the object reaction force moment trajectory corresponding to the current time's gait, the next time's gait and the next time's gait is as shown in Fig. 13 (a). Here, the object reaction force moment trajectory of the gait this time is the trajectory obtained in S09.
- the object reaction moment trajectory of the next gait is the ZMP trajectory defined by the target object reaction force trajectory and target object motion trajectory of the next gait obtained in S03 and the ZMP trajectory parameters of the normal turning gait ( The trajectory is calculated in the same way as S09 based on the ZMP trajectory in the first turning gait of the first turning gait.
- the object reaction force moment trajectory of the next gait is the ZMP trajectory defined by the target object reaction force trajectory and target object motion trajectory of the next gait obtained in S03 and the ZMP trajectory parameters of the normal turning gait.
- the trajectory is calculated in the same way as S09 based on (the ZMP trajectory in the first and second turning gait of the normal turning gait).
- the object reaction force moment trajectory parameter of the normal turning gait is determined so that the object reaction force moment trajectory of the normal turning gait becomes, for example, the trajectory shown in Fig. 13 (b). .
- the object reaction force moment trajectory from the beginning to the end of the first turning gait of the normal turning gait continues to the object reaction force moment trajectory of the current time gait, and the object of the next gait.
- the object reaction force moment trajectory of the second turning gait in the normal turning gait is continuous with the object reaction force moment trajectory of the first turning gait and immediately before the end of the initial force of the second turning gait.
- the initial value of the first turning gait (the steady turning gait) It is determined to continuously change to the same value as the initial value.
- the time tx corresponds to the time of the break point of the ZMP trajectory of the normal turning gait, for example.
- the initial divergent component of the normal turning gait is determined.
- the initial state of motion of the first turning gait is determined on the dynamic model determined by the robot 1.
- the initial divergent component of the normal turning gait is determined so that the terminal state (including the terminal divergent component) of the movement of the second turning gait matches.
- FIG. 14 shows the structure of the robot simplified model.
- the simplified robot model shown in the figure is a three-mass model.
- the dynamics of the leg 2 and the upper body 3 are configured to be non-interfering with each other, and the overall dynamics of the robot 1 is , Represented by their linear combination.
- This simplified robot model is composed of an inverted pendulum A and two leg mass points 2m and 2m (support leg mass point and free leg mass point).
- Each leg mass point 2m is a mass point corresponding to each leg 2.
- Each foot mass point 2m is a fixed point in the local coordinate system that is arbitrarily fixedly set on the foot 22 of the corresponding leg 2 and its position corresponds to each foot position / posture. It is supposed to be determined uniquely. For example, each foot mass point 2m is set to a point shifted from the representative point of the bottom surface of the foot 22 toward the ankle joint by a predetermined distance by force toward the center of the ankle joint.
- Inverted pendulum A is composed of a free fulcrum a that moves horizontally, one mass point b, and a variable-length link c that connects fulcrum a and mass point b without mass. In this case, even if the link c is inclined, the link c expands and contracts, and the height h of the mass point b viewed from the fulcrum a is kept constant.
- the mass point b of the inverted pendulum A corresponds to the mass point of the upper body 3 of the robot 3, and hereinafter, the inverted pendulum mass point b is changed to the upper mass point b. Sometimes it is.
- the position of the inverted pendulum mass point b is hereinafter referred to as the inverted pendulum position for short.
- the mass of the upper mass point b includes the mass of the upper body 3 and the masses of the arm bodies 5 and 5 and the head 4.
- the horizontal position of the upper body 3 of the robot 1 is geometrically determined from the horizontal position of the inverted pendulum mass point b. Specifically, for example, the horizontal position of the representative point of the upper body 3 (the XY coordinates seen in the support leg coordinate system), that is, the horizontal component of the upper body position matches the horizontal position of the inverted pendulum mass point b. Is done. In other words, as shown in FIG. 14, the representative point of the upper body 3 and the inverted pendulum mass point b are on the same vertical line.
- inverted pendulum ZMP Since ZMP of inverted pendulum A is at the position of free fulcrum a (no moment is generated around fulcrum a), the position of fulcrum a of inverted pendulum A will be referred to as inverted pendulum ZMP. Call it ZMPpend.
- msup mass of support leg mass 2m
- mswg mass of free leg mass 2m
- mb inverted pendulum mass b
- xsup support Position of leg mass point 2m
- xswg Position of free leg mass point 2m
- xb Inverted pendulum position (position of upper body point b)
- h Inverted pendulum height (inverted pendulum A fulcrum a to inverted pendulum mass point b
- xb, xsup, and xswg are expressed as three-dimensional vectors (XYZ coordinate vectors).
- dX / dt represents the first derivative of X
- d2X / dt2 represents the second derivative of X.
- g represents a gravitational acceleration constant.
- G is a gravitational acceleration vector whose X, Y, and Z components are 0, 0, and 1 g, respectively.
- Equation 01 is a dynamic definition equation of the total leg inertia moment about the point P.
- leg ZMP is described as ZMPfeet and defined by Equation 02. However, the height of the leg ZMP (Z component of ZMPfeet) is the same as the height of the point P. This leg ZMP is a value that artificially corresponds to the resultant force of the inertial force and gravity generated by the motion of both legs 2 and 2.
- the object reaction force moment around the target ZMP divided by the total mass mtotal of the robot 1 is defined as the object reaction force ZMP, which is described as ZMPobj. That is, ZMPobj is defined by the following equation 03.
- ZMPobj Object reaction force moment around target ZMP Zmtotal — Formula 03
- the target ZMP, leg ZMP (ZMPfeet), inverted pendulum ZMP (ZMPpend), and object reaction force ZMP are approximately The linear relationship of Equation 04 holds.
- Formula 04 is a relational expression on the sagittal plane (XZ plane). On the lateral plane (YZ plane), the sign of the third term on the right side of Formula 03 is " Invert from "1" to "+”.
- the target foot position / posture, the target reaction force moment around the target ZMP, the target ZMP, and the target body posture are calculated by the following dynamic calculation.
- the target body position can be determined from the above.
- the dynamic calculation will be described with reference to the block diagram of FIG. Figure 15 is a block diagram showing this dynamic calculation.
- Target both foot position / posture (supporting foot foot 22 and free leg foot)
- the leg ZMP (ZMPfeet) is calculated by the leg ZMP calculator 220 using the equations 01 and 02 from the trajectory of the target position / posture 22) and the action point P set as described above.
- the object reaction force ZMP (ZMPobj) is calculated by multiplying the object reaction force moment around the target ZMP by lZmtotal by the multiplication unit 222. Then, the calculated ZMPfeet multiplied by mfeetZmtotal at the multiplication unit 224 and ZMPobj are subtracted from the target ZMP at the subtraction unit 226, and the subtraction result is multiplied by mtotalZmb at the multiplication unit 228. The right-hand side of is computed. Thus, the inverted pendulum ZMP (ZMPpend) is calculated. The ZMPpend obtained by the above arithmetic processing is on the sagittal plane. When calculating the ZMPpend on the lateral plane, the subtraction unit 226 uses the result of inverting the sign of the operation result of the multiplication unit 222. Enter it.
- the inverted pendulum horizontal position xb is calculated based on the above-described equation 05. Furthermore, based on the horizontal position xb of the inverted pendulum and the target body posture, the body position determiner 230 determines the target body position. In this case, the body position determiner 230 sets the inverted pendulum horizontal position xb as the target body horizontal position. Further, the target body vertical position is determined based on the target body posture, for example, by the body height determination method previously proposed by the present applicant in Japanese Patent Laid-Open No. 10-86080. In the present embodiment, the target body posture of the robot 1 is, for example, a vertical posture.
- the initial divergent component of the normal gait is determined based on the robot simple model described above. If the divergence component in the gait is set as q and the horizontal velocity (or body horizontal velocity) vb of the mass point b of the inverted pendulum A is set as vb, q is defined by the following equation 06 in this embodiment.
- ⁇ ⁇ is the natural frequency of the inverted pendulum ⁇ , that is, the square root of gZh.
- Expression 07 is an expression describing the divergent component q on the sagittal plane, and the expression describing the divergent component q on the lateral plane is the sign of the entire fourth term on the right side of Expression 07. The expression is reversed from “one” to “+”.
- the divergent component (hereinafter referred to as the initial divergent component) and the divergent component (hereinafter referred to as the second divergent gait) at the beginning of the normal turning gait (the first turning gait) Focusing on the terminal divergence component and! /, U), let q [0] (the divergence component at time 0) be the initial divergence component, and q [k] (the divergence component at time kAt) be the terminal divergence component.
- the first term on the right side of Expression 07 represents the terminal divergence component generated by the initial divergence component.
- the second term on the right side represents the terminal divergence component generated by the target ZMP pattern.
- the third term on the right-hand side represents the terminal divergent component generated by the movement of both legs 2 and 2 (movement of both leg mass points 2m and 2m).
- the fourth term on the right side represents the terminal divergence component generated by the object reaction force moment pattern.
- the second term on the right side is Wzmptotal
- the third term on the right side is Wfeet
- the fourth term on the right side Is written as Wobj. That is, WzmptotaU Wfeet and Wobj are defined by the following equations 08a, 08b, and 08c.
- Formula 08c defines Wobj on the sagittal plane, and Wobj on the lateral plane is obtained by inverting the sign of the right side of Formula 08c.
- the initial divergent component that satisfies the boundary condition of the normal turning gait is the current gait.
- the initial divergence component as seen in the support leg coordinate system of the normal turning gait following (the next time's gait support leg coordinate system ( ⁇ ' ⁇ 'coordinate system) in Fig. 12)
- the terminal divergence component of the normal turning gait (the normal turning gait following the current gait) as seen from the supporting leg coordinate system (next gait supporting leg coordinate system ( ⁇ "' ⁇ "' coordinate system in Fig.
- Equation 12 shows that the initial divergence component q [0] and the terminal divergence component q [k] This is a condition to be met.
- inv () is the inverse of the matrix in parentheses. Yes, I is the identity matrix.
- each foot at each time i At (i 0, 1, ..., k 1) of the normal turning gait.
- ZMPfeetD] is obtained by obtaining the instantaneous value of the flat position and posture and applying it to the expression expressing the above-mentioned expressions 01 and 02 in a discrete system.
- the foot position / posture is calculated for each foot 22 by using, for example, a time limit settling filter proposed by the present applicant in Japanese Patent No. 3233450.
- the calculated foot position / posture trajectory is such that the free leg foot 22 in each of the first turning gait and the second turning gait of the normal turning gait rises from the start time of the one-leg support period.
- the free leg foot 22 moves toward the planned landing position, and at the scheduled landing time of the free leg foot 22, the free leg foot 22 lands at a position corresponding to the planned landing position. Orbit.
- Wfeet is calculated by calculating the right side of the above-mentioned expression 08b.
- the foot position / posture trajectory is fixed. The trajectory is maintained at the landing position / posture.
- the foot position / posture trajectory may be generated so that the free leg foot 22 is once raised and then returned to the original landing position / posture.
- step time ⁇ t used in the calculation of Wzmptotal, Wfeet, and Wobj is preferably the same as the calculation processing cycle of the gait generator 100, but it is set to a longer time to perform the calculation. You can reduce the calculation processing time!
- the initial divergent component q [0] is analytically obtained.
- the initial divergence of the normal turning gait that almost matches the terminal divergence component of the normal turning gait as seen by the supporting leg coordinate system force of the gait following the normal turning gait following the current gait Try to determine the ingredients.
- the gait parameters are the foot trajectory parameter that defines the foot position / posture trajectory in the current gait, the ZMP trajectory parameter that defines the target ZMP trajectory, and the object reaction force trajectory parameter that defines the target object reaction force moment trajectory. including.
- the foot trajectory parameter temporarily determined here corresponds to the first leg motion parameter in the present invention. Therefore, the process of S13 has a function as the first leg motion parameter determination means in the present invention.
- the foot trajectory parameter of the gait parameters of the current time's gait is the position and orientation of the supporting leg foot 22 and the free leg foot 22 at the beginning and end of the current time's gait, It consists of a gait cycle.
- the free leg foot position posture of the current time's gait is the free leg foot position / posture of the current time's gait at the end of the previous time's gait, as seen from the current time's gait supporting leg coordinate system.
- Flat position This time's initial gait support leg foot position / posture is the support leg foot position / posture of the current time's gait at the end of the previous time's gait, as seen from the current time's gait support leg coordinate system.
- the free leg foot position / posture at the end of the current time's gait is determined according to the planned landing position / posture of the free leg foot 22 of the current time's gait. Specifically, the position when the free leg foot 22 of the current time's gait is rotated by a predetermined angle in the pitch direction so that it does not slide from the foot position / posture at the end of the current time's gait. This time the gait end free leg foot position figure so that the posture is the planned landing position posture of the gait this time The momentum is determined.
- the foot position / posture at the end of the current time's gait is determined so that the foot 22 does not slip while the foot 22 is in contact with the floor and the position / posture is matched to the coordinate system of the current time's gait.
- the position and posture of the supporting leg foot 22 when the foot is rotated in the pitch direction until almost the entire bottom surface touches the floor (this position and posture is the planned landing position and posture of the free leg foot 22 of the previous gait). Match).
- the support leg foot 22 at the end of the current time's gait is in a posture substantially parallel to the floor surface, but this is not necessarily required. For example, at the end of the gait, make sure that the heel side of the foot 22 is away from the floor.
- the ZMP trajectory parameter is tentatively determined in S07
- the target ZMP trajectory defined by this ZMP trajectory parameter has a pattern as shown in FIG. 11 (a), for example.
- the object reaction force moment trajectory parameter in the gait parameters of the current time's gait is the same as the object reaction force moment trajectory specified in S09. To be decided.
- the ZMP trajectory parameters of the gait parameters provisionally determined in S15 are corrected so that the current time's gait converges to the normal turning gait. More specifically, the ZMP trajectory parameters are modified so that the final divergent component of the current time's gait approximately matches the initial divergent component of the normal turning gait.
- the temporary target ZMP in order to make the final divergent component of the current time's gait approximately coincide with the initial divergent component of the normal turning gait, the temporary target ZMP has a ZMP as shown in FIG. 11 (b). By adjusting the correction amount, the temporary target ZMP is corrected, thereby obtaining the target ZMP as shown in FIG. 11 (c).
- the basic guideline for correcting the temporary target ZMP is the same as that of PCT International Publication No. WO / 02 / 40224A1. is doing.
- the process of S17 will be specifically described below with a focus on the differences.
- variables having the same meaning as described for the process for determining the initial divergent component of the normal gait (S13) are defined above for the normal gait.
- the correction of the XMP direction component of ZMP will be explained.
- the ZMP correction amount is trapezoidal as shown in FIG. 11B, and its height is a.
- the trapezoid break point time is set according to the break point time of the temporary target ZMP trajectory as shown.
- the ZMP correction amount is generated during the one leg support period of the current time's gait.
- Equation 15 k A t is the end time of the current gait, q [0] Is the initial divergent component of the current time's gait, Wfeet is the final divergent component generated by the movement of both legs 2 and 2 of the current time's gait, and Wobj is the final divergent component generated by the object reaction force moment trajectory of the current time's gait.
- Equation 16 the trapezoidal height of the ZMP correction amount is obtained by Equation 16.
- the initial divergent component q [0] is the inverted pendulum position (or body position) at the beginning of the current time's gait. From the change speed, it is calculated by the equation 06.
- Wzmptmp is obtained in the same manner as when Wzmptotal related to the normal turning gait is obtained from the temporary target ZMP trajectory defined by the ZMP trajectory parameters provisionally determined in S15.
- Wtrim is obtained in the same manner as when Wzmptotal for the normal turning gait is obtained from the ZMP correction amount pattern determined with trapezoidal height a being 1.
- Wfeet is obtained based on the above equation 08b in the same manner as the Wfeet related to the normal turning gait is obtained from the foot trajectory parameter provisionally determined in S15.
- Wobj is obtained based on the above equation 08c in the same manner as when obtaining Wob j related to the normal turning gait from the object reaction force moment trajectory parameter provisionally determined in S15.
- the ZMP trajectory parameter is corrected by adding the ZMP correction amount determined by the trapezoidal height a thus obtained to the temporary target ZMP trajectory.
- the ZMP correction amount is obtained analytically, but may be obtained exploratively.
- the current time's gait is temporarily created using the target ZMP trajectory obtained by correcting the temporary target ZMP with the ZMP correction amount in which the trapezoid height a is set to an appropriate value, and the temporary gait is created.
- the process of correcting the trapezoidal height a value so as to reduce the differential force is repeated.
- the ZMP correction amount may be determined based on the value of the trapezoidal height a when the final divergent component of the current time gait that is provisionally created and the initial divergent component of the normal gait substantially coincide.
- the routine proceeds to S19, where it is determined whether the target ZMP determined by the corrected ZMP trajectory parameter is appropriate force. Specifically, the target ZMP force after correction If the ground contact surface force of the support leg foot 22 of this time's gait does not deviate or is not biased near the boundary of the contact surface, that is, the stability margin of robot 1 If it can be secured, it is judged that the target ZMP is appropriate. Otherwise, it is judged that the target ZMP is inappropriate.
- the process proceeds to S21, and the target object related to the elements related to parameters other than the ZMP trajectory parameters of the current time's gait parameters, for example, the object reaction force moment trajectory parameters. Correct the reaction force trajectory.
- the target object reaction force trajectory is such that the ZMP correction amount becomes as small as possible when the processing of S09 to S17 is executed again after the correction (at least the ZMP obtained before the target object reaction force trajectory correction). It is corrected so that it is smaller than the correction amount.
- the target object motion trajectory (position trajectory) based on the movement plan decelerates the object 120 in the X-axis direction from time tl and stops it at time t3.
- the graph g3 in FIG. 16 (a) is an example of the target body position trajectory determined corresponding to the target object motion trajectory.
- the ground contact surface of the supporting leg foot 22 may be deviated (in this case, the judgment result in S19 is NO). If the target gait continues to be generated as it is, a target gait that collides with the object 120 at a certain time t4 is generated as shown in the figure.
- the target object reaction force is set to the current time as shown in Fig. 16 (b) with respect to the target object reaction force trajectory temporarily determined in S03 as described above.
- the target object reaction force trajectory is corrected so as to increase in the negative direction of the X axis within a certain period ⁇ 1 after t2.
- the target object reaction force is corrected so that the acting force applied to the object 120 from the robot 1 (the force obtained by inverting the sign of the target object reaction force) is increased in the positive direction of the X axis.
- the period ⁇ 1 during which the target object reaction force is increased or the magnitude of the increase A F1 is determined by the ZMP correction amount determined by the processing of S09 to S17 based on the target object reaction force after the correction.
- the determination result of S19 is YES.
- Such ⁇ T1 or ⁇ F1 can be obtained analytically or exploratoryly.
- the object in the current time gait parameter is set so that the robot 1 moves the body 3 such that the robot 1 positively pushes the object 120.
- the reaction force moment trajectory parameter is determined by S15.
- the target gait generated based on the gait parameters this time is such that the upper body 3 of the robot 1 does not collide with the object 120 while ensuring a stability margin. .
- the target object reaction force trajectory currently set (the target object reaction force trajectory set when the judgment result at S19 is YES) It is determined whether or not there is a change point of the target object reaction force within the period.
- the change point of the target object reaction force is a point at which the target object changes relatively largely before and after the time of the change point in the present embodiment.
- the change point is the point where the magnitude of the first-order differential value (temporal rate of change) of the target object reaction force exceeds a predetermined threshold, or the magnitude (absolute value) of the target object reaction force.
- a point that exceeds a predetermined threshold is extracted.
- the time of the change point extracted in this way is referred to as the object reaction force change time.
- the target foot position / posture calculation process uses the finite-time settling filter proposed by the applicant in Japanese Patent No. 3233450 in the same manner as described for the process of calculating ZMPfeetD] in the process of S13. Calculated for each foot. [0160] Furthermore, based on the ZMP trajectory parameter of the current time gait parameter and the object reaction force moment trajectory parameter (the trajectory parameter after correction of S17), the target ZMP momentary until the end time of the current gait, respectively.
- the instantaneous value of the target object reaction force moment in time series is calculated in time series.
- the target body posture is, for example, a steady vertical posture.
- the instantaneous values of the desired foot position / posture, the desired ZMP, and the desired object reaction force moment in the desired gait from the current time to the object reaction force change time are time-series. Is calculated.
- the gait (next gait) including the object reaction force change time is the virtual current time gait
- the next gait is the virtual next time gait
- the next gait is the virtual next time gait.
- the virtual current time gait means the current time gait when the object reaction force change time is regarded as the current time.
- a virtual target object reaction force trajectory that is a virtual target object reaction force trajectory after the object reaction force change time is determined.
- This virtual target object reaction force trajectory is different from the trajectory after the target reaction force change time among the target object reaction force trajectories finally determined by the loop processing of S09 to S21 described above.
- the target object reaction force does not change at the object reaction force change time, and the time immediately after the object reaction force change time (for example, the object reaction force change time
- the trajectory is continuously maintained at the value (time before the predetermined step time).
- the virtual target object reaction trajectory indicates that the actual position of the object 120 at the object reaction force change time is the target object motion trajectory.
- the target object is set assuming that the actual target reaction force does not change according to the target target reaction force at the target reaction force change time due to causes such as the positional force at the It is a reaction force trajectory.
- the movement speed (object speed) of the object 120 according to the movement plan (current movement plan) of the object 120 is not until the time tl in the next gait. It is assumed that 0 is increased from time tl to time t2 and then maintained at a constant speed from time t2.
- the target object reaction force trajectory generally increases to a value with a target object reaction force between time tl and time t2, as shown by a solid line graph in FIG. 17 (b), for example.
- the virtual target object reaction force trajectory is such that the object reaction force does not increase from time tl, which is the object reaction force change time as shown by the two-dot chain line graph in FIG.
- the trajectory is determined so that the object reaction force is continuously maintained at the same value as before time tl.
- the virtual target object reaction force trajectory determined in this way corresponds to the second robot 'target inter-object target acting force trajectory in the present invention. Therefore, the process of S27 has a function as the second acting force trajectory setting means in the present invention.
- the planned landing position / posture and scheduled landing time of the free leg foot 22 after the object reaction force change time are provisionally determined.
- the planned landing position / posture and scheduled landing time of the free leg foot 22 tentatively determined here are at least the planned landing position / posture and planned landing time of the free leg foot 22 in the virtual current time gait and the virtual next time gait. included.
- the expected landing position / posture and time of the free leg foot 22 of the virtual current time gait are determined by the normal turning gait following the current time gait (the gait parameter is finally determined by the loop process of S09 to S21).
- the planned landing position / posture and time of the free leg foot 22 of the virtual next time gait are the normal turning gait following the current gait (S09 to S21). Tentatively determined to be the same as the planned landing position / posture and time of the free leg foot 22 of the first 2nd turning gait of the first turning gait) .
- the planned landing position / posture and time of the free leg foot 22 of the virtual next gait are the same as the planned landing position / posture and time of the free leg foot 22 of the next gait determined in S05. Alternatively, it may be determined based on the target object motion trajectory until the next gait.
- a ZMP trajectory parameter defining the target ZMP trajectory of the virtual current time gait after the object reaction force change time is provisionally determined.
- ZMP trajectory of the virtual current time gait after the target reaction force change time so that the target ZMP is positioned approximately near the center of the ground contact surface of the support leg foot 2 2 of the virtual current time gait (support polygon in the two-leg support period) Parameters are provisionally determined.
- the object reaction force change Calculate the target reaction force moment trajectory (trajectory up to the end time of the virtual gait) around the target ZMP after the time (target ZMP specified by the ZMP trajectory parameter provisionally determined in S31).
- This calculation process consists of the target object motion trajectory after the object reaction force change time (the trajectory after the object reaction force change time in the trajectory temporarily determined in S03) and the virtual target object reaction force trajectory.
- a gait parameter (virtual normal gait parameter) of a virtual steady turning gait as a periodic gait following the virtual current time gait is determined.
- the foot trajectory parameters, ZMP trajectory parameters, and object reaction force moment trajectory parameters of the virtual steady turning gait are determined.
- the foot trajectory parameter of the virtual normal gait parameter (the supporting leg foot 22 and the free leg foot foot at the beginning and the end of the first turning gait and the second turning gait in the virtual steady gait, respectively)
- the foot position / posture trajectory is in the order of the virtual current time gait, the first turning gait of the virtual steady turning gait, and the second turning gait.
- the foot position / posture trajectory of the connected and virtual steady turning gait is periodic It is determined to satisfy the conditions.
- S35 is executed for the first time after S29
- the planned landing position and scheduled landing time of the free leg foot 22 of the virtual current time gait and the virtual next time gait are provisionally determined in S29.
- the process of S35 is executed after S47 described later, the one modified as described later in S47 is used.
- the ZMP trajectory parameter of the virtual normal gait parameter is the virtual normal gait determined by the foot trajectory parameter based on the foot trajectory parameter of the assumed normal gait parameter, as in the processing of S07. It is determined that the target ZMP is located near the center of the ground contact surface of the support leg foot 22 (support polygon in the both-leg support period).
- the object reaction force moment trajectory parameter of the virtual normal gait parameter includes the target object motion trajectory and virtual target object reaction trajectory of the virtual next time gait, and the virtual next time gait (virtual normal gait).
- the object reaction force moment trajectory of the virtual next time gait obtained in the same manner as S09 based on the ZMP trajectory specified by the ZMP trajectory parameter of the first first turning gait of ZMP specified by ZMP trajectory parameters of target object motion trajectory and virtual target object reaction trajectory of gait and virtual next gait (first and second turning gait of virtual steady gait) Based on the trajectory, the object reaction force moment trajectory of the virtual next time gait obtained in the same manner as in S09 is determined in the same manner as in S11.
- the virtual next gait and the virtual target gait reaction force trajectory of the virtual next gait are constant trajectories after the object reaction force change time of the virtual current time gait.
- the process proceeds to S37, where the initial divergent component of the virtual steady turning gait is determined. That is, the initial state of the virtual steady turning gait is determined so that the initial state of the first turning gait of the virtual steady turning gait matches the terminal state of the second turning gait. This process is performed in the same manner as the process of S13.
- the process proceeds to S39, and the gait parameters (foot trajectory parameters, ZMP trajectory parameters, object reaction force moment trajectory parameters) of the virtual current time gait are provisionally determined.
- the foot trajectory parameters of the virtual current time gait are determined in the same manner as the process of S15.
- the ZMP trajectory parameters of the virtual current time gait are determined to be the same as those provisionally determined in S31.
- the ZMP trajectory parameters of the virtual current time gait determined here are provisional values.
- the target reaction force moment trajectory parameter of the virtual current time gait is the target target calculated in S25 until the target reaction force moment trajectory of the virtual current time gait specified by the target current reaction time moment trajectory. It is determined to match the object reaction force moment trajectory and to match the object reaction force moment trajectory determined in S33 from the object reaction force change time to the end time of the virtual current time gait.
- the foot trajectory parameter provisionally determined in S39 corresponds to the second leg motion parameter in the present invention.
- the target ZMP of the virtual current gait specified by the ZMP trajectory parameter corrected in S41 is appropriate. This determination is made in the same manner as in S19. In other words, the target ZMP of the virtual current time gait should be in a position that is not too close to the boundary within the contact surface of the foot 22 of the virtual current time's gait (in the support polygon during the two-leg support period).
- ZMP constraint condition and V the dynamic constraint condition
- S43 determines whether or not the target ZMP of the virtual current time gait can be corrected appropriately. More specifically, when the planned landing position / posture and scheduled landing time of the free leg foot 22 in the virtual current time gait are corrected in the later-described processing of S47 and the processing from S31 is executed again, the determination result of S43 Can be determined as YES (whether the target ZMP of the virtual current time gait can satisfy the ZMP constraint condition).
- the target ZMP of the virtual current time gait deviates from the ground contact surface of the supporting leg foot 22 of the virtual current time gait, and the amount of deviation (such as the distance of the boundary force on the ground surface) is a predetermined amount. If it is greater than this, the determination result in S45 is NO. Alternatively, if the number of times the planned landing position / posture and scheduled landing time of the free leg foot 22 in the virtual current time gait are corrected in the later-described processing of S47 exceeds a predetermined number, the determination result of S45 is NO. [0179] Supplementally, the determination processing in S45 corresponds to the processing of the determination means in the present invention.
- the process returns to S01 and re-determines the movement plan of the object 120 (corrects the movement plan).
- the movement plan of the object 120 to be redetermined in this case Is determined so that the posture of the robot 1 can be kept stable even when the actual object reaction force does not change as the target object reaction force trajectory occurs.
- the movement plan is redetermined so as to reduce the rapid fluctuation of the target object reaction force.
- Fig. 17 and Fig. 17 show specific examples of the case where the planned landing position of the free leg foot 22 of the virtual current time gait is corrected in S47 and the specific case where the movement plan is determined again in S01.
- the target object position trajectory position trajectory in the X-axis direction
- the movement plan current movement plan
- the supporting leg foot 22 and the free leg foot 22 are respectively represented by a white rectangle and a hatched rectangle.
- the supporting leg feet with reference numerals 22L1, 22 R2, and 22L3 are the supporting leg feet at the end time of the current time's gait, the next time's gait, and the next time's gait, respectively.
- the attached free leg feet are the free leg feet at the end time of the current time's gait, the next time's gait and the next time's gait, respectively.
- the position of the free leg foot relating to each of these gaits is an example of a position determined according to the target object position trajectory of the solid line graph in FIG.
- the position of the free leg foot 22R1 related to the current time gait is the planned landing position of the free leg foot 22 of the current time gait determined in S05, and the position of the free leg foot 22L2 related to the next time gait.
- the position is the planned landing position of the free leg foot 22 of the virtual current time gait determined in S29, and the position of the free leg foot 22R3 related to the next time gait is the free leg foot of the virtual next time gait determined in S29.
- the black spot in the supporting leg foot 22L1 related to the current time's gait is the target at the end time of the current time's gait specified by the ZMP trajectory parameters of the current time's gait finally determined in the processing of S01 to S21.
- the position of the ZMP is shown as an example.
- the black spot in the support leg foot 22R2 related to the next gait is the target ZMP at the end time of the virtual current gait defined by the ZMP trajectory parameters initially determined in S31.
- the black spot in the support leg foot 22L3 related to the next gait is the virtual next gait (virtual next gait (virtual gait) defined by the ZMP trajectory parameter of the virtual steady turning gait first determined in S35.
- the target ZMP (target ZMP at the end time of the virtual current time gait) specified by the corrected ZMP trajectory parameter is the virtual current time gait.
- the ground contact surface force of the support leg foot 22R2 also deviates and may become a point indicated by a circle in FIG. This is because the target gait of the virtual current time gait is temporarily generated in S25, assuming that the target reaction force changes according to the target object reaction force until the target reaction force change time of the virtual current time gait.
- the object reaction force moment trajectory of the gait parameters of the virtual steady turning gait follows that the object reaction force does not change at the object reaction force change time and follows the virtual target object reaction force trajectory.
- the target target object is the target reaction force change time. Since the reaction force is expected to increase rapidly, the target gait (especially the target body position trajectory) is generated in S25 so that the upper body 3 of the robot 1 accelerates forward. However, after the object reaction force change time, it is planned that the object reaction force will be continuously maintained in the same way as immediately before the object reaction force change time according to the virtual target object reaction force trajectory. Therefore, it is necessary to decelerate the upper body 3 of the robot 1 in order to converge the virtual current time gait into the virtual steady turning gait.
- the target ZMP (target ZMP at the end time of the virtual current time gait) defined by the corrected ZMP trajectory parameter is the virtual current time gait.
- the planned landing position of the free leg foot 22 of the virtual current time gait is, for example, the reference numeral 22L2 in the figure from the position indicated by the reference numeral 22L2 in FIG. It is corrected to the front side of robot 1 as shown by the dashed rectangle with a '.
- the target ZMP defined by the corrected ZMP trajectory parameters is the ZMP trajectory. It is possible to satisfy the constraint conditions, and the determination result in S43 may be YES
- the object reaction force change time By correcting the planned landing position of the free leg foot 22 in a gait including, the stability of the posture of the robot 1 can be secured.
- the target ZMP (target ZMP at the end time of the virtual current time gait) defined by the corrected ZMP trajectory parameter is
- the support leg of the virtual current time gait such as the point indicated by ⁇ in FIG. 18, may deviate significantly from the contact surface of the foot 22R2.
- the planned landing position of the free leg foot 22 of the virtual current time gait or the virtual current time gait and the virtual next time gait is within the mechanical movable range of the free leg foot 22.
- the ZMP trajectory parameters may not be determined so that the target ZMP satisfies the ZMP constraint condition. In this case, the judgment result of S45 is NO.
- the original movement plan of the target object 120 is inappropriate for ensuring the stability of the robot 1 continuously.
- Redetermined corrected.
- the movement plan is corrected as shown by the broken line graph in FIG. That is, the moving speed of the object 120 according to the corrected movement plan increases more slowly from the time tl (target reaction force change time) than the original movement plan shown by the solid line graph in Fig. 17 (a).
- time t2 target reaction force change time
- the travel plan is re-determined so that it is maintained at a constant V and speed smaller than the original travel plan.
- the object reaction force corresponding to this revised movement plan is the original movement plan during the period from time tl to time t2 as shown by the broken line graph in Fig. 17 (b).
- the reaction force is smaller than the corresponding object reaction force. Therefore, a sudden change in the target object reaction force at the object reaction force change time tl is alleviated.
- the judgment result of S43 can be set to YES.
- the current gait parameter is set so that the stability of the robot 1 can be ensured even if the actual object reaction force does not change according to the target object reaction force by the processes of S01 to S47 described above. It will be a decision.
- the first turning gait of the normal turning gait, and the second turning gait based on the gait parameters of each gait.
- the desired body position / posture trajectory as described. More specifically, the target bipedal foot position / posture trajectory is calculated based on the foot trajectory parameters of each gait, and the target ZMP trajectory, The object reaction force moment trajectory is calculated. Note that the calculation process of the desired both foot position / posture trajectory is performed in S13. As in the case of the process for calculating ZMPfeetD] in the process, it is calculated for each foot 22 using the finite time settling filter proposed by the applicant in Japanese Patent No. 3233450.
- the target body position / posture is determined by using the target both foot position / posture trajectory, the target ZMP trajectory, and the object reaction force moment trajectory for the calculation process of the block diagram of FIG.
- the target body posture is constantly in a vertical posture.
- the target body position / posture trajectory of the target motion of robot 1 is calculated so as to satisfy the dynamic equilibrium condition that the horizontal component of the moment generated around the target ZMP is zero.
- the target hand position / posture trajectory is the target object motion trajectory in the order of the current time gait, the first turning gait of the normal turning gait, and the second turning gait in the same manner as obtained in S09.
- the target object motion trajectory corresponding to the first turning gait and the second turning gait of the normal turning gait is the next gait and next gait of the target object motion trajectories provisionally determined in S03. This is the target object motion trajectory corresponding to the condition.
- this geometrical constraint condition is that the presence or absence of interference between the object 120 and the robot 1 (such as the upper body 3 hitting the object 120) and the rotational angle of the joint of each arm body 3 are mechanically limited. It is a condition such as the power to stay within.
- the presence / absence of interference between the upper body 3 of the robot 1 and the object 120 can be determined from the target body position / posture and the target object motion trajectory. Further, since the rotation angle of the joint of each arm body 3 can be determined from the target body position / posture and the target hand position / posture, it is possible to determine whether the rotation angle is within the mechanical limits or not.
- the determination processing in S51 is sequentially performed on instantaneous values such as target body postures at predetermined time intervals from the current time to the end of the second turning gait. That is, if the determination result in S51 is OK for each instantaneous value, it is determined in S53 whether or not the check for all times from the current time to the end of the second turning gait has been completed. . If the determination result of S53 is NO, the determination process of S51 is repeated.
- the target object movement trajectory (position trajectory) in the X-axis direction based on the movement plan at the current time tl is the trajectory indicated by graph g4 in the figure (hereinafter referred to as the original trajectory and ⁇ ⁇ )
- the original trajectory and ⁇ ⁇ the trajectory indicated by graph g4 in the figure
- the target body position and the target object position are too close at a certain time t2 in the future, causing interference between the body 3 and the object 120, and the determination result in S51 is NG.
- the target object position at time t2 at which the interference occurs is shifted in the positive direction of the X axis, i.e., away from the robot 1, as indicated by the dashed arrow in the figure, and a period extending before and after time t2.
- This corrected trajectory g5 is determined so as to smoothly connect to the original trajectory g4 at both ends of the period ⁇ ⁇ 2 in order to avoid a sudden change in the behavior of the robot 1. Further, the shift amount ⁇ at time t2 is determined so that there is no interference between the upper body 3 of the robot 1 and the object 120 (so that the determination result in S51 is OK).
- the time corresponding to the judgment result force SNG in S51 is calculated. It may be possible to correct the planned landing position / posture of the free leg foot 22 in the gait including it. For example, when interference occurs at time t2 as shown in FIG. 19, the planned landing position / posture for the gait including that time t2 is adjusted to a position / posture that is away from the object 120 in the X-axis direction. Correct it. Alternatively, both the target object motion trajectory and the planned landing position / posture may be corrected. Alternatively, the movement plan may be corrected.
- This calculation process is performed as follows. That is, the instantaneous value of the desired foot position / posture is calculated based on the foot trajectory parameter of the current time gait parameters. This calculation process is performed by using the finite-time settling filter proposed by the present applicant in Japanese Patent No. 3233450 in the same manner as described for the process of calculating ZMPfeetD] in the process of S13. Calculated every 22nd.
- the instantaneous value of the target ZMP is calculated based on the ZMP trajectory parameter of the current time's gait parameters, and the instantaneous target reaction moment is calculated based on the target reaction force moment trajectory parameter. A value is calculated.
- the target object reaction force moment is calculated by the dynamic calculation shown in FIG.
- An instantaneous value of the body position / posture is calculated.
- the target body posture is, for example, a vertical posture.
- the target body posture may be changed as needed.
- the robot simplification model be a dynamic model that takes into account the change in the angular momentum of the robot 1 due to the posture change of the upper body 3.
- each leg 2 has six degrees of freedom, so if the target body position / posture and the desired foot position / posture are determined, the rotation angle of each joint of each leg 2 is uniquely determined. Determined.
- S The target body position / posture obtained in 57 is further corrected by the processing of S65 described later.
- the previous value of the final corrected target hand position (the value in the previous calculation processing cycle), in the previous calculation processing cycle (the calculation processing cycle of the gait generator 100).
- the actual object position which is the actual position (movement position) of the object 120 to be detected, is estimated.
- the final corrected target hand position is obtained by the arm main controller 106 described later, and corresponds to the command value of the actual hand position of the mouth bot 1. Therefore, for example, the previous value of the final corrected target hand position is set as the previous value of the actual hand position of the robot 1, and a position having a predetermined relative positional relationship with this is estimated as the actual object position. It is also possible to mount a gyro sensor or an acceleration sensor on the object 120 and to estimate the actual object position based on the detected value force.
- FIG. 20 is a block diagram showing a calculation process for obtaining the target object position, the target object reaction force, and the estimated disturbance force in the target object motion in S61, and a part denoted by reference numeral 238 in the figure.
- the object dynamic model represents the relationship between the force acting on the object 120 and the movement of the object 120. Since this object dynamic model is partly different from that shown in Fig. 10, in the following explanation, the object dynamic model in Fig. 20 is replaced with the object dynamic model in Fig. 10. To distinguish it from the object dynamics model 2 and!
- the basic structure of the object dynamics model 2 is the same as that of the object dynamics model of Fig. 10, and the force acting on the object 120 (more specifically, the translational force in the horizontal direction) is input as the input.
- the reciprocal of the mass M of the object 120 1ZM Is multiplied by the multiplication unit 244 to obtain the motion acceleration of the object 120, and this is sequentially integrated (double-integrated) by the integrators 246 and 250.
- the integrator 250 has a model speed manipulated variable in addition to the output of the integrator 246 (integral value of motion acceleration). It is designed to be additionally entered.
- This model speed manipulated variable is a speed manipulated variable determined by the feedback control rule so that the deviation between the actual target position and the target target position approaches 0 by the model speed manipulated variable determining unit 252. Then, it is determined by the following equation 17.
- the model speed manipulated variable determining unit 252 in FIG. 20 is an arithmetic processing unit that performs the calculation of the right side of Equation 17.
- the model speed manipulated variable determination unit 252 determines the actual object position (current value obtained in S33 in the current computation processing cycle) and the target object position (previous value obtained in S35 in the previous computation processing cycle). Thus, the object position deviation, which is the difference between them, is obtained by the subtraction unit 254. The obtained object position deviation is multiplied by the gain Kel by the multiplier 256 (proportional term), and the object position deviation multiplied by the gain Ke2 by the multiplier 258 is further integrated by the integrator 260. The model speed manipulated variable is calculated by adding the product (integral term) by the adder 262.
- the calculated model speed manipulated variable is added to the output of the integrator 246 by the adder 248 provided on the input side of the integrator 250 of the object dynamic model 2 and then input to the integrator 250. .
- the model speed manipulated variable determining unit 252 may be input to the object dynamic model 2 in an additional manner.
- the integrator 260 is omitted, and the output of the multiplier 258 is additionally input to the integrator 246. At this time, the sum of the output of the integrator 246 and the output of the multiplier 256 is input to the integrator 250. You may make it input.
- the output of the object dynamic model 2 (the output of the integrator 250) is the same as that of FIG. [0212]
- the output of the adder 248 integrated by the integrator 250 is obtained as the instantaneous value of the target object position. Further, the output of the adding unit 248 becomes the object model speed that is the moving speed of the object 120 on the object dynamic model 2.
- the required value of the acting force (translation force) on the object 120 is the current target object motion trajectory (the target when the judgment result in S53 is YES)
- Multiplier 242 adds a predetermined gain Kv to the deviation (target object speed minus object model speed) obtained by subtractor 240 from the target object speed based on the object motion trajectory) and the object model speed. It is obtained by multiplication. That is, the required value of the translational force input to the object dynamic model 2 is the same as that in FIG. 10 so that the deviation between the object target speed and the object model speed converges to 0. In this example, it is determined by the proportional control law). However, since the object model speed in this case is the output of the adder 248 as described above, it is different from that in FIG. The target object speed is obtained as the first derivative of the position trajectory of the current target object motion trajectory.
- a value obtained by reversing the sign of the required translational force value obtained as described above is obtained as an instantaneous value of the target object reaction force.
- the required value of the translational force is input to the multiplication unit 244 of the object dynamics model 2
- the model speed manipulated variable is input to the addition unit 248, whereby the object dynamics model 2
- the instantaneous value of the target object position is output from the integrator 250.
- the object model speed as the motion state quantity of the object 120 on the object dynamic model 2 is the model speed manipulated variable for making the deviation between the target object position and the actual object position close to zero.
- the target object position is sequentially determined by the dynamics calculation of the object dynamic model 2 while correcting the target.
- a part denoted by reference numeral 264 in FIG. 20 is an estimated disturbance force determining unit that performs processing for obtaining an estimated disturbance force.
- the estimated disturbance force determining unit 264 includes an object model speed,
- the translational force requirement value is input.
- the object model velocity is input to a conversion unit 266 represented by a transfer function of the form M ′ sZ (Tc ′ s + l), and the conversion unit 266 determines the translational force acting on the object 120.
- An estimate is calculated.
- M in the transfer function of the conversion unit 266 is the mass of the object 120, and Tc is a predetermined time constant.
- the conversion unit 266 A filter with a time constant Tc is obtained by multiplying the differential value of the Dell velocity (the first-order differential value) by the mass of the object 120 (this corresponds to the instantaneous value of the total force acting on the object 120).
- the result of the tulling process is obtained as an estimated value of the translational force acting on the object 120.
- the estimated value calculated by the conversion unit 266 is the translational force that generates the motion acceleration (differential value of the object model speed) of the object 120 on the object dynamic model 2 with the time constant Tc. It follows with a first-order lag.
- the instantaneous value of the estimated disturbance force is calculated by subtracting the required value of the translation force, which is the output of the multiplier 242, from the estimated value of the translation force by the subtractor 268.
- the instantaneous value of the estimated disturbance force obtained here is used in the calculation process of S02 (see Fig. 10) as described above.
- the instantaneous value of the target object posture in the target object motion is determined so as to substantially match the direction of the target object speed, for example.
- the above is the calculation processing of S61.
- the estimated disturbance force obtained by the calculation processing of S61 is an estimate of the actual disturbance force that acts on the target 120 other than the robot 1 in real time, and thus this estimated disturbance force. Is used in the calculation processing of S02 (input to the object dynamic model of FIG. 10), and the behavior (motion state) of the object 120 on the object dynamic model of FIG. It can be close to 120 behavior (operational state).
- the process proceeds to S63, where the instantaneous value (current value) of the target hand position / posture is determined based on the instantaneous value of the target object motion obtained in S61.
- the instantaneous value of the target hand position / posture is obtained in the same manner as when the target hand position / posture trajectory is obtained in S09.
- the desired body position / posture is obtained by using the robot simple model to calculate the target Z MP on the robot simple model. It is calculated so that it is satisfied (so that the resultant force of inertial force, gravity, and object reaction force moment of robot 1 is zero in the horizontal component of the moment generated around the target ZMP). Therefore, the target gait obtained by the processing up to S63 is a gait in which the floor reaction force moment horizontal component around the target ZMP is zero on the robot simple model.
- the robot simple model has a great advantage in that it can effectively reduce the computation load of the gait generator 100, but the dynamic accuracy is not necessarily high. Yes. Therefore, in this embodiment, a part of the target gait (specifically, using a robot dynamic model with high dynamic accuracy (hereinafter referred to as a full model) (specifically, Correct the target body position / posture instantaneous value and the floor reaction force moment instantaneous value around the target ZMP). This correction process is called full model correction, and this full model correction is executed in S65 after the process of S63.
- a full model specifically, Correct the target body position / posture instantaneous value and the floor reaction force moment instantaneous value around the target ZMP.
- This full model correction is performed in the same manner as that described in Japanese Patent Laid-Open No. 2002-326173 previously proposed by the applicant of the present application, for example. Therefore, the description in this specification is omitted.
- the full model correction may be performed, for example, in the same manner as described in PCT International Publication No. W 0 03/057427 A1 by the present applicant.
- the robot 1 When the robot 1 is moving while pushing the object 120, there is a step (a convex part of the floor) that is not assumed in the current movement plan (such as the movement plan as described above).
- the target object motion trajectory based on the movement plan and the actual object motion trajectory (hereinafter referred to as the actual object motion trajectory)
- the gait generator 100 generates a gait by determining a gait meter or the like based on the target object motion trajectory, and therefore, there is a difference between the target object motion trajectory and the actual object motion trajectory. If it becomes excessive, it will be difficult to generate a gait that can ensure the continuous stability of the robot 1. Therefore, in S01 in the present embodiment, when the deviation becomes large to some extent (or is predicted to increase), the movement plan determined in S01 is corrected in real time.
- the trajectory of the actual object position (the time series of the actual object position estimated in S59) is the trajectory as shown by the graph g7 in FIG. 21 (a).
- the deviation between the target object position based on the pre-correction movement plan and the actual object position increases with time.
- the object position deviation difference between the actual object position and the target object position obtained in S61 of the previous calculation processing cycle, that is, the difference obtained by the subtraction unit 254 in FIG.
- the magnitude (absolute value) of the figurine position deviation is compared with a predetermined value.
- the object position deviation becomes larger than the predetermined value (time t2 in FIG. 21 (a)
- the object position deviation as shown by the graph g8 in FIG. 21 (a) is obtained.
- the pre-correction movement plan is corrected to suppress the increase.
- the corrected movement plan is hereinafter referred to as a corrected movement plan.
- a corrected movement plan In the example of FIG.
- the corrected movement plan is a movement plan that gradually decelerates until the movement speed of the object 120 becomes almost zero after time t2.
- the post-correction movement plan is determined so that the target object motion specified thereby is smoothly continuous without causing a sudden change with respect to the pre-correction movement plan.
- the followability of the actual object position to the target object position trajectory corresponding to the corrected movement plan is as follows. If the difference between the target object motion trajectory and the actual object motion trajectory becomes small to some extent, the travel plan is corrected so that the corrected travel plan approaches the pre-correction travel plan. This revised movement plan is hereinafter referred to as the revised revision plan.
- the movement speed of the object 120 based on the movement plan after re-correction is made closer to the movement speed based on the movement plan before correction, but the target object position trajectory based on the movement plan after re-correction. Can be made closer to the object position trajectory based on the pre-correction movement plan.
- the target body position / posture trajectory, the target ZMP trajectory, and the target object reaction force trajectory are input to the object reaction force balance controller 102.
- the object reaction force balance controller 102 eliminates the deviation between the target object reaction force and the actual object reaction force that is the reaction force that the actual robot 1 receives from the object 120 (closes to 0).
- Target Compensation for target reaction force balance control to correct the target floor reaction force moment around ZMP Calculates the total floor reaction force and corrects the target body position / posture of the target motion The body position / posture is obtained.
- the processing of the object reaction force balance control device 102 will be described later.
- the desired foot position / posture trajectory, the desired ZMP trajectory, and the desired total floor reaction force trajectory in the desired gait are input to the leg main control device 104.
- the leg main controller 104 inputs the corrected target body position / posture and the compensated total floor reaction force for the object reaction force balance control from the object reaction force balance controller 102.
- the leg main control device 104 uses a joint control actuator (electric motor) for the legs 2 and 2 to follow the movement of the target gait (except for the movements of the arms 5 and 5) and the floor reaction force by compliance control processing. ) To control.
- the restored total floor reaction force that should be generated in the target ZMP is calculated and applied to the target ZMP.
- the actual total floor reaction force moment component (which is obtained from the detection values of the 6-axis force sensor 50 of the legs 2 and 2) is the restored total floor reaction force, the desired total floor reaction force, and the object reaction force balance.
- the desired foot position / posture is corrected so that it matches the moment component of the resultant force with the control compensation total floor reaction force.
- the corrected target foot position / posture is referred to as a corrected target foot position / posture.
- the main leg control device 104 then moves the two leg bodies 2 so that the actual joint displacement follows the target joint displacement of both legs 2 and 2 determined from the corrected target foot position / posture and the corrected target body position / posture.
- 2 joint actuators are controlled (motor drive commands for each leg 2 are output to each joint actuator).
- the target hand position / posture trajectory and the target object reaction force trajectory in the target gait are input to the arm main controller 106.
- the corrected target body position / posture is input to the arm main control device 106 from the object reaction force balance control device 102.
- the arm main control device 106 controls the joint actuators (electric motors) of the arm bodies 5 and 5 so as to follow the target hand position / posture trajectory and the target object reaction trajectory by compliance control processing. More specifically, the target hand position / posture is corrected according to the difference between the detected value (actual object reaction force) of the 6-axis force sensor 52 and the target object reaction force.
- the corrected target hand position / posture is referred to as the final corrected target hand position / posture.
- the arm main controller 106 then moves both arms so that the actual joint displacement follows the target joint displacement of both arms 5, 5 determined from the final corrected target hand position and the corrected target body position / posture.
- 5 and 5 joint actuators are controlled (motor drive commands for each arm body 5 are output to each joint actuator).
- FIG. 22 is a block diagram functionally showing the processing of the object reaction force balance control apparatus 102.
- the target object reaction force moment around the target ZMP by the target object reaction force and the actual object reaction force moment around the target ZMP by the actual object reaction force are calculated.
- the object reaction force moment deviation which is a deviation, is calculated by the moment deviation calculation unit 270.
- the target object reaction force moment includes the target object reaction force and target ZMP output from the gait generator 100, and the final corrected target hand position / posture determined by the arm main controller 106 (more details). Is calculated from the previous control processing cycle).
- the actual object reaction force moment is the detected value of the 6-axis force sensor 52 (actual object reaction force), the target ZMP, and the final corrected target hand position / posture (more specifically, the value in the previous control processing cycle) And calculated from
- the center-of-gravity position perturbation amount calculation unit 272 calculates a target center-of-gravity position perturbation amount that is the target perturbation amount of the entire center-of-gravity position of the robot 1.
- the target center-of-gravity position perturbation amount has a meaning as a perturbation amount of the entire center of gravity of the robot 1 in order to resolve the object reaction force moment deviation in the long term by gravity acting on the robot 1, for example, the target object
- the value is proportional to the reaction force moment.
- the deviation between the total center of gravity position model perturbation amount which is the perturbation amount of the entire center of gravity of the robot 1 on the perturbation dynamic model calculated by the perturbation dynamic model described later, and the target center of gravity position perturbation amount is subtracted.
- This deviation force is also calculated by the unit 274, and the compensation force floor for the object reaction force balance control is the moment manipulated variable around the target ZMP to converge the deviation to 0 by the feedback control law 276, for example, the PD control law.
- the reaction force moment is calculated.
- the sum of the total reaction force moment compensated for the object reaction force balance control and the deviation of the object reaction force moment is calculated by the adder 278.
- the output of the adder 278 shows the relationship between the perturbation of the overall center of gravity of the robot 1 and the moment perturbation around the target ZMP, as well as the relationship between the perturbation of the overall center of gravity and the perturbation of the upper body posture.
- the body position / posture perturbation amount is calculated using this perturbation dynamics model.
- the perturbation dynamics model is a model that describes the relationship (dynamic relationship) between the perturbation of the total center of gravity of the robot 1 and the moment perturbation around the target ZMP by the following equation 18.
- mtotal * hG * d2 ⁇ xG / dt2 AxG water mtotal water g + ⁇ ⁇ ?? Equation 18
- hG is the target ZMP force height to the total center of gravity
- AxG is the horizontal perturbation of the total center of gravity
- ⁇ ⁇ is Moment horizontal component around the target ZMP.
- the other variables are the same as those defined for the robot simple model.
- Expression 18 is an expression on the sagittal plane, and the relational expression on the lateral plane may be obtained by inverting the sign of the second term on the right side of Expression 18.
- This equation 18 has the mass of the total mass mtotal of robot 1, and the dynamics of the inverted pendulum such that the moment horizontal component generated around the target ZMP, which is the fulcrum of the mass, is ⁇ Mx. It is a formula which shows a behavior.
- the perturbation amount AxG of the entire center of gravity position of the robot 1 and the perturbation amount of the upper body position (hereinafter referred to as this)
- Equation 19 For perturbation motion, it can be assumed that Equation 19 holds approximately.
- the perturbation amount AxG of the total center of gravity is calculated by using the output of the adder 278 as ⁇ ⁇ on the right side of Equation 18, and this AxG force is also calculated by Equation 19.
- the body position perturbation amount is obtained.
- the corrected target body posture out of the corrected target body posture is assumed to match the target body posture, and the perturbation amount of the body posture is 0.
- the object reaction force balance controller 102 adds the body position perturbation amount output from the perturbation dynamics model 280 in this way to the target body position / posture (output of the gait generator 100). By adding in 282, the corrected target body position / posture is calculated.
- the object reaction force trajectory is changed to the target object reaction force trajectory at the object reaction force change time.
- the next gait virtual current time gait
- the movement plan is corrected and the current time's gait parameters are determined again, and the robot 1 moves according to the instantaneous value of the desired gait calculated based on the current time's gait parameters. Take control. Therefore, even when the object reaction force does not change along the target object reaction force trajectory, the target gait can be generated so as to ensure the continuous stability of the robot 1.
- FIG. 23 is a flowchart showing a process corresponding to the process of FIG. 5 according to the first embodiment in the process of the gait generator 100 according to the second embodiment. As shown in FIG. 23, the second embodiment is different from the first embodiment only in the processing in the case of the determination result power SNO of S19.
- the estimated landing position / posture or scheduled landing time is set so that the ZMP correction amount becomes as small as possible when the processing of S07 to S17 is executed again after the correction (at least the planned landing position / posture or landing). It is corrected so that it is smaller than the ZMP correction amount obtained before the scheduled time is corrected. After the correction, the processing from S07 is executed again. Otherwise, the first embodiment Is the same as the state.
- the target object reaction force trajectory as shown in FIG. 25 (a) is a step-like trajectory such as a rising force from the middle of the next time's gait, for example.
- the ZMP correction amount (X-axis direction component) determined in the processing of S17 is For example, it may become relatively large as shown by the solid line in Fig. 25 (b), and the judgment result of S19 may be NO.
- the planned landing position / posture of the free leg foot 22 of the next time gait is indicated on the supporting leg foot 22L of the current time gait as indicated by the broken line in FIG. Correct it so that it is closer with. In other words, the planned landing position / posture of the free leg foot 22L is corrected so as to make the stride of the next time gait smaller. If the processing from S05 is executed again after correcting the planned landing position / posture of the next time's gait in this way, the ZMP correction amount determined in S17 becomes smaller as shown by the broken line in FIG. 25 (b). As a result, the determination result in S 19 is YES.
- the second turning step of the normal gait is determined by the above-described method for determining the foot trajectory parameters of the normal gait.
- the free leg foot position at the end of the foot will also approach the initial free leg foot position of the second turning gait (the planned landing position of the free leg foot 22 R of the current time's gait).
- the planned landing position / posture of the free leg foot 22L of the next time's gait was corrected, but there is room to correct the planned landing position / posture of the free leg foot 22R of the current time's gait. If there is, it may be corrected. Or, try to correct the planned landing positions and postures for both the current time gait and the next time gait.
- the planned landing position / posture is corrected.
- the scheduled landing time of the free leg foot 22 of at least one of the gait may be corrected.
- the scheduled landing time of the next gait may be delayed.
- the second embodiment of the present invention is powerful, the same operational effects as in the first embodiment can be obtained.
- the planned landing position / posture or the scheduled landing time of the free leg foot 22 is corrected when the determination result of S19 is NO. Correct the target object reaction force trajectory.
- the gait parameter of the normal gait which is a periodic gait, is determined, and then the current time gait is added to the normal gait.
- Force to determine the current time's gait parameter so that it converges (to match the initial divergent component of the current time's gait to the initial divergent component of the normal gait) In the present invention, this is not essential. .
- the finally determined target force between the robot and the object the target object reaction force in each of the above embodiments
- the target movement position of the object the target object in each of the above embodiments. If the robot motion can be controlled to satisfy the (object motion trajectory), the robot motion should be controlled by a method different from the method described in the above embodiments.
- a robot such as a bipedal robot performs an operation of moving an object
- the robot performs the operation smoothly while ensuring the stability of the robot. It is useful as something that can be made.
- FIG. 1 is a diagram showing a schematic configuration of a biped mobile robot as a legged mobile robot in an embodiment of the present invention.
- FIG. 2 is a block diagram showing the configuration of a control unit provided in the robot of FIG.
- FIG. 3 is a block diagram showing a functional configuration of a main part of the control unit of FIG.
- FIG. 4 is a diagram showing a relationship between a robot and an object in the embodiment.
- FIG. 5 is a flowchart showing a calculation process of the gait generator in the first embodiment.
- FIG. 6 is a flowchart showing a calculation process of the gait generator in the first embodiment.
- FIG. 7 is a flowchart showing a calculation process of the gait generator in the first embodiment.
- FIG. 8 is a flowchart showing a calculation process of the gait generator in the first embodiment.
- FIG. 9 is a diagram showing an example of a movement plan determined in S02 of FIG.
- FIG. 10 is a block diagram showing processing of S02 in FIG.
- FIG. 11 (a) is a diagram showing an example of a temporary target ZMP trajectory related to S07 in FIG. 5
- FIG. 10 (b) is a diagram showing an example of the ZMP correction amount determined in S17 in FIG. 10 (c) shows an example of the target ZMP trajectory modified in S17.
- FIG. 12 is a diagram showing an example of foot trajectory parameters determined in S11 of FIG.
- Fig. 13 shows an example of the object floor reaction force moment trajectory of the current time gait
- Fig. 13 (b) shows the object reaction force moment of the normal gait determined by SI 1 in Fig. 5.
- the figure which shows the example of an orbit.
- FIG. 14 is a diagram showing an example of a robot dynamics model used in the embodiment.
- FIG. 15 is a block diagram showing a process for obtaining a body position using the robot dynamic model of FIG.
- FIGS. 16 (a) and 16 (b) are diagrams for explaining the processing of S21 in FIG.
- Figure 17 (a) is a graph and figure illustrating the temporal change in the speed of an object according to the movement plan.
- 17 (b) is a graph illustrating the temporal change of the object reaction force corresponding to FIG. 17 (a).
- FIG. 18 is a diagram for explaining an example of the processing of S47 in FIG. 6 and the movement plan correction processing when the determination result of S45 is NO.
- FIG. 19 is a diagram for explaining the processing of S55 in FIG.
- FIG. 20 is a block diagram showing processing of S61 in FIG.
- FIGS. 21 (a) and 21 (b) are diagrams for explaining the movement plan correction process of S01 of FIG.
- FIG. 22 is a block diagram showing processing of the object reaction force balance control device shown in FIG. 3.
- FIG. 24 is a diagram for explaining the processing of S21 ′ in FIG.
- FIGS. 25 (a) and 25 (b) are diagrams for explaining the processing of S21 ′ in FIG.
Landscapes
- Engineering & Computer Science (AREA)
- Mechanical Engineering (AREA)
- Chemical & Material Sciences (AREA)
- Combustion & Propulsion (AREA)
- Transportation (AREA)
- Robotics (AREA)
- Automation & Control Theory (AREA)
- Manipulator (AREA)
- Toys (AREA)
Abstract
Description
Claims
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE602005011492T DE602005011492D1 (de) | 2004-12-24 | 2005-09-28 | Gangarterzeugungsvorrichtung eines mit beinen versehenen roboters |
EP05788198A EP1842629B1 (en) | 2004-12-24 | 2005-09-28 | Gait generating device of a legged mobile robot |
US11/722,052 US7840309B2 (en) | 2004-12-24 | 2005-09-28 | Gait generating device of legged mobile robot |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2004-372489 | 2004-12-24 | ||
JP2004372489A JP4440761B2 (ja) | 2004-12-24 | 2004-12-24 | 脚式移動ロボットの制御装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2006067904A1 true WO2006067904A1 (ja) | 2006-06-29 |
Family
ID=36601514
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/JP2005/017806 WO2006067904A1 (ja) | 2004-12-24 | 2005-09-28 | 脚式移動ロボットの歩容生成装置 |
Country Status (6)
Country | Link |
---|---|
US (1) | US7840309B2 (ja) |
EP (1) | EP1842629B1 (ja) |
JP (1) | JP4440761B2 (ja) |
KR (1) | KR101214434B1 (ja) |
DE (1) | DE602005011492D1 (ja) |
WO (1) | WO2006067904A1 (ja) |
Families Citing this family (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4485279B2 (ja) * | 2004-08-02 | 2010-06-16 | 本田技研工業株式会社 | 脚式移動ロボットの歩容生成装置および制御装置 |
JP4531520B2 (ja) * | 2004-10-15 | 2010-08-25 | 本田技研工業株式会社 | 脚式移動ロボットの制御装置 |
JP4548135B2 (ja) | 2005-02-03 | 2010-09-22 | トヨタ自動車株式会社 | 脚式ロボットとその制御方法 |
JP4641252B2 (ja) * | 2005-12-12 | 2011-03-02 | 本田技研工業株式会社 | 脚式移動ロボットの歩容生成装置 |
JP4591419B2 (ja) * | 2006-07-18 | 2010-12-01 | トヨタ自動車株式会社 | ロボットとその制御方法 |
JP4877520B2 (ja) * | 2007-06-26 | 2012-02-15 | 株式会社Ihi | 搬送ロボットとその動作制御方法並びに協調搬送システム及び方法 |
JP4985776B2 (ja) * | 2007-09-25 | 2012-07-25 | 富士通株式会社 | ロボット制御装置、ロボット制御方法およびロボット制御プログラム |
JP4560658B2 (ja) * | 2007-12-10 | 2010-10-13 | 本田技研工業株式会社 | 脚式移動ロボットの制御装置 |
ES2424244T3 (es) * | 2009-04-22 | 2013-09-30 | Kuka Roboter Gmbh | Procedimiento y dispositivo para regular un manipulador |
JP5633166B2 (ja) * | 2010-03-23 | 2014-12-03 | トヨタ自動車株式会社 | ロボット、及びその制御方法 |
JP2014073222A (ja) * | 2012-10-04 | 2014-04-24 | Sony Corp | 運動補助装置及び運動補助方法 |
KR102146363B1 (ko) * | 2013-10-31 | 2020-08-20 | 삼성전자주식회사 | 착용형 로봇 및 그 제어 방법 |
US9778132B1 (en) * | 2015-12-16 | 2017-10-03 | X Development Llc | Methods and systems for force sensor calibration |
US10351189B2 (en) * | 2016-12-13 | 2019-07-16 | Boston Dynamics, Inc. | Whole body manipulation on a legged robot using dynamic balance |
US10946518B2 (en) * | 2018-07-24 | 2021-03-16 | Invia Robotics, Inc. | Spatiotemporal controller for controlling robot operation |
CN114253260B (zh) * | 2021-12-08 | 2023-08-18 | 深圳市优必选科技股份有限公司 | 机器人步态规划方法及装置、运动规划设备和存储介质 |
GB2620638B (en) * | 2022-07-15 | 2024-10-16 | Dyson Technology Ltd | Dynamic stability of a robot manipulator |
CN115157271B (zh) * | 2022-09-05 | 2022-12-16 | 杭州柳叶刀机器人有限公司 | 机械臂控制方法、装置、控制终端及存储介质 |
KR20240070199A (ko) * | 2022-11-14 | 2024-05-21 | 주식회사 레인보우로보틱스 | 복수의 다리를 갖는 로봇 및 그것의 터치다운 위치 결정 방법 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH1148170A (ja) * | 1997-08-04 | 1999-02-23 | Honda Motor Co Ltd | 脚式移動ロボットの制御装置 |
WO2003057424A1 (fr) * | 2001-12-28 | 2003-07-17 | Honda Giken Kogyo Kabushiki Kaisha | Production de demarche pour robot se deplaçant sur des jambes |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3233450B2 (ja) | 1992-05-22 | 2001-11-26 | 本田技研工業株式会社 | 指定時刻到達関数発生器 |
JP3663034B2 (ja) | 1996-07-25 | 2005-06-22 | 本田技研工業株式会社 | 脚式移動ロボットの歩容生成装置 |
JP3672426B2 (ja) | 1996-12-19 | 2005-07-20 | 本田技研工業株式会社 | 脚式移動ロボットの姿勢制御装置 |
DE69734835T2 (de) * | 1996-12-19 | 2006-07-20 | Honda Giken Kogyo K.K. | Haltungskontrolleur einen sich auf beinen bewegenden robotern |
WO1999054095A1 (fr) * | 1998-04-20 | 1999-10-28 | Honda Giken Kogyo Kabushiki Kaisha | Controleur pour robot mobile muni de jambes |
JP4213310B2 (ja) * | 1999-08-30 | 2009-01-21 | 本田技研工業株式会社 | 2足歩行脚式移動ロボット |
JP3615702B2 (ja) * | 1999-11-25 | 2005-02-02 | ソニー株式会社 | 脚式移動ロボットの動作制御装置及び動作制御方法、並びに、脚式移動ロボット |
EP1361027B1 (en) | 2000-11-17 | 2007-01-17 | Honda Giken Kogyo Kabushiki Kaisha | Gait pattern generating device for legged mobile robot |
JP3726032B2 (ja) | 2001-04-27 | 2005-12-14 | 本田技研工業株式会社 | 脚式移動ロボットの目標運動生成装置 |
-
2004
- 2004-12-24 JP JP2004372489A patent/JP4440761B2/ja not_active Expired - Fee Related
-
2005
- 2005-09-28 DE DE602005011492T patent/DE602005011492D1/de active Active
- 2005-09-28 KR KR1020077014979A patent/KR101214434B1/ko active IP Right Grant
- 2005-09-28 WO PCT/JP2005/017806 patent/WO2006067904A1/ja active Application Filing
- 2005-09-28 EP EP05788198A patent/EP1842629B1/en not_active Not-in-force
- 2005-09-28 US US11/722,052 patent/US7840309B2/en not_active Expired - Fee Related
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH1148170A (ja) * | 1997-08-04 | 1999-02-23 | Honda Motor Co Ltd | 脚式移動ロボットの制御装置 |
WO2003057424A1 (fr) * | 2001-12-28 | 2003-07-17 | Honda Giken Kogyo Kabushiki Kaisha | Production de demarche pour robot se deplaçant sur des jambes |
Non-Patent Citations (1)
Title |
---|
See also references of EP1842629A4 * |
Also Published As
Publication number | Publication date |
---|---|
EP1842629A1 (en) | 2007-10-10 |
EP1842629B1 (en) | 2008-12-03 |
US7840309B2 (en) | 2010-11-23 |
JP4440761B2 (ja) | 2010-03-24 |
KR20070090988A (ko) | 2007-09-06 |
KR101214434B1 (ko) | 2012-12-21 |
US20080133057A1 (en) | 2008-06-05 |
EP1842629A4 (en) | 2008-04-16 |
DE602005011492D1 (de) | 2009-01-15 |
JP2006175567A (ja) | 2006-07-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4485279B2 (ja) | 脚式移動ロボットの歩容生成装置および制御装置 | |
JP4808626B2 (ja) | 脚式移動ロボットの歩容生成装置 | |
WO2006067904A1 (ja) | 脚式移動ロボットの歩容生成装置 | |
JP4641252B2 (ja) | 脚式移動ロボットの歩容生成装置 | |
JP4531520B2 (ja) | 脚式移動ロボットの制御装置 | |
WO2002040224A1 (fr) | Dispositif generateur d'un modele de demarche pour robot mobile pourvu de jambes | |
JP2005238443A (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 KE KG KM KP KR KZ LC LK LR LS LT LU LV LY MA MD MG MK MN MW MX MZ NA NG 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 LV 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: 11722052 Country of ref document: US |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
WWE | Wipo information: entry into national phase |
Ref document number: 1020077014979 Country of ref document: KR |
|
WWE | Wipo information: entry into national phase |
Ref document number: 2005788198 Country of ref document: EP |
|
WWP | Wipo information: published in national office |
Ref document number: 2005788198 Country of ref document: EP |
|
WWP | Wipo information: published in national office |
Ref document number: 11722052 Country of ref document: US |