JP2007007803A - Robot and control method thereof - Google Patents

Robot and control method thereof Download PDF

Info

Publication number
JP2007007803A
JP2007007803A JP2005193279A JP2005193279A JP2007007803A JP 2007007803 A JP2007007803 A JP 2007007803A JP 2005193279 A JP2005193279 A JP 2005193279A JP 2005193279 A JP2005193279 A JP 2005193279A JP 2007007803 A JP2007007803 A JP 2007007803A
Authority
JP
Japan
Prior art keywords
robot
foot
foot placement
gait data
actual
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.)
Pending
Application number
JP2005193279A
Other languages
Japanese (ja)
Inventor
Masafumi Uchihara
誠文 内原
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.)
Toyota Motor Corp
Original Assignee
Toyota Motor 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 Toyota Motor Corp filed Critical Toyota Motor Corp
Priority to JP2005193279A priority Critical patent/JP2007007803A/en
Publication of JP2007007803A publication Critical patent/JP2007007803A/en
Pending legal-status Critical Current

Links

Images

Abstract

<P>PROBLEM TO BE SOLVED: To provide technology for returning to foot sole disposition course described by gait data by natural action in a robot walking while correcting gait data based upon deviation between the actual foot sole disposition and the foot sole disposition course described by the gait data by measuring the foot sole disposition of the actual support leg. <P>SOLUTION: This control method includes: a process of measuring the actual foot sole disposition; a process of specifying the virtual foot sole disposition corresponding to the actual foot sole disposition; a process of calculating deviation between the actual foot sole disposition and the virtual foot sole disposition; a process of deciding the number of steps until return to the foot sole disposition course described by gait data based upon the deviation; a process of calculating the foot sole disposition course in walking based upon the gait data from the actual foot sole disposition at least up to the number of steps; a process of calculating the correction amount for each one step so that the foot sole disposition when walking up to the number of steps is performed from the actual foot sole disposition coincides with the foot sole disposition when walking up to the number of steps is performed from the virtual foot sole disposition; and a process of correcting gait data based upon the correction amount. <P>COPYRIGHT: (C)2007,JPO&INPIT

Description

本発明は、自律的に移動するロボットを制御する技術に関する。詳しくは、体幹(胴部)に対して脚リンクが揺動可能に連結されている機械(脚式ロボットの機械系)を制御して歩行させる際、歩行中に目標とする歩行経路から外れてしまった場合に、目標とする歩行経路へ自然な動作で復帰するロボットとその制御方法に関する。   The present invention relates to a technique for controlling a robot that moves autonomously. Specifically, when walking by controlling a machine (legged robot mechanical system) in which the leg link is swingably connected to the trunk (torso), the target walking path is deviated during walking. The present invention relates to a robot that returns to a target walking path by natural movement in the event of a failure and a control method thereof.

ヒトの行う歩行を模して、左足リンクと体幹と右足リンクの相対的姿勢を変化させることによって歩行する脚式ロボットが開発されている。
脚式ロボットが歩行するためには、左足先と体幹と右足先の運動を指示するデータを必要とする。そのうちの体幹の位置と姿勢は、足先の位置と姿勢に対して適当な値である必要があり、その値が適当でなければロボットは転倒してしまう。
脚式ロボットが転倒しない体幹の位置と姿勢を得るためには、ロボットのダイナミクスを考慮に入れた複雑な計算を必要とする。その計算過程は大略下記のものである。
(1)ロボットの左足先と右足先の位置と姿勢を指示する経時的データを指定する。
(2)足先の位置と姿勢を考慮してロボットのZMPが存在しなければならない位置を指定する。ZMP(zero moment point)は、ロボットに作用する重力や床反力や慣性力の合力のモーメントがゼロになる床上の点をいう。ZMPが接地脚の足平内にあればロボットは転倒しない。逆にいうと、ロボットが転倒しないためには、ZMPが接地脚の足平内になければならない。そこで接地脚の足先の位置と姿勢を考慮し、下記の関係を満たす目標ZMPを指定する。即ち、一方の脚リンク(例えば左脚)が遊脚になっている間は接地脚(右脚)の足平内に存在し、その一方の脚(左脚)が接地して両足接地状態になった時に新たに接地した脚(左脚)の足平内に向けて移動開始し、それまでに接地していた脚(右脚)が遊脚となる前に新たに接地した脚(左脚)の足平内に移動し終えるZMPを指定する。このようにして指定されたZMPは、目標ZMPと呼ばれる。実際のZMPが目標ZMPのとおりに移動すれば、ロボットは転倒することなく歩行しつづける。
(3)足先の位置と姿勢の変化とそれに追従して変化する目標ZMPが指定されると、体幹の位置と姿勢の経時的変化を仮定してロボットのダイナミクスを計算する。計算する時点で、足先の位置と姿勢の経時的変化が指定されているために、ロボットの体幹の位置と姿勢を仮定すると、ロボットの全身の姿勢が決まる。ロボットの全身の姿勢が決まると、その姿勢におけるZMPの位置を計算することが可能となる。ZMPの位置を計算するためには、静的な要素に加えて、ロボットに作用する慣性力の影響を織り込まなければならない。仮定した体幹の位置と姿勢の経時的変化を計算に含めることで、ロボットのダイナミクスまで考慮してZMPの位置を計算することが可能となる。体幹の位置と姿勢の経時的変化を仮定するとZMPの位置を計算することができることから、目標ZMPに一致するZMPを実現する体幹の位置と姿勢の経時的変化を探求することができる。
上記によって探求された体幹の位置と姿勢の経時的変化を示すデータを体幹歩容データといい、もともと指定されている足先の位置と姿勢の経時的変化を示すデータを足先歩容データといい、両者を総称して歩容データという。歩容データに従ってロボットが歩行すれば、実際のZMPが目標ZMPに一致し、ロボットは転倒せずに歩行しつづけることができる。
A legged robot that walks by changing the relative postures of the left foot link, trunk, and right foot link has been developed to imitate human walking.
In order for a legged robot to walk, data indicating the motion of the left foot tip, trunk and right foot tip is required. Among them, the position and posture of the trunk need to be appropriate values for the position and posture of the toes, and if the values are not appropriate, the robot will fall.
In order to obtain the position and posture of the trunk where the legged robot does not fall down, complex calculations that take into account the dynamics of the robot are required. The calculation process is roughly as follows.
(1) Designate temporal data indicating the position and posture of the left and right toes of the robot.
(2) Designate the position where the ZMP of the robot must exist in consideration of the position and posture of the toes. ZMP (zero moment point) refers to a point on the floor where the moment of the resultant force of gravity, floor reaction force and inertial force acting on the robot becomes zero. If the ZMP is within the foot of the grounded leg, the robot will not tip over. Conversely, in order for the robot not to fall, the ZMP must be in the foot of the grounding leg. Therefore, a target ZMP that satisfies the following relationship is designated in consideration of the position and posture of the foot of the grounding leg. That is, while one leg link (for example, the left leg) is a free leg, it exists in the foot of the ground leg (right leg), and the one leg (left leg) is grounded and both legs are grounded. At the time of movement, it starts to move toward the foot of the newly grounded leg (left leg), and before the leg (right leg) that was grounded before becomes a free leg, Specify the ZMP to finish moving in the foot. The ZMP designated in this way is called a target ZMP. If the actual ZMP moves as the target ZMP, the robot continues to walk without falling.
(3) When a change in the position and posture of the toe and a target ZMP that changes following the change are specified, the dynamics of the robot is calculated assuming a change in the position and posture of the trunk over time. At the time of calculation, since the temporal changes in the position and posture of the toes are specified, assuming the position and posture of the trunk of the robot, the posture of the whole body of the robot is determined. When the posture of the whole body of the robot is determined, the position of the ZMP in that posture can be calculated. In order to calculate the position of the ZMP, in addition to static elements, the influence of inertial force acting on the robot must be taken into account. By including temporal changes in the assumed position and posture of the trunk, it is possible to calculate the position of the ZMP in consideration of the dynamics of the robot. Since it is possible to calculate the position of the ZMP assuming the temporal change of the position and posture of the trunk, it is possible to search for the temporal change of the position and posture of the trunk that realizes the ZMP that matches the target ZMP.
The data indicating the temporal changes in the position and posture of the trunk sought in the above is referred to as trunk gait data, and the data indicating the temporal changes in the position and posture of the foot that was originally specified is referred to as the foot gait. It is called data, and both are collectively called gait data. If the robot walks according to the gait data, the actual ZMP matches the target ZMP, and the robot can continue to walk without falling.

歩容データは、時間に対する位置および姿勢の経時的変化で与えられる。位置と速度と加速度は関連しており、そのうちの一つの量から他の量を計算することができるために、位置の代わりに速度または加速度の経時的変化を扱ってもよい。姿勢は座標軸に対する回転角度で表現されるが、角度と角速度と角加速度は関連しており、そのうちの一つの量から他の量を計算することができるために、角度の代わりに角速度または角加速度の経時的変化を扱ってもよい。本明細書では、歩容データが、位置・速度・加速度のいずれかと、角度・角速度・角加速度のいずれかで記述されるために、運動を記述するデータということにする。   Gait data is given by changes in position and posture over time. Since position, velocity, and acceleration are related, and other quantities can be calculated from one of these quantities, changes over time in speed or acceleration may be handled instead of position. Attitude is expressed in terms of the rotation angle with respect to the coordinate axis, but the angle, angular velocity, and angular acceleration are related, and the other amount can be calculated from one of them, so the angular velocity or angular acceleration instead of the angle You may handle changes over time. In this specification, since the gait data is described by any one of position / velocity / acceleration and any of angle / angular velocity / angular acceleration, it is referred to as data describing a motion.

目標ZMPに一致するZMPをもたらす体幹運動を算出する手法は、目標足先運動の変化に追従してロボットが歩行しつづけることを可能とする目標体幹運動の経時的変化を算出する手法の典型例であり、それには限られない。一般的にいうと、脚式ロボットは、体幹と体幹に対して揺動可能に連結されている脚リンクを備えており、歩容データが記述する足先運動の経時的変化を記述する足先歩容データが指示されると、目標足先運動の変化に追従して歩行しつづけることを可能とする目標体幹運動の経時的変化を記述する体幹歩容データを算出し、指示された足先歩容データと算出された体幹歩容データを用いて歩行する。   The technique for calculating the trunk movement that brings about the ZMP that matches the target ZMP is a technique for calculating the change over time of the target trunk movement that allows the robot to continue walking following the change in the target toe movement. This is a typical example and is not limited thereto. Generally speaking, a legged robot has a leg link that is swingably connected to the trunk, and describes a change in foot movement over time described by gait data. When the foot gait data is instructed, the body gait data describing the change over time of the target trunk motion that allows the user to continue walking following the change in the target foot motion is calculated and indicated It walks using the calculated toe gait data and the calculated trunk gait data.

歩容データに基づいて関節群を駆動すると、ロボットは歩行動作を実現する。実現される歩行動作が、想定した歩容データで表現される歩行動作と一致していれば、実現されるZMPは支持脚の足平内に維持されるため、ロボットは転倒することなく安定して歩行動作を継続することができる。   When the joint group is driven based on the gait data, the robot realizes a walking motion. If the realized walking motion matches the walking motion expressed by the assumed gait data, the realized ZMP will be maintained in the foot of the support leg, so the robot will be stable without falling down. Walking motion can be continued.

ロボットが歩行をしている間に、ロボットに予期せぬ外乱力が作用して、歩容データが記述する動作と、実際の動作との間にズレが生じることがある。路面の予期せぬ凹凸によって予期せぬ外乱力が作用することもあるし、ロボットに外界から押したり引いたりする外力が加えられることもある。ロボットの構造上のたわみや、ロボットの関節のガタや、ロボットの応答遅れ等に起因して歩容データから外れれば、予期せぬ外乱力が作用したのと同じことになる。
ロボットの実際の動作が歩容データが記述する動作からズレた場合、実際のロボットのZMPと目標ZMPの間に相違が生じ、ZMPが支持脚の足平内へ維持されなくなって、ロボットは転倒する可能性がある。このような事態を防ぐために、ロボットが実際に動作している状態を検出して、歩容データが記述する動作にフィードバックして、安定な動作を実現する技術が開発されている。
特許文献1に記載の技術では、ロボットに作用する床反力あるいは床反力モーメントを測定してZMP位置を実測する。実測されたZMP位置を目標ZMP位置と比較し、その偏差を両足平の目標位置や姿勢へフィードバックすることで歩行の安定化をはかっている。
特開平5−305579号公報
While the robot is walking, an unexpected disturbance force acts on the robot, and a deviation may occur between the motion described by the gait data and the actual motion. An unexpected disturbance force may act due to an unexpected unevenness of the road surface, and an external force that pushes or pulls the robot from the outside may be applied. If it deviates from the gait data due to the structural deflection of the robot, the backlash of the robot joints, the response delay of the robot, etc., it is the same as an unexpected disturbance force.
If the actual movement of the robot deviates from the movement described by the gait data, there will be a difference between the actual robot's ZMP and the target ZMP, the ZMP will not be maintained in the foot of the support leg, and the robot will fall there is a possibility. In order to prevent such a situation, a technique for detecting a state in which the robot is actually operating and feeding back to the operation described by the gait data has been developed.
In the technique described in Patent Document 1, the floor reaction force or the floor reaction force moment acting on the robot is measured to actually measure the ZMP position. The measured ZMP position is compared with the target ZMP position, and the deviation is fed back to the target positions and postures of both feet to stabilize the walking.
JP-A-5-305579

従来から提案されている脚式ロボットの歩行を制御する技術の多くは、ロボットに作用する力や加速度を計測して、計画された動作へのフィードバックを行う。このような制御技術によれば、ロボットの動力学的な安定性を確保することが可能であり、安定して歩行し続けるロボットを実現することができる。上記の制御技術によると、ロボットは必ずしも所望の配置で脚リンクの足平を接地するわけではないが、少なくとも安定した歩行を実現することができる。   Many conventional techniques for controlling the walking of legged robots measure the force and acceleration acting on the robot and provide feedback to the planned motion. According to such a control technique, it is possible to ensure the dynamic stability of the robot, and it is possible to realize a robot that continues to walk stably. According to the above control technique, the robot does not necessarily ground the foot of the leg link in a desired arrangement, but at least a stable walking can be realized.

しかしながら、ロボットの脚リンクの足平が所望の配置で接地するように制御したい場合がある。例えば床上に障害物が点在する室内をロボットが歩行する場合、障害物を踏まないように、接地する足平の配置を制御したい。またパフォーマンスを行うエンターテイメント用のロボットの場合、予め定めた歩行経路に沿って歩行するように制御したい。
なお本明細書でいう「足平の配置」は、脚リンクの足平が床と接地するときの、足平に当接する床上の領域を記述する情報のことを指す。このような情報としては、例えば足平が床と接地した状態で、足平の基準となる点に当接する床上の点の位置を示す情報であってもよい。また、足平が床と接地した状態で、足平の基準となる点に当接する床上の点の位置と、足平の基準となる方向(例えば踵から爪先へ向かう方向)に一致する床面内の方向の両者を示す情報であってもよい。
However, there is a case where it is desired to control the foot of the robot leg link to be grounded in a desired arrangement. For example, when a robot walks in a room where obstacles are scattered on the floor, it is desired to control the arrangement of the grounding feet so as not to step on the obstacles. In the case of an entertainment robot that performs, it is desired to control the robot so as to walk along a predetermined walking path.
As used herein, “foot placement” refers to information that describes the area on the floor that abuts the foot when the foot of the leg link contacts the floor. Such information may be information indicating the position of a point on the floor that is in contact with a reference point of the foot in a state where the foot is in contact with the floor, for example. In addition, when the foot is in contact with the floor, the position of the point on the floor that is in contact with the foot reference point and the floor surface that matches the foot reference direction (for example, the direction from the heel to the toe) It may be information indicating both of the directions.

ロボットが接地するときの足平の配置を制御するためには、実際に接地している支持脚の足平の配置を計測して、ロボットの動作に反映することが望ましい。歩容データには本来目標とする足平配置経路が記述されており、実際に接地している支持脚の足平の配置を計測することができれば、歩容データが記述する足平の配置経路からの偏差を計算して、その後の動作へフィードバックし、歩容データが記述する足平の配置経路へ復帰させることができる。
ロボットを歩容データが記述する足平の配置経路へ復帰させるときに、ロボットの動作を急激に変化させると、ぎこちない動作となってしまい、見た目にも不自然な動作となってしまう。エンターテイメントに用いるロボットの場合、ヒトが行う歩行と同じように、滑らかで自然な動作によって歩容データが記述する足平配置経路へ復帰することが望ましい。自然な動作を維持しながらロボットを歩容データが記述する足平配置経路へ復帰させることが可能な技術が待望されている。
In order to control the arrangement of the foot when the robot is in contact with the ground, it is desirable to measure the arrangement of the foot of the supporting leg that is actually in contact with the ground and reflect it in the operation of the robot. The desired foot placement path is described in the gait data, and if the foot placement of the supporting leg that is actually touching the ground can be measured, the foot placement path described by the gait data Can be calculated and fed back to subsequent movements to return to the foot placement path described by the gait data.
When the robot is returned to the foot arrangement path described by the gait data, if the robot operation is suddenly changed, the operation becomes awkward and unnatural to the eye. In the case of a robot used for entertainment, it is desirable to return to the foot placement path described by the gait data by a smooth and natural motion, similar to walking performed by humans. A technique that can return the robot to the foot placement path described by the gait data while maintaining natural motion is awaited.

本発明は上記課題を解決する。本発明は、実際の支持脚の足平配置を計測し、計測された足平配置と歩容データが記述する足平配置経路の偏差に基づいて歩容データを補正しながら歩行する脚式ロボットにおいて、歩容データが記述する足平配置経路に自然な動作で復帰することが可能な技術を提供する。
また本発明の原理は歩行ロボットに限らず、動作計画に基づいて自律的に移動するロボットに応用することもできる。本発明は、ロボットの実際の位置および方向を計測し、計測された位置と方向と動作計画が記述する移動経路の偏差に基づいて動作計画を補正しながら移動するロボットにおいて、動作計画が記述する移動経路に自然な動作で復帰することが可能な技術を提供する。
The present invention solves the above problems. The present invention is a legged robot that measures the actual foot placement of the supporting legs and walks while correcting the gait data based on the deviation of the foot placement route described by the measured foot placement and the gait data. Provides a technique capable of returning to the foot placement route described by the gait data with natural motion.
The principle of the present invention can be applied not only to walking robots but also to robots that move autonomously based on motion plans. The present invention describes an action plan in a robot that measures the actual position and direction of the robot and moves while correcting the action plan based on the deviation of the movement path described by the measured position and direction and the action plan. Provided is a technique capable of returning to a moving path with natural movement.

本発明の方法は、歩容データに基づいて歩行するロボットを制御する方法である。その方法は、「実際の支持脚の足平配置」を計測する工程と、「実際の支持脚の足平配置」に対応する「歩容データが記述する足平配置経路」における「仮想的な支持脚の足平配置」を特定する工程と、「実際の支持脚の足平配置」と「仮想的な支持脚の足平配置」の偏差を計算する工程と、前記偏差に基づいて「実際の支持脚の足平配置」から「歩容データが記述する足平配置経路」へ復帰するまでの歩数を決定する工程と、「「実際の支持脚の足平配置」から歩容データに基づいて歩行するときの足平配置経路」を少なくとも前記歩数まで計算する工程と、「「実際の支持脚の足平配置」から歩容データに基づいて歩行するときの足平配置経路」における「実際の支持脚の足平配置」から前記歩数まで歩行したときの支持脚の足平配置が「歩容データが記述する足平配置経路」における「仮想的な支持脚の足平配置」から前記歩数まで歩行したときの支持脚の足平配置と一致するように「「実際の支持脚の足平配置」から歩容データに基づいて歩行するときの足平配置経路」の一歩毎の補正量を計算する工程と、前記補正量に基づいて歩容データを補正する工程とを備えている。   The method of the present invention is a method for controlling a walking robot based on gait data. The method includes the steps of measuring “the actual foot placement of the supporting legs” and the “virtual placement foot described by the gait data” corresponding to the “actual foot placement of the supporting legs”. A step of identifying the “foot placement of the support legs”, a step of calculating a deviation between the “foot placement of the actual support legs” and the “foot placement of the virtual support legs”, and the “actual The step of determining the number of steps from returning to the “foot placement path described by the gait data” from the “placement of the foot of the supporting leg” and the “gait data from the“ foot placement of the actual support leg ” Step of calculating at least the number of steps described above, and “actual foot placement route when walking based on gait data from“ actual foot placement of supporting legs ”. Foot placement of the support legs when walking from the number of steps to To match the foot placement of the supporting legs when walking from the “virtual supporting leg foot placement” in the foot placement path described by the gait data to the number of steps, the “actual supporting leg foot” A step of calculating a correction amount for each step of “foot placement route when walking based on gait data” from “flat layout”, and a step of correcting gait data based on the correction amount.

上記の制御方法では、ロボットが歩行している間に、接地している支持脚の実際の足平配置を計測する。支持脚が実際に接地している足平配置を計測することができれば、ロボットの実際の歩行経路が、歩容データが記述する目標とする歩行経路からどれだけズレているかを知ることができる。上記の制御方法では、目標とする「歩容データが記述する足平配置経路」において、「実際の支持脚の足平配置」に対応する「仮想的な支持脚の足平配置」を特定し、「実際の支持脚の足平配置」と「仮想的な支持脚の足平配置」の偏差を計算する。計算された偏差に応じて歩容データを補正し、その後の歩行経路を補正する。
上記の制御方法では、計算された偏差に基づいて、「歩容データが記述する足平配置経路」へ復帰するまでの歩数を決定する。計算された偏差が大きい場合、「歩容データが記述する足平配置経路」へ復帰するまでの歩数は大きな値に設定され、計算された偏差が小さい場合、「歩容データが記述する足平配置経路」へ復帰するまでの歩数は小さな値に設定される。
ロボットの一歩ごとの歩幅や旋回角度は、ロボットの脚リンクの可動範囲に応じて上限が定まっている。上記のように、計算された偏差に基づいて「歩容データが記述する足平配置経路」へ復帰するまでの歩数を決定することによって、ロボットに無理な動作をとらせることなく、「歩容データが記述する足平配置経路」へ自然な動作で復帰させることができる。
上記の制御方法では、「歩容データが記述する足平配置経路」へ復帰するまでの歩数が決定されると、その歩数だけ「実際の支持脚の足平配置」から歩容データに基づいて歩行するときの足平配置経路を計算する。そして、「「実際の支持脚の足平配置」から歩容データに基づいて歩行するときの足平配置経路」において、「実際の支持脚の足平配置」から前記歩数まで歩行したときの支持脚の足平配置が、「歩容データが記述する足平配置経路」における「仮想的な支持脚の足平配置」から前記歩数まで歩行したときの支持脚の足平配置と一致するように、「「実際の支持脚の足平配置」から歩容データに基づいて歩行するときの足平配置経路」の一歩毎の補正量を計算する。ここでは、歩数毎に補正量を求める。例えば20cmだけの偏差が存在し、20cmであれば4歩でずれを解消するとする歩数が決定されれば、1歩目で5cm補正し、2歩目で10cm補正し、3歩目で15cm補正し、4歩目で20cm補正することによって、4歩でずれを解消する補正量を計算する。
上記の制御方法では、計算された補正量に基づいて歩容データを補正する。ロボットは補正された歩容データに基づいて歩行する。ロボットは、偏差に基づいて決定された歩数後に、歩容データが記述する足平配置経路へ復帰することができる。
In the above control method, the actual foot placement of the supporting legs that are in contact with the ground is measured while the robot is walking. If it is possible to measure the foot arrangement in which the support legs are actually in contact with the ground, it is possible to know how much the actual walking path of the robot is deviated from the target walking path described by the gait data. In the above control method, in the target “foot placement path described by gait data”, “virtual support leg foot placement” corresponding to “actual support leg foot placement” is specified. , The deviation between “actual foot placement of support legs” and “virtual foot support placement” is calculated. The gait data is corrected according to the calculated deviation, and the subsequent walking route is corrected.
In the above control method, the number of steps until returning to the “foot placement route described by the gait data” is determined based on the calculated deviation. If the calculated deviation is large, the number of steps until returning to the “foot placement route described by the gait data” is set to a large value, and if the calculated deviation is small, the “footprint described by the gait data” is set. The number of steps until returning to the “arrangement route” is set to a small value.
The upper limit of the stride and turning angle of each step of the robot is determined according to the movable range of the leg link of the robot. As described above, by determining the number of steps to return to the “foot placement path described by the gait data” based on the calculated deviation, the robot can perform the “gait without taking excessive action. It is possible to return to the “foot placement path described by the data” with natural operations.
In the above control method, when the number of steps until returning to the “foot placement path described by the gait data” is determined, the number of steps is determined based on the gait data from the “actual foot placement of the supporting legs”. The foot placement route when walking is calculated. Then, in the “foot placement path when walking based on gait data from“ actual support leg foot placement ”, the support when walking from“ actual support leg foot placement ”to the number of steps. The foot placement of the legs matches the foot placement of the supporting legs when walking from the "virtual supporting leg footing arrangement" described in the gait data described in the gait data to the number of steps. , “A foot placement path when walking based on gait data from“ actual foot placement of supporting legs ”is calculated for each step. Here, the correction amount is obtained for each number of steps. For example, if there is a deviation of only 20 cm, and if the number of steps is determined to eliminate the deviation in 4 steps if it is 20 cm, 5 cm is corrected at the first step, 10 cm is corrected at the second step, and 15 cm is corrected at the third step. Then, by correcting 20 cm at the fourth step, a correction amount for eliminating the shift at the fourth step is calculated.
In the above control method, the gait data is corrected based on the calculated correction amount. The robot walks based on the corrected gait data. After the number of steps determined based on the deviation, the robot can return to the foot placement route described by the gait data.

上記の制御方法は、ロボットの歩行速度を計測する工程をさらに備え、前記歩数を決定する工程では、前記偏差と前記歩行速度に基づいて「歩容データが記述する足平配置経路」へ復帰するまでの歩数を決定することが好ましい。   The control method further includes a step of measuring the walking speed of the robot, and the step of determining the number of steps returns to the “foot placement path described by the gait data” based on the deviation and the walking speed. It is preferable to determine the number of steps until.

ロボットが高速で歩行している場合、急激に動作を変更するとバランスを崩しやすいため、動作を大きく変更しないことが好ましい。逆にロボットが低速で歩行している場合、動作を大きく変更してもそれほどバランスを崩すことがないため、大きく動作を変更して歩容データが記述する足平配置経路へ速やかに復帰することが好ましい。
上記した制御方法によれば、ロボットの歩行速度に応じて歩容データが記述する足平配置経路へ復帰するまでの歩数を決定することが可能であり、ロボットの歩行の安定性を確保しながら、より迅速に歩容データが記述する足平配置経路へ復帰させることができる。
When the robot is walking at high speed, it is preferable not to change the operation greatly because the balance is easily lost if the operation is changed rapidly. Conversely, when the robot is walking at low speed, even if the movement is changed greatly, the balance will not be lost so much, so the movement will be changed greatly and return to the foot placement route described by the gait data immediately. Is preferred.
According to the control method described above, it is possible to determine the number of steps to return to the foot placement path described by the gait data according to the walking speed of the robot, while ensuring the stability of the robot's walking. It is possible to return to the foot placement route described by the gait data more quickly.

本発明はロボットとしても具現化される。本発明のロボットは、歩容データに基づいて歩行するロボットである。そのロボットは、「実際の支持脚の足平配置」を計測する手段と、「実際の支持脚の足平配置」に対応する「歩容データが記述する足平配置経路」における「仮想的な支持脚の足平配置」を特定する手段と、「実際の支持脚の足平配置」と「仮想的な支持脚の足平配置」の偏差を計算する手段と、前記偏差に基づいて「実際の支持脚の足平配置」から「歩容データが記述する足平配置経路」へ復帰するまでの歩数を決定する手段と、「「実際の支持脚の足平配置」から歩容データに基づいて歩行するときの足平配置経路」を少なくとも前記歩数まで計算する手段と、「「実際の支持脚の足平配置」から歩容データに基づいて歩行するときの足平配置経路」における「実際の支持脚の足平配置」から前記歩数まで歩行したときの支持脚の足平配置が「歩容データが記述する足平配置経路」における「仮想的な支持脚の足平配置」から前記歩数まで歩行したときの支持脚の足平配置と一致するように「「実際の支持脚の足平配置」から歩容データに基づいて歩行するときの足平配置経路」の一歩毎の補正量を計算する手段と、前記補正量に基づいて歩容データを補正する手段とを備えている。   The present invention is also embodied as a robot. The robot of the present invention is a robot that walks based on gait data. The robot measures “virtual foot placement of support legs” and “virtual foot placement path described by gait data” corresponding to “actual foot placement of support legs”. Means for identifying the “foot placement of the support legs”, means for calculating the deviation between the “foot placement of the actual support legs” and “the foot placement of the virtual support legs”, and “actually based on the deviations” Based on the gait data from the "actual foot placement of the supporting legs" and the means for determining the number of steps from the "foot placement of the supporting legs" to the "foot placement path described by the gait data" ”Foot placement path when walking on foot” and “actual foot placement path when walking based on gait data from“ actual foot placement of supporting legs ”to at least the number of steps” Foot placement of the support legs when walking from the "leg placement of the support legs" to the above steps To match the foot placement of the supporting legs when walking from the “virtual supporting foot foot placement” in the “foot placement path described by the gait data” to the number of steps described above. Means for calculating a correction amount for each step of a foot placement path when walking based on gait data from “foot placement” and means for correcting gait data based on the correction amount. Yes.

本発明の原理は、歩行ロボットに限らず、ロボットの実際の位置および方向を計測し、計測された位置と方向と動作計画が記述する移動経路の偏差に基づいて動作計画を補正しながら移動する自律移動ロボットに応用することもできる。
本発明の他の1つの方法は、動作計画に基づいて移動するロボットを制御する方法である。その方法は、ロボットの「実際の位置と方向」を計測する工程と、「実際の位置と方向」に対応する「動作計画が記述する移動経路」における「仮想的な位置と方向」を特定する工程と、「実際の位置と方向」と「仮想的な位置と方向」の偏差を計算する工程と、前記偏差に基づいて「実際の位置と方向」から「動作計画が記述する移動経路」へ復帰するまでの時間を決定する工程と、「「実際の位置と方向」から動作計画に基づいて移動するときの移動経路」を少なくとも前記時間まで計算する工程と、「「実際の位置と方向」から動作計画に基づいて移動するときの移動経路」における「実際の位置と方向」から前記時間だけ移動したときのロボットの位置と方向が「動作計画が記述する移動経路」における「仮想的な位置と方向」から前記時間だけ移動したときのロボットの位置と方向と一致するように「「実際の位置と方向」から動作計画に基づいて移動するときの移動経路」の補正量を計算する工程と、計算された補正量に基づいて動作計画を補正する工程とを備えている。
The principle of the present invention is not limited to walking robots, but measures the actual position and direction of the robot, and moves while correcting the motion plan based on the measured position and direction and the deviation of the movement path described by the motion plan. It can also be applied to autonomous mobile robots.
Another method of the present invention is a method of controlling a robot that moves based on an action plan. The method measures the “actual position and direction” of the robot, and identifies the “virtual position and direction” in the “movement path described by the motion plan” corresponding to the “actual position and direction”. A process, a process of calculating a deviation between "actual position and direction" and "virtual position and direction", and from "actual position and direction" to "movement path described by the motion plan" based on the deviation A step of determining a time until returning, a step of calculating “a movement path when moving based on an operation plan from“ actual position and direction ”” until at least the time, and “an“ actual position and direction ” The "virtual position" in the "movement path described by the action plan" is the position and direction of the robot when moving from the "actual position and direction" in the "movement path when moving based on the action plan" And directions Calculating a correction amount of “movement path when moving based on the motion plan from“ actual position and direction ”” so as to coincide with the position and direction of the robot when moving only for the above time, and And a step of correcting the operation plan based on the correction amount.

上記の制御方法では、ロボットの「実際の位置と方向」を計測し、「動作計画が記述する移動経路」において「実際の位置と方向」に対応する「仮想的な位置と方向」を特定する。そして、「実際の位置と方向」と「仮想的な位置と方向」の偏差を算出し、両者の偏差に基づいて、「実際の位置と方向」から「動作計画が記述する移動経路」へ復帰するまでの時間を決定し、決定された時間で「実際の位置と方向」から「動作計画が記述する移動経路」まで復帰する移動経路を計算する。この移動経路の計算は、「実際の位置と方向」から動作計画に基づいて移動するときの移動経路を、決定された時間まで計算しておいて、この計算された移動経路が決定された時間において動作計画が記述する移動経路へ復帰するように、最適化問題を解くことによって行われる。上記の制御方法では、計算された補正量に基づいて動作計画が更新され、ロボットは動作計画が記述する移動経路へ復帰することができる。   In the above control method, the “actual position and direction” of the robot is measured, and the “virtual position and direction” corresponding to the “actual position and direction” in the “movement path described by the motion plan” is specified. . Then, the deviation between “actual position and direction” and “virtual position and direction” is calculated, and based on the deviation between the two, “actual position and direction” is returned to “movement path described by the motion plan”. The time required for the movement is determined, and a movement path that returns from the “actual position and direction” to the “movement path described by the motion plan” at the determined time is calculated. This travel route is calculated by calculating the travel route when moving from the “actual position and direction” based on the motion plan until the determined time, and the time when the calculated travel route is determined. This is done by solving the optimization problem so that it returns to the movement path described in the action plan. In the above control method, the motion plan is updated based on the calculated correction amount, and the robot can return to the movement path described by the motion plan.

本発明は動作計画に基づいて自律的に移動するロボットとしても具現化される。本発明の他の1つのロボットは、動作計画に基づいて移動するロボットである。そのロボットは、ロボットの「実際の位置と方向」を計測する手段と、「実際の位置と方向」に対応する「動作計画が記述する移動経路」における「仮想的な位置と方向」を特定する手段と、「実際の位置と方向」と「仮想的な位置と方向」の偏差を計算する手段と、前記偏差に基づいて「実際の位置と方向」から「動作計画が記述する移動経路」へ復帰するまでの時間を決定する手段と、「「実際の位置と方向」から動作計画に基づいて移動するときの移動経路」を少なくとも前記時間まで計算する手段と、「「実際の位置と方向」から動作計画に基づいて移動するときの移動経路」における「実際の位置と方向」から前記時間だけ移動したときのロボットの位置と方向が「動作計画が記述する移動経路」における「仮想的な位置と方向」から前記時間だけ移動したときのロボットの位置と方向と一致するように「「実際の位置と方向」から動作計画に基づいて移動するときの移動経路」の補正量を計算する手段と、計算された補正量に基づいて動作計画を補正する手段とを備えている。   The present invention is also embodied as a robot that moves autonomously based on an operation plan. Another robot of the present invention is a robot that moves based on an operation plan. The robot measures the “actual position and direction” of the robot, and specifies the “virtual position and direction” in the “movement path described by the motion plan” corresponding to the “actual position and direction”. Means, a means for calculating a deviation between "actual position and direction" and "virtual position and direction", and from the "actual position and direction" to the "movement path described by the motion plan" based on the deviation Means for determining the time until return, means for calculating “movement path when moving based on the motion plan from“ actual position and direction ”” up to at least the time, and “actual position and direction” The "virtual position" in the "movement path described by the action plan" is the position and direction of the robot when moving from the "actual position and direction" in the "movement path when moving based on the action plan" And direction " Means for calculating a correction amount of “movement path when moving based on the motion plan from“ actual position and direction ”” so as to coincide with the position and direction of the robot when moving for the above time. Means for correcting the operation plan based on the correction amount.

本発明の制御方法とロボットによれば、支持脚の実際の足平配置を計測し、計測された足平配置と歩容データが記述する足平配置経路の偏差に基づいて歩容データを補正しながら歩行する際に、歩容データが記述する足平配置経路に自然な動作で復帰することができる。
また本発明の他の制御方法とロボットによれば、ロボットの位置および方向を実際に計測し、計測された位置と方向と動作計画が記述する移動経路の偏差に基づいて動作計画を補正しながら移動する際に、動作計画が記述する移動経路に自然な動作で復帰することができる。
According to the control method and the robot of the present invention, the actual foot placement of the support legs is measured, and the gait data is corrected based on the deviation of the foot placement route described by the measured foot placement and the gait data. When walking while walking, it is possible to return to the foot placement path described by the gait data with a natural motion.
According to another control method and robot of the present invention, the position and direction of the robot are actually measured, and the motion plan is corrected based on the measured position and direction and the deviation of the movement path described by the motion plan. When moving, it is possible to return to the movement path described by the action plan with natural movement.

以下、本発明を具現化した実施例について図面を参照して説明する。   Hereinafter, embodiments embodying the present invention will be described with reference to the drawings.

(実施例1)
図1に示すロボット6は、頭部18と、体幹12と、右脚20と、左脚22を備えている。ロボット6は、右脚20が接地している間に左脚22を遊脚として軌道7のように移動させ、左脚22が接地すると今度は右脚20を遊脚として軌道8のように移動させ、以下同様に、左脚22を遊脚として軌道9のように移動させ、次には右脚20を遊脚として軌道10のように移動させて歩行を続ける。
Example 1
The robot 6 shown in FIG. 1 includes a head 18, a trunk 12, a right leg 20, and a left leg 22. The robot 6 moves the left leg 22 as a free leg like the track 7 while the right leg 20 is in contact with the ground, and when the left leg 22 touches, this time moves like the track 8 using the right leg 20 as a free leg. In the same manner, the left leg 22 is moved as a free leg as in the track 9, and then the right leg 20 is moved as a free leg as in the path 10 to continue walking.

ロボット6の歩行を制御するために、ロボット6の体幹12にコントローラ14が搭載されている。コントローラ14は、CPU、ROM、RAM、ハードディスク等を有する。コントローラ14のハードウェア構成は汎用のコンピュータと同じであり、説明は省略する。コントローラ14は歩容データを記憶しており、それに基づいてロボット6の関節群を制御する。   In order to control walking of the robot 6, a controller 14 is mounted on the trunk 12 of the robot 6. The controller 14 has a CPU, ROM, RAM, hard disk, and the like. The hardware configuration of the controller 14 is the same as that of a general-purpose computer, and a description thereof will be omitted. The controller 14 stores gait data, and controls the joint group of the robot 6 based on the gait data.

ロボット6が歩行を続けるためには、足先の運動を記述する足先歩容データと、体幹12の運動を記述する体幹歩容データを備える歩容データが必要とされる。
足先歩容データは予めオペレータによって指定される。体幹歩容データはロボットの力学モデルを用いて計算されるZMP軌道が目標ZMP軌道に一致する関係に設定される。
In order for the robot 6 to continue walking, gait data including foot gait data describing the motion of the toes and trunk gait data describing the motion of the trunk 12 is required.
The toe gait data is designated in advance by the operator. The trunk gait data is set so that the ZMP trajectory calculated using the dynamic model of the robot matches the target ZMP trajectory.

本実施例では、図1に示すように、ロボット6の外部の床に固定された座標系を(x, y, z)とし、ロボット6の支持脚の基準点に固定された座標系を(x', y', z')とする。座標系(x', y', z')は、ロボット6が右脚20を支持脚としているときは基準点 R に固定されており、ロボット6が左脚22を支持脚としているときは、基準点 L に固定されている。座標系(x', y', z')では、足平に沿って踵から爪先へ伸びる方向をx' 軸とし、足平に沿って x' 軸と直交する方向を y' 軸とし、足平に垂直な方向を z' 軸とする。通常は、x' 軸はロボットが歩行する方向に相当し、y' 軸はロボットの体側方向に相当し、z' 軸はロボットの高さ方向に相当する。   In this embodiment, as shown in FIG. 1, the coordinate system fixed to the floor outside the robot 6 is (x, y, z), and the coordinate system fixed to the reference point of the support leg of the robot 6 is ( x ', y', z '). The coordinate system (x ′, y ′, z ′) is fixed to the reference point R when the robot 6 uses the right leg 20 as a supporting leg, and when the robot 6 uses the left leg 22 as a supporting leg, Fixed at reference point L. In the coordinate system (x ', y', z '), the direction extending from the heel to the toe along the foot is the x' axis, the direction perpendicular to the x 'axis is the y' axis, The direction perpendicular to the plane is the z 'axis. Usually, the x ′ axis corresponds to the direction in which the robot walks, the y ′ axis corresponds to the body side direction of the robot, and the z ′ axis corresponds to the height direction of the robot.

足先歩容データは、ロボット6の足先の位置と姿勢の経時的変化を表す。例えば右脚20に関して、足先歩容データは、足先基準点 R の位置 xR, yR, zR の経時的変化と、基準点 R から足平の法線方向に伸びるベクトル Rr のオイラー角 αR, βR, γR の経時的変化を備えている。左脚22に関しても同様に、足先歩容データは、足先基準点 L の位置 xL, yL, zL の経時的変化と、基準点 L から足平の法線方向に伸びるベクトル Lr のオイラー角 αL, βL, γL の経時的変化を備えている。
体幹歩容データは、体幹の位置と姿勢の経時的変化を表す。体幹歩容データは、体幹基準点 W の位置 xW, yW, zW の経時的変化と、基準点 W から体幹に沿って頭部に向けて伸びるベクトル Wr のオイラー角 αW, βW, γW の経時的変化を備えている。
The toe gait data represents changes in the position and posture of the toes of the robot 6 over time. For example, with respect to the right leg 20, the foot gait data includes the temporal change in the position x R , y R , z R of the foot reference point R and the vector R r extending from the reference point R in the normal direction of the foot. Eulerian angles α R , β R , γ R are provided over time. Similarly for the left leg 22, the toe gait data includes a temporal change in the position x L , y L , z L of the foot reference point L and a vector L extending from the reference point L in the normal direction of the foot. The Euler angles α L , β L , and γ L of r are provided over time.
The trunk gait data represents changes in the position and posture of the trunk over time. The trunk gait data consists of changes in the position x W , y W , z W of the trunk reference point W over time, and the Euler angle α of the vector W r extending from the reference point W along the trunk toward the head W , β W , and γ W have changes over time.

ロボット6の頭部18には、頭部位置検出装置220と、頭部方向検出装置222が搭載されている。頭部位置検出装置220は、ロボット6の外部に固定された座標系から見た頭部18の基準点 H の位置 xh, yh, zh を検出して、コントローラ14に送信する。頭部方向検出装置222は、ロボット6の外部に固定された座標系から見た頭部18の方向を検出して、コントローラ14に送信する。頭部18の方向は、基準点 H から頭部18の前方に向けて伸びるベクトル Hr のオイラー角 αh, βh, γh で表現される。 A head position detection device 220 and a head direction detection device 222 are mounted on the head 18 of the robot 6. The head position detection device 220 detects the positions x h , y h , and z h of the reference point H of the head 18 viewed from the coordinate system fixed outside the robot 6, and transmits the detected positions to the controller 14. The head direction detection device 222 detects the direction of the head 18 viewed from the coordinate system fixed outside the robot 6 and transmits the detected direction to the controller 14. The direction of the head 18 is expressed by Euler angles α h , β h , γ h of a vector H r extending from the reference point H toward the front of the head 18.

図2は、コントローラ14の機能をブロック化して示す図である。図2に示す要素のうち、ロボットの機械系216、エンコーダ218、頭部位置検出装置220、頭部方向検出装置222を除いた部分がコントローラ14の構成要素である。コントローラ14は、全体が物理的に1つの装置に含まれていてもよいし、物理的に分離された装置ごとに分けて収容されていてもよい。   FIG. 2 is a block diagram showing the functions of the controller 14. Of the elements shown in FIG. 2, parts excluding the robot mechanical system 216, the encoder 218, the head position detection device 220, and the head direction detection device 222 are components of the controller 14. The controller 14 may be physically included in one device as a whole, or may be accommodated separately for each physically separated device.

歩容データ記憶部210には、オペレータによって指定された足先歩容データが記憶されている。
足先歩容データは、加算器230によって補正され、関節角群計算部212へ入力される。補正された足先歩容データは、体幹歩容計算部232において、体幹歩容データの計算にも用いられる。
また歩容データ記憶部210には、歩容データが記述する足平配置経路として、支持脚の足平の接地位置 X'k, Y'k(k = 1, 2,・・・)と接地方向Γ'k(k = 1, 2,・・・)が、一歩ごとに記憶されている。支持脚の足平の接地位置 X'k, Y'k(k = 1, 2,・・・)は、足先歩容データに従って関節群を駆動したときの一歩ごとの支持脚の足平の接地位置を示しており、支持脚が接地した状態における足先の基準点の位置をロボット6の外部に固定された座標系で表現したものである。また支持脚の足平の接地方向Γ'k(k = 1, 2,・・・)は、足先歩容データに従って関節群を駆動したときの支持脚の足平の接地方向を示しており、支持脚が接地した状態において足先の基準点に固定された座標系(x', y', z')の x' 軸が、外部に固定された座標系(x, y, z)の x 軸と成す角度を表現したものである。支持脚の足平の接地位置 X'k, Y'k(k = 1, 2,・・・)および接地方向Γ'k(k = 1, 2,・・・)は、着地配置修正部234や足平配置比較部238へ入力される。
さらに歩容データ記憶部210には、支持脚の一歩ごとの相対的な接地位置 ΔX'k, ΔY'k(k = 1, 2,・・・)と相対的な接地方向ΔΓ'k(k = 1, 2,・・・)が、一歩ごとに記憶されている。支持脚の相対的な接地位置ΔX'k, ΔY'k(k = 1, 2,・・・)は、支持脚の接地位置を一歩前の支持脚の接地位置から見た相対的な位置を示している。支持脚の相対的な接地方向ΔΓ'k(k = 1, 2,・・・)は、支持脚の接地方向を一歩前の支持脚の接地方向から見た相対的な方向である。支持脚の相対的な接地位置ΔX'k, ΔY'k(k = 1, 2,・・・)および相対的な接地方向ΔΓ'k(k = 1, 2,・・・)は、着地配置計算部226へ入力される。
The gait data storage unit 210 stores foot gait data designated by the operator.
The toe gait data is corrected by the adder 230 and input to the joint angle group calculation unit 212. The corrected toe gait data is also used by the trunk gait calculator 232 to calculate trunk gait data.
In addition, the gait data storage unit 210 includes a foot contact position X ′ k , Y ′ k (k = 1, 2,...) And a ground contact as a foot placement path described by the gait data. The direction Γ ′ k (k = 1, 2,...) Is stored for each step. The contact position X ′ k , Y ′ k (k = 1, 2,...) Of the foot of the support leg is determined by the foot of the support leg for each step when the joint group is driven according to the foot gait data. The ground contact position is shown, and the position of the reference point of the foot tip in a state where the support leg is grounded is expressed by a coordinate system fixed outside the robot 6. Also, the ground contact direction Γ ' k (k = 1, 2, ...) of the foot of the support leg indicates the ground contact direction of the foot of the support leg when the joint group is driven according to the foot gait data. The x 'axis of the coordinate system (x', y ', z') fixed to the reference point of the toe in the state where the support leg is in contact with the coordinate system (x, y, z) fixed outside It represents the angle formed with the x axis. The ground contact position X ′ k , Y ′ k (k = 1, 2,...) And the ground contact direction Γ ′ k (k = 1, 2,. And the foot placement comparison unit 238.
Further, the gait data storage unit 210 stores the relative contact position ΔX ′ k , ΔY ′ k (k = 1, 2,...) And the relative contact direction ΔΓ ′ k (k = 1, 2, ...) is memorized for each step. The relative contact position ΔX ' k , ΔY' k (k = 1, 2, ...) of the support leg is the relative position of the support leg as viewed from the contact position of the support leg one step before. Show. The relative grounding direction ΔΓ ′ k (k = 1, 2,...) Of the support leg is a relative direction when the grounding direction of the support leg is viewed from the grounding direction of the support leg one step before. The relative contact position ΔX ′ k , ΔY ′ k (k = 1, 2,...) And the relative contact direction ΔΓ ′ k (k = 1, 2,. Input to the calculation unit 226.

体幹歩容生成部232は、加算器230から入力される補正された足先歩容データに基づいて、体幹歩容データを生成する。体幹歩容生成部232は、入力される足先歩容データに基づいて、支持脚の足平内に維持される目標ZMPを特定し、実現されるZMPが目標ZMPと一致するような体幹の位置と姿勢の経時的変化を特定する。
生成された体幹歩容データは、加算器230で補正された足先歩容データとともに、関節角群計算部212へ入力される。
The trunk gait generator 232 generates trunk gait data based on the corrected toe gait data input from the adder 230. The trunk gait generator 232 identifies the target ZMP to be maintained in the foot of the supporting leg based on the input foot gait data, and the trunk such that the realized ZMP matches the target ZMP. Identify changes in position and posture over time.
The generated trunk gait data is input to the joint angle group calculation unit 212 together with the toe gait data corrected by the adder 230.

関節角群計算部212は、入力された足先歩容データと体幹歩容データに基づいて、いわゆる逆キネマティクスを解くことでロボット6の各関節角θ'i(t)(i = 1, 2,・・・, n)を計算する。計算された関節角群データは、アクチュエータ制御部214に入力される。 The joint angle group calculation unit 212 solves so-called inverse kinematics based on the input toe gait data and trunk gait data, so that each joint angle θ ′ i (t) (i = 1) , 2, ..., n). The calculated joint angle group data is input to the actuator control unit 214.

アクチュエータ制御部214は、ロボット6の関節群を回転させるアクチュエータ群を制御する。アクチュエータ群はロボットの機械系216に存在している。アクチュエータ群を制御すると、ロボット6の関節群を計算された関節角に調整できる。アクチュエータ制御部214がアクチュエータ群を駆動すると、ロボット6は歩容データに従って歩行する。   The actuator control unit 214 controls the actuator group that rotates the joint group of the robot 6. The actuator group exists in the mechanical system 216 of the robot. By controlling the actuator group, the joint group of the robot 6 can be adjusted to the calculated joint angle. When the actuator control unit 214 drives the actuator group, the robot 6 walks according to the gait data.

ロボット6の各関節には、エンコーダ218が設けられている。エンコーダ218は、ロボット6の各関節角θi(t)(i = 1, 2,・・・, n)を計測し、計測された関節角を支持脚足平配置計算部224と、重心速度計算部236へ出力する。 An encoder 218 is provided at each joint of the robot 6. The encoder 218 measures each joint angle θ i (t) (i = 1, 2,..., N) of the robot 6, and uses the measured joint angle to calculate the support leg foot placement calculation unit 224 and the center of gravity speed. The data is output to the calculation unit 236.

頭部位置検出部220は、ロボット6の外部に固定された座標系における頭部18の位置 xh(t), yh(t), zh(t) を計測し、計測された頭部18の位置を支持脚足平配置計算部224と、重心速度計算部236へ出力する。このような位置計測装置としては、例えばGPS受信機を用いることができる。また超音波を用いて距離を計測する装置であってもよいし、レーザー光を用いて距離を計測する装置であってもよいし、電磁波を用いて距離を計測する装置であってもよい。あるいはカメラ等を用いて外部の状況を撮影して、撮影されたデータに基づいて頭部の位置を特定してもよい。
頭部位置検出装置220は、頭部18の頭頂部に搭載されている。これによって、ロボット6の機体によって位置計測に使用する信号が遮蔽されることを防止することができる。ロボット6がどのような姿勢をとっても、安定して精度よく頭部18の位置を計測することができる。
上記のほかにも、頭部位置検出装置220は加速度センサと積分器の組合せであってもよい。この場合、頭部位置検出装置220は加速度センサで加速度を計測し、計測された加速度を積分して速度を計測し、計測された速度を積分して位置を計測する。
上記のほかにも、頭部位置検出装置220は、従来から知られている種々の位置計測技術によって、その位置を計測することができる。
The head position detection unit 220 measures the positions x h (t), y h (t), and z h (t) of the head 18 in a coordinate system fixed outside the robot 6, and the measured head The position 18 is output to the support leg foot position calculation unit 224 and the center-of-gravity velocity calculation unit 236. As such a position measuring device, for example, a GPS receiver can be used. Moreover, the apparatus which measures distance using an ultrasonic wave may be sufficient, the apparatus which measures distance using a laser beam may be sufficient, and the apparatus which measures distance using electromagnetic waves may be sufficient. Alternatively, an external situation may be photographed using a camera or the like, and the position of the head may be specified based on the photographed data.
The head position detection device 220 is mounted on the top of the head 18. Thereby, it is possible to prevent the signal used for position measurement from being shielded by the body of the robot 6. Whatever posture the robot 6 takes, the position of the head 18 can be measured stably and accurately.
In addition to the above, the head position detection device 220 may be a combination of an acceleration sensor and an integrator. In this case, the head position detection device 220 measures acceleration with an acceleration sensor, measures the speed by integrating the measured acceleration, and measures the position by integrating the measured speed.
In addition to the above, the head position detection device 220 can measure the position by various position measurement techniques that are conventionally known.

頭部方向検出装置222は、ロボット6の外部に固定された座標系における、頭部18の方向αh(t), βh(t), γh(t) を計測し、計測された頭部18の方向 αh(t), βh(t), γh(t) を支持脚足平配置計算部224と、重心速度計測部236へ出力する。
上記した頭部方向検出装置222は、2つの位置検出装置の組み合わせであってもよい。この場合、頭部方向検出装置222は、一方の位置検出装置で計測される位置から、他方の位置検出装置で計測される位置までの位置偏差ベクトルを計算し、計算された位置偏差ベクトルと、各位置検出装置の頭部18における取り付け位置から、頭部18の方向を計算することができる。
上記のほかにも、頭部方向検出装置222は、ジャイロセンサと積分器の組合せであってもよい。この場合、頭部方向検出装置222は、ジャイロセンサで角速度を計測し、計測された角速度を積分して方向角を計測する。また上記した頭部方向検出装置222としては、例えば地磁気センサを用いることもできる。
上記のほかにも、頭部方向検出装置222は、従来から知られている種々の方向計測技術によって、その方向を計測することができる。
The head direction detection device 222 measures the directions α h (t), β h (t), and γ h (t) of the head 18 in a coordinate system fixed outside the robot 6, and the measured head The directions α h (t), β h (t), and γ h (t) of the unit 18 are output to the supporting leg foot position calculating unit 224 and the center-of-gravity velocity measuring unit 236.
The head direction detection device 222 described above may be a combination of two position detection devices. In this case, the head direction detection device 222 calculates a position deviation vector from a position measured by one position detection device to a position measured by the other position detection device, and the calculated position deviation vector, The direction of the head 18 can be calculated from the mounting position of each position detection device on the head 18.
In addition to the above, the head direction detection device 222 may be a combination of a gyro sensor and an integrator. In this case, the head direction detection device 222 measures the angular velocity with the gyro sensor, and integrates the measured angular velocity to measure the direction angle. Further, as the head direction detecting device 222 described above, for example, a geomagnetic sensor can be used.
In addition to the above, the head direction detecting device 222 can measure the direction by various known direction measuring techniques.

支持脚足平配置計算部224は、エンコーダ218、頭部位置検出装置220、頭部方向検出装置222からの入力に基づいて、支持脚の足平が接地している位置 Xk(t), Yk(t) と、接地している方向Γk(t) を算出する。
支持脚足平配置計算部224は、エンコーダ218から入力される各関節の関節角θi(t)(i = 1, 2,・・・,n)に基づいて、頭部18の基準点 H から見た、支持脚の基準点 L または R の相対的な位置と、頭部18のベクトル Hr に対する、支持脚の足平の相対的な方向を算出する。そして、算出された相対的な位置および方向と、頭部位置検出装置220から入力される位置 xh(t), yh(t), zh(t) と、頭部方向検出装置222から入力される方向 αh(t), βh(t), γh(t) から、支持脚の足平の接地位置 Xk(t), Yk(t) および接地方向Γk(t) を計算する。
Based on the inputs from the encoder 218, the head position detection device 220, and the head direction detection device 222, the support leg foot placement calculation unit 224 calculates the position X k (t), Y k (t) and the grounding direction Γ k (t) are calculated.
Based on the joint angles θ i (t) (i = 1, 2,..., N) of the respective joints input from the encoder 218, the support leg foot placement calculation unit 224 calculates the reference point H of the head 18. From the above, the relative position of the reference point L or R of the support leg and the relative direction of the foot of the support leg with respect to the vector Hr of the head 18 are calculated. Then, the calculated relative position and direction, the position x h (t), y h (t), z h (t) input from the head position detection device 220, and the head direction detection device 222 From the input directions α h (t), β h (t), γ h (t), the ground contact position X k (t), Y k (t) and the ground contact direction Γ k (t) Calculate

エンコーダ218、頭部位置検出装置220、頭部方向検出装置222による計測が理想的に行われていれば、支持脚が切替わるまでの間、支持脚の足平の接地位置 Xk(t), Yk(t) や接地方向Γk(t) は変化しないはずである。しかしながら、計測誤差に起因して、上記で計算される支持脚の足平の接地位置 Xk(t), Yk(t) や接地方向Γk(t) が時間とともに変動することがある。本実施例のロボット6では、支持脚が切り替わらない期間において、上記で計算される支持脚の足平の接地位置 Xk(t), Yk(t) および接地方向Γk(t) のそれぞれの時間平均を算出し、支持脚の足平の接地位置 Xk, Ykおよび接地方向 Γk を特定する。
支持脚足平配置計算部224は、逐次支持脚の足平の接地位置 Xk(t), Yk(t) および接地方向Γk(t) を計算しながら、支持脚の切替わりを監視している。支持脚足平配置計算部224は、支持脚が切替わった時点で、それまでに計算されている足平の接地位置 Xk(t), Yk(t) および接地方向Γk(t) をそれぞれ時間に関して積分して平均値を算出し、算出された平均値を特定された支持脚の足平の接地位置 Xk, Yk および接地方向 Γk として、足平配置比較部238および着地配置計算部226へ出力する。
If the measurement by the encoder 218, the head position detection device 220, and the head direction detection device 222 is ideally performed, the ground contact position X k (t) of the foot of the support leg until the support leg is switched. , Y k (t) and grounding direction Γ k (t) should not change. However, due to measurement errors, the ground contact positions X k (t), Y k (t) and the ground contact direction Γ k (t) calculated above may vary with time. In the robot 6 of the present embodiment, each of the ground contact positions X k (t), Y k (t) and the ground direction Γ k (t) calculated as described above in the period in which the support legs are not switched. Is calculated, and the contact positions X k and Y k of the foot of the support leg and the contact direction Γ k are specified.
The support leg foot position calculation unit 224 calculates the contact position X k (t), Y k (t) and the contact direction Γ k (t) of the foot of the support leg, and monitors the switching of the support legs. is doing. The support leg foot placement calculation unit 224, when the support leg is switched, the foot contact position X k (t), Y k (t) and the contact direction Γ k (t) calculated so far. Are integrated with respect to time to calculate an average value, and the calculated average value is set as the ground contact position X k , Y k and the ground contact direction Γ k of the foot of the specified support leg, and the foot placement comparison unit 238 and the landing The data is output to the arrangement calculation unit 226.

足平配置比較部238は、支持脚足平配置計算部224から入力される k 歩目の支持脚の足平の接地位置 Xk, Yk および接地方向 Γk と、歩容データ記憶部210から入力される k 歩目の支持脚の足平の目標接地位置X'k, Y'k および目標接地方向Γ'k とを比較し、歩容データの補正が必要か否かを判断する。歩容データ記憶部210から入力される k 歩目の支持脚の足平の目標接地位置X'k, Y'k および目標接地方向Γ'k は、ロボット6が k 歩目で目標とする足平配置であって、歩容データが記述する足平配置経路中の支持脚の足平配置を計測した時の支持脚の足平配置に相当する。歩容データの補正が必要と判断されると、着地配置計算部226、着地配置修正部234、補正量計算部228、加算器230によって足先歩容データの補正がなされる。また足平配置比較部238は、k 歩目の支持脚の足平の接地位置 Xk, Yk および接地方向 Γk と、k 歩目の支持脚の足平の目標接地位置X'k, Y'k および目標接地方向Γ'k との偏差を計算し、着地配置計算部226へ出力する。 The foot placement comparison unit 238 receives the foot contact positions X k and Y k and the contact direction Γ k of the foot of the support leg in the kth step input from the support leg foot placement calculation unit 224, and the gait data storage unit 210. Are compared with the target ground contact position X ′ k , Y ′ k of the foot of the supporting leg in the kth step input from the target ground direction Γ ′ k, and it is determined whether correction of gait data is necessary. The target ground contact position X ′ k , Y ′ k and the target ground contact direction Γ ′ k of the foot of the support leg at the kth step input from the gait data storage unit 210 are the feet that the robot 6 targets at the kth step. This corresponds to the foot placement of the support legs when the foot placement of the support legs in the foot placement path described by the gait data is measured. If it is determined that the gait data needs to be corrected, the footing gait data is corrected by the landing arrangement calculation unit 226, the landing arrangement correction unit 234, the correction amount calculation unit 228, and the adder 230. The foot placement comparison unit 238 also includes the foot contact position X k , Y k and the contact direction Γ k of the foot of the k-th support leg, and the target contact position X ′ k , The deviation between Y ′ k and the target grounding direction Γ ′ k is calculated and output to the landing arrangement calculation unit 226.

重心速度計算部236は、エンコーダ218、頭部位置検出装置220、頭部方向検出装置222からの出力に基づいて、ロボット6の重心速度 V(t) を計算する。重心速度の計算は、例えばエンコーダ218から入力される各関節の関節角θi(t)(i = 1, 2,・・・,n)に基づいて、重心から見た頭部18の基準点 H の相対的な位置と、重心から見た頭部18のベクトル Hr の相対的な方向を算出する。そして、算出された相対的な位置および方向と、頭部位置検出装置220から入力される頭部18の基準点 H の位置 xh(t), yh(t), zh(t) と、頭部方向検出装置222から入力される頭部18のベクトル Hr の方向 αh(t), βh(t), γh(t) から、重心の位置を算出し、その時間変化から重心速度 V(t) を計算する。計算された重心速度V(t) は、着地配置計算部226へ出力される。 The center-of-gravity speed calculation unit 236 calculates the center-of-gravity speed V (t) of the robot 6 based on outputs from the encoder 218, the head position detection device 220, and the head direction detection device 222. The calculation of the center-of-gravity velocity is based on the joint angle θ i (t) (i = 1, 2,..., N) of each joint input from the encoder 218, for example, and the reference point of the head 18 viewed from the center of gravity. The relative position of H and the relative direction of the vector Hr of the head 18 viewed from the center of gravity are calculated. Then, the calculated relative position and direction and the position x h (t), y h (t), z h (t) of the reference point H of the head 18 input from the head position detection device 220 Then, the position of the center of gravity is calculated from the directions α h (t), β h (t), and γ h (t) of the vector Hr of the head 18 inputted from the head direction detecting device 222, and the center of gravity is calculated from the change over time. Calculate the velocity V (t). The calculated center-of-gravity velocity V (t) is output to the landing arrangement calculation unit 226.

着地配置計算部226は、歩容データが記述する足平配置経路へ復帰するまでの歩数 m を設定する。また着地配置計算部226は、計測された支持脚の足平配置 Xk, Yk, Γk と、k+1 歩目以降に予定されている相対的な足平配置経路ΔXk+1, ΔYk+1, ΔΓk+1, ΔXk+2, ΔYk+2, ΔΓk+2,・・・に基づいて、k+1 歩目から k+m 歩目までの予定されている足平配置経路 X* k+1, Y* k+1, Γ* k+1, ・・・・, X* k+m, Y* k+m, Γ* k+m を計算する。k+1 歩目から k+m 歩目までの予定されている足平配置経路 X* k+1, Y* k+1, Γ* k+1, ・・・・, X* k+m, Y* k+m, Γ* k+m は、計測された足平配置から歩容データに基づいて歩行するときの決定された歩数までの足平配置経路に相当する。計算された予定足平配置X* k+1, Y* k+1, Γ* k+1, ・・・・, X* k+m, Y* k+m, Γ* k+m は、着地配置修正部234へ出力される。
上記した歩容データが記述する足平配置経路へ復帰するまでの歩数は、重心速度計算部236から入力されるロボット6の重心の速度 V(t) と、足平配置比較部238から入力される偏差に応じて設定される。
The landing placement calculation unit 226 sets the number of steps m until returning to the foot placement route described by the gait data. The landing placement calculation unit 226 also calculates the measured foot placement X k , Y k , Γ k of the supporting leg and the relative foot placement path ΔX k + 1 , scheduled after the k + 1 step. Based on ΔY k + 1 , ΔΓ k + 1 , ΔX k + 2 , ΔY k + 2 , ΔΓ k + 2 , ..., planned feet from k + 1 to k + m steps Flat arrangement paths X * k + 1 , Y * k + 1 , Γ * k + 1 ,..., X * k + m , Y * k + m , Γ * k + m are calculated. Scheduled foot placement path from step k + 1 to step k + m X * k + 1 , Y * k + 1 , Γ * k + 1 , ..., X * k + m , Y * k + m and Γ * k + m correspond to the foot placement route from the measured foot placement to the determined number of steps when walking based on the gait data. The calculated planned foot placement X * k + 1 , Y * k + 1 , Γ * k + 1 , ..., X * k + m , Y * k + m , Γ * k + m is the landing The data is output to the arrangement correction unit 234.
The number of steps taken to return to the foot placement path described by the gait data described above is input from the center of gravity speed V (t) of the robot 6 input from the center of gravity speed calculation unit 236 and the foot placement comparison unit 238. It is set according to the deviation.

着地配置修正部234は、着地配置計算部226から入力される k+1 歩目以降に脚リンクが接地する予定の足平配置 X* k+1, Y* k+1, Γ* k+1, ・・・, X* k+m, Y* k+m, Γ* k+m と、歩容データ記憶部210から入力される k+1 歩目以降の目標足平配置 X'k+1, Y'k+1, Γ'k+1, ・・・, X'k+m, Y'k+m, Γ'k+mに基づいて、足平配置経路の補正量ΔX+ k+2, ΔY+ k+2, ΔΓ+ k+2, ・・・, ΔX+ k+m, ΔY+ k+m, ΔΓ+ k+m を計算する。k 歩目の支持脚の足平配置を特定した時点で、支持脚は k+1 歩目に切替わっているため、k+1 歩目の足平配置については補正がされないことに注意されたい。足平配置経路の補正量ΔX+ k+2, ΔY+ k+2, ΔΓ+ k+2, ・・・, ΔX+ k+m, ΔY+ k+m, ΔΓ+ k+m は、決定された歩数において計算された足平配置経路が歩容データが記述する足平配置経路へ復帰する補正量に相当する。 The landing arrangement correcting unit 234 inputs the foot arrangements X * k + 1 , Y * k + 1 , Γ * k + 1 that the leg link is expected to contact after the (k + 1) th step inputted from the landing arrangement calculating unit 226. ,..., X * k + m , Y * k + m , Γ * k + m, and the desired foot arrangement X ′ k + 1 after the (k + 1) th step inputted from the gait data storage unit 210 , Y 'k + 1, Γ ' k + 1, ···, X 'k + m, Y' k + m, on the basis of the Γ 'k + m, the correction amount ΔX of the foot placement path + k + 2 , ΔY + k + 2 , ΔΓ + k + 2 ,..., ΔX + k + m , ΔY + k + m , ΔΓ + k + m . Note that the foot placement of the k + 1 step is not corrected because the foot is switched to the k + 1 step when the foot placement of the kth support leg is specified. . Correction amount ΔX + k + 2 , ΔY + k + 2 , ΔΓ + k + 2 , ..., ΔX + k + m , ΔY + k + m , ΔΓ + k + m for foot placement path is determined The foot placement route calculated for the number of steps corresponds to the correction amount for returning to the foot placement route described by the gait data.

以下では着地配置修正部234による足平配置経路の補正量ΔX+ k+2, ΔY+ k+2, ΔΓ+ k+2, ・・・の算出について説明する。着地配置修正部234は、評価関数 J を用いて、最適な足平配置経路を実現するための足平配置の補正量を計算する。
ここで用いる評価関数 J は、以下で与えられる。
Hereinafter, calculation of the foot placement route correction amounts ΔX + k + 2 , ΔY + k + 2 , ΔΓ + k + 2 ,... By the landing placement correcting unit 234 will be described. The landing arrangement correcting unit 234 uses the evaluation function J to calculate a correction amount of the foot arrangement for realizing the optimum foot arrangement path.
The evaluation function J used here is given below.

Figure 2007007803
Figure 2007007803

ここで、JΓ, JX, JY は評価関数であり、w1, w2, w3は、各評価関数に重み付けをする重み関数である。
JΓ は歩容データが記述する足平の接地方向と実現される足平の接地方向の偏差に関する評価関数である。JΓ は次式で規定され、JΓ を最小とすることは足平の接地方向の偏差の時間変化率の積算値を最小とすることを意味する。
Here, J Γ , J X , and J Y are evaluation functions, and w 1 , w 2 , and w 3 are weight functions that weight each evaluation function.
J Γ is an evaluation function related to the deviation between the foot contact direction described by the gait data and the foot contact direction realized. The J gamma is defined by the following equation, to minimize J gamma means that to minimize the accumulated value of the time rate of change of the ground direction of the deviation of the foot.

Figure 2007007803
Figure 2007007803

JX, JYはそれぞれ、歩容データが記述する足平の接地位置と実現される足平の接地位置の X 方向および Y 方向の偏差に関する評価関数である。JX, JY は次式で規定され、JX, JY を最小とすることは足平の接地位置の X 方向および Y 方向の偏差の二乗の積算値を最小とすることを意味する。 J X and J Y are evaluation functions related to deviations in the X direction and Y direction between the foot contact position described by the gait data and the foot contact position realized. J X and J Y are defined by the following equations, and minimizing J X and J Y means minimizing the integrated value of the square of the deviation of the foot contact position in the X and Y directions.

Figure 2007007803
Figure 2007007803

重み関数 w1, w2, w3 の値は、上記した接地方向の偏差についての条件や、接地位置の偏差についての条件について、互いの優先順位を規定するものであり、予め任意に与えておくことができる。w1, w2, w3 は、いずれか1を所定値として、他を0としてもよい。 The values of the weight functions w 1 , w 2 , and w 3 define the priorities of the above-described conditions for the deviation in the ground contact direction and the conditions for the deviation in the ground contact position. I can leave. For w 1 , w 2 , and w 3 , any one may be a predetermined value and the others may be zero.

着地配置修正部234は、以下に述べる制約条件を満足しながら上記した評価関数 J を最小とする足平配置経路を計算する。
本実施例のロボット6の一歩ごとの足平配置は、一歩前の足平配置に基づいて特定される範囲内で足平の位置と方向を設定しなければならない。上記した範囲は、脚リンクを振り出す際の関節の可動範囲や、脚リンク同士の干渉を考慮に入れて規定されている。
また k+1 歩目の足平配置については補正量が0であり、歩容データが記述する足平配置経路へ復帰するまでの歩数として設定された k+m 歩目での足平配置は目標足平配置と一致しなければならない。
上記した制約条件のもとで評価関数 J を最小化する歩行経路の設定は、従来から知られている種々の最適化手法を用いて行うことができる。本明細書では詳細についての説明を省略する。
なお、上記では評価関数 J を最小とする足平配置経路を設定する例を説明したが、評価関数を用いる代わりに、例えば足平の接地方向の偏差の上限値を予め設定しておき、足平の接地方向の偏差が常に上限値を越えないように足平配置経路を計算してもよい。
The landing arrangement correcting unit 234 calculates a foot arrangement path that minimizes the evaluation function J described above while satisfying the following constraint conditions.
In the foot placement for each step of the robot 6 of this embodiment, the foot position and direction must be set within a range specified based on the foot placement one step before. The above range is defined in consideration of the movable range of the joint when swinging out the leg link and the interference between the leg links.
In addition, the correction amount is 0 for the foot placement at the k + 1 step, and the foot placement at the k + m step set as the number of steps until returning to the foot placement route described by the gait data is Must match the target foot placement.
The setting of the walking path that minimizes the evaluation function J under the above-described constraints can be performed using various optimization methods known in the art. In the present specification, detailed description is omitted.
In the above description, an example in which the foot placement path that minimizes the evaluation function J is set has been described. Instead of using the evaluation function, for example, an upper limit value of the deviation in the ground contact direction of the foot is set in advance. The foot placement path may be calculated so that the deviation in the flat contact direction does not always exceed the upper limit value.

補正量計算部228は、歩容データ記憶部210から加算器230へ出力される足先歩容データ xk+2(t), yk+2(t), zk+2(t), αk+2(t), βk+2(t), γk+2(t) に対応する補正量 Δxk+2(t), Δyk+2(t), Δzk+2(t), Δαk+2(t), Δβk+2(t), Δγk+2(t) を計算する。補正量計算部228は、着地配置修正部234から入力される足平配置の補正量ΔX+ k+2, ΔY+ k+2, ΔΓ+ k+2,・・・に応じた足先歩容データの補正量Δxk+2(t), Δyk+2(t), Δzk+2(t), Δαk+2(t), Δβk+2(t), Δγk+2(t),・・・を計算する。足先歩容データの補正量Δxk+2(t), Δyk+2(t), Δzk+2(t), Δαk+2(t), Δβk+2(t), Δγk+2(t),・・・は、遊脚の足先の位置・姿勢を記述する足先歩容データに対する補正量であり、一歩ごとに遊脚となる脚リンクの足先の位置と姿勢を、経時的に表現している。
上記した足先歩容データの補正量Δxk+2(t), Δyk+2(t), Δzk+2(t), Δαk+2(t), Δβk+2(t), Δγk+2(t),・・・は、足平配置の補正量 ΔX+ k+2, ΔY+ k+2, ΔΓ+ k+2 に、時間とともに変化するゲインを乗じて計算される。このゲインは、支持脚が切替わった時点では0であり、徐々に増加し、それまで支持脚であった脚リンクが次に接地する時点で最大となるように、規定されている。足平の接地位置の補正量と接地方向の補正量に応じた、足先歩容データの補正の様子を図5に示す。このように足先歩容データを補正することによって、ロボットの動作を急激に変化させることなく、それまで支持脚であった脚リンクが浮遊して遊脚となり次に接地するまでの動作を、補正後の足平配置へ接地するように補正することが可能である。その脚リンクが接地するときの足平配置を、歩容データが記述する足平配置へ近づけることができる。
補正量計算部228は、歩容データが記述する足平配置経路へ復帰するまでの一歩ごとの足先歩容データの補正量を計算しており、計算された足先歩容データの補正量のうち、加算器230へ出力される足先歩容データに対応した歩数(図2では k+2 歩目)での補正量を、加算器230へ出力する。
補正量計算部228から出力される補正量Δxk+2(t), Δyk+2(t), Δzk+2(t), Δαk+2(t), Δβk+2(t), Δγk+2(t) は、加算器230によって足先歩容データ xk+2(t), yk+2(t), zk+2(t), αk+2(t), βk+2(t), γk+2(t) に加算される。
The correction amount calculation unit 228 includes toe gait data x k + 2 (t), y k + 2 (t), z k + 2 (t), output from the gait data storage unit 210 to the adder 230. Correction amounts corresponding to α k + 2 (t), β k + 2 (t), γ k + 2 (t) Δx k + 2 (t), Δy k + 2 (t), Δz k + 2 (t ), Δα k + 2 (t), Δβ k + 2 (t), Δγ k + 2 (t). The correction amount calculation unit 228 generates a foot gait corresponding to the foot placement correction amounts ΔX + k + 2 , ΔY + k + 2 , ΔΓ + k + 2 ,... Input from the landing placement correction unit 234. Data correction amount Δx k + 2 (t), Δy k + 2 (t), Δz k + 2 (t), Δα k + 2 (t), Δβ k + 2 (t), Δγ k + 2 (t ), ... is calculated. Ashisaki gait data correction amount Δx k + 2 (t), Δy k + 2 (t), Δz k + 2 (t), Δα k + 2 (t), Δβ k + 2 (t), Δγ k +2 (t), ... is the amount of correction for the toe gait data that describes the position / posture of the toes of the free leg, and the toes' position and posture of the leg link that becomes a free leg for each step Is expressed over time.
Correction amount of the above foot gait data Δx k + 2 (t), Δy k + 2 (t), Δz k + 2 (t), Δα k + 2 (t), Δβ k + 2 (t), Δγ k + 2 (t),... Is calculated by multiplying the correction amounts ΔX + k + 2 , ΔY + k + 2 , ΔΓ + k + 2 of the foot placement by a gain that changes with time. This gain is defined to be 0 when the support leg is switched, gradually increases, and is maximized when the leg link that has been the support leg is grounded next time. FIG. 5 shows how the foot gait data is corrected in accordance with the correction amount of the foot contact position and the correction amount in the contact direction. By correcting the toe gait data in this way, the movement until the leg link that has been the supporting leg floats to become a free leg and then touches the ground without rapidly changing the movement of the robot. It is possible to perform correction so as to contact the corrected foot placement. The foot arrangement when the leg link contacts the ground can be brought close to the foot arrangement described by the gait data.
The correction amount calculation unit 228 calculates the correction amount of the foot gait data for each step until returning to the foot placement route described by the gait data, and the correction amount of the calculated foot gait data Among these, the correction amount at the number of steps (k + 2 step in FIG. 2) corresponding to the foot gait data output to the adder 230 is output to the adder 230.
Correction amounts Δx k + 2 (t), Δy k + 2 (t), Δz k + 2 (t), Δα k + 2 (t), Δβ k + 2 (t) output from the correction amount calculation unit 228 , Δγ k + 2 (t) are added to the foot gait data x k + 2 (t), y k + 2 (t), z k + 2 (t), α k + 2 (t) by the adder 230. , β k + 2 (t), γ k + 2 (t).

ロボット6は、歩容データ記憶部210から足先歩容データを読出し、必要であればその足先歩容データを補正し、体幹歩容データを計算し、関節角群を計算し、アクチュエータを制御する。アクチュエータの駆動によって、各関節が回転し、ロボット6は歩行を実現する。   The robot 6 reads the toe gait data from the gait data storage unit 210, corrects the toe gait data if necessary, calculates the trunk gait data, calculates the joint angle group, To control. Each joint rotates by driving the actuator, and the robot 6 realizes walking.

ロボット6が動作を実施している間、コントローラ14は図3のフローチャートに示す処理を並行して実施している。以下では、図3に示す処理について説明する。   While the robot 6 is performing the operation, the controller 14 performs the processing shown in the flowchart of FIG. 3 in parallel. Hereinafter, the process shown in FIG. 3 will be described.

ステップS302では、現在の歩数 k を特定する。歩数 k は現在接地している支持脚が、ロボット6が歩行を開始してから何歩目に該当するかを示す数である。
ステップS304では、ロボット6の外部に固定された座標系から見た頭部18の位置 xh(t), yh(t), zh(t) を計測する。頭部18の位置 xh(t), yh(t), zh(t) は、頭部18に搭載された頭部位置検出装置220によって計測される。
ステップS306では、ロボット6の外部に固定された座標系から見た頭部18の方向 αh(t), βh(t), γh(t) を計測する。頭部18の方向 αh(t), βh(t), γh(t) は、頭部18に搭載された頭部方向検出装置222によって計測される。
ステップS308では、ロボット6の関節群の関節角θi( i = 1, 2,・・・,n )を計測する。関節群の関節角θi( i = 1, 2,・・・,n )は、エンコーダ218によって計測される。
ステップS310では、その時点での支持脚であるk 歩目の支持脚の足平配置 Xk(t), Yk(t), Γk(t) を計算する。現在接地している支持脚の足平配置 Xk(t), Yk(t), Γk(t) は、ステップS304で計測された頭部18の位置 xh(t), yh(t), zh(t) と、ステップS306で計測された頭部18の方向 αh(t), βh(t), γh(t) と、ステップS308で計測されたロボットの関節群の関節角θi( i = 1, 2,・・・,n )に基づいて、ヤコビ行列を用いて算出される。
ステップS312では、その時点におけるロボット6の重心速度 V(t) を計算する。重心速度 V(t) は、ステップS304で計測された頭部18の位置 xh(t), yh(t), zh(t) と、ステップS306で計測された頭部18の方向 αh(t), βh(t), γh(t) と、ステップS308で計測されたロボットの関節群の関節角θi( i = 1, 2,・・・,n )に基づいて、重心ヤコビ行列を用いて算出される。
ステップS314では、支持脚が切替わったか否かを判断する。支持脚が切替わった場合(ステップS314でYESの場合)、処理はステップS316へ進む。支持脚がまだ切替わっていない場合(ステップS314でNOの場合)、処理はステップS304へ進み、ステップS304からステップS314までの処理を繰返し実施する。
ステップS316では、k 歩目の支持脚の足平配置 Xk(t), Yk(t), Γk(t) の平均値 Xk, Yk, Γk を計算する。支持脚の足平配置の平均値 Xk, Yk, Γk は、ステップS310で時々刻々計算された k 歩目の支持脚の足平配置 Xk(t), Yk(t), Γk(t) の時間平均を算出することで取得する。上記の平均値算出は、k 歩目の支持脚に切替わった時点から、k+1 歩目の支持脚に切替わった時点までの期間について行う。ステップS316の処理を実施する時点で、k+1 歩目の支持脚は接地しており、ステップS316の処理によって、先ほどまで接地していたk 歩目の支持脚の足平配置 Xk, Yk, Γk が特定される。
In step S302, the current step count k is specified. The number of steps k is a number indicating how many steps the supporting leg currently in contact with corresponds to after the robot 6 starts walking.
In step S304, the positions x h (t), y h (t), and z h (t) of the head 18 viewed from the coordinate system fixed outside the robot 6 are measured. The positions x h (t), y h (t), and z h (t) of the head 18 are measured by the head position detection device 220 mounted on the head 18.
In step S306, directions α h (t), β h (t), and γ h (t) of the head 18 viewed from the coordinate system fixed outside the robot 6 are measured. The directions α h (t), β h (t), and γ h (t) of the head 18 are measured by a head direction detection device 222 mounted on the head 18.
In step S308, the joint angle θ i (i = 1, 2,..., N) of the joint group of the robot 6 is measured. The joint angle θ i (i = 1, 2,..., N) of the joint group is measured by the encoder 218.
In step S310, the foot placement X k (t), Y k (t), Γ k (t) of the k-th supporting leg as the supporting leg at that time is calculated. The foot placement X k (t), Y k (t), Γ k (t) of the support leg currently in contact with the ground is the position x h (t), y h ( t), z h (t), the direction α h (t), β h (t), γ h (t) of the head 18 measured in step S306, and the robot joint group measured in step S308 Is calculated using a Jacobian matrix based on the joint angle θ i (i = 1, 2,..., N).
In step S312, the center of gravity velocity V (t) of the robot 6 at that time is calculated. The center-of-gravity velocity V (t) depends on the position x h (t), y h (t), z h (t) of the head 18 measured in step S304 and the direction α of the head 18 measured in step S306. Based on h (t), β h (t), γ h (t) and the joint angle θ i (i = 1, 2,..., n) of the robot joint group measured in step S308, Calculated using the centroid Jacobian matrix.
In step S314, it is determined whether or not the support leg has been switched. If the support leg is switched (YES in step S314), the process proceeds to step S316. If the support legs have not yet been switched (NO in step S314), the process proceeds to step S304, and the processes from step S304 to step S314 are repeatedly performed.
In step S316, average values X k , Y k , Γ k of the foot placements X k (t), Y k (t), Γ k (t) of the supporting leg in the kth step are calculated. The average value X k , Y k , Γ k of the foot placement of the support legs is the foot placement of the support legs X k (t), Y k (t), Γ, which is calculated every moment in step S310. Obtained by calculating the time average of k (t). The above average value calculation is performed for a period from the time when the support leg is switched to the kth step to the time when the support leg is switched to the k + 1th step. At the time of performing the process of step S316, the k + 1 step support legs are in contact with the ground, and the foot placement of the kth support legs, which has been in contact with the previous step by the process of step S316, Xk, Y k and Γ k are specified.

図4は本実施例のロボット6が歩行するときの足平の配置の推移を示している。歩容データが記述する足平配置経路402、404、406、408、410、412、414に対して、ロボット6は k−1 歩目で左脚22を足平配置416へ接地し、k 歩目で右脚20を足平配置418へ接地している。ロボット6が左脚22を浮遊させて遊脚とし、k+1 歩目の足平配置420へ向けて左脚22を振り出している間、コントローラ14はステップS302からステップS314までの処理を繰返し実施し、k 歩目で支持脚である右脚20の足平配置418の接地位置 Xk(t), Yk(t) と接地方向Γk(t) を繰返し計測する。遊脚である左脚22が k+1 歩目の足平配置420へ接地すると、支持脚が右脚20から左脚22へ切替わり、ステップS316でk 歩目の支持脚の足平配置418の接地位置 Xk, Yk と接地方向 Γk が特定される。 FIG. 4 shows the transition of the foot placement when the robot 6 of this embodiment walks. For the foot placement paths 402, 404, 406, 408, 410, 412, and 414 described by the gait data, the robot 6 grounds the left leg 22 to the foot placement 416 at the k-1th step, and takes k steps. The right leg 20 is grounded to the foot arrangement 418 with eyes. While the robot 6 floats the left leg 22 as a free leg and swings the left leg 22 toward the foot placement 420 at the (k + 1) th step, the controller 14 repeatedly performs the processing from step S302 to step S314. Then, at the kth step, the ground contact positions X k (t), Y k (t) and the ground contact direction Γ k (t) of the foot arrangement 418 of the right leg 20 as the support leg are repeatedly measured. When the left leg 22 which is a free leg contacts the foot arrangement 420 of the (k + 1) th step, the supporting leg is switched from the right leg 20 to the left leg 22, and the foot arrangement 418 of the k-th supporting leg in step S316. The ground contact positions X k and Y k and the ground direction Γ k are specified.

図3に戻って、ステップS318では、足平配置比較部238が、特定された k 歩目の支持脚の足平配置 Xk, Yk, Γk と、k 歩目の支持脚の目標足平配置 X'k, Y'k, Γ'k の偏差δXk, δYk, δΓk を計算する。
図4に示す例では、特定された k 歩目の支持脚の足平配置418(Xk, Yk, Γk)と、対応する k 歩目の支持脚の目標足平配置404(X'k, Y'k, Γ'k)との偏差(δXk, δYk, δΓk)が計算される。
Returning to FIG 3, in step S318, the foot arrangement comparator 238, the foot arrangement X k of the identified k-th step of the support legs, Y k, and gamma k, k-th step of the support legs of desired foot flat arranged X 'k, Y' k, Γ 'k deviation δX k, δY k, calculates the [Delta] [gamma] k.
In the example shown in FIG. 4, the foot placement 418 (X k , Y k , Γ k ) of the identified support legs at the kth step and the target foot placement 404 (X ′ k , Y ′ k , Γ ′ k ) (δX k , δY k , δΓ k ) are calculated.

図3に戻って、ステップS320では、足平配置比較部238が、計算された偏差 δXk, δYk, δΓk をそれぞれの許容範囲を示すしきい値と比較する。計算された偏差 δXk, δYk, δΓk のうちいずれか1つでもしきい値を超えている場合(ステップS320でYESの場合)、その後の動作パターンを補正するために、処理はステップS322へ進む。計算された偏差δXk, δYk, δΓk の全てがしきい値以下である場合(ステップS320でNOの場合)、その後の動作パターンを補正することなく、処理はステップS328へ進む。 Returning to FIG. 3, in step S320, the foot placement comparison unit 238 compares the calculated deviations δX k , δY k , and δΓ k with thresholds indicating the respective allowable ranges. If any one of the calculated deviations δX k , δY k , δΓ k exceeds the threshold value (YES in step S320), the process proceeds to step S322 to correct the subsequent operation pattern. Proceed to If all of calculated deviations δX k , δY k , and δΓ k are equal to or less than the threshold value (NO in step S320), the process proceeds to step S328 without correcting the subsequent operation pattern.

ステップS322では、着地配置計算部238が、現在の足平配置から歩容データが記述する足平配置経路へ復帰するまでの歩数 m を設定する。
復帰までの歩数 m は、足平配置の偏差 δXk, δYk, δΓk と、ロボット6の速度 V(t) に応じて設定される。
足平配置の偏差 δXk, δYk, δΓk が大きい場合には、復帰までの歩数 m を多く設定する。足平配置の偏差 δXk, δYk, δΓk が小さい場合には、復帰までの歩数 m を少なく設定する。このように足平配置の偏差 δXk, δYk, δΓk に応じて復帰までの歩数 m を設定することによって、ロボット6は無理な体勢をとることなく、自然な動作で歩容データが記述する足平配置経路へ復帰することができる。
速度 V(t) が速い場合には、復帰までの歩数 m を多く設定する。速度 V(t) が遅い場合には、復帰までの歩数 m を少なく設定する。このように速度V(t) に応じて復帰するまでの歩数 m を設定することによって、ロボット6がバランスを崩しやすい高速移動時の動作変更を抑制することが可能であり、ロボット6の歩行の安定性を確保することができる。またロボット6が安定して歩行することができる低速移動時には、速やかに歩容データが記述する足平配置経路へ復帰することが可能であり、歩容データが記述する足平配置経路への追従性が向上する。
図4に示す例では、計測された k 歩目の支持脚の足平配置418から、歩容データが記述する足平配置経路へ復帰するまでの歩数 m を5歩に設定して、k+5 歩目で歩容データが記述する足平配置414に復帰させる例を示している。
In step S322, the landing placement calculation unit 238 sets the number of steps m from the current foot placement until returning to the foot placement route described by the gait data.
The number of steps m until return is set according to the foot placement deviations δX k , δY k , δΓ k and the speed V (t) of the robot 6.
When the foot placement deviations ΔX k , ΔY k , and ΔΓ k are large, a large number of steps m to return is set. When the foot placement deviations ΔX k , ΔY k , and ΔΓ k are small, the number of steps m to return is set to be small. In this way, by setting the number of steps m to return according to the foot placement deviations δX k , δY k , and δΓ k , the robot 6 can describe gait data with natural motion without taking an unreasonable posture. It is possible to return to the foot placement route.
If the speed V (t) is fast, set a large number of steps m to return. If the speed V (t) is slow, set a smaller number of steps m to return. In this way, by setting the number of steps m to return in accordance with the speed V (t), it is possible to suppress the movement change when the robot 6 moves at a high speed, which is likely to lose the balance, and the robot 6 can be prevented from walking. Stability can be ensured. Further, when the robot 6 can move stably at a low speed, it is possible to quickly return to the foot placement path described by the gait data, and to follow the foot placement path described by the gait data. Improves.
In the example shown in FIG. 4, the number m of steps from the measured foot placement 418 of the supporting leg at the kth step until returning to the foot placement route described by the gait data is set to 5 steps, and k + An example of returning to the foot arrangement 414 described by the gait data at the fifth step is shown.

ステップS324では、ステップS322で設定された歩数で歩容データが記述する足平配置経路へ復帰することができる、最適足平配置経路を計算する。
まず着地配置計算部226は、k+1 歩目から k+5 歩目までの予定されている足平配置経路 X* k+1, Y* k+1, Γ* k+1, ・・・・, X* k+5, Y* k+5, Γ* k+5 を計算する。着地配置計算部226は、支持脚足平配置計算部224から入力される k 歩目の支持脚の足平配置Xk, Yk, Γk と、歩容データ記憶部219から入力される k+1 歩目以降に予定されている相対的な足平配置経路ΔXk+1, ΔYk+1, ΔΓk+1, ・・・, ΔXk+5, ΔYk+5, ΔΓk+5 に基づいて、k+5 歩目までの予定されている足平配置経路 X* k+1, Y* k+1, Γ* k+1, ・・・・, X* k+5, Y* k+5, Γ* k+5 を計算する。計算された予定足平配置経路 X* k+1, Y* k+1, Γ* k+1, ・・・・, X* k+5, Y* k+5, Γ* k+5 は、着地配置修正部234へ出力される。
In step S324, an optimum foot placement route that can return to the foot placement route described by the gait data with the number of steps set in step S322 is calculated.
First, the landing placement calculation unit 226 calculates the planned foot placement routes X * k + 1 , Y * k + 1 , Γ * k + 1 ,... From the (k + 1) th step to the (k + 5) th step.・, X * k + 5 , Y * k + 5 , Γ * k + 5 are calculated. The landing arrangement calculation unit 226 receives the foot arrangements X k , Y k , Γ k of the k-th supporting leg input from the support leg foot arrangement calculation unit 224 and k input from the gait data storage unit 219. Relative foot placement paths scheduled after +1 step ΔX k + 1 , ΔY k + 1 , ΔΓ k + 1 , ..., ΔX k + 5 , ΔY k + 5 , ΔΓ k + 5 Based on, planned foot placement paths up to k + 5 steps X * k + 1 , Y * k + 1 , Γ * k + 1 , ..., X * k + 5 , Y * Calculate k + 5 and Γ * k + 5 . The calculated planned foot placement paths X * k + 1 , Y * k + 1 , Γ * k + 1 , ..., X * k + 5 , Y * k + 5 , Γ * k + 5 are It is output to the landing arrangement correcting unit 234.

次に着地配置修正部234は、k+2 歩目から k+5 歩目までの足平配置の補正量ΔX+ k+2, ΔY+ k+2, ΔΓ+ k+2, ・・・, ΔX+ k+5, ΔY+ k+5, ΔΓ+ k+5を計算する。ここで、ステップS324の処理を実行する時点で k+1 歩目の支持脚は既に接地しており、k+1 歩目の足平配置 X* k+1, Y* k+1, Γ* k+1 は補正されないことに注意されたい。
上記の足平配置の補正量 Δ+Xk+2, ΔY+ k+2, ΔΓ+ k+2, ・・・, ΔX+ k+5, ΔY+ k+5, ΔΓ+ k+5 は、制約条件つきの最適化問題の解として計算される。
ここで用いられる制約条件は、一歩ごとの足平配置は一歩前の足平配置から特定される範囲内でのみ接地可能であることと、k+1 歩目の足平配置は補正されないことと、k+5 歩目で歩容データが記述する足平配置に一致することである。
上述した制約条件のもとで、既に述べた評価関数J を最小とするように、足平配置の補正量 ΔX+ k+2, ΔY+ k+2, ΔΓ+ k+2, ・・・, ΔX+ k+5, ΔY+ k+5, ΔΓ+ k+5 が計算される。最適な足平配置の補正量の計算は、従来から知られている種々の最適化手法を用いて計算することが可能であり、本明細書では詳細な説明を省略する。
図4に示す例では、k+2 歩目の予定足平配置422(X* k+2, Y* k+2, Γ* k+2)、k+3 歩目の予定足平配置424(X* k+3, Y* k+3, Γ* k+3)、k+4 歩目の予定足平配置426(X* k+4, Y* k+4, Γ* k+4)、k+5 歩目の予定足平配置428(X* k+5, Y* k+5, Γ* k+5)に対して、それぞれ補正量が計算される。このような補正の結果、k+2 歩目は補正後の予定足平配置430へ、k+3 歩目は補正後の予定足平配置432へ、k+4 歩目は補正後の予定足平配置434へ接地するように補正され、k+5 歩目は歩容データが記述する足平配置414と一致する補正後の予定足平配置へ接地するように補正される。
計算された足平配置の補正量 ΔX+ k+2, ΔY+ k+2, ΔΓ+ k+2, ・・・, ΔX+ k+5, ΔY+ k+5, ΔΓ+ k+5 は、補正量計算部228へ出力される。
Next, the landing arrangement correcting unit 234 corrects the amount of correction of the foot arrangement from the k + 2 step to the k + 5 step, ΔX + k + 2 , ΔY + k + 2 , ΔΓ + k + 2 ,. ΔX + k + 5 , ΔY + k + 5 , ΔΓ + k + 5 are calculated. Here, at the time when the process of step S324 is executed, the k + 1 step support legs are already in contact with the ground, and the k + 1 step foot placement X * k + 1 , Y * k + 1 , Γ *. Note that k + 1 is not corrected.
The correction amounts Δ + X k + 2 , ΔY + k + 2 , ΔΓ + k + 2 , ・ ・ ・, ΔX + k + 5 , ΔY + k + 5 , ΔΓ + k + 5 It is calculated as a solution to an optimization problem with constraints.
The constraints used here are that the foot placement at each step can be grounded only within the range specified from the foot placement of the previous step, and that the foot placement at the k + 1 step is not corrected. This corresponds to the foot arrangement described by the gait data at the k + 5th step.
Under the above-mentioned constraints, the correction amount of the foot placement ΔX + k + 2 , ΔY + k + 2 , ΔΓ + k + 2 ,. ΔX + k + 5 , ΔY + k + 5 , ΔΓ + k + 5 are calculated. The calculation of the optimal foot placement correction amount can be performed using various conventionally known optimization methods, and detailed description thereof is omitted in this specification.
In the example shown in FIG. 4, the planned foot arrangement 422 (X * k + 2 , Y * k + 2 , Γ * k + 2 ) of the k + 2 step, the planned foot arrangement 424 of the k + 3 step ( X * k + 3 , Y * k + 3 , Γ * k + 3 ), planned foot placement 426 at the k + 4th step (X * k + 4 , Y * k + 4 , Γ * k + 4 ), Correction amounts are calculated for the planned foot placement 428 (X * k + 5 , Y * k + 5 , Γ * k + 5 ) of the k + 5th step . As a result of such correction, the k + 2 step is to the corrected planned foot arrangement 430, the k + 3 step is to the corrected planned foot arrangement 432, and the k + 4 step is the corrected planned foot arrangement 430. Correction is made so as to contact the flat arrangement 434, and the k + 5th step is corrected so as to contact the corrected planned foot arrangement that matches the foot arrangement 414 described by the gait data.
ΔX + k + 2 , ΔY + k + 2 , ΔΓ + k + 2 , ..., ΔX + k + 5 , ΔY + k + 5 , ΔΓ + k + 5 It is output to the correction amount calculation unit 228.

図3に戻って、ステップS326では、補正量計算部228が、足先歩容データの補正量を計算する。補正量計算部228は、着地配置修正部234から入力される足平配置の補正量ΔX+ k+2, ΔY+ k+2, ΔΓ+ k+2, ・・・, ΔX+ k+5, ΔY+ k+5, ΔΓ+ k+5 に基づいて、足先歩容データの補正量 Δxk+2(t), Δyk+2(t), Δzk+2(t), Δαk+2(t), Δβk+2(t), Δγk+2(t) ・・・・を計算する。上記の足先歩容データの補正量は、一歩ごとの足平配置の補正量に基づいて、一歩ごとに計算される。
例えば k+2 歩目に接地する脚リンクの足先歩容データの補正量 Δxk+2(t), Δyk+2(t), Δzk+2(t), Δαk+2(t), Δβk+2(t), Δγk+2(t) は、k+2 歩目の足平の接地位置の補正量 ΔX+ k+2, ΔY+ k+2 と接地方向の補正量 ΔΓ+ k+2 に、時間とともに変化するゲインを乗じて算出される。図5に示すように、このゲインは k 歩目で支持脚だった脚リンクが浮遊して遊脚となる時点から、次の足平配置へ着地する時点までの期間で定義され、当初は0であり、時間とともに増大するように設定されている。
補正量計算部228は、上記した足先歩容データの補正量を一歩ごとに計算して記憶している。補正量計算部228は、ロボット6の支持脚の切り替わりを監視しており、支持脚が切替わるたびに対応する歩数における足先歩容データの補正量を、加算器230へ出力する。
図2では、k+2歩目に接地する脚リンクの足先歩容データの補正量 Δxk+2(t), Δyk+2(t), Δzk+2(t), Δαk+2(t), Δβk+2(t), Δγk+2(t) が、加算器230によって足先歩容データ xk+2(t), yk+2(t), zk+2(t), αk+2(t), βk+2(t), γk+2(t)へ加算される場合を示している。補正された足先歩容データに基づいて体幹歩容データが計算され、関節角群が計算され、アクチュエータが駆動されて、ロボット6は歩行を継続する。
その後処理はステップS328へ移行し、ロボット6が所定の歩数だけ歩行を進めるまで待機する。ロボット6の支持脚が所定回数だけ切り替わり、ロボット6が所定の歩数だけ歩行を進めた後に、処理はステップS302へ移行し、上述した一連の処理を再び繰り返す。
Returning to FIG. 3, in step S326, the correction amount calculation unit 228 calculates the correction amount of the toe gait data. The correction amount calculation unit 228 includes foot placement correction amounts ΔX + k + 2 , ΔY + k + 2 , ΔΓ + k + 2 ,..., ΔX + k + 5 , which are input from the landing placement correction unit 234. Based on ΔY + k + 5 and ΔΓ + k + 5 , correction amount of foot gait data Δx k + 2 (t), Δy k + 2 (t), Δz k + 2 (t), Δα k + Calculate 2 (t), Δβ k + 2 (t), Δγ k + 2 (t). The correction amount of the above-mentioned foot gait data is calculated for each step based on the correction amount of the foot placement for each step.
For example, correction amount of foot gait data of leg link touching the ground at k + 2 step Δx k + 2 (t), Δy k + 2 (t), Δz k + 2 (t), Δα k + 2 (t ), Δβ k + 2 (t), Δγ k + 2 (t) is the correction amount of the ground contact position of the foot of k + 2 step ΔX + k + 2 , ΔY + k + 2 and the correction amount of the ground contact direction It is calculated by multiplying ΔΓ + k + 2 by a gain that changes with time. As shown in FIG. 5, this gain is defined in the period from the time when the leg link, which was the supporting leg at the k-th step, floats to become a free leg until the time when it reaches the next foot placement, and is initially zero. It is set to increase with time.
The correction amount calculation unit 228 calculates and stores the correction amount of the above-mentioned footstep gait data for each step. The correction amount calculation unit 228 monitors the switching of the support legs of the robot 6 and outputs the correction amount of the toe gait data at the corresponding number of steps to the adder 230 every time the support legs are switched.
In FIG. 2, the correction amount of the toe gait data of the leg link touching on the k + 2 step Δx k + 2 (t), Δy k + 2 (t), Δz k + 2 (t), Δα k + 2 (t), Δβ k + 2 (t), Δγ k + 2 (t) are converted into foot gait data x k + 2 (t), y k + 2 (t), z k + by adder 230. This shows the case where 2 (t), α k + 2 (t), β k + 2 (t), and γ k + 2 (t) are added. Based on the corrected toe gait data, the trunk gait data is calculated, the joint angle group is calculated, the actuator is driven, and the robot 6 continues walking.
Thereafter, the process proceeds to step S328, and waits until the robot 6 advances walking by a predetermined number of steps. After the supporting legs of the robot 6 are switched a predetermined number of times and the robot 6 has walked a predetermined number of steps, the process proceeds to step S302, and the series of processes described above is repeated again.

上記した脚式ロボット6は、実際の支持脚の足平配置を計測し、計測された足平配置と歩容データが記述する足平配置経路の偏差に基づいて歩容データを補正しながら歩行する。上記した脚式ロボット6は、計測された足平配置と歩容データが記述する足平配置経路の偏差に基づいて、歩容データが記述する足平配置経路へ復帰するまでの歩数を決定しており、無理な体勢をとることなく歩容データが記述する足平配置経路に自然な動作で復帰することができる。   The above-described legged robot 6 measures the actual foot placement of the supporting legs, and walks while correcting the gait data based on the deviation of the foot placement route described by the measured foot placement and the gait data. To do. The above legged robot 6 determines the number of steps to return to the foot placement path described by the gait data based on the measured foot placement and the deviation of the foot placement path described by the gait data. Therefore, it is possible to return to the foot placement path described by the gait data with a natural motion without taking an unreasonable posture.

(第2実施例)
図面を参照して、本発明に係る他の1つのロボット610を説明する。図6は、ロボット610が進行する様子を平面的に見た図である。ロボット610は、会場602の中を進行しながら太鼓660を演奏する(太鼓660を叩く)。会場602には、指揮台700が設置されている。指揮者702は、指揮台700の上で指揮棒730を振って指揮をする。ロボット610は指揮者702が指揮棒730を振る様子を視認しながら、演奏動作を行う。図6では、指揮者702を極めて簡略化して示している。
ロボット610は、ヒトの頭(顔)を模してつくられた頭部640と、ヒトの胴体を模してつくられた胴体部670と、車輪622a,622b等を有しており、太鼓660を保持している。ロボット610の詳しい構成は後で説明する。このロボット610は、設定された略円弧状の移動ルート(位置A→位置B→位置C→…)を進行しながら太鼓660を演奏する。
(Second embodiment)
Another robot 610 according to the present invention will be described with reference to the drawings. FIG. 6 is a plan view of how the robot 610 travels. The robot 610 plays the drum 660 while traveling through the venue 602 (beats the drum 660). A podium 700 is installed at the venue 602. The conductor 702 conducts the command by swinging the command stick 730 on the command platform 700. The robot 610 performs a performance while visually confirming that the conductor 702 swings the conductor rod 730. In FIG. 6, the conductor 702 is shown in a very simplified manner.
The robot 610 has a head 640 imitating a human head (face), a torso part 670 imitating a human torso, wheels 622a and 622b, and the like. Holding. A detailed configuration of the robot 610 will be described later. The robot 610 plays the drum 660 while traveling through the set substantially arc-shaped moving route (position A → position B → position C →...).

まず、ロボット610の構成について詳しく説明する。図7に、ロボット610の正面図を示している。ロボット610は、ヒトを模してつくられたヒューマノイドロボットといえる。
ロボット610は、車輪622a,622bを回転させることによって自身を進行させる。このロボット610は、ヒトが行進しながら太鼓を演奏する(叩く)ように、移動しながら太鼓660を演奏する。
First, the configuration of the robot 610 will be described in detail. FIG. 7 shows a front view of the robot 610. It can be said that the robot 610 is a humanoid robot imitating a human.
The robot 610 advances itself by rotating the wheels 622a and 622b. The robot 610 plays the drum 660 while moving so that a human plays (beats) the drum while marching.

胴体部670は略直方体形状を有している。胴体部670には、ロボット610の動作を統括的に制御する制御部690と、頭部640を回転させるモータ652と、ロボット610の位置を計測する位置センサ712と、胴体部670が向いている方向を計測する方向センサ714等が収納されている。
胴体部670には、アーム(腕)630a,630bが接続されている。以下では、アーム630aを右アームといい、アーム630bを左アームという。右アーム630aは、上腕部632aと下腕部634aとを有している。上腕部632aの一端が胴体部670に揺動自在に取り付けられている。上腕部632aの他端には、関節638aによって下腕部634aが連結されている。下腕部634aは、関節638aを支点として揺動可能である。この関節638aはヒトの肘関節に相当する。下腕部634aの一端には、太鼓660を叩く撥636aが固定されている。上腕部632aの内部には、下腕部634aを揺動させるアクチュエータ635a(例えばソレノイドやモータ)が設けられている。このアクチュエータ635aは、制御部690から出力される制御信号に基づいて駆動される。左アーム630bは、右アーム630aと同様の構成をしている。即ち、左アーム630bは、上腕部632bと下腕部634bを有する。下腕部634bは、肘関節638bを支点として揺動可能である。下腕部634bの一端には撥636bが固定されている。また、上腕部632b内には、下腕部634bを揺動させるアクチュエータ635bが設けられている。
位置センサ712は、胴体部670の中心近傍に固定されている。位置センサ712は、DGPS受信機(図示されない)を備えており、会場602の内部におけるロボット610の位置を、図6に示す座標系(X, Y)で出力する。位置センサ712は制御部690に接続されており、計測された位置を制御部690へ出力する。
方向センサ714は、胴体部670の中心近傍に固定されている。方向センサ714は、地磁気の磁力線の方向を測定し、胴体部670が向いている方向を、会場602の基準となる直線(例えば図6に示す座標系のX 軸)からの傾き角θで出力する。方向センサ714は制御部690に接続されており、計測された方向を制御部690へ出力する。
The body part 670 has a substantially rectangular parallelepiped shape. The body 670 is directed to a controller 690 that comprehensively controls the operation of the robot 610, a motor 652 that rotates the head 640, a position sensor 712 that measures the position of the robot 610, and the body 670. A direction sensor 714 for measuring the direction and the like are accommodated.
Arms (arms) 630 a and 630 b are connected to the body portion 670. Hereinafter, the arm 630a is referred to as a right arm, and the arm 630b is referred to as a left arm. The right arm 630a has an upper arm portion 632a and a lower arm portion 634a. One end of the upper arm portion 632a is swingably attached to the body portion 670. The lower arm 634a is connected to the other end of the upper arm 632a by a joint 638a. The lower arm 634a can swing around the joint 638a. This joint 638a corresponds to a human elbow joint. A repellent 636a for hitting the drum 660 is fixed to one end of the lower arm 634a. An actuator 635a (for example, a solenoid or a motor) that swings the lower arm 634a is provided inside the upper arm 632a. The actuator 635a is driven based on a control signal output from the control unit 690. The left arm 630b has the same configuration as the right arm 630a. That is, the left arm 630b has an upper arm portion 632b and a lower arm portion 634b. The lower arm 634b can swing around the elbow joint 638b. A repellent 636b is fixed to one end of the lower arm 634b. An actuator 635b that swings the lower arm 634b is provided in the upper arm 632b.
The position sensor 712 is fixed near the center of the body portion 670. The position sensor 712 includes a DGPS receiver (not shown), and outputs the position of the robot 610 inside the venue 602 using a coordinate system (X, Y) shown in FIG. The position sensor 712 is connected to the control unit 690 and outputs the measured position to the control unit 690.
The direction sensor 714 is fixed near the center of the body portion 670. The direction sensor 714 measures the direction of the line of magnetic force of the geomagnetism, and outputs the direction in which the body portion 670 is directed at a tilt angle θ from a straight line (for example, the X axis of the coordinate system shown in FIG. To do. The direction sensor 714 is connected to the control unit 690 and outputs the measured direction to the control unit 690.

頭部640は、略直方体形状を有している。頭部640には、ヒトの目を模してつくられた2つの孔640a,640bが設けられている。孔640aが左目に相当し、孔640bが右目に相当する。孔640aには、連続的に撮影し続けるビデオカメラ642のレンズが臨んでいる。
頭部640と胴体部670の間には首部650が設けられている。首部650は、略円柱形状を有している。首部650は、胴体部670に回転可能(回転軸は符号C1で示している)に支持されている。首部650が回転することによって、ヒトが首を振って横を向くように、ロボット610の頭部640が横を向くことになる。首部650を回転させるモータ652は、制御部690から出力される制御信号に基づいて駆動される。モータ652の回転方向によって、頭部640が右を向いたり左を向いたりする。ロボット610は動作中に、頭部640が指揮者702の方を向き、ビデオカメラ642が常に指揮者702を撮影し続けるように、首部650を回転する。
The head 640 has a substantially rectangular parallelepiped shape. The head 640 is provided with two holes 640a and 640b which are made to imitate human eyes. The hole 640a corresponds to the left eye, and the hole 640b corresponds to the right eye. The lens of the video camera 642 that continues to photograph continuously faces the hole 640a.
A neck portion 650 is provided between the head portion 640 and the body portion 670. The neck 650 has a substantially cylindrical shape. The neck portion 650 is supported by the body portion 670 so that the neck portion 650 can rotate (the rotation axis is indicated by a symbol C1). The rotation of the neck 650 causes the head 640 of the robot 610 to turn sideways so that a human shakes his head and turns sideways. The motor 652 that rotates the neck 650 is driven based on a control signal output from the control unit 690. Depending on the rotation direction of the motor 652, the head 640 turns to the right or to the left. During operation, the robot 610 rotates the neck 650 so that the head 640 faces the conductor 702 and the video camera 642 keeps shooting the conductor 702 at all times.

胴体部670の下端は移動機構620に固定されている。移動機構620は、車輪622a、622bを回転可能に保持している。車輪622a、622bは、それぞれがアクチュエータ624a、624bに結合されており、互いに異なる回転速度で回転可能である。アクチュエータ624a、624bは、制御部690からの指示に従って車輪622a、622bを回転させる。
また移動機構620は、車輪622a、622bのそれぞれの回転角度を検出するエンコーダ710を備えている。エンコーダ710は、所定の時間間隔で車輪622a、622bの回転角度を検出して、制御部690へ出力する。
The lower end of the body portion 670 is fixed to the moving mechanism 620. The moving mechanism 620 rotatably holds the wheels 622a and 622b. The wheels 622a and 622b are coupled to the actuators 624a and 624b, respectively, and can rotate at different rotational speeds. Actuators 624a and 624b rotate wheels 622a and 622b in accordance with instructions from control unit 690.
The moving mechanism 620 includes an encoder 710 that detects the rotation angles of the wheels 622a and 622b. The encoder 710 detects the rotation angles of the wheels 622a and 622b at a predetermined time interval and outputs them to the control unit 690.

図8にロボット610の制御部690の概略構成を示す。制御部690は、動作パターン記憶部802と、経路補正部804と、動作パターン更新部806と、アクチュエータ制御部808と、指示認識部812と、位置・方向比較部814と、経路推定部816と、補正量計算部818と、速度計算部820を備えている。   FIG. 8 shows a schematic configuration of the control unit 690 of the robot 610. The control unit 690 includes an operation pattern storage unit 802, a path correction unit 804, an operation pattern update unit 806, an actuator control unit 808, an instruction recognition unit 812, a position / direction comparison unit 814, and a path estimation unit 816. A correction amount calculation unit 818 and a speed calculation unit 820 are provided.

動作パターン記憶部802には、ロボット610が目標とする移動経路(動作計画が記述する経路)と、指揮台700の位置(座標)と、ロボット610の動作計画が記憶されている。ロボット610の動作計画は、右アーム630aおよび左アーム630bの上げ下げに関する動作パターンと、ロボット610が目標とする移動経路に沿って移動するための車輪622a、622bの回転に関する動作パターンと、指揮者702を撮影し続けるための首部650の回転に関する動作パターンが記憶されている。右アーム630aおよび左アーム630bの上げ下げに関する動作パターンは、胴体部670に対する撥636a、636bの先端の相対的な位置の経時的な変化を記述している。車輪622a、622bの回転に関する動作パターンは、車輪622a、622bの回転角の経時的な変化を記述している。首部650の回転に関する動作パターンは、胴体部670に対する首部650の回転角の経時的変化を記述している。   The movement pattern storage unit 802 stores the movement path (path described by the movement plan) targeted by the robot 610, the position (coordinates) of the podium 700, and the movement plan of the robot 610. The operation plan of the robot 610 includes an operation pattern related to raising and lowering the right arm 630a and the left arm 630b, an operation pattern related to rotation of the wheels 622a and 622b for moving along the target movement path of the robot 610, and a conductor 702. An operation pattern relating to the rotation of the neck 650 for continuing to capture the image is stored. The operation pattern related to raising and lowering of the right arm 630a and the left arm 630b describes a change with time of the relative position of the tip of the repellent 636a, 636b with respect to the body portion 670. The operation pattern related to the rotation of the wheels 622a and 622b describes a change with time of the rotation angle of the wheels 622a and 622b. The operation pattern related to the rotation of the neck 650 describes the change over time of the rotation angle of the neck 650 with respect to the body 670.

経路補正部804は、補正量計算部818から入力される補正量を用いて、動作パターン記憶部802から入力される車輪622a、622bの回転に関する動作パターンを補正する。補正された車輪622a、622bの回転に関する動作パターンは、動作パターン更新部806へ入力される。また経路補正部804は、補正された車輪622a、622bの回転に関する動作パターンに基づいて、頭部640が指揮者702を撮影し続けるように、首部650の回転に関する動作パターンを補正して、動作パターン更新部806へ出力する。   The route correction unit 804 uses the correction amount input from the correction amount calculation unit 818 to correct the operation pattern related to rotation of the wheels 622a and 622b input from the operation pattern storage unit 802. The corrected motion pattern related to the rotation of the wheels 622a and 622b is input to the motion pattern update unit 806. Further, the path correction unit 804 corrects the operation pattern related to the rotation of the neck 650 based on the corrected operation pattern related to the rotation of the wheels 622a and 622b so that the head 640 continues to photograph the conductor 702. The data is output to the pattern update unit 806.

動作パターン更新部806は、動作パターン記憶部802から入力される右アーム630aおよび左アーム630bの上げ下げに関する動作パターンと、経路補正部804から入力される車輪622a、622bに関する動作パターンと、指揮者702を撮影し続けるための首部650の回転に関する動作パターンを、指示認識部812から入力される指示内容に基づいて更新する。指揮者702が指揮棒730を速く振ると(即ちテンポが速いと)、ロボット610が高速で移動するように移動機構620が制御される。逆に、指揮者702が指揮棒730をゆっくり振ると(即ちテンポが遅いと)、ロボット610が低速で進行するように移動機構620が制御される。   The operation pattern update unit 806 includes an operation pattern related to raising and lowering of the right arm 630a and the left arm 630b input from the operation pattern storage unit 802, an operation pattern related to the wheels 622a and 622b input from the path correction unit 804, and a conductor 702. The operation pattern related to the rotation of the neck portion 650 for continuously capturing the image is updated based on the instruction content input from the instruction recognition unit 812. When the conductor 702 swings the conductor rod 730 quickly (that is, when the tempo is fast), the moving mechanism 620 is controlled so that the robot 610 moves at high speed. Conversely, when the conductor 702 swings the conductor rod 730 slowly (that is, when the tempo is slow), the moving mechanism 620 is controlled so that the robot 610 proceeds at a low speed.

アクチュエータ制御部808は、動作パターン更新部806から入力される各動作パターンに基づいて、各アクチュエータの目標とする回転角度の経時的変化を計算し、計算された回転角度を実現するように、アクチュエータ群810を駆動する。アクチュエータ群810には、アクチュエータ624a、624b、635a、635b、モータ652等が含まれる。   The actuator control unit 808 calculates the change over time of the target rotation angle of each actuator based on each operation pattern input from the operation pattern update unit 806, and realizes the calculated rotation angle. The group 810 is driven. The actuator group 810 includes actuators 624a, 624b, 635a, 635b, a motor 652 and the like.

指示認識部812は、ビデオカメラ642から入力される画像データに基づいて、指揮者702からの指示内容を認識する。認識された指示内容は、動作パターン更新部806に入力される。   The instruction recognition unit 812 recognizes the instruction content from the conductor 702 based on the image data input from the video camera 642. The recognized instruction content is input to the operation pattern update unit 806.

速度計算部820は、エンコーダ710から入力される車輪622a、622bの回転角度と、車輪622a、622bの直径と、車輪622a、622bの間隔に基づいて、ロボット610の移動速度 V を計算する。   The speed calculation unit 820 calculates the moving speed V of the robot 610 based on the rotation angle of the wheels 622a and 622b input from the encoder 710, the diameter of the wheels 622a and 622b, and the distance between the wheels 622a and 622b.

位置・方向比較部814は、位置センサ712および方向センサ714から入力される胴体部670の実際の位置と方向と、動作パターン記憶部802から入力される動作計画が記述する経路における胴体部670の位置と方向とを比較し、位置と方向のそれぞれについて偏差を計算する。位置・方向比較部814は、計算された偏差に基づいて、ロボット610の動作パターンを補正するか否かを判断する。位置・方向比較部814は、計算された偏差と補正の要否についての判断結果を、経路推定部816へ入力する。   The position / direction comparing unit 814 includes the actual position and direction of the body 670 input from the position sensor 712 and the direction sensor 714 and the path of the body 670 in the path described by the operation plan input from the operation pattern storage unit 802. The position and direction are compared, and the deviation is calculated for each position and direction. The position / direction comparison unit 814 determines whether to correct the operation pattern of the robot 610 based on the calculated deviation. The position / direction comparison unit 814 inputs the calculated deviation and the determination result regarding the necessity of correction to the route estimation unit 816.

経路推定部816は、位置・方向比較部814から動作パターンの補正が必要であるとの判断結果を受け取ると、実際の位置と方向から動作計画が記述する経路へ復帰するまでの時間を設定する。復帰するまでの時間は、位置・方向比較部814から入力される位置と方向の偏差と、速度計算部820から入力される速度 V に基づいて設定される。入力される偏差が大きいほど、復帰するまでの時間は長い値に設定され、入力される偏差が小さいほど、復帰するまでの時間は短い値に設定される。入力される速度 V が大きいほど、復帰するまでの時間は長い値に設定され、入力される速度 V が小さいほど、復帰するまでの時間は短い値に設定される。その後、経路推定部816は、位置センサ712および方向センサ714で計測された実際の位置および方向から動作パターン記憶部802に記憶された動作計画に基づいて動作したときのロボット610の移動経路を、復帰するまでの時間として設定された時間まで計算する。計算された移動経路は、補正量計算部818に入力される。   When the route estimation unit 816 receives the determination result that the motion pattern needs to be corrected from the position / direction comparison unit 814, the route estimation unit 816 sets the time from the actual position and direction until returning to the route described by the motion plan. . The time until return is set based on the position / direction deviation input from the position / direction comparison unit 814 and the speed V input from the speed calculation unit 820. The larger the input deviation is, the longer the time until return is set, and the smaller the input deviation is, the shorter the time until return is set. The higher the input speed V, the longer the time until return is set, and the lower the input speed V, the shorter the time until return. Thereafter, the path estimation unit 816 determines the movement path of the robot 610 when operating based on the operation plan stored in the operation pattern storage unit 802 from the actual position and direction measured by the position sensor 712 and the direction sensor 714. Calculate up to the time set as the time to return. The calculated movement route is input to the correction amount calculation unit 818.

補正量計算部818は、動作パターン記憶部802から入力される動作計画が記述する移動経路と、経路推定部816から入力される計算された移動経路と、動作計画が記述する移動経路へ復帰するまでの時間に基づいて、計算された移動経路の補正量を計算する。計算された移動経路の補正量は、評価関数としてロボット610の方向偏差の時間変化率の絶対値の積算値と、ロボット610の位置偏差の自乗の積算値とを考慮し、それらの評価関数を最小化する移動経路が実現されるように計算される。移動経路の補正量が計算されると、補正量計算部818は、車輪622a、622bの回転に関する動作パターンの補正量を計算する。計算された動作パターンの補正量は、経路補正部804へ入力される。   The correction amount calculation unit 818 returns to the travel route described by the motion plan input from the motion pattern storage unit 802, the calculated travel route input from the route estimation unit 816, and the travel route described by the motion plan. The correction amount of the calculated movement route is calculated based on the time until. The calculated amount of correction of the moving path takes into consideration the integrated value of the absolute value of the time change rate of the direction deviation of the robot 610 and the integrated value of the square of the positional deviation of the robot 610 as an evaluation function, and uses these evaluation functions. It is calculated so that the movement path to be minimized is realized. When the correction amount of the movement route is calculated, the correction amount calculation unit 818 calculates the correction amount of the operation pattern related to the rotation of the wheels 622a and 622b. The calculated correction amount of the operation pattern is input to the path correction unit 804.

ロボット610は、動作パターン記憶部802から動作計画を読込み、ビデオカメラ642で撮影される指揮者702からの指示内容に応じて動作パターン更新部806で動作計画を更新し、更新された動作計画に基づいてアクチュエータ群810を駆動して動作を行う。制御部690は、ロボット610が動作をしている間、図9のフローチャートに示す処理を逐次実行し、位置センサ712および方向センサ714から入力される位置および方向を動作計画へ反映する。
以下では図9を参照しながら、ロボット610の制御部690が実行する動作計画の補正の処理について説明する。
The robot 610 reads the motion plan from the motion pattern storage unit 802, updates the motion plan by the motion pattern update unit 806 according to the instruction content from the conductor 702 photographed by the video camera 642, and creates the updated motion plan. Based on this, the actuator group 810 is driven to operate. The control unit 690 sequentially executes the processing shown in the flowchart of FIG. 9 while the robot 610 is operating, and reflects the position and direction input from the position sensor 712 and the direction sensor 714 in the operation plan.
Hereinafter, the operation plan correction process executed by the control unit 690 of the robot 610 will be described with reference to FIG.

ステップS902では、位置センサ712を用いて、ロボット610の位置を計測する。ロボット610の位置は、図6に示す座標系(X, Y)で記述される。   In step S <b> 902, the position of the robot 610 is measured using the position sensor 712. The position of the robot 610 is described in the coordinate system (X, Y) shown in FIG.

ステップS904では、方向センサ714を用いて、ロボット610の方向を計測する。ロボット610の方向は、胴体部670が向いている方向を、図6に示す座標系のX 軸からの傾き角θで記述される。   In step S904, the direction of the robot 610 is measured using the direction sensor 714. The direction of the robot 610 is described by the inclination angle θ from the X axis of the coordinate system shown in FIG.

ステップS906では、エンコーダ710からの入力を用いて、ロボット610の速度を計測する。ロボット610の速度は、車輪622a、622bの回転角度の経時的変化と、車輪622a、622bの直径と、車輪622a、622bの間隔から計算される。   In step S906, the speed of the robot 610 is measured using the input from the encoder 710. The speed of the robot 610 is calculated from the change over time of the rotation angle of the wheels 622a and 622b, the diameter of the wheels 622a and 622b, and the distance between the wheels 622a and 622b.

ステップS908では、ステップS902で計測された位置と、ステップS904で計測された方向と、動作計画が記述する移動経路において対応する時点における位置と方向を比較し、位置と方向のそれぞれについて偏差を計算する。   In step S908, the position measured in step S902, the direction measured in step S904, and the position and direction at the corresponding point in the movement path described by the motion plan are compared, and a deviation is calculated for each of the position and direction. To do.

ステップS910では、計算された偏差を許容範囲を示すしきい値と比較する。計算された位置と方向の偏差のいずれか一方または両方がそれぞれのしきい値を超える場合(ステップS910でYESの場合)、ロボット610の動作計画を補正するために、処理はステップ912へ進む。計算された位置と方向の偏差のいずれもがそれぞれのしきい値以下の場合(ステップS910でNOの場合)、ロボット610の動作計画を補正する必要はないと判断して、処理はステップS918へ進む。   In step S910, the calculated deviation is compared with a threshold value indicating an allowable range. If one or both of the calculated position and direction deviations exceed the respective threshold values (YES in step S910), the process proceeds to step 912 to correct the operation plan of the robot 610. If both the calculated position and direction deviations are equal to or less than the respective threshold values (NO in step S910), it is determined that there is no need to correct the operation plan of robot 610, and the process proceeds to step S918. move on.

ステップS912では、動作計画が記述する移動経路に復帰するまでの時間を決定する。復帰するまでの時間は、ステップS908で計算された偏差と、ステップS906で計測されたロボット610の移動速度 V に基づいて決定される。
上記の復帰するまでの時間は、ステップS908で計算された偏差が大きいほど、大きい値に設定され、ステップS908で計算された偏差が小さいほど、小さい値に設定される。このように移動経路に復帰するまでの時間を設定することによって、ロボット610は動作を急激に変化させることなく、自然な動作で目標とする移動経路へ復帰することができる。
上記の復帰するまでの時間は、ステップS906で計算された移動速度が大きいほど、大きい値に設定され、ステップS906で計算された移動速度が小さいほど、小さい値に設定される。ロボット610が高速で移動している場合、移動経路を急激に変化させると、車輪622a、622bを駆動しているアクチュエータ624a、624bは出力トルクを急激に変化させる必要があり、アクチュエータ624a、624bに大きな負担をかけてしまう。このように目標とする移動経路に復帰するまでの時間を設定することによって、ロボット610はアクチュエータ624a、624bへ大きな負担をかけることなく、自然な動作で目標とする移動経路へ復帰することができる。
In step S912, a time until returning to the movement route described by the operation plan is determined. The time until return is determined based on the deviation calculated in step S908 and the moving speed V of the robot 610 measured in step S906.
The time until returning is set to a larger value as the deviation calculated in step S908 is larger, and is set to a smaller value as the deviation calculated in step S908 is smaller. By setting the time until returning to the movement path in this way, the robot 610 can return to the target movement path with natural movement without suddenly changing the movement.
The time until the return is set to a larger value as the moving speed calculated in step S906 is larger, and is set to a smaller value as the moving speed calculated in step S906 is smaller. When the robot 610 is moving at a high speed, if the movement path is suddenly changed, the actuators 624a and 624b driving the wheels 622a and 622b need to suddenly change the output torque, and the actuators 624a and 624b It puts a big burden. By setting the time until returning to the target movement path in this way, the robot 610 can return to the target movement path with natural movement without placing a heavy burden on the actuators 624a and 624b. .

ステップS914では、計測された位置と方向から動作計画に基づいて移動するときの経路を計算する。またステップS914では、計算された経路を最適な経路へ補正するための補正量を計算する。最適な経路は、上述した評価関数を最小化するように設定される。最適な経路と計算された経路の差分を算出することで、経路の補正量が算出される。   In step S914, a route for moving based on the motion plan is calculated from the measured position and direction. In step S914, a correction amount for correcting the calculated route to an optimum route is calculated. The optimum path is set so as to minimize the above-described evaluation function. By calculating the difference between the optimal route and the calculated route, the route correction amount is calculated.

ステップS916では、ステップS914で計算された経路の補正量に基づいて、車輪622a、622bの回転に関する動作パターンの補正量を計算する。計算された補正量に基づいて、動作パターン更新部806へ入力される動作計画が補正される。   In step S916, based on the route correction amount calculated in step S914, the operation pattern correction amount related to the rotation of the wheels 622a and 622b is calculated. The motion plan input to the motion pattern update unit 806 is corrected based on the calculated correction amount.

ステップS918では、所定の時間が経過するまで待機する。所定時間を待機した後、処理はステップS902へ移行し、上述した処理を繰返し実施する。
上記の一連の処理を繰返し実施することによって、ロボット610は目標とする経路へ自然な動作で復帰することができる。
In step S918, the process waits until a predetermined time has elapsed. After waiting for a predetermined time, the process proceeds to step S902, and the above-described process is repeated.
By repeatedly performing the above-described series of processing, the robot 610 can return to the target route with natural movement.

図10を参照しながら、上記した処理によってロボット610が動作計画が記述する経路へ復帰する様子を説明する。
本実施例のロボット610は、ステップS902において実際の位置1004を計測し、ステップS904において実際の方向1006を計測し、ステップS906において動作計画が記述する経路1002における位置と方向と、計測された位置1004と方向1006の偏差を計算する。ステップS910で動作計画の補正が必要と判断されると、ステップS912で動作計画が記述する経路1002へ復帰するまでの時間を決定し、ステップS914で計測された位置1004と方向1006から動作計画に従って移動するときの経路1008から、動作計画が記述する経路1002へ復帰するまでの最適な経路1010を計算し、計算された最適な経路を実現するように経路の補正量1012を計算する。計算された経路の補正量1012に基づいて、車輪622a、622bの回転に関する動作パターンの補正量を計算し、動作計画を補正する。
The manner in which the robot 610 returns to the path described in the operation plan by the above-described processing will be described with reference to FIG.
The robot 610 of this embodiment measures the actual position 1004 in step S902, measures the actual direction 1006 in step S904, and in step S906, the position and direction in the path 1002 described in the action plan, and the measured position. The deviation between 1004 and direction 1006 is calculated. If it is determined in step S910 that the motion plan needs to be corrected, a time until returning to the path 1002 described in the motion plan is determined in step S912, and according to the motion plan from the position 1004 and the direction 1006 measured in step S914. An optimum route 1010 from the route 1008 when moving to the return to the route 1002 described in the operation plan is calculated, and a route correction amount 1012 is calculated so as to realize the calculated optimum route. Based on the calculated route correction amount 1012, the operation pattern correction amount relating to the rotation of the wheels 622a and 622b is calculated to correct the operation plan.

以上、本発明の実施形態について詳細に説明したが、これらは例示に過ぎず、特許請求の範囲を限定するものではない。例えば、歩容データには、時間と位置で経時的変化を記述する実施例を紹介したが、時間と速度、あるいは時間と加速度の関係で、足先や腕先や体幹の運動の経時的変化を記述してもよい。特許請求の範囲に記載の技術には、以上に例示した具体例を様々に変形、変更したものが含まれる。
また、本明細書または図面に説明した技術要素は、単独であるいは各種の組合わせによって技術的有用性を発揮するものであり、出願時請求項記載の組合わせに限定されるものではない。また、本明細書または図面に例示した技術は複数の目的を同時に達成するものであり、そのうちの一つの目的を達成すること自体で技術的有用性を持つものである
As mentioned above, although embodiment of this invention was described in detail, these are only illustrations and do not limit a claim. For example, in the gait data, an example was described in which changes over time were described in terms of time and position. However, time and speed, or the relationship between time and acceleration, time-dependent movements of feet, arms, and trunk Changes may be described. The technology described in the claims includes various modifications and changes of the specific examples illustrated above.
The technical elements described in this specification or the drawings exhibit technical usefulness alone or in various combinations, and are not limited to the combinations described in the claims at the time of filing. In addition, the technology exemplified in the present specification or the drawings achieves a plurality of objects at the same time, and has technical usefulness by achieving one of them.

図1は脚式ロボット6の歩行の概略を示す図である。(第1実施例)FIG. 1 is a diagram showing an outline of walking of the legged robot 6. (First embodiment) 図2はコントローラ14の機能をブロック化して示す図である。(第1実施例)FIG. 2 is a block diagram showing the functions of the controller 14. (First embodiment) 図3はコントローラ14が実施する処理を説明するフローチャートである。(第1実施例)FIG. 3 is a flowchart for explaining processing performed by the controller 14. (First embodiment) 図4は脚式ロボット6の支持脚の足平配置の推移を示す図である。(第1実施例)FIG. 4 is a diagram showing the transition of the foot placement of the supporting legs of the legged robot 6. (First embodiment) 図5は遊脚足先の軌道を示す図である。(第1実施例)FIG. 5 is a view showing the trajectory of the free leg foot. (First embodiment) 図6はロボット610の動作の概略を示す図である。(第2実施例)FIG. 6 is a diagram showing an outline of the operation of the robot 610. (Second embodiment) 図7はロボット610の概要を正面から見た図である。(第2実施例)FIG. 7 is a view of the outline of the robot 610 as seen from the front. (Second embodiment) 図8は制御部690の機能をブロック化して示す図である。(第2実施例)FIG. 8 is a block diagram showing the functions of the control unit 690. (Second embodiment) 図9は制御部690が実施する処理を説明するフローチャートである。(第2実施例)FIG. 9 is a flowchart for explaining processing performed by the control unit 690. (Second embodiment) 図10はロボット610の動作計画の補正の様子を示す図である。(第2実施例)FIG. 10 is a diagram illustrating how the operation plan of the robot 610 is corrected. (Second embodiment)

符号の説明Explanation of symbols

6・・・脚式ロボット
7,8,9,10・・・足先軌道
12・・・体幹
14・・・コントローラ
18・・・頭部
20・・・右脚
22・・・左脚
210・・・歩容データ記憶部
212・・・関節角群計算部
214・・・アクチュエータ制御部
216・・・ロボットの機械系
218・・・エンコーダ
220・・・頭部位置検出装置
222・・・頭部方向検出装置
224・・・支持脚足平配置計算部
226・・・着地配置計算部
228・・・補正量計算部
230・・・加算器
232・・・体幹歩容計算部
234・・・着地配置修正部
236・・・重心速度計算部
238・・・足平配置比較部
402、404、406、408、410、412、414・・・歩容データが記述する足平配置
416、418、420・・・足平配置
422、424、426、428・・・予定された足平配置
430、432、434・・・補正後の足平配置

602・・・会場
610・・・ロボット
620・・・移動機構
622a、622b・・・車輪
624a、624b・・・アクチュエータ
630a、630b・・・アーム
632a、632b・・・上腕部
634a、634b・・・下腕部
635a、635b・・・アクチュエータ
636a、636b・・・撥
638a、638b・・・関節
640・・・頭部
640a、640b・・・孔
642・・・ビデオカメラ
650・・・首部
652・・・モータ
660・・・太鼓
670・・・胴体部
690・・・制御部
700・・・指揮台
702・・・指揮者
710・・・エンコーダ
712・・・位置センサ
714・・・方向センサ
730・・・指揮棒
802・・・動作パターン記憶部
804・・・経路補正部
806・・・動作パターン更新部
808・・・アクチュエータ制御部
810・・・アクチュエータ群
812・・・指示認識部
814・・・位置・方向比較部
816・・・経路推定部
818・・・補正量計算部
820・・・速度計算部
1002・・・動作計画が記述する移動経路
1004・・・計測された位置
1006・・・計測された方向
1008・・・動作計画に基づいて動作するときの移動経路
1010・・・補正後の移動経路
1012・・・移動経路の補正量
6 ... legged robots 7, 8, 9, 10 ... foot trajectory 12 ... trunk 14 ... controller 18 ... head 20 ... right leg 22 ... left leg 210 ... Gait data storage unit 212 ... Joint angle group calculation unit 214 ... Actuator control unit 216 ... Robot mechanical system 218 ... Encoder 220 ... Head position detection device 222 ... Head direction detecting device 224... Supporting leg foot arrangement calculating unit 226 .. landing arrangement calculating unit 228... Correction amount calculating unit 230... Adder 232 .. trunk gait calculating unit 234. .. Landing arrangement correction unit 236... Gravity center speed calculation unit 238... Foot arrangement comparison unit 402, 404, 406, 408, 410, 412, 414... Foot arrangement 416 described by gait data 418, 420 ... foot arrangement 422, 424, 4 6,428 ... scheduled foot arrangement 430, 432, 434 ... after correction of foot placement

602 ... Venue 610 ... Robot 620 ... Moving mechanisms 622a, 622b ... Wheels 624a, 624b ... Actuators 630a, 630b ... Arms 632a, 632b ... Upper arms 634a, 634b ... Lower arm 635a, 635b ... Actuator 636a, 636b ... repellent 638a, 638b ... joint 640 ... head 640a, 640b ... hole 642 ... video camera 650 ... neck 652 ... Motor 660 ... Taiko 670 ... Body part 690 ... Control part 700 ... Podium 702 ... Conductor 710 ... Encoder 712 ... Position sensor 714 ... Direction sensor 730 ... Commander 802 ... Operation pattern storage unit 804 ... Path correction unit 806 ... Operation pattern update unit 808 Actuator control section 810 ... Actuator group 812 ... Instruction recognition section 814 ... Position / direction comparison section 816 ... Path estimation section 818 ... Correction amount calculation section 820 ... Speed calculation section 1002 ..Movement path 1004 described by the action plan ... Measured position 1006 ... Measured direction 1008 ... Movement path 1010 when operating based on the action plan ... Movement path 1012 after correction ... Movement path correction amount

Claims (5)

歩容データに基づいて歩行するロボットを制御する方法であって、
「実際の支持脚の足平配置」を計測する工程と、
「実際の支持脚の足平配置」に対応する、「歩容データが記述する足平配置経路」における「仮想的な支持脚の足平配置」を特定する工程と、
「実際の支持脚の足平配置」と、「仮想的な支持脚の足平配置」の偏差を計算する工程と、
前記偏差に基づいて、「実際の支持脚の足平配置」から、「歩容データが記述する足平配置経路」へ復帰するまでの歩数を決定する工程と、
「「実際の支持脚の足平配置」から歩容データに基づいて歩行するときの足平配置経路」を、少なくとも前記歩数まで計算する工程と、
「「実際の支持脚の足平配置」から歩容データに基づいて歩行するときの足平配置経路」における「実際の支持脚の足平配置」から前記歩数まで歩行したときの支持脚の足平配置が、「歩容データが記述する足平配置経路」における「仮想的な支持脚の足平配置」から前記歩数まで歩行したときの支持脚の足平配置と一致するように、「「実際の支持脚の足平配置」から歩容データに基づいて歩行するときの足平配置経路」の一歩毎の補正量を計算する工程と、
前記補正量に基づいて歩容データを補正する工程と、
を備えることを特徴とする制御方法。
A method for controlling a walking robot based on gait data,
Measuring the "actual foot placement of the support legs";
A step of identifying “virtual support leg foot placement” in “foot placement path described by gait data” corresponding to “actual support leg foot placement”;
Calculating a deviation between “actual foot placement of support legs” and “virtual foot support placement”;
Based on the deviation, a step of determining the number of steps until returning to the “foot placement path described by the gait data” from “the actual foot placement of the supporting legs”;
A step of calculating “foot placement path when walking based on gait data from“ actual foot placement of supporting legs ”to at least the number of steps;
“Foot placement path when walking based on gait data from“ actual support leg foot placement ”to“ the actual support leg foot placement ”to the above-mentioned number of steps "" So that the flat layout matches the foot layout of the support legs when walking from the "virtual support leg foot layout" in the "foot placement path described by the gait data" to the number of steps. A step of calculating a correction amount for each step from the "actual foot placement of supporting legs" to the foot placement route when walking based on gait data;
Correcting gait data based on the correction amount;
A control method comprising:
ロボットの歩行速度を計測する工程をさらに備え、
前記歩数を決定する工程では、前記偏差と前記歩行速度に基づいて、「歩容データが記述する足平配置経路」へ復帰するまでの歩数を決定することを特徴とする、請求項1の制御方法。
The method further includes a step of measuring the walking speed of the robot,
2. The control according to claim 1, wherein in the step of determining the number of steps, the number of steps until returning to the “foot placement route described by the gait data” is determined based on the deviation and the walking speed. Method.
歩容データに基づいて歩行するロボットであって、
「実際の支持脚の足平配置」を計測する手段と、
「実際の支持脚の足平配置」に対応する、「歩容データが記述する足平配置経路」における「仮想的な支持脚の足平配置」を特定する手段と、
「実際の支持脚の足平配置」と、「仮想的な支持脚の足平配置」の偏差を計算する手段と、
前記偏差に基づいて、「実際の支持脚の足平配置」から、「歩容データが記述する足平配置経路」へ復帰するまでの歩数を決定する手段と、
「「実際の支持脚の足平配置」から歩容データに基づいて歩行するときの足平配置経路」を、少なくとも前記歩数まで計算する手段と、
「「実際の支持脚の足平配置」から歩容データに基づいて歩行するときの足平配置経路」における「実際の支持脚の足平配置」から前記歩数まで歩行したときの支持脚の足平配置が、「歩容データが記述する足平配置経路」における「仮想的な支持脚の足平配置」から前記歩数まで歩行したときの支持脚の足平配置と一致するように、「「実際の支持脚の足平配置」から歩容データに基づいて歩行するときの足平配置経路」の一歩毎の補正量を計算する手段と、
前記補正量に基づいて歩容データを補正する手段と、
を備えることを特徴とするロボット。
A robot that walks based on gait data,
Means for measuring "actual foot placement of support legs";
Means for specifying “virtual support leg foot placement” in “foot placement route described by gait data” corresponding to “actual support leg foot placement”;
Means for calculating a deviation between “actual foot placement of support legs” and “virtual foot support placement”;
Based on the deviation, means for determining the number of steps from the “actual foot placement of the supporting legs” to the return to the “foot placement route described by the gait data”;
Means for calculating "foot placement path when walking based on gait data from" actual support leg foot placement "to at least the number of steps;
“Foot placement path when walking based on gait data from“ actual support leg foot placement ”to“ the actual support leg foot placement ”to the above-mentioned number of steps "" So that the flat layout matches the foot layout of the support legs when walking from the "virtual support leg foot layout" in the "foot placement path described by the gait data" to the number of steps. Means for calculating a correction amount for each step from the actual foot placement of the supporting legs to the foot placement route when walking based on gait data;
Means for correcting gait data based on the correction amount;
A robot characterized by comprising:
動作計画に基づいて移動するロボットを制御する方法であって、
ロボットの「実際の位置と方向」を計測する工程と、
「実際の位置と方向」に対応する、「動作計画が記述する移動経路」における「仮想的な位置と方向」を特定する工程と、
「実際の位置と方向」と、「仮想的な位置と方向」の偏差を計算する工程と、
前記偏差に基づいて、「実際の位置と方向」から、「動作計画が記述する移動経路」へ復帰するまでの時間を決定する工程と、
「「実際の位置と方向」から動作計画に基づいて移動するときの移動経路」を、少なくとも前記時間まで計算する工程と、
「「実際の位置と方向」から動作計画に基づいて移動するときの移動経路」における「実際の位置と方向」から前記時間だけ移動したときのロボットの位置と方向が、「動作計画が記述する移動経路」における「仮想的な位置と方向」から前記時間だけ移動したときのロボットの位置と方向と一致するように、「「実際の位置と方向」から動作計画に基づいて移動するときの移動経路」の補正量を計算する工程と、
計算された補正量に基づいて動作計画を補正する工程と、
を備えることを特徴とする制御方法。
A method for controlling a moving robot based on an operation plan,
Measuring the "actual position and direction" of the robot;
Identifying "virtual position and direction" in "movement path described by the motion plan" corresponding to "actual position and direction";
Calculating a deviation between "actual position and direction" and "virtual position and direction";
Based on the deviation, a step of determining a time from the “actual position and direction” to returning to the “movement path described by the motion plan”;
Calculating a “movement path when moving based on an operation plan from“ actual position and direction ”” until at least the time;
The position and direction of the robot when moving from the “actual position and direction” in the “movement path when moving based on the action plan from the“ actual position and direction ”” for the time described above is described in “the action plan describes. Movement when moving from "Actual position and direction" based on the motion plan so that it matches the position and direction of the robot when moving for the time from "Virtual position and direction" Calculating a correction amount of “route”;
Correcting the motion plan based on the calculated correction amount;
A control method comprising:
動作計画に基づいて移動するロボットであって、
ロボットの「実際の位置と方向」を計測する手段と、
「実際の位置と方向」に対応する、「動作計画が記述する移動経路」における「仮想的な位置と方向」を特定する手段と、
「実際の位置と方向」と、「仮想的な位置と方向」の偏差を計算する手段と、
前記偏差に基づいて、「実際の位置と方向」から、「動作計画が記述する移動経路」へ復帰するまでの時間を決定する手段と、
「「実際の位置と方向」から動作計画に基づいて移動するときの移動経路」を、少なくとも前記時間まで計算する手段と、
「「実際の位置と方向」から動作計画に基づいて移動するときの移動経路」における「実際の位置と方向」から前記時間だけ移動したときのロボットの位置と方向が、「動作計画が記述する移動経路」における「仮想的な位置と方向」から前記時間だけ移動したときのロボットの位置と方向と一致するように、「「実際の位置と方向」から動作計画に基づいて移動するときの移動経路」の補正量を計算する手段と、
計算された補正量に基づいて動作計画を補正する手段と、
を備えることを特徴とするロボット。
A robot that moves based on an action plan,
Means for measuring the "actual position and direction" of the robot;
Means for specifying "virtual position and direction" in "movement path described by the motion plan" corresponding to "actual position and direction";
Means for calculating the deviation between "actual position and direction" and "virtual position and direction";
Based on the deviation, means for determining a time until returning from the “actual position and direction” to the “movement path described by the motion plan”;
Means for calculating “a movement path when moving based on an operation plan from“ actual position and direction ”” at least until the time;
The position and direction of the robot when moving from the “actual position and direction” in the “movement path when moving based on the action plan from the“ actual position and direction ”” for the time described above is described in “the action plan describes. Movement when moving from "Actual position and direction" based on the motion plan so that it matches the position and direction of the robot when moving for the time from "Virtual position and direction" A means for calculating the correction amount of the "route",
Means for correcting the motion plan based on the calculated correction amount;
A robot characterized by comprising:
JP2005193279A 2005-07-01 2005-07-01 Robot and control method thereof Pending JP2007007803A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2005193279A JP2007007803A (en) 2005-07-01 2005-07-01 Robot and control method thereof

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005193279A JP2007007803A (en) 2005-07-01 2005-07-01 Robot and control method thereof

Publications (1)

Publication Number Publication Date
JP2007007803A true JP2007007803A (en) 2007-01-18

Family

ID=37746926

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005193279A Pending JP2007007803A (en) 2005-07-01 2005-07-01 Robot and control method thereof

Country Status (1)

Country Link
JP (1) JP2007007803A (en)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013066996A (en) * 2011-09-07 2013-04-18 Honda Motor Co Ltd Contact state estimating apparatus, and trajectory generation apparatus
JP2015145049A (en) * 2014-02-04 2015-08-13 本田技研工業株式会社 robot
CN110153994A (en) * 2018-02-16 2019-08-23 日本电产三协株式会社 The amendment value calculating method of industrial robot
CN112656402A (en) * 2020-11-30 2021-04-16 重庆优乃特医疗器械有限责任公司 Acquisition robot linkage control system applied to 3D posture detection and analysis
WO2022091367A1 (en) * 2020-10-30 2022-05-05 日本電気株式会社 Moving-body path calculation device
WO2022153842A1 (en) * 2021-01-18 2022-07-21 ソニーグループ株式会社 Moving device and moving device control method

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013066996A (en) * 2011-09-07 2013-04-18 Honda Motor Co Ltd Contact state estimating apparatus, and trajectory generation apparatus
JP2015145049A (en) * 2014-02-04 2015-08-13 本田技研工業株式会社 robot
CN110153994A (en) * 2018-02-16 2019-08-23 日本电产三协株式会社 The amendment value calculating method of industrial robot
WO2022091367A1 (en) * 2020-10-30 2022-05-05 日本電気株式会社 Moving-body path calculation device
CN112656402A (en) * 2020-11-30 2021-04-16 重庆优乃特医疗器械有限责任公司 Acquisition robot linkage control system applied to 3D posture detection and analysis
WO2022153842A1 (en) * 2021-01-18 2022-07-21 ソニーグループ株式会社 Moving device and moving device control method

Similar Documents

Publication Publication Date Title
US7664572B2 (en) Control device of legged mobile robot
US9073209B2 (en) Walking robot and control method thereof
KR101029228B1 (en) Robot, and its control method
US7482775B2 (en) Robot controller
JP5803039B2 (en) Method for controlling walking motion of mobile robot and robot implementing the method
JP5483997B2 (en) Control device for legged mobile robot
US20130079929A1 (en) Robot and control method thereof
US10183712B2 (en) Walking control method, walking control program and biped walking robot
JPH05337849A (en) Attitude stabilization control device for leg type mobile robot
US8805582B2 (en) Robot control apparatus
US20110172823A1 (en) Robot and control method thereof
JP2007007803A (en) Robot and control method thereof
JP4492395B2 (en) Legged robot and its motion control method
JP2010069546A (en) Robot control apparatus, robot control method, and robot control program
CN116619382A (en) Robot motion control method and system and electronic equipment
JP4483254B2 (en) Robot apparatus and control method of robot apparatus
US8761926B2 (en) Apparatus and method for robot control
JP4501601B2 (en) Legged robot, its control method, gait data creation device and creation method
JP2009107032A (en) Legged robot and its control method
JPWO2016159346A1 (en) Leg-type mechanism, walking robot, posture control method and program
JP4696728B2 (en) Legged robot and its control method
JP5163227B2 (en) Mobile robot movement control method and mobile robot
JP4735927B2 (en) Humanoid robot controller
JP2009125838A (en) Biped walking robot and walking control method
JP2007007801A (en) Legged robot and control method thereof