WO2004041484A1 - ロボット装置、ロボット装置の運動制御装置及び運動制御方法 - Google Patents

ロボット装置、ロボット装置の運動制御装置及び運動制御方法 Download PDF

Info

Publication number
WO2004041484A1
WO2004041484A1 PCT/JP2003/013870 JP0313870W WO2004041484A1 WO 2004041484 A1 WO2004041484 A1 WO 2004041484A1 JP 0313870 W JP0313870 W JP 0313870W WO 2004041484 A1 WO2004041484 A1 WO 2004041484A1
Authority
WO
WIPO (PCT)
Prior art keywords
gravity
center
motion
robot device
trajectory
Prior art date
Legal status (The legal status 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 status listed.)
Ceased
Application number
PCT/JP2003/013870
Other languages
English (en)
French (fr)
Inventor
Kenichiro Nagasaka
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sony Corp
Original Assignee
Sony Corp
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 Sony Corp filed Critical Sony Corp
Priority to EP03769977.4A priority Critical patent/EP1559519B1/en
Priority to US10/500,372 priority patent/US7400939B2/en
Priority to AU2003280608A priority patent/AU2003280608A1/en
Publication of WO2004041484A1 publication Critical patent/WO2004041484A1/ja
Anticipated expiration legal-status Critical
Ceased legal-status Critical Current

Links

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B62LAND VEHICLES FOR TRAVELLING OTHERWISE THAN ON RAILS
    • B62DMOTOR VEHICLES; TRAILERS
    • B62D57/00Vehicles characterised by having other propulsion or other ground- engaging means than wheels or endless track, alone or in addition to wheels or endless track
    • B62D57/02Vehicles characterised by having other propulsion or other ground- engaging means than wheels or endless track, alone or in addition to wheels or endless track with ground-engaging propulsion means, e.g. walking members
    • B62D57/032Vehicles characterised by having other propulsion or other ground- engaging means than wheels or endless track, alone or in addition to wheels or endless track with ground-engaging propulsion means, e.g. walking members with alternately or sequentially lifted supporting base and legs; with alternately or sequentially lifted feet or skid

Definitions

  • the present invention relates to a mouth pot device provided with at least a plurality of legible moving legs, a motion control device of a robot device, and a motion control method.
  • the present invention relates to a robot apparatus, a motion control apparatus for a robot apparatus, and a motion control method in which a ground period such as running or jumping and a non-ground period are mixed in addition to a motion consisting of only a ground period such as walking.
  • the present invention corresponds to the transition between the walking / stopping state and the running / jumping while maintaining the dynamic balance appropriately even for the transition between the irregular grounding motion and the non-grounding motion.
  • BACKGROUND OF THE INVENTION 1 Field of the Invention
  • the present invention relates to a robot device that seamlessly changes a motion state, a motion control device of the robot device, and a motion control method, and in particular, a mouth bot device that generates a stable motion pattern that transitions between a ground motion and a non-ground motion in real time
  • the present invention relates to a motion control device and a motion control method for a bot device.
  • robot A mechanical device that performs a motion similar to a human motion by using an electric or magnetic action is referred to as a “robot”.
  • the term robot is said to come from the Slavic word "ROBOTA”. Mouth pots began to spread in Japan in the late 1960s, but most of them were industrial robots such as manipulators and transfer robots for the purpose of automating and unmanned production work in factories. (Industrialrobot)
  • Leg-based movement by two feet standing upright is unstable compared to the crawler type, four-legged or six-legged type, making posture control and walking control difficult, but walking with irregularities on the work route such as uneven terrain and obstacles It is excellent in that it can flexibly move, for example, it can handle discontinuous walking surfaces such as surfaces and stairs and ladders.
  • Stable “walking” here can be defined as “moving using the legs without falling over”.
  • Robot posture stabilization control is very important in avoiding robot overturn. This is because a fall means that the mouth pot interrupts the work being performed, and considerable work and time is required to get up from the fall and resume work. In addition, there is a risk that the fall may cause fatal damage to the mouth bot itself or the object on the other side that collides with the falling robot.
  • ZMP Zero Moment P o int
  • the stability discrimination criterion based on the ZMP is based on the principle that the gait and the I-prize force are applied from the walking system to the road surface, and that these moments balance the floor reaction force and the floor reaction moment as a reaction from the road surface to the walking system. Principle ".
  • the ZMP norm states that ⁇ at any moment of walking, the ZMP is inside the supporting polygon formed by the foot and the road surface, and the force in the direction that the mouth pot pushes the road surface acts. In this way, the robot can walk stably without overturning (the airframe rotates).
  • a situation in which a leg-type moving port pot cannot cope with its walking function alone may include a non-contact state in which a reaction force from the ground cannot be obtained.
  • the legged mobile robot operates in the gravitational environment where the ground exists, there is no situation where the contactless state continues for a long time, but it is considered that there are many situations where short-term and intermittent contactless states occur. .
  • the robot jumps over a gap, jumps down a step, runs to increase the speed of movement, jumps to maintain balance, and changes the standing position.
  • a method of calculating a motion pattern based on the ZMP standard is an effective basic control method of today's legged mobile robot (described above).
  • the biggest advantage of adopting ZMP as a mouth bot's body stability discrimination standard is its high practicality, such as easy provision of geometric constraints on the toes and its application to a wide range of machine models. It is in.
  • a technology for generating a real-time walking pattern that enables a user to walk while generating a stable motion pattern on-board during operation, and there is a report on the configuration of a flexible control system. (See Japanese Patent Application No. 2002-288745, which has already been assigned to US Pat.
  • the mass of the leg is generally increased to a level that cannot be ignored in the dynamic model. It would be difficult to apply the conventional method to a legged mobile robot having such a leg mass.
  • the second problem is that there are few running 'jumping control algorithms that can respond to the transition from the walking to the stopped state.
  • the legged mobile robot rarely runs and jumps at all times.In many situations, the legged mobile robot is stopped or walking, and after running and jumping as necessary, It is considered that the robot returns to the "walking" stop state again. In some cases, the robot jumps immediately after touching the ground, while in other cases, it gradually accelerates the walking to run, and then smoothly decelerates to the second stop.
  • the third problem is that most of the driving / view control methods cannot add geometric constraints.
  • the trajectory of the toe can be explicitly specified. For example, it is desirable that parameters such as the stride 'cycle during running and the sole height during jumping can be specified by the user's program. It is not advisable to operate the toe trajectory to maintain balance when demands arise, such as running up stairs or jumping through multiple continuous gaps.
  • the gait control method based on the gait pattern generation based on the ZMP norm has a great practical advantage in that such kinematic constraints can be imposed. This is a requirement that does not change when the motion is extended to a motion in which a non-contact period exists.
  • the fourth problem is that there is a strong demand for a method that can change the movement pattern in real time so as to satisfy asynchronous external requests.
  • An object of the present invention is to provide an excellent robot device, a motion control device for a robot device, and a motion, in which a grounding period such as running or jumping and a non-grounding period coexist in addition to a motion including only a grounding period such as walking. It is to provide a control method.
  • a further object of the present invention is to support the transition between the walking / stopping state and the running / jumping, and to seamlessly maintain the dynamic balance appropriately even for the transition between irregular grounding motion and non-grounding motion.
  • An object of the present invention is to provide an excellent robot device, a motion control device of a mouth pot device, and a motion control method capable of changing a motion state.
  • a further object of the present invention is to provide an excellent robot apparatus capable of generating, in real time, a stable motion pattern that transitions between a ground motion and a non-ground motion. It is to provide a motion control device and a motion control method.
  • the present invention has been made in consideration of the above problems, and is a robot apparatus having a moving unit,
  • Centroid horizontal position trajectory determining means for calculating the solution of the equation
  • the robotic device in the current control cycle has The center-of-gravity vertical position for calculating the solution of the equation of motion with boundary conditions for the center-of-gravity vertical position trajectory so that the center-of-gravity vertical position and speed state in the next control cycle are continuously connected to the center-of-gravity vertical position and speed state.
  • Orbit determination means
  • the moment around the center of gravity of the robot device has a size near or near the opening, and the center of gravity horizontal position trajectory determining means and the center of gravity vertical position trajectory And a motion state determining means for determining a motion state of the robot device in the next control cycle so as to satisfy the position of the center of gravity determined by the determining means.
  • the center-of-gravity horizontal position trajectory determining means for example, when the moving means and the floor contact the ground, the moment about the horizontal axis acting on the robot device, and at least the temporal continuity of the center-of-gravity position and speed state of the robot device.
  • the center of gravity horizontal position trajectory of the robot apparatus is calculated based on
  • the center-of-gravity vertical position trajectory determining means may include, for example, when the moving means and the floor surface are ungrounded, a vertical translation force acting on the robot apparatus other than gravity, and at least a center-of-gravity vertical of the robot apparatus.
  • the center of gravity vertical position trajectory of the robot device is calculated based on the temporal continuity of the position and the speed state.
  • the exercise state determination means may include, for example, when the movement means and the floor surface are not in contact with the ground, The motion state of the robot device is determined so as to satisfy the moment around the center of gravity of the pot device and the center of gravity determined by the center-of-gravity horizontal position trajectory determining means and the center-of-gravity vertical position trajectory determining means.
  • the center-of-gravity horizontal position trajectory determining means, and the center-of-gravity vertical position trajectory determining means respectively control the solution of the equation of motion with boundary conditions for the center-of-gravity horizontal position trajectory and the center-of-gravity vertical position trajectory.
  • the motion state determining means determines the motion state of the robot device for each control cycle while adjusting the moment around the center of gravity of the mouth bot device, so that the operation of the robot device is controlled in real time. can do.
  • the motion state determining means adjusts the moment generated in the robot apparatus by using the Jacobian calculated from the motion state of the robot apparatus in the current control cycle, while controlling the robot apparatus in the next control cycle.
  • the exercise state may be determined.
  • center-of-gravity horizontal position trajectory determining means when the moving means and the floor contact the ground, instead of the moment about the horizontal axis around a point in the support polygon being zero or a magnitude near zero, In order to calculate the solution of the equation of motion with boundary conditions for the center-of-gravity horizontal position trajectory of the robot, so that ZMP where the moment about the roll axis and the pitch axis of the robot is zero is present in the support polygon. You may do it.
  • center of gravity horizontal position trajectory determining means is configured such that when the moving means and the floor surface are not in contact with each other, the horizontal translational force is zero or near zero, but the horizontal momentum is substantially constant.
  • the solution of the equation of motion with boundary conditions for the center of gravity horizontal position trajectory of the robot apparatus may be calculated as follows.
  • the robot apparatus may further include a center-of-gravity position / velocity state measuring means for measuring a center-of-gravity position and a velocity state of the robot apparatus.
  • the center-of-gravity horizontal position trajectory determining means and the center-of-gravity vertical position trajectory determining means determine the center-of-gravity position and the speed state of the robot device in the current control cycle measured by the center-of-gravity position / speed state measuring means. It can be set as the initial boundary condition of the equation of motion with the boundary condition in the next control cycle.
  • the motion state determination means may determine the motion state of the mouth pot device by using a posture angle of the base of the robot device as an operation amount.
  • the motion state determination means may determine the motion state of the robot device using the hip joint angle of the robot device as an operation amount.
  • FIG. 1 is a diagram schematically showing a degree of freedom configuration of a legged mobile robot provided for carrying out the present invention.
  • FIG. 3 is a diagram schematically showing a functional configuration of a control system for a legged mobile robot according to one embodiment of the present invention.
  • FIG. 4 is a flowchart showing a processing procedure executed in the control system shown in FIG.
  • FIG. 5 is a diagram showing an example of the position / posture trajectory of the sole.
  • Fig. 6 is a diagram showing a situation where short-term sections are connected only for N sections.
  • Fig. 7 is a diagram showing a model in which short-term sections belonging to the ground-contact period and short-term sections belonging to the non-contact period are mixed in a model in which the short-term section is configured as a series of N sections.
  • Figure 8 is a diagram showing the relationship between the center-of-gravity position basic trajectory and the center-of-gravity position reference trajectory in a model in which short-term sections and short-term sections belonging to the non-contact period are mixed.
  • FIG. 9 is a flowchart showing a flow of processing executed in the center-of-gravity position trajectory generating section 32.
  • FIG. 10 is a diagram showing the relationship between the base posture basic trajectory and the base posture reference trajectory in a model in which short-term sections and short-term sections belonging to the non-contact period are mixed.
  • FIG. 11 is a flowchart showing a processing procedure executed in the base body posture trajectory generating unit 33.
  • BEST MODE FOR CARRYING OUT THE INVENTION The present invention makes it possible to generate a dynamically stable motion pattern in real time for a motion in which a grounding period and a non-grounding period coexist in a legged mobile robot. It provides a control method. With the control method according to the present invention, the legged mobile robot can perform dynamics while satisfying external demands such as a stride / period in a situation where not only walking but also jumping and running and these movements are sequentially expressed. It is possible to calculate and operate a stable motion pattern immediately.
  • FIG. 1 schematically shows a degree of freedom configuration of a legged mobile robot provided for implementing the present invention.
  • the limbs are attached to the base, and the shoulder joint pitch axis, shoulder joint roll axis, upper arm joint axis, elbow joint pitch axis, forearm joint axis, wrist roll axis, and wrist pitch axis have seven degrees of freedom.
  • the pelvis B1 which connects the left and right hip joints, corresponds to the base link, and the upper body is connected to the base link B1 via the lumbar joint with three degrees of freedom (roll, pitch, gyro), and the limb is connected to the base link B1.
  • the 6 degrees of freedom legs and upper body are connected.
  • Each of these joint degrees of freedom is actually realized by an actuator motor.
  • a small AC servo actuator of a type directly connected to a gear and of a type in which a servo control system is integrated into a single motor chip and mounted in a motor unit is mounted.
  • This type of AC servo actuator is disclosed, for example, in Japanese Patent Application Laid-Open No. 2000-299970 (Japanese Patent Application No. 11-33386) which has already been assigned to the present applicant.
  • An acceleration sensor A1 and a gyro G1 are mounted on the pelvis of the fuselage.
  • a uniaxial load cell F1 to F8 that detects the floor reaction force in the vertical direction of the sole and infrared distance sensors (D1 to D8) that measure the distance to the floor surface
  • acceleration sensors A2, A3) and gyros (G2, G3) are attached to the center of the left and right soles, respectively.
  • the mass of the mouth pot is m
  • the force and moment received by the mouth pot from the outside are F and ⁇ , respectively.
  • such a constraint condition relating to a dynamic equilibrium condition is referred to as a “dynamic constraint condition”.
  • conditions that explicitly constrain position and time, such as a toe trajectory are called “geometric constraints”.
  • the dynamic constraint condition represented by the above equation can be converted into a notation using a force f and a moment n that does not generate a motion pattern, as described later.
  • the whole body movement pattern is such that the above equation (1) holds for the grounding period and the above equations (2) and (3) hold for the non-grounding period.
  • FIG. 3 schematically shows a functional configuration of a control system for a legged mobile robot according to the present embodiment.
  • the control system includes a motion request input unit 3A, a real-time whole-body motion generation unit 3B, and a whole-body joint drive unit 3C.
  • the real-time whole-body motion generator 3 B further includes a sole position / posture trajectory generator 31, a center of gravity position trajectory generator 32, a body posture trajectory generator 33, and each trajectory interpolator (more specifically, Specifically, the upper body joint angle reference trajectory interpolator 34, the body posture reference trajectory interpolator 35, the center of gravity position reference trajectory interpolator 36, the sole position / posture reference trajectory interpolator 3 7), and the mass distribution It comprises an adjustment unit 38 and a joint angle calculation unit 39.
  • the motion request input section 3A is provided with a motion request (upper body joint angle reference trajectory) to the upper body (arm joint / lumbar joint) which is determined every moment by the user's program (or other means not shown).
  • Motion demands related to the posture angle of the base (pelvis) basic trajectory
  • motion demands related to the center of gravity vertical position trajectory basic center vertical position trajectory
  • the real-time whole-body motion generator 3B can smoothly transition from the current motion state while maintaining the dynamic balance equilibrium based on the dynamic constraints, and can request the upper body and lower limb motion change from the user program. Then, the motion state of the robot at the next time that can satisfy both is determined and output as the joint angle reference value of the whole body.
  • the whole-body joint drive unit 3C refers to the joint angle output from the real-time whole-body motion generation unit 3B.
  • the actuator 'motor' which configures the degree of freedom of the whole body, is driven by a servo 'controller (not shown).
  • the sole position and posture trajectory generation unit 31 in the real-time whole-body movement generation unit 3B is based on the parameters related to the lower limb movement input from the exercise request input unit 3A, The positions and posture trajectories of the right and left soles up to a few steps ahead are calculated.
  • the center-of-gravity position trajectory generation unit 32 reflects the center-of-gravity vertical position basic trajectory input from the motion request input unit 3A to the maximum extent, and smoothly connects to the current center-of-gravity position trajectory.
  • the above equation (1) as the dynamic constraint condition Force
  • the center-of-gravity position trajectory that satisfies the above equation (2) as the dynamic constraint condition during the non-contact period is calculated.
  • the body posture trajectory generation unit 33 connects smoothly to the current body posture trajectory while maximally reflecting the body posture basic trajectory input from the motion request input unit 3A,
  • the above equation (3) holds as the dynamic constraint condition for the non-contact period.
  • the base posture angle trajectory is calculated as follows.
  • Each trajectory interpolation unit (upper body joint angle reference trajectory interpolation unit 34, body posture reference trajectory interpolation unit 35, center of gravity position reference trajectory interpolation unit 36, and sole position / posture reference trajectory interpolation unit 37) Interpolation processing of the upper body joint angle reference trajectory, body posture reference trajectory, center of gravity position reference trajectory, and sole position / posture reference trajectory calculated as described above is performed, and the next time the upper body joint angle, body posture
  • the mass distribution adjustment unit 38 which calculates the angle, the position of the center of gravity, the position of the sole, and the posture, calculates the body joint angle, the body posture angle, the position of the center of gravity, the sole position and the posture of the whole body at the same time. Adjust the mass distribution.
  • the joint angle calculation unit 39 realizes the base position at the next time obtained by the mass point distribution adjustment unit 38 and the sole position and posture at the next time obtained from the sole position / posture trajectory generation unit 31. Determine the joint angle of the leg. This can be performed, for example, by calculating the relative position and orientation of the two and then using, for example, a well-known inverse kinematics calculation.
  • FIG. 4 shows, in a flowchart, a processing procedure executed in the control system shown in FIG.
  • control system After the processing is started, the control system outputs the upper body joint angle, the body posture, Input the vertical position of the center of gravity and the exercise request for lower limb exercise (step S1).
  • the sole position / posture trajectory generation unit 31, the center-of-gravity position trajectory generation unit 32, and the base posture trajectory generation unit 33 generate the sole position ′ posture trajectory, the center of gravity position trajectory, and the base posture trajectory, respectively. (Steps S2, S3, S4).
  • each of the above trajectory interpolation units (upper body joint angle reference trajectory interpolation unit 34, base posture reference trajectory interpolation unit 35, center of gravity position reference trajectory interpolation unit 36, sole position / posture reference trajectory interpolation unit 3 7)
  • the upper body joint angle, body posture angle, center of gravity position, and sole position-posture at the next time are calculated (step S5).
  • step S6 the whole body joint angle is calculated by the mass point distribution adjusting unit 38 (step S6), and finally, each joint is driven by the controller in the whole body joint driving unit 3C (step S7).
  • the above processing is processing related to one cycle of the control system shown in FIG. After the above process is completed, a process of returning to the execution of step S1 is executed again at a predetermined control cycle ⁇ t (for example, 10 milliseconds).
  • the sole position in the real-time whole-body motion generator 3B
  • the posture trajectory generator 31 sends the step length ⁇ motion cycle (walking cycle, running cycle, jump cycle, etc.) input from the exercise request input section 3A- Plan the positions and posture trajectories of the right and left soles from the current sole position 'posture to several steps ahead according to the parameters related to lower limb movements such as turning angle, height of foot rise, and flight time.
  • Fig. 5 shows an example of the position / posture trajectory of the sole. As shown in the figure, the position of the sole.
  • the posture trajectory is the coordinate position ( x , y, z) for the position and the Euler angle (a, ⁇ , ⁇ ) for the posture. It is constructed by generating a time series using polynomial capture for each parameter for the left and right soles so as to conform to the lower limb movement parameters described above.
  • a left bottom position and orientation (XL, y L, z L , o L, ⁇ have), the current left bottom position and orientation have (x L y L1. Z L1 , a L1 ) ⁇ ⁇ 7li ), the next landing position / posture (x L2 , y L2) z L2 , a l2 , ⁇ 12 , y L2 ) is determined by the lower limb movement parameters such as the stride length 'movement cycle-the turning angle,
  • a L a L (t; a L1 , a L2 ) (4)
  • a fifth-order polynomial can be used as the interpolation formula.
  • the sole position / posture for the second and subsequent steps is also configured by an interpolation formula, assuming that the same lower limb movement request as for the first step continues. The same configuration is applied to the right sole position / posture trajectory.
  • the center-of-gravity position trajectory generation unit 32 determines that the dynamic constraint condition expressed by the above equation (1) during the touchdown period and the dynamic constraint condition expressed by the above equation (2) during the non-contact period, Calculate the horizontal trajectory of the center of gravity such that each holds.
  • equation (9) is a simple equation, it is a differential equation for the coefficient of variation with respect to X and y, and it is not easy to obtain an analytical solution. Therefore, in the present embodiment, a relatively short time interval T is considered, and it is assumed that the following approximation is established within this short time interval.
  • is an eigenvalue and is expressed by the following equation.
  • the general motion of the legged mobile robot is described as a model in which a plurality of short-term sections satisfying the above assumptions (Assumption 1), (Assumption 2), and (Assumption 3) are formed in series.
  • Fig. 6 shows a situation in which short-term sections are connected only for N sections.
  • short-term section was modeled as a series of ⁇ sections in the contact period (described above), such a continuous section is divided into a short-term section belonging to the contact period and a short-term section as shown in FIG. Short-term sections belonging to the non-contact period may be mixed.
  • the boundary condition is different from that of the contact period, but is derived as follows based on the above equation (19).
  • the undetermined coefficients must be determined so that these boundary conditions are connected continuously with respect to position and velocity.
  • the continuous conditions of the position and velocity at the boundary between section i11 and section i are classified into the following cases according to the type of the adjacent short section.
  • section i-1 is a non-contact period and section i is a non-contact period
  • the boundary condition is imposed so as to realize the given center of gravity position and the velocity. Different boundary conditions are imposed as follows depending on whether the ground is in a non-contact period or a contact period.
  • boundary conditions are imposed as the end conditions of the entire exercise period so as to realize the given position of the center of gravity and the speed thereof. Different boundary conditions are imposed depending on which is as follows.
  • the current position and velocity of the center of gravity are substituted into the position and velocity of the center of gravity of the starting end condition in order to obtain a path of the position of the center of gravity that smoothly connects to the current motion state.
  • the center of gravity of both soles is set as the center of gravity of the termination condition based on the soles of the soles at the end of exercise.
  • For the velocity of the center of gravity of the termination condition the condition that the center of gravity is stationary at the position of the center of gravity is assumed, and settings such as substituting zero are made.
  • a constraint is imposed on the solution of the equation of motion such that the center of gravity reaches just above the centers of both soles after a certain time.
  • the boundary of the short-term section may be set, for example, at the boundary between the two-leg support period and the single-leg support period, or at the boundary between the contact period and the non-contact period.
  • the ZMP positions other than the specified two nodes p xj , xk (j, ke [o, N]) at the boundary of the grounding section are fixed at the ground polygon center of gravity, and only p xj and p xk are set as variables.
  • the above equations (21) to (36) may be configured to be solved as a 2N + 2 simultaneous linear equation. Once the unknown variables are determined, the horizontal position of the center of gravity at any time during the planned exercise period is calculated using the above equation (13) for the contact area and the above equation (18) for the non-contact section. be able to.
  • the center of gravity horizontal position trajectory is obtained.
  • mechanical constraints are imposed on the center-of-gravity vertical position trajectory, and the trajectory must be generated to satisfy this condition.
  • the vertical motion of the center of gravity there is no particular mechanical constraint during the contact phase as long as f z > 0 is satisfied.
  • the robot's vertical position trajectory of the center of gravity of the robot can be obtained as a free fall curve as shown in the following equation.
  • the center of gravity vertical position zeta 2 at the center of gravity vertical position zeta chi and landing during ambulation is extracted is input from the motion request input unit 3 Alpha, your Keru value in start and end of the non-grounded phase in the centroid vertical position basic trajectory Used.
  • the center-of-gravity vertical position trajectory input from the user's program is referred to as a “basic trajectory” because the trajectory is modified to satisfy the above-mentioned dynamic constraint conditions. This is because the center of gravity vertical position reference trajectory is different.
  • the basic trajectory can be regarded as a rough trajectory set in advance by the user.
  • the term "basic trajectory” is used to mean "a trajectory that can be modified to the maximum extent that satisfies the dynamic constraints.”
  • the center-of-gravity vertical position trajectory during the non-contact period may be set according to the above equation (40) for each non-contact period.
  • the touchdown period is adjacent to the no-contact period, it is smoothly connected to Equation (40) at the boundary with the no-contact period.
  • the section i-11 shown in the figure is a case particularly sandwiched between ungrounded sections, and the above equation (4 2) applies not only to the boundary (end) with section i but also to the boundary (start) of section i_2.
  • a curved trajectory that satisfies the boundary condition given by must be set.
  • a curved trajectory that satisfies such start and end conditions can be set using, for example, polynomial interpolation.
  • Interpolation may be performed using a special curve that does not include an inflection point, or may be configured using a response curve of a panel-damper system.
  • Section i + 1 in Fig. 8 corresponds to such a case.
  • the section i + 1 shown in the drawing is different from the section i-11 in that the other end is connected to the ground section i + 2.
  • the boundary (end) with the section i satisfies the boundary condition given by the above equation (43)
  • the boundary (end) with the section i + 2 is the position of the basic trajectory perpendicular to the center of gravity.
  • the vertical position trajectory of the center of gravity of section i may be set so that the velocity and the speed are continuous.
  • a curved trajectory that satisfies such start and end conditions can be set using, for example, a polynomial trap.
  • the minimum value or set curve to not sink than the basic trajectory delta Z above, not prepared interpolation may be performed using a special curve that does not include the inflection point, or may be configured using a response curve of a panel-damper system.
  • the center-of-gravity vertical position basic trajectory may be set as a reference trajectory.
  • the trajectory of the whole grounding period as described above is not necessarily corrected from the basic trajectory, but a part immediately before or immediately after leaving or landing. It may be configured to partially correct the trajectory such as the time of the trajectory.
  • FIG. 9 shows, in the form of a flowchart, the flow of processing executed in the center-of-gravity position trajectory generator 32.
  • This basic ZMP position is corrected in the subsequent calculation of the center-of-gravity horizontal position trajectory (Step S14), but is reflected to achieve the maximum.
  • the subsequent center-of-gravity horizontal position trajectory calculation processing step S14
  • the ZMP would be out of the contact polygon and the mechanical constraints would not be satisfied when the modifications were made in. In many cases, such cases do not occur, but if a more robust system is desired, if a ZMP trajectory that deviates from the grounding polygon is obtained, the basic ZMP position can be corrected autonomously or lower limb movement can be achieved. Processes such as executing autonomous parameter changes may be added.
  • the inequality constraint is set in the matrix.
  • the constraint equation for continuous conditions differs depending on whether the adjacent section is a contact area or a non-contact section.
  • the center of gravity horizontal position trajectory boundary conditions at the start and end of the motion section under consideration are set in a matrix (step S13).
  • the starting boundary conditions are given by the above equations (29) to (32), and the ending boundary conditions are given by the above equations (33) to (36).
  • the constraint condition expression differs depending on whether the section is a section or an ungrounded section.
  • step S15 the center of gravity vertical position trajectory during the non-contact period is calculated (step S15). That is, based on the center-of-gravity vertical position basic trajectory given by the user program, the coefficient determination processing of the quadratic equation expressed by the above equation (40) is performed. No grounding At this time, the vertical position and velocity of the center of gravity can be calculated at any time during the period (including the boundary).
  • the vertical position and the velocity of the center of gravity at the boundary of the short-term section are calculated (step S16).
  • the vertical position and velocity of the center of gravity at the boundary during the non-contact period are calculated using the above equations (4 2) and (4 3).
  • the value of the center of gravity vertical position basic trajectory given by the user-program can be used as it is.
  • the center-of-gravity vertical position trajectory is constructed using an appropriate curve using a polynomial or the like so as to satisfy the boundary condition calculated in step S16.
  • the center-of-gravity vertical position basic trajectory given by the user's program is used as it is as the center-of-gravity vertical position trajectory.
  • step S15 the center-of-gravity vertical position trajectory during the non-contact period is obtained by step S15, and the center-of-gravity vertical position trajectory during the contact period is obtained by step S17. It is obtained.
  • the motion during the non-contact period is the sole position / posture position / posture output by the posture trajectory generator 31.
  • the orbit and the center of gravity position trajectory generator 32 must be designed to satisfy the constraint on the center of gravity position trajectory and the constraint on the angular momentum shown in the above equation (45). In the following, we explain in detail how to plan the motion that satisfies the constraints on angular momentum.
  • each of the above Jacobians J is a matrix of 3 XN q , and can be generally analytically obtained as a function of the current port bot state q.
  • the constraints on the center-of-gravity position trajectory, sole position 'posture trajectory, and angular momentum are the constraints on the generalized speed of the robot state.
  • the index of the left sole link be i L and the index of the right sole link be.
  • the translation speed of the sole link must be equal to the translation speed of each of the right and left feet calculated from the sole trajectory generated by the sole position / posture trajectory generation unit 31.
  • the velocity of the center of gravity must be equal to the velocity of the center of gravity calculated from the center of gravity position trajectory generated by the center of gravity position trajectory generation unit 32.
  • Each constraint gives a constraint of three degrees of freedom, so that a total of 18 degrees of freedom are imposed by the above equation (51) and equation (56).
  • the leg joint angular speed (total of 12 variables) and the translation speed of the base (3 variables) and Euler angular velocity (3 variables) are unknown variables, and the upper body joint angle trajectory is known. Therefore, the number of unknown variables is 18, which is the same as the number of constraint equations.
  • the body postures a b and k + 1 in the control cycle can be obtained by integrating the Euler angular velocities obtained as the solutions of the above simultaneous equations and using the following equation.
  • the base posture trajectory satisfying the equation (3) as the dynamic constraint condition for the rotational motion during the non-contact period That's what we got.
  • the angular momentum is not set to an appropriate value, a movement with a large rotational movement in the air may be generated.
  • Various methods of setting the angular momentum are conceivable.However, if it is not assumed that the motion causes the entire body to rotate largely in the air, the angular momentum during the non-contact period is set to 0 as shown in the following equation. Is the easiest.
  • the body posture trajectory during the non-contact period is obtained according to the processing procedure described above, while the substrate posture trajectory during the contact period is set so that it is smoothly connected to the substrate posture trajectory during the non-contact period.
  • the basic trajectory of the base attitude must be corrected.
  • the body posture angular velocity becomes the value of the body posture angular velocity obtained by solving the simultaneous equations consisting of the equations (51) to (56) in this posture.
  • the body attitude trajectory of the adjacent landing period immediately before the non-landing period must be corrected.
  • the body posture angle matches the value of the body posture angle at the end of the non-contact period obtained by the numerical integration of the above equation (57).
  • the angular velocity of the body posture becomes the value of the angular velocity of the body posture obtained by solving the simultaneous equations of equations (51) to (56) in this posture.
  • the substrate attitude trajectory must be corrected.
  • FIG. 10 exemplifies the relationship between the base posture basic trajectory and the base posture reference trajectory in a model in which short-term sections and short-term sections belonging to the non-contact period are mixed.
  • the section i-1 in the figure corresponds to such a case. However, only the roll angle orbit is shown for simplification of the drawing.
  • Section i-11 is a case where both the start and end are in contact with the non-grounded section. Not only the boundary (end) with section i but also the boundary (start) of section i-11 is as described above. Boundary conditions are imposed. For example, using a polynomial interpolation such as a spline interpolation, a base posture trajectory during a contact period can be set as a curved trajectory that satisfies the start and end conditions.
  • the section i + 1 in the figure is different from the case of section i-1 1 in that the start end is adjacent to section i where there is no grounding period, but the other end is the grounding period where it is connected to grounding section i + 2 .
  • the boundary (end) between section i + 2 and the boundary (end) with section i + 2 should be the position of the basic body attitude basic trajectory so that the boundary (start) with the section i satisfies the boundary condition based on the body attitude angle trajectory during the non-contact period.
  • the body attitude angle trajectory in section i must be set so that the velocity is continuous.
  • a curved trajectory that satisfies such a start-end condition can be set using, for example, polynomial interpolation.
  • the base body posture basic trajectory may be set as it is as the reference trajectory.
  • the trajectory of the body attitude angle during the grounding period adjacent to the non-contact period is not necessarily corrected from the basic trajectory as described above. Such as the time of The trajectory may be partially modified.
  • the difference between the method of correcting the body attitude angle trajectory during the contact period and the method of correcting the center-of-gravity position trajectory is that the time must be sequentially processed.
  • the trajectory in the non-contact section can be obtained only by numerical integration based on the above equation (57), and the boundary condition at the end of the non-contact period is determined by this number-linear integration. It is. In practice, only this numerical integration should be performed during the non-contact period, and the trajectory correction of the adjacent contact period should be performed at the boundary from the non-contact period to the contact period.
  • the base body posture trajectory generating unit 33 adds to the equation (1) as the mechanical constraint in the contact period and the equation (2) as the mechanical constraint in the contactless period, It is possible to generate a base posture trajectory that satisfies the equation (3) as a target constraint.
  • FIG. 11 shows, in the form of a flowchart, a processing procedure executed in the base body posture trajectory generating unit 33.
  • step S21 it is determined whether or not the current time belongs to the non-contact period.
  • the process proceeds to step S22, and using the sole position / posture trajectory output from the sole position / posture trajectory generation unit 31, the Jacobian constraint equation (5 1) Find (5-4).
  • the angular momentum Jacobian constraint equation (56) is obtained using the angular momentum calculated before leaving the bed (step S24).
  • a body posture angular trajectory in a non-contact period can be sequentially generated (step S26).
  • step S21 processing is performed only when the current time corresponds to the beginning of the ground contact period (step S20).
  • step S27 it is determined whether the contact period is a section adjacent to the non-contact period. If it is the contact period adjacent to the non-contact period, it is further determined whether or not the immediately adjacent short-term section is the non-contact period (step S28).
  • the target angular momentum in the non-contact period is calculated based on a criterion such as the above equation (58) or (59) (step S29).
  • the sole position / posture trajectory generated by the sole position / posture trajectory generation unit 31 and the center of gravity trajectory generation unit 32 generate The value at the time of leaving the calculated center of gravity position trajectory is used.
  • the simultaneous linear equation consisting of the Jacobian constraint equations (51) to (56) is solved to calculate the base body posture angular velocity at the time of leaving the bed (step S33). At this point, the boundary conditions at the end of the touchdown period have been determined.
  • step S34 it is determined whether or not the immediately adjacent short-term section is in the non-contact period.
  • step S35 If the immediately preceding short-term section is in the non-contact period, the body posture angular velocity at the end of the non-contact period obtained as a result of step S26 is extracted as the boundary condition at the start of the contact period, so that The setting of the boundary conditions is completed (step S35).
  • step S34 if it is determined in step S34 that the immediately preceding short-term section is in the touchdown period, the value of the base posture basic trajectory given by the user program is set as the boundary condition of the start point of the touchdown period. Complete the setting of the boundary conditions for (Step S38).
  • step S28 if it is determined that the short-term section immediately after the touchdown period is also the touchdown period, the process proceeds to step S37, and the body posture given from the motion request input unit 3A as the boundary condition of the touchdown period end.
  • the boundary conditions at the beginning of the touchdown period are set in the same way as in the case where the short-term section immediately after the touchdown period is determined to be the no-contact period in step S28. You.
  • step S39 the grounding period is set so that the boundary condition is satisfied.
  • a process of configuring the base body posture trajectory using a curve such as polynomial interpolation is performed. Further, if it is determined in step S27 that the contact period is not adjacent to the non-contact period, the basic posture trajectory given from the motion request input unit 3A is used as the base posture trajectory during the contact period. Therefore, in step S36, the basic body posture trajectory is set as the body posture trajectory during the touchdown period, and the process is completed.
  • the description of the functional configuration of the mouth bot control system according to the present embodiment will be continued.
  • the upper body joint angle reference trajectory, body posture reference trajectory, center of gravity position reference trajectory, and sole position and posture reference trajectory given by the user program can be obtained.
  • interpolation units provided for each trajectory in each control cycle (upper joint angle reference trajectory interpolation unit 34, body posture reference trajectory interpolation unit 35, center of gravity position reference trajectory interpolation unit 36, plantar
  • the body joint angle, the body posture angle, the center of gravity position, and the sole position / posture at each time can be calculated.
  • the trajectory of the body posture angle trajectory in the non-contact period is given in the form of a numerical integration, the interpolation process in the body posture reference trajectory interpolation unit 35 is not particularly necessary.
  • the mass point distribution adjusting unit 38 adjusts the mass point distribution state of the whole body so as to satisfy the base posture and the center of gravity position at the next time obtained as described above. That is, the substrate orientation, while fixing the sole position and orientation, and the upper body joint angles to the requested value, the position of the substrate (the pelvis) (x B, y B, z B) operates the center of gravity of the whole body is in the The whole body mass distribution is adjusted so that the obtained center of gravity is obtained. Under such geometric constraints, the speed between the substrate and the center of gravity is between Jacobian and T. Then, the following relationship is established.
  • the manipulated variable dx B can be approximately obtained by the following equation.
  • the substrate position X Bk + 1 after mass point distribution adjustment to obtain the substrate posture and the center of gravity position at the next time obtained above can be obtained by the following equation. It can. However, if the deviation between the center of gravity obtained as a result of the above equation (62) and the reference center of gravity is still large, convergence calculation is performed by repeatedly using the equation (62) until the deviation becomes sufficiently small. You may.
  • the joint angle calculation unit 39 realizes the base position at the next time obtained by the mass point distribution adjustment unit 38 and the sole position and posture at the next time obtained from the sole position / posture trajectory generation unit 31. Determine the joint angles of the legs. This can be performed, for example, by calculating the relative position and orientation of the two and then using, for example, a well-known inverse kinematics calculation.
  • the obtained joint angle of the leg joint and the reference joint angle of the upper body given by the user program are output as the reference value of the whole body joint angle at the next time.
  • the legged moving bot can be used not only for walking, but also for jumping and running, as well as for stride and cycle in situations where these movements appear sequentially. While satisfying external demands such as the above, it is possible to operate while calculating a dynamically stable motion pattern in a responsive (or real-time) manner.
  • the position of the center of gravity and the attitude angle of the base are used as the state quantities of the robot.
  • this may be configured to use other state quantities.
  • the effect of the present invention can be similarly obtained by using the position of a part (for example, the waist) close to the center of gravity instead of the center of gravity, or using the waist joint angle instead of the body posture angle.
  • a so-called whole body cooperative control system may be configured by using an arbitrary joint angle as a state quantity.
  • the whole-body motion generation processing is configured to be executed at each control cycle, but the trajectory generation is performed only when the contact state changes (both legs supported, one leg supported, ungrounded boundary).
  • Steps S1 to S4 in Fig. 4 are executed, and only the processes after the trajectory interpolation processing (Steps S5 to S7 in Fig. 4) are executed for each control cycle.
  • the trajectory generation processing may be configured to be executed in a longer cycle. However, in this case, the responsiveness of the exercise demand reflection decreases.
  • the motion state at the current time obtained as a result of the previous whole-body motion generation processing is set as the initial condition of the next-period whole-body motion generation processing, so that the current motion state is smoothly changed.
  • the exercise state to be connected has been determined, but the gist of the present invention is not limited to this.
  • a pelvis acceleration sensor A 1 and a gyro mouth G 1 a sole force sensor (F 1 to F 8), a distance measurement sensor (D 1 to D 8), an acceleration sensor (A 2, A 3), and a gyro (G
  • the motion state of the actual robot is measured using sensors such as (2, G3), and this is set as the initial condition. It can be configured to execute a whole body motion generation process reflecting the state.
  • the gist of the present invention is not necessarily limited to products called “robots”. In other words, if a mechanical device performs a motion that resembles human motion using an electric or magnetic action, the same applies to a product belonging to another industrial field such as a toy.
  • the present invention can be applied to
  • an excellent motion control apparatus and a motion control method for a legged mobile robot which can generate a stable motion pattern transitioning between a ground motion and a non-ground motion in real time. can do.
  • the present invention is based on the point that there are few restrictions on the mechanical model, such as the massless leg assumption (for example, Kiyotoshi Matsuoka, “Repetitive jump model. Biomechanism 5” (The University of Tokyo Press, 1998) , P. 4501—4509), and Mark. H. Rabert (Marc H. Raibert) et al. Two experiments on balance using a “three-dimensional single-leg hopping” machine (Experiments In Balancewitha 3D) one—L egged Hopping Machine) ”(International Journal of Robotics Research, The International Journal of Hot Research, 1984, Vol. 3, No. 2, p.
  • the present invention it is possible to control the motion of a legged mobile robot in which grounding and non-grounding are mixed.
  • Most of the conventional legged mobile robot control systems are related to walking, and few control systems have a wider range of motion control systems including non-contact periods such as running and jumping.
  • the present invention extends the method based on the ZMP stability criterion (see, for example, Non-Patent Document 1) to more general movements including the non-contact period,
  • the present invention is based on the ability to generate a dynamically stable movement pattern in real time, and requests for changes in lower limb movements such as stride length, step period, turning angle, and foot-height that are input asynchronously. It is possible to satisfy the demands for changes in upper body movement while maintaining the mechanical balance, and it is possible to realize flexible and diverse mixed movements without and with ground. It is extremely difficult to maintain mechanical stability while satisfying such external requirements with a method that creates motion patterns in advance offline or a conventional control system that only maintains balance.

Landscapes

  • Engineering & Computer Science (AREA)
  • Chemical & Material Sciences (AREA)
  • Combustion & Propulsion (AREA)
  • Transportation (AREA)
  • Mechanical Engineering (AREA)
  • Manipulator (AREA)
  • Toys (AREA)

Abstract

 接地時の支持多角形内の点回りの水平軸回りモーメントが0又は無接地時の水平方向並進力が0で、現在の重心水平位置・速度に連続的に接続するように将来のロボットの重心水平軌道に関する境界条件付運動方程式を求解し、無接地時に重力以外に作用する垂直方向並進力が0となり、現在の重心垂直位置・速度に連続的に接続するように将来のロボットの重心垂直軌道に関する境界条件付運動方程式を求解し、無接地時に重心モーメント回りモーメントが0となり、上記決定した重心位置を実現するように次時刻の運動状態を決定する。これによって、接地・無接地間を遷移する安定な運動パターンを実時間で生成することができる。

Description

ロボット装置、 ロポット装置の運動制御装置並びに運動制御方法 技術分野 本発明は、 少なくとも複数本の可明動脚を備えた口ポット装置、 ロボット装置の 運動制御装置並びに運動制御方法に係り田、 特に、 歩行などの接地期間のみからな る運動以外に、 走行や跳躍などの接地期間と無接地期間とが混在するロボット装 置、 ロボット装置の運動制御装置並びに運動制御方法に関する。
さらに詳しくは、 本発明は、 歩行■停止状態と走行'跳躍との遷移に対応し、 不規則な接地運動 ·無接地運動間の遷移に対しても動力学的バランスを適切に維 持しながらシームレスに運動状態を変更するロボット装置、 ロボット装置の運動 制御装置並びに運動制御方法に係り、 特に、 接地運動 ·無接地運動間を遷移する 安定な運動パターンを実時間で生成する口ボット装置、 口ボット装置の運動制御 装置並びに運動制御方法に関する。 背景技術 電気的若しくは磁気的な作用を用いて人間の動作に似せた運動を行う機械装置 のことを「ロボット」 という。 ロボットの語 は、スラブ語の "ROBOTA (奴 隸機械)"に由来すると言われている。わが国では、 口ポットが普及し始めたのは 1960年代末からであるが、 その多くは、 工場における生産作業の自動化 ·無 人化などを目的としたマ二ピュレータゃ搬送ロボットなどの産業用ロボット ( i n d u s t r i a l r o b o t) であつ 7こ。
最近では、 ヒトゃサルなどの 2足直立歩行を行う動物の身体メカニズムや動作 を模した脚式移動ロボットに関する研究開発が進展し、 実用化への期待も高まつ てきている。ヒトの生体メカニズムや動作を再現した脚式移動ロボットのことを、 特に、 「人間形」、若しくは「人間型」のロポット(huma n o i d r o b o t) と呼ぶ。
2足直立による脚式移動は、 クローラ式や、 4足又は 6足式などに比し不安定 で姿勢制御や歩行制御が難しくなるが、 不整地や障害物など作業経路上に凹凸の ある歩行面や、 階段や梯子の昇降など不連続な歩行面に対応することができるな ど、 柔軟な移動作業を実現できるという点で優れている。
2足の脚式移動ロボットに関する姿勢制御や安定歩行に関する技術は既に数多 提案されている。 ここで言う安定な 「歩行」 とは、 「転倒することなく、脚を使つ て移動すること」 と定義することができる。 ロボットの姿勢安定制御は、 ロボッ トの転倒を回避する上で非常に重要である。 何故ならば、 転倒は、 口ポットが実 行中の作業を中断することを意味し、 且つ、 転倒状態から起き上がって作業を再 開するために相当の労力や時間が私われるからである。 また、 転倒によって、 口 ボット本体自体、 あるいは転倒するロボットと衝突する相手側の物体にも、 致命 的な損傷を与えてしまう危険があるからである。
脚式移動ロボットの姿勢安定制御や歩行時の転倒防止に関する提案の多くは、 ZMP (Z e r o Mome n t P o i n t) を歩行の安定度判別の規範として 用いている。 ZMPによる安定度判別規範は、歩行系から路面には重力と' I賞性力、 並びにこれらのモーメントが路面から歩行系への反作用としての床反力並びに床 反モーメントとバランスするという 「ダランベールの原理」 に基づく。 力学的推 論の帰結として、 足底接地点と路面の形成する支持多角形 (すなわち ZMP安定 領域) の辺上あるいはその内側にピッチ軸及びロール軸モーメントがゼロとなる 点、すなわち「ZMP」が存在する(例えば、ヴコブラトビツチ(M i om i r V uk o b r a t o v i c') 著 「脚式移動ロボット (LEGGED LOCOMO T I ON ROBOTS)」 (加藤一郎外著『歩行ロボットと人工の足』 (日刊工業 新聞社)) を参照のこと)。
要約すれば、 ZMP規範とは、 「歩行のあらゆる瞬間において、 ZMPが足部と 路面とが形成する支持多角形の内側に存在し、 且つ、 口ポットが路面に押す方向 の力が作用すれば、 ロボットが転倒 (機体が回転運動) することなく安定に歩行 できる」 とするものである。
ZMP規範に基づく 2足歩行パターン生成によれば、 足底着地点をあらかじめ 設定することができ、 路面形状に応じた足先の運動学的拘束条件を考慮し易いな どの利点がある。 また、 ZMPを安定度判別規範とすることは、 力ではなく軌道 を運動制御上の目標値として扱うことを意味するので、 技術的に実現可能性が高 まる。
ところで、 従来開発されてきた脚式移動ロボットの移動形態は、 いずれかの脚 部が常に路面との接触を維持する 「歩行」 によるものが大半である。 通常運用時 の脚式移動口ポットにとって、 歩行は、 機械系 -電気系に対して過大な負荷を与 えることなく、 安全且つ効率的に移動可能な、 最適な移動形態と言える。
一方、 脚式移動口ポットがその歩行機能だけでは対応できない状況として、 地 面からの反力が得られない、 無接地状態を包含する場合が考えられる。 脚式移動 ロボットが地面の存在する重力環境中で動作する場合、 長期に亘つて無接地状態 が連続する状況はないが、 短期的■断続的無接地状態が発生する状況は多く存在 すると考えられる。 例えば、 ロボットが空隙部を飛び越える、 段上から飛び降り る、 移動速度を上げるために走行する、 バランス維持のために飛び跳ねて立脚位 置を変更するなどである。
このような脚式移動ロポットの無接地状態におけるバランス制御を扱った研究 例はまだ多くないが、例えば松岡清利著「反復跳躍モデル.バイオメカニズム 5 J (東京大学出版会、 1 98 5年、 p p. 4501—4509)、及びマーク · H - レイバート (Ma r c H. R a i b e r t) 外 2名著「3次元単脚ホッピング■ マシンを用いたバランスに関する実験 (E X p e r i me n t s I n B a l a n c e w i t h a 3D o n e— L e g g e d Ho i n g M a c h i n e)j (ロボット研究に関する国際機関誌( t h e I n t e r n a t i o n a l J o u r n a l o I Ro b o t i c s R e s e a r c h)、 1 984年、 V o 1. 3、 No. 2, p p. 75-92) などが先駆的研究として著名である。 し かしながら、 これらは、 以下のような理由で、 実用的な脚式移動ロボットの制御 系として利用されるには至らなかった。
①無質量脚を仮定しているので、 機械設計自由度に対する制約が大きい。
②連続跳躍のみを仮定していて、 歩行や停止状態との遷移に関するダイナミタス が十分には検討されていない。
③足先軌道に関し、 幾何的拘束条件を課し難い。 また、 長阪憲一郎著 「動力学フィルタによる人間型ロボットの全身運動生成」 (1999年、 東京大学工学部情報工学専攻博士論文) では、 Z MP規範の拡張 形として、 接地 ·無接地が混在する場合の脚式移動ロボットの運動パターンの算 出方法について提案されている。 しかしながら、 同文献では、 非線形方程式を解 くために収束演算を用いていることから、 計算負荷が高く、 オフラインであらか じめ運動パターンを算出しておかなければならない。 すなわち、 実時間で歩行- 走行 ·跳躍などの接地期間と無接地期間が混在する運動パターンを生成できるに は至っていない。
歩行制御に関しては、 ZMP規範に基づいて運動パターンを算出する方法が今 日の脚式移動ロボットの有力な基礎的制御手段となっている(前述)。 ZMPを口 ボットの機体安定度判別規範に採用する最大のメリットは、 足先の幾何的拘束条 件の与え易さと、 広範な機械モデルへの適用が可能であるなど、 その実用性の高 さにある。 例えば、 動作中にオンボードで安定な運動パターンを生成しながら歩 行可能とする、 実時間歩行パターン生成の技術も確立し、 柔軟な制御系の構成に 関する報告もある (例えば、 本出願人に既に譲渡されている特願 2002— 28 8745号明細書を参照のこと)。
一方、 走行 ·跳躍運動などの無接地期間を含む運動に関しては、 上述したよう に、 実用的な制御手段は提案されていない状況にある。
接地'無接地期間が混在する脚式運動の実用化の障害となる第一の問題として、 機械モデルへの制約が大きい制御方式が大半であるということが挙げられる。 特 に、 滞空時の脚の運動によるロボットの慣性変動を扱う困難さゆえに脚の質量を 無視している方式が多いため (例えば、 例えば松岡清利著 「反復跳躍モデル. パ ィォメカニズム 5」 (東京大学出版会、 1985年、 p p. 4501—4509)、 並びにマーク■ H ,レイバート (Ma r c H. Ra i b e r t) 外 2名著「3次 元単脚ホッピング■マシンを用いたバランスに関する実験 (Ex p e r i me n t s I n B a l a n c e w i t h a 3D on e— Le g g e d H o r> p i n g Ma c h i n e)] (ロボット研究に関する国際機関誌 (t h e I n t e r n a t i o n a l J o u r n a l o f Ro b o t i c s R e s e a r c h)、 1984年、 Vo l . 3、 No. 2, p p. 75— 92) を参照のこと)、 多くの実用的脚式移動ロボットに適用することができない。
今日の人間形ロボットは、 片脚に 6自由度以上の自由度を有するものが標準的 である。 このように脚部に多自由度を有する脚式移動ロボットでは、 多くのァク チユエータを搭載しなければならないが、 そのすベてを基体 (腰部など機体の重 心付近の部位) に搭载することは困難であり、 脚部内に相当数のァクチユエータ が組み込まれている (ワイヤ伝導による不用意なトルク干渉を起こさないためと の理由もあるだろう)。また、そもそも脚部は脚式移動ロボットの全重量を支持す る部位であり、 機械的強度の確保が必須であるため、 構造材が相当量の重量を有 している場合が多い。
以上のような理由から、 脚の質量は増大し、 力学モデル上無視できないレベル となるのが一般的である。 このような脚質量を有する脚式移動ロボットに対して 従来手法を適用することは困難であろう。
また、 第 2の問題として、 歩行'停止状態との遷移に対応可能な走行'跳躍制 御ァルゴリズムが少ないという点が挙げられる。
既に述べたように、 脚式移動ロボットが常時走行 ·跳躍を行なっているケース は稀であり、 多くの状況下では停止又は歩行状態にあり、 必要に応じて走行 -跳 躍を実行した後、 再度、 歩行'停止状態に復帰すると考えられる。 場合によって は, 接地状態から咄嗟に跳躍を行なう状況もあれば、 徐々に歩行を加速して走行 に至り、 滑らかに減速して再度歩行■停止に至る状況もある。
このような多様且つ不規則な接地運動■無接地運動間の遷移に対しても、 動力 学的バランスを適切に維持しながらシームレスに運動状態の変更が可能なより一 般的な制御方式が切望されている。
また、 第 3の問題として、 幾何的な拘束条件を付加できない走行 '眺躍制御方 式が大半であるという点が挙げられる。
特に、 脚部ェンド ·ボイントの慣性座標系内位置■姿勢軌道に幾何的拘束を課 したい状況は多く存在するが、 接地点が機体のバランス維持のために操作される 方式が多い。 脚式移動ロボットを定量的に制御するには、 足先の軌道を明示的に 指定できることが望ましい。 例えば、 走行時の歩幅'周期、 跳躍時の足底高さな どのパラメータはユーザ'プログラムより指定可能とするのが望ましい。 階段を 駆け登る、 あるいは連続的な複数の空隙を飛び越えるなどの要求が発生した場合 には、 足先の軌道をバランス維持のために操作するのは望ましくない。
Z MP規範に基づく歩行パターン生成による歩行制御方式は、 このような運動 学的拘束を課すことができることが大きな実用上の利点である。 これは無接地期 が存在する運動に拡張した場合にも変わらない要求である。
また、 第 4の問題として、 非同期な外部要求を満足するように実時間で運動パ ターンの変更が可能な方式が切望されていることが挙げられる。
脚式移動ロボットが実環境中を自由に移動可能とするためには、 さまざまなタ ィミングで入力される歩幅 ·ステップ周期 ·旋回角 ·足上げ高さなどの下肢の運 動変化要求や、 上体の運動変化要求を満足するよう、 力学的バランス平衡を保つ たまま、 即応的に全身運動を再計画する機能が必要である。 あらかじめオフライ ンで運動パターンを作成するのでは、 このような要求に応えることはできない。 また、 バランスの維持のみを行なう制御系では、 このような外部要求を満足する ことは困難であろう。 発明の開示 本発明の目的は、 歩行などの接地期間のみからなる運動以外に、 走行や跳躍な どの接地期間と無接地期間とが混在する、 優れたロボット装置、 ロボット装置の 運動制御装置並びに運動制御方法を提供することにある。
本発明のさらなる目的は、 歩行 ·停止状態と走行'跳躍との遷移に対応し、 不 規則な接地運動■無接地運動間の遷移に対しても動力学的バランスを適切に維持 しながらシームレスに運動状態を変更することができる、 優れたロボット装置、 口ポット装置の運動制御装置並びに運動制御方法を提供することにある。
本発明のさらなる目的は、 接地運動 ·無接地運動間を遷移する安定な運動バタ ーンを実時間で生成することができる、 優れたロボット装置、 ロボット装置の運 動制御装置並びに運動制御方法を提供することにある。 本発明は、 上記課題を参酌してなされたものであり、 移動手段を有するロボッ ト装置であって、
前記移動手段と床面が接地する際に、 前記床面に接地する前記移動手段の複数 の接地部位が形成する支持多角形内のある点回りの水平軸回りモーメントがゼロ 又はゼロ近傍となり、 且つ、 現在の制御周期における前記ロボット装置の少なく とも重心位置及び速度状態に次の制御周期のおける重心位置及び速度状態が連続 的に接続するように前記ロボット装置の重心水平位置軌道に関する境界条件付き 運動方程式の解を算出する重心水平位置軌道決定手段と、
前記移動手段と床面とが無接地の際に、 重力以外に前記ロボット装置に作用す る垂直方向並進力がゼロ又はゼロ近傍の大きさとなり、 且つ、 現在の制御周期に おける前記ロボット装置の重心垂直位置及び速度状態に、 次の制御周期における 重心垂直位置及び速度状態が連続的に接続するように前記ロボット装置の重心垂 直位置軌道に関する境界条件付き運動方程式の解を算出する重心垂直位置軌道決 定手段と、
前記移動手段と床面とが無接地の際に、 前記ロボット装置の重心回りモーメン トがゼ口又はゼ口近傍の大きさとなり、 且つ、 前記重心水平位置軌道決定手段及 び前記重心垂直位置軌道決定手段により決定された重心位置を満たすように、 次 の制御周期における前記ロポット装置の運動状態を決定する運動状態決定手段と、 を具備することを特徴とするロボット装置である。 ' 前記重心水平位置軌道決定手段は、例えば前記移動手段と床面が接地する際に、 前記ロボット装置に作用する水平軸回りモーメントと、 少なくとも前記ロボット 装置の重心位置及び速度状態の時間的連続性に基づいて、 前記ロボット装置の重 心水平位置軌道を算出する。 また、 前記重心垂直位置軌道決定手段は、 例えば前 記移動手段と床面とが無接地の際に、 重力以外に前記ロボット装置に作用する垂 直方向並進力と、 少なくとも前記ロボット装置の重心垂直位置及び速度状態の時 間的連続性に基づいて、前記ロボット装置の重心垂直位置軌道を算出する。また、 前記運動状態決定手段は、 例えば前記移動手段と床面とが無接地の際に、 前記口 ポット装置の重心回りモーメントと、 前記重心水平位置軌道決定手段及び前記重 心垂直位置軌道決定手段により決定された重心位置を満たすように、 前記ロボッ ト装置の運動状態を決定する。
本発明に係るロボット装置によれば、 前記の重心水平位置軌道決定手段、 及び 前記の重心垂直位置軌道決定手段がそれぞれ重心水平位置軌道及び重心垂直位置 軌道に関する境界条件付き運動方程式の解を制御周期毎に算出し、 さらに運動状 態決定手段が、 口ボット装置の重心回りのモーメントを調整しながら、 制御周期 毎にロボット装置の運動状態を決定するので、 ロボット装置の動作を実時間で制 御することができる。
ここで、 前記運動状態決定手段は、 現在の制御周期における前記ロボット装置 の運動状態から算出されるヤコビアンを用いて、 ロボット装置に発生するモーメ ントを調整しながら、 次の制御周期における前記ロボット装置の運動状態を決定 するようにしてもよい。
また、前記重心水平位置軌道決定手段は、前記移動手段と床面が接地する際に、 前記支持多角形内の点回りの水平軸回りモーメントがゼロ又はゼロ近傍の大きさ となる代わりに、 前記ロボット装置のロール軸及びピッチ軸回りのモーメントが ゼロとなる ZM Pが前記支持多角形内に存在するように、 前記ロボット装置の重 心水平位置軌道に関する境界条件付き運動方程式の解を算出するようにしてもよ い。
また、 前記重心水平位置軌道決定手段は、 前記移動手段と床面とが無接地の際 には、 前記水平方向並進力がゼロ又はゼロ近傍の大きさとなる代わりに、 水平方 向運動量が略一定となるように前記ロボット装置の重心水平位置軌道に関する境 界条件付き運動方程式の解を算出するようにしてもよい。
また、 本発明に係るロボット装置は、 前記ロボット装置の重心位置及び速度状 態を計測する重心位置■速度状態計測手段をさらに備えていてもよい。 このよう な場合、 前記重心水平位置軌道決定手段及び前記重心垂直位置軌道決定手段は、 前記重心位置 ·速度状態計測手段によって計測された現在の制御周期における前 記ロボット装置の重心位置及び速度状態を、 次の制御周期における前記境界条件 付き運動方程式の初期境界条件として設定することができる。 また、 前記運動状態決定手段は、 前記ロボット装置の基体の姿勢角を操作量と して前記口ポット装置の運動状態を決定するようにしてもよい。
あるいは、 前記運動状態決定手段は、 前記ロボット装置の腰関節角を操作量と して、 前記ロポット装置の運動状態を決定するようにしてもよい。
また、 前記運動状態決定手段は、 前記移動手段と床面とが無接地の際に、 前記 ロボット装置の重心回りモーメントがゼロ又はゼロ近傍の大きさとなる代わりに、 重心回り角運動量が一定となるように、 次の制御周期における前記ロボット装置 の運動状態を決定するようにしてもよい。 本発明のさらに他の目的、 特徴や利点は、 後述する本発明の実施形態や添付す る図面に基づくより詳細な説明によって明らかになるであろう。 図面の簡単な説明 図 1は、 本発明の実施に供される脚式移動ロボットの自由度構成を模式的に示 した図である。
図 2は、 F = i、 N= nなる外力 F, 外モーメント Nの組み合わせが存在し得 るように運動パターンが発生せんとする力 f及びモーメント nに拘束条件 (動力 学的拘束条件) を課す様子を示した図である。
図 3は、 本発明の一実施形態に係る脚式移動ロボットの制御システムの機能構 成を模式的に示した図である。
図 4は、 図 3に示した制御システムにおいて実行される処理手順を示したフロ 一チャートである。
図 5は、 足底の位置 ·姿勢軌道の一例を示した図である。
図 6は、 短期区間が N区間だけ連なっている様子を示した図である。
図 7は、 短期区間が N区間連なって構成されているとしたモデルに接地期に属 する短期区間と無接地期に属する短期区間が混在している様子を示した図である。 図 8は、 短期区間と無接地期に属する短期区間が混在しているモデルにおける 重心位置基本軌道と重心位置参照軌道の関係を示した図である。 図 9は、 重心位置軌道生成部 3 2において実行される処理の流れを示したフロ 一チヤ一トである。
図 1 0は、 短期区間と無接地期に属する短期区間が混在しているモデルにおけ る基体姿勢基本軌道と基体姿勢参照軌道との関係を示した図である。
図 1 1は、 基体姿勢軌道生成部 3 3において実行される処理手順を示したフロ 一チヤ一トである。 発明を実施するための最良の形態 本宪明は、 脚式移動ロボットにおける接地期間と無接地期間が混在するような 運動に対して、 力学的に安定な運動パターンを実時間で生成可能とする制御方法 を提供するものである。 本発明に係る制御方法により、 脚式移動ロボットは、 歩 行のみならず、跳躍や走行、並びにこれらの運動が順次発現される状況において、 歩幅■周期などの外部要求を満足しながら、 力学的に安定な運動パターンを即応 的に計算して動作することが可能となる。
以下、 図面を参照しながら本発明の実施形態について詳解する。 図 1には、 本発明の実施に供される脚式移動ロボットの自由度構成を模式的に 示している。
同図に示す口ポットは、 基体に四肢が取り付けられ、 肩関節ピッチ軸、 肩関節 ロール軸、 上腕ョー軸、 肘関節ピッチ軸、 前腕ョー軸、 手首ロール軸、 手首ピッ チ軸という 7自由度からなる左右の腕部と、 股関節ョー軸、 股関節ロール軸、 股 関節ピッチ軸、 膝ピッチ軸、 足首ピッチ軸、 足首ローノレ軸という 6自由度からな る左右の脚部で構成されている。 左右の股関節を繋ぐ骨盤 B 1が基体リンクに相 当し、 上体は 3自由度 (ロール、 ピッチ、 ョー) の腰部関節を介して基体リンク B 1に接続され、基体リンク B 1にニ肢の 6自由度脚部と上体が接続されている。 これらの各関節自由度は、実際にはァクチユエータ 'モータにより実現される。 本実施形態では、 ギア直結型で且つサーボ制御系をワンチップ化してモータ 'ュ ニットに内蔵したタイプの小型 A Cサーボ■ァクチユエータを搭載する。 なお、 この種の ACサーボ■ァクチユエータに関しては、 例えば本出願人に既に譲渡さ れている特開 2000— 299970号公報 (特願平 11— 33386号明細書) に開示されている。
機体の骨盤部には、 加速度センサ A 1及びジャイロ G 1が搭載されている。 ま た、左右の足底四隅には、足底面垂直方向の床反力を検出する 1軸ロードセル(F 1〜F8) と、 床面までの距離を測定する赤外線測距センサ (D1~D8) がそ れぞれ 4つ取り付けられている。 また、 左右の足底中央部には、 それぞれ加速度 センサ (A2, A3) 及びジャイロ (G2, G 3) が取り付けられている。
ここで、 口ポットの質量を mとし、 1賞†生座標系内での重心位置を X = ( X, y , ζ) τとし、 口ポットが外界から受ける力及びモーメントをそれぞれ F及び Νとす る。
ロボットの運動パターンは、 闇雲に作成しても計画通り動作することはなく、 運動パターンが発生せんとする力 f = (fx, fy, ίζ) τ及びモーメント n= (n x, ny, nz) Tが実際の環境から反作用として得られるように設定されているとき にのみ、計画通り動作することができる。すなわち、 F= f、 N=nなる外力 F、 外モーメント Nの組み合わせが存在し得るように運動パターンが発生せんとする 力 f 、及びモーメント nに拘束条件を課さなければならない(図 2を参照のこと)。 本明細書では、 このような力学的な平衡条件に関る拘束条件のことを 「動力学 的拘束条件」 と呼ぶ。 一方、 足先軌道のように明示的に位置と時間の拘束を与え る条件のことを 「幾何学的拘束条件」 と呼ぶ。
例えば、 ロボットが平面に接地している場合の動力学的拘束条件は 「ZMP力 S 接地多角形内にあること」 と等価であることが知られている (前述)。すなわち、 慣性座標系の接地多角形内に任意の点 p= (px, y, z) Tを考え、 この点 Ρ回 りに発生するモーメントを M= (Mx, My, MJ Tとすると、 下式を満たすことが 動力学的拘束条件を与える。
Mx=My=0 (1)
上式で表される動力学的拘束条件は、 後述するように、 運動パターンが発生せ んとする力 f及びモーメント nを用いた表記に変換することができる。
—方、 無接地状態においては、 環境より一切の外力及び外モーメントとも得る ことができないので、 以下の 2式が動力学的拘束条件を与える。
f = 0 ( 2 )
n = 0 ( 3 )
本実施形態では、 このような考えに基づき、 接地期間に関しては上式 (1 ) が 成立し、 無接地期間においては上式 ( 2 ) 及び (3 ) が成立するような全身の運 動パターンを実時間で算出するァルゴリズムを構成することで、 脚式移動ロボッ トにおける自在な歩行 ·走行 ·跳躍が可能な制御系を実現する。 以下、本明細書 では、 式 ( 1 ) 及び ( 2 ) を満足するためにロボットの重心位置を操作するとと もに、 式 (3 ) を満足するためにロボットの基体 (骨盤) 姿勢を操作する例につ いて述べる。
図 3には、 本実施形態に係る脚式移動ロボットの制御システムの機能構成を模 式的に示している。 同図に示すように、 この制御システムは、 運動要求入力部 3 Aと、 実時間全身運動生成部 3 Bと、 全身関節駆動部 3 Cより構成される。 実時 間全身運動生成部 3 Bはさらに、 足底位置 ·姿勢軌道生成部 3 1と、 重心位置軌 道生成部 3 2と、 基体姿勢軌道生成部 3 3と、 各軌道補間部 (より具体的には、 上体関節角参照軌道補間部 3 4、 基体姿勢参照軌道補間部 3 5、 重心位置参照軌 道補間部 3 6、足底位置 ·姿勢参照軌道補間部 3 7 ) と、質点分布調整部 3 8と、 関節角算出部 3 9から構成される。
運動要求入力部 3 Aは、 ユーザ 'プログラム (あるいは図示しないその他の手 段) により時々刻々と決定される上体 (腕関節 ·腰関節) への運動要求 (上体関 節角参照軌道) と、 基体 (骨盤) の姿勢角に関る運動要求 (基体姿勢基本軌道) と、 重心垂直位置軌道に関る運動要求 (重心垂直位置基本軌道) と、 歩幅'運動 周期 ·旋回角 ·滞空時間などの下肢運動に関わるパラメータ (下肢運動パラメ一 タ) を入力し、 実時間全身運動生成部 3 Bに出力する。
実時間全身運動生成部 3 Bは、 動力学的拘束条件に基づく力学的バランス平衡 を維持しつつ、 現在の運動状態から滑らかに遷移可能で、 ユーザ ·プログラムか らの上体■下肢運動変更要求を共に満足することのできる、 次時刻のロボットの 運動状態を決定し、 全身の関節角参照値として出力する。
全身関節駆動部 3 Cは、 実時間全身運動生成部 3 Bから出力される関節角参照 値を実現するよう、 全身の関節自由度を構成するァクチユエータ 'モータをサー ボ'コントローラ (図示しない) により駆動する。
実時間全身運動生成部 3 B内の足底位置 ·姿勢軌道生成部 3 1は、 運動要求入 力部 3 Aより入力された下肢運動に関わるパラメータに基づき、 現在の足底位 置■姿勢から数歩先までの左右両足底の位置及び姿勢軌道を算出する。
また、 重心位置軌道生成部 3 2は、 運動要求入力部 3 Aより入力された重心垂 直位置基本軌道を最大限に反映しつつ、 現在の重心位置軌道に滑らかに接続し、 接地期間に関しては動力学的拘束条件としての上式 ( 1 ) 力 無接地期間におい ては動力学的拘束条件としての上式 ( 2 ) が成立するような重心位置軌道を算出 する。
また、 基体姿勢軌道生成部 3 3は、 運動要求入力部 3 Aより入力された基体姿 勢基本軌道を最大限に反映しつつ、 現在の基体姿勢軌道に滑らかに接続し、 上記 重心位置軌道に係る接地期並びに無接地期の各期間における動力学的拘束条件と しての上式 (1 ) 及び (2 ) に加え、 無接地期に関して動力学的拘束条件として の上式 (3 ) が成立するような基体姿勢角軌道を算出する。
各軌道補間部(上体関節角参照軌道補間部 3 4、基体姿勢参照軌道補間部 3 5、 重心位置参照軌道補間部 3 6、 並びに足底位置 ·姿勢参照軌道補間部 3 7 ) は、 それぞれ上述のようにして算出された上体関節角参照軌道、 基体姿勢参照軌道、 重心位置参照軌道、 並びに足底位置 ·姿勢参照軌道の補間処理を実行し、 次時刻 の上体関節角、 基体姿勢角、 重心位置、 足底位置 ·姿勢を算出する、 質点分布調 整部 3 8は、 これらの上体関節角、 基体姿勢角、 重心位置、 足底位置■姿勢を同 時に満足するような全身質点分布状態を調整する。
関節角算出部 3 9では、 質点分布調整部 3 8で得られた次時刻の基体位置、 及 び足底位置■姿勢軌道生成部 3 1より得られる次時刻の足底位置姿勢を実現する ように脚部の関節角を決定する。 これは、 両者の相対位置姿勢を求めた後、 例え ば、 周知の逆キネマテイクス計算によって実行することができる。
図 4には、 図 3に示した制御システムにおいて実行される処理手順をフローチ ヤートの形式で示している。
制御系は、処理開始後、運動要求入力部 3 Aにおいて、上体関節角、基体姿勢、 重心垂直位置、 下肢運動への運動要求を入力する (ステップ S 1)。
次いで、 足底位置 ·姿勢軌道生成部 3 1、 重心位置軌道生成部 3 2、 及び基体 姿勢軌道生成部 3 3において、 足底位置'姿勢軌道、 重心位置軌道、 基体姿勢軌 道をそれぞれ生成する (ステップ S 2, S 3 , S 4)。
次いで、 上記の各軌道補間部 (上体関節角参照軌道補間部 3 4、 基体姿勢参照 軌道補間部 3 5、 重心位置参照軌道補間部 3 6、 足底位置 ·姿勢参照軌道補間部 3 7) において、次時刻の上体関節角、基体姿勢角、重心位置、並びに足底位置 - 姿勢をそれぞれ算出する (ステップ S 5)。
さらに、質点分布調整部 3 8にて全身関節角を算出し(ステップ S 6)、最後に、 全身関節駆動部 3 Cにおいて、各関節をサーポ 'コントローラにより駆動する(ス テツプ S 7)。
以上の処理が図 3に示した本制御システムの 1周期に関る処理である。 上記の 処理が終了した後は再度ステップ S 1の実行に戻る処理を所定の制御周期 Δ t (例えば 1 0ミリ秒) 毎に実行する。
次に、実時間全身運動生成部 3 B内における機能構成や動作について詳解する。 実時間全身運動生成部 3 B内の足底位置 ·姿勢軌道生成部 3 1は、 運動要求入 力部 3 Aより入力された、歩幅 ·運動周期(歩行周期、走行周期、跳躍周期など) - 旋回角 ·足上げ高さ ·滞空時間などの下肢運動に関るパラメータに応じて現在の 足底位置'姿勢状態から数歩先までの左右両足底の位置及び姿勢軌道を計画する。 図 5には足底の位置 ·姿勢軌道の一例を示している。 同図に示すように、 足底 の位置.姿勢軌道は、 位置に関しては座標位置 (x, y, z ) で、 姿勢に関して はオイラー (E u l e r ) 角 (a, β , γ) などを用いて表現し、 上述した下肢 運動パラメータに適合するよう、 左右足底について各パラメータ毎に多項式捕間 などを用いて時系列を生成することで構成される。
例えば、 左足底位置姿勢軌道に関しては、 左足底位置姿勢を (X L, yL, zL, o L, βい )、 現在の左足底位置姿勢を (xLい yL1. zL1, aL1) βιν 7li) と すると、次の着床位置姿勢(xL2, yL2) zL2, al2, β12, yL2) は歩幅'運動周期 - 旋回角などの下肢運動パラメータにより決定され、 その間の左足底位置姿勢軌道 は、 下式に示すように各位置姿勢毎の捕間式によって構成される。 £= ; )
ZL =2L(t;zLl,ZL2)
aL = aL(t;aL1,aL2) (4)
補間式には、 例えば 5次の多項式などを用いることができる。 2歩目以降の足 底位置姿勢は、 1歩目と同一の下肢運動要求が継続するものとして、 同様に補間 式によって構成する。 また、 右足底位置姿勢軌道についても同様に構成する。 重心位置軌道生成部 32は、 接地期には上式 (1) で表される動力学的拘束条 件が、 無接地期には上式 (2) で表される動力学的拘束条件が、 それぞれ成立す るような重心の水平軌道を算出する。 以下では、 重心位置軌道生成部 32の一構 成法として、 接地期に課される拘束条件式、 及び無接地期に課される拘束条件式 の具体的構成法と、 両条件を満足する重心位置軌道の算出法について説明する。 接地期においては、 慣性座標系内に任意の点 p= (Px) py, pz) Tを考え、 こ の点 ρ回りに発生するモーメント Μを考える。 また、 重力加速度べクト^/を一 g = (0, 0, — g) τとする。 点 p回りのモーメントの平衡条件より、 以下の式が 得られる。
M = n + (x- p)x f (5)
また、 重心の並進運動方程式より、 下式が成立する。
mx = f— mg (6)
上記の式 (5) 及び (6) の両式より、 座標位置 X (X , y, z) に印加され る力 f を消去すると、 下式の通りとなる。
M = (x- p)x mix + g) + n (7)
ここで、 点 pを ZMPにとると、 水平軸モーメントがゼロとなるので、 下式が 成立する。
Figure imgf000017_0001
一般に、 ZMP回りに発生するモーメントは重心運動によるものが支配的であ る。 そこで、 上式 (8) の右辺第 2項を省略し、 また、 その第 1、 第 2要素につ いて展開すると、 下式に示すような重心運動に関する Z MP方程式を得ることが できる。
(z― pz)x― (x-px)(∑ + g) = 0 (g)
(z-pz)y-(y-ptXz + g) =
上式 (9) は単純な式をしているものの、 X及び yに関する変係数の微分方程 式であり、 解析解を得ることは容易でない。 そこで、 本実施形態では、 一且、 比 較的短期間の時間区間 Tを考え, この短期区間内において以下の近似が成立する と仮定する。
(仮定 1) ZMP軌道は加速度を有さない
(仮定 2) 重心高さは一定
(仮定 3) 外モーメントは一定 すると、 上記の Z MP方程式 (9) は、 以下に示すような簡潔な常微分方程式 となる。
m(ZX-gX) = 0 (10)
但し、 以下の式を満たすものとし、 上式 (10) は X成分のみを記したもので ある。
X = X-px (1 1)
Z = z - = const (12)
常微分方程式 (10) の一般解は以下の通りとなる。
x = px+Cl Qxp( t) + C2 Qxp(-Xt)
(1 o )
x = px + λ{θι Qxp(At)一 C2 exp (- ) }
但し、 λは固有値で、 下式で表される。
又 = g/Z (14)
上式 (13) の境界値を考えると、 以下の通りとなる。 ) = Px( )+ +C2 x{T) = px (T) + Q exp( r) + C2 οχρ(-λΤ) ( 1 5 )
= Px (T) + {C, exp(ir) - C2 exp(-Ar)}
本実施形態では、 脚式移動ロボットの一般の運動を、 上述した仮定条件 (仮定 1)、 (仮定 2)、及び(仮定 3) を満足する短期区間が複数連なって構成されてい るとして、 モデル化する。 図 6には、 短期区間が N区間だけ連なっている様子を 示している。
i番目の区間 iの時間幅を 1\、 未定係数を Cu C2i、 固有値をえ 区間 iの 終端における ZMP位置を pxi、 重心位置を とすると、 上述した境界条件とし ての上式 (15) は一般の区間 iにおいて以下のように表わされる。
Figure imgf000019_0001
/-ι = Pxi-i + · (し 1 一 C2i ) (16
^ = Pxi + CXi exp(^r; ) + C2i exp(-2^. )
= Pxi + · ic
Figure imgf000019_0002
)}
一方、 無接地期においても同様の短期区間を考えると、 この区間において水平 方向外力が作用しないことから、 重心の水平方向位置 (X , y) の運動は以下に 示すような単純な運動方程式で支配される。 但し、 ここでは簡潔のため、 X方向 についてのみ記した。
皿 =0 7)
上式を積分すると、 以下の通りとなる。
X = CL+ C2t (18)
ここで、 境界条件を考えると、 以下の通りとなる。
Figure imgf000019_0003
i(0) = C2
2 (19)
x(T) = +C2T
Figure imgf000019_0004
接地期において短期区間が Ν区間連なって構成されているとしてモデル化した が(前述)、 このような連続区間は、図 7に示すように接地期に属する短期区間と、 無接地期に属する短期区間が混在して構成されていてもよい。
短期区間 iが無接地期に属する場合、 その境界条件は接地期とは異なるが、 上 式 (19) に基づいて以下のよう導き出される。
i— 1 = ^li
(20)
■^i ―し li +し 2i丄
=し 2i
接地期と無接地期が混在して運動が構成されている場合、 これらの境界条件が 位置及び速度に関して連続に接続されるよう、 未定係数を決定しなければならな い。 区間 i一 1と区間 iの境界における位置及び速度の連続条件は、 隣接する短 期区間の種類によつて以下の通り場合分けされる。
(1) 区間 i一 1が接地期で、 区間 iが接地期の場合
上記の式 (16) より、 区間 i _ 1から見た X i及びその速度成分 d X iZ d t が区間 iから見た^ ί直に等しくなるための条件は、 以下の通りである。
Cu + C2i
Figure imgf000020_0001
+ C2i_, exp(- ^— (21)
P xi P xl-\ , g ( ― (~ι ヽ
τ Λ八し 1ζ·—し 2i)
'' (22)
= Px";Pxi2 + -! {C1M exp — i )― C2i_x exp(- Λ .— i )}
ん- 1
(2) 区間 i— 1が無接地期で、 区間 iが接地期の場合
上記の式 (16) 及び式 (20) より、 区間 i一 1から見た X i及びその速度成 分 d Xi/d tが区間 iから見た値に等しくなるための条件は、以下の通りである。
Figure imgf000020_0002
Pxi~T Pxi-1+ Ch-c2i) = c2i_l (24)
(3) 区間 i— 1が接地期で、 区間 iが無接地期の場合
上記の式 (16) 及び式 (20) より、 区間 i—1から見た Xi及びその速度成 分 d X i/d tが区間 iから見た値に等しくなるための条件は、以下の通りである。
Cu = Pxw + Cu_x
Figure imgf000020_0003
) + C2i_x ) (25) C2i = Pxil;Pxi-2 ^V^T^-C^ exp(- Λ— , (26) ' ·- 1
(4) 区間 i一 1が無接地期で、 区間 iが無接地期の場合
上記の式 (20) より、 区間 i _ lから見た Xi及びその速度成分 dXiZd t が区間 iから見た値に等しくなるための条件は、 以下の通りである。
Cu = + し 2 (27)
し 2i 2!· - 1 ο )
以上の短期区間境界における位置及び速度の連続条件は、 i = 2.. Nの各短期 区間境界において成立する。 また、 運動区間全体の始端においても、 与えられた 重心位置及びその速度を実現するように境界条件が課される力 無接地区間と接 地区間の混在状況を許容する本方式の場合、 区間 0が無接地期又は接地期のいず れであるかに応じて、 以下のように異なる境界条件が課される。
(1) 区間 0が接地期の場合
上記の式 (16) より、 区間 0の始端について、
Ch + C2i + px0 = x0 ( 2 9 ) ^- Xo + C _ C^ = -Q (30)
1
(2) 区間 0が無接地期の場合
上記の式 (20) より、 区間 0の始端について、
C = X0 (31)
C2[ =x0 (32)
同様に、 区間 Nの終点においても、 運動期間全体の終端条件として、 与えられ た重心位置及びその速度を実現するように境界条件が課されるが、 区間 Nが無接 地期又は接地期のいずれであるかに応じて、 以下のように異なる境界条件が課さ れる。
(1) 区間 Nが接地期の場合
上記の式 (16) より、 区間 Nの終端について PXN +CiN e TN ) + C2N exp(- )=½ (33)
PXN ~PXN-1 + ^N XV( NTN)-C2N exp(-¼)}=¾ (3 )
(2) 区間 Nが接地期の場合
上記の式 (20) より、 区間 Nの終端について CLN +C2 TN = XN (35)
Qw =½ (36)
始端条件の重心位置及びその速度には、 現在の運動状態に滑らかに接続する重 心位置軌道を得るため、 現在の重心位置及び速度を代入する。 また、 終端条件の 重心位置には、 運動終端における両足底位置を基に、 両足底の中心位置などを設 定する。 終端条件の重心の速度には、 重心位置にて重心が静止するとの条件を仮 定し、ゼロを代入するなどの設定を行なう。 これにより、運動方程式の解に対し、 ある時間後に重心が両足底中心の直上に到達するような拘束が課せられる。
実時間運動パターン生成においては、比較的短い周期で(例えば制御周期毎に) 運動パターンを再計画する処理を繰り返すため、 各周期毎に、 次の再計画までの 微小時間内での安定運動状態を確保することができれば十分である。したがって、 現時刻から十分離れた終端時刻における終端到達条件が上述のように近似的に与 えられていても、 実用上十分な精度を持つ解を得ることができる。
短期区間の境界は、 例えば両脚支持期と単脚支持期の境界、 接地期と無接地期 の境界などに設定すればよい。
N個の短期区間が連続してなる区間の境界では、 上記の式 (21) ~ (36) により 2 N+ 2個の拘束条件が与えられる。 変数に関しては、未定係数 Cu, C21 (i = 1..N) 以外の変数の設定の仕方としては多くの方法が考えられるが、 本 実施形態では: pxi ( i = 1..N) を変数に加える。 接地区間が少なくとも 1っ存 在すれば、 ZMP位置 pxiは 2つ以上存在するので、 変数の数は 2N+2個以上 となり、 解を得ることができる。
一般には、 連続する区間には接地区間の数が 2以上存在し、 変数の数が過剰と なるため、 最適化問題として取り扱う。 例えば、 上記の式 (21) 〜 (36) で 与えられる等式拘束条件下にて、 接地区間境界における ZMP位置 pxiと安定領 域中心 (接地多角形重心) の差分 (下式) を最小化する等式制約条件付 2次計画 で、 これらの未知変数を一意に定めることができる。
Figure imgf000023_0001
あるいは、 接地区間境界の特定 2ノード pxjxk (j, ke [o, N]) 以外 の ZMP位置は接地多角形重心位置に固定とし、 pxj, pxkのみを変数に設定して、 上記の式 (21) 〜 (36) を 2N+2元連立 1次方程式として解くように構成 しても良い。 未知変数が定まれば、 接地区間に関しては上式 (13) を用いて、 無接地区間に関しては上式 (18) を用いて、 計画した運動期間内の任意の時刻 における重心水平位置を算出することができる。
以上で重心水平位置軌道は得られたことになる。 さらに、 重心垂直位置軌道に 関しても力学的拘束条件が課せられ、 これを満足するように軌道を生成しなけれ ばならない。 重心垂直方向運動に関しては、接地期においては、 fz>0を満足し ている限り、 特に力学的拘束を受けない。 一方、 無接地期には、 ίζ=0なる力学 的拘束が課せられる。 すなわち、 上式 (6) で fz=0とすると、 その Z成分は、 mi = -mg (38)
上式を積分すると、 以下のようになる。
Figure imgf000023_0002
滞空時間が T、 離床時の重心垂直位置 ζ 着床時の重心垂直位置 ζ 2となるよ うに未定係数を定めると、 ロボット重心垂直位置軌道は、 下式に示す自由落下曲 線として得られる。
Figure imgf000023_0003
離床時の重心垂直位置 ζ χ及び着床時の重心垂直位置 ζ 2は、 運動要求入力部 3 Αより入力される、 重心垂直位置基本軌道における無接地期の始端及び終端にお ける値を抽出して用いる。 ここで、 ユーザ'プログラムより入力される重心垂直位置軌道のことを 「基本 軌道」 と呼称しているのは、 上述の動力学的拘束条件を満足すべく修正を施され るため、最終的な重心垂直位置参照軌道は異なるものとなるからである。いわば、 基本軌道は、 あらかじめユーザが設定する概略の軌道とみなすことができる。 以 下、本明細書中では、基本軌道という用語は、 「最大限反映されるが動力学的拘束 条件を満たすベく修正を施され得る軌道」 という意味で用いる。
無接地期における重心垂直位置軌道は, 各無接地期間毎に、 上式 ( 4 0 ) に従 うように設定すればよい。 一方、 接地期における重心垂直位置軌道に関して動力 学的拘束条件は特に課されないものの、 接地期が無接地期に隣接する場合は、 無 接地期との境界において、 式 (4 0 ) と滑らかに接続されるように接地期の重心 垂直位置基本軌道の修正を行なわなければならない。 すなわち、 離床時の重心垂 直運動状態は、式(4 0 ) 及び式(4 1 ) にて t = 0とした以下に示す値となる。
( 4 2 )
2 ノ
このため、 これに滑らかに接続するように、 無接地期の直前に隣接する接地期 の重心垂直位置基本軌道を修正しなければならない。 図 8中の区間 i一 1の接地 期はこのようなケースに該当する。
図示の区間 i一 1は特に無接地区間に挟まれているケースであり、 区間 iとの 境界 (終端) のみならず、 区間 i _ 2の境界 (始端) に関しても、 上式 (4 2 ) で与えられる境界条件を満足する曲線軌道を設定しなければならない。
接地区間の重心垂直位置軌道には、 例えば多項式補間などを用いて、 このよう な始端及び終端条件を満足するような曲線軌道を設定することができる。 あるい は、 必要に応じて、 下肢運動パラメータ内に着床 '離床時の重心沈み込み深さ Δ ζを含め、最小値が基本軌道より Δ ζ以上沈み込まないように曲線を設定したり、 変曲点を含まない特殊な曲線で補間するようにしたり、 パネ■ダンパ系の応答曲 線で構成したりするようにしてもよい。
同様に、 着床時の重心垂直運動状態は、 上式 (4 0 ) 及び (4 1 ) にて t = T とした以下に示 ϋ直となる。
Figure imgf000025_0001
このため、 これに滑らかに接続するように、 無接地期の直後に隣接する接地期 の重心垂直位置基本軌道を修正しなければならない。 図 8中の区間 i + 1はこの ようなケースに該当する。
図示の区間 i + 1は区間 i一 1の場合と異なり、 他端が接地区間 i + 2に接続 されるケースである。 このような場合、 区間 iとの境界 (始端) は上式 (4 3 ) で与えられる境界条件を満足するように、 区間 i + 2との境界 (終端) は重心垂 直位置基本軌道の位置及び速度に連続となるように区間 iの重心垂直位置軌道を 設定すればよい。
無接地期直前の接地期と同様、 例えば多項式捕間などを用いて、 このような始 端及び終端条件を満足するような曲線軌道を設定することができる。 あるいは、 必要に応じて、 下肢運動パラメータ内に着床■離床時の重心沈み込み深さ Δ zを 含め、 最小値が基本軌道より Δ Z以上沈み込まないように曲線を設定したり、 不 用意な振動を排除すべく、変曲点を含まない特殊な曲線で補間するようにしたり、 パネ ·ダンパ系の応答曲線で構成したりするようにしてもよい。
無接地期に隣接しない接地期の重心垂直位置軌道に関しては、 重心垂直位置基 本軌道をそのまま参照軌道として設定すればよい。 また、 無接地期に隣接する接 地期の重心垂直位置軌道についても、 必ずしも上述したような接地期全体の軌道 を基本軌道から修正するのではなく、 離床又は着床の直前又は直後の一部の時間 など、 部分的に軌道を修正するように構成してもよい。
以上のようにして、 重心位置軌道生成部 3 2は、 接地期における動力学的拘束 条件としての式 (1 ) と、 無接地期における動力学的拘束条件としての式 (2 ) をともに満たすように重心位置軌道を生成することができる。 図 9には、 重心位 置軌道生成部 3 2において実行される処理の流れをフローチャートの形式で示し ている。
まず、 ZMP基本ノード生成処理において、 足底位置■姿勢軌道生成部 3 1よ り得られた足底位置及び姿勢参照軌道に基づいて、 ZMP軌道が安定領域中心 (接 地多角形重心) 付近を通過するような、 各短期区間境界の Z MP基本位置の配列 を作成する (ステップ S 1 1)。
この基本 ZMP位置は、 後続の重心水平位置軌道算出 (ステップ S 14) にお いて修正を施されるが、 最大限実現すべく反映される。 ここで、 接地多角形外を 通過するような基本 ZMP軌道、 又は安定領域中心から大きく逸脱するような基 本 ZMP軌道が設定されると、 後続の重心水平位置軌道算出処理 (ステップ S 1 4) において修正を施された際に、 Z MPが接地多角形外となり、 力学的拘束条 件が満足されない事態となる可能性は否めない。 多くの場合、 このようなケース は生じないが、 より頑強なシステムを志向するならば、 接地多角形外に逸脱した ZMP軌道が得られた場合に、 基本 ZMP位置を自律修正したり、 下肢運動パラ メータの自律変更などを実行したりする処理を追カ卩してもよい。
次いで、 短期区間境界における重心位置軌道の連続条件を設定する (ステップ
S 12)。 すなわち、 上式 (21) 〜 (28) に基づいて、 等式制約条件をマトリ タスに設定する。 上述したように、 連続条件の拘束式は、 隣接する区間が接地区 間又は無接地区間のいずれであるかに応じて相違する。 、 次いで、 考慮している運動区間の始端及び終端における重心水平位置軌道境界 条件をマトリクスに設定する (ステップ S 13)。始端境界条件は上式 (29) 〜 (32)、終端境界条件は上式(33) 〜 (36) によってそれぞれ与えられるが、 短期区間境界の連続条件と同様、 区間 0及び区間 Nがそれぞれ接地区間なのか無 接地区間なのかに応じて拘束条件式は相違する。
次いで、ステップ S 12及び S 13で設定した等式拘束条件付 2次計画問題 [数
37] を解き、 未定係数 Cu, C2i (i =l.. N) 及び ZMP位置 pxi (i = 1..
N) を決定する。
このような処理により、 接地区間に関しては上式 (13) を、 無接地区間に関 しては上式 (18) を用いることで、 任意の時刻における重心水平位置及び速度 を算出可能な状態となる。 すなわち、 任意時刻の重心水平位置軌道が得られたこ とになる。
次いで、無接地期の重心垂直位置軌道を算出する (ステップ S 15)。すなわち、 ユーザ ·プログラムにより与えられる重心垂直位置基本軌道を基に、上式(40) で表される 2次方程式の係数決定処理を行なう。 このような処理により、 無接地 期内の任意の時刻 (境界を含む) における重心垂直位置及び速度が算出可能な状 Jとなる。
さらに、 短期区間境界における重心垂直位置及び速度を算出する (ステップ S 1 6 )。無接地期境界における重心垂直位置及び速度は、上式(4 2 )及び上式(4 3 )を用いて算出する。それ以外の境界における重心垂直位置 ·速度は、ユーザ - プログラムにより与えられる重心垂直位置基本軌道の値をそのまま用いることが できる。
最後に、 接地区間の重心垂直位置軌道を修正し、 動力学的拘束条件を考慮した 重心垂直位置軌道、 ひいては重心位置軌道を完成する (ステップ S 1 7 )。
無接地期間と隣接している接地区間に関しては、 ステップ S 1 6で算出した境 界 件を満足するよう、 多項式などを用いて適切な曲線で重心垂直位置軌道を構 成する。 また、 無接地期間と隣接しない接地区間に関しては、 ユーザ'プロダラ ムにより与えられる重心垂直位置基本軌道をそのまま重心垂直位置軌道として用 いるように構成する。
上述したような処理の結果、 無接地期の重心垂直位置軌道はステツプ S 1 5に より、 接地期の重心垂直位置軌道はステップ S 1 7によりそれぞれ得られ、 全時 刻における重心垂直位置軌道が得られたことになる。
以上の説明から判るように、 力学的拘束条件としての式 (1 ) 又は (2 ) を満 足する重心位置軌道は得られたが、 さらに無接地期における残る動力学的拘束条 件としての式 (3 ) は別途運動計画に反映しなければならない。
一般に、 重心回りの角運動量 Lと外モーメント nの間には、 以下の関係が成り 立つ。
—L = n ( 4 4 )
dt
無接地期においては、 上式 (3 ) に示した力学的拘束条件が課されるが、 これ を上記の式 (4 4 ) に代入し積分することで、 以下に示す角運動量保存則と等価 であることが分かる。
L - const = L (4 5 )
無接地期の運動は、 足底位置■姿勢軌道生成部 3 1の出力する足底位置 ·姿勢 軌道、 重心位置軌道生成部 3 2の出力する重心位置軌道に関する拘束に加え、 上 記の式 (45) に示される角運動量に関する拘束を満足するように計画しなけれ ばならない。 以下では、 角運動量に関する拘束を満足する運動の計画法について 詳解する。
ロボットの状態は、 一般に、 基体 (骨盤) の位置及び姿勢と、 全関節角で表す ことができる。すなわち、基体の位置を Pb= (Pbx, pby, pbJ T、基体の姿勢(ォ イラ一角) をひ b= ( a bx, by, bz) τ、 左足関節角を eL= (eL1, Θ12) eL3, Θ
L4, L5, θ16) 右足関節角を SR= (ΘΚ1, 0R2) ΘΚ3, ΘΚ4, 0R5, ΘΚ6) τ、 上体 関節角を 0υ= ( Θ 1U; .. , 6 とすると、 ロボットの状態変数 qは、 これらを並 ベて下式に示すようなベタトルとして定義することができる。 ここで、 ロボット の状態変数 qの次元を Nqとする。
Pb θτ (46)
R
V
すべてのリンクにインデクスを付し、 インデクス番号が iとなるリンクをリン ク iと表記する。 ロボット状態変数 qの一般化速度と、 リンク iの角速度、 並進 速度、 ロボット全体の重心速度、 並びに重心回りの角運動量との関係は、 それぞ れ式 (47)、 (48)、 (49)、 (50) に示すように、 ヤコビアン Jを用いて記 述できる。
^=Jaiq (47)
Figure imgf000028_0001
X = Jxq (49)
L = JLq (50)
ここで、上記のヤコビアン Jはいずれも 3 XNqの行列であり、一般に現在の口 ボットの状態 qの関数として解析的に求めることができる。 現在の状態 qを既知 とすると、 これらの式を用いて、 上記の重心位置軌道、 足底位置'姿勢軌道、 角 運動量に関する拘束条件は, ロボットの状態の一般化速度に関する拘束条件とし て、 以下のように記述することができる。 但し、左足底リンクのィンデクスを i L とし、 右足底リンクのインデクスを とする。
(1) 足先姿勢に関する拘束条件 .
上式 (47) において、 足底リンクの角速度が、 足底位置.姿勢軌道生成部 3 1が生成した足底軌道から算出した左右それぞれの足のオイラー角速度と等しく なければならないことから、
Figure imgf000029_0001
W = % (5 2)
(2) 足先位置に関する拘束条件
上式 (48) において、 足底リンクの並進速度が、 足底位置 ·姿勢軌道生成部 3 1が生成した足底軌道から算出した左右それぞれの足の並進速度と等しくなけ ればならないことから、
Figure imgf000029_0002
(3) 重心位置に関する拘束条件
上式 (49) において、 重心速度が重心位置軌道生成部 32によって生成され た重心位置軌道から算出した重心速度に等しくなければならないことから、
X = Jxq = X (5 5)
(4) 角運動量に関する拘束条件
上式 (50) において、 角運動量が一定であるとの条件を課すと、
L = JLq = L (56)
いずれの拘束式も、 3自由度の拘束条件を与えるので、上式(5 1)力 ら式(5 6) にて、 全部で 18自由度の拘束条件を課していることになる。 ここでは、 例 として基体 (骨盤) の位置及び姿勢を操作部位として用いることを考えると、 口 ボットの状態 qの一般化速度のうち、 脚部関節角速度 (合計 1 2変数) と基体の 並進速度 (3変数) とオイラー角速度 (3変数) が未知変数、 上体関節角軌道は 既知となる。 したがって、 未知変数の数は 1 8個となり、 拘束式の数と一致し、 上式 (5 1) 力 ら式 (56) を 1 8元連立一次方程式として解くことで未知変数 を容易に求めることが可能となる。
なお、 式変形を行なうことで、 連立方程式の次元はさらに低減させることが可 能であるが、 これは本発明の主たる目的ではないので、 本明細書では説明を省略 する。
以上の説明により、 現在の姿勢が既知、 足先位置姿勢固定、 重心位置固定とい う条件下で、 角運動量が保存するための基体の並進速度、 オイラー角速度を算出 できたことになる。 よって、制御サイクル(時刻 Δ t毎) における基体姿勢 a b,k+1 は、 上記の連立方程式の解として得られたオイラー角速度を積分して、 以下の式 によって求めることができる。
Figure imgf000030_0001
以上の説明で、 上式 ( 1 ) 及び (2 ) で表される動力学的拘束条件に加え、 無 接地期の回転運動に関する力学的拘束条件としての式 (3 ) を満足する基体姿勢 軌道を得ることができたことになる。 しかしながら、 角運動量を適切な値に設定 しないと、 空中で大きく回転運動を伴うような運動が生成される可能性がある。 さまざまな角運動量の設定方法が考えられるが、 空中で大きく機体全体が回転 するような運動を想定しないのであれば、 下式に示すように、 無接地期に有する 角運動量を 0に設定するのが最も簡単である。
L = 0 ( 5 8 )
あるいは、 ョー軸回りにのみ角運動量を有するように、 離床時に算出した Z軸 周り慣性モーメント I zz、 旋回角度 Γ、 及び滞空時間 Τを用いて、 以下に示す式 のように設定するなどの方法も実用的である。
Figure imgf000030_0002
さて、 無接地期における基体姿勢軌道は、 上述したような処理手順に従って得 られる一方、 接地期における基体姿勢軌道に関しては、 無接地期における基体姿 勢軌道に滑らかに接続されるように、 接地期の基体姿勢基本軌道の修正を行なわ なければならない。
すなわち、 離床時に相当する、 接地期と無接地期の境界においては、 基体姿勢 角が基体姿勢角基本軌道の値と一致し、 基体姿勢角速度がこの姿勢において、 上 式 (5 1 ) 〜 (5 6 ) からなる連立方程式を解いて得られる基体姿勢の角速度の 値となるように、 無接地期の直前に隣接する接地期の基体姿勢軌道を修正しなけ ればならない。
同様に、 着床時に相当する無接地期と接地期の境界においては、 基体姿勢角が 上式 (5 7 ) の数値積分で得られた無接地期終端における基体姿勢角の値と一致 し、 基体姿勢角速度がこの姿勢において上式 (5 1 ) 〜 (5 6 ) からなる連立方 程式を解いて得られる基体姿勢の角速度の値となるように、 無接地期の直後に隣 接する接地期の基体姿勢軌道を修正しなければならない。
図 1 0には、 短期区間と無接地期に属する短期区間が混在しているモデルにお ける基体姿勢基本軌道と基体姿勢参照軌道との関係を例示している。 同図中の区 間 i一 1はこのようなケースに該当する。 但し、 図面の簡素化のため、 ロール角 軌道のみが記されている。
区間 i一 1は始端及び終端がともに無接地区間に接しているケースであり、 区 間 iとの境界 (終端) のみならず、 区間 i一 2の境界 (始端) に関しても、 上述 のような境界条件が課される。 例えば、 スプライン補間などの多項式補間を用い て、 このような始端 ·終端条件を満足するような曲線軌道として、 接地期間の基 体姿勢軌道を設定することができる。
一方, 同図中の区間 i + 1は区間 i一 1の場合とは異なり、 始端が無接地期と なる区間 iに隣接するが他端は接地区間 i + 2に接続される接地期である。 この ような場合は、 区間 iとの境界 (始端) は無接地期の基体姿勢角軌道による境界 条件を満足するように、区間 i + 2との境界(終端)は基体姿勢基本軌道の位置 - 速度に連続となるように、 区間 iの基体姿勢角軌道を設定しなければならない。 この場合も、 例えば、 多項式補間などを用いて、 このような始端-終端条件を満 足するような曲線軌道を設定することができる。
なお、 無接地期に隣接しない接地期の基体姿勢角軌道に関しては、 基体姿勢基 本軌道をそのまま参照軌道として設定すればよい。 また、 無接地期に隣接する接 地期の基体姿勢角軌道についても、 必ずしも上述したように接地期全体の軌道を 基本軌道から修正するのではなく、 離床■着床の直前■直後の一部の時間など、 部分的に軌道を修正するように構成してもよい。
以上の接地期の基体姿勢角軌道の修正法が重心位置軌道の修正法と異なる点は、 時刻に関して逐次的に処理を行なわなければならない点である。 基体姿勢角軌道 に関しては、 無接地区間における軌道を上式 (5 7 ) に基づく数値積分でしか得 ることができず、 無接地期終端の境界条件がこの数ィ直積分によって決定されるた めである。 実際には、 無接地期実行中にはこの数値積分のみを実行し、 無接地期 から接地期に移行する境界にて、 隣接する接地期の軌道修正を実行すればよい。 このようにして、 基体姿勢軌道生成部 3 3は、 接地期における力学的拘束条件 としての式(1 )、無接地期における力学的拘束条件としての式(2 ) に加え、 無 接地期における力学的拘束条件としての式 (3 ) を満足するような基体姿勢軌道 を生成することができる。
図 1 1には、 基体姿勢軌道生成部 3 3において実行される処理手順をフローチ ヤートの形式で示している。
まず、現時刻が無接地期に属するかどうかの判定を行なう (ステップ S 2 1 )。 無接地期の場合、 ステップ S 2 2に進み、 足底位置 ·姿勢軌道生成部 3 1の出 力する足底位置姿勢軌道を用いて、 現時刻の足底位置姿勢に関するヤコビアン拘 束式 (5 1 ) 〜 (5 4 ) を求める。
次いで、 重心位置軌道生成部 3 2の出力する重心位置軌道を用いて、 現時刻の 重心位置に関するヤコビアン拘束式 (5 5 ) を求める (ステップ S 2 3 )。
次いで、離床前に算出された角運動量を用いて、角運動量ヤコビアン拘束式(5 6 ) を求める (ステップ S 2 4 )。
次いで、 これらの拘束式 (5 1 ) 〜 (5 6 ) からなる連立 1次方程式を解き、 現時刻における基体姿勢角速度を算出する (ステップ S 2 5 )。
最後に、 該基体姿勢角速度を上式 (5 7 ) を用いて数値積分することで、 無接 地期の基体姿勢角軌道を逐次生成することができる (ステップ S 2 6 )。
一方、 ステップ S 2 1において接地期と判定された場合は、 現時刻が接地期の 始端に該当する場合についてのみ処理を行なう (ステップ S 2 0 )。
接地期の始端に相当する場合は、 ステップ S 2 7に進み、 該接地期が無接地期 に隣接した区間であるかどうかを判定する。 無接地期に隣接している接地期である場合は、 さらに、 直後に隣接する短期区 間が無接地期であるかどうかを判定する (ステップ S 28)。
直後に隣接する短期区間が無接地期である場合は、上式(58)あるいは式(5 9) などの規範に基づいて、 該無接地期の目標角運動量を算出する (ステップ S 29)。
次いで、 それぞれ該無接地期開始時点 (離床時) における、 足底位置姿勢ヤコ ビアン拘束式 (51) 〜 (54)、 重心位置ヤコビアン拘束式 (55)、 角運動量 ヤコビアン拘束式 (56) をそれぞれ算出する (ステップ S 30, S 31, S 3 2)。
これらのヤコビアン拘束式の算出には、 先行するステップ S 29で得られた角 運動量の他、 足底位置姿勢軌道生成部 31が生成した足底位置姿勢軌道、 重心位 置軌道生成部 32が生成した重心位置軌道の離床時点での値が用いられる。 次いで、 これらのヤコビアン拘束式 (51) 〜 (56) からなる連立 1次方程 式を解き、離床時の基体姿勢角速度を算出しておく (ステップ S 33)。 この時点 で、 接地期終端の境界条件が決定されたことになる。
さらに、 直前に隣接する短期区間が無接地期であるかどうかを判別する (ステ ップ S 34)。
直前に隣接する短期区間が無接地期である場合は、 ステップ S 26の結果とし て得られた無接地期終端の基体姿勢角速度を、 接地期始端の境界条件として抽出 することで、 接地期両端の境界条件の設定が完了する (ステップ S 35)。
一方、 ステップ S 34において直前に隣接する短期区間が接地期と判定された 場合は、 ユーザ■プログラムから与えられる基体姿勢基本軌道の値を接地期始端 の境界条件として設定することで、 接地期両端の境界条件の設定を完了する (ス テツプ S 38)。
ところで、 ステップ S 28において、 接地期直後の短期区間も接地期であると 判別された場合は、 ステップ S 37に進み、 接地期終端の境界条件として、 運動 要求入力部 3 Aから与えられる基体姿勢基本軌道の値を設定する。 接地期始端の 境界条件は、 ステップ S 28において接地期直後の短期区間が無接地期と判定さ れた場合と同様の処理を実行することで、 接地期両端の境界条件の設定が完了す る。
以上の処理によって、 接地期が無接地期に隣接している場合の接地期両端の境 界条件が設定されたが、 ステップ S 3 9では、 同境界条件を満足するように、 接 地期の基体姿勢軌道を多項式補間などの曲線を用いて構成する処理を行なう。 さらに、 ステップ S 2 7において接地期間が何ら無接地期と隣接しないと判断 された場合は、 接地期の基体姿勢軌道は、 運動要求入力部 3 Aから与えられる基 体姿勢基本軌道をそのまま用いることができるので、 ステップ S 3 6において、 基体姿勢基本軌道を接地期の基体姿勢軌道として設定して、 本処理を完了する。 再び図 3に戻って、 本実施形態に係る口ボットの制御システムの機能構成に関 する説明を続ける。 これまでの説明により、 ユーザ ·プログラムから与えられる 上体関節角参照軌道、 基体姿勢参照軌道、 重心位置参照軌道、 足底位置姿勢参照 軌道のすべてが得られることになる。 あとは、 制御周期毎に各軌道に対して設け られている補間部 (上体関節角参照軌道補間部 3 4、 基体姿勢参照軌道補間部 3 5、 重心位置参照軌道補間部 3 6、 足底位置 .姿勢参照軌道補間部 3 7 ) におい てこれらの軌道を補間することで、 各時刻における上体関節角、 基体姿勢角、 重 心位置、 並びに足底位置姿勢を算出することができる。 但し、 無接地期における 基体姿勢角軌道に関しては数値積分の形で軌道が与えられるため、 基体姿勢参照 軌道補間部 3 5における補間処理は特に必要ない。
質点分布調整部 3 8では、 以上で求められた次時刻の基体姿勢と重心位置を満 足するように、 全身の質点分布状態を調整する。 すなわち、 基体姿勢、 足底位置 姿勢、 及び上体関節角を要求値に固定したまま、 基体 (骨盤) の位置 (x B, yB, z B) を操作し、機体全体の重心が上記で得られた重心位置となるように、全身質 点分布を調整する。 このような幾何的拘束条件下において、 基体の速度と重心の 速度の間には、 ヤコビアン. T。とすると、 以下の関係が成立する。
Figure imgf000034_0001
現在の口ポットの重心位置 X kと Z M P方程式の求解により得られた次時刻の 重心位置 X k+1の間に d X = X k+1_ X kの偏差が存在するとき、基体位置の操作量 d xBは近似的に以下の式で得ることができる。
dxn = J„dx 6 ここで、 重心の算出には、 ユーザ'プログラムより入力される上体関節角参照 値も反映される。
以上より、 現在の基体位置を X Bkとすると、 上記で得られた次時刻の基体姿勢 と重心位置を実現するため質点分布調整後の基体位置 X Bk+1は以下の式で得るこ とができる。 但し、 上式 (6 2 ) の結果得られる重心位置と参照重心位置の偏差がなお大き な場合は、 式 (6 2 ) を繰り返し用いて、 偏差が十分小さくなるまで収束演算を 実行するようにしてもよい。
関節角算出部 3 9では、 質点分布調整部 3 8で得られた次時刻の基体位置、 及 び足底位置■姿勢軌道生成部 3 1より得られる次時刻の足底位置姿勢を実現する よう、 脚部の関節角を決定する。 これは、 両者の相対位置姿勢を求めた後、 例え ば、 周知の逆キネマテイクス計算によって実行することができる。 ここで得られ た脚関節角と、ユーザ ·プログラムより与えられた上体の参照関節角とを併せて、 次時刻における全身関節角参照値として出力する。
図 3に示したようなロボットの制御システムを構成することで、 脚式移動口ボ ットは、 歩行のみならず、 跳躍や走行、 並びにこれらの運動が順次現れる状況に おいて、 歩幅や周期などの外部要求を満足しながら、 力学的に安定な運動パター ンを即応的 (又は実時間) に計算しながら動作することが可能となる。
本明細書に記載した実施形態では、 ロボットの状態量として重心位置と基体姿 勢角を用いる例を示したが、 これを他の状態量を用いるように構成しても良い。 例えば、 重心位置の代わりに重心に近接した部位 (例えば腰部) の位置を用いた り、 基体姿勢角の代わりに腰部関節角を用いたりするように構成しても、 同様に 本発明の効果を得ることができる。 あるいは、 任意の関節角を状態量として用い るように構成して、 いわゆる全身協調型の制御システムを構成しても良い。
また、 上述した実施形態では全身運動生成処理を制御周期毎に実行するように 構成されているが、 接地状態が変化する時点 (両脚支持 ·片脚支持 ·無接地の境 界) のみで軌道生成までの処理(図 4中のステップ S 1〜S 4に相当) を実行し、 軌道補間処理以降の処理 (同図中のステップ S 5〜S 7 ) のみ制御周期毎に実行 するなど、 軌道生成処理はより長 、サイクルで実行するように構成してもよい。 伹し、 この場合の運動要求反映の即応性は低下する。
また、 上述した実施形態では、 前回の全身運動生成処理の結果得られた現在時 刻の運動状態を、 次周期の全身運動生成処理の初期条件として設定することで、 現在の運動状態に滑らかに接続する運動状態を決定したが、 本発明の要旨はこれ に限定されるものではない。例えば、骨盤部加速度センサ A 1及びジャィ口 G 1、 足底力センサ(F 1〜F 8 )及び測距センサ(D 1 ~D 8 )及び加速度センサ(A 2 , A 3 ) , 及びジャイロ (G 2 , G 3 ) などのセンサを用いて実際のロボットの 運動状態を計測し、 これを初期条件として設定することで、 非特許文献 5に開示 されているロボットの歩行制御装置と同様に、 実状態を反映した全身運動生成処 理を実行するように構成することができる。 追補
以上、 特定の実施例を参照しながら、 本発明について詳 してきた。 しかしな がら、 本宪明の要旨を逸脱しない範囲で当業者が該実施例の修正や代用を成し得 ることは自明である。
本発明の要旨は、 必ずしも 「ロボット」 と称される製品には限定されない。 す なわち、 電気的若しくは磁気的な作用を用いて人間の動作に似せた運動を行う機 械装置であるならば、 例えば玩具等のような他の産業分野に属する製品であって も、 同様に本発明を適用することができる。
要するに、 例示という形態で本発明を開示してきたのであり、 本明細書の記載 内容を限定的に角?釈するべきではなレ、。 本発明の要旨を判断するためには、 冒頭 に記載した特許請求の範囲の欄を参酌すべきである。 産業上の利用可能性 本発明によれば、 歩行'停止状態と走行'跳躍との遷移に対応し、 不規則な接 地運動■無接地運動間の遷移に対しても動力学的バランスを適切に維持しながら シームレスに運動状態を変更することができる、 優れた脚式移動ロボットの運動 制御装置及び運動制御方法を提供することができる。
また、 本発明によれば、 接地運動 ·無接地運動間を遷移する安定な運動パター ンを実時間で生成することができる、 優れた脚式移動ロボットの運動制御装置及 び運動制御方法を提供することができる。
第一に、 本発明は、 機械モデルへの制約事項が少ない点で、 無質量脚仮定など (例えば、 松岡清利著 「反復跳躍モデル. バイオメカニズム 5」 (東京大学出版 会、 1 98 5年、 p. 4501— 4509)、やマーク■ H ·レイバート (Ma r c H. R a i b e r t)外 2名著「 3次元単脚ホッピング 'マシンを用いたバ ランスに関する実験 (E x p e r i me n t s I n B a l a n c e w i t h a 3D o n e— L e g g e d Ho p p i n g Ma c h i n e)」 (口ホット 研究に関する国際機関誌 (t h e I n t e r n a t i o n a l J o u r n a l o f R o b o t i c s R e s e a r c h)、 1 984年、 Vo l . 3、 No. 2, p. 75- 92) など) に比べて優位である。 これは、 本発明によれば、 接地期及び無接地期においても全身の質点分布状態が動力学的拘束条件に反映さ れるということに依拠する。 今日の一般的な脚式移動ロボットは、 脚部内に相当 数のァクチユエータが組み込まれ、脚質量を無視することができない。本発明は、 とりわけ、 単一の脚部当たり 6自由度以上のァクチユエータが実装されるヒユー マノィド ·ロボットに対しても適用できる、 高い汎用性 ·適用可能性を有してい る。
第二に、 本発明によれば、 接地■無接地が混在する脚式移動ロボットの運動制 御が可能となる。 従来の脚式移動ロポットの制御系は歩行に関るものが大半であ り、 走行 ·跳躍などの無接地期を含むより広範な運動制御系を有しているものは 殆ど見られない。 これに対し、 本発明によれば、 歩行'停止 '走行'跳躍が混在 したより一般的な運動を実行することができるので、 空隙部を飛び越える、 段上 力、ら飛び降りる、 バランス維持のために飛び跳ねて立脚位置を変更するなど、 脚 式移動ロボットの路面踏破能力■バランス維持能力を著しく向上させることがで ぎる。
第三に、 本発明は ZMP安定判別規範 (例えば、 非特許文献 1を参照のこと) に基づく方法を、 無接地期を含むより一般的な運動に拡張し、 脚部エンドポイン トの軌道に幾何的拘束を課すことが容易な構成となっている。 例えば、 走行時の 歩幅 '周期、 跳躍時の足底高さなどの要求値を、 力学的バランスを維持しながら 両立することができる。 また、 階段を駆け上る、 視覚情報から得られた連続空隙 の幅に応じて足を着床しながら走破するといつた、 足先軌道への拘束が重要とな る状況に対応可能となる。 これらは、 エンドポイントの軌道に幾何的拘束を課す ことができない従来の運動制御方式では実現が困難なケースである。
第四に、 本発明は実時間で力学的に安定な運動パターンを生成すること力 ら、 非同期に入力される歩幅 ·ステップ周期■旋回角■足上げ高さなどの下肢の運動 変化要求や、 上体の運動変化要求を、 力学的バランス平衡を保ったまま満足する ことができ、 柔軟且つ多様な無接地■接地状態混在運動を実現することが可能と なる。 あらかじめオフラインで運動パターンを作成する方法や、 バランス維持の みを行なう従来の制御系では、 このような外部要求を満足しながら力学的安定性 を維持することは極めて困難である。

Claims

請求の範囲
1 . 移動手段を有するロボット装置であって、
前記移動手段と床面が接地する際に、 前記床面に接地する前記移動手段の複数 の接地部位が形成する支持多角形内のある点回りの水平軸回りモーメントがゼロ 又はゼ口近傍となり、 且つ、 現在の制御周期における前記ロボット装置の少なく とも重心位置及び速度状態に次の制御周期のおける重心位置及び速度状態が連続 的に接続するように前記ロボット装置の重心水平位置軌道に関する境界条件付き 運動方程式の解を算出する重心水平位置軌道決定手段と、
前記移動手段と床面とが無接地の際に、 重力以外に前記ロボット装置に作用す る垂直方向並進力がゼロ又はゼロ近傍の大きさとなり、 且つ、 現在の制御周期に おける前記ロボット装置の重心垂直位置及び速度状態に、 次の制御周期における 重心垂直位置及び速度状態が連続的に接続するように前記ロボット装置の重心垂 直位置軌道に関する境界条件付き運動方程式の解を算出する重心垂直位置軌道決 定手段と、
前記移動手段と床面とが無接地の際に、 前記ロボット装置の重心回りモーメン トがゼロ又はゼロ近傍の大きさとなり、 且つ、 前記重心水平位置軌道決定手段及 び前記重心垂直位置軌道決定手段により決定された重心位置を満たすように、 次 の制御周期における前記ロボット装置の運動状態を決定する運動状態決定手段と、 を具備することを特徴とするロボット装置。
2. 前記運動状態決定手段は、 現在の制御周期における前記ロボット装置の運動 状態から算出されるヤコビアンを用いて、 次の制御周期における前記ロボット装 置の運動状態を決定する、
ことを特徴とする請求項 1に記載のロボット装置。
3 . 前記重心水平位置軌道決定手段は、 前記移動手段と床面が接地する際に、 前 記支持多角形内の点回りの水平軸回りモーメントがゼロ又はゼロ近傍の大きさと なる代わりに、 前記口ポット装置の口ール軸及びピッチ軸回りのモーメントがゼ 口となる Z M Pが前記支持多角形内に存在するように、 前記ロボット装置の重心 水平位置軌道に関する境界条件付き運動方程式の解を算出する、
ことを特徴とする請求項 1に記載の口ポット装置。
4 . 前記重心水平位置軌道決定手段は、 前記移動手段と床面とが無接地の際に、 前記水平方向並進力がゼロ又はゼロ近傍の大きさとなる代わりに、 水平方向運動 量が略一定となるように前記口ポット装置の重心水平位置軌道に関する境界条件 付き運動方程式の解を算出する、
ことを特徴とする請求項 1に記載のロボット装置。
5 . 前記ロボット装置の重心位置及び速度状態を計測する重心位置 ·速度状態計 測手段をさらに備え、
前記重心水平位置軌道決定手段及び前記重心垂直位置軌道決定手段は、 前記重 心位置 ·速度状態計測手段によって計測された現在の制御周期における前記ロボ ット装置の重心位置及び速度状態を、 次の制御周期における前記境界条件付き運 動方程式の初期境界条件として設定する、
ことを特徴とする請求項 1に記載の口ポット装置。
6 . 前記運動状態決定手段は、 前記ロボット装置の基体の姿勢角を操作量として 前記ロボット装置の運動状態を決定する、
ことを特徴とする請求項 1に記載のロボット装置。
7 . 前記運動状態決定手段は、 前記ロボット装置の腰関節角を操作量として、 前 記ロボット装置の運動状態を決定する、
ことを特徴とする請求項 1に記載のロボット装置。
8 . 前記運動状態決定手段は、 前記移動手段と床面とが無接地の際に、 前記ロボ ット装置の重心回りモーメントがゼロ又はゼロ近傍の大きさとなる代わりに、 重 心回り角運動量が一定となるように、 次の制御周期における前記ロボット装置の 運動状態を決定する、
ことを特徴とする請求項 1に記載のロボット装置。
9 . 移動手段を有するロボット装置であって、
前記移動手段と床面が接地する際に、 前記ロボット装置に作用する水平軸回り モーメントと、 少なくとも前記ロボット装置の重心位置及び速度状態の時間的連 続性に基づいて、 前記ロボット装置の重心水平位置軌道を算出する重心水平位置 軌道決定手段と、
前記移動手段と床面とが無接地の際に、 重力以外に前記ロボット装置に作用す る垂直方向並進力と、 少なくとも前記ロボット装置の重心垂直位置及び速度状態 の時間的連続性に基づいて、 前記ロボット装置の重心垂直位置軌道を算出する重 心垂直位置軌道決定手段と、
前記移動手段と床面とが無接地の際に、 前記ロボット装置の重心回りモーメン トと、 前記重心水平位置軌道決定手段及び前記重心垂直位置軌道決定手段により 決定された重心位置を満たすように、 前記ロボット装置の運動状態を決定する運 動状態決定手段と、
を具備することを特徴とする口ポット装置。
1 0 . 移動手段を有するロボット装置の運動制御装置であって、
前記移動手段と床面が接地する際に、 前記床面に接地する前記移動手段の複数 の接地部位が形成する支持多角形内のある点回りの水平軸回りモーメントがゼロ 又はゼロ近傍となり、 且つ、 現在の制御周期における前記ロボット装置の少なく とも重心位置及び速度状態に次の制御周期のおける重心位置及び速度状態が連続 的に接続するように前記口ボット装置の重心水平位置軌道に関する境界条件付き 運動方程式の解を算出する重心水平位置軌道決定手段と、
前記移動手段と床面とが無接地の際に、 重力以外に前記ロボット装置に作用す る垂直方向並進力がゼロ又はゼロ近傍の大きさとなり、 且つ、 現在の制御周期に おける前記口ポット装置の重心垂直位置及び速度状態に、 次の制御周期における 重心垂直位置及び速度状態が連続的に接続するように前記ロボット装置の重心垂 直位置軌道に関する境界条件付き運動方程式の解を算出する重心垂直位置軌道決 定手段と、
前記移動手段と床面とが無接地の際に、 前記ロボット装置の重心回りモーメン トがゼ口又はゼ口近傍の大きさとなり、 且つ、 前記重心水平位置軌道決定手段及 び前記重心垂直位置軌道決定手段により決定された重心位置を満たすように、 次 の制御周期における前記ロボット装置の運動状態を決定する運動状態決定手段と、 を具備することを特徴とするロボット装置の運動制御装置。
1 1 . 移動手段を有するロボット装置の運動制御方法であって、
前記移動手段と床面が接地する際に、 前記床面に接地する前記移動手段の複数 の接地部位が形成する支持多角形内のある点回りの水平軸回りモーメントがゼロ 又はゼ口近傍となり、 且つ、 現在の制御周期における前記ロボット装置の少なく とも重心位置及び速度状態に次の制御周期のおける重心位置及び速度状態が連続 的に接続するように前記ロボット装置の重心水平位置軌道に関する境界条件付き 運動方程式の解を算出する重心水平位置軌道決定ステツプと、
前記移動手段と床面とが無接地の際に、 重力以外に前記ロボット装置に作用す る垂直方向並進力がゼロ又はゼロ近傍の大きさとなり、 且つ、 現在の制御周期に おける前記ロボット装置の重心垂直位置及び速度状態に、 次の制御周期における 重心垂直位置及び速度状態が連続的に接続するように前記ロボット装置の重心垂 直位置軌道に関する境界条件付き運動方程式の解を算出する重心垂直位置軌道決 定ステップと、
前記移動手段と床面とが無接地の際に、 前記ロボット装置の重心回りモーメン トがゼロ又はゼロ近傍の大きさとなり、 且つ、 前記重心水平位置軌道決定手段及 び前記重心垂直位置軌道決定手段により決定された重心位置を満たすように、 次 の制御周期における前記ロボット装置の運動状態を決定する運動状態決定ステツ プと、
を具備することを特徴とするロポット装置の運動制御方法。
2 . 前記運動状態決定ステップでは、 現在の制御周期における前記ロボット装 置の運動状態から算出されるヤコビアンを用いて、 次の制御周期における前記口 ボット装置の運動状態を決定する、
ことを特徴とする請求項 1 1に記載のロボット装置の運動制御方法。
1 3 . 前記重心水平位置軌道決定ステップでは、 前記移動手段と床面が接地する 際に、 前記支持多角形内の点回りの水平軸回りモーメントがゼロ又はゼロ近傍の 大きさとなる代わりに、 前記ロボット装置のロール軸及びピッチ軸回りのモーメ ントがゼロとなる Z M Pが前記支持多角形内に存在するように、 前記ロボット装 置の重心水平位置軌道に関する境界条件付き運動方程式の解を算出する、 ことを特徴とする請求項 1 1に記載のロボット装置の運動制御方法。
1 4 . 前記重心水平位置軌道決定ステップでは、 前記移動手段と床面とが無接地 の際に、 前記水平方向並進力がゼロ又はゼロ近傍の大きさとなる代わりに、 水平 方向運動量が略一定となるように前記ロボット装置の重心水 立置軌道に関する 境界条件付き運動方程式の解を算出する、
ことを特徴とする請求項 1 1に記載のロボット装置の運動制御方法。
1 5 . 前記ロボット装置の重心位置及び速度状態を計測する重心位置■速度状態 計測ステップをさらに備え、
前記重心水平位置軌道決定ステップ及び前記重心垂直位置軌道決定ステップで は、 前記重心位置 -速度状態計測ステップにおいて計測された現在の制御周期に おける前記ロボット装置の重心位置及び速度状態を、 次の制御周期における前記 境界条件付き運動方程式の初期境界条件として設定する、
ことを特徴とする請求項 1 1に記載のロボット装置の運動制御方法。
1 6 . 前記運動状態決定ステップでは、 前記ロボット装置の基体の姿勢角を操作 量として前記ロボット装置の運動状態を決定する、
ことを特徴とする請求項 1 1に記載のロボット装置の運動制御方法。
1 7 . 前記運動状態決定ステップでは、 前記ロボット装置の腰関節角を操作量と して、 前記ロボット装置の運動状態を決定する、
ことを特徴とする請求項 1 1に記載のロポット装置の運動制御方法。
1 8 . 前記運動状態決定ステップでは、 前記移動手段と床面とが無接地の際に、 前記ロボット装置の重心回りモーメントがゼ口又はゼ口近傍の大きさとなる代わ りに、 重心回り角運動量が一定となるように、 次の制御周期における前記ロボッ ト装置の運動状態を決定する、
ことを特徴とする請求項 1 1に記載のロボット装置の運動制御方法。
1 9 . 移動手段を有するロボット装置の運動制御方法であって、
前記移動手段と床面が接地する際に、 前記ロボット装置に作用する水平軸回り モーメントと、 少なくとも前記ロボット装置の重心位置及び速度状態の時間的連 続性に基づいて、 前記ロボット装置の重心水平位置軌道を算出する重心水平位置 軌道決定ステップと、
前記移動手段と床面とが無接地の際に、 重力以外に前記ロボット装置に作用す る垂直方向並進力と、 少なくとも前記ロボット装置の重心垂直位置及び速度状態 の時間的連続性に基づいて、 前記ロボット装置の重心垂直位置軌道を算出する重 心垂直位置軌道決定ステツプと、
前記移動手段と床面とが無接地の際に、 前記ロボット装置の重心回りモーメン トと、 前記重心水平位置軌道決定ステップ及び前記重心垂直位置軌道決定ステッ プにおいて決定された重心位置を満たすように、 前記ロポット装置の運動状態を 決定する運動状態決定ステツプと、
を具備することを特徴とするロボット装置の運動制御方法。
PCT/JP2003/013870 2002-11-06 2003-10-29 ロボット装置、ロボット装置の運動制御装置及び運動制御方法 Ceased WO2004041484A1 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
EP03769977.4A EP1559519B1 (en) 2002-11-06 2003-10-29 Robot device, motion control device for robot device and motion control method
US10/500,372 US7400939B2 (en) 2002-11-06 2003-10-29 Robot device, motion control device for robot device and motion control method
AU2003280608A AU2003280608A1 (en) 2002-11-06 2003-10-29 Robot device, motion control device for robot device and motion control method

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
JP2002-322582 2002-11-06
JP2002322582 2002-11-06
JP2003-365549 2003-10-27
JP2003365549A JP3599244B2 (ja) 2002-11-06 2003-10-27 ロボット装置、ロボット装置の運動制御装置並びに運動制御方法

Publications (1)

Publication Number Publication Date
WO2004041484A1 true WO2004041484A1 (ja) 2004-05-21

Family

ID=32314058

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2003/013870 Ceased WO2004041484A1 (ja) 2002-11-06 2003-10-29 ロボット装置、ロボット装置の運動制御装置及び運動制御方法

Country Status (5)

Country Link
US (1) US7400939B2 (ja)
EP (1) EP1559519B1 (ja)
JP (1) JP3599244B2 (ja)
AU (1) AU2003280608A1 (ja)
WO (1) WO2004041484A1 (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2006083028A1 (en) * 2005-02-03 2006-08-10 Toyota Jidosha Kabushiki Kaisha Legged robot and control method thereof
US7751935B2 (en) * 2004-02-11 2010-07-06 Samsung Electronic Co., Ltd. Method and apparatus for controlling vibration using accelerometer
CN111766885A (zh) * 2020-07-08 2020-10-13 清华大学深圳国际研究生院 一种四足机器人的静步态规划方法

Families Citing this family (48)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3833567B2 (ja) * 2002-05-01 2006-10-11 本田技研工業株式会社 移動ロボットの姿勢制御装置
US7698020B2 (en) * 2003-07-11 2010-04-13 Honda Motor Co., Ltd. Method of estimating joint moment of two-legged walking mobile body
JP4735927B2 (ja) * 2004-06-28 2011-07-27 独立行政法人産業技術総合研究所 人間型ロボットの制御装置
JP4492395B2 (ja) * 2005-03-09 2010-06-30 トヨタ自動車株式会社 脚式ロボットとその動作制御方法
US7835822B2 (en) * 2005-03-30 2010-11-16 Honda Motor Co., Ltd. Systems and methods for controlling a legged robot using a two-phase disturbance response strategy
JP4595727B2 (ja) 2005-07-22 2010-12-08 ソニー株式会社 外力推定システム及び外力推定方法、並びにコンピュータ・プログラム
JP4682791B2 (ja) 2005-10-12 2011-05-11 ソニー株式会社 操作空間物理量算出装置及び操作空間物理量算出方法、並びにコンピュータ・プログラム
JP4456561B2 (ja) * 2005-12-12 2010-04-28 本田技研工業株式会社 自律移動ロボット
JP5034235B2 (ja) 2006-01-16 2012-09-26 ソニー株式会社 制御システム及び制御方法、並びにコンピュータ・プログラム
US7788068B2 (en) * 2006-01-31 2010-08-31 Autodesk, Inc. Transferring load information and result information between analysis and design software
JP4591419B2 (ja) 2006-07-18 2010-12-01 トヨタ自動車株式会社 ロボットとその制御方法
JP5319056B2 (ja) * 2006-08-01 2013-10-16 トヨタ自動車株式会社 燃料電池システム
JP4692443B2 (ja) * 2006-09-06 2011-06-01 トヨタ自動車株式会社 脚式ロボット
JP2008087141A (ja) * 2006-10-05 2008-04-17 Toyota Motor Corp 脚式移動ロボットの動作データ作成装置及び作成方法
JP4392037B2 (ja) 2007-09-12 2009-12-24 トヨタ自動車株式会社 脚式ロボット、及びその制御方法
JP4440956B2 (ja) 2007-09-12 2010-03-24 トヨタ自動車株式会社 脚式ロボット、及びその制御方法
KR101182620B1 (ko) * 2007-10-23 2012-09-14 혼다 기켄 고교 가부시키가이샤 2 족 보행 로봇
JP5035005B2 (ja) * 2008-02-19 2012-09-26 トヨタ自動車株式会社 脚式ロボット、その制御方法、その制御システム
JP2009214255A (ja) * 2008-03-12 2009-09-24 Toyota Motor Corp 脚式ロボット、及びその制御方法
TWI375140B (en) * 2008-10-13 2012-10-21 Ind Tech Res Inst Accumulative method for estimating a processing velocity limitation and method for controlling acceleration and deceleration before interpolation
JP5440152B2 (ja) * 2009-12-22 2014-03-12 トヨタ自動車株式会社 脚式ロボットとそのための歩容データ生成方法
JP5506618B2 (ja) * 2009-12-28 2014-05-28 本田技研工業株式会社 ロボットの制御装置
KR101687628B1 (ko) * 2010-01-12 2016-12-21 삼성전자주식회사 로봇의 보행 제어 장치 및 그 제어 방법
JP5463991B2 (ja) * 2010-03-18 2014-04-09 トヨタ自動車株式会社 2脚歩行ロボット
KR101200191B1 (ko) * 2010-07-14 2012-11-13 서울대학교산학협력단 데이터 기반 바이페드 제어 장치 및 방법
WO2012011182A1 (ja) 2010-07-22 2012-01-26 トヨタ自動車株式会社 二足歩行ロボット及び二足歩行ロボットの着地タイミング決定方法
US9024772B2 (en) 2010-09-28 2015-05-05 Xianghui Wang Multi sensor position and orientation measurement system
KR20120060578A (ko) * 2010-12-02 2012-06-12 삼성전자주식회사 보행 로봇 및 그 자세 제어 방법
KR101778027B1 (ko) * 2010-12-21 2017-09-13 삼성전자주식회사 보행 로봇 및 그 자세 제어 방법
US9412010B2 (en) * 2011-07-15 2016-08-09 Panasonic Corporation Posture estimation device, posture estimation method, and posture estimation program
JP5623375B2 (ja) * 2011-12-02 2014-11-12 本田技研工業株式会社 脚式移動ロボットの歩容生成装置
KR101428328B1 (ko) * 2012-12-27 2014-08-08 현대자동차주식회사 로봇의 보행제어방법 및 시스템
US8915116B2 (en) * 2013-01-23 2014-12-23 Freescale Semiconductor, Inc. Systems and method for gyroscope calibration
CN103217903B (zh) * 2013-04-07 2016-01-20 南京邮电大学 基于双平衡控制机制的仿人足球机器人全向踢球方法
JP6330287B2 (ja) * 2013-10-29 2018-05-30 セイコーエプソン株式会社 ロボット、ロボット用当接部材
US9259838B1 (en) * 2014-07-24 2016-02-16 Google Inc. Systems and methods for ground plane estimation
US9517561B2 (en) * 2014-08-25 2016-12-13 Google Inc. Natural pitch and roll
US10081098B1 (en) * 2014-08-25 2018-09-25 Boston Dynamics, Inc. Generalized coordinate surrogates for integrated estimation and control
CN105511465B (zh) * 2015-12-02 2017-08-04 歌尔股份有限公司 一种双足机器人的步态控制方法和装置
US9868210B1 (en) * 2015-12-30 2018-01-16 Google Inc. Methods and systems for planning a body position of a robotic device
CN106514653B (zh) * 2016-11-07 2019-01-22 南京邮电大学 一种基于贝塞尔曲线插值的仿人足球机器人踢球方法
US10351189B2 (en) * 2016-12-13 2019-07-16 Boston Dynamics, Inc. Whole body manipulation on a legged robot using dynamic balance
CN109634100B (zh) * 2018-12-30 2021-11-02 深圳市优必选科技有限公司 仿人机器人行走加速度补偿方法、装置及仿人机器人
JP7415989B2 (ja) * 2021-03-16 2024-01-17 カシオ計算機株式会社 ロボット、ロボットの制御方法及びプログラム
US12509171B2 (en) 2021-09-08 2025-12-30 Ptt Exploration And Production Public Company Limited Method and system for controlling motion of a multi-segmented walking robot
CN114454981B (zh) * 2021-12-14 2022-11-29 深圳市优必选科技股份有限公司 双足机器人的弹跳运动控制方法、装置及双足机器人
CN118131800A (zh) * 2022-11-23 2024-06-04 北京小米机器人技术有限公司 运动控制方法、装置、机器人及可读储存介质
CN117163182A (zh) * 2023-08-25 2023-12-05 成都爱特生信息技术有限公司 一种机器人运动平衡系统及机器人

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2003057426A1 (en) 2001-12-28 2003-07-17 Honda Giken Kogyo Kabushiki Kaisha Gait producing device for leg type movable robot

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3662996B2 (ja) * 1996-01-25 2005-06-22 本田技研工業株式会社 脚式移動ロボットの歩行制御装置
US5872893A (en) * 1996-07-25 1999-02-16 Honda Giken Kogyo Kabushiki Kaisha Gait generation system of legged mobile robot
US6243623B1 (en) * 1997-01-31 2001-06-05 Honda Giken Kogyo Kabushiki Kaisha Leg type mobile robot control apparatus
US6064168A (en) * 1998-03-13 2000-05-16 Fanuc Robotics North America, Inc. Method of controlling robot movement
US6289265B1 (en) * 1998-04-20 2001-09-11 Honda Giken Kogyo Kabushiki Kaisha Controller for legged mobile robot
JP3555107B2 (ja) * 1999-11-24 2004-08-18 ソニー株式会社 脚式移動ロボット及び脚式移動ロボットの動作制御方法
JP3615702B2 (ja) * 1999-11-25 2005-02-02 ソニー株式会社 脚式移動ロボットの動作制御装置及び動作制御方法、並びに、脚式移動ロボット
JP2001260063A (ja) * 2000-03-21 2001-09-25 Sony Corp 多関節型ロボット及びその動作制御方法
JP2001322079A (ja) * 2000-05-15 2001-11-20 Sony Corp 脚式移動ロボット及びその動作教示方法
JP4404639B2 (ja) * 2002-02-15 2010-01-27 ソニー株式会社 脚式移動ロボットの脚装置並びに脚式移動ロボットの制御方法
JP4513320B2 (ja) * 2003-12-17 2010-07-28 ソニー株式会社 ロボット装置、並びにロボット装置の運動制御方法

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2003057426A1 (en) 2001-12-28 2003-07-17 Honda Giken Kogyo Kabushiki Kaisha Gait producing device for leg type movable robot

Non-Patent Citations (1)

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

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7751935B2 (en) * 2004-02-11 2010-07-06 Samsung Electronic Co., Ltd. Method and apparatus for controlling vibration using accelerometer
WO2006083028A1 (en) * 2005-02-03 2006-08-10 Toyota Jidosha Kabushiki Kaisha Legged robot and control method thereof
DE112006000313B4 (de) 2005-02-03 2018-05-09 Toyota Jidosha Kabushiki Kaisha Bebeinter Roboter und Steuerungsverfahren für denselben
CN111766885A (zh) * 2020-07-08 2020-10-13 清华大学深圳国际研究生院 一种四足机器人的静步态规划方法
CN111766885B (zh) * 2020-07-08 2023-08-11 清华大学深圳国际研究生院 一种四足机器人的静步态规划方法

Also Published As

Publication number Publication date
EP1559519A1 (en) 2005-08-03
AU2003280608A1 (en) 2004-06-07
JP2004167676A (ja) 2004-06-17
EP1559519A4 (en) 2012-01-04
EP1559519B1 (en) 2014-10-01
JP3599244B2 (ja) 2004-12-08
US7400939B2 (en) 2008-07-15
US20050038560A1 (en) 2005-02-17

Similar Documents

Publication Publication Date Title
JP3599244B2 (ja) ロボット装置、ロボット装置の運動制御装置並びに運動制御方法
US7805218B2 (en) Robot device and control method of robot device
JP5483997B2 (ja) 脚式移動ロボットの制御装置
JP5284923B2 (ja) 脚式移動ロボットの制御装置
Kajita et al. Real-time 3D walking pattern generation for a biped robot with telescopic legs
EP1378325B1 (en) Legged mobile robot and control method thereof, leg structure of legged mobile robot, and mobile leg unit for legged mobile robot
US7603234B2 (en) Controller of legged mobile robot
JP3640255B2 (ja) 脚式移動ロボットの歩容生成装置
JP4641252B2 (ja) 脚式移動ロボットの歩容生成装置
JP4513320B2 (ja) ロボット装置、並びにロボット装置の運動制御方法
KR100718479B1 (ko) 로봇의 보행 제어 장치 및 보행 제어 방법
WO2004033160A1 (ja) ロボット装置の動作制御装置及び動作制御方法
WO2003061917A1 (fr) Dispositif de commande pour robot bipede
JP2004167666A (ja) ロボット装置及びその動作制御方法
KR101760883B1 (ko) 로봇 및 그 제어방법
JP4483254B2 (ja) ロボット装置及びロボット装置の制御方法
US7765030B2 (en) Gait generator for mobile robot
WO2006064598A1 (ja) 脚式移動ロボットおよびその制御プログラム
JP2003117858A (ja) ロボットの歩行制御装置及び歩行制御方法
US20090099689A1 (en) Legged mobile robot and control program for the robot
JP2002210681A (ja) 脚式移動ロボットのための動作制御装置及び動作制御方法、並びにロボット装置
JP5232120B2 (ja) 移動体の制御装置
JP3674787B2 (ja) ロボット装置の動作制御装置及び動作制御方法、並びにコンピュータ・プログラム
Sari et al. Implementation and integration of fuzzy algorithms for descending stair of KMEI humanoid robot
JP2003159676A (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 BY BZ CA CH CN CO CR CU CZ DE DK DM DZ EC EE ES FI GB GD GE GH GM HR HU ID IL IN IS KE KG KP KR KZ LC LK LR LS LT LU LV MA MD MG MK MN MW MX MZ NI NO NZ OM PH PL PT RO RU SC SD SE SG SK SL 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): GH GM KE LS MW MZ SD SL SZ TZ UG ZM ZW AM AZ BY KG KZ MD RU TJ TM AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HU IE IT LU MC NL PT RO SE SI SK TR BF BJ CF CG CI CM GA GN GQ GW ML MR NE SN TD TG

WWE Wipo information: entry into national phase

Ref document number: 2003769977

Country of ref document: EP

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

Country of ref document: US

WWP Wipo information: published in national office

Ref document number: 2003769977

Country of ref document: EP