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

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

Info

Publication number
WO2006013779A1
WO2006013779A1 PCT/JP2005/013840 JP2005013840W WO2006013779A1 WO 2006013779 A1 WO2006013779 A1 WO 2006013779A1 JP 2005013840 W JP2005013840 W JP 2005013840W WO 2006013779 A1 WO2006013779 A1 WO 2006013779A1
Authority
WO
WIPO (PCT)
Prior art keywords
gait
trajectory
robot
target
parameter
Prior art date
Application number
PCT/JP2005/013840
Other languages
English (en)
French (fr)
Inventor
Tadaaki Hasegawa
Naohide Ogawa
Original Assignee
Honda Motor Co., Ltd.
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Honda Motor Co., Ltd. filed Critical Honda Motor Co., Ltd.
Priority to DE602005019183T priority Critical patent/DE602005019183D1/de
Priority to EP05767078A priority patent/EP1798004B1/en
Priority to KR1020077000627A priority patent/KR101209097B1/ko
Priority to US11/572,677 priority patent/US7991508B2/en
Publication of WO2006013779A1 publication Critical patent/WO2006013779A1/ja

Links

Classifications

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

Definitions

  • the present invention relates to a gait generator that generates a gait of a robot in a state where an external force other than a floor reaction force appropriately acts on a legged mobile robot, and a control device that controls the operation of the robot.
  • the robot When a legged mobile robot such as a biped mobile robot is used to push a certain object, the robot simply receives the floor reaction force that the tip of the leg contacts.
  • the target force also receives reaction force.
  • the force other than the floor reaction force that the external environmental force acts on the robot in this way is called an external force.
  • Object force The external force (reaction force) that the robot receives is called the object reaction force.
  • the external force does not include gravity.
  • Patent Document 1 Japanese Patent Laid-Open No. 10-230485 (hereinafter referred to as Patent Document 1) by the inventor of the present application is known as a technique for generating a gait of a robot in a state in which an external force is applied to a legged mobile robot and performing motion control. ) Is known.
  • This technology removes the vertical component of the moment (horizontal 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 robot's motion and the gravity and external force acting on the robot.
  • the desired gait is generated so as to satisfy the dynamic equilibrium condition that becomes 0 (the floor reaction force acting on the center point of the target floor reaction force balances the resultant force).
  • Patent Document 2 As a technique for generating a target gait of a robot in real time, a technique found in PCT International Publication No. WOZ02Z40224A1 (hereinafter referred to as Patent Document 2) previously proposed by the present applicant is also known.
  • This technology ensures the continuous stability of the robot by generating the body position and posture of the target gait so that it converges to the body position and posture of the normal turning gait, which is a virtual periodic gait.
  • the target gait of the robot is generated in real time while preventing the robot's motion state from diverging.
  • the technique disclosed in Patent Document 1 the basic target gait is simply generated so that the dynamic equilibrium condition described above is satisfied.
  • the basic desired gait may deviate significantly from the gait that satisfies the original dynamic equilibrium condition for unexpected external force changes.
  • the robot's body position / posture is adjusted so that the center of gravity is balanced, the robot's continuous movement cannot be ensured immediately because the robot's dynamic balance cannot be secured. There was a risk that it could not be performed stably.
  • external force changes suddenly such as when the robot starts to move the object by bringing its arm or the like into contact with the object from a state where the robot is not in contact with the object.
  • the present invention has been made in view of a strong background, and in an environment in which an external force appropriately acts on the robot, such as a reaction force that acts on the robot from the object when the object is moved by the robot.
  • An object of the present invention is to provide a gait generator and a control device capable of generating a target gait that can ensure the continuous stability of a robot even when the external force changes rapidly. It is another object of the present invention to provide a gait generator and a controller that can generate a target gait that can ensure the continuous stability of the robot even when the external force does not always become as expected.
  • the first invention of the gait generator for legged mobile robot provides:
  • An external force trajectory temporary determining means for temporarily determining a target trajectory of an external force other than a floor reaction force acting on the robot
  • Periodic gait parameter determining means for determining a periodic gait parameter including at least a parameter defining
  • the motion trajectory of the upper body of the robot determined based on the robot dynamics model representing the relationship between the floor reaction force and external force acting on the robot and the robot motion and the current time gait parameter is the dynamic model.
  • At least one parameter of the tentatively determined current time gait parameter is corrected so as to satisfy the condition of convergence to the upper body motion trajectory of the robot obtained based on the periodic gait parameter Parameter correction means for determining the gait parameters this time,
  • the present time gait instantaneous value determining means for sequentially determining the instantaneous value of the current time gait based on at least the corrected current time gait parameter.
  • the current time's gait parameter is calculated based on the motion trajectory of the upper body of the robot obtained based on this and the robot dynamics model. It is determined so as to satisfy the condition of convergence on the motion trajectory of the upper body of the robot obtained based on this.
  • the periodic gait is a gait that can guarantee the continuous stability of the robot motion because it is a gait that repeats the motion of the robot in the same form for one cycle.
  • the periodic gait parameter includes a parameter that defines the trajectory of the external force in the periodic gait. Therefore, the current time's gait parameter can be determined in consideration of future changes in external force following this time's gait.
  • the time series of the instantaneous value of the current time's gait taking into account future external force changes (more specifically, the future external force It is possible to generate a time series of instantaneous values of the current time's gait that can be obtained by continuous movement of the robot even by changes. [0010] Therefore, according to the first invention, in an environment in which an external force acts on the robot as appropriate, even if the external force suddenly changes, the target gait that can ensure the continuous stability of the robot. Can be generated.
  • the external force may be a force caused by an electromagnetic force or an air flow that is not limited to a reaction force that acts on the robot from any object that directly contacts the robot. .
  • the second invention of the gait generator of the present invention is a robot for causing a legged mobile robot having a plurality of legs extending from the upper body to perform an operation of moving an object.
  • a gait parameter tentative determination means for tentatively determining a current gait parameter including at least a parameter defining a floor reaction force and an external force trajectory to be applied to
  • a periodic gait parameter determining means for determining a periodic gait parameter including at least a parameter defining a trajectory of the external force
  • the robot's upper body motion trajectory determined based on the robot dynamics model representing the relationship between the floor reaction force and external force acting on the robot and the robot's motion and the current time's gait parameter is the robot dynamics model. And at least one parameter of the tentatively determined current time gait parameter is corrected so as to satisfy the condition that the robot converges to the upper body motion trajectory obtained based on the periodic gait parameter.
  • Parameter correction means for determining the gait parameters this time is
  • the current time's gait parameter is calculated based on this and the mouth bot dynamics model, as in the first invention. It is determined so as to satisfy the condition of convergence on the upper body motion trajectory of the robot obtained based on the model and the periodic gait parameters.
  • the periodic gait meter includes a parameter that defines the trajectory of the external force (reaction force that the robot receives as a target force) in the periodic gait.
  • the current time's gait parameter can be determined in consideration of the change in the future external force (reaction force received by the object force robot) following the current time's gait.
  • the time series of the instantaneous value of the current time's gait taking into account future external force changes (more specifically, Can also generate a time series of instantaneous values of the current time's gait that can perform continuous robot movement.
  • the parameter to be corrected by the parameter correcting means includes, for example, at least a parameter that specifies the trajectory of the floor reaction force among the current time gait parameters.
  • the parameter correcting means corrects the parameter when the parameter that defines the trajectory of the floor reaction force is corrected so as to satisfy the condition among the temporarily determined gait parameters.
  • the parameters that specify the trajectory of the floor reaction force are subject to correction.
  • the gait parameters can be determined this time to satisfy.
  • ZMP is the inertia generated by the movement of the robot.
  • the resultant force of the sexual force and the force other than the floor reaction force acting on the robot ie, gravity and the external force
  • the third invention when the correction amount of the butter meter that defines the trajectory of the floor reaction force in the current time's gait exceeds a predetermined amount, the above condition is satisfied so as to satisfy the above condition while reducing the correction amount. At least the parameter that defines the trajectory of the external force is corrected among the gait parameters that have been provisionally determined. By doing so, the current time gait parameter can be corrected so as to satisfy the above condition even when it is difficult to appropriately correct the parameter that defines the trajectory of the floor reaction force.
  • the robot's leg movement cannot be adjusted immediately, even if the situation (for example, just before landing on the leg), the robot's continuous stability can be ensured.
  • a time series of instantaneous values can be generated, and the robot can be accelerated and decelerated rapidly using external force.
  • the parameter correction means when the parameter to be corrected by the parameter correction means includes at least a parameter that defines the trajectory of the floor reaction force among the current time gait parameters, the parameter correction means When the calibrated amount of the metric when the parameter defining the trajectory of the floor reaction force is corrected so as to satisfy the above condition among the temporarily determined gait parameters, Means may be provided for correcting at least a parameter that defines the movement trajectory of the leg among the temporarily determined gait parameters so as to satisfy the condition while reducing the correction amount. (Fourth invention).
  • the parameter that defines the trajectory of the floor reaction force is preferably a parameter that defines the trajectory of the target ZMP of the robot (fifth invention, fourth invention). 6 inventions).
  • the parameter correction means is a correction target. Since the parameters include the target ZMP, the current time's gait parameters that can ensure the robot's stability margin can be determined regardless of the number of robot legs that are in contact with the ground.
  • the object trajectory provisional deciding means is an object representing a relationship between a motion of the object and a force acting on the object.
  • Means for determining the current parameter by correcting at least one of the target motion trajectory of the figurine and the parameter defining the motion trajectory of the leg of the corrected current time gait parameter; (7th invention).
  • the future motion of the robot is predicted based on the corrected current time gait parameter, the periodic gait parameter, and the robot dynamics model, and the predicted future motion of the robot is determined.
  • a predetermined geometric constraint for example, the robot and the object Geometry such as whether interference occurs, whether the robot and target are too close, and the joint rotation angle of the part (arm body, etc.) to be engaged with the robot target is excessive. It is determined whether or not the geometrical constraints are met. If the geometric constraint condition is not satisfied, at least one of the target motion trajectory of the object and the parameter that defines the motion trajectory of the leg in the corrected current time gait parameter.
  • the gait parameters can be determined this time so that the appropriate positional relationship between the robot and the object (the positional relationship that satisfies the geometric constraint conditions) is maintained in the future, and the appropriate position is determined. If there is a risk that the relationship may not be maintained, an appropriate current time gait parameter that can be resolved can be determined in advance, so that the continuous movement of the mouth bot can be carried out smoothly without interruption. .
  • the seventh invention may be combined with the third to sixth inventions.
  • a disturbance force other than the force acting on the object is estimated from the robot operating according to the instantaneous gait instantaneous value.
  • An object disturbance force estimating means for determining, and the object trajectory provisional deciding means comprises an object dynamics model representing a relationship between a motion of the object and a force acting on the object, the movement plan, and the It is preferable that the means temporarily determines the target motion trajectory of the object and the target trajectory of the external force based on the estimated disturbance force (the eighth invention).
  • the disturbance force for example, a frictional force or a braking force that acts on the object, which is not assumed in the movement plan, or a gravity gradient that acts on the object on the inclined surface of the floor.
  • the target motion trajectory of the target and the target trajectory of the external force are tentatively determined using the target dynamic model. For this reason, even if the external force (reaction force) that acts on the robot from the target does not always become as expected, the target motion trajectory of the target and the target trajectory of the external force are temporarily set according to the actual environment. Can be determined. Based on these target motion trajectory and the target trajectory of external force, as a result, the external force (reaction force) acting on the robot will not always be as expected! A goal gait that can ensure stability can be generated.
  • the eighth invention may be combined with the third to seventh inventions.
  • the object trajectory provisional determination means includes the difference between the motion trajectory of the object corresponding to the movement plan and the target motion trajectory of the provisionally determined object, and the estimation It is preferable that a means for correcting the movement plan is provided based on at least one of the generated disturbance forces (the ninth invention).
  • the ninth aspect of the invention at least one of the difference between the motion trajectory of the object corresponding to the movement plan and the target motion trajectory of the provisionally determined object and the estimated disturbance force Based on one, the movement plan is modified.
  • the robot's stability is improved while avoiding excessive changes in the robot's behavior.
  • the travel plan can be modified to an appropriate plan that is in line with the actual environment.
  • a control device for a legged mobile robot according to the present invention is a current time gait generated by the gait generator for a legged mobile robot according to any one of the first to ninth inventions.
  • the control device that controls the operation of the robot according to the instantaneous value is a current time gait generated by the gait generator for a legged mobile robot according to any one of the first to ninth inventions.
  • the current step of the robot is adjusted so as to approach zero.
  • the instantaneous value of the gait at least one of the target motion and the desired floor reaction force of the robot!
  • the gait instantaneous value correcting means for correcting one of the deviations, and the corrected moment of the current time gait And a control means for controlling the operation of the robot so as to follow the value.
  • the instantaneous gait of the current gait is made close to 0 so that the deviation between the actual external force (actual external force) and the instantaneous value of the external force in the current gait (that is, the instantaneous value of the target external force) approaches zero. Since at least one of the target motion and the desired floor reaction force of the robot is corrected, the external force (target external force) and actual external force assumed in generating the instantaneous value of the current time's gait Even when the deviation of the robot becomes large, it is possible to control the robot movement so as to maintain the stability of the robot. Therefore, continuous stability during the actual operation of the robot can be improved.
  • the actual external force may be detected using a force sensor.
  • a gait generation device and a control device 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 bipedal 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 crotch (waist ) Joints 10R, 10L for rotation (rotation) (for rotation in the direction of the upper body 3) (reference symbols R and L are symbols corresponding to the right leg and the left leg, respectively) And the following joints 12R and 12L for rotation in the crotch (waist) roll direction (around the X axis) and joints 14R and 14L for rotation in the crotch (waist) pitch direction (around the Y axis)
  • the joints 16R, 16L for rotation in the pitch direction of the knee, the rotation joints 18R, 18L for rotation in the pitch direction of the ankle, and the joints 20R, 20L for rotation in the roll direction of the ankle 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 arm bodies (arm links) 5 and 5 are attached to both side portions of the upper portion of the upper body 3, and a head 4 is disposed at the upper end portion 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) 40R (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.
  • a known 6-axis force sensor 50 is interposed below the ankle joints 18R (L) and 20R (L) of each leg 2 between the foot 22R (L). 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, has a wrist portion (node) 40R (L) and wrist joints 38R (L), 40R (L), 42R (L) of each arm body 5. Detection signals for the three-direction component of the translational force of the external force acting on the hand 40R (L) and the three-way component of the moment are 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. It is used to detect the robot's self-position and posture.
  • each joint of the robot 1 has an electric motor 64 (see FIG. 3) for driving the joint and a rotation amount of the electric motor 64 (a rotation angle of each joint).
  • An encoder (rotary encoder) 65 (see FIG. 3) 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 6-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 symbols R and L are omitted when it is not necessary to distinguish between the left and right of the leg body 2 and the arm body 5.
  • 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 present 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. Keep on.
  • the gait generator 100 generates and outputs the target gait of the robot 1 in real time and corresponds to the gait generator of the present invention.
  • the target gait output by the gait generator 100 is the target body position / posture trajectory (the target position trajectory of the upper body 3). And target posture trajectory), target foot position / posture trajectory (target position trajectory and target posture trajectory of each foot 22), target hand position / posture trajectory (target position trajectory and target posture trajectory of the hand portion 44 of each arm body 5) , Target total floor reaction force center point trajectory (target floor trajectory of the total floor reaction force center point), target total floor reaction force trajectory, and target object reaction force trajectory.
  • 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 representative point 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)
  • the foot posture is represented by a two-axis spatial azimuth that is fixedly set on each foot 22 (in the Z axis).
  • 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 means an external force other than the floor reaction force that the robot 1 receives environmental force. Therefore, the target object reaction force trajectory corresponds to the target trajectory of the external force in the present invention.
  • the robot 1 is engaged with the hand portions 44R and 44L of the arms 5 and 5 at a predetermined portion of the object 120 (the carriage in the illustrated example).
  • an external force other than the floor reaction force that the robot 1 also receives environmental force means a reaction force that the robot 1 receives from the object 120.
  • the external force is referred to as an 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 the object reaction force moment.
  • 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 acting on each foot 22 (the floor reaction force consisting of translational force and moment) is called “each foot floor reaction force", and all (two) foot 22R,
  • All floor reaction force 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, 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.
  • the gait generator 100 generates the target floor reaction force center point as the action point of the target total floor reaction force. Since the target floor reaction force central point has a meaning as an action point of the target total floor reaction force, it can be said that it is essentially one component of the target total floor reaction force. However, in the present embodiment, the target floor reaction force center point of the target floor reaction force is closely related to the present invention. Therefore, in Figure 4, the target floor reaction force center point, which is the point of action of the target total floor reaction force, is described separately from the target total floor reaction force.
  • ZMP zero moment point
  • ZMP is the resultant force of the inertial force generated by the motion of the robot, 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 Z MP) 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 corresponds to a predetermined period (the period of one step when the robot 1 moves). Period).
  • the both-leg support period in the gait is the period in which the robot 1 supports its own weight with both legs 2 and 2 (the period in which both legs 2 and 2 become support legs), and the one-leg support period. 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.
  • robot 1 is not moving (both feet Even in the state of maintaining the ground contact between the flat surfaces 22 and 22, 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) to be newly generated by the gait generator 100 or a target gait being generated (unit gait) is called a current time gait, and this 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 central force of the ankle joints 18 and 20 of the supporting leg intersects with the floor surface (this point is the foot of the supporting leg in the example of this embodiment).
  • the global coordinate system (fixed to the floor) is set with the origin as the origin point and the horizontal plane passing through the origin as 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 mean the three axes of this support leg coordinate system unless otherwise specified. Note that the origin of the support leg coordinate system is not necessarily the same as 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 floor.
  • the gait generator 100 is an embodiment of the first to third inventions, the fifth invention, and the seventh to tenth inventions of the present invention.
  • the gait generator 100 sequentially executes the processes shown in the flowcharts of FIGS. 5 to 7 at a predetermined calculation processing cycle.
  • the movement plan of the object 120 is determined.
  • Move determined here The plan 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, when 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 in S01 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. 9 is a block diagram showing a calculation process for obtaining the target object position trajectory and the 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 dynamic model representing the relationship between the force acting on the object 120 and the movement of the object 120.
  • the case where the object 120 is moved on a substantially horizontal floor will be described as an example for convenience of understanding.
  • the target object dynamic model shown in FIG. 9 is a dynamic model that outputs the position of the target object 120 with the force (more specifically, the translational force in the horizontal direction) acting on the target object 120 as an input. More specifically, this object dynamics model is a horizontal translation acting on object 120. Multiplying the force input value (the value obtained by the adding unit 204 described later) by the reciprocal 1 ZM of the mass 120 of the object 120 by the multiplication unit 206, the motion acceleration of the object 120 is obtained, and this is the integrator. The position of the object 120 (position on the object dynamic model) is output by sequentially integrating (double integration) at 208 and 210. 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 dynamics model, and this is hereinafter referred to as the object model speed.
  • the target object speed which 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 a value obtained as a first-order differential value of the position trajectory of the object 120 in the movement plan, or a component of the movement plan.
  • a time series of target object speeds for a predetermined period in the future (for a plurality of steps of the robot 1) from the current time is sequentially input to the subtraction 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 immediately before the newly input target object speed is input to the subtraction unit 200. It is.
  • the required value of the translational force to be applied to the object 120 from the robot 1 is determined 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 estimated disturbance force which is an estimated value of the force (the floor force is also a friction force acting on the object 120, etc.) is input to the adding unit 204, and the sum of the required value of the translational force and the estimated disturbance force is the object power. It is obtained by the adder 204 as an input value of the translational force for the academic model.
  • the estimated disturbance force is obtained by the processing of S35 described later for each arithmetic processing cycle of the gait generator 100, and the estimated disturbance force input to the adder 120 is the gait generator device 100.
  • the value (previous value) obtained in the previous computation cycle is used.
  • 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. It is output as the object position trajectory.
  • the initial value of the output of the integrator 208 of the object dynamic model is the time series of the object model speed obtained by executing the process of S03 in the previous arithmetic processing cycle of the gait generator 100. 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 sequence of the target object position obtained by executing the processing of S03 in the previous calculation processing cycle of the gait generator 100. Is set to the value at the time corresponding to (current time in the previous 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.
  • the process of S03 corresponds to the external force trajectory temporary determining means in the first invention or the object trajectory temporary determining means in the second invention.
  • the object shown in Figure 9 The physical dynamic model corresponds to the object dynamic model in the eighth aspect of the present invention.
  • 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 estimated landing position / posture and scheduled landing time to be provisionally determined are at least the planned landing position / posture and landing time of the free leg foot 22 of the current time's gait and the planned landing position of the free leg foot 22 of the next time's gait. Includes position and orientation and estimated landing time.
  • the planned landing position / posture and the scheduled landing time of the free leg foot 22 are the same as 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 S 03. It is determined so as to have a predetermined relative position and orientation relationship with the object position and orientation at the time.
  • the planned landing position / posture and the scheduled 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. For example, when the robot 1 is not moved (while maintaining the contact between both feet 22 and 22), the object 120 is pushed and moved. When the user's hand 44 is removed from the object 120, the planned landing position / posture of the free leg foot 22 in each gait is maintained constant over time. In other words, in general, 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 slippery after the heel of the free leg foot 22 is landed and the free leg foot 22 is in contact with the floor.
  • the landing schedule of the free leg foot 22 By determining the fixed position / posture, the position / posture of the support leg coordinate system in each unit gait is determined in accordance with the support leg coordinate system setting method described above. 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.
  • a ZMP trajectory parameter that defines the target ZMP trajectory of the current time's gait is provisionally determined.
  • the ZMP trajectory parameters provisionally determined here are determined by the planned landing position / posture and the scheduled landing time of the gait target ZMP (hereinafter referred to as temporary target ZMP), which is stipulated in this step.
  • temporary target ZMP the scheduled landing time of the gait target ZMP
  • the ground contact surface of the supporting leg foot 22 in this time's gait is present in the vicinity of the center of the ground contact surface (so-called support polygon including the ground contact surface of both foot feet 22 in the both-leg support period) and does not change rapidly. To be determined.
  • the tentative target ZMP force of the current time's gait 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 does not change suddenly.
  • the ZMP trajectory parameters are determined.
  • the temporary target ZMP determined by such a guide has a pattern as shown in FIG. 10 (a), for example.
  • Fig. 10 (a) shows the pattern of the position of the temporary target ZMP in the X-axis direction.
  • the position and time of the breakpoint of the temporary target ZMP pattern (trajectory) are provisionally determined as the ZMP trajectory parameters.
  • the process proceeds to S09, and based on the currently provisionally determined target object motion trajectory and the target object reaction force trajectory, around the temporary target Z MP determined by the currently provisionally determined ZMP trajectory parameters.
  • the object reaction force moment trajectory (time series of instantaneous values of the object reaction force moment) is calculated. More specifically, first, based on the target object motion trajectory, the motion trajectory (position and orientation trajectory) of the part of the object 120 to which the hand portions 44R and 44L of the arms 120 and 5 of the robot 120 should be engaged Is determined.
  • 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.
  • each time (at every step) The target reaction force moment around the temporary target ZMP at (time) is calculated.
  • the time series of the calculated object reaction force moment is obtained as the object reaction force moment trajectory.
  • the robot 1 is moved close to the object 120 from a location away from the object 120, and then the operation of pushing the object 120 by engaging the hand portions 44R and 44L with the object 120 is started.
  • 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 that is a periodic gait is a gait for 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 gait (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. Therefore, a gait of 3 steps or more is defined as one cycle. Using a normal gait is less effective despite the complexity of gait generation processing
  • 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 a virtual gait that is assumed temporarily (on the arithmetic processing of the gait generator 100) in order for the gait generator 100 to determine the divergent component at the end of the current time gait. It is not output from the content 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 target 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 guideline for generating such a gait is the same as that of PCT International Publication No. WO / 02 / 40224A1 (Patent Document 2) 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 parameter of the gait parameters of the normal gait is 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 each position and orientation of the free leg foot 22 and the gait cycle of each turning gait. Therefore, the foot position / posture trajectory is determined in the order of the current time gait, the first turning gait, and the second turning gait. 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 gait viewed from the support leg coordinate system of the next time's gait.
  • the foot / posture position / posture at the end of the gait this time is such that the support foot 22 in the initial stage of the gait is in contact with the floor and that the foot 22 does not slip on the floor.
  • This is the position / posture of the supporting leg foot 22 when it is rotated in the pitch direction until it comes into contact (this matches the planned landing position / posture of the free leg foot 22 of the previous gait).
  • 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 as seen 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 free leg foot position / posture of the second turning gait is the supporting leg foot position / posture at the end of the first turning gait as seen from the next time's gait supporting leg coordinate system.
  • 2nd turning gait initial support leg foot position / posture Is the free leg 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 of the supporting leg at the end of the second turning gait is the position / posture viewed from the next time's gait supporting leg coordinate system. It is determined to match the posture.
  • 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 is the same as when the target ZMP trajectory parameter is provisionally determined in S07. It is decided not to make a drastic change with a high margin.
  • 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. 12 (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 based on the object reaction force trajectory and target object trajectory of the next gait obtained in S03, and the ZMP trajectory defined by the ZMP trajectory parameters of the normal turning gait. It is a trajectory calculated in the same way as S09.
  • the object reaction force moment trajectory of the next gait is the steady state of the object reaction force trajectory and target object motion trajectory of the next gait obtained in S03.
  • the trajectory is calculated in the same way as S09 based on the ZMP trajectory defined by the ZMP trajectory parameters of the 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 the trajectory shown in Fig. 12 (b), for example. .
  • 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. It is determined to coincide with the reaction force moment trajectory.
  • 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 object reaction force moment trajectory of the next gait coincides with the object trajectory moment trajectory, and from the time tx to the end, 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 processes of S05, S09, and SI1 correspond to the periodic gait parameter determining means in the first and second inventions of the present invention.
  • the foot trajectory parameters, ZMP trajectory parameters, and object reaction force moment trajectory parameters determined in S11 are parameters that define the motion trajectory of leg 2 in the normal gait, which is a periodic gait.
  • the target object motion trajectory is the “leg” in the first invention.
  • 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. Movement of the second turning gait
  • the initial divergent component of the normal turning gait is determined so that the terminal state (including the terminal divergent component) matches.
  • FIG. 13 shows the structure of the robot simplification 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 robot simple model consists 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 upper body 3 of robot 1 is geometrically determined from the horizontal position of inverted pendulum mass point b Is done. 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. 13, 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 Mass of inverted pendulum mass b
  • xsup Position of supporting leg mass point 2m
  • xswg Position of free leg mass point 2m
  • xb Inverted pendulum position (position of upper mass point b)
  • H Inverted pendulum height (height from inverted pendulum A fulcrum a to inverted pendulum mass point b)
  • xb, xsup, and xswg are represented by 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 of the total moment of inertia around 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 action point P is set so that the approximation accuracy of the robot simple model increases.
  • the action point P related to the current time's gait moves from the origin of the support leg coordinate system of the previous time's gait to the origin of the support leg coordinate system of the current time's gait in a straight line at a constant speed during both leg support periods.
  • the current gait support leg coordinate system is set to be maintained at the origin. The same applies to the action point P related to the first turning gait and the second turning gait of the normal turning gait.
  • 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 calculations.
  • the target body position can be determined from the above.
  • the leg ZMP calculator 220 calculates the above equations 01 and 02. Is used to calculate the leg ZMP (ZMPfeet).
  • 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.
  • the initial divergence of the normal gait is generated based on the robot simple model described above. Determine the minutes. 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.
  • Equation 07 is an equation describing the divergent component q on the sagittal plane, and the equation describing the divergent component q on the lateral plane is the sign of the entire fourth term on the right side of Equation 07. The expression is reversed from “one” to “+”.
  • the divergence component hereinafter referred to as the initial divergence component
  • the divergence component in the initial stage of the normal turning gait (the initial stage of the first turning gait) and the divergence component (hereinafter referred to as the end of the second turning gait) Focusing on the terminal divergence component and! /, U)
  • q [0] the divergence component at time 0
  • q [k] the divergence component at time kAt
  • 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 written as Wzmptotal
  • the third term on the right side is written as Wfeet
  • the fourth term on the right side is written as Wobj. That is, Wzmptotal, Wfeet, Wobj are defined by the following equations 08a, 08b, 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 support leg coordinate system of the gait next to the normal turning gait (the next gait support leg coordinate system in Fig. 11 (X "' Y" ' The coordinate system)) is converted to a value described in the support leg coordinate system of the normal turning gait (next gait support leg coordinate system ( ⁇ ' ⁇ 'coordinate system) in Fig. 11). If the rotation matrix for ⁇ is ⁇ and the translation vector of the coordinate origin is ⁇ , the following equation 11 is obtained.
  • inv () is the inverse of the matrix in parentheses. Yes, I is the identity matrix.
  • the initial divergent component q [0] that satisfies the boundary condition of the normal turning gait is determined based on this equation 13.
  • Wzmptotal may be calculated by an algorithm using the fact that the target ZMP trajectory is a polygonal trajectory as described in PCT International Publication WO / 02 / 40224A1!
  • 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. However, raise the free leg foot 22 once, Thereafter, a foot position / posture trajectory may be generated so as to return to the original landing position / posture.
  • the step time ⁇ t used in the calculation of Wzmptotal, Wfeet, Wobj is the gait generator 10
  • the initial divergence component q [0] is obtained analytically.
  • 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 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 initial position of the foot in the initial gait of the current time's gait is that 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 / posture supporting leg foot position / posture of previous gait).
  • 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.
  • the free leg foot position posture of the current time gait is determined so that the posture becomes the planned landing position / posture of the current time gait.
  • 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 supporting 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 parameters are set to be the same as the ZMP trajectory parameters provisionally determined in S07. Therefore, the target ZMP trajectory defined by this ZMP trajectory parameter has a pattern as shown in FIG. 10 (a), for example.
  • the object reaction force moment trajectory parameter of the gait parameters of the current time's gait is the object reaction force moment trajectory defined by the object reaction force moment trajectory calculated in S09. It is determined to match the trajectory corresponding to this time's gait.
  • the processes in S05, S07, S09, and S15 correspond to the current time gait parameter provisional determination means in the first and second inventions of the present invention.
  • the foot trajectory parameters, ZMP trajectory parameters, and object reaction force moment trajectory parameters determined in S15 are the parameters that define the leg motion trajectory in the current gait and the floor reaction in the current gait, respectively. It corresponds to a parameter that defines the force and a parameter that defines the trajectory of the external force.
  • 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, steady rotation The ZMP trajectory parameters are modified so that the final divergence component of the current time's gait approximately matches the initial divergence component of the gait.
  • the temporary target ZMP in order to make the final divergent component of the current time's gait almost coincide with the initial divergent component of the normal turning gait, the temporary target ZMP has a ZMP as shown in FIG. 10 (b). By adjusting the correction amount, the temporary target ZMP is corrected, thereby obtaining the target ZMP as shown in FIG. 10 (c).
  • the basic guideline for the process of 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 is explained for convenience of understanding.
  • the ZMP correction amount is trapezoidal as shown in FIG. 10 (b), 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
  • the initial divergence component q [0] is calculated from the inverted pendulum position (or body position) at the beginning of the current time's gait and its rate of change, using Equation 06. It is obtained in the same way 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 S 15.
  • Wtrim is determined by setting trapezoidal height a to 1.
  • 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 analytically obtained, 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 terminal divergence component of the current gait created temporarily is used as the initial gait of the normal gait.
  • the ZMP correction amount should be determined based on the value of trapezoidal height a when the diffuse component almost matches.
  • the processing of S17 corresponds to the parameter correcting means in the first and second inventions of the present invention.
  • the ZMP trajectory parameter is the parameter to be corrected.
  • the routine proceeds to S19, where it is determined whether or not the target ZMP determined by the corrected ZMP trajectory parameter is appropriate. 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 trajectory parameters. Correct the reaction force trajectory.
  • the target object reaction force trajectory is determined so that the ZMP correction amount becomes as small as possible when the processing of S09 to S17 is performed again after the correction (at least before the target object reaction force trajectory is corrected). It will be corrected (to be smaller than the ZMP 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. 15 (a) is an example of the target body position trajectory determined in accordance with 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. 15 (b) with respect to the target object reaction force trajectory temporarily determined in S03 as described above.
  • a period after t2 Within ⁇ 1 the target object reaction force trajectory is corrected so as to increase in the negative direction of the X axis.
  • 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's gait parameter is set so that the motion of the upper body 3 is performed so 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 processing of S23 corresponds to the robot future behavior predicting means in the seventh invention of the present invention.
  • 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 S25 is sequentially performed on instantaneous values such as the desired body posture at predetermined time intervals until the current time force is also at the end of the second turning gait. That is, if the determination result in S25 is OK for each instantaneous value, it is determined in S27 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 in S27 is NO, the determination process in S25 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 object motion trajectory (position trajectory) in the interval ⁇ T2 is changed to the corrected trajectory shown in graph g5.
  • This modified trajectory g5 is determined so as to be smoothly connected 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.
  • the shift amount ⁇ ⁇ at time t2 is adjusted so that there is no interference between the upper body 3 of the robot 1 and the object 120 (in S25). It is decided so that the judgment result is OK.
  • the corresponding time to be the judgment result force SNG of S25 is used instead of correcting the target object motion trajectory as explained in the case of correcting the target object motion trajectory. It may be possible to correct the planned landing position / posture of the free leg foot 22 in the gait including it. For example, if interference occurs at time t2 as shown in FIG. 16, the planned landing position / posture for the gait including that time t2 is adjusted to a position / posture away from the object 120 in the X-axis direction. Correct it. Alternatively, correct both the target object motion trajectory and the planned landing position / posture.
  • 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 force moment is calculated based on the target reaction moment moment trajectory parameter. A value is calculated.
  • the target body posture is, for example, a vertical posture.
  • the target body posture may be changed without having to maintain the vertical posture.
  • the simplified robot model be a dynamic model that takes into account the change in the angular momentum of the robot 3 due to the change in the posture 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.
  • the target body position / posture obtained in S31 is further corrected by the process of S39 described later.
  • the process proceeds to S33, and based on 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 position of the target object 120 is estimated.
  • the final corrected target hand position is obtained by the arm main control device 106 described later, and corresponds to a command value for the actual hand position of the robot 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 estimate the actual object position from the detected values.
  • FIG. 17 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 S03, 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 partially different from that shown in Fig. 9, in the following explanation, the object dynamic model in Fig. 17 is different from the object dynamic model in Fig. 9. To distinguish, object dynamics model 2 and!
  • the basic structure of this object dynamic model 2 is the same as that of the object dynamic model shown in Fig. 9, and the force acting on the object 120 (more specifically, the translational force in the horizontal direction) is input.
  • the input value the value obtained by the multiplier 242 described later
  • the inverse 1ZM of the mass M of the object 120 by the multiplier 244
  • the motion acceleration of the object 120 is obtained.
  • 250 for sequential integration (double integration).
  • the integrator 250 adds the model speed manipulated variable in addition to the output of the integrator 246 (integral value of motion acceleration). It is designed to be input automatically.
  • This model speed manipulated variable is a speed manipulated variable determined by the feedback control law so that the deviation between the actual object position and the target object position approaches 0 by the model speed manipulated variable determining unit 252.
  • the form is determined by the following equation 17.
  • the model speed manipulated variable is determined by the PI position law (proportional integral control law) as well as the object position deviation force.
  • Kel and Ke2 are predetermined gains.
  • the model speed manipulated variable determining unit 252 in FIG. 17 is an arithmetic processing unit that performs the calculation of the right side of Equation 17. That is, 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).
  • 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. Even in this case, the output of the object dynamic model 2 (the output of the integrator 250) is the same as that of FIG.
  • 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 target object motion trajectory (the target when the judgment result in S27 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.
  • the required value of the translational force input to the object dynamic model 2 is the same as that in FIG. 9, 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).
  • the object model speed in this case is the output of the adder 248 as described above. Therefore, unlike the one in Fig. 9, the model speed manipulated variable is taken into account.
  • 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 inverting the sign of the required value of the translational force obtained as described above is obtained as an instantaneous value of the target object reaction force. Further, the required value of the translational force is input to the multiplication unit 244 of the object dynamics model 2, and 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 part denoted by reference numeral 264 in Fig. 17 is an estimated disturbance force determining unit that performs processing for obtaining the estimated disturbance force.
  • the estimated disturbance force determination unit 264 receives the object model speed and the required value of the translational force.
  • 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
  • Tc is a predetermined time constant.
  • the estimated value calculated by the conversion unit 266 is obtained by adding the first order of the time constant Tc to 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. It follows with a delay. Further, the estimated value of the translational force is also subtracted by the subtraction unit 268 from the required value of the translational force that is the output of the multiplication unit 242 to calculate the instantaneous value of the estimated disturbance force. The instantaneous value of the estimated disturbance force obtained here is used in the calculation process of S02 (see Fig. 9) as described above.
  • the estimated disturbance force determining unit 264 corresponds to the object disturbance force estimating means in the eighth invention of the present invention.
  • 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 process proceeds to S37, and 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 S35.
  • 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. [0201]
  • 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 the 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 S37 is a gait in which the horizontal component of the floor reaction force moment 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, the dynamic accuracy is not necessarily high. Absent. 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 S39 after the process of S37.
  • 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, for example, in exactly the same way as described in Japanese Patent Laid-Open No. 2002-326173 previously proposed by the applicant of the present application. 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 processing of S31 to S39 corresponds to the current time gait instantaneous value determining means in the first and second inventions of the present invention.
  • 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).
  • Object 1 When an unexpected external force other than robot 1 is applied to 20, there is a difference between 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). growing.
  • 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 current movement plan (before modification) is a dredging plan when the object 120 is moved in the positive direction of the X axis at a constant speed.
  • movement plan before correction based on the movement plan before correction (hereinafter referred to as movement plan before correction), the target object position trajectory of the target object motion trajectory (time series of instantaneous values) calculated in S35 as described above. Is almost orbital as shown by graph g6 in Fig. 18 (a).
  • the target object 120 stops at time tl due to the pulling force of the actual target object 120 on the floor step (convex part) that is not expected in the pre-correction movement plan.
  • the trajectory of the actual object position (the time series of the actual object position estimated in S33) is a trajectory as shown by the graph g7 in FIG. 18 (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 S35 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. 18 (a)
  • the object position deviation as shown by the graph g8 in FIG. 18 (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 the moving speed of the object 120 until it 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 process of correcting the movement plan in S01 as described above corresponds to the process of correcting the movement plan in the ninth aspect of the present invention.
  • 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.
  • this object reaction force balance control apparatus 102 corresponds to the gait instantaneous value correcting means in the tenth aspect of the present invention.
  • 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 of the target gait In-control device 106 is input to the arm main control device 106 from the object reaction force balance control device 102.
  • the arm main controller 106 controls the joint actuator (electric motor) 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 a final corrected target hand position / posture.
  • the arm main controller 106 then moves the arms 5 and 5 so that the actual joint displacement follows the target joint displacement of the arms 5 and 5 determined from the final corrected target hand position and posture and the corrected target body position and posture. , 5
  • the joint actuator is controlled (the motor drive command for each arm 5 is output to each joint actuator).
  • leg main control device 104 and the arm main control device 106 correspond to the control means in the ninth invention of the present invention.
  • FIG. 19 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.
  • perturbation dynamics described later A deviation between the total center of gravity position model perturbation amount, which is a perturbation amount of the total center of gravity of the robot 1 on the perturbation dynamics model calculated by the model, and the target center of gravity position perturbation amount is calculated by the subtractor 274.
  • This deviation force is also calculated by the feedback control law 276, for example, the PD control law, to compensate the total reaction force moment for the object reaction force balance control, which is the moment manipulated variable around the target ZMP to converge the deviation to zero.
  • 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 perturbation of the moment around the target ZMP by the following equation 18.
  • Equation 18 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.
  • 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 body position perturbation amount output from the perturbation dynamics model 280 in this way is added to the target body position / posture (output of the gait generator 100).
  • the corrected target body position / posture is calculated.
  • the current time's gait is generated so that the current time's gait converges to the normal gait while considering the object reaction force.
  • the future object reaction force object reaction force of the second step
  • the operation of pushing the object 120 by the robot 1 is performed in the next gait following the current gait.
  • the robot 1 performs an action of accelerating the upper body 3 against the object 120 in the current time's gait. Then, the next time the gait also starts to push the object 120.
  • the object 120 is started to be pushed with an inertial force that causes the center of gravity of the robot 1 to be directed toward the object 120. For this reason, in order to start the operation of pushing the object 120, it is possible to secure a margin of stability without greatly shifting the foot position / posture of the robot 1 this time gait (the ZMP correction amount can be reduced).
  • the second embodiment is an embodiment of the first to third inventions, the fifth invention, and the seventh to tenth inventions of the present invention.
  • the second embodiment is different from the first embodiment only in the process of correcting the movement plan (the process corresponding to the eighth invention of the present invention) in S01 of FIG.
  • the situation where the deviation between the actual object motion trajectory and the target object motion trajectory based on the movement plan becomes large is the force acting on the actual object 120 other than the force acting on the robot 1. Occurs when the disturbance force of the is relatively large.
  • the movement plan is corrected according to a change in the estimated disturbance force.
  • the rest is the same as the first embodiment.
  • the estimated disturbance force (X-axis direction component) calculated in S35 is shown in FIG.
  • the object 120 suddenly increases in the negative direction after the time tl when the object 120 is applied to the step. Therefore, in the second embodiment, when this estimated disturbance force changes by a predetermined value or more (time t5 in FIG. 20 (a)), the movement plan before correction as described in the first embodiment with respect to FIG. Correct the movement plan to determine the revised movement plan.
  • the estimated disturbance force (X-axis direction component) calculated in S35 is determined by the object 120 as shown in Fig. 20 (b). After time t3 after overcoming the step, it returns to the same value as the original value before time tl. Therefore, when this estimated disturbance force changes more than a predetermined value and then returns to a value close to the original value (time t6 in FIG. 20 (b)), FIG. 18 (b) is explained in the first embodiment. As such, the revised movement plan is revised and the revised movement plan is determined.
  • the force designed to correct the movement plan according to the change of the estimated disturbance force The detected value force of the 6-axis force sensor 52 of both arms 5 and 5 The actual object to be grasped If the deviation between the object reaction force and the target object reaction force determined in S35 becomes larger than the predetermined value, the movement plan may be corrected. [0244]
  • This third embodiment is an embodiment of the first, second, fourth, and sixth to ninth inventions of the present invention.
  • FIG. 21 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 in the third embodiment. As shown in FIG. 21, the third embodiment is different from the first embodiment only in the processing in the case where the determination result power SNO is S19.
  • the force that corrects the target object reaction force trajectory In the third embodiment, instead of this, in S 21 ′ Correct the landing position / posture or scheduled landing time of the free leg foot 22.
  • 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 performed again after the correction (at least the planned landing position / posture or landing). It is corrected (to be smaller than the ZMP correction amount obtained before the scheduled time is corrected). After the correction, the processing from S07 is executed again. The rest is the same as the first embodiment.
  • the target object reaction force trajectory as shown in FIG. 23 (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 by the process of S17 becomes relatively large as shown by the solid line in FIG. 23 (b), for example, and the determination result of S19 is NO. It may be.
  • the planned landing position / posture of the free leg foot 22 in the next gait is indicated by the broken line in FIG. Correct it so that it is closer with.
  • 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 process 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. 23 (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 foot position of the free leg 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 planned landing time of the free leg foot 22 of at least one of the current time gait and the next time gait is corrected. May be.
  • the scheduled landing time of the next gait may be delayed.
  • the third embodiment of the present invention is the same operational effects as in the first embodiment can be achieved.
  • the planned landing position / posture or 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 present invention can also be applied to the case where the object 120 is lifted and moved. Furthermore, when the robot 1 is moved in an environment in which the robot 1 is subjected to an external force without being in direct contact with an object due to electromagnetic force or a fluid such as airflow. The present invention can also be applied.
  • the present invention ensures the continuous stability of the robot in an environment where an external force is applied to the robot as appropriate, such as when the robot moves an object. This is useful for generating a gait that can be maintained.
  • 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 diagram showing an example of a movement plan determined in S02 of FIG.
  • FIG. 9 is a block diagram showing processing of S02 in FIG.
  • FIG. 10 (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. 11 is a diagram showing an example of foot trajectory parameters determined in S 11 of FIG.
  • Fig. 12 shows an example of the object floor reaction force moment trajectory of the current time's gait
  • Fig. 12 (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. 13 is a diagram showing an example of a robot dynamics model used in the embodiment.
  • FIG. 14 is a block diagram showing a process for obtaining a body position using the robot dynamic model of FIG.
  • FIGS. 15A and 15B are diagrams for explaining the processing of S21 in FIG.
  • FIG. 16 is a diagram for explaining the processing of S29 in FIG.
  • FIG. 17 is a block diagram showing the process of S35 of FIG.
  • FIGS. 18 (a) and 18 (b) are diagrams for explaining the process of correcting the SOI movement plan in FIG.
  • FIG. 19 is a block diagram showing processing of the object reaction force balance control device shown in FIG.
  • ⁇ 20 A diagram for explaining the movement plan correction processing of S01 (FIG. 5) in the second embodiment of the present invention.
  • ⁇ 21 A flow chart showing the main processing of the gait generator in the third embodiment of the present invention.
  • FIG. 22 is a diagram for explaining the processing of S21 ′ in FIG.
  • FIGS. 23 (a) and 23 (b) are diagrams for explaining the processing of S21 ′ in FIG.

Abstract

 ロボット1に作用する外力の目標軌道を決定する手段と、外力の目標軌道などを基に所定期間分の目標歩容(今回歩容)のパラメータを決定する手段と、外力の目標軌道などを基に今回歩容に続く仮想的な周期的歩容のパラメータを決定する手段と、今回歩容のロボット1の上体運動軌道が周期的歩容の上体運動軌道に収束するように今回歩容パラメータを修正する手段と、修正した今回歩容パラメータを基に、今回歩容の瞬時値を逐次決定する手段とを備える。これにより、ロボットに外力が適宜作用する環境下で、その外力が急激に変化するような場合であってもロボットの継続的な安定性を確保できる目標歩容を生成する。

Description

明 細 書
脚式移動ロボットの歩容生成装置および制御装置
技術分野
[0001] 本発明は、脚式移動ロボットに床反力以外の外力が適宜作用する状態でのロボット の歩容を生成する歩容生成装置とロボットの動作制御を行なう制御装置とに関する。 背景技術
[0002] 2足移動ロボットなどの脚式移動ロボットによりある対象物を押すなどの作業を行な う場合には、ロボットはその脚体の先端部が接触する床力も床反力を受けるだけでな ぐ対象物力も反力を受ける。このようにロボットに外部環境力も作用する、床反カ以 外の力を本明細書では外力という。特に対象物力 ロボットが受ける外力(反力)を対 象物反力という。なお、外力には重力は含まれないものとする。
[0003] 脚式移動ロボットに外力が作用する状態でロボットの歩容を生成したり、動作制御 を行なう技術としては、例えば本願発明者による特開平 10— 230485号公報 (以下、 特許文献 1という)に見られるものが知られている。この技術は、ロボットの運動により 発生する慣性力と、ロボットに作用する重力および外力との合力が目標 ZMP (目標 床反力中心点)まわりに発生するモーメントの鉛直成分を除く成分 (水平成分)が 0に なる(目標床反力中心点に作用する床反力と上記合力とが釣り合う)という動力学的 平衡条件を満たすように、目標歩容を生成するものである。さらに、この技術では、口 ボットに作用する外力が予期しない外力になっても(目標外力と実外力との偏差があ る程度大きくなつても)、ロボットの重心位置がロボットの動バランスを保ち得るような 重心位置に平衡するようにロボットの目標歩容を調整するようにして!/、る。
[0004] 一方、ロボットの目標歩容をリアルタイムに生成する技術として、本出願人が先に提 案した PCT国際公開公報 WOZ02Z40224A1 (以下、特許文献 2という)に見られる 技術も知られている。この技術は、目標歩容の上体位置姿勢を、仮想的な周期歩容 である定常旋回歩容の上体位置姿勢に収束させるように生成することで、ロボットの 継続的な安定性を確保しつつ(ロボットの運動状態の発散を防止しつつ)、リアルタイ ムにロボットの目標歩容を生成するようにしたものである。 [0005] 前記特許文献 1に見られる技術では、基本的な目標歩容は、単に、前記した動力 学的平衡条件が満たされるように生成される。このため、予期しない外力変化に対し て、基本的な目標歩容が、本来の動力学的平衡条件を満たす歩容に対して大きくず れる場合がある。そして、そのような場合には、重心位置を平衡させるようにロボットの 上体位置姿勢を調整しても、即座にはロボットの動バランスを確保することができず に、ロボットの継続的な運動を安定に行なうことができなくなる恐れがあった。また、あ る対象物にロボットが接触していない状態から、ロボットがその腕体などを対象物に 接触させて該対象物を移動させる作業を開始する際などのように外力変化が急激に 生じる場合にも、上記と同様に、ロボットの継続的な運動を安定に行なうことができな くなる恐れがあった。
[0006] また、特許文献 2に見られる技術では、外力が考慮されておらず、外力がロボットに 作用する環境下では、ロボットの継続的な安定性を確保できる目標歩容を生成する ことができな 、ものとなって!/、た。
[0007] 本発明は力かる背景に鑑みてなされたものであり、ロボットによりある対象物を移動 させる場合に該ロボットに対象物から作用する反力など、ロボットに外力が適宜作用 する環境下で、その外力が急激に変化するような場合であってもロボットの継続的な 安定性を確保できる目標歩容を生成できる歩容生成装置および制御装置を提供す ることを目的とする。さらには、その外力が必ずしも予想通りにならならないような場合 でも、ロボットの継続的な安定性を確保できる目標歩容を生成できる歩容生成装置 および制御装置を提供することを目的とする。
発明の開示
[0008] 本発明の脚式移動ロボットの歩容生成装置の第 1発明は、かかる目的を達成する ために、
上体から延設された複数の脚体を備える脚式移動ロボットの歩容生成装置におい て、
前記ロボットに作用させる床反力以外の外力の目標軌道を仮決定する外力軌道仮 決定手段と、
少なくともロボットの脚体の運動に関する要求と前記仮決定された外力の目標軌道 とを基に、新たに作成しょうとする所定期間分のロボットの目標歩容である今回歩容 における脚体の運動軌道とロボットに作用させるべき床反力および外力の軌道とを規 定するパラメータを少なくとも含む今回歩容パラメータを仮決定する今回歩容パラメ ータ仮決定手段と、
少なくとも前記要求と前記仮決定された外力の目標軌道とを基に、前記今回歩容 に続く仮想的な周期的歩容における脚体の運動軌道とロボットに作用させるべき床 反力および外力の軌道とを規定するパラメータを少なくとも含む周期的歩容パラメ一 タを決定する周期的歩容パラメータ決定手段と、
前記ロボットに作用する床反力および外力とロボットの運動との関係を表すロボット 動力学モデルと前記今回歩容パラメータとに基づいて求められる該ロボットの上体の 運動軌道が、該動力学モデルと前記周期的歩容パラメータとに基づいて求められる 該ロボットの上体の運動軌道に収束するという条件を満足するように、前記仮決定さ れた今回歩容パラメータのうちの少なくとも 1つのパラメータを修正して今回歩容パラ メータを決定するパラメータ修正手段と、
少なくとも前記修正された今回歩容パラメータに基づいて前記今回歩容の瞬時値 を逐次決定する今回歩容瞬時値決定手段とを備えたことを特徴とする。
力かる第 1発明によれば、今回歩容パラメータは、これと前記ロボット動力学モデル とに基づいて求められるロボットの上体の運動軌道が、該動力学モデルと前記周期 的歩容パラメータとに基づいて求められるロボットの上体の運動軌道に収束するとい う条件を満足するように決定される。周期的歩容は、 1周期分の同じ形態のロボットの 運動を繰り返す歩容であるから、ロボットの運動の継続的な安定性を保証し得る歩容 である。そして、この場合、周期的歩容パラメータには、その周期的歩容における外 力の軌道を規定するパラメータが含まれる。このため、今回歩容に続く将来の外力の 変化を考慮して、今回歩容パラメータを決定できる。その結果、この決定された今回 歩容パラメータに基づいて今回歩容の瞬時値を決定したとき、将来の外力変化を加 味した今回歩容の瞬時値の時系列(より詳しくは、将来の外力変化によってもロボット の継続的な運動を行 、得るような今回歩容の瞬時値の時系列)を生成することができ る。 [0010] 従って、第 1発明によれば、ロボットに外力が適宜作用する環境下で、その外力が 急激に変化するような場合であってもロボットの継続的な安定性を確保できる目標歩 容を生成できる。
[0011] なお、第 1発明では、外力は、ロボットに直接的に接触するなんらかの対象物から 該ロボットに作用する反力に限られるものではなぐ電磁力や空気流などによる力で あってもよい。
[0012] また、本発明の歩容生成装置の第 2発明は、上体から延設された複数の脚体を備 える脚式移動ロボットに対象物を移動させる作業を行わせるための該ロボットの歩容 を生成する装置において、
少なくとも前記対象物の移動計画を基に、前記対象物力 ロボットに作用する反力 としての外力の目標軌道と前記対象物の目標運動軌道とを仮決定する対象物軌道 仮決定手段と、
少なくとも前記仮決定された対象物の目標運動軌道と外力の目標軌道とを基に、 新たに作成しょうとする所定期間分のロボットの目標歩容である今回歩容における脚 体の運動軌道とロボットに作用させるべき床反力および外力の軌道とを規定するパラ メータを少なくとも含む今回歩容パラメータを仮決定する今回歩容パラメータ仮決定 手段と、
少なくとも前記仮決定された対象物の目標運動軌道と外力の目標軌道とを基に、 前記今回歩容に続く仮想的な周期的歩容における脚体の運動軌道とロボットに作用 させるべき床反力および外力の軌道とを規定するパラメータを少なくとも含む周期的 歩容パラメータを決定する周期的歩容パラメータ決定手段と、
前記ロボットに作用する床反力および外力とロボットの運動との関係を表すロボット 動力学モデルと前記今回歩容パラメータとに基づいて求められる該ロボットの上体の 運動軌道が、該ロボット動力学モデルと前記周期的歩容パラメータとに基づいて求め られる該ロボットの上体の運動軌道に収束するという条件を満足するように、前記仮 決定された今回歩容パラメータのうちの少なくとも 1つのパラメータを修正して今回歩 容パラメータを決定するパラメータ修正手段と、
少なくとも前記修正された今回歩容パラメータに基づいて前記今回歩容の瞬時値 を逐次決定する今回歩容瞬時値決定手段とを備えたことを特徴とする。
[0013] 力かる第 2発明によれば、今回歩容パラメータは、第 1発明と同様に、これと前記口 ボット動力学モデルとに基づいて求められるロボットの上体の運動軌道力 該動力学 モデルと前記周期的歩容パラメータとに基づいて求められるロボットの上体の運動軌 道に収束するという条件を満足するように決定される。そして、この場合、周期的歩容 ノ メータには、その周期的歩容における外力(対象物力もロボットが受ける反力)の 軌道を規定するパラメータが含まれる。このため、第 1発明と同様に、今回歩容に続く 将来の外力(対象物力 ロボットが受ける反力)の変化を考慮して、今回歩容パラメ一 タを決定できる。その結果、この決定された今回歩容パラメータに基づいて今回歩容 の瞬時値を決定したとき、将来の外力変化を加味した今回歩容の瞬時値の時系列( より詳しくは、将来の外力変化によってもロボットの継続的な運動を行い得るような今 回歩容の瞬時値の時系列)を生成することができる。
[0014] 従って、第 2発明によれば、ロボットに対象物から反力が作用する場合に、その反 力が急激に変化するような場合であってもロボットの継続的な安定性を確保できる目 標歩容を生成できる。
[0015] かかる第 1発明および第 2発明では、前記パラメータ修正手段が修正対象とするパ ラメータは、例えば前記今回歩容パラメータのうち、少なくとも前記床反力の軌道を規 定するパラメータを含む。そして、この場合、該パラメータ修正手段は、前記仮決定さ れた今回歩容パラメータのうち、前記床反力の軌道を規定するパラメータを前記条件 を満足するように修正したときの該パラメータの修正量が所定量を超えるとき、該修正 量を小さくしつつ前記条件を満足するように、前記仮決定された今回歩容パラメータ のうちの少なくとも前記外力の軌道を規定するパラメータを修正する手段を備えること が好ましい (第 3発明)。
[0016] 今回歩容パラメータのうち、床反力の軌道を規定するパラメータ (例えば床反力の 作用点の軌道を規定するパラメータ)を修正対象とすることで、多くの場合、前記条 件を満足するように今回歩容パラメータを決定できる。但し、床反力の軌道を適切な 軌道から大きくずらすと、ロボットの ZMPがロボットの安定性を余裕もって確保し得る 領域力も逸脱する場合がある。ここで、 ZMPは、ロボットの運動によって発生する慣 性力と、ロボットに作用する床反力以外の力(すなわち、重力と前記外力)との合力が
、その点まわりに発生するモーメントの水平成分が 0になるような床上の点である。
[0017] そこで、第 3発明では、今回歩容における床反力の軌道を規定するバタメータの修 正量が所定量を超えるときには、該修正量を小さくしつつ前記条件を満足するように 、前記仮決定された今回歩容パラメータのうちの少なくとも前記外力の軌道を規定す るパラメータを修正する。このようにすることで、床反力の軌道を規定するパラメータの 適切な修正が困難であるときでも、前記条件を満足するように今回歩容パラメータを 修正できる。また、外力の軌道を規定するパラメータを修正することで、今回歩容の 脚体運動を規定するパラメータのような今回歩容パラメータのうちの運動パラメータを 修正することなぐ外力を調整することによって、前記条件を満足するように今回歩容 の瞬時値が決定されることとなる。従って、ロボットの脚体の運動などを即座には調整 することができな 、ような状況 (例えば脚体の着地直前など)であっても、ロボットの継 続的な安定性を確保できる今回歩容の瞬時値の時系列を生成できると共に、外力を 利用して、ロボットの急加速や急減速を行なうことができる。
[0018] 上記のように前記パラメータ修正手段が修正対象とするパラメータが、前記今回歩 容パラメータのうち、少なくとも前記床反力の軌道を規定するパラメータを含む場合に おいて、該パラメータ修正手段は、前記仮決定された今回歩容パラメータのうち、前 記床反力の軌道を規定するパラメータを前記条件を満足するように修正したときの該 ノ メータの修正量が所定量を超えるとき、該修正量を小さくしつつ前記条件を満足 するように、前記仮決定された今回歩容パラメータのうちの少なくとも前記脚体の運 動軌道を規定するパラメータを修正する手段を備えるようにしてもょ ヽ (第 4発明)。
[0019] このように脚体の運動軌道を規定するパラメータを修正するようにしても、床反力の 軌道を規定するパラメータの適切な修正が困難である場合に、前記条件を満足する ように今回歩容パラメータを修正できる。
[0020] 上記第 3および第 4発明では、それぞれ、前記床反力の軌道を規定するパラメータ は、ロボットの目標 ZMPの軌道を規定するパラメータであることが好適である(第 5発 明、第 6発明)。
[0021] この第 5発明および第 6発明によれば、前記パラメータ修正手段が修正対象とする パラメータは、目標 ZMPを含むので、ロボットの脚体のうちの接地している個数によら ずに、ロボットの安定性の余裕を確保し得る今回歩容パラメータを決定できる。
[0022] また、前記対象物からロボットが反力を受ける前記第 2発明では、前記対象物軌道 仮決定手段は、前記対象物の運動と該対象物に作用する力との関係を表わす対象 物動力学モデルと前記移動計画とを基に前記対象物の目標運動軌道と前記外力の 目標軌道とを仮決定する手段であり、前記パラメータ修正手段は、少なくとも前記パ ラメータ修正手段により修正された今回歩容パラメータと前記周期的歩容パラメータ と、前記ロボット動力学モデルとを基に前記ロボットの将来の運動を予測するロボット 将来挙動予測手段と、前記予測されたロボットの将来の運動と、前記仮決定された前 記対象物の目標運動軌道とを基に、該ロボットと対象物とが所定の幾何学的制約条 件を満たしている力否かを判断し、満たしていない場合には前記対象物の目標運動 軌道と前記修正された今回歩容パラメータのうちの脚体の運動軌道を規定するパラ メータとのうちの少なくともいずれか一方を修正して今回パラメータを決定する手段と を備えることが好まし 、 (第 7発明)。
[0023] この第 7発明では、修正された今回歩容パラメータと周期的歩容パラメータとロボッ ト動力学モデルとを基に前記ロボットの将来の運動を予測し、その予測されたロボット の将来の運動と、対象物の目標運動軌道とを基に、該ロボットと対象物とが所定の幾 何学的制約条件を満たして 、るか否か、例えば将来のある時点でロボットと対象物と が干渉する事態が発生するか否か、ロボットと対象物とが近づき過ぎて、ロボットの対 象物に係合させる部位 (腕体など)の関節の回転角が過剰になる力否かなどの幾何 学的制約条件が満たされているか否かが判断される。そして、幾何学的制約条件が 満たされていない場合には、対象物の目標運動軌道と修正された今回歩容パラメ一 タのうちの脚体の運動軌道を規定するパラメータとのうちの少なくともいずれか一方を 修正して今回パラメータを決定する。これにより、ロボットと対象物との適正な位置関 係 (前記幾何学的制約条件が満たされるような位置関係)が将来的に保たれるように 今回歩容パラメータを決定できると共に、適正な位置関係が保たれない恐れがある 場合には、事前にそれを解消し得る適切な今回歩容パラメータを決定できるので、口 ボットの継続的な運動を中断したりすることなく円滑に行なうことができる。 [0024] なお、この第 7発明は、前記第 3〜第 6発明と複合させてもよい。
[0025] また、前記第 2発明では、前記対象物に作用する力のうち、前記今回歩容瞬時値 に応じて動作している前記ロボットから前記対象物に作用する力以外の外乱力を推 定する対象物外乱力推定手段を備え、前記対象物軌道仮決定手段は、前記対象物 の運動と該対象物に作用する力との関係を表す対象物動力学モデルと前記移動計 画と前記推定された外乱力とを基に前記対象物の目標運動軌道と前記外力の目標 軌道とを仮決定する手段であることが好適である(第 8発明)。
[0026] この第 8発明によれば、前記外乱力(例えば、移動計画で想定されていない、対象 物に作用する摩擦力もしくは制動力や、床の傾斜面で対象物に作用する重力の傾 斜面方向成分など)を推定し、その外乱力を考慮して、対象物動力学モデルを用い て対象物の目標運動軌道と外力の目標軌道とを仮決定する。このため、対象物から ロボットに作用する外力(反力)が必ずしも予想通りにならないような場合であっても、 実際の環境に則して対象物の目標運動軌道と外力の目標軌道とを仮決定できる。こ れらの目標運動軌道と外力の目標軌道とを基に、その結果、ロボットに作用する外力 (反力)が必ずしも予想通りにならな!、ような場合であってもロボットの継続的な安定 性を確保できる目標歩容を生成できる。
[0027] なお、この第 8発明は、前記第 3〜第 7発明と複合させてもよい。
[0028] かかる第 8発明では、前記対象物軌道仮決定手段は、前記移動計画に対応する対 象物の運動軌道と前記仮決定した対象物の目標運動軌道との間の差と、前記推定 された外乱力とのうちの少なくともいずれか一方に基づき、前記移動計画を修正する 手段を備えることが好適である(第 9発明)。
[0029] すなわち、外乱力が変化すると、前記移動計画に対応する対象物の運動軌道と前 記仮決定した対象物の目標運動軌道との間のずれが発生し、そのずれがある程度 大きくなると、対象物を当初の移動計画に則して移動させるためのロボットの挙動変 化が過大になる恐れがある。そこで、第 9発明では、前記移動計画に対応する対象 物の運動軌道と前記仮決定した対象物の目標運動軌道との間の差と、前記推定さ れた外乱力とのうちの少なくともいずれか一方に基づき、前記移動計画を修正する。 このようにすることで、ロボットの過大の挙動変化を避けつつ、ロボットの安定性の高 い運動を継続することができる。また、移動計画を実際の環境に則した適切な計画に 修正することができる。
[0030] 次に、本発明の脚式移動ロボットの制御装置 (第 10発明)は、前記第 1〜第 9発明 のいずれかの脚式移動ロボットの歩容生成装置により生成された今回歩容瞬時値に 応じて該ロボットの動作を制御する制御装置において、
前記ロボットに作用する実床反力以外の実外力と、前記今回歩容瞬時値のうちの 前記外力の瞬時値との偏差に応じて、該偏差を 0に近づけるように、前記ロボットの 今回歩容の瞬時値のうちの前記ロボットの目標運動と目標床反力とのうちの少なくと も!ヽずれか一方を修正する歩容瞬時値修正手段と、その修正された今回歩容の瞬 時値に追従するように該ロボットの動作を制御する制御手段とを備えたことを特徴と するものである。
[0031] 力かる第 10発明によれば、実外力(実際の外力)と今回歩容における外力の瞬時 値 (すなわち目標外力の瞬時値)との偏差を 0に近づけるように今回歩容の瞬時値の うちの前記ロボットの目標運動と目標床反力とのうちの少なくともいずれか一方を修 正するので、今回歩容の瞬時値を生成する上で想定した外力(目標外力)と実外力 との偏差が大きくなつたような場合であっても、ロボットの安定性を保つように、ロボット の動作制御を行なうことができる。従って、ロボットの実際の動作に際しての継続的な 安定性を高めることができる。なお、実外力は、力センサを用いて検出するようにす ればよい。
発明を実施するための最良の形態
[0032] 以下、添付図面を参照して本発明の実施形態に係る脚式移動ロボットの歩容生成 装置および制御装置を説明する。尚、脚式移動ロボットとしては 2足移動ロボットを例 にとる。
[0033] 図 1は、この実施形態に係る脚式移動ロボットとしての 2足移動ロボットを全体的に 示す概略図である。
[0034] 図示の如ぐ 2足移動ロボット(以下、ロボットという) 1は上体 (ロボット 1の基体) 3から 下方に延設された左右一対の脚体 (脚部リンク) 2, 2を備える。両脚体 2, 2は同一構 造であり、それぞれ 6個の関節を備える。その 6個の関節は上体 3側力 順に、股 (腰 部)の回旋(回転)用(上体 3に対するョー方向の回転用)の関節 10R, 10L (符号 R, Lはそれぞれ右側脚体、左側脚体に対応するものであることを意味する符号である。 以下同じ)と、股 (腰部)のロール方向 (X軸まわり)の回転用の関節 12R, 12Lと、股( 腰部)のピッチ方向(Y軸まわり)の回転用の関節 14R, 14Lと、膝部のピッチ方向の 回転用の関節 16R, 16Lと、足首のピッチ方向の回転用の関節 18R, 18Lと、足首 のロール方向の回転用の関節 20R, 20Lと力も構成される。
[0035] 各脚体 2の足首の 2つの関節 18R (L) , 20R(L)の下部には、各脚体 2の先端部を 構成する足平 (足部) 22R (L)が取着されると共に、両脚体 2, 2の最上位には、各脚 体 2の股の 3つの関節 10R(L) , 12R (L) , 14R(L)を介して前記上体 3が取り付けら れている。上体 3の内部には、詳細を後述する制御ユニット 60などが格納される。な お、図 1では図示の便宜上、制御ユニット 60を上体 3の外部に記載している。
[0036] 上記構成の各脚体 2においては、股関節(あるいは腰関節)は関節 10R (L) , 12R
(L) , 14R(L)から構成され、膝関節は関節 16R(L)から構成され、足首関節は関節 18R(L) , 20R(L)から構成される。また股関節と膝関節とは大腿リンク 24R(L)で連 結され、膝関節と足首関節とは下腿リンク 26R (L)で連結される。
[0037] 上体 3の上部の両側部には左右一対の腕体 (腕リンク) 5, 5が取り付けられると共に 、上体 3の上端部には頭部 4が配置される。両腕体 5, 5は同一構造であり、それぞれ 7個の関節を備える。すなわち、各腕体 5は、 3つの関節 30R(L) , 32R (L) , 34R(L )から構成された肩関節と、 1つの関節 36R (L)から構成された肘関節と、 3つの関節 38R(L) , 40R(L) , 42R (L)から構成された手首関節と、この手首関節に連結され た手先部 (ハンド) 40R (L)とを備えている。なお、頭部 4は、本発明の要旨と直接的 な関連を有しな 、ため詳細な説明を省略する。
[0038] 上記の構成により、各脚体 2の足平 22R(L)は、上体 3に対して 6つの自由度を与 えられている。そして、ロボット 1の歩行等の移動中に、両脚体 2, 2を合わせて 6 * 2 = 12個(この明細書で「 *」はスカラに対する演算としては乗算を、ベクトルに対する 演算としては外積を示す)の関節を適宜な角度で駆動することで、両足平 22R, 22L の所望の運動を行うことができる。これにより、ロボット 1は任意に 3次元空間を移動す ることができる。また、各腕体 5は、上体 3に対して 7つの自由度を与えられ、両腕体 5 , 5を合わせて 7 * 2= 14個の関節を適宜な角度で駆動することで、後述する台車を 押すなどの所望の作業を行なうことができる。
[0039] 図 1に示す如ぐ各脚体 2の足首関節 18R (L) , 20R(L)の下方には足平 22R (L) との間に公知の 6軸力センサ 50が介装されている。該 6軸力センサ 50は、各脚体 2 の足平 22R(L)の着地の有無、および各脚体 2に作用する床反力(接地荷重)等を 検出するためのものであり、該床反力の並進力の 3方向成分 Fx, Fy, Fz並びにモー メントの 3方向成分 Mx, My, Mzの検出信号を制御ユニット 60に出力する。この 6軸 力センサ 50と同様の 6軸力センサ 52が、各腕体 5の手先部(ノ、ンド) 40R(L)と手首 関節 38R(L) , 40R(L) , 42R (L)との間に介装され、手先部 40R(L)に作用する外 力の並進力の 3方向成分並びにモーメントの 3方向成分の検出信号が該 6軸力セン サ 52から制御ユニット 60に出力される。また、上体 3には、 Z軸 (鉛直方向(重力方向 ) )に対する上体 3の傾斜角およびその角速度、並びに Z軸回りの上体 3の回転角(ョ 一角)およびその角速度を検出するための姿勢センサ 54が備えられ、その検出信号 が該姿勢センサ 54から制御ユニット 60に出力される。この姿勢センサ 54は、図示を 省略する 3軸方向の加速度センサおよび 3軸方向のジャイロセンサを備え、これらの センサの検出信号が上体 3の姿勢角(傾斜角およびョ一角)およびその角速度を検 出するために用いられると共に、ロボット 1の自己位置姿勢を推定するために用いら れる。また、詳細構造の図示は省略するが、ロボット 1の各関節には、それを駆動する ための電動モータ 64 (図 3参照)と、その電動モータ 64の回転量 (各関節の回転角) を検出するためのエンコーダ(ロータリエンコーダ) 65 (図 3参照)とが設けられ、該ェ ンコーダ 65の検出信号が該エンコーダ 65から制御ユニット 60に出力される。
[0040] なお、図示は省略するが、各足平 22R(L)と 6軸力センサ 50との間には、ばね等の 弾性体が介装され、また、足平 22R(L)の底面には、ゴム等の弾性体が貼り付けられ ている。これらの弾性体は、コンプライアンス機構を構成するものであり、各脚体 2が 床反力を受けたときに弾性変形するようになって 、る。
[0041] 図 2は制御ユニット 60の構成を示すブロック図である。該制御ユニット 60はマイクロ コンピュータにより構成されており、 CPU力もなる第 1の演算装置 90及び第 2の演算 装置 92、 AZD変^^ 80、カウンタ 86、 DZA変^^ 96、 RAM84、 ROM94、並 びにこれらの間のデータ授受を行うバスライン 82を備えている。この制御ユニット 60 では、各脚体 2の 6軸力センサ 50、各腕体 5の 6軸力センサ 52、姿勢センサ 54 (加速 度センサおよびレートジャイロセンサ)等の出力信号は AZD変換器 80でデジタル値 に変換された後、バスライン 82を介して RAM84に送られる。またロボット 1の各関節 のエンコーダ 65 (ロータリーエンコーダ)の出力は、カウンタ 86を介して RAM84に入 力される。
[0042] 前記第 1の演算装置 90は後述の如く目標歩容を生成すると共に、関節角変位指 令 (各関節の変位角もしくは各電動モータ 64の回転角の指令値)を算出し、 RAM8 4に送出する。また、第 2の演算装置 92は RAM84から関節角変位指令と、前記ェン コーダ 65の出力信号に基づいて検出された関節角の実測値とを読み出し、各関節 の駆動に必要な操作量を算出して DZA変換器 96とサーボアンプ 64aとを介して各 関節を駆動する電動モータ 64に出力する。
[0043] 図 3は、本明細書の実施形態に係る脚式移動ロボットの制御装置の機能的構成を 全体的に示すブロック図である。この図 3中の破線で囲んだ部分が制御ユニット 60が 実行する処理機能 (主として第 1の演算装置 90及び第 2の演算装置 92の機能)によ つて構成されるものである。なお、以下の説明では、脚体 2および腕体 5の左右を特 に区別する必要がないときは、前記符号 R, Lを省略する。
[0044] 以下説明すると、制御ユニット 60の機能的構成は、歩容生成装置 100、対象物反 力平衡制御装置 102、脚メイン制御装置 104および腕メイン制御装置 106から構成 されている。この明細書の実施形態では、歩容生成装置 100の処理を除き、対象物 反力平衡制御装置 102、脚メイン制御装置 104および腕メイン制御装置 106の処理 は、本願出願人が先に特開平 10— 230485号公報 (前記特許文献 1)にて提案した ものと同じである。従って、以下の本実施形態の説明では、歩容生成装置 100を中 心に説明し、対象物反力平衡制御装置 102、脚メイン制御装置 104および腕メイン 制御装置 106の説明は概略的な説明に留める。
[0045] 歩容生成装置 100は、ロボット 1の目標歩容を自在かつリアルタイムに生成して出 力するものであり、本願発明の歩容生成装置に相当するものである。この歩容生成 装置 100が出力する目標歩容は、目標上体位置姿勢軌道 (上体 3の目標位置軌道 及び目標姿勢軌道)、目標足平位置姿勢軌道 (各足平 22の目標位置軌道及び目標 姿勢軌道)、目標手先位置姿勢軌道 (各腕体 5の手先部 44の目標位置軌道および 目標姿勢軌道)、目標全床反力中心点軌道 (全床反力中心点の目標位置の軌道)、 目標全床反力軌道、および目標対象物反力軌道から構成される。なお、脚体 2や腕 体 5以外に上体 3に対して可動な部位を備える場合には、その可動部位の目標位置 姿勢軌道が目標歩容に加えられる。以下の説明では、誤解を生じるおそれがない場 合には、しばしば「目標」を省略する。
[0046] ここで、歩容生成装置 100が生成する目標歩容に係る用語の意味および定義につ いて説明しておく。歩容における「軌道」は時間的変化のパターン(時系列パターン) を意味する。
[0047] 足平位置、上体位置など、ロボット 1の各部位の「位置」は、その部位に固定的に設 定されたある代表点の位置を意味する。例えば、本実施形態では、各足平 22の代表 点は、その足平 22を備える脚体 2の足首関節の中心から、該足平 22の底面に延ば した垂線が該底面と交わる点であり、その代表点の位置が足平位置である。また、「 姿勢」は空間的な向きを意味する。具体的には、例えば上体姿勢は Z軸 (鉛直軸)に 対するロール方向(X軸まわり)の上体 3の傾斜角とピッチ方向(Y軸まわり)の上体 3 の傾斜角とョー方向(Z軸まわり)の上体 3の回転角(ョ一角)とで表され、足平姿勢は 各足平 22に固定的に設定された 2軸の空間的な方位角で表される。
[0048] なお、歩容のうちの床反力および対象物反力に係わる構成要素以外の構成要素、 すなわち足平位置姿勢、上体位置姿勢等、ロボット 1の運動に係わる歩容を総称的 に「運動」という。また、運動の軌道は、一定(時間的に変化しない)あるいはほぼ一 定のものであってもよい。例えばロボット 1がその両足平 22, 22を着地させた状態に 維持して、移動しない状態では、足平位置姿勢軌道は一定になる。
[0049] 歩容のうちの対象物反力は、ロボット 1が環境力も受ける、床反力以外の外力を意 味する。従って、目標対象物反力軌道は、本発明における外力の目標軌道に相当 する。本実施形態では、例えば図 4に示すように、ロボット 1がある対象物 120 (図示 の例では台車)の所定の部位に両腕体 5, 5の手先部 44R, 44Lを係合させた状態 で歩行動作を行いながら該対象物 120を押す作業を行なう場合を例にとって説明す る。この場合、ロボット 1が環境力も受ける床反力以外の外力は、ロボット 1が対象物 1 20から受ける反力を意味する。このために本実施形態では、その外力を対象物反力 という。対象物反力は、一般的には、並進力成分とモーメント成分とから構成される。 但し、本実施形態では、対象物反力はロボット 1に対象物 120から作用する並進力を 意味するものとし、その並進力によってロボット 1に作用する、ある点回りのモーメント を対象物反力モーメントと 、う。
[0050] なお、本明細書では、対象物 120の運動に関し、対象物 120の位置はロボット 1の 足平位置などと同様に、対象物 120に固定的に設定された代表点の位置を意味す る。また、対象物 120の姿勢はロボット 1の足平 22の姿勢などと同様に、対象物 120 の空間的な向きを意味する。そして、対象物 120の位置および姿勢を総称的に対象 物運動ということがある。
[0051] また、各足平 22に作用する床反力(並進力及びモーメントからなる床反力)を「各足 平床反力」と呼び、ロボット 1の全て(2つ)の足平 22R, 22Lについての「各足平床反 力」の合力を「全床反力」という。ただし、以下の説明においては、各足平床反力はほ とんど言及しないので、特に断らない限り、「床反力」は「全床反力」と同義として扱う。
[0052] 目標床反力は、一般的には、作用点とその点に作用する並進力及びモーメントに よって表現される。作用点はどこにとっても良いので、同一の目標床反力でも無数の 表現が考えられるが、特に目標床反力中心点 (全床反力の中心点の目標位置)を作 用点にして目標床反力を表現すると、目標床反力のモーメント成分は、鉛直成分 (鉛 直軸 (Z軸)まわりのモーメント)を除いて 0になる。換言すれば、目標床反力中心点ま わりの目標床反力のモーメントの水平成分 (水平軸 (X軸及び Y軸)回りのモーメント) は 0になる。そこで、本実施形態では、目標床反力中心点を目標全床反力の作用点 として、歩容生成装置 100で生成するものとした。なお、目標床反力中心点は、目標 全床反力の作用点としての意味を持つものであるから、本質的には目標全床反力の 1つの構成要素であると言える。但し、本実施形態では、目標床反力のうちの目標床 反力中心点が本発明と密接に関連するものである。そこで、図 4では、目標全床反力 のうちの作用点である目標床反力中心点を目標全床反力とは別に記載するものとし [0053] また、本明細書では、 ZMP(zero moment point)は、ロボットの運動によって生じる 慣性力と該ロボットに作用する重力と対象物反力との合力(あるいはその合力と釣り 合う床反力)がその点まわりに作用するモーメントが、鉛直成分を除いて 0になる点の 意味で使用する。動力学的平衡条件を満足する歩容では、ロボットの目標運動軌道 と重力と目標対象物反力とから算出される ZMPと目標床反力中心点とは一致する。 本明細書では、多くの場合、目標床反力中心点の代わりに、目標 ZMPという。
[0054] また、本明細書では、目標歩容は、所定期間分の目標運動と目標床反力(目標 Z MPを含む)と目標対象物反力との組を意味するものとする。特に、本実施形態では 、目標歩容(単に歩容と称した場合を含む)は、ことわらない限り、ロボット 1の 1歩の 期間分の目標運動と目標床反力(目標 ZMPを含む)と目標対象物反力との組を意 味するものとする。この場合、目標歩容の「1歩」は、ロボット 1の片方の脚体 2が着地 してから、もう一方の脚体 2が着地するまでの意味で使用する。なお、一連の歩容は 、いくつかの歩容 (所定期間分の歩容)がつながったものとする。また、以降の説明で は、 1歩の期間分の目標歩容を単位歩容ということがある。また、ロボット 1が移動しな い状態(両足平 22, 22の接地を維持する状態)での 1歩の期間は、ある所定の期間( ロボット 1が移動する場合の 1歩の期間に相当する期間)を意味する。
[0055] また、歩容における両脚支持期とは、ロボット 1がその自重を両脚体 2, 2で支持す る期間(両脚体 2, 2が支持脚となる期間)、片脚支持期とはいずれか一方のみの脚 体 2でロボット 1の自重を支持する期間(一方のみの脚体 2が支持脚となる期間)を言 う。本実施形態での目標歩容 (単位歩容)は、別の言い方をすれば、両脚支持期の 開始時力も次の片脚支持期の終了時までの期間分の目標歩容である。ロボット 1の 自重を支持する脚体 2を支持脚と呼ぶ。両脚支持期では、両脚体 2, 2が支持脚とな り、片脚支持期では 1つの脚体 2が支持脚となる。また、片脚支持期においてロボット 1の自重を支持しない側の脚体 2 (支持脚でない脚体 2)を遊脚と呼ぶ。なお、以降の 説明では、特にことわならい限り、目標歩容における支持脚は、両脚支持期の開始 時に着地する脚体 2 (該両脚支持期に続く片脚支持期で支持脚となる脚体 2)を意味 するものとする。また、支持脚側の脚体 2の足平 22、遊脚側の脚体 2の足平 22をそ れぞれ支持脚足平 22、遊脚足平 22という。また、ロボット 1が移動しない状態(両足 平 22, 22の接地を維持する状態)であっても、一方の脚体 2が支持脚、他方の脚体 2が遊脚であるとする。
[0056] また、歩容生成装置 100により新たに生成しょうとしている目標歩容(単位歩容)、 あるいは生成しつつある目標歩容(単位歩容)を今回歩容と呼び、この今回歩容の 1 歩前の目標歩容を前回歩容、今回歩容の次の 1歩の目標歩容を次回歩容、さらにそ の次の 1歩の目標歩容を次次回歩容などと呼ぶ。
[0057] なお、目標歩容は、グローバル座標系としての支持脚座標系で記述される。本実施 形態では、支持脚座標系は、支持脚足平 22を水平姿勢 (より一般的には床面に平 行な姿勢)にして該支持脚足平 22の底面のほぼ全面を床面に接触 (密着)させた状 態において、該支持脚の足首関節 18, 20の中心力 床面に延ばした垂線が該床面 と交わる点(この点は、本実施形態の例では支持脚足平 22の底面のほぼ全面を床 面に接触させた状態では、該足平 22の代表点と合致する)を原点とし、その原点を 通る水平面を XY平面とするグローバル座標系(床に固定された座標系)である。この 場合、 X軸方向、 Y軸方向は、それぞれ支持脚足平 22の前後方向、左右方向である 。以降の説明では、 X軸、 Y軸、 Z軸は、特にことわらない限り、この支持脚座標系の 3 軸を意味するものとする。尚、支持脚座標系の原点は、必ずしも支持脚足平 22の底 面のほぼ全面を床面に接触させた状態での該足平 22の代表点に合致する必要は なぐ該代表点と異なる床面上の点に設定されてもよい。
[0058] 以上説明した事項は、以下に説明する第 1実施形態に限らず、本明細書で説明す る各実施形態にぉ 、て共通の事項である。
[0059]
[第 1実施形態]
以下に本発明の第 1実施形態に係る歩容生成装置 100の詳細を説明する。図 5〜 図 7は歩容生成装置 100の処理を示すフローチャートである。なお、この第 1実施形 態は、本発明の第 1〜第 3発明、第 5発明、第 7〜第 10発明の実施形態である。
[0060] 歩容生成装置 100は、図 5〜図 7のフローチャートに示す処理を所定の演算処理 周期で逐次実行する。
[0061] まず、 S01〖こおいて、対象物 120の移動計画が決定される。ここで決定される移動 計画は、少なくとも現在時刻から将来の所定期間分 (ロボット 1の複数歩分)の対象物 120の移動計画を含んでいる。この移動計画は、基本的には対象物 120の移動要 求 (対象物 120をどのようなタイミングでどのように動かすかという設計的な要求)に応 じて決定され、該対象物 120の位置姿勢軌道 (位置および姿勢の時系列)、あるいは 、その軌道を規定するパラメータもしくは関数式等から構成される。例えば対象物 12 0の移動要求が、ある時刻 tOから X軸方向に一定速度で対象物 120を移動させると いう要求である場合には、移動計画は、図 8のグラフ glで示す如く決定される。グラフ glは、移動計画における対象物位置 (X軸方向位置)の経時変化を示している。この 場合、例えば現在時刻以降の各時刻(ある刻み時間毎の時刻)における対象物 120 の位置の時系列を移動計画として決定してもよ!/、が、時刻 tOとグラフ glの傾き (対象 物 120の移動速度)とを移動計画を規定する要素 (パラメータ)として決定したり、ある いはグラフ glの関数式を移動計画を規定する要素 (パラメータ)として決定してもよい 。なお、移動要求は、歩容生成装置 100に外部から適宜与えられ、あるいは、あらか じめ制御ユニット 60の図示しない記憶手段に記憶保持される。
[0062] 補足すると、 S01で決定する移動計画は、必ずしも移動要求通りに決定されるわけ ではなぐ必要に応じて適宜修正される力 これについては後述する。
[0063] 次〖こ S03〖こ進み、上記の如く S01で決定された移動計画を基に、対象物動力学モ デルを用いて目標対象物運動軌道 (目標対象物位置姿勢軌道)と、目標対象物反 力軌道とが仮決定される。
[0064] ここで、この S03の処理と、この処理で使用する対象物動力学モデルとを図 9のブロ ック図を参照して説明する。図 9は、 S03で目標対象物運動軌道のうちの目標対象 物位置軌道と、目標対象物反力軌道とを求める演算処理を示すブロック図である。こ のブロック図中の破線で囲んだ部分が対象物 120に作用する力と対象物 120の運 動との関係を表す対象物動力学モデルとなっている。なお、本実施形態では、理解 の便宜上、対象物 120をほぼ水平な床上で移動させる場合を例に採って説明する。
[0065] 図 9に示す対象物動力学モデルは、対象物 120に作用させる力(より詳しくは水平 方向の並進力)を入力として、対象物 120の位置を出力する動力学モデルである。よ り詳しくは、この対象物動力学モデルは、対象物 120に作用させる水平方向の並進 力の入力値 (後述の加算部 204で求められる値)に、対象物 120の質量 Mの逆数 1 ZMを乗算部 206で乗算することにより対象物 120の運動加速度を求め、これを積 分器 208, 210で順次積分する(2重積分する)ことにより対象物 120の位置 (対象物 動力学モデル上での位置)を出力するものとなっている。つまり、本実施形態では、 図 9に示す対象物動力学モデルは、対象物 120に作用する並進力が、対象物 120 の加速度と質量との積に等しいという運動方程式を基に構成されている。なお、積分 器 208の出力は、対象物動力学モデル上での対象物 120の移動速度を意味してお り、以下、これを対象物モデル速度という。
[0066] 力かる対象物動力学モデルを用いる S03の演算処理を図 9を参照して具体的に説 明する。まず、前記 S01で決定された移動計画に基づく対象物 120の瞬時瞬時の( 各時刻の)目標速度である目標対象物速度と、積分器 208で先に求められた対象物 モデル速度とが減算部 200に入力され、それらの偏差(=目標対象物速度一対象物 モデル速度)が求められる。ここで、目標対象物速度は、移動計画における対象物 1 20の位置軌道の 1階微分値として得られる値、あるいは移動計画の構成要素である 。なお、前記図 8に示した移動計画の例では、グラフ glの傾きをそのまま目標対象物 速度とすればよぐこの場合には、目標対象物速度は継続的に一定値となる。そして 、現在時刻から将来の所定期間分 (ロボット 1の複数歩分)の目標対象物速度の時系 列が減算部 200に順次入力される。また、減算部 200に入力される対象物モデル速 度は、新たに入力する目標対象物速度の 1つ前の目標対象物速度を減算部 200に 入力したときに積分器 208から出力された値である。
[0067] 次いで、上記偏差に所定のゲイン Kvを乗算部 202で乗算することにより、対象物 1 20にロボット 1から作用させるべき並進力の要求値が求められる。つまり、本実施形 態では、該並進力の要求値は、対象物目標速度と対象物モデル速度との偏差が 0に 収束するように(対象物モデル速度が対象物目標速度に追従するように)、フィード ノ ック制御則により決定される。そのフィードバック制御則としては、この例では比例 制御則が使用される。そして、求められた並進力の要求値の符号を反転させたもの の時系列が目標対象物反力軌道として出力される。
[0068] また、求められた並進力の要求値と、対象物 120にロボット 1以外から作用する外乱 力 (床力も対象物 120に作用する摩擦力など)の推定値である推定外乱力とが加算 部 204に入力され、該並進力の要求値と推定外乱力との和が、前記対象物動力学 モデルに対する並進力の入力値として加算部 204により求められる。ここで、推定外 乱力は、歩容生成装置 100の演算処理周期毎に後述の S35の処理で求められるも のであり、加算部 120に入力する推定外乱力としては、歩容生成装置 100の前回の 演算処理周期で求められた値 (前回値)が用いられる。そして、このように求めた並進 力の入力値を対象物動力学モデルに入力することで、前記した如く対象物 120の位 置が求められ、この求めた位置の時系列が積分器 210から目標対象物位置軌道とし て出力される。
[0069] なお、対象物動力学モデルの積分器 208の出力の初期値は、歩容生成装置 100 の前回の演算処理周期で S03の処理を実行して求めた対象物モデル速度の時系 列のうちの、前回の演算処理周期に対応する時刻(前回の演算処理周期での現在 時刻)における値に設定される。また、積分器 210の出力の初期値は、歩容生成装 置 100の前回の演算処理周期で S03の処理を実行して求めた目標対象物位置の時 系列のうちの、前回の演算処理周期に対応する時刻(前回の演算処理周期での現 在時刻)における値に設定される。
[0070] また、目標対象物運動軌道のうちの目標対象物姿勢軌道は、例えば目標対象物 速度の向きにほぼ一致するように決定される。
[0071] 補足すると、移動計画および推定外乱力が一定に維持されている限り、目標対象 物運動軌道や目標対象物反力軌道は一定になるので、 S03の処理は、必ずしも歩 容生成装置 100の演算処理周期毎に行なう必要はない。従って、例えば、 S03の処 理は、ロボット 1の 1歩毎あるいは歩容生成装置 100の演算処理周期の複数周期毎 に行なったり、 S01で移動計画を変更した場合や、推定外乱力が比較的大きく変化 した場合に行なうものとしてもよ!/、。
[0072] 以上説明した S03の処理により、現在時刻から将来の所定期間分の目標対象物運 動軌道と目標対象物反力軌道とが仮決定される。
[0073] 補足すると、 S03の処理は、前記第 1発明における外力軌道仮決定手段、あるいは 前記第 2発明における対象物軌道仮決定手段に相当する。また、図 9に示した対象 物動力学モデルが本発明の第 8発明における対象物動力学モデルに相当する。
[0074] 次いで、 S05〖こ進んで、上記の如く仮決定された目標対象物運動軌道を基に、口 ボット 1の遊脚足平 22の着地予定位置姿勢および着地予定時刻が仮決定される。こ こで仮決定する着地予定位置姿勢および着地予定時刻は、現在、作成しょうとして V、る目標歩容である今回歩容での遊脚足平 22の着地予定位置姿勢および着地予 定時刻を含む、ロボット 1の複数歩分 (少なくとも 2歩分)の遊脚足平 22の着地予定位 置姿勢および着地予定時刻である。すなわち、仮決定する着地予定位置姿勢およ び着地予定時刻は、少なくとも今回歩容の遊脚足平 22の着地予定位置姿勢および 着地予定時刻と、次回歩容の遊脚足平 22の着地予定位置姿勢および着地予定時 刻とを含む。この場合、遊脚足平 22の着地予定位置姿勢および着地予定時刻は、 S 03で決定された目標対象物運動軌道に対して、着地予定時刻での遊脚足平 22の 着地位置姿勢がその時刻での対象物位置姿勢と所定の相対的位置姿勢関係にな るように決定される。
[0075] 但し、遊脚足平 22の着地予定位置姿勢および着地予定時刻は、必ずしも目標対 象物位置姿勢に追従するような形態で決定する必要はない。例えば、ロボット 1の移 動を行なわない状態(両足平 22, 22の接地を維持する状態)で、対象物 120を押し て移動させ、その移動開始後は、対象物 120から腕体 5, 5の手先部 44を対象物 12 0からはずすような場合には、各歩容における遊脚足平 22の着地予定位置姿勢は 経時的に一定に維持されることとなる。つまり、一般的には、遊脚足平 22の着地予定 位置姿勢および着地予定時刻は、目標対象物運動軌道だけでなぐロボット 1のどの ような運動によって、対象物 120を動かすかという設計的な要求に応じて決定される
[0076] なお、遊脚足平 22の着地予定位置姿勢は、より詳しくは、遊脚足平 22の踵を着地 してから、該遊脚足平 22を床に接触させたまま、すべらないようにピッチ方向に回転 させて該遊脚足平 22の底面のほぼ全面を床面に接触させた状態での該遊脚足平 2 2の位置姿勢である。従って、本実施形態では、遊脚足平 22Rまたは 22Lの着地予 定位置姿勢は、その着地時力も次の遊脚足平 22Lまたは 22Rの着地までの単位歩 容における支持脚座標系の位置姿勢を規定するものとなり、遊脚足平 22の着地予 定位置姿勢を決定することで、それに対応して、前記した支持脚座標系の設定手法 に従って各単位歩容における支持脚座標系の位置姿勢が決定されることとなる。具 体的には、各単位歩容における支持脚座標系は、該単位歩容の一つ前の単位歩容 の遊脚足平 22をその着地予定位置姿勢に合致させた状態において、該足平 22を 有する脚体 2の足首関節の中心力 床面に延ばした垂線が該床面と交わる点を原点 とする座標系となる。
[0077] 次 ヽで、 S07に進んで、今回歩容の目標 ZMP軌道を規定する ZMP軌道パラメ一 タが仮決定される。ここで仮決定される ZMP軌道パラメータは、それにより規定される 今回歩容の目標 ZMP (以下、仮目標 ZMPと ヽぅ)が、 S05で仮決定された着地予定 位置姿勢および着地予定時刻により定まる、今回歩容での支持脚足平 22の接地面 (両脚支持期では、両足平 22の接地面を含む、いわゆる支持多角形)のほぼ中央付 近に存在し、且つ、急激な変化をしないように決定される。すなわち、今回歩容の仮 目標 ZMP力 ロボット 1の接地面内(あるいは支持多角形内)の、ロボット 1の安定余 裕ができるだけ高くなるような位置に存在し、且つ、急激な変化をしないように ZMP 軌道パラメータが決定される。このような指針で決定される仮目標 ZMPは、例えば図 10 (a)で示すようなパターンのものとなる。なお、図 10 (a)は仮目標 ZMPの X軸方向 位置のパターンを示している。この例の場合には、仮目標 ZMPパターン (軌道)の折 れ点の位置および時刻が ZMP軌道パラメータとして仮決定される。
[0078] 次いで、 S09に進んで、現在仮決定されている目標対象物運動軌道と目標対象物 反力軌道とを基に、現在仮決定されている ZMP軌道パラメータにより定まる仮目標 Z MPまわりの対象物反力モーメント軌道 (対象物反力モーメントの瞬時値の時系列) が算出される。より具体的には、まず、目標対象物運動軌道を基に、ロボット 120の両 腕体 5, 5の手先部 44R, 44Lを係合させるべき対象物 120の部位の運動軌道 (位置 姿勢軌道)が決定される。該部位の位置姿勢は、対象物 120の位置姿勢に対して所 定の位置姿勢関係を有するものとされる。そして、その部位の運動軌道 (位置姿勢軌 道)に合致するように、ロボット 1の手先位置姿勢軌道 (これはロボット 1に対する対象 物反力の作用点の軌道を規定する)が求められる。次いで、この求めた手先位置姿 勢軌道と目標対象物反力軌道と仮目標 ZMP軌道とから各時刻 (ある刻み時間毎の 時刻)の仮目標 ZMPまわりの対象物反力モーメントが算出される。そして、その算出 された対象物反力モーメントの時系列が対象物反力モーメント軌道として得られる。 なお、対象物 120から離れた箇所からロボット 1を対象物 120の近くに移動させ、その 後、手先部 44R, 44Lを対象物 120に係合させて該対象物 120を押す作業を開始 する場合には、対象物 120を手先部 44R, 44Lを係合させる時刻(この時刻は適宜 決定される)までの対象物反力軌道、ひいては、対象物反力モーメント軌道は 0とさ れる。
[0079] 次いで、 S11に進んで、今回歩容に続く周期的歩容としての定常旋回歩容の歩容 ノ メータが決定される。該歩容パラメータは、定常旋回歩容における足平位置姿勢 軌道を規定する足平軌道パラメータ、目標 ZMP軌道を規定する ZMP軌道パラメ一 タ、目標対象物反力モーメント軌道を規定する対象物反力軌道パラメータを含む。
[0080] これらの歩容パラメータを具体的に説明する前に、定常旋回歩容の概要を説明し ておく。なお、以降の説明では、歩容の「初期」、「終端」はそれぞれ歩容の開始時刻 、終了時刻もしくはそれらの時刻における瞬時歩容を意味する。
[0081] 定常旋回歩容は、その歩容を繰り返したときに歩容の境界 (本実施形態では 1歩毎 の歩容の境界)においてロボット 1の運動状態 (足平位置姿勢、上体位置姿勢等の状 態)に不連続が生じないような周期的歩容を意味する。
[0082] 周期的歩容である定常旋回歩容は、本実施形態では、ロボット 1の 2歩分の歩容、 すなわち今回歩容に続く第 1旋回歩容と該第 1旋回歩容に続く第 2旋回歩容とからな る歩容を該定常旋回歩容の 1周期分の歩容として、その 1周期分の歩容を繰り返す 歩容である。尚、ここで「旋回」なる用語を用いたのは、旋回率を零とするときは直進 を意味するので、直進も広義の意味で旋回に含ませることができる力 である。以降 、定常旋回歩容を定常歩容と略す場合もある。
[0083] 定常歩容について補足すると、ロボット 1としての 2足移動ロボットでは、定常歩容の 1周期分は、少なくとも 2歩分の歩容 (連続する 2つの単位歩容)から構成される。な お、 3歩以上の歩容を 1周期分の歩容とする複雑な定常歩容を設定することも可能で ある。但し、定常歩容は、後述の如ぐ今回歩容の終端における発散成分 (詳細は後 述する)を決定するためだけに用いられる。このため、 3歩以上の歩容を 1周期とする 定常歩容を用いることは、歩容生成の処理が煩雑となるにも関わらず、効果は少ない
。そこで、本実施形態での定常歩容の 1周期分の歩容を 2歩分の歩容 (第 1及び第 2 旋回歩容)により構成するようにしている。以下の定常歩容の説明では、説明の便宜 上、 2歩分の歩容から成る定常歩容を 1歩の歩容とみなす。定常歩容は、歩容生成 装置 100で今回歩容の終端における発散成分を決定するために暫定的に (歩容生 成装置 100の演算処理上で)想定される仮想歩容であり、歩容生成装置 100からそ のまま出力されるものではない。
[0084] 尚、「発散」とは、 2足移動ロボット 1の上体 3の水平位置が両足平 22, 22の位置か らかけ離れた位置にずれてしまうことを意味する。発散成分の値とは、 2足移動ロボッ ト 1の上体 3の水平位置が両足平 22, 22の位置(より具体的には、支持脚足平 22の 接地面に設定された支持脚座標系の原点)からかけ離れていく具合を表す数値であ る。
[0085] 本実施形態では、目標歩容が、前記発散を生じることなぐ継続的に生成されるよう に、発散成分を指標にして歩容を生成する。すなわち、今回歩容の後に続く定常歩 容の初期発散成分を決定してから、今回歩容の終端発散成分を定常歩容の初期発 散成分に一致させる (より一般的には、今回歩容の上体位置姿勢を定常歩容の上体 位置姿勢に収束させる)ように、今回歩容を生成する (今回歩容を規定する歩容パラ メータを決定する)。そして、定常歩容の初期発散成分は、 S 11で決定した歩容パラ メータを基に、該定常歩容の初期(第 1旋回歩容の初期)と終端 (第 2旋回歩容の終 端)とでロボット 1の運動状態が一致するという定常歩容の条件 (以下、これを定常歩 容の境界条件という)をロボット 1の動力学モデル上で満たすように決定される。この ような歩容生成の基本的な指針は本出願人が先に提案した PCT国際公開公報 WO /02/40224A1 (前記特許文献 2)のものと同様である。従って、以下の定常歩容に関 する説明では、 PCT国際公開公報 WO/02/40224A1の記載事項と異なる技術事項 を主体に説明し、同様の技術事項については詳細な説明を省略することがある。
[0086] S11の説明に戻って、定常歩容の歩容パラメータのうちの足平軌道パラメータは、 第 1旋回歩容および第 2旋回歩容の初期及び終端のそれぞれにおける支持脚足平 22及び遊脚足平 22のそれぞれの位置姿勢、各旋回歩容の歩容周期等から構成さ れ、今回歩容、第 1旋回歩容、第 2旋回歩容の順に、足平位置姿勢軌道がつながる ように決定される。以下に具体的な設定方法を図 11を参照して説明する。
[0087] 第 1旋回歩容初期遊脚足平位置姿勢は、次回歩容の支持脚座標系から見た今回 歩容終端支持脚足平位置姿勢とする。この今回歩容終端支持脚足平位置姿勢は、 今回歩容初期の支持脚足平 22を床に接触させたまま、すべらないように該支持脚足 平 22をその底面のほぼ全面が床に接触するまでピッチ方向に回転させたときの該支 持脚足平 22の位置姿勢 (これは前回歩容の遊脚足平 22の着地予定位置姿勢に一 致する)である。なお、次回歩容支持脚座標系の位置姿勢は、図 11に示す如ぐ今 回歩容の遊脚足平 22の着地予定位置姿勢に対応して決定される。
[0088] 第 1旋回歩容初期支持脚足平位置姿勢は、次回歩容支持脚座標系から見た今回 歩容終端遊脚足平位置姿勢とする。この今回歩容終端遊脚足平位置姿勢は、今回 歩容の遊脚足平 22の着地予定位置姿勢 (あるいはこれに対応して定まる次回歩容 支持脚座標系)に対応した位置姿勢に決定される。具体的には、今回歩容の遊脚足 平 22を今回歩容終端遊脚足平位置姿勢力も床に接触させたまま、すべらないように ピッチ方向に所定角度、回転させたときの位置姿勢が今回歩容の遊脚足平 22の着 地予定位置姿勢になるように今回歩容終端遊脚足平位置姿勢が決定される。
[0089] 第 1旋回歩容終端遊脚足平位置姿勢は、次回歩容支持脚座標系から見た次回歩 容終端遊脚足平位置姿勢とする。この次回歩容終端遊脚足平位置姿勢は、今回歩 容終端遊脚足平位置姿勢の決定手法と同様に、次回歩容の遊脚足平 22の着地予 定位置姿勢 (あるいはこれに対応して定まる次次回歩容支持脚座標系)に対応した 位置姿勢に決定される。
[0090] 第 1旋回歩容終端支持脚足平位置姿勢は、次回歩容支持脚座標系に位置姿勢を 合致させた支持脚足平 22を床に接触させたまま、すべらないように該支持脚足平 22 をその底面のほぼ全面が床に接触するまでピッチ方向に回転させたときの該支持脚 足平 22の位置姿勢 (この位置姿勢は、今回歩容の遊脚足平 22の着地予定位置姿 勢に一致する)とする。
[0091] 第 2旋回歩容初期遊脚足平位置姿勢は、次次回歩容支持脚座標系から見た第 1 旋回歩容終端支持脚足平位置姿勢とする。第 2旋回歩容初期支持脚足平位置姿勢 は、次次回歩容支持脚座標系から見た第 1旋回歩容終端遊脚足平位置姿勢とする
[0092] 第 2旋回歩容終端遊脚足平位置姿勢は、それを次次回歩容支持脚座標系から見 た位置姿勢が、今回歩容支持脚座標系から見た今回歩容終端遊脚足平位置姿勢 に一致するように決定される。第 2旋回歩容終端支持脚足平位置姿勢は、それを次 次回歩容支持脚座標系から見た位置姿勢が、今回歩容支持脚座標系から見た今回 歩容終端支持脚足平位置姿勢に一致するように決定される。
[0093] 第 1旋回歩容および第 2旋回歩容の歩容周期は、次回歩容周期(これは今回歩容 の遊脚足平 22の着地予定時刻と次回歩容の遊脚足平 22の着地予定時刻との差で ある)と同一に設定される。これらの第 1旋回歩容及び第 2旋回歩容の歩容周期は、 互いに同一にすることは必ずしも必要ではないが、いずれの周期も、少なくとも次回 歩容周期に応じて決定するのが好ましい。尚、今回歩容、第 1旋回歩容および第 2旋 回歩容の上記以外の運動パラメータ(両脚支持期時間などの時間パラメータを含む) は、上記決定されたパラメータに応じて、歩容の条件 (ァクチユエータの速度が許容 範囲に入っている力、可動角を超えていないか、床などと干渉していないかなど)を 満足するように適宜決定する。
[0094] 定常歩容の歩容パラメータのうちの ZMP軌道パラメータは、前記 S07で目標 ZMP 軌道パラメータを仮決定した場合と同様に、該 ZMP軌道パラメータにより規定される ZMP軌道が、ロボット 1の安定余裕が高くなり、且つ、急激な変化をしないように決定 される。
[0095] また、定常歩容の対象物反力モーメント軌道パラメータは、周期性の条件を満足す るように決定される。例えば、今回歩容、次回歩容および次次回歩容に対応する対 象物反力モーメント軌道が図 12 (a)に示すようになつているとする。ここで、今回歩容 の対象物反力モーメント軌道は S09で求められた軌道である。次回歩容の対象物反 力モーメント軌道は、 S03で求めた次回歩容の対象物反力軌道および目標対象物 運動軌道と、定常旋回歩容の ZMP軌道パラメータにより規定される ZMP軌道とを基 に S09と同様に算出される軌道である。次次回歩容の対象物反力モーメント軌道は 、 S03で求めた次次回歩容の対象物反力軌道および目標対象物運動軌道と、定常 旋回歩容の ZMP軌道パラメータにより規定される ZMP軌道とを基に S09と同様に算 出される軌道である。
[0096] このとき、定常旋回歩容の対象物反力モーメント軌道は、例えば図 12 (b)で示す軌 道になるように、定常旋回歩容の対象物反力モーメント軌道パラメータが決定される 。この例では、定常旋回歩容の第 1旋回歩容の初期から終端までの対象物反力モー メント軌道は、今回歩容の対象物反力モーメント軌道に連続して、次回歩容の対象 物反力モーメント軌道と一致するように決定されている。また、定常旋回歩容の第 2旋 回歩容の対象物反力モーメント軌道は、第 1旋回歩容の対象物反力モーメント軌道 に連続すると共に、第 2旋回歩容の初期力 終端の直前のある時刻 txまでは、次次 回歩容の対象物反力モーメント軌道と一致し、時刻 txから終端までは、時刻 txの値か ら、第 1旋回歩容の初期(定常旋回歩容の初期)の値と同じ値まで連続的に変化する ように決定されている。時刻 txは、例えば定常旋回歩容の ZMP軌道の折れ点の時 刻に対応する。
[0097] なお、次回歩容の初期の対象物反力モーメントの値と、次次回歩容の対象物反力 モーメントの値との差がさほど大きくないときには、必ずしも、定常旋回歩容の初期の 対象物反力モーメントと終端の対象物反力モーメントの値とを同じにしなくてもよい。
[0098] 補足すると、 S05、 S09、 SI 1の処理は、本発明の第 1および第 2発明における周 期的歩容パラメータ決定手段に相当する。この場合、 S 11で決定される足平軌道パ ラメータ、 ZMP軌道パラメータ、対象物反力モーメント軌道パラメータがそれぞれ、周 期的歩容である定常歩容における脚体 2の運動軌道を規定するパラメータ、該定常 歩容における床反力を規定するパラメータ、該定常歩容における外力の軌道を規定 するパラメータに相当する。なお、 S03で決定される目標対象物運動軌道を基に、足 平軌道パラメータに係る着地予定位置姿勢および着地予定時刻が決定されるので、 該目標対象物運動軌道は、第 1発明における「脚体の運動に関する要求」に相当す る。
[0099] 次 、で、 S 13に進み、定常旋回歩容の初期発散成分が決定される。この場合、定 常旋回歩容は周期的歩容であるから、ロボット 1のあら力じめ定めた動力学モデル上 で、第 1旋回歩容の運動の初期状態 (初期発散成分を含む)と第 2旋回歩容の運動 の終端状態 (終端発散成分を含む)とが一致するように定常旋回歩容の初期発散成 分が決定される。
[0100] この S13の処理を詳細に説明する前に、まず、この S13での処理に用いるロボット 1 の動力学モデルと、この動力学モデルを使用して目標上体位置を決定するための動 力学演算とを説明する。この動力学モデルは、 S13の処理に用いられるほか、後述 の S37までの処理で今回歩容を決定するために用いられ、ロボット 1の動力学的挙動 (ロボット 1に作用する力と運動との関係)を単純ィ匕して (近似的に)表現した動力学モ デルである。以下、この動力学モデルをロボット単純化モデルという。なお、このロボ ット単純ィ匕モデルの基本構造は、 PCT国際公開公報 WO/02/40224A1と同様である 力 対象物反力モーメントが加味されている点で同出願のものと相違している。
[0101] 図 13はロボット単純化モデルの構造を示している。図示の如ぐこのロボット単純化 モデルは、 3質点モデルであり、脚体 2の動力学と上体 3の動力学とが相互に非干渉 に構成されると共に、ロボット 1の全体の動力学は、それらの線形結合で表される。
[0102] このロボット単純ィ匕モデルは、倒立振子 Aと 2つの脚質点 2m, 2m (支持脚質点お よび遊脚質点)とから構成される。各脚質点 2mは、各脚体 2に対応する質点である。 この各脚質点 2mは、それぞれに対応する脚体 2の足平 22に任意に固定的に設定さ れたローカル座標系での固定点であり、その位置は、各足平位置姿勢に対応して一 義的に定まるものとされている。例えば、各足平質点 2mは、その足平 22の底面の代 表点から足首関節の中心に向力つて所定の距離だけ該足首関節側にずれた点に設 定される。
[0103] 倒立振子 Aは、水平に移動するフリーの支点 aと、一つの質点 bと、支点 aと質点 bと を結ぶ質量の無い可変長のリンク cとから構成される。この場合、リンク cが傾いてもリ ンク cが伸縮し、支点 aから見た質点 bの高さ hが一定値に保たれるものとする。
[0104] この倒立振子 Aの質点 b (以下、単に倒立振子質点 bと 、う)は、ロボット 3の上体 3の 質点に相当するものであり、以降、倒立振子質点 bを上体質点 bということもある。倒 立振子質点 bの位置を以降、略して倒立振子位置という。なお、上体質点 bの質量は 、上体 3の質量と腕体 5, 5および頭部 4の質量を含んでいる。
[0105] ロボット 1の上体 3の水平位置は、倒立振子質点 bの水平位置から幾何学的に決定 される。具体的には、例えば、上体 3の代表点の水平位置 (支持脚座標系で見た XY 座標)、すなわち上体位置の水平成分が、倒立振子質点 bの水平位置に一致するも のとされる。換言すれば、図 13に示すように、上体 3の代表点と倒立振子質点 bとは、 同一鉛直線上にあるものとされる。
[0106] なお、倒立振子 Aの ZMPは、フリーの支点 aの位置にあるので(支点 aのまわりには モーメントが発生しない)、以降、倒立振子 Aの支点 aの位置を、倒立振子 ZMPと呼 び、 ZMPpendと記述する。
[0107] 力かるロボット単純ィ匕モデルを数式表現するために、該モデルに関する変数および ノ ラメータを以下のように定義する。
[0108] msup :支持脚質点 2mの質量、 mswg:遊脚質点 2mの質量、 mb :倒立振子質点 b の質量、 1111:0 &1:ロボット1の全体質量(=1113 + 1113\\¾ + 11113)、 mfeet :両脚体 2, 2の総質量(= msup + mswg)、 xsup :支持脚質点 2mの位置、 xswg:遊脚質点 2m の位置、 xb :倒立振子位置 (上体質点 bの位置)、 h:倒立振子高さ (倒立振子 Aの 支点 aから倒立振子質点 bまでの高さ) 以降、ことわらない限り、 xb, xsup, xswgは 3次元ベクトル (XYZ座標ベクトル)で表 す。また、 Xを任意の変数としたとき、 dX/dtは Xの 1階微分を表し、 d2X/dt2は Xの 2 階微分を表す。 gは重力加速度定数を示す。 Gは、その X成分、 Y成分、 Z成分がそ れぞれ 0、 0、 一 gである重力加速度ベクトルとする。
[0109] 図 13のロボット単純化モデルにおいて、両脚質点 2m, 2mの総慣性力(両脚質点 2m, 2mの運動による慣性力と重力との合力)がある作用点 Pまわりに作用するモー メントを点 Pまわりの脚総慣性力モーメントと定義し、その作用点 Pの座標 (位置)を xp とする。
[0110] 下記の式 01は、点 Pまわりの脚総慣性力モーメントの動力学的定義式である。
[0111]
点 Pまわりの脚総慣性力モーメント
=msup(xsup— xp; * G— msup、xsup— xp) * d2xsup/ dt2
+ mswg(xswg― xp) * mswg(xswg― xp) * d2xswg/ dt2 式 01 脚 ZMPを ZMPfeetと記述し、式 02で定義する。ただし、脚 ZMPの高さ(ZMPfeetの Z成分)は、前記点 Pの高さと同一とする。この脚 ZMPは、両脚体 2, 2の運動によつ て発生する慣性力と重力との合力に擬似的に対応させた値である。
[0112]
点 Pまわりの脚総慣性力モーメント = mfeet * (ZMPfeet— xp) * G ……式 02 なお、前記作用点 Pは、ロボット単純ィ匕モデルの近似精度が高くなるように設定され る。例えば、今回歩容に係る作用点 Pは、前回歩容の支持脚座標系の原点から、今 回歩容の支持脚座標系の原点に、両脚支持期の間に直線的に等速移動し、該両脚 支持期に続く片脚支持期では今回歩容支持脚座標系の原点に維持されるように設 定される。このことは、定常旋回歩容の第 1旋回歩容、第 2旋回歩容に係る作用点 P についても同様である。
[0113] また、目標 ZMPまわりの対象物反力モーメントをロボット 1の全体質量 mtotalで除算 したものを、対象物反力 ZMPと定義し、これを ZMPobjと記述する。すなわち、 ZMPobj を次式 03で定義する。
[0114]
ZMPobj =目標 ZMPまわりの対象物反力モーメント Zmtotal ……式 03 このとき、目標 ZMPと脚 ZMP (ZMPfeet)と倒立振子 ZMP(ZMPpend)と対象物反力 ZMPとの間には、近似的に次式 04の線形関係が成り立つ。
[0115]
ZMPpend = mtotal/mb *目標 ZMP - mfeet/mb * ZMPfeet
- mtotal/mb * ZMPobj ……式 04 なお、式 04は、サジタルプレーン (XZ平面)上での関係式であり、ラテラルプレーン (YZ平面)上では、式 03の右辺第 3項の符号が「一」から「 +」に反転する。
[0116] また、倒立振子 Aの挙動を表す微分方程式は、次式 05で表される。 [0117]
d2xb/dt2の水平成分 =gZh * (xbの水平成分—ZMPpendの水平成分) ……式 05 以上の式 01〜05が図 13のロボット単純化モデルの動力学を記述する式である。
[0118] このようなロボット単純ィ匕モデノレを用いることで、次のような動力学的演算により、目 標足平位置姿勢と目標 ZMPまわりの対象物反力モーメントと目標 ZMPと目標上体 姿勢とから目標上体位置を決定できる。
[0119] その動力学演算を図 14のブロック図を参照して説明しておく。図 14はこの動力学 演算を示すブロック図である。目標両足平位置姿勢 (支持脚足平 22および遊脚足平 22の目標位置姿勢)の軌道と、前記の如く設定される作用点 Pとから、脚 ZMP算出 器 220により、前記式 01および 02を用いて脚 ZMP(ZMPfeet)が算出される。
[0120] また、目標 ZMPまわりの対象物反力モーメントに、乗算部 222で lZmtotalを乗算 することで、対象物反力 ZMP(ZMPobj)が算出される。そして、算出した ZMPfeetに乗 算部 224で mfeetZmtotalを乗算したものと ZMPobjとを減算部 226で目標 ZMPから 減算し、さらにその減算結果に乗算部 228で mtotalZmbを乗算することによって、前 記式 04の右辺の演算が行なわれる。これにより倒立振子 ZMP(ZMPpend)が算出さ れる。なお、上記の演算処理により求められる ZMPpendは、サジタルプレーン上のも のであり、ラテラルプレーン上の ZMPpendを算出する場合には、乗算部 222の演算 結果の符号を反転させたものを減算部 226に入力すればよい。
[0121] このようにして算出された ZMPpendを倒立振子 Aに入力することで、前記式 05に基 づいて、倒立振子水平位置 xbが算出される。さら〖こ、この倒立振子水平位置 xbと目 標上体姿勢とを基に、上体位置決定器 230により目標上体位置が決定される。この 場合、上体位置決定器 230は、倒立振子水平位置 xbを目標上体水平位置とする。 また、目標上体鉛直位置は、例えば本出願人が先に特開平 10— 86080号公報で 提案した上体高さ決定手法によって、目標上体姿勢などを基に決定される。
[0122] 図 5の説明に戻って、以下に、 S13の処理を詳細に説明する。
[0123] S 13の処理では、前記したロボット単純ィ匕モデルを基に、定常歩容の初期発散成 分を決定する。歩容における発散成分を qとおき、前記倒立振子 Aの質点 bの水平速 度 (あるいは上体水平速度) vbとおくと、 qは、本実施形態では次式 06により定義され る。
[0124]
q=xo+vb/ ωθ 式 06 ただし、 ωθは、倒立振子 Αの固有周波数、すなわち、 gZhの平方根である。
[0125] なお、このように定義される発散成分の技術的意味につ!、ては、 PCT国際公開公 報 WO/02/40224A1に詳細に説明されているので、ここでの説明は省略する。
[0126] このように発散成分 qを定義したとき、倒立振子 Aの運動方程式 (前記式 05)を離散 化して、 qに関して解き、それに前記式 04を適用すると、次式 07が得られる。なお、 目標 ZMPを ZMPtotalと記述する。
[0127]
q[k] = exp( ω Ok Δ t) * q[0]
+ exp( ω Ok Δ t) * (exp(— oOAt)— 1)*∑ (exp(— i ω 0 Δ t) * mtotal/mb * ZMPtot al[i])
- exp( ω Ok Δ t) * (exp(— oOAt)— 1)*∑ (exp(— i ω 0 Δ t) * mfeet/mb * ZMPfeet[ il)
- exp( ω Ok Δ t) * (exp(— oOAt)— 1)*∑ (exp(— i ω 0 Δ t) * mtotal/mb * ZMPobj[ il)
…式 07 ただし、 exp( )は、自然対数の底 eの指数関数を意味する。また、 Atは離散系の刻 み時間、 kはステップ数 (k Atが時刻を意味する)である。また、式 07の∑( )は、 i=0 力も i=k— 1までの累積加算演算を意味している。
[0128] なお、式 07はサジタルプレーン上での発散成分 qを記述する式であり、ラテラルプ レーン上での発散成分 qを記述する式は、式 07の右辺の第 4項の全体の符号を「一」 から「 +」に反転させた式となる。 [0129] ここで、定常旋回歩容の初期 (第 1旋回歩容の初期)における発散成分 (以下、初 期発散成分という)と終端 (第 2旋回歩容の終端)における発散成分 (以下、終端発散 成分と!/、う)に着目し、 q[0] (時刻 0における発散成分)を初期発散成分、 q[k] (時刻 k A tにおける発散成分)を終端発散成分とする。
[0130] このとき、式 07の右辺第 1項は、初期発散成分によって発生する終端発散成分を 表す。右辺第 2項は、目標 ZMPパターンによって発生する終端発散成分を表す。右 辺第 3項は、両脚体 2, 2の運動(両脚質点 2m, 2mの運動)によって発生する終端 発散成分を表す。右辺第 4項は、対象物反力モーメントパターンによって発生する終 端発散成分を表す。以降、右辺第 2項を Wzmptotal 右辺第 3項を Wfeet、右辺第 4項 を Wobjと記述する。すなわち、 Wzmptotal, Wfeet、 Wobjを次式 08a, 08b, 08cで定 義する。
[0131]
Wzmptotal
= exp( ω Ok Δ t) * (exp(— o O A t)— 1) *∑ (exp(— i ω 0 Δ t) * mtotal/mb * ZMPtot al[i])
……式 08a
Wfeet
= - exp( ω Ok Δ t) * (exp(— o O A t)— 1) *∑ (exp(— i ω 0 Δ t) * mfeet/mb * ZMPfe et[i])
……式 08b
Wobj
= - exp( ω Ok Δ t) * (exp(— o O A t)— 1) *∑ (exp(— i ω 0 Δ t) * mtotal/mb * ZMPo bj[i])
……式 08c なお、式 08cは、サジタルプレーン上での Wobjを定義する式であり、ラテラルプレー ン上での Wobjは、式 08cの右辺の符号を反転させたものとなる。
[0132] これらの Wzmptotal、 Wfeet, Wobjを用いて前記 07を書き換えると、次式 09となる。 q[k] = exp( ω Ok Δ t) * q[0] + Wzmptotal + Wfeet + Wob j ……式 09 本実施形態では、定常旋回歩容の境界条件を満足する初期発散成分は、今回歩 容に続く定常旋回歩容の支持脚座標系(図 11の次回歩容支持脚座標系 (Χ'Υ'座標 系))で見た初期発散成分が、該定常旋回歩容の次の歩容の支持脚座標系(図 11 の次次次回歩容支持脚座標系 (Χ"'Υ" '座標系))から見た定常旋回歩容 (今回歩容 に続く定常旋回歩容)の終端発散成分に一致するように、上記式 08a, 08b, 08c, 0 9に基づ ヽて解析的に求められる。
[0134] ここで、定常旋回歩容の次の歩容の支持脚座標系(図 11の次次次回歩容支持脚 座標系 (X"'Y" '座標系))から見た該定常旋回歩容の終端発散成分を q'[k]とおくと、 定常旋回歩容の境界条件を満足するためには、次式 10が成立しなければならない
[0135]
q[0] = q'[k] …式 10 また、定常旋回歩容の次の歩容の支持脚座標系(図 11の次次次回歩容支持脚座 標系 (X"'Y" '座標系))で記述される値を、該定常旋回歩容の支持脚座標系(図 11 の次回歩容支持脚座標系 (Χ'Υ'座標系))で記述される値に座標変換するための回 転行列を Μ、座標原点の平行移動ベクトルを Βとおくと、次式 11が得られる。
[0136]
q[k] = Mq'[k] + B ……式 11 従って、これらの式 10、 11から次式 12が得られる。
[0137]
q[k] = Mq[0] + B ……式 12 この式 12は、定常歩容の境界条件を満足するために、初期発散成分 q[0]と終端発 散成分 q[k]とが満たすべき条件である。
[0138] そして、この式 12と前記式 08a〜08cおよび 09と力ら、次式 13が得られる。
[0139]
q[0] = inv(M - exp( ω Ok Δ t)l)(Wzmptotal + Wfeet + Wobj— B) ……式 13 なお、式 13において、 inv( )は、括弧内の行列の逆行列であり、 Iは単位行列であ る。
[0140] 本実施形態では、この式 13に基づいて、定常旋回歩容の境界条件を満足する初 期発散成分 q[0]を決定する。
[0141] 具体的には、前記 S 11で決定した定常旋回歩容の ZMP軌道パラメータを基に、定 常旋回歩容の各時刻 i A t (i=0, 1,…… , k— 1)における目標 ZMPの瞬時値である ZMPtotal[i] (i=0, 1,…… , k— 1)を求め、これを用いて前記式 08aの右辺の演算を 行なうことで、 Wzmptotalを算出する。なお、 Wzmptotalの算出は、 PCT国際公開公 報 WO/02/40224A1に説明されている如ぐ目標 ZMP軌道が折れ線軌道であること を利用したアルゴリズムによって算出するようにしてもよ!、。
[0142] また、前記 S 11で決定した定常旋回歩容の足平軌道パラメータを基に、定常旋回 歩容の各時刻 i A t (i=0, 1,…… , k 1)における各足平位置姿勢の瞬時値を求め 、それを、前記式 01, 02を離散系で表現した式に適用することで、 ZMPfeetD]を求め る。なお、足平位置姿勢は、例えば本出願人が特許第 3233450号にて提案した有 限時間整定フィルタを用いて各足平 22毎に算出される。この場合、算出される足平 位置姿勢の軌道は、定常旋回歩容の第 1旋回歩容および第 2旋回歩容のそれぞれ における遊脚足平 22が片脚支持期の開始時刻から上昇して、該遊脚足平 22の着 地予定位置に向力つて移動し、該遊脚足平 22の着地予定時刻にて該遊脚足平 22 がその踵で着地予定位置に対応する位置に着地するような軌道である。そして、上 記の如く求めた ZMPfeetlD]を用いて前記式 08bの右辺の演算を行なうことで、 Wfeet を算出する。補足すると、遊脚足平 22の着地予定位置姿勢が、 1つ前の歩容におけ る支持脚足平 22の着地位置姿勢と同じである場合には、足平位置姿勢軌道は、一 定の着地位置姿勢に維持される軌道とされる。但し、遊脚足平 22を一旦上昇させ、 その後、元の着地位置姿勢に戻すような足平位置姿勢軌道を生成するようにしてもよ い。
[0143] さらに、前記 S 11で決定した定常旋回歩容の対象物反力モーメント軌道パラメータ を基に、定常旋回歩容の各時刻 i A t (i=0, 1,…… , k 1)における、目標 ZMPま わりの対象物反力モーメントを求めると共に、それを mtotalで除算することにより、 ZM Pobj[i]を求め、その求めた ZMPobjD]を用いて前記式 08cの右辺の演算を行なうこと で、 Wobjを算出する。
[0144] なお、 Wzmptotal、 Wfeet、 Wobjの算出で用いる刻み時間 Δ tは、歩容生成装置 10
0の演算処理周期と同一であることが好ましいが、それよりも長い時間に設定して、演 算処理時間を短縮するようにしてもよ!ヽ。
[0145] そして、上記の如く求めた Wzmptotal、 Wfeet、 Wobjから、前記式 12の右辺の演算 を行なうことで、定常旋回歩容の境界条件を満足する初期発散成分 q[0]が算出され る。
[0146] 以上が、本実施形態における S13の処理の詳細である。
[0147] なお、本実施形態では、初期発散成分 q[0]を解析的に求めるようにしたが、例えば PCT国際公開公報 WO/02/40224A1の第 2実施形態で説明されている如ぐ探索的 な手法により、今回歩容に続く定常旋回歩容の次の歩容の支持脚座標系力 見た 該定常旋回歩容の終端発散成分にほぼ一致するような該定常旋回歩容の初期発散 成分を決定するようにしてもょ 、。
[0148] 図 5のフローチャートの説明に戻って、上記の如く S13の処理を実行した後、 S15 に進んで、今回歩容の歩容パラメータが仮決定される。該歩容パラメータは、今回歩 容における足平位置姿勢軌道を規定する足平軌道パラメータ、目標 ZMP軌道を規 定する ZMP軌道パラメータ、目標対象物反力モーメント軌道を規定する対象物反力 軌道パラメータを含む。
[0149] 今回歩容の歩容パラメータのうちの足平軌道パラメータは、今回歩容の初期及び 終端のそれぞれにおける支持脚足平 22及び遊脚足平 22のそれぞれの位置姿勢、 今回歩容の歩容周期等から構成される。この場合、今回歩容初期遊脚足平位置姿 勢は、今回歩容支持脚座標系から見た、前回歩容終端における今回歩容の遊脚足 平位置姿勢 (前回歩容の支持脚足平位置姿勢)とする。今回歩容初期支持脚足平 位置姿勢は、今回歩容支持脚座標系から見た、前回歩容終端における今回歩容の 支持脚足平位置姿勢 (前回歩容の遊脚足平位置姿勢)とする。今回歩容終端遊脚 足平位置姿勢は、今回歩容の遊脚足平 22の着地予定位置姿勢に対応させて決定 される。具体的には、今回歩容の遊脚足平 22を今回歩容終端遊脚足平位置姿勢か ら床に接触させたまま、すべらないようにピッチ方向に所定角度、回転させたときの位 置姿勢が今回歩容の着地予定位置姿勢になるように今回歩容終端遊脚足平位置姿 勢が決定される。今回歩容終端支持脚足平位置姿勢は、今回歩容支持脚座標系に 位置姿勢を合致させた支持脚足平 22を床に接触させたまま、すべらないように該支 持脚足平 22をその底面のほぼ全面が床に接触するまでピッチ方向に回転させたとき の該支持脚足平 22の位置姿勢 (この位置姿勢は、前回歩容の遊脚足平 22の着地 予定位置姿勢に一致する)とする。
[0150] なお、本実施形態では、今回歩容終端における支持脚足平 22は、床面にほぼ平 行な姿勢になるが、必ずしもこのようにする必要はない。例えば歩容終端において、 支持脚足平 22の踵側が床面から離れるようにしてもょ ヽ。
[0151] 今回歩容の歩容パラメータのうちの ZMP軌道パラメータは、 S07で仮決定された Z MP軌道パラメータと同一に設定される。従って、この ZMP軌道パラメータにより規定 される目標 ZMP軌道は、例えば前記図 10 (a)に示したようなパターンのものである。
[0152] また、今回歩容の歩容パラメータのうちの対象物反力モーメント軌道パラメータは、 それにより規定される対象物反力モーメント軌道が、前記 S09で算出した対象物反 力モーメント軌道のうちの今回歩容に対応する軌道に一致するように決定される。
[0153] 補足すると、 S05、 S07、 S09、 S15の処理は、本発明の第 1発明および第 2発明 における今回歩容パラメータ仮決定手段に相当する。この場合、 S15で決定される 足平軌道パラメータ、 ZMP軌道パラメータ、対象物反力モーメント軌道パラメータが、 それぞれ、今回歩容における脚体の運動軌道を規定するパラメータ、今回歩容にお ける床反力を規定するパラメータ、外力の軌道を規定するパラメータに相当する。
[0154] 次いで、 S17に進んで、定常旋回歩容に今回歩容が収束するように、 S15で仮決 定した歩容パラメータのうちの ZMP軌道パラメータを修正する。より詳しくは、定常旋 回歩容の初期発散成分に今回歩容の終端発散成分がほぼ一致するように ZMP軌 道パラメータが修正される。
[0155] 本実施形態では、定常旋回歩容の初期発散成分に今回歩容の終端発散成分をほ ぼ一致させるようにするために、前記仮目標 ZMPに図 10 (b)に示すような ZMP修正 量をカ卩えることにより、該仮目標 ZMPを修正し、それにより、図 10 (c)に示すような目 標 ZMPを得る。
[0156] この場合、仮目標 ZMPの修正処理の基本的指針は、 PCT国際公開公報 WO/02/ 40224A1と同様である力 対象物反力モーメントが考慮される点で同出願のものと相 違している。以下にその相違する点を中心に S17の処理を具体的に説明する。なお 、この処理で使用する変数、記号のうち、定常歩容の初期発散成分を決定する処理 (S13)に関して説明したものと同様の意味を持つ変数については、定常歩容に関し て先に定義したものと同じ変数、記号を用いて S17の処理を説明する。また、以下の 説明では、理解の便宜上、 ZMPの X軸方向成分の修正に関して説明を行なう。
[0157] 本実施形態では、 ZMP修正量は、図 10 (b)に示す如く台形状とされ、その高さを a とおく。なお、台形の折れ点の時刻は、図示の如ぐ仮目標 ZMP軌道の折れ点の時 刻に合わせて設定される。本実施形態では、 ZMP修正量は、今回歩容の片脚支持 期で発生させる。また、前記 S13で決定した初期発散成分を今回歩容支持脚座標系 カゝら見た値に座標変換したものを q"とおく。すなわち、今回歩容支持脚座標系で見 た定常旋回歩容の初期発散成分を q"とおく。また、仮目標 ZMP軌道によって発生 する今回歩容の終端発散成分を Wzmptmp、 a= 1である場合の ZMP修正量パター ンによって発生する今回歩容の終端発散成分を Wtrimとおく。
[0158] このとき、修正後の目標 ZMP軌道によって発生する終端発散成分を Wzmptotalと おくと、近似的に次式 14が得られる。
[0159]
Wzmptotal = Wzmptmp + a * Wtrim 式 14 従って、目標 ZMPを修正した後の今回歩容の終端発散成分 q"は、定常歩容に関 して説明した前記式 09と同様の次式 15により表される。 [0160]
q " = exp( ω Ok Δ t) * q[0] + Wzmptmp + a * Wtrim + Wfeet + Wobj ……式 15 なお、式 15において、 k A tは今回歩容の終端時刻、 q[0]は今回歩容の初期発散 成分、 Wfeetは今回歩容の両脚体 2, 2の運動によって発生する終端発散成分、 Wobj は今回歩容の対象物反力モーメント軌道によって発生する終端発散成分である。
[0161] この式 15から、 ZMP修正量の台形高さ aを決定するための次式 16が得られる。
[0162]
a = (q "— exp( ω Ok Δ t) * q[0]— Wzmptmp - Wfeet - Wob j)/Wtrim ……式 16 そこで、本実施形態では、式 16により、 ZMP修正量の台形高さ aを求める。この場 合、初期発散成分 q[0]は今回歩容初期の倒立振子位置 (あるいは上体位置)とその 変化速度とから、前記式 06により算出される。また、 Wzmptmpは、 S 15で仮決定され た ZMP軌道パラメータにより規定される仮目標 ZMP軌道から、定常旋回歩容に係る Wzmptotalを求めた場合と同様に求められる。 Wtrimは、台形高さ aを 1として定まる Z MP修正量パターンから、定常旋回歩容に係る Wzmptotalを求めた場合と同様に求 められる。 Wfeetは、 S 15で仮決定された足平軌道パラメータから、定常旋回歩容に 係る Wfeetを求めた場合と同様に前記式 08bに基づいて求められる。 Wobjは、 S15 で仮決定された対象物反力モーメント軌道パラメータから、定常旋回歩容に係る Wob jを求めた場合と同様に前記式 08cに基づいて求められる。
[0163] S17では、このようにして求めた台形高さ aにより定まる ZMP修正量を仮目標 ZMP 軌道に加えることで、 ZMP軌道パラメータが修正される。
[0164] なお、本実施形態では、 ZMP修正量を解析的に求めるようにしたが、探索的に求 めるようにしてもよい。この場合には、台形高さ aの値を適当な値に設定した ZMP修 正量により仮目標 ZMPを修正してなる目標 ZMP軌道を用いて、今回歩容を仮に作 成し、その仮作成した今回歩容の終端発散成分と定常歩容の初期発散成分との差 などに応じて、その差力 、さくなるように台形高さ aの値を修正する、という処理を繰り 返す。そして、最終的に仮作成した今回歩容の終端発散成分を定常歩容の初期発 散成分とがほぼ一致するときの台形高さ aの値によって ZMP修正量を決定すればよ い。
[0165] 補足すると、 S17の処理は、本発明の第 1発明および第 2発明におけるパラメータ 修正手段に相当する。この場合、 ZMP軌道パラメータが修正対象のパラメータであ る。
[0166] S17の処理の後、 S19に進んで修正後の ZMP軌道パラメータにより定まる目標 Z MPが適正力否かが判断される。具体的には、修正後の目標 ZMP力 今回歩容の 支持脚足平 22の接地面力 逸脱したり、接地面の境界付近に偏ったりしていない場 合、すなわち、ロボット 1の安定余裕が確保できる場合には、目標 ZMPが適正である と判断され、そうでない場合には、目標 ZMPが不適正であると判断される。
[0167] S19の判断結果が NOである場合には、 S21に進んで、今回歩容パラメータのうち の ZMP軌道パラメータ以外のパラメータに係わる要素、例えば対象物反力軌道パラ メータに係わる目標対象物反力軌道を修正する。この場合、目標対象物反力軌道は 、その修正後に S09〜S 17の処理を再度実行したときに、 ZMP修正量ができるだけ 小さくなるように (少なくとも目標対象物反力軌道の修正前に求めた ZMP修正量より も小さくなるように)修正される。
[0168] この目標対象物反力軌道の修正例を以下に説明する。例えば図 15 (a)のグラフ g2 で示すように移動計画に基づく目標対象物運動軌道 (位置軌道)が時刻 tlから X軸 方向で対象物 120の減速を行なって、時刻 t3で停止させるような軌道であるとする。 なお、図 15 (a)のグラフ g3は、目標対象物運動軌道に対応して決定される目標上体 位置軌道の例である。このとき、時刻 tl力もの対象物 120の減速加速度が比較的大 きい場合には、その時刻 tl以後の、ある現在時刻 t2における今回歩容に係る ZMP 修正量が X軸の正方向に過大になって、支持脚足平 22の接地面を逸脱する場合が ある(この場合、 S19の判断結果が NOになる)。そして、仮に、そのまま目標歩容を 生成し続けた場合には、図示のようにロボット 1の上体 3がある時刻 t4で対象物 120 に衝突するような目標歩容が生成されてしまう。
[0169] そこで、このような場合には、目標対象物反力を、前記したように S03で仮決定され た目標対象物反力軌道に対して、図 15 (b)に示す如ぐ現在時刻 t2以降のある期間 ΔΤ1内で、 X軸の負方向に増加させるように該目標対象物反力軌道を修正する。換 言すれば、ロボット 1から対象物 120に加える作用力(目標対象物反力の符号を反転 させた力)を X軸の正方向に増カロさせるように目標対象物反力を修正する。この場合 、目標対象物反力を増加させる期間 ΔΤ1あるいはその増加分 A F1の大きさは、修 正後の目標対象物反力を基に前記 S09〜S17の処理により決定される ZMP修正量 ができるだけ小さくなつて、 S 19の判断結果が YESになるように決定される。このよう な Δ T1あるいは Δ F1は、解析的あるいは探索的に求めることが可能である。
[0170] このように目標対象物反力軌道を修正することにより、ロボット 1が積極的に対象物 120を押すような上体 3の運動が行なわれるように今回歩容パラメータのうちの対象 物反力モーメント軌道パラメータが S 15で決定されることとなる。その結果、この今回 歩容パラメータを基に生成される目標歩容が、安定余裕を確保しつつ、対象物 120 にロボット 1の上体 3が衝突することが無いようなような歩容になる。
[0171] 補足すると、 S20および S21の処理は、本発明の第 3発明におけるパラメータ修正 手段の処理に相当する。
[0172] S21の処理を行なった後、 S09〜S 17の処理が前記したように再度実行される。こ のとき、 S 17の次の S 19の半 IJ断結果は YES〖こなり、この場合には、次〖こ図 6の S23に 進む。
[0173] S23では、現在の今回歩容パラメータと定常歩容パラメータとを基に、現在時刻か ら定常歩容の第 2旋回歩容終端までの (今回歩容の 1歩を含めて 3歩目までの)目標 上体位置姿勢軌道を算出すると共に、目標対象物運動軌道を基に目標手先位置姿 勢軌道を算出する。
[0174] この場合、今回歩容、定常旋回歩容の第 1旋回歩容、第 2旋回歩容の順に、各歩 容の歩容パラメータを基に、前記図 14のブロック図を参照して説明した如ぐ目標上 体位置姿勢軌道を算出する。さらに、目標手先位置姿勢軌道は、今回歩容、定常旋 回歩容の第 1旋回歩容、第 2旋回歩容の順に、 S09で求めた場合と同様に、目標対 象物運動軌道を基に算出する。この場合、定常旋回歩容の第 1旋回歩容、第 2旋回 歩容に対応する目標対象物運動軌道は、 S03で仮決定された目標対象物運動軌道 のうちの、次回歩容、次次回歩容に対応する目標対象物運動軌道である。 [0175] 補足すると、 S23の処理は、本発明の第 7発明におけるロボット将来挙動予測手段 に相当する。
[0176] 次いで、 S25に進んで、ロボット 1と対象物 120との幾何学的制約条件をチェックす る。ここで、この幾何学的制約条件は、対象物 120とロボット 1との干渉 (上体 3が対象 物 120に当たるなど)の有無、並びに、各腕体 3の関節の回転角が機構的な制限内 に収まって 、る力などの条件である。目標上体位置姿勢と目標対象物運動軌道とか らロボット 1の上体 3と対象物 120との干渉の有無を判断できる。また、目標上体位置 姿勢と目標手先位置姿勢とから、各腕体 3の関節の回転角を決定できるので、その 回転角が機構的な制限内に収まって 、る力否かが判る。
[0177] S25の判断処理は、現在時刻力も第 2旋回歩容の終端まで、所定の刻み時間間隔 の目標上体姿勢等の瞬時値に対して逐次行なわれる。すなわち、各瞬時値に対して 、 S25の判断結果が OKである場合には、 S27において、現在時刻から第 2旋回歩 容の終端までの全時刻分のチェックが完了したか否かを判断する。そして、この S27 の判断結果が NOである場合には、 S25の判断処理を繰り返す。
[0178] S25の判断結果が NGである場合には、 S29に進んで、 NGとなった該当時刻にお ける幾何学的制約条件を満たすように着地予定位置姿勢と目標対象物運動軌道と のうちの少なくともいずれか一方を修正する。その修正例を図 16を参照して説明する
[0179] 同図を参照して、現在時刻 tlにおける移動計画に基づく X軸方向の目標対象物運 動軌道 (位置軌道)が図中のグラフ g4で示す軌道 (以下、元軌道と ヽぅ)であるとする 。そして、将来のある時刻 t2で目標上体位置と目標対象物位置とが近すぎて、上体 3 と対象物 120との干渉が発生し、 S25の判断結果が NGになるとする。このとき、その 干渉が発生する時刻 t2の目標対象物位置を、 X軸の正方向、すなわち、ロボット 1か ら遠ざける方向に図中の破線矢印で示す如くずらすと共に、時刻 t2の前後に亘る期 間 Δ T2での目標対象物運動軌道 (位置軌道)をグラフ g5で示す修正軌道に変更す る。この修正軌道 g5は、ロボット 1の挙動の急変を避けるために、その期間 Δ Τ2の両 端で元軌道 g4に滑らかにつながるように決定される。また、時刻 t2でのずらし量 ΔΧ は、それによつて、ロボット 1の上体 3と対象物 120との干渉が無くなるように(S25の 判断結果が OKとなるように)決定される。
[0180] なお、上記の例では、目標対象物運動軌道を修正する場合を例に採って説明した 力 目標対象物運動軌道を修正する代わりに、 S25の判断結果力 SNGとなる該当時 刻を含む歩容での遊脚足平 22の着地予定位置姿勢を修正するようにしてもよヽ。例 えば、図 16の場合のように時刻 t2で干渉が発生する場合には、その時刻 t2を含む歩 容での着地予定位置姿勢を対象物 120から X軸方向で遠ざけるような位置姿勢に修 正すればよい。あるいは、目標対象物運動軌道と着地予定位置姿勢との両者を修正 するようにしてちょい。
[0181] S29の修正処理が終了すると、 S05に戻って、この S05からの処理が前述したよう に実行される。これにより、前記幾何学的制約条件が満たされない場合に、目標対 象物運動軌道あるいは着地予定位置姿勢が修正され、ひいては、今回歩容パラメ一 タのうちの足平軌道パラメータが修正されることとなる。なお、 S29で目標対象物運動 軌道を修正せずに、遊脚足平 22の着地予定位置を修正した場合には、 S05の処理 を省略して S07からの処理を実行するようにしてもょ 、。
[0182] ネ ΐ足すると、 S25〜S29の処理、並びに、 S29に続く S05〜S17の処理は、本発明 の第 7発明におけるパラメータ修正手段が、ロボット将来挙動予測手段の処理以外 に行なう処理に相当する。
[0183] 一方、 S27の判断結果が YESになると、図 7の S31に進む。この S31では、今回歩 容パラメータを基に、目標 ZMPを満足するように、手先位置姿勢瞬時値を除ぐ現在 時刻の今回歩容瞬時値を算出する。
[0184] この算出処理は、次のように行なわれる。すなわち、今回歩容パラメータのうちの足 平軌道パラメータを基に、目標足平位置姿勢の瞬時値が算出される。この算出処理 は、前記 S13の処理の中で、 ZMPfeetD]を算出する処理に関して説明した場合と同 様に、本出願人が特許第 3233450号にて提案した有限時間整定フィルタを用いて 各足平 22毎に算出される。なお、定常歩容に関して説明した場合と同様、今回歩容 の遊脚足平 22の着地予定位置姿勢が、前回歩容の支持脚足平 22の着地位置姿勢 と同じである場合には、今回歩容の各目標足平位置姿勢の瞬時値は、今回歩容初 期の状態に維持される。但し、今回歩容の遊脚足平 22を一旦上昇させて、元の着地 位置姿勢に戻すように今回歩容の遊脚足平 22の足平位置姿勢軌道の瞬時値を生 成するようにしてちょい。
[0185] また、今回歩容パラメータのうちの、 ZMP軌道パラメータを基に、目標 ZMPの瞬時 値が算出されると共に、対象物反力モーメント軌道パラメータを基に、目標対象物反 力モーメントの瞬時値が算出される。
[0186] さらに、上記の如く算出された目標足平位置姿勢の瞬時値と、目標 ZMPの瞬時値 と、目標対象物反力モーメントの瞬時値とから、前記図 14の動力学的演算によって、 目標上体位置姿勢の瞬時値が算出される。なお、本実施形態では、目標上体姿勢 は、例えば鉛直姿勢とされる。但し、目標上体姿勢を鉛直姿勢に維持する必要はな ぐ変化させるようにしてもよい。目標上体姿勢を変化させる場合には、ロボット単純 化モデルは、上体 3の姿勢変化に伴うロボット 3の角運動量変化を考慮した動力学モ デルにすることが望ましぐ例えば本願出願人が PCT国際公開公報 WO/03/057422 A1にて提案した、同公報の図 10に示すような動力学モデルを使用すればよ!、。
[0187] 以上の S31の処理によりロボット 1の目標歩容の運動のうちの、目標足平位置姿勢 および目標上体位置姿勢の瞬時値が決定される。本実施形態のロボット 1では、各 脚体 2は 6自由度を有するので、目標上体位置姿勢と目標足平位置姿勢とが決まれ ば、各脚体 2の各関節の回転角は一義的に定まる。補足すると、本実施形態では、 S 31で求められる目標上体位置姿勢は後述する S39の処理によってさらに補正される
[0188] 次いで、 S33に進んで、最終修正目標手先位置の前回値 (前回の演算処理周期 での値)を基に、前回の演算処理周期(歩容生成装置 100の演算処理周期)におけ る対象物 120の実際の位置である実対象物位置を推定する。ここで、最終修正目標 手先位置は、後述する腕メイン制御装置 106で求められるものであり、ロボット 1の実 際の手先位置の指令値に相当するものである。そこで、例えば最終修正目標手先位 置の前回値をロボット 1の実際の手先位置の前回値とし、これと所定の相対位置関係 を有する位置を実対象物位置として推定する。なお、対象物 120にジャイロセンサや 加速度センサを搭載しておき、それらの検出値から実対象物位置を推定するように することも可會である。 [0189] 次いで、 S35に進み、上記の如く推定した実対象物位置と、目標対象物位置との 偏差 (以下、対象物位置偏差という)と、現在の目標対象物運動軌道とを基に、対象 物動力学モデルを用いて目標対象物運動の瞬時値 (今回値)と、推定外乱力の瞬時 値 (今回値)と、目標対象物反力の瞬時値 (今回値)とが算出される。なお、対象物位 置偏差を規定する実対象物位置と目標対象物位置とのうちの目標対象物位置は、 前回の演算処理周期で求めた値 (前回値)が用いられる。
[0190] ここで、この S35の処理で使用する対象物動力学モデルと S35の処理とを図 17の ブロック図を参照して説明する。図 17は、 S03で目標対象物運動のうちの目標対象 物位置と目標対象物反力と推定外乱力とを求める演算処理を示すブロック図であり、 図中の参照符号 238を付した部分が対象物 120に作用する力と対象物 120の運動 との関係を表す対象物動力学モデルとなっている。この対象物動力学モデルは、前 記図 9に示したものと一部の構造が相違するので、以下の説明では、図 17中の対象 物動力学モデルを図 9の対象物動力学モデルと区別するため、対象物動力学モデ ノレ 2と! /、う。
[0191] この対象物動力学モデル 2の基本構造は、図 9の対象物動力学モデルと同様であ り、対象物 120に作用する力(より詳しくは水平方向の並進力)を入力として、その入 力値 (後述の乗算部 242で求められる値)に、対象物 120の質量 Mの逆数 1ZMを 乗算部 244で乗算することにより対象物 120の運動加速度を求め、これを積分器 24 6, 250で順次積分する(2重積分する)ものとなっている。但し、対象物動力学モデ ル 2では、図 9の対象物動力学モデルと異なり、積分器 250には、積分器 246の出力 (運動加速度の積分値)に加えて、モデル速度操作量が追加的に入力されるように なっている。このモデル速度操作量は、モデル速度操作量決定部 252によって、実 対象物位置と目標対象物位置との偏差を 0に近づけるようにフィードバック制御則に より決定される速度操作量であり、本実施形態では次式 17により決定される。
[0192]
モデル速度操作量 = Kel *対象物位置偏差 + J (Ke2 *対象物位置偏差) dt … …式 17 すなわち、モデル速度操作量は、対象物位置偏差力も PI制御則 (比例積分制御則 )により決定される。なお、式 17の Kel、 Ke2は所定のゲインである。図 17のモデル速 度操作量決定部 252は、式 17の右辺の演算を行なう演算処理部である。すなわち、 モデル速度操作量決定部 252は、実対象物位置 (現在の演算処理周期での S33で 求めた今回値)と目標対象物位置 (前回の演算処理周期での S35で求めた前回値) とから、それらの差である対象物位置偏差を減算部 254で求める。そして、求めた対 象物位置偏差に乗算部 256でゲイン Kelを乗算したもの (比例項)と、該対象物位置 偏差に乗算部 258でゲイン Ke2を乗算したものをさらに積分器 260で積分したもの( 積分項)とを、加算部 262で加算することにより、モデル速度操作量を算出する。なお 、算出されたモデル速度操作量は、対象物動力学モデル 2の積分器 250の入力側 に備えた加算部 248で、積分器 246の出力に加算された後、積分器 250に入力され る。補足すると、図 17のブロック図では、モデル速度操作量を算出した後に、これを 対象物動力学モデル 2に追カ卩的に入力するようになつてヽるが、モデル速度操作量 決定部 252の積分器 260を省略し、前記乗算部 258の出力を追加的に積分器 246 に入力しつつ、このときの積分器 246の出力と、乗算部 256の出力との和を積分器 2 50に入力するようにしてもよい。このようにしても、対象物動力学モデル 2の出力(積 分器 250の出力)は図 17のものと同じになる。
[0193] カゝかる対象物動力学モデル 2では、加算部 248の出力を積分器 250で積分したも のが目標対象物位置の瞬時値として得られる。また、加算部 248の出力が、該対象 物動力学モデル 2上での対象物 120の移動速度である対象物モデル速度となる。
[0194] 対象物動力学モデル 2の入力である、対象物 120への作用力(並進力)の要求値 は、現在の目標対象物運動軌道 (S27の判断結果が YESになったときの目標対象 物運動軌道)に基づく目標対象物速度と、対象物モデル速度とから減算部 240で求 められるそれらの偏差(目標対象物速度一対象物モデル速度)に乗算部 242で所定 のゲイン Kvを乗算することで求められる。すなわち、対象物動力学モデル 2に入力す る並進力の要求値は、図 9のものと同様、対象物目標速度と対象物モデル速度との 偏差が 0に収束するように、フィードバック制御則(この例では比例制御則)により決 定される。但し、この場合の対象物モデル速度は、前記したように加算部 248の出力 であるから、図 9のものと異なり、モデル速度操作量が加味されたものである。また、 目標対象物速度は、現在の目標対象物運動軌道のうちの位置軌道の 1階微分値と して得られる。
[0195] そして、上記の如く求められた並進力の要求値の符号を反転させたものが目標対 象物反力の瞬時値として求められる。また、該並進力の要求値が対象物動力学モデ ル 2の乗算部 244に入力されると共に、前記モデル速度操作量が加算部 248に入力 され、これにより、該対象物動力学モデル 2の積分器 250から目標対象物位置の瞬 時値が出力される。
[0196] また、図 17中の参照符号 264を付した部分は、推定外乱力を求める処理を行なう 推定外乱力決定部である。この推定外乱力決定部 264には、対象物モデル速度と、 前記並進力の要求値とが入力される。対象物モデル速度は、 M' sZ(Tc' s + l)という 形の伝達関数で表される変換部 266に入力され、この変換部 266により、対象物 12 0に作用している並進力の推定値が算出される。なお、変換部 266の伝達関数中の Mは対象物 120の質量であり、 Tcは所定の時定数である。従って、変換部 266により 算出される推定値は、対象物動力学モデル 2上での対象物 120の運動加速度 (対象 物モデル速度の微分値)を発生させる並進力に、時定数 Tcの 1次遅れを伴って追従 するものである。さらに、この並進力の推定値力も前記乗算部 242の出力である並進 力の要求値を減算部 268で差し引くことにより、推定外乱力の瞬時値が算出される。 ここで求められた推定外乱力の瞬時値は、前記したように S02の演算処理(図 9を参 照)で使用される。
[0197] 補足すると、前記推定外乱力決定部 264は、本発明の第 8発明における対象物外 乱力推定手段に相当する。
[0198] なお、目標対象物運動のうちの目標対象物姿勢の瞬時値は、例えば目標対象物 速度の向きにほぼ一致するように決定される。
[0199] 以上が、 S35の演算処理である。
[0200] 次いで S37に進んで、 S35で求めた目標対象物運動の瞬時値を基に、目標手先 位置姿勢の瞬時値 (今回値)を決定する。 目標手先位置姿勢の瞬時値は、 S09で目 標手先位置姿勢軌道を求めた場合と同様に求められる。 [0201] 以上の S37までの処理によって求められる目標歩容の瞬時値のうち、目標上体位 置姿勢は、前記ロボット単純ィ匕モデルを用いて、該ロボット単純ィ匕モデル上で目標 Z MPを満足するように(ロボット 1の運動による慣性力と重力と対象物反力モーメントと の合力が目標 ZMPまわりに発生するモーメントの水平成分が 0になるように)求めら れている。従って、 S37までの処理によって求められる目標歩容は、目標 ZMPまわり の床反力モーメント水平成分がロボット単純ィ匕モデル上で 0となる歩容である。
[0202] ここで、ロボット単純ィ匕モデルは、歩容生成装置 100の演算負荷を効果的に軽減で きる点での利点は大きいものもの、動力学的精度は必ずしも高精度であるとはいえな い。そこで、本実施形態では、さらに、動力学的精度の高いロボット動力学モデル (以 下、これをフルモデルという)を用いて、目標歩容のうちの一部の構成要素(具体的 には、目標上体位置姿勢瞬時値と目標 ZMPまわりの床反力モーメント瞬時値)とを 補正する。この補正処理をフルモデル補正と呼び、このフルモデル補正が S37の処 理の次に S39で実行される。
[0203] このフルモデル補正は、例えば本願出願人が先に提案した特開 2002— 326173 号公報にて説明したものと全く同様に行なわれる。従って、本明細書での説明は省 略する。なお、フルモデル補正は、例えば、本願出願人による PCT国際公開公報 W 0 03/057427 A1にて説明したものと同様に行なうようにしてもよい。
[0204] この S39のフルモデル補正により、目標上体位置姿勢と、目標 ZMPまわりの床反 力モーメントとが補正され、これにより、最終的に歩容生成装置 100が出力する目標 歩容の全ての構成要素の瞬時値が得られる。なお、フルモデル補正は、省略しても よい。
[0205] 補足すると、 S31〜S39の処理は、本発明の第 1発明および第 2発明における今回 歩容瞬時値決定手段に相当する。
[0206] 以上説明した S01〜S39までの処理が、歩容生成装置 100の演算処理周期毎に 実行される処理である。
[0207] 次に、説明を後回しにした、 S01での移動計画の修正処理について説明する。
[0208] ロボット 1が対象物 120を押しながら移動しているときに、現在の移動計画 (前記移 動要求通りの移動計画など)で想定していない段差 (床の凸部)があったり、対象物 1 20にロボット 1以外力も予期しない外力が作用したような場合には、移動計画に基づ く目標対象物運動軌道と実際の対象物運動軌道 (以下、実対象物運動軌道という)と のずれが大きくなる。一方、歩容生成装置 100は、目標対象物運動軌道を基に歩容 ノ メータ等を決定して、歩容を生成するので、目標対象物運動軌道と実対象物運 動軌道とのずれが過大になると、ロボット 1の継続的安定性を確保し得る歩容を生成 することが困難となる。そこで、本実施形態における S01では、そのずれがある程度 大きくなつた場合 (あるいは大きくなると予測される場合)には、 S01で決定する移動 計画をリアルタイムで修正する。
[0209] 以下、この処理の具体例を図 18 (a) , (b)を参照して説明する。例えば現在の(修 正前の)移動計画が、対象物 120を一定速度で X軸の正方向に移動させると ヽぅ計 画であるとする。このとき、この修正前の移動計画 (以下、修正前移動計画という)を 基に、前記した如く S35で算出される目標対象物運動軌道 (瞬時値の時系列)のうち の目標対象物位置軌道は、ほぼ、図 18 (a)のグラフ g6で示すような軌道となる。ここ で、時刻 tlにおいて、実際の対象物 120が、修正前移動計画で予期していない床の 段差(凸部)に引つ力かって、対象物 120が止まってしまったとする。このとき、実対象 物位置の軌道(S33で推定される実対象物位置の時系列)は、図 18 (a)のグラフ g7 で示すような軌道となる。この場合、時刻 tl以後、修正前移動計画に基づく目標対象 物位置と、実対象物位置との偏差が時間の経過に伴い大きくなつていく。
[0210] そこで、 S01では、例えば前回の演算処理周期の S35で求めた対象物位置偏差( 実対象物位置と目標対象物位置との差)、すなわち、図 17の減算部 254で求めた対 象物位置偏差の大きさ (絶対値)を所定値と比較するようにしている。そして、その対 象物位置偏差の大きさが所定値よりも大きくなつたとき(図 18 (a)の時刻 t2)には、図 18 (a)のグラフ g8で示す如ぐ対象物位置偏差の増加を抑制するように修正前移動 計画を修正する。修正した移動計画を以下、修正後移動計画という。図 18 (a)の例 では、修正後移動計画は、時刻 t2以後、対象物 120の移動速度を、ほぼ 0になるま で徐々に減速するような移動計画となる。なお、修正後移動計画は、それにより規定 される目標対象物運動が修正前移動計画に対して急激な変化を生じることなく滑ら かに連続するように決定することが望ま U、。 [0211] このように移動計画を修正することによって、目標対象物反力が過剰に大きくなつ たりすることがなぐロボット 1の継続的な安定性を確保し得る歩容を生成することがで きる。
[0212] さらに、本実施形態での S01の処理では、上記のように移動計画を修正した後、実 対象物位置の、前記修正後移動計画に対応する目標対象物位置軌道への追従性 が良くなり、目標対象物運動軌道と実対象物運動軌道とのずれがある程度小さくなつ たら、修正後移動計画を修正前移動計画に近づけるように移動計画を修正する。こ の修正後の移動計画を以下、再修正後移動計画という。
[0213] 図 18 (a)に示したように修正後移動計画を決定した場合を例に採って説明すると、 対象物 120が段差を乗り越えると(図 18 (b)の時刻 t3)、実対象物位置軌道は、図 18 (b)のグラフ g7で示すように修正後移動計画に基づく目標対象物位置軌道 g8に近づ いていく。
[0214] このとき、 S01では、対象物位置偏差が所定値よりも小さくなると(図 18 (b)の時刻 t 4)、図 18 (b)のグラフ g9で示す如ぐ対象物 120の移動速度が当初の修正前移動計 画に基づく対象物 120の移動速度に近づくように、修正後移動計画を再修正して、 再修正後移動計画を決定する。図 18 (b)の例では、再修正後移動計画は、時刻 t4 以後、対象物 120の移動速度が当初の修正前移動計画に基づく移動速度にほぼ一 致するまで、該移動速度を徐々に増加させるような移動計画となる。なお、再修正後 移動計画は、それにより規定される目標対象物運動が修正後移動計画に対して急 減な変化を生じることなく滑らかに連続するように決定することが望ましい。
[0215] 上記の例では、再修正後移動計画に基づく対象物 120の移動速度を修正前移動 計画に基づく移動速度に近づけるようにしたが、再修正後移動計画に基づく目標対 象物位置軌道を修正前移動計画に基づく対象物位置軌道に近づけるようにすること も可能である。
[0216] 補足すると、上記のように S01で移動計画を修正する処理が、本発明の第 9発明で 移動計画を修正する処理に相当するものである。
[0217] 以上が、本実施形態における歩容生成装置 100の処理の詳細である。
[0218] 次に、制御ユニット 60の歩容生成装置 100以外の処理を以下に説明する。なお、 この処理は、先に述べたように、特開平 10— 230485号公報の第 1実施例にて提案 したものと同じであるので、概略的な説明に留める。
[0219] 歩容生成装置 100で生成された目標歩容のうち、目標上体位置姿勢軌道と、目標 ZMP軌道と、目標対象物反力軌道とが対象物反力平衡制御装置 102に入力される 。対象物反力平衡制御装置 102は、目標対象物反力と実際のロボット 1が対象物 12 0から受ける反力である実対象物反力との偏差を解消する(0に近づける)ように、目 標 ZMPまわりの目標床反力モーメントを修正するための対象物反力平衡制御用補 償全床反力を算出すると共に、目標運動のうちの目標上体位置姿勢を修正してなる 修正目標上体位置姿勢を求めるものである。この対象物反力平衡制御装置 102の 処理については後述する。
[0220] 補足すると、この対象物反力平衡制御装置 102は、本発明の第 10発明における歩 容瞬時値修正手段に相当するものとである。
[0221] また、目標歩容のうちの目標足平位置姿勢軌道、目標 ZMP軌道および目標全床 反力軌道は、脚メイン制御装置 104に入力される。さら〖こ、脚メイン制御装置 104〖こ は、対象物反力平衡制御装置 102から修正目標上体位置姿勢と対象物反力平衡制 御用補償全床反力が入力される。脚メイン制御装置 104は、コンプライアンス制御処 理によって、目標歩容の運動 (腕体 5, 5の運動を除く)と床反力とに追従させるように 脚体 2, 2の関節ァクチユエータ (電動モータ)を制御する。より具体的には、姿勢セン サ 54の検出値 (実上体姿勢)を修正目標上体姿勢に復元させるために、目標 ZMP に発生させるべき復元全床反力を算出し、目標 ZMPに作用する実全床反力モーメ ント成分 (これは脚体 2, 2の 6軸力センサ 50の検出値から求められる)が、この復元 全床反力と目標全床反力と対象物反力平衡制御用補償全床反力との合力のモーメ ント成分に一致するように、目標足平位置姿勢を修正する。修正された目標足平位 置姿勢を修正目標足平位置姿勢という。そして、脚メイン制御装置 104は、この修正 目標足平位置姿勢と修正目標上体位置姿勢とから決定される両脚体 2, 2の目標関 節変位に実関節変位が追従するように両脚体 2, 2の関節ァクチ エータを制御する (各脚体 2のモータ駆動指令を各関節ァクチユエータに出力する)。
[0222] また、目標歩容のうちの目標手先位置姿勢軌道と目標対象物反力軌道とは、腕メ イン制御装置 106に入力される。さらに、腕メイン制御装置 106には、対象物反力平 衡制御装置 102から修正目標上体位置姿勢が入力される。腕メイン制御装置 106は 、コンプライアンス制御処理によって、目標手先位置姿勢軌道と目標対象物反カ軌 道とに追従させるように腕体 5, 5の関節ァクチユエータ (電動モータ)を制御する。よ り具体的には、 6軸力センサ 52の検出値 (実対象物反力)と目標対象物反力との差 に応じて目標手先位置姿勢を修正する。修正された目標手先位置姿勢を最終修正 目標手先位置姿勢という。そして腕メイン制御装置 106は、この最終修正目標手先 位置姿勢と修正目標上体位置姿勢とから決定される両腕体 5, 5の目標関節変位に 実関節変位が追従するように両腕体 5, 5の関節ァクチユエータを制御する(各腕体 5 のモータ駆動指令を各関節ァクチユエータに出力する)。
[0223] 補足すると前記脚メイン制御装置 104および腕メイン制御装置 106は、本発明の第 9発明における制御手段に相当するものである。
[0224] 対象物反力平衡制御装置 102の処理をより具体的に以下に説明する。図 19は、 対象物反力平衡制御装置 102の処理を機能的に示すブロック図である。
[0225] 対象物反力平衡制御装置 102では、まず、目標対象物反力による目標 ZMPまわり の目標対象物反力モーメントと実対象物反力による目標 ZMPまわりの実対象物反力 モーメントとの偏差である対象物反力モーメント偏差がモーメント偏差算出部 270に より算出される。この場合、目標対象物反力モーメントは、歩容生成装置 100から出 力された目標対象物反力および目標 ZMPと、腕メイン制御装置 106で求められた最 終修正目標手先位置姿勢 (より詳しくは前回の制御処理周期での値)とから算出され る。また、実対象物反力モーメントは、 6軸力センサ 52の検出値 (実対象物反力)と、 目標 ZMPと、最終修正目標手先位置姿勢 (より詳しくは前回の制御処理周期での値 )とから算出される。
[0226] この対象物反力モーメント偏差に応じて、重心位置摂動量算出部 272により、ロボ ット 1の全体重心位置の目標摂動量である目標重心位置摂動量が算出される。目標 重心位置摂動量は、対象物反力モーメント偏差を、ロボット 1に作用する重力によつ て長期的に解消するためのロボット 1の全体重心の摂動量としての意味を持ち、例え ば対象物反力モーメントに比例した値に決定される。次いで、後述する摂動動力学 モデルで算出される、該摂動動力学モデル上でのロボット 1の全体重心の摂動量で ある全体重心位置モデル摂動量と、前記目標重心位置摂動量との偏差が減算部 27 4により算出され、この偏差力もフィードバック制御則 276、例えば PD制御則によって 、該偏差を 0に収束させるための、目標 ZMPまわりのモーメント操作量である対象物 反力平衡制御用補償全床反力モーメントが算出される。さらに、この対象物反力平 衡制御用補償全床反力モーメントと前記対象物反力モーメント偏差との和が加算部 278により算出される。そして、この加算部 278の出力がロボット 1の全体重心の摂動 と、目標 ZMPまわりのモーメントの摂動との関係、並びに、全体重心の摂動と上体位 置姿勢の摂動との関係を表す摂動動力学モデル 280に入力され、この摂動動力学 モデルで、上体位置姿勢摂動量が算出される。
[0227] この場合、摂動動力学モデルは、ロボット 1の全体重心の摂動と、目標 ZMPまわり のモーメントの摂動との関係(動力学的関係)を次式 18により記述するモデルである
[0228]
mtotal * hG * d2 Δ xG/dt2 = AxG水 mtotal水 g+ Δ Μχ ……式 18 ここで、 hGは、目標 ZMP力 全体重心までの高さ、 AxGは全体重心の水平方向摂 動量、 Δ Μχは目標 ZMPまわりのモーメント水平成分である。その他の変数は、前記 ロボット単純ィ匕モデルに関して定義したものと同じである。なお、式 18は、サジタルブ レーン上での式であり、ラテラルプレーン上での関係式は、式 18の右辺の第 2項の 符号を反転させればよい。
[0229] この式 18は、ロボット 1の全体質量 mtotalの質点を持ち、また、その質点の支点であ る目標 ZMPまわりに発生するモーメント水平成分が Δ Mxとなるような倒立振子の動 力学的挙動を示す式である。
[0230] また、ロボット 1の全体重心位置の摂動量 AxGと上体位置の摂動量(以下、これを
Axbと記述する)との関係は、次式 19により表される。
[0231]
Axb=k* AxG ……式 19 ここで、 kはある比例定数である。従って、 Axbは、 AxGに比例するものとされる。摂 動運動に対しては、式 19は近似的に成立すると考えてよい。
[0232] 従って、摂動動力学モデル 280では、式 18の右辺の Δ Μχとして、加算部 278の出 力を用いることで、全体重心の摂動量 AxGが算出され、さらに、この AxG力も式 19 によって、上体位置摂動量が求められる。なお、本実施形態では、修正目標上体位 置姿勢のうちの修正目標上体姿勢は、目標上体姿勢に一致させるものとし、上体姿 勢の摂動量は 0とする。
[0233] 対象物反力平衡制御装置 102では、このようにして摂動動力学モデル 280から出 力される上体位置摂動量を目標上体位置姿勢 (歩容生成装置 100の出力)に加算 部 282で加算することにより、修正目標上体位置姿勢を算出する。
[0234] 以上が対象物反力平衡制御装置 102の具体的な演算処理である。
[0235] 以上説明した第 1実施形態の作動、特に歩容生成装置 100の処理によって、対象 物反力を考慮しつつ、今回歩容が定常歩容に収束するように今回歩容が生成される 。このため、ロボット 1の継続的な安定性を確保しながら、ロボット 1により対象物 120 を押すなどの作業を円滑に行なうことができる。また、定常歩容で、将来の対象物反 力(2歩目の対象物反力)が考慮されることから、例えばロボット 1により対象物 120を 押す作業を今回歩容に続く次回歩容で開始する場合において、ロボット 1は今回歩 容において、上体 3を対象物 120に向力つて加速する動作を行う。そして、その上で 、次回歩容カも対象物 120を押す動作を開始する。つまり、押す動作を開始する前 に、ロボット 1の重心を対象物 120に向かわせる慣性力を発生した状態で、対象物 12 0を押し始める。このため、対象物 120を押す動作を開始するために、ロボット 1の足 平位置姿勢を今回歩容力 大きくずらしたりすることなぐ安定余裕を確保することが できる(ZMP修正量を小さくできる)。
[0236]
[第 2実施形態]
次に、本発明の第 2実施形態を図 20を参照して説明する。なお、この第 2実施形態 の説明では、第 1実施形態と同一構成部分あるいは同一機能部分については第 1実 施形態と同じ参照符号を用い、説明を省略する。この第 2実施形態は、本発明の第 1 〜第 3発明、第 5発明、第 7〜第 10発明の実施形態である。
[0237] 第 2実施形態は、図 5の S01において、移動計画を修正する処理 (本発明の第 8発 明に対応する処理)のみが第 1実施形態と相違するものである。以下説明すると、実 対象物運動軌道と、移動計画に基づく目標対象物運動軌道とのずれが大きくなるよ うな状況は、実際の対象物 120に作用する力のうち、ロボット 1から作用する力以外の 外乱力が比較的大きく変化した場合に発生する。
[0238] そこで、第 2実施形態では、第 1実施形態で説明した如く対象物位置偏差に応じて 移動計画を修正する代わりに、例えば前記推定外乱力の変化に応じて移動計画を 修正する。これ以外は、第 1実施形態と同じである。
[0239] 以下、具体例を説明すると、例えば、前記図 18 (a)に示した例の場合には、前記 S 35で算出される推定外乱力 (X軸方向成分)は、図 20 (a)に示すように、対象物 120 が段差に引つ力かる時刻 tl以後に負方向に急激に大きくなる。そこで、第 2実施形態 では、この推定外乱力が所定値以上変化したとき(図 20 (a)の時刻 t5)に、図 18 (a) に関して第 1実施形態で説明した如ぐ修正前移動計画を修正して、修正後移動計 画を決定する。
[0240] さらに、図 18 (b)に示した例の場合には、前記 S35で算出される推定外乱力(X軸 方向成分)は、図 20 (b)に示すように、対象物 120が段差を乗り越えた時刻 t3以後に 、時刻 tl以前の元の値とほぼ同じ値に戻っていく。そこで、この推定外乱力が、所定 値以上変化した後に、元の値にほぼ近い値に戻ったとき(図 20 (b)の時刻 t6)に、図 18 (b)に関して第 1実施形態で説明した如ぐ修正後移動計画を修正して、再修正 後移動計画を決定する。
[0241] 以上説明した以外の処理は、前記第 1実施形態と同じである。
[0242] かかる第 2実施形態においても、第 1実施形態と同様の作用効果が得られる。
[0243] 補足すると、第 2実施形態では、推定外乱力の変化に応じて移動計画を修正する ようにした力 両腕体 5, 5の 6軸力センサ 52の検出値力 把握される実対象物反力 と、 S35で決定される目標対象物反力との偏差が所定値よりも大きくなつたときに移 動計画を修正しするようにしてもょ ヽ。 [0244]
[第 3実施形態]
次に本発明の第 3実施形態を図 21および図 22を参照して説明する。なお、この第 3実施形態の説明では、第 1実施形態と同一構成部分あるいは同一機能部分につ いては第 1実施形態と同じ参照符号を用い、説明を省略する。この第 3実施形態は、 本発明の第 1、第 2発明、第 4発明、第 6〜第 9発明の実施形態である。
[0245] 図 21は第 3実施形態での歩容生成装置 100の処理のうち、第 1実施形態に係る図 5の処理に対応する部分の処理を示すフローチャートである。同図 21に示すように、 第 3実施形態では、 S 19の判断結果力 SNOである場合の処理のみが第 1実施形態と 相違している。
[0246] すなわち、第 1実施形態では、 S 19の判断結果力 SNOであるときに、目標対象物反 力軌道を修正するようにした力 第 3実施形態では、これに代えて、 S21 'において、 遊脚足平 22の着地予定位置姿勢または着地予定時刻を修正する。これは今回歩容 ノ メータのうちの足平軌道パラメータを修正することを意味する。この場合、着地予 定位置姿勢または着地予定時刻は、その修正後に S07〜S 17の処理を再度実行し たときに、 ZMP修正量ができるだけ小さくなるように (少なくとも着地予定位置姿勢ま たは着地予定時刻の修正前に求めた ZMP修正量よりも小さくなるように)修正される 。そして、その修正後に、 S07からの処理を再度実行する。これ以外は、第 1実施形 態と同一である。
[0247] S21 'での具体的な修正例を以下に説明する。例えば今現在、今回歩容の遊脚足 平 22の着地予定位置姿勢と次回歩容の遊脚足平 22の着地予定位置姿勢が図 22 の実線で示す如く決定されているとする。なお、図示の例では、ロボット 1をほぼ一定 の歩幅で、今回歩容支持脚座標系の X軸方向に直進歩行させるものとなっている。
[0248] そして、今回歩容まではロボット 1が対象物 120に近づき、次回歩容の途中から、口 ボット 1が対象物 120を X軸の正方向に押す作業を開始するものとする。この場合、 図 23 (a)に示す如ぐ目標対象物反力軌道は、例えば次回歩容の途中から立ち上 力 ¾ようなステップ状の軌道となる。
[0249] このとき、図 22の実線で示すような着地予定位置姿勢を維持したまま、 S 17までの 処理を実行すると、 S 17の処理で決定される ZMP修正量 (X軸方向成分)は、例えば 図 23 (b)に実線で示す如ぐ比較的大きなものとなって、 S19の判断結果が NOとな る場合がある。
[0250] この場合に、 S21 'の処理では、例えば次回歩容の遊脚足平 22の着地予定位置 姿勢を図 22の破線で示す如ぐ今回歩容の支持脚足平 22Lに X軸方向で近づける ように修正する。すなわち、次回歩容の歩幅をより小さくするように遊脚足平 22Lの着 地予定位置姿勢を修正する。このように次回歩容の着地予定位置姿勢を修正した後 に、 S05からの処理を再び実行すると、 S 17で決定される ZMP修正量が、図 23 (b) に破線で示す如く小さくなる。その結果、 S 19の判断結果が YESになる。補足すると 、次回歩容の遊脚足平 22Lの着地予定位置姿勢を図 22の如く修正したとき、前記し た定常歩容の足平軌道パラメータの決定手法によって、定常歩容の第 2旋回歩容の 終端遊脚足平位置も、第 2旋回歩容の初期遊脚足平位置 (今回歩容の遊脚足平 22 Rの着地予定位置)〖こ近づくこととなる。
[0251] なお、上記の例では、次回歩容の遊脚足平 22Lの着地予定位置姿勢を修正する ようにしたが、今回歩容の遊脚足平 22Rの着地予定位置姿勢を修正する余裕がある 場合には、それを修正するようにしてもよい。あるいは、今回歩容および次回歩容の 両者の着地予定位置姿勢を修正するようにしてもょ 、。
[0252] また、上記の例では、着地予定位置姿勢を修正するようにしたが、今回歩容と次回 歩容との少なくともいずれか一方の遊脚足平 22の着地予定時刻を修正するようにし てもよい。図 23に示した状況では、例えば次回歩容の着地予定時刻を遅らせるよう にすればよい。
[0253] 以上が本発明の第 3実施形態である。力かる第 3実施形態においても、第 1実施形 態と同様の作用効果を奏することができる。なお、第 3実施形態では、 S19の判断結 果が NOである場合に遊脚足平 22の着地予定位置姿勢または着地予定時刻を修正 するようにしたが、それと併せて、第 1実施形態の如ぐ目標対象物反力軌道を修正 するようにしてちょい。
[0254] なお、以上説明した第 1〜第 3実施形態では、ロボット 1により対象物 120を押して 移動させる場合を例に採って説明したが、対象物 120を引いて移動させる場合や、 対象物 120を持ち上げて移動させる場合などにも本発明を適用することができる。さ らには、電磁力や、空気流などの流体によって、ロボット 1が直接的にある対象物に 接触せずに、該ロボット 1が外力を受ける環境下でロボット 1を移動させるような場合 にも本発明を適用することができる。
産業上の利用可能性
[0255] 以上のように、本発明は、ロボットに対象物を移動させるなどの作業を行わせる場合 のように、ロボットに外力が適宜作用する環境下で、ロボットの継続的な安定性を確 保できる歩容を生成できるものとして有用である。
図面の簡単な説明
[0256] [図 1]本発明の実施形態における脚式移動ロボットのとしての 2足移動ロボットの概略 構成を示す図。
[図 2]図 1のロボットに備えた制御ユニットの構成を示すブロック図。
[図 3]図 2の制御ユニットの要部の機能的構成を示すブロック図。
[図 4]実施形態におけるロボットと対象物との関係を示す図。
[図 5]第 1実施形態における歩容生成装置の演算処理を示すフローチャート。
[図 6]第 1実施形態における歩容生成装置の演算処理を示すフローチャート。
[図 7]第 1実施形態における歩容生成装置の演算処理を示すフローチャート。
[図 8]図 5の S02で決定する移動計画の例を示す図。
[図 9]図 5の S02の処理を示すブロック図。
[図 10]図 10 (a)は図 5の S07に係る仮目標 ZMP軌道の例を示す図、図 10 (b)は図 5 の S17で決定される ZMP修正量の例を示す図、図 10 (c)は S17で修正された目標 ZMP軌道の例を示す図。
[図 11]図 5の S 11で決定する足平軌道パラメータの例を示す図。
[図 12]図 12 (a)は今回歩容の対象物床反力モーメント軌道の例を示す図、図 12 (b) は図 5の SI 1で決定する定常歩容の対象物反力モーメント軌道の例を示す図。
[図 13]実施形態で用いるロボット動力学モデルの例を示す図。
[図 14]図 13のロボット動力学モデルを使用して上体位置を求める処理を示すブロッ ク図。 [図 15]図 15 (a) , (b)は、図 5の S21の処理を説明するための図。
[図 16]図 6の S29の処理を説明するための図。
[図 17]図 7の S35の処理を示すブロック図。
[図 18]図 18 (a) , (b)は、図 5の SOIの移動計画の修正処理を説明するための図。
[図 19]図 3に示す対象物反力平衡制御装置の処理を示すブロック図。
圆 20]本発明の第 2実施形態における S01 (図 5)の移動計画の修正処理を説明す るための図。
圆 21]本発明の第 3実施形態における歩容生成装置の要部の処理を示すフローチ ヤート。
[図 22]図 21の S21 'の処理を説明するための図。
[図 23]図 23 (a) , (b)は図 21の S21 'の処理を説明するための図。

Claims

請求の範囲
[1] 上体から延設された複数の脚体を備える脚式移動ロボットの歩容生成装置におい て、
前記ロボットに作用させる床反力以外の外力の目標軌道を仮決定する外力軌道仮 決定手段と、
少なくともロボットの脚体の運動に関する要求と前記仮決定された外力の目標軌道 とを基に、新たに作成しょうとする所定期間分のロボットの目標歩容である今回歩容 における脚体の運動軌道とロボットに作用させるべき床反力および外力の軌道とを規 定するパラメータを少なくとも含む今回歩容パラメータを仮決定する今回歩容パラメ ータ仮決定手段と、
少なくとも前記要求と前記仮決定された外力の目標軌道とを基に、前記今回歩容 に続く仮想的な周期的歩容における脚体の運動軌道とロボットに作用させるべき床 反力および外力の軌道とを規定するパラメータを少なくとも含む周期的歩容パラメ一 タを決定する周期的歩容パラメータ決定手段と、
前記ロボットに作用する床反力および外力とロボットの運動との関係を表すロボット 動力学モデルと前記今回歩容パラメータとに基づいて求められる該ロボットの上体の 運動軌道が、該動力学モデルと前記周期的歩容パラメータとに基づいて求められる 該ロボットの上体の運動軌道に収束するという条件を満足するように、前記仮決定さ れた今回歩容パラメータのうちの少なくとも 1つのパラメータを修正して今回歩容パラ メータを決定するパラメータ修正手段と、
少なくとも前記修正された今回歩容パラメータに基づいて前記今回歩容の瞬時値 を逐次決定する今回歩容瞬時値決定手段とを備えたことを特徴とする脚式移動ロボ ットの歩容生成装置。
[2] 上体から延設された複数の脚体を備える脚式移動ロボットに対象物を移動させる作 業を行わせるための該ロボットの歩容を生成する装置において、
少なくとも前記対象物の移動計画を基に、前記対象物力 ロボットに作用する反力 としての外力の目標軌道と前記対象物の目標運動軌道とを仮決定する対象物軌道 仮決定手段と、 少なくとも前記仮決定された対象物の目標運動軌道と外力の目標軌道とを基に、 新たに作成しょうとする所定期間分のロボットの目標歩容である今回歩容における脚 体の運動軌道とロボットに作用させるべき床反力および外力の軌道とを規定するパラ メータを少なくとも含む今回歩容パラメータを仮決定する今回歩容パラメータ仮決定 手段と、
少なくとも前記仮決定された対象物の目標運動軌道と外力の目標軌道とを基に、 前記今回歩容に続く仮想的な周期的歩容における脚体の運動軌道とロボットに作用 させるべき床反力および外力の軌道とを規定するパラメータを少なくとも含む周期的 歩容パラメータを決定する周期的歩容パラメータ決定手段と、
前記ロボットに作用する床反力および外力とロボットの運動との関係を表すロボット 動力学モデルと前記今回歩容パラメータとに基づいて求められる該ロボットの上体の 運動軌道が、該ロボット動力学モデルと前記周期的歩容パラメータとに基づいて求め られる該ロボットの上体の運動軌道に収束するという条件を満足するように、前記仮 決定された今回歩容パラメータのうちの少なくとも 1つのパラメータを修正して今回歩 容パラメータを決定するパラメータ修正手段と、
少なくとも前記修正された今回歩容パラメータに基づいて前記今回歩容の瞬時値 を逐次決定する今回歩容瞬時値決定手段とを備えたことを特徴とする脚式移動ロボ ットの歩容生成装置。
[3] 前記パラメータ修正手段が修正対象とするパラメータは、前記今回歩容パラメータ のうち、少なくとも前記床反力の軌道を規定するパラメータを含み、
該パラメータ修正手段は、前記仮決定された今回歩容パラメータのうち、前記床反 力の軌道を規定するパラメータを前記条件を満足するように修正したときの該パラメ ータの修正量が所定量を超えるとき、該修正量を小さくしつつ前記条件を満足するよ うに、前記仮決定された今回歩容パラメータのうちの少なくとも前記外力の軌道を規 定するパラメータを修正する手段を備えることを特徴とする請求項 1または 2記載の脚 式移動ロボットの歩容生成装置。
[4] 前記パラメータ修正手段が修正対象とするパラメータは、前記今回歩容パラメータ のうち、少なくとも前記床反力の軌道を規定するパラメータを含み、 該パラメータ修正手段は、前記仮決定された今回歩容パラメータのうち、前記床反 力の軌道を規定するパラメータを前記条件を満足するように修正したときの該パラメ ータの修正量が所定量を超えるとき、該修正量を小さくしつつ前記条件を満足するよ うに、前記仮決定された今回歩容パラメータのうちの少なくとも前記脚体の運動軌道 を規定するパラメータを修正する手段を備えることを特徴とする請求項 1または 2記載 の脚式移動ロボットの歩容生成装置。
[5] 前記床反力の軌道を規定するパラメータは、ロボットの目標 ZMPの軌道を規定す るパラメータであることを特徴とする請求項 3記載の脚式移動ロボットの歩容生成装 置。
[6] 前記床反力の軌道を規定するパラメータは、ロボットの目標 ZMPの軌道を規定す るパラメータであることを特徴とする請求項 4記載の脚式移動ロボットの歩容生成装 置。
[7] 前記対象物軌道仮決定手段は、前記対象物の運動と該対象物に作用する力との 関係を表わす対象物動力学モデルと前記移動計画とを基に前記対象物の目標運動 軌道と前記外力の目標軌道とを仮決定する手段であり、
前記パラメータ修正手段は、少なくとも前記パラメータ修正手段により修正された今 回歩容パラメータと前記周期的歩容パラメータと、前記ロボット動力学モデルとを基に 前記ロボットの将来の運動を予測するロボット将来挙動予測手段と、
前記予測されたロボットの将来の運動と、前記仮決定された前記対象物の目標運 動軌道とを基に、該ロボットと対象物とが所定の幾何学的制約条件を満たしているか 否かを判断し、満たしていない場合には前記対象物の目標運動軌道と、前記修正さ れた今回歩容パラメータのうちの脚体の運動軌道を規定するパラメータとのうちの少 なくともいずれか一方を修正して今回パラメータを決定する手段とを備えることを特徴 とする請求項 2記載の脚式移動ロボットの歩容生成装置。
[8] 前記対象物に作用する力のうち、前記今回歩容の瞬時値に応じて動作している前 記ロボットから前記対象物に作用する力以外の外乱力を推定する対象物外乱力推 定手段を備え、
前記対象物軌道仮決定手段は、前記対象物の運動と該対象物に作用する力との 関係を表わす対象物動力学モデルと前記移動計画と前記推定された外乱力とを基 に前記対象物の目標運動軌道と前記外力の目標軌道とを仮決定する手段であるこ とを特徴とする請求項 2記載の脚式移動ロボットの歩容生成装置。
[9] 前記対象物軌道仮決定手段は、前記移動計画に対応する対象物の運動軌道と前 記仮決定した対象物の目標運動軌道との間の差と、前記推定された外乱力とのうち の少なくともいずれか一方に基づき、前記移動計画を修正する手段を備えることを特 徴とする請求項 8記載の脚式移動ロボットの歩容生成装置。
[10] 請求項 1または 2記載の脚式移動ロボットの歩容生成装置により生成された今回歩 容瞬時値に応じて該ロボットの動作を制御する制御装置において、
前記ロボットに作用する実床反力以外の実外力と、前記今回歩容の瞬時値のうち の前記外力の瞬時値との偏差に応じて、該偏差を 0に近づけるように、前記ロボット の今回歩容の瞬時値のうちの前記ロボットの目標運動と目標床反力とのうちの少なく とも!/、ずれか一方を修正する歩容瞬時値修正手段と、その修正された今回歩容の瞬 時値に追従するように該ロボットの動作を制御する制御手段とを備えたことを特徴と する脚式移動ロボットの制御装置。
PCT/JP2005/013840 2004-08-02 2005-07-28 脚式移動ロボットの歩容生成装置および制御装置 WO2006013779A1 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
DE602005019183T DE602005019183D1 (de) 2004-08-02 2005-07-28 Beweglicher roboter mit beinen und einer gangmustererzeugungsvorrichtung
EP05767078A EP1798004B1 (en) 2004-08-02 2005-07-28 Legged mobile robot having a gait pattern generating device
KR1020077000627A KR101209097B1 (ko) 2004-08-02 2005-07-28 다리식 이동 로봇의 보용생성장치 및 제어장치
US11/572,677 US7991508B2 (en) 2004-08-02 2005-07-28 Gait generating system and control device of legged mobile robot

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2004226048A JP4485279B2 (ja) 2004-08-02 2004-08-02 脚式移動ロボットの歩容生成装置および制御装置
JP2004-226048 2004-08-02

Publications (1)

Publication Number Publication Date
WO2006013779A1 true WO2006013779A1 (ja) 2006-02-09

Family

ID=35787067

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2005/013840 WO2006013779A1 (ja) 2004-08-02 2005-07-28 脚式移動ロボットの歩容生成装置および制御装置

Country Status (6)

Country Link
US (1) US7991508B2 (ja)
EP (3) EP2177324B1 (ja)
JP (1) JP4485279B2 (ja)
KR (1) KR101209097B1 (ja)
DE (1) DE602005019183D1 (ja)
WO (1) WO2006013779A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114625129A (zh) * 2022-02-22 2022-06-14 中国科学院自动化研究所 位控腿足机器人的运动控制方法及系统

Families Citing this family (36)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4531520B2 (ja) 2004-10-15 2010-08-25 本田技研工業株式会社 脚式移動ロボットの制御装置
DE602005021689D1 (de) 2004-10-15 2010-07-15 Honda Motor Co Ltd Gangerzeuger für mobilen roboter mit beinen
JP4641252B2 (ja) * 2005-12-12 2011-03-02 本田技研工業株式会社 脚式移動ロボットの歩容生成装置
JP4560658B2 (ja) * 2007-12-10 2010-10-13 本田技研工業株式会社 脚式移動ロボットの制御装置
JP5483997B2 (ja) * 2009-10-28 2014-05-07 本田技研工業株式会社 脚式移動ロボットの制御装置
JP5232124B2 (ja) * 2009-10-28 2013-07-10 本田技研工業株式会社 脚式移動ロボットの制御装置
KR101667032B1 (ko) * 2009-10-30 2016-10-17 삼성전자 주식회사 로봇의 경로 계획 장치 및 그 방법
JP4952959B2 (ja) * 2009-11-18 2012-06-13 独立行政法人科学技術振興機構 搬送システム、ロボットの制御方法
US9764468B2 (en) 2013-03-15 2017-09-19 Brain Corporation Adaptive predictor apparatus and methods
US9242372B2 (en) 2013-05-31 2016-01-26 Brain Corporation Adaptive robotic interface apparatus and methods
US9314924B1 (en) 2013-06-14 2016-04-19 Brain Corporation Predictive robotic controller apparatus and methods
US9597797B2 (en) * 2013-11-01 2017-03-21 Brain Corporation Apparatus and methods for haptic training of robots
US9358685B2 (en) 2014-02-03 2016-06-07 Brain Corporation Apparatus and methods for control of robot actions based on corrective user inputs
US9395726B1 (en) * 2014-07-24 2016-07-19 Google Inc. Methods and devices for bound and gallop gaits
US10081098B1 (en) 2014-08-25 2018-09-25 Boston Dynamics, Inc. Generalized coordinate surrogates for integrated estimation and control
US9618937B1 (en) 2014-08-25 2017-04-11 Google Inc. Slip detection using robotic limbs
US9499219B1 (en) 2014-08-25 2016-11-22 Google Inc. Touch-down sensing for robotic devices
US9387588B1 (en) * 2014-08-25 2016-07-12 Google Inc. Handling gait disturbances with asynchronous timing
US9623556B1 (en) * 2014-09-03 2017-04-18 X Development Llc Robotic sole joint
US9630318B2 (en) 2014-10-02 2017-04-25 Brain Corporation Feature detection apparatus and methods for training of robotic navigation
US9446518B1 (en) 2014-11-11 2016-09-20 Google Inc. Leg collision avoidance in a robotic device
JP6332018B2 (ja) * 2014-12-25 2018-05-30 トヨタ自動車株式会社 搬送ロボット、及びその制御方法
US9440353B1 (en) 2014-12-29 2016-09-13 Google Inc. Offline determination of robot behavior
US9499218B1 (en) 2014-12-30 2016-11-22 Google Inc. Mechanically-timed footsteps for a robotic device
JP6447278B2 (ja) * 2015-03-18 2019-01-09 トヨタ自動車株式会社 多点接触ロボット、多点接触ロボットの制御方法及びプログラム
US9594377B1 (en) * 2015-05-12 2017-03-14 Google Inc. Auto-height swing adjustment
US9586316B1 (en) 2015-09-15 2017-03-07 Google Inc. Determination of robotic step path
US9778132B1 (en) * 2015-12-16 2017-10-03 X Development Llc Methods and systems for force sensor calibration
JP6483014B2 (ja) * 2015-12-25 2019-03-13 本田技研工業株式会社 移動ロボットの制御装置
US9789919B1 (en) 2016-03-22 2017-10-17 Google Inc. Mitigating sensor noise in legged robots
US11510539B2 (en) * 2017-06-02 2022-11-29 Pixart Imaging Inc. Auto clean machine, cliff determining method and surface type determining method
WO2020133288A1 (zh) * 2018-12-28 2020-07-02 深圳市优必选科技有限公司 一种双足机器人步态控制方法以及双足机器人
CN113031579B (zh) * 2019-12-25 2023-10-10 深圳市优必选科技股份有限公司 双足机器人的行走控制方法、装置及双足机器人
JP7396231B2 (ja) * 2020-08-28 2023-12-12 トヨタ自動車株式会社 配送システム、配送方法、及びプログラム
CN114115310B (zh) * 2021-11-19 2023-12-15 北京理工大学 一种四足机器人运动控制方法及系统
CN114253260B (zh) * 2021-12-08 2023-08-18 深圳市优必选科技股份有限公司 机器人步态规划方法及装置、运动规划设备和存储介质

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10230485A (ja) 1996-12-19 1998-09-02 Honda Motor Co Ltd 脚式移動ロボットの姿勢制御装置
JP3233450B2 (ja) 1992-05-22 2001-11-26 本田技研工業株式会社 指定時刻到達関数発生器
WO2002040224A1 (fr) * 2000-11-17 2002-05-23 Honda Giken Kogyo Kabushiki Kaisha Dispositif generateur d'un modele de demarche pour robot mobile pourvu de jambes
JP2002326173A (ja) 2001-04-27 2002-11-12 Honda Motor Co Ltd 脚式移動ロボットの動作生成装置
WO2003057427A1 (fr) 2001-12-28 2003-07-17 Honda Giken Kogyo Kabushiki Kaisha Dispositif de commande pour robot mobile sur jambes
JP2004209614A (ja) * 2003-01-08 2004-07-29 National Institute Of Advanced Industrial & Technology 脚式移動ロボット及び制御方法
JP2005115654A (ja) * 2003-10-08 2005-04-28 Sony Corp 情報処理装置および方法、プログラム格納媒体、並びにプログラム

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6486080A (en) 1987-09-29 1989-03-30 Kawasaki Steel Co Method and apparatus for diagnosing abnormality of current detector
JP3035051B2 (ja) * 1991-12-20 2000-04-17 本田技研工業株式会社 脚式移動ロボットの歩行制御装置
JP3663034B2 (ja) 1996-07-25 2005-06-22 本田技研工業株式会社 脚式移動ロボットの歩容生成装置
EP0965416B1 (en) * 1996-12-19 2005-12-07 Honda Giken Kogyo Kabushiki Kaisha Attitude controller of legged moving robot
JP3726009B2 (ja) * 2000-05-19 2005-12-14 本田技研工業株式会社 脚式移動ロボットの床形状推定装置
JP3760186B2 (ja) * 2001-06-07 2006-03-29 独立行政法人科学技術振興機構 二脚歩行式移動装置及びその歩行制御装置並びに歩行制御方法
EP1470900B1 (en) 2001-12-28 2010-07-14 Honda Giken Kogyo Kabushiki Kaisha Gait production device and control device for leg type movable robot
KR100960552B1 (ko) * 2002-04-26 2010-06-03 혼다 기켄 고교 가부시키가이샤 다리식 이동 로봇의 제어장치 및 족적결정 장치
JP3833567B2 (ja) * 2002-05-01 2006-10-11 本田技研工業株式会社 移動ロボットの姿勢制御装置
US8005573B2 (en) * 2003-06-27 2011-08-23 Honda Motor Co., Ltd. Control device for legged mobile robot
EP1649983B1 (en) * 2003-06-27 2010-09-22 Honda Motor Co., Ltd. Gait generation device for legged mobile robot
JP4531520B2 (ja) * 2004-10-15 2010-08-25 本田技研工業株式会社 脚式移動ロボットの制御装置
JP4440761B2 (ja) * 2004-12-24 2010-03-24 本田技研工業株式会社 脚式移動ロボットの制御装置

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3233450B2 (ja) 1992-05-22 2001-11-26 本田技研工業株式会社 指定時刻到達関数発生器
JPH10230485A (ja) 1996-12-19 1998-09-02 Honda Motor Co Ltd 脚式移動ロボットの姿勢制御装置
WO2002040224A1 (fr) * 2000-11-17 2002-05-23 Honda Giken Kogyo Kabushiki Kaisha Dispositif generateur d'un modele de demarche pour robot mobile pourvu de jambes
JP2002326173A (ja) 2001-04-27 2002-11-12 Honda Motor Co Ltd 脚式移動ロボットの動作生成装置
WO2003057427A1 (fr) 2001-12-28 2003-07-17 Honda Giken Kogyo Kabushiki Kaisha Dispositif de commande pour robot mobile sur jambes
JP2004209614A (ja) * 2003-01-08 2004-07-29 National Institute Of Advanced Industrial & Technology 脚式移動ロボット及び制御方法
JP2005115654A (ja) * 2003-10-08 2005-04-28 Sony Corp 情報処理装置および方法、プログラム格納媒体、並びにプログラム

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
HARADA K. ET AL: "Humanoid ni yoru Oshi Sosa. (Pushing Manipulation by a Humano id Robot)", DAI 45 KAI PROCEEDINGS OF THE JAPAN JOINT AUTOMATIC CONTROL CONFERENCE, 2002, pages 115 - 116, XP002996819 *
OKADA K. ET AL: "Taishobutsu Kido no Kijutsu ni Motozuita Humanoid no Zenshin Dosa Seiseiho to Buttai Unpan Kodo no Jitsugen. (Motion Generation of Humanoids based on Object Trajectory Description)", THE 22ND ANNUAL CONFERENCE OF THE ROBOTICS SOCIETY OF JAPAN YOKOSHU, September 2004 (2004-09-01), pages 1K12, XP002996820 *
See also references of EP1798004A4

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114625129A (zh) * 2022-02-22 2022-06-14 中国科学院自动化研究所 位控腿足机器人的运动控制方法及系统
CN114625129B (zh) * 2022-02-22 2023-09-12 中国科学院自动化研究所 位控腿足机器人的运动控制方法及系统

Also Published As

Publication number Publication date
EP2177324A1 (en) 2010-04-21
US20080208391A1 (en) 2008-08-28
EP1798004A1 (en) 2007-06-20
JP4485279B2 (ja) 2010-06-16
DE602005019183D1 (de) 2010-03-18
US7991508B2 (en) 2011-08-02
EP1798004A4 (en) 2008-05-07
EP2172312A1 (en) 2010-04-07
JP2006043797A (ja) 2006-02-16
EP2177324B1 (en) 2012-12-05
EP2172312B1 (en) 2012-12-05
KR101209097B1 (ko) 2012-12-06
EP1798004B1 (en) 2010-01-27
KR20070032778A (ko) 2007-03-22

Similar Documents

Publication Publication Date Title
JP4485279B2 (ja) 脚式移動ロボットの歩容生成装置および制御装置
JP4808626B2 (ja) 脚式移動ロボットの歩容生成装置
JP4641252B2 (ja) 脚式移動ロボットの歩容生成装置
JP4531520B2 (ja) 脚式移動ロボットの制御装置
WO2006067904A1 (ja) 脚式移動ロボットの歩容生成装置
JP3726097B2 (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 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: 1020077000627

Country of ref document: KR

WWE Wipo information: entry into national phase

Ref document number: 11572677

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: 2005767078

Country of ref document: EP

WWP Wipo information: published in national office

Ref document number: 1020077000627

Country of ref document: KR

WWP Wipo information: published in national office

Ref document number: 2005767078

Country of ref document: EP