JP2007007797A - Walking robot - Google Patents

Walking robot Download PDF

Info

Publication number
JP2007007797A
JP2007007797A JP2005193273A JP2005193273A JP2007007797A JP 2007007797 A JP2007007797 A JP 2007007797A JP 2005193273 A JP2005193273 A JP 2005193273A JP 2005193273 A JP2005193273 A JP 2005193273A JP 2007007797 A JP2007007797 A JP 2007007797A
Authority
JP
Japan
Prior art keywords
link
robot
upper link
trunk
target
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
JP2005193273A
Other languages
Japanese (ja)
Inventor
Hisayoshi Sugihara
久義 杉原
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 JP2005193273A priority Critical patent/JP2007007797A/en
Publication of JP2007007797A publication Critical patent/JP2007007797A/en
Pending legal-status Critical Current

Links

Images

Abstract

<P>PROBLEM TO BE SOLVED: To provide a robot, performing stable action according to the simple control logic even if a target position of a robot arm or the like is given in real time to the robot operated according to the gait data. <P>SOLUTION: During the robot operation, the target position of the robot arm part is output from a robot operating device 130 in real time. At this time, the center of gravity position of the robot when the trunk link and the leg link are put in the target positions and the arm part is put in the standard position is calculated. Simultaneously, the center of gravity position of the robot when the trunk link and the leg link are put in the target positions and the arm part is put in the target position output from the robot operating device 130 is calculated. The target position of the robot trunk link is corrected by the deviation. Thus, the center of gravity position of the robot is near the center of gravity position when the arm part is put in the standard position to ensure stability. Since ZMP of the robot is not taken into consideration in such a control, the operation can be achieved by simple control logic. <P>COPYRIGHT: (C)2007,JPO&INPIT

Description

本発明は、体幹リンクに脚リンクと上方リンクが揺動可能に連結されている歩行ロボットに関する。   The present invention relates to a walking robot in which a leg link and an upper link are swingably connected to a trunk link.

体幹リンクに脚リンクが揺動可能に連結されており、体幹リンクに対する脚リンクの位置(姿勢)を変化させることによって歩行するロボットが開発されている。
体幹リンクに上肢リンクや頭部リンクといった上方リンクが揺動可能に連結されており、体幹リンクに対する上方リンクの位置(姿勢)を変化させることによって、上肢を振ったり首リンクを傾けたりするロボットが開発されている。ここでいう上方リンクは、体幹リンクに揺動可能に連結されているリンクであり、歩行の際に接地しないリンクをいう。
体幹リンクに脚リンクと上方リンクが揺動可能に連結されているロボットを動作させるには、体幹リンクと脚リンクと上方リンクの目標位置を時系列的に記述するデータを必要とする。なお「上方リンクの目標位置」とは上方リンクを構成する各リンクの、体幹リンクに対する位置と姿勢を決定できる位置の目標値ことである。例えば手先の位置を決めると腕の各リンクの姿勢が決定できる。このとき手先の位置が上方リンクの目標位置となる。
歩行ロボットの場合、ZMP(ゼロモーメントポイント)が接地脚リンクの足平内(両脚で接地している場合には両足平の外周と、両足平の外周に接する2本の共通接線で形成される領域内)に存在しなければならないという条件が必要とされる。体幹リンクと脚リンクと上方リンクの目標位置を時系列的に記述するデータは、そのデータに従ってロボットが動作したときに得られるZMPが、接地脚リンクの足平内に存在するという関係を満たすものになっていなければならない。そうでないとロボットのバランスが確保されず、ロボットが転倒する可能性がある。
A leg link is swingably connected to a trunk link, and a robot that walks by changing the position (posture) of the leg link with respect to the trunk link has been developed.
An upper link such as an upper limb link or a head link is swingably connected to the trunk link, and the upper limb is swung or the neck link is tilted by changing the position (posture) of the upper link with respect to the trunk link. Robots are being developed. Here, the upper link is a link that is swingably connected to the trunk link, and refers to a link that does not come in contact with the body during walking.
In order to operate the robot in which the leg link and the upper link are swingably connected to the trunk link, data that describes the target positions of the trunk link, the leg link, and the upper link in time series is required. The “target position of the upper link” is a target value of a position where each link constituting the upper link can determine the position and posture with respect to the trunk link. For example, when the position of the hand is determined, the posture of each link of the arm can be determined. At this time, the position of the hand becomes the target position of the upper link.
In the case of a walking robot, the ZMP (Zero Moment Point) is the area formed by the foot of the grounded leg link (when both legs are grounded, the outer circumference of both feet and two common tangents that touch the outer circumference of both feet) The condition that it must be present in) is required. Data that describes the target positions of the trunk link, leg link, and upper link in chronological order satisfies the relationship that the ZMP obtained when the robot moves according to the data exists in the foot of the grounded leg link Must be. Otherwise, the balance of the robot is not secured and the robot may fall down.

特許文献1に、脚リンクと上方リンクの目標位置を時系列的に記述するデータが与えられたときに、ZMPが接地脚リンクの足平内に存在するという関係を満たすことができる体幹リンクの目標位置の時系列データを計算する技術が開示されている。この技術では、体幹リンクの目標位置を仮定し、脚リンクと上方リンクを与えられた目標位置に一致させる動作を実現するときのZMPを計算し、計算されたZMPが接地脚リンクの足平内に存在するという関係を満たす体幹リンクの目標位置を探索する。探索過程では、体幹リンクの目標位置を修正してからZMPを計算し、計算されるZMPが接地脚リンクの足平内からはみ出す場合には、体幹リンクの目標位置をさらに修正するという計算を繰返す。   Patent Document 1 gives the trunk link that can satisfy the relationship that the ZMP exists in the foot of the grounded leg link when data describing the target positions of the leg link and the upper link in time series is given. A technique for calculating time series data of a target position is disclosed. In this technology, the target position of the trunk link is assumed, and the ZMP is calculated when the movement of matching the leg link and the upper link to the given target position is calculated. The calculated ZMP is calculated in the foot of the grounded leg link. The target position of the trunk link that satisfies the relationship that exists in the search is searched. In the search process, the ZMP is calculated after correcting the target position of the trunk link, and when the calculated ZMP protrudes from the foot of the grounded leg link, the target position of the trunk link is further corrected. Repeat.

特開2003−117858号公報(段落0032、図6、図7)JP 2003-117858 A (paragraph 0032, FIG. 6, FIG. 7)

特許文献1の技術は、上方リンクの運動がZMPに与える影響を加味することから、ロボットを実際に運動させたときのZMPが接地脚リンクの足平内に存在することが高い信頼性で保証されているが、上方リンクの運動まで加味して計算することから必要な計算量が多く、体幹リンクの目標位置を計算するのに時間を要するという問題を備えている。
ロボットを人間にフレンドリーな機械とするために、ジョイスティックなどの入力装置を利用して、上方リンクの運動をリアルタイムで指示したいという要求がある。あるいはロボットに物体位置認識センサを搭載し、「物体を探し、掴み、持ち上げる」動作をロボットに自律的に実行させたいという要求も存在する。
これらの場合、上方リンクの運動を加味して体幹リンクの目標位置を計算するのに時間を要するというのは不利であり、ロボットの動作が緩慢なものにしかできない。
上方リンクの予期せぬ運動(ロボットの動作開始前にはプログラムされていない運動)に対応して、体幹リンクの目標位置を高速に計算する技術が待望されている。
Since the technology of Patent Document 1 takes into account the influence of the movement of the upper link on the ZMP, it is ensured with high reliability that the ZMP when the robot is actually moved is present in the foot of the grounded leg link. However, since the calculation takes into account the movement of the upper link, a large amount of calculation is required, and there is a problem that it takes time to calculate the target position of the trunk link.
In order to make the robot a human-friendly machine, there is a demand for instructing the movement of the upper link in real time using an input device such as a joystick. Alternatively, there is a demand for mounting an object position recognition sensor on a robot and causing the robot to autonomously execute an operation of “finding, grasping and lifting an object”.
In these cases, it is disadvantageous that it takes time to calculate the target position of the trunk link in consideration of the motion of the upper link, and the movement of the robot can only be slow.
There is a need for a technique for calculating the target position of the trunk link at a high speed in response to an unexpected movement of the upper link (a movement that is not programmed before the robot starts moving).

本発明は、上方リンクの予期せぬ運動に対応する体幹リンクの目標位置を高速に計算するために、下記の構成を採用する。
(1)脚リンクの目標位置の時系列データを特定することによって、ロボットの脚の運びを事前に特定する。
(2)その脚の運びから、ZMPが接地脚リンクの足平内に存在するという条件を満たす体幹リンクの目標位置の時系列データを計算する。このとき本来は、上方リンクの目標位置の時系列データを特定しなければ、ZMPが接地脚リンクの足平内に存在するか否かが不明である、しかしながら本発明では、上方リンクは標準位置にあると仮定する。
ここで仮定する上方リンクの標準位置は、体幹リンクに対して固定されているとは限らない。標準位置が時系列的に変化するものであってよい。時系列的に変化するものであっても、事前にわかっているものであればよい。上方リンクの通常の運動を、時系列的に変化する標準位置とすることができる。
(3)上方リンクの実際の位置を取得する。この段階では、上方リンクの運動を指定する入力手段から入力される目標位置を採用してもよいし、実際の位置を計測してもよい。ロボットが自律的に上方リンクを揺動させる場合は、実際の位置を計測する方式が適している。ロボットは、上方リンクの位置を制御装置が出力する目標位置に一致させることから、制御装置が出力する目標位置を実際位置と扱ってもよい。
(4)上方リンクが標準位置(その標準位置が時系列的に変化してもよい)におかれていると仮定すれば、(1)で特定されている脚リンクの目標位置の時系列データを併用することによって、ロボットのバランスを確保するのに必要な体幹リンクの目標位置の時系列データを計算することができる。ここでは、特許文献1に記載の技術等を活用する。
(5)計算して得られる体幹リンクの目標位置の時系列データは、脚リンクを(1)で特定されている目標位置の時系列データに基づいて移動させ、上方リンクを標準位置(その標準位置が時系列的に変化してもよい)においたときに、ロボットのバランスを確保する関係を満たしている。
標準位置が時系列的に変化する場合には、ロボットがバランスを確保する関係を満たす幹リンクの目標位置の時系列データを計算するのに複雑な計算を必要とするが、必要ならオフラインで事前に計算することができるので、この段階で計算量が大きいことは深刻な問題とならない。標準位置が固定されていれば、上方リンクと体幹リンクを合わせてひとつの剛体とみなせるので計算量は少なくてすむ。
(6)本発明では、(5)で計算した体幹リンクと脚リンクの目標位置の時系列データを記憶手段に記憶しておく。
(7)本発明では、上方リンクが標準位置(その標準位置が時系列的に変化してもよい)から外れて揺動することを許容する。例えば、ジョイスティク等を利用して、人間が上方リンクの位置を指定することを許容する。あるいは、物体位置認識センサを搭載したロボットが、物体を掴むために、上方リンクを自律的に揺動させることもある。
(8)上方リンクが標準位置(その標準位置が時系列的に変化してもよい)におかれているときのロボットの重心位置と、上方リンクが標準位置から離脱したときのロボットの重心位置は異なる。そこで本発明では、両者の水平面内偏差を計算する。
(9)ロボットを実際に動作させる場合には、前記(5)で求めて前記(6)で記憶しておいた体幹リンクの目標位置を、前記(8)で求めた水平面内偏差で修正した体幹リンクの目標位置を採用する。
修正した体幹リンクの目標位置を採用することで、上方リンクが標準位置から離脱したときのロボットの重心位置を、バランスが確保されている上方リンクが標準位置におかれているときのロボットの重心位置に近づけることができる。これによって上方リンクが標準位置から離脱した場合であってもロボットのバランスを確保する。
上記の技術では、(7)から(9)の計算量が少なくてすみ、上方リンクの実際の運動に対応する体幹リンクの目標位置を高速に計算することができる。上方リンクの運動をリアルタイムで指示する場合にも無理なく対応することができ、ロボットを機敏に動作させることができる。
本発明は、ロボッットに実際に動作させながら前記(7)の処理を実施する場合に有効であるが、ロボットを実際に動作させるのに先立って前記(7)の処理を実施する場合にも有効である。特に上方リンクの標準位置が固定されている場合には、ロボットを実際に動作させるのに先立って前記(7)の処理を実施することが実際的な意味を持つ。上方リンクの標準位置が固定されていると、前記(5)の計算量が少なくてすむ。前記(7)の処理を実施すると、(8)と(9)が実施可能となる。この場合、前記(7)の上方リンクの動作に対してバランスする体幹リンクの目標位置を少ない計算量で計算することができる。体幹リンクの目標位置を事前に計算する場合でも、計算量を少なくできることは有意義である。
上記の技術では、上方リンクの運動に起因する慣性を計算しない。静的な重心位置を計算するに過ぎない。計算量は少なくてすむ。慣性を考慮しないので正確ではないが、実際にロボットを動作させるとロボットは十分に安定し、無理のない動作が得られる。
体幹リンクの目標位置の修正に対応してロボットが姿勢を変える態様には各種が存在する。脚リンクに存在する膝関節の関節角を修正する態様であってもよいし、体幹リンクの傾斜角を修正する態様であってもよい。
The present invention adopts the following configuration in order to calculate the target position of the trunk link corresponding to the unexpected movement of the upper link at high speed.
(1) By specifying the time series data of the target position of the leg link, the carrying of the robot leg is specified in advance.
(2) The time series data of the target position of the trunk link that satisfies the condition that the ZMP exists in the foot of the grounded leg link is calculated from the movement of the leg. At this time, if time series data of the target position of the upper link is not specified, it is unclear whether or not the ZMP exists in the foot of the grounded leg link. However, in the present invention, the upper link is at the standard position. Assume that there is.
The standard position of the upper link assumed here is not necessarily fixed with respect to the trunk link. The standard position may change in time series. Even if it changes in time series, it only needs to be known in advance. The normal movement of the upper link can be a standard position that changes over time.
(3) The actual position of the upper link is acquired. At this stage, the target position input from the input means for designating the movement of the upper link may be adopted, or the actual position may be measured. When the robot autonomously swings the upper link, a method of measuring the actual position is suitable. Since the robot matches the position of the upper link with the target position output by the control device, the robot may treat the target position output by the control device as the actual position.
(4) Assuming that the upper link is placed at the standard position (the standard position may change in time series), the time series data of the target position of the leg link specified in (1) By using together, it is possible to calculate time-series data of the target position of the trunk link necessary for securing the balance of the robot. Here, the technique described in Patent Document 1 is utilized.
(5) The time-series data of the target position of the trunk link obtained by calculation moves the leg link based on the time-series data of the target position specified in (1), and moves the upper link to the standard position (its The relationship of ensuring the balance of the robot is satisfied when the standard position may be changed in time series).
When the standard position changes in time series, complicated calculation is required to calculate the time series data of the target position of the trunk link that satisfies the relationship in which the robot secures the balance. Therefore, it is not a serious problem that the calculation amount is large at this stage. If the standard position is fixed, the upper link and the trunk link can be regarded as one rigid body, so that the calculation amount can be reduced.
(6) In the present invention, the time series data of the target positions of the trunk link and the leg link calculated in (5) is stored in the storage means.
(7) In the present invention, the upper link is allowed to swing out of the standard position (the standard position may change in time series). For example, a person is allowed to specify the position of the upper link by using a joystick or the like. Alternatively, a robot equipped with an object position recognition sensor may swing the upper link autonomously in order to grasp an object.
(8) The position of the center of gravity of the robot when the upper link is at the standard position (the standard position may change in time series) and the position of the center of gravity of the robot when the upper link is separated from the standard position Is different. Therefore, in the present invention, the deviation in the horizontal plane between the two is calculated.
(9) When the robot is actually operated, the target position of the trunk link obtained in (5) and stored in (6) is corrected with the horizontal plane deviation obtained in (8). The target position of the trunk link is adopted.
By adopting the corrected target position of the trunk link, the position of the center of gravity of the robot when the upper link has departed from the standard position, the robot's center of gravity when the upper link where the balance is secured is placed at the standard position It can be close to the position of the center of gravity. This ensures the balance of the robot even when the upper link is detached from the standard position.
With the above technique, the calculation amount of (7) to (9) can be reduced, and the target position of the trunk link corresponding to the actual movement of the upper link can be calculated at high speed. Even when the movement of the upper link is instructed in real time, it can be handled without difficulty, and the robot can be operated quickly.
The present invention is effective when the process (7) is performed while the robot is actually operated, but is also effective when the process (7) is performed prior to the actual operation of the robot. It is. In particular, when the standard position of the upper link is fixed, it is practical to execute the process (7) before actually operating the robot. If the standard position of the upper link is fixed, the calculation amount of (5) can be reduced. When the process (7) is performed, (8) and (9) can be performed. In this case, the target position of the trunk link that is balanced with respect to the operation of the upper link in (7) can be calculated with a small amount of calculation. Even when the target position of the trunk link is calculated in advance, it is significant that the calculation amount can be reduced.
The above technique does not calculate inertia due to upper link motion. It only calculates the static center of gravity. Less computation is required. Although it is not accurate because inertia is not taken into account, when the robot is actually operated, the robot is sufficiently stable and can be operated without difficulty.
There are various modes in which the robot changes its posture in response to the correction of the target position of the trunk link. The aspect which corrects the joint angle of the knee joint which exists in a leg link may be sufficient, and the aspect which corrects the inclination angle of a trunk link may be sufficient.

本発明の歩行ロボットは、体幹リンクに脚リンクと上方リンクが揺動可能に連結されており、体幹リンクに対する脚リンクの位置(姿勢)を変えることによって歩行し、体幹リンクに対する上方リンクの位置(姿勢)を変えることによって上肢を振ったり首リンクを傾げたりする動作を実行する。
本発明の歩行ロボットは、体幹リンクと脚リンクの目標位置の時系列データを記憶している記憶手段と、ロボット動作中に上方リンクの位置を取得する上方リンク位置取得手段を備えている。本発明の歩行ロボットは、さらに、体幹リンクと脚リンクを記憶手段に記憶されている目標位置におくとともに上方リンクを標準位置においたときのロボットの重心位置と、体幹リンクと脚リンクを記憶手段に記憶されている目標位置におくとともに上方リンクを上方リンク取得手段で取得した位置においたときのロボットの重心位置との水平面内偏差を計算する水平面内偏差計算手段と、記憶手段に記憶されている体幹リンクの目標位置の水平面内位置を水平面内偏差計算手段で計算された水平面内偏差だけ補正する補正手段と、体幹リンクの目標位置の補正されたデータと、記憶手段に記憶されている脚リンクの目標位置のデータによって、体幹リンクと脚リンクの相対姿勢を制御する制御手段を備えている。
記憶手段に記憶されている体幹リンクと脚リンクの目標位置の時系列データは、上方リンクを標準位置においたときにロボットのバランスが確保される関係に設定されている。
In the walking robot of the present invention, the leg link and the upper link are swingably connected to the trunk link, and the walking robot walks by changing the position (posture) of the leg link with respect to the trunk link, and the upper link to the trunk link. By changing the position (posture), an operation of swinging the upper limb or tilting the neck link is executed.
The walking robot of the present invention includes storage means for storing time series data of target positions of the trunk link and the leg link, and an upper link position acquisition means for acquiring the position of the upper link during the robot operation. The walking robot of the present invention further includes the position of the center of gravity of the robot when the trunk link and the leg link are placed at the target position stored in the storage means and the upper link is at the standard position, the trunk link and the leg link. Horizontal plane deviation calculating means for calculating a horizontal plane deviation from the center of gravity of the robot when the upper link is placed at the position acquired by the upper link acquiring means while being placed at the target position stored in the storage means, and stored in the storage means Correction means for correcting the position in the horizontal plane of the target position of the trunk link, which is calculated by the horizontal plane deviation calculated by the horizontal plane deviation calculation means, corrected data of the target position of the trunk link, and storage in the storage means Control means for controlling the relative posture of the trunk link and the leg link is provided according to the target position data of the leg link.
The time-series data of the target positions of the trunk link and the leg link stored in the storage means is set so as to ensure the balance of the robot when the upper link is at the standard position.

本発明の歩行ロボットは、体幹リンクと脚リンクの目標位置の時系列データを記憶している。体幹リンクと脚リンクを記憶されている目標位置に一致させれば、歩行ロボットは歩行する。このとき、上方リンクが標準位置におかれている限り、ZMPが接地脚リンクの足平内に存在するという条件を満たす時系列データが記憶されている。
ロボットが実際に動作する場合には上方リンクが標準位置から離脱する。この結果、上方リンクが標準位置におかれているときのロボットの重心位置と、上方リンクが標準位置から離脱したときのロボットの重心位置は変化し、それに対策しなければ上方リンクが標準位置から離脱したことによってロボットのバランスが崩れることがありえる。そこで、本発明の歩行ロボットは、上方リンクが標準位置から離脱したことによって生じる重心位置の水平面内の移動量(水平面内偏差)を計算する。
本発明の歩行ロボットは、上方リンクを標準位置から離脱させたことによってロボットのバランスが崩れることに対策するために、水平面内偏差分だけ体幹リンクの目標位置を補正する。
本技術を実際に検証してみると、上方リンクを標準位置から離脱するように揺動させてもロボットのバランスが崩れることが防止される。しかも、上方リンクの位置(姿勢)が決まってから、体幹リンクの目標位置を補正するまでの計算量が少なくてすみ、極めて短時間のうちに体幹リンクの目標位置の補正値を計算できることが確認された。上方リンクの位置(姿勢)をリアルタイムで指示する場合でも、あるいはロボットが自律的に上方リンクを揺動させる場合でも、ロボットは機敏に動作することができる。
The walking robot of the present invention stores time-series data of target positions of trunk links and leg links. If the trunk link and the leg link are matched with the stored target position, the walking robot walks. At this time, as long as the upper link is in the standard position, time series data that satisfies the condition that the ZMP exists in the foot of the grounded leg link is stored.
When the robot actually operates, the upper link leaves the standard position. As a result, the position of the center of gravity of the robot when the upper link is at the standard position and the position of the center of gravity of the robot when the upper link is removed from the standard position change. The balance of the robot may be lost due to the withdrawal. Therefore, the walking robot of the present invention calculates the amount of movement (horizontal plane deviation) of the center of gravity position that occurs when the upper link leaves the standard position.
The walking robot of the present invention corrects the target position of the trunk link by a deviation in the horizontal plane in order to prevent the balance of the robot from being lost due to the upper link being separated from the standard position.
When this technology is actually verified, the balance of the robot is prevented from being lost even if the upper link is swung away from the standard position. Moreover, the amount of calculation from the determination of the position (posture) of the upper link to the correction of the target position of the trunk link can be reduced, and the correction value of the target position of the trunk link can be calculated in a very short time. Was confirmed. Even when the position (posture) of the upper link is indicated in real time or when the robot autonomously swings the upper link, the robot can move quickly.

上方リンクの標準位置は、体幹リンクに対して時系列的に変化するものであってもよいが、体幹リンクに対して固定されていることが好ましい。
標準位置が固定されていれば、ロボットのバランスを確保するのに必要な体幹リンクの目標位置の時系列データを簡単に計算することができる。ロボットの動作時には、上方リンクが標準位置から離脱するが、標準位置から離脱すれば、それに応じて体幹リンクの目標位置が補正されるので、体幹リンクの目標位置を事前に計算しておく段階では、上方リンクを体幹リンクに対して固定しておいても問題はない。
The standard position of the upper link may change in time series with respect to the trunk link, but is preferably fixed with respect to the trunk link.
If the standard position is fixed, the time series data of the target position of the trunk link necessary for securing the balance of the robot can be easily calculated. When the robot is operating, the upper link leaves the standard position. If the upper link leaves the standard position, the target position of the trunk link is corrected accordingly, so the target position of the trunk link is calculated in advance. At the stage, there is no problem even if the upper link is fixed to the trunk link.

上方リンクの動作を指定するために用いる入力手段を備えていることが好ましい。この場合、上方リンク位置取得手段は、この入力手段から入力した上方リンクの目標位置を取得するものであればよい。上方リンクの目標位置が指定されれば、ロボットの制御装置が指定された目標位置に上方リンクを位置することから、目標位置と実際位置が略等しいとしてよいからである。
本発明は、ロボットを動作させながら上方リンクの動作を指定する場合に極めて有効であり、リアルタイムで上方リンクの動作を指定しながらロボットを機敏に動作させることができる。
上方リンクの動作を指定するために用いる入力手段には特に制約がなく、ジョイスティック、カーソル、ボタン、マウスなどの入力装置を利用することができる。
It is preferable to provide an input means used to specify the operation of the upper link. In this case, the upper link position acquisition means only needs to acquire the target position of the upper link input from the input means. This is because if the target position of the upper link is designated, the target position and the actual position may be substantially equal because the robot control device positions the upper link at the designated target position.
The present invention is extremely effective when the operation of the upper link is specified while operating the robot, and the robot can be operated quickly while specifying the operation of the upper link in real time.
There are no particular restrictions on the input means used to specify the operation of the upward link, and input devices such as a joystick, cursor, button, and mouse can be used.

上方リンクの位置を取得するために、体幹リンクと上方リンク間の関節角を計測する関節角計測手段を備え、この関節角計測手段の計測値から上方リンクの位置を取得するようにしてもよい。この場合、上方リンクの実際位置を比較的簡単に取得することができる。ここで「体幹リンクと上方リンク間の関節角」とは、上方リンクを構成する複数のリンクについて、隣接するリンクを連結する関節の角度、および上方リンクのうちのいずれかのリンクと体幹リンクを連結する関節の角度、のことをいう。
上方リンクは、上記した入力手段から入力される指令にもとづいて位置を変えるものであってもよい。あるいは、ロボット自身がカメラと画像処理装置を備え、物体の位置を認識し、その物体に向けて上方リンクを移動させるようにプログラムされていてもよい。ロボットが自律的に上方リンクを揺動させるようにプログラムされている場合には、上方リンクの位置を計測する方式が有利である。
In order to acquire the position of the upper link, a joint angle measuring unit that measures the joint angle between the trunk link and the upper link is provided, and the position of the upper link may be acquired from the measurement value of the joint angle measuring unit. Good. In this case, the actual position of the upper link can be obtained relatively easily. Here, the “joint angle between the trunk link and the upper link” refers to the angle of the joint that connects adjacent links, and the link and trunk of any of the upper links. The angle of the joint that connects the links.
The upper link may change its position based on a command input from the input means described above. Alternatively, the robot itself may be provided with a camera and an image processing device, and may be programmed to recognize the position of the object and move the upper link toward the object. When the robot is programmed to autonomously swing the upper link, a method of measuring the position of the upper link is advantageous.

ロボットが上方リンクで物体を把持する動作を実行することがある。この場合、上方リンクで物体を把持する動作を指定するために用いる入力手段を備えており、水平面内偏差計算手段は、体幹リンクと脚リンクを記憶手段に記憶されている目標位置におくとともに上方リンクを標準位置においたときのロボットの重心位置と、体幹リンクと脚リンクを記憶手段に記憶されている目標位置におくとともに上方リンクを上方リンク位置取得手段で取得した位置において物体を把持したときのロボットの重心位置との水平面内偏差を計算する。   The robot may perform an operation of gripping an object with an upper link. In this case, input means used for designating an operation of gripping an object with the upper link is provided, and the horizontal plane deviation calculating means places the trunk link and the leg link at a target position stored in the storage means. The center of gravity position of the robot when the upper link is in the standard position, the trunk link and the leg link are placed at the target positions stored in the storage means, and the object is gripped at the position acquired by the upper link position acquisition means. The deviation in the horizontal plane from the center of gravity position of the robot is calculated.

ロボットが上方リンクを用いて物体を持ち上げると、上方リンクの姿勢の変化と物体の質量によってロボットの重心位置が変化する。この重心位置の変化を考慮して体幹リンクの目標位置を補正すると、ロボットが物体を持ちあげる際にもバランスを崩すことがないロボットを実現できる。   When the robot lifts an object using the upper link, the position of the center of gravity of the robot changes due to the change in the posture of the upper link and the mass of the object. If the target position of the trunk link is corrected in consideration of the change in the center of gravity position, a robot that does not lose its balance even when the robot picks up an object can be realized.

本願発明によれば、上方リンクを揺動させながら歩行するロボットが上方リンクを揺動させてもバランスを崩すことがない体幹目標位置を少ない計算量で高速に計算することが可能となる。上方リンクの位置(姿勢)をリアルタイムで指定する場合でも、あるいはロボットが自律的に上方リンクを揺動させる場合でも、ロボットがバランスを崩すことがない体幹目標位置を高速に計算することができるために、ロボットを機敏に動作させることができる。   According to the present invention, it is possible to calculate the trunk target position at a high speed with a small amount of calculation without causing the balance to be lost even when the robot walking while swinging the upper link swings the upper link. Whether the upper link position (posture) is specified in real time or when the robot autonomously swings the upper link, the trunk target position where the robot does not lose the balance can be calculated at high speed. Therefore, the robot can be operated quickly.

実施例の主要な特徴を列記する。
(第1形態)体幹リンクと腰リンクに分離されており、腰リンクに対する体幹リンクの揺動角を変化することによって、上肢リンクの揺動に起因する重心位置の変化を相殺する。
The main features of the examples are listed.
(1st form) It is isolate | separated into the trunk link and the waist link, The change of the gravity center position resulting from the rocking | fluctuation of an upper limb link is canceled by changing the rocking | fluctuation angle of the trunk link with respect to a waist link.

図面を参照して実施例を詳細に説明する。
<実施例1>
図1、図2および図5、図6を用いて本発明の実施例1を説明する。
まず図5(A)に脚式ロボットのリンク構成の概要を説明する。図5(A)はロボット100本体の正面図である。ロボットは複数のリンクと、隣接するリンクを相互に揺動可能に連結する関節から構成される。このロボット100は、人間の胴体に相当する体幹リンク40、腰に相当する腰リンク42、右腕部44R、左腕部44L、右脚部46R、左脚部46Lそして頭部リンク48で構成される。右腕部44R、左腕部44L、右脚部46R、左脚部44Lは夫々複数のリンクから構成されている。右脚部46Rの先端に取り付けられているリンクが右足平リンク52Rである。左脚部46Lの先端には左足平リンク52Lが取り付けられている。ここで右腕部44R、左腕部44Lおよび頭部リンク48を合わせたものが上方リンクである。即ち「上方リンク」には複数のリンクが含まれる。そこで「上方リンク」に含まれる隣接するリンクを連結する関節、および右腕部44Rと左腕部44Lとを体幹リンクに連結する関節、頭部リンク48と体幹リンクを連結する関節を合わせて「上方リンクの各関節」と呼ぶことにする。また体幹リンク40と右腕部44Rは肩関節50で揺動可能に連結されている。図4(A)では肩関節50で図示した円と同じ円は全て関節を表す。但し、ひとつの円で複数の関節を表している場合もある。
Embodiments will be described in detail with reference to the drawings.
<Example 1>
A first embodiment of the present invention will be described with reference to FIGS. 1, 2, 5, and 6.
First, the outline of the link configuration of the legged robot will be described with reference to FIG. FIG. 5A is a front view of the main body of the robot 100. The robot includes a plurality of links and joints that connect adjacent links so as to be able to swing with each other. The robot 100 includes a trunk link 40 corresponding to a human torso, a waist link 42 corresponding to a waist, a right arm portion 44R, a left arm portion 44L, a right leg portion 46R, a left leg portion 46L, and a head link 48. . Each of the right arm portion 44R, the left arm portion 44L, the right leg portion 46R, and the left leg portion 44L includes a plurality of links. The link attached to the tip of the right leg 46R is the right foot link 52R. A left foot link 52L is attached to the tip of the left leg 46L. Here, a combination of the right arm portion 44R, the left arm portion 44L and the head link 48 is an upper link. That is, the “upward link” includes a plurality of links. Therefore, a joint that connects adjacent links included in the “upper link”, a joint that connects the right arm portion 44R and the left arm portion 44L to the trunk link, and a joint that connects the head link 48 and the trunk link are combined together. These will be referred to as “upper link joints”. In addition, the trunk link 40 and the right arm portion 44R are connected by a shoulder joint 50 so as to be swingable. In FIG. 4A, the same circle as the circle illustrated for the shoulder joint 50 represents a joint. However, a single circle may represent a plurality of joints.

図1は本発明によるロボット制御装置10aとロボット本体100のブロック図である。まずロボット制御装置10aとロボット本体100が有するモジュール(決められた処理を行う処理部、または特定のデータを記憶する記憶部)の構成を説明し、その後各モジュールの詳細を説明する。
このロボット制御装置10aは体幹リンクと脚リンクの目標位置の時系列データを含む歩容データを記憶する歩容データ記憶部20を備える。また歩容データ記憶部20から体幹リンクと脚リンクの目標位置の時系列データを読み出し、この目標位置を脚部に備えられた各関節の角度に変換する逆変換部22aを備える。逆変換部22aから出力される脚部の各関節の角度を用い、上方リンクを標準位置(「標準位置」については後述する)においたときのロボットの重心位置を算出する標準重心位置算出部24を備える。また、歩容データ記憶部20から体幹リンクと脚リンクの目標位置の時系列データを読み出すと同時に、ロボット操作装置130から出力されるロボットの上方リンクの目標位置を取得してロボットに備えられた全ての関節の角度を出力する逆変換部22bを備える。逆変換部22bから出力されたロボットの全ての関節の角度からロボットの重心位置を算出する実重心位置算出部26を備える。
ロボット制御装置10aはまた、標準重心位置算出部24で算出された重心位置と実重心位置算出部26で算出された重心位置との水平面内の偏差を求める偏差算出部32を備える。この水平面内の偏差が体幹リンク目標位置に対する補正量のベースとなる。さらに歩容データ記憶部20から読み出された体幹リンクと脚リンクの目標位置の時系列データと、偏差算出部32で算出された水平面内偏差(すなわち体幹リンク目標位置の水平面内の補正量)と、ロボット操作装置130から出力されるロボット上方リンクの目標位置とを加算する加算部30と、加算された目標位置をロボットの各関節の目標関節角に変換する逆変換部22c、および変換された目標関節角にロボットの各関節の角度が追従するように各関節に備えられたアクチュエータ110を制御するアクチュエータ駆動部28を備える。
FIG. 1 is a block diagram of a robot controller 10a and a robot body 100 according to the present invention. First, the configuration of modules (a processing unit that performs a predetermined process or a storage unit that stores specific data) included in the robot control apparatus 10a and the robot main body 100 will be described, and then the details of each module will be described.
The robot control apparatus 10a includes a gait data storage unit 20 that stores gait data including time-series data of target positions of the trunk link and the leg link. In addition, a time-series data of the target positions of the trunk link and the leg link is read from the gait data storage unit 20, and an inverse conversion unit 22a that converts the target position into an angle of each joint included in the leg is provided. A standard center-of-gravity position calculation unit 24 that calculates the center-of-gravity position of the robot when the upper link is placed at a standard position (“standard position” will be described later) using the angles of the joints of the legs output from the inverse conversion unit 22a. Is provided. In addition, the time series data of the target positions of the trunk link and the leg link are read from the gait data storage unit 20 and at the same time, the target position of the upper link of the robot output from the robot operation device 130 is acquired to be provided in the robot. Further, an inverse conversion unit 22b that outputs angles of all the joints is provided. An actual center-of-gravity position calculation unit 26 that calculates the center-of-gravity position of the robot from the angles of all the joints of the robot output from the inverse conversion unit 22b is provided.
The robot control apparatus 10a also includes a deviation calculation unit 32 that obtains a deviation in the horizontal plane between the gravity center position calculated by the standard gravity center position calculation unit 24 and the gravity center position calculated by the actual gravity center position calculation unit 26. The deviation in the horizontal plane is the base of the correction amount for the trunk link target position. Further, time-series data of the target positions of the trunk link and the leg link read from the gait data storage unit 20 and the horizontal plane deviation calculated by the deviation calculation unit 32 (that is, correction of the trunk link target position in the horizontal plane). Amount) and the target position of the robot upper link output from the robot operation device 130, an inverse conversion unit 22c for converting the added target position into a target joint angle of each joint of the robot, and An actuator drive unit 28 that controls the actuator 110 provided in each joint is provided so that the angle of each joint of the robot follows the converted target joint angle.

ロボット本体100には、各関節を駆動するアクチュエータ110と、ロボットの手先に取り付けられた力センサ120を備える。なお、力センサ120は本実施例1では利用せず、後に実施例4で利用するのでここでは説明を省略する。
またロボット操作装置130は、ロボットの上方リンクの動作を指定する装置である。例えばロボットの手先を希望する位置に動かしたり、頭部リンクを左右に振らせたりすることができる。そのような動作をさせるために、ロボット操作装置130はロボットの手先や頭部リンクに対して目標位置を出力する。ロボット操作装置130の具体例としては、ジョイスティックやボタン、マウスなどで構成される。
The robot body 100 includes an actuator 110 that drives each joint and a force sensor 120 attached to the hand of the robot. Note that the force sensor 120 is not used in the first embodiment, but is used in the fourth embodiment later, and thus the description thereof is omitted here.
The robot operation device 130 is a device that designates the operation of the upper link of the robot. For example, the hand of the robot can be moved to a desired position, or the head link can be swung left and right. In order to perform such an operation, the robot operation device 130 outputs a target position to the hand or head link of the robot. Specific examples of the robot operation device 130 include a joystick, buttons, and a mouse.

次に各モジュールについて詳細を説明する。
歩容データ記憶部20に記憶されている歩容データとは、体幹リンクの目標位置の時系列データ、両脚リンク(脚リンクは複数のリンクで構成されているが、以下単に脚リンクと称す)の目標位置の時系列データを合わせたデータをいう。両脚先端の足平リンクに代表点が設定されており、脚リンクの目標位置とはこの足平リンク代表点の目標位置である。なお、「体幹リンクの目標位置」には、体幹リンクの所定の位置に設定された代表点の3次元空間での位置と体幹リンクの姿勢角とが含まれる。「脚リンクの目標位置」には足平リンク代表点の3次元空間での位置と足平リンクの姿勢角とが含まれる。また歩容データには上方リンクの目標位置の時系列データが含まれていてもよい。上方リンクの目標位置とは両手先リンクに設定された代表点の目標位置および頭部リンクに設定された代表点の目標位置である。ここで「目標位置」には上記と同様に3次元空間の位置と、代表点が設定されているリンクの姿勢角とを含む。歩容データ記憶部20に記憶された歩容データは、ロボットを制御する前に作成されている。
Next, details of each module will be described.
The gait data stored in the gait data storage unit 20 is the time-series data of the target position of the trunk link, both leg links (the leg link is composed of a plurality of links, but is simply referred to as a leg link hereinafter). ) Is a combination of time-series data of target positions. A representative point is set for the foot link at the tip of both legs, and the target position of the leg link is the target position of this foot link representative point. The “target position of the trunk link” includes the position of the representative point set at a predetermined position of the trunk link in the three-dimensional space and the posture angle of the trunk link. The “target position of the leg link” includes the position of the foot link representative point in the three-dimensional space and the posture angle of the foot link. The gait data may include time series data of the target position of the upper link. The target position of the upper link is the target position of the representative point set for the two-hand link and the target position of the representative point set for the head link. Here, the “target position” includes the position in the three-dimensional space and the posture angle of the link where the representative point is set in the same manner as described above. The gait data stored in the gait data storage unit 20 is created before the robot is controlled.

歩容データは、ロボットに歩行動作を行わせる際に、ZMPが接地脚の足平内(両脚で接地している場合には両足平の外周と、両足平の外周に接する2本の共通接線で形成される領域内)に存在するという条件を満足するように(即ちロボットのバランスが確保されるように)、体幹リンク、脚リンク及び上方リンクの目標位置の時系列データが作成される。このとき、上方リンクが所定の動作を行うように上方リンクの目標位置が時々刻々と変化する時系列データを作成しても良いし、体幹リンクに対する上方リンクの相対位置を固定し、体幹リンクと脚リンクの目標位置の時系列データを作成しても良い。ロボットを実際に動作させる際に上方リンクの目標位置を与えることを前提とするからである。ここで、上方リンクの時系列データを作成する場合には歩容データには体幹リンク、脚リンク及び上方リンクの目標位置の時系列データが含まれる。体幹リンクに対する上方リンクの相対位置を固定して体幹リンクと脚リンクの目標位置の時系列データを作成した場合には歩容データには体幹リンクと脚リンクの目標位置の時系列データが含まれ、上方リンクの目標位置の時系列データは含まなくともよい。ここで、上方リンクの目標位置の時系列データを作成した場合の上方リンクの目標位置又は体幹リンクに対して上方リンクの相対位置を固定した場合の上方リンクの位置を「上方リンクの標準位置」と呼ぶことにする。
なお、歩容データには上方リンクを標準位置としたときのロボットの重心位置の時系列データを含むことも好適である。歩容データに上方リンクを標準位置としたときのロボットの重心位置の時系列データを含む場合、図1のブロック図において、逆変換部22a、標準重心位置算出部24は不要となりロボット制御装置10aが簡略化できるからである。この場合、歩容データ記憶部20から上方リンクを標準位置としたときのロボットの重心位置の時系列データを直接偏差算出部32へ送るように構成する。
The gait data consists of two common tangent lines that touch the outer circumference of both feet and the outer circumference of both feet when ZMP is in the foot of the grounding leg (when both legs are grounded) The time series data of the target positions of the trunk link, the leg link, and the upper link is created so as to satisfy the condition of being within the region to be formed (that is, to ensure the balance of the robot). At this time, time series data in which the target position of the upper link changes every moment so that the upper link performs a predetermined operation may be created, or the relative position of the upper link with respect to the trunk link is fixed, and the trunk You may create the time series data of the target position of a link and a leg link. This is because it is assumed that the target position of the upper link is given when the robot is actually operated. Here, when creating time-series data of the upper link, the gait data includes time-series data of the target positions of the trunk link, the leg link, and the upper link. When the time series data of the target position of the trunk link and the leg link is created by fixing the relative position of the upper link to the trunk link, the time series data of the target position of the trunk link and the leg link is included in the gait data. And the time-series data of the target position of the upper link may not be included. Here, when the time series data of the target position of the upper link is created, the target position of the upper link or the position of the upper link when the relative position of the upper link is fixed with respect to the trunk link is referred to as “standard position of the upper link”. I will call it.
It is preferable that the gait data includes time series data of the center of gravity position of the robot when the upper link is the standard position. When the gait data includes time-series data of the center of gravity position of the robot when the upper link is the standard position, the inverse conversion unit 22a and the standard center of gravity position calculation unit 24 are not necessary in the block diagram of FIG. This is because it can be simplified. In this case, the time series data of the center of gravity position of the robot when the upper link is set as the standard position from the gait data storage unit 20 is directly sent to the deviation calculation unit 32.

逆変換部22a、22b、22cは、体幹リンク目標位置、脚リンク目標位置および上方リンク目標位置をロボットの各関節の角度へ変換するモジュールである。図1では3つの逆変換部が記載されているが、これはロボット制御装置10aの構造を理解しやすくするために便宜上分けて記載したものであって、実際には1つのモジュールでそれぞれの逆変換を行うように構成しても良い。逆変換部がサブルーチンプログラムとして構成されている場合は、必要に応じて、入力するロボット代表点の値を指定して逆変換部サブルーチンを呼び出すように構成することも好適である。なお、上方リンクの位置については体幹リンクに固定されているものとして歩容データが作成された場合、歩容データには上方リンクの目標位置は含まれない場合がある。その場合は逆変換部22a内に、歩容データ作成時の体幹リンクに固定された上方リンクの位置が記憶されている。逆変換部22aはこの記憶された上方リンクの位置を用いて上方リンクの各関節の角度を算出する。さらに、上方リンクの位置は体幹リンクに固定されているものとして歩容データが作成された場合、上方リンクの各関節の角度は一定である。逆変換部22aはこの上方リンクの各関節の角度を記憶しておくことも好ましい。上方リンクの各関節の角度を記憶していれば、上方リンクについてはその標準位置から各関節への逆変換計算を不要とすることができるからである。   The inverse conversion units 22a, 22b, and 22c are modules that convert the trunk link target position, the leg link target position, and the upper link target position into angles of each joint of the robot. In FIG. 1, three inverse conversion units are described, but these are shown separately for convenience in order to facilitate understanding of the structure of the robot control device 10a. You may comprise so that conversion may be performed. When the inverse conversion unit is configured as a subroutine program, it is preferable that the inverse conversion unit subroutine is called by designating the value of the robot representative point to be input as necessary. When the gait data is created assuming that the position of the upper link is fixed to the trunk link, the target position of the upper link may not be included in the gait data. In that case, the position of the upper link fixed to the trunk link at the time of creating the gait data is stored in the inverse conversion unit 22a. The inverse conversion unit 22a calculates the angle of each joint of the upper link using the stored position of the upper link. Further, when the gait data is created assuming that the position of the upper link is fixed to the trunk link, the angle of each joint of the upper link is constant. It is also preferable that the inverse conversion unit 22a stores the angle of each joint of the upper link. This is because if the angle of each joint of the upper link is stored, the inverse link calculation from the standard position to each joint can be made unnecessary for the upper link.

標準重心位置算出部24には、歩容データから逆変換部22aによって変換された各関節の角度が入力される。各関節の角度がわかれば各関節で連結されている各リンク相互の相対位置関係も算出できる。そして標準重心算出部24には各リンクの質量が記憶されており各リンク相互の位置関係および各リンクの質量からロボット全体の、歩容データに基づく重心位置を算出する。すなわち体幹リンクと脚リンクを目標位置におくとともに上方リンクを標準位置においたときのロボットの重心位置を算出する。ここで、上方のリンクが体幹リンクに固定されているものとして歩容データが作成されている場合、上方リンクと体幹リンクは一つの剛体とみなせる。標準重心算出部24は、上方リンクと体幹リンクを合わせて一つの剛体とみなした場合のその剛体の重心位置を記憶しておくことも好ましい。これにより体幹リンクと脚リンクを目標位置におくとともに上方リンクを標準位置においたときのロボットの重心位置の算出を簡略化することができる。   The angle of each joint converted from the gait data by the inverse conversion unit 22a is input to the standard gravity center position calculation unit 24. If the angle of each joint is known, the relative positional relationship between the links connected by each joint can also be calculated. The standard center-of-gravity calculation unit 24 stores the mass of each link, and calculates the position of the center of gravity based on the gait data of the entire robot from the positional relationship between the links and the mass of each link. That is, the center-of-gravity position of the robot when the trunk link and the leg link are set at the target position and the upper link is set at the standard position is calculated. Here, when the gait data is created assuming that the upper link is fixed to the trunk link, the upper link and the trunk link can be regarded as one rigid body. The standard center-of-gravity calculation unit 24 preferably stores the center-of-gravity position of the rigid body when the upper link and the trunk link are regarded as one rigid body. As a result, it is possible to simplify the calculation of the position of the center of gravity of the robot when the trunk link and the leg link are at the target position and the upper link is at the standard position.

逆変換部22bは、ロボット操作装置130から取得したロボットの上方のリンクの目標位置と、歩容データ記憶部20から読み出した体幹リンクと脚リンクの目標位置のデータ(歩容データ)からロボットの各関節の角度に逆変換する。
実重心位置算出部26は、逆変換部22bにより逆変換されたロボットの各関節の角度に基づいてロボットの重心位置を算出する。ロボット操作装置130から上方リンクの目標位置が取得されている場合、上方リンクの目標位置は標準位置とは異なるものとなる。従って標準重心位置算出部24で算出されたロボットの重心位置と、実重心位置算出部26で算出されたロボットの重心位置とは異なるものとなる。
The inverse conversion unit 22b determines the robot from the target position of the upper link of the robot acquired from the robot operation device 130 and the data (gait data) of the target positions of the trunk link and the leg link read from the gait data storage unit 20. Convert back to the angle of each joint.
The actual center-of-gravity position calculation unit 26 calculates the center-of-gravity position of the robot based on the angle of each joint of the robot inversely converted by the inverse conversion unit 22b. When the target position of the upper link is acquired from the robot operation device 130, the target position of the upper link is different from the standard position. Therefore, the center-of-gravity position of the robot calculated by the standard center-of-gravity position calculation unit 24 and the center-of-gravity position of the robot calculated by the actual center-of-gravity position calculation unit 26 are different.

偏差算出部32は、標準重心位置算出部24で算出された上方リンクが標準位置にあるときのロボットの重心位置と、実重心位置算出部26で算出された上方リンクがその目標位置にあるときのロボットの重心位置との水平面内の差(水平面内偏差)を求める。具体的には両者のロボット重心位置の座標値を水平面に投射する。そして上方リンクが標準位置にあるときのロボットの重心位置の水平面内座標値から、上方リンクがロボット操作装置130から取得した目標位置にあるときのロボットの重心位置の水平面内座標値を減算する。これにより、上方リンクがその目標位置にあるときのロボットの重心位置から上方リンクが標準位置にあるときのロボットの重心位置へ向けた水平面内のベクトルが算出される。このベクトルが水平面内偏差となる。またこのベクトル量が体幹リンク目標位置の補正量ともなる   When the upper link calculated by the standard center-of-gravity position calculation unit 24 is at the standard position and the upper link calculated by the actual center-of-gravity position calculation unit 26 is at the target position, the deviation calculation unit 32 The difference in the horizontal plane (deviation in the horizontal plane) from the center of gravity position of the robot is obtained. Specifically, the coordinate values of the positions of the center of gravity of both robots are projected onto a horizontal plane. Then, the coordinate value in the horizontal plane of the center of gravity of the robot when the upper link is at the target position acquired from the robot operation device 130 is subtracted from the coordinate value in the horizontal plane of the center of gravity of the robot when the upper link is at the standard position. Thereby, a vector in a horizontal plane from the center of gravity position of the robot when the upper link is at the target position to the position of the center of gravity of the robot when the upper link is at the standard position is calculated. This vector is the horizontal deviation. This vector amount is also the correction amount of the trunk link target position.

加算部30では、歩容データ記憶部20から読み出した歩容データのうち、体幹リンク目標位置の水平方向座標値に偏差算出部32で算出したベクトル(水平面内偏差、即ち補正量)を加算する。即ち体幹リンク目標位置を水平方向に前記ベクトル分だけ補正する。同時に加算部30では、ロボット操作装置130から取得した上方リンクの目標位置を歩容データ記憶部20から読み出した歩容データに加える。
こうして歩容データ記憶装置20から読み出した歩容データに、補正量と上方リンクの目標位置が加えられた後の歩容データがロボット本体100に与える最終的な歩容データとなる。
The adding unit 30 adds the vector (horizontal plane deviation, that is, the correction amount) calculated by the deviation calculating unit 32 to the horizontal coordinate value of the trunk link target position in the gait data read from the gait data storage unit 20. To do. That is, the trunk link target position is corrected in the horizontal direction by the amount of the vector. At the same time, the adding unit 30 adds the target position of the upper link acquired from the robot operation device 130 to the gait data read from the gait data storage unit 20.
Thus, the gait data after the correction amount and the target position of the upper link are added to the gait data read from the gait data storage device 20 becomes the final gait data to be given to the robot body 100.

逆変換部22cでは、上述した最終的な歩容データ、すなわち各代表点の目標位置をロボット本体100の各関節の目標関節角に変換する。各関節の目標関節角は、アクチュエータ駆動部28に送られる。アクチュエータ駆動部28はロボット本体100の各関節の角度を目標関節角に追従させるよう各関節に備えられたアクチュエータ110を駆動する。以上の処理を歩容データ内の各代表点の目標位置の時系列データの各時点ごとに繰り返す。こうしてロボット本体100は、歩容データ記憶装置20から読み出した歩容データに補正量と上方リンクの目標位置が加えられた後の歩容データに追従するように動作する。
なお上述した各モジュールはハードウエアで構成してもよいし、ソフトウエアモジュールとして構成しコンピュータにより処理を実行するよう構成してもよい。また歩行制御装置10aの一部あるいは全部のモジュールはロボット本体100に内蔵されていても良い。
The inverse conversion unit 22 c converts the above-described final gait data, that is, the target position of each representative point into the target joint angle of each joint of the robot body 100. The target joint angle of each joint is sent to the actuator driving unit 28. The actuator driving unit 28 drives the actuator 110 provided in each joint so that the angle of each joint of the robot body 100 follows the target joint angle. The above processing is repeated for each time point of the time series data of the target position of each representative point in the gait data. Thus, the robot body 100 operates to follow the gait data after the correction amount and the target position of the upper link are added to the gait data read from the gait data storage device 20.
Each module described above may be configured by hardware, or may be configured as a software module and executed by a computer. A part or all of the modules of the walking control device 10a may be built in the robot body 100.

次に図2のフローチャート図により処理の流れを説明する。
まずステップS100で歩容データ記憶部20から歩容データを読み込む。同時にステップS102でロボット操作装置130が出力する上方リンクの目標位置を取得する。読み込まれた歩容データはステップS104で各関節の角度に逆変換される。前述したように、歩容データ内に上方リンクの目標位置が含まれる場合はその目標位置を用いて上方リンクの各関節の角度を求める。歩容データ内に上方リンクの目標位置が含まれていない場合は、上方リンクの各関節の角度は夫々一定角度であるとして歩容データが作成されているのでその一定角度を記憶しておけば、上方リンクについては逆変換する必要はない。
ステップS108では、各関節の角度から上方リンクが標準位置にあるときのロボット重心位置が算出される。
一方ステップS106では、ステップS102で取得した上方リンクの目標位置と歩容データ内の各代表点の目標位置とから、ロボットの各関節の角度に逆変換される。
ステップS110では、ステップS106で逆変換された各関節の角度に基づいてロボットの上方リンクが目標位置にあるときのロボットの重心位置が算出される。
ステップS112では、ステップS108で算出された重心位置と、ステップS110で算出された重心位置との水平面内偏差が算出される。
ステップS114では、歩容データ記憶部20に記憶された歩容データに、算出された水平面内偏差と上方リンク目標位置とを加え、最終的にロボットに与える歩容データが完成する。
このステップS114で完成した歩容データはステップS116でロボットの各関節の目標角に逆変換される。ステップS118ではこの目標角に従って各関節のアクチュエータが駆動される。その結果ロボットが動作する。以上の処理をサンプリング毎に繰り返す。
Next, the flow of processing will be described with reference to the flowchart of FIG.
First, gait data is read from the gait data storage unit 20 in step S100. At the same time, the target position of the upper link output by the robot operation device 130 is acquired in step S102. The read gait data is inversely converted into angles of the joints in step S104. As described above, when the target position of the upper link is included in the gait data, the angle of each joint of the upper link is obtained using the target position. If the gait data does not contain the target position of the upper link, the gait data is created assuming that the angle of each joint of the upper link is a constant angle. It is not necessary to reversely convert the upper link.
In step S108, the position of the center of gravity of the robot when the upper link is at the standard position is calculated from the angle of each joint.
On the other hand, in step S106, the angle of each joint of the robot is inversely converted from the target position of the upper link acquired in step S102 and the target position of each representative point in the gait data.
In step S110, the position of the center of gravity of the robot when the upper link of the robot is at the target position is calculated based on the angles of the joints inversely converted in step S106.
In step S112, a horizontal deviation between the barycentric position calculated in step S108 and the barycentric position calculated in step S110 is calculated.
In step S114, the calculated horizontal plane deviation and the upper link target position are added to the gait data stored in the gait data storage unit 20, and the gait data finally given to the robot is completed.
The gait data completed in step S114 is inversely converted into target angles of the joints of the robot in step S116. In step S118, the actuator of each joint is driven according to the target angle. As a result, the robot operates. The above processing is repeated for each sampling.

実施例1によれば、ロボット動作中に、リアルタイムで上方リンクの目標位置が与えられた際、上方リンクがその目標位置にあるときのロボットの重心位置と上方リンクが標準位置にあるときのロボットの重心位置が算出される。両重心位置の水平面内偏差を算出してその偏差分、ロボット体幹リンクの水平面内の目標位置を補正する。これにより上方リンクがその目標位置にあるときのロボットの重心位置は、上方リンクが標準位置にあるときのロボットの重心位置に水平面内で一致する。ここに「一致する」とは厳密な一致でなくとも誤差を含むものであってよい。上方リンクがその目標位置にあるときのロボットの重心位置の算出には実際のロボットの各リンクの位置ではなく目標値を用いているため、誤差を含むからである。
上方リンクが標準位置にあるときのロボットの重心位置は、ロボットのバランスが確保されるようにその歩容データが作成されたものである。従って上方リンクの目標位置がリアルタイムに与えられた場合でも、ロボット全体の重心位置は、上方リンクが標準位置にあるときにバランスが確保されたロボットの重心位置に略一致する。
ロボットの歩容データは、多少の外乱に対しても転倒しないよう余裕を持たせて作成してある。よってZMPに大きく影響するロボット重心位置を上方リンクが標準位置にあるときのロボット重心位置に略一致するよう体幹リンクの目標位置を補正するという簡単な制御により、ロボット動作中に上方リンクの目標位置がリアルタイムに与えられてもロボットのバランスを確保することができる。
According to the first embodiment, when the target position of the upper link is given in real time during the operation of the robot, the center of gravity of the robot when the upper link is at the target position and the robot when the upper link is at the standard position Is calculated. The deviation in the horizontal plane of the positions of both center of gravity is calculated, and the target position in the horizontal plane of the robot trunk link is corrected by the deviation. Thus, the center of gravity position of the robot when the upper link is at the target position matches the position of the center of gravity of the robot when the upper link is at the standard position in the horizontal plane. Here, “match” may not include exact match but may include an error. This is because the calculation of the position of the center of gravity of the robot when the upper link is at the target position includes an error because the target value is used instead of the actual position of each link of the robot.
The position of the center of gravity of the robot when the upper link is at the standard position is the gait data created so as to ensure the balance of the robot. Therefore, even when the target position of the upper link is given in real time, the center-of-gravity position of the entire robot substantially coincides with the center-of-gravity position of the robot in which the balance is secured when the upper link is at the standard position.
The robot's gait data is created with a margin so that it does not fall over even with some disturbance. Therefore, the target of the upper link during the robot operation can be achieved by a simple control of correcting the target position of the trunk link so that the position of the center of gravity of the robot greatly affecting the ZMP substantially matches the position of the center of gravity of the robot when the upper link is at the standard position. Even if the position is given in real time, the balance of the robot can be ensured.

また実施例1では、ロボット操作装置130から取得したロボットの上方のリンクの目標位置と歩容データとからロボットの重心位置を算出する。このロボットの重心位置から体幹リンクの目標位置の補正量が設定される。設定された補正量は、重心位置を算出した際に用いたロボットの上方のリンクの目標位置とともに、歩容データに加えられる。補正量と上方リンクの目標位置が加えられた歩容データからロボットの各関節の目標関節角度が算出され、ロボットが動作する。
換言すれば所定時点の歩容データと上方リンク目標位置から、この歩容データの補正量が求められ、補正量はその所定時点の歩容データに加えられてロボットへの指令値となる。すなわち補正量がフィードフォワード的に付加される制御となっている。
実施例1では、ロボット上方リンクの目標位置がリアルタイムに与えられた際、ロボットがバランスを失わないような制御をフィードフォワード制御により実現できる。従ってより安定した制御とすることが可能となる。
In the first embodiment, the position of the center of gravity of the robot is calculated from the target position and the gait data of the link above the robot acquired from the robot operation device 130. The correction amount of the target position of the trunk link is set from the position of the center of gravity of the robot. The set correction amount is added to the gait data together with the target position of the link above the robot used when calculating the position of the center of gravity. The target joint angle of each joint of the robot is calculated from the gait data obtained by adding the correction amount and the target position of the upper link, and the robot operates.
In other words, a correction amount of the gait data is obtained from the gait data at a predetermined time and the upper link target position, and the correction amount is added to the gait data at the predetermined time and becomes a command value for the robot. That is, the correction amount is controlled to be fed forward.
In the first embodiment, when the target position of the robot upper link is given in real time, the control that does not lose the balance of the robot can be realized by feedforward control. Therefore, more stable control can be achieved.

なお実施例1において、歩容データ記憶部20が「記憶手段」の一態様に相当する。また逆変換部22bおよび図2のステップS102が「上方リンク位置取得手段」の一態様に相当する。標準重心位置算出部24と実重心位置算出部26および偏差算出部32が「水平面内偏差計算手段」の一態様に相当する。図2のフローチャート図においてはステップS108とステップS110およびステップS112が「水平面内偏差計算手段」の一態様に相当する。また加算部30および図2のステップS114が「補正手段」の一態様に相当する。アクチュエータ駆動部28とアクチュエータ110および図2のステップS118が「制御手段」の一態様に相当する。さらにロボット操作装置130が「入力手段」の一態様に相当する。   In the first embodiment, the gait data storage unit 20 corresponds to an aspect of “storage means”. Further, the inverse conversion unit 22b and step S102 in FIG. 2 correspond to an aspect of the “uplink position acquisition unit”. The standard center-of-gravity position calculation unit 24, the actual center-of-gravity position calculation unit 26, and the deviation calculation unit 32 correspond to one aspect of “horizontal plane deviation calculation means”. In the flowchart of FIG. 2, step S108, step S110, and step S112 correspond to one aspect of “horizontal plane deviation calculating means”. Further, the adding unit 30 and step S114 of FIG. 2 correspond to an aspect of the “correction unit”. The actuator driving unit 28, the actuator 110, and step S118 in FIG. 2 correspond to one aspect of the “control unit”. Further, the robot operation device 130 corresponds to an aspect of “input means”.

<実施例2>
次に図3及び図4を用いて実施例2を説明する。図3は実施例2のロボット制御装置10bとロボット本体100のブロック図である。
実施例2のロボット制御装置10bでは、ロボット本体100の各関節に取り付けられたエンコーダ140の出力値を実重心位置算出部26にフィードバックする。実重心位置算出部26では、フィードバックされた値に基づいて、上方リンクが目標位置にあるときのロボットの重心位置を算出する。実施例1のロボット制御装置10aでは、上方リンクが目標位置にあるときのロボットの重心位置を算出する実重心算出部26は、歩容データ内の体幹リンクと脚リンクの目標位置と、ロボット操作装置130から取得した上方リンクの目標位置とに基づいてロボットの重心位置を算出した。この実重心位置算出部26の処理が実施例1と異なる点である。その他のモジュールは実施例1と同じであるので説明を省略する。
<Example 2>
Next, Embodiment 2 will be described with reference to FIGS. FIG. 3 is a block diagram of the robot controller 10b and the robot body 100 according to the second embodiment.
In the robot control apparatus 10b according to the second embodiment, the output value of the encoder 140 attached to each joint of the robot main body 100 is fed back to the actual center-of-gravity position calculation unit 26. Based on the fed back value, the actual center-of-gravity position calculation unit 26 calculates the center-of-gravity position of the robot when the upper link is at the target position. In the robot control apparatus 10a according to the first embodiment, the actual center-of-gravity calculation unit 26 that calculates the position of the center of gravity of the robot when the upper link is at the target position includes the target positions of the trunk link and the leg link in the gait data, and the robot The center-of-gravity position of the robot was calculated based on the target position of the upper link acquired from the operation device 130. The processing of the actual center-of-gravity position calculation unit 26 is different from the first embodiment. Since the other modules are the same as those in the first embodiment, description thereof is omitted.

図4に実施例2のフローチャート図を示す。実施例1と異なる点は、ステップS200でロボット本体100の各関節に取り付けられたエンコーダ140の出力値を読み込み、その値に基づいてステップS110で上方リンクの目標値が標準位置と異なる場合のロボットの重心位置を算出する点である。その他は図2のフローチャートと同じである。   FIG. 4 shows a flowchart of the second embodiment. The difference from the first embodiment is that the output value of the encoder 140 attached to each joint of the robot body 100 is read in step S200, and the robot in the case where the upper link target value is different from the standard position in step S110 based on the read value. It is a point which calculates the gravity center position. Others are the same as the flowchart of FIG.

図1と図3を比較すると理解できるように実施例2によると逆変換部22bが不要となり制御装置を簡単化することができる。また図2と図4のフローチャート図を比較すると理解できるように実施例2によると処理を簡単化することができる。
また実施例2ではロボットの重心位置を算出する際、ロボット本体100の各関節に取り付けられたエンコーダ値を用いるため、各リンクの相対位置関係が正確に取得できる。またエンコーダの出力値には、ロボット操作装置130によってロボットの上方リンクの目標位置が与えられ、その目標位置に従ってロボットが動作した結果も反映されている。従ってロボットの実際の重心位置を正確に算出することが可能となる。これによりロボットの実際の重心位置を、ロボットの上方リンクが標準位置にあるときのロボット重心位置に、より正確に一致するよう体幹リンクの目標位置を補正することが可能となる。
As can be understood by comparing FIG. 1 and FIG. 3, according to the second embodiment, the inverse conversion unit 22b is not required, and the control device can be simplified. Further, as can be understood by comparing the flowcharts of FIG. 2 and FIG. 4, according to the second embodiment, the processing can be simplified.
In the second embodiment, when calculating the position of the center of gravity of the robot, encoder values attached to the joints of the robot main body 100 are used. Therefore, the relative positional relationship between the links can be accurately acquired. The output value of the encoder also reflects the result of the robot operating device 130 giving the target position of the upper link of the robot and operating the robot according to the target position. Therefore, the actual center of gravity position of the robot can be accurately calculated. This makes it possible to correct the target position of the trunk link so that the actual center of gravity position of the robot more accurately matches the position of the center of gravity of the robot when the upper link of the robot is at the standard position.

なお実施例2では、加算部30が「補正手段」に相当するとともに「上方リンク位置取得手段」の一態様に相当する。またエンコーダ140が関節角計測手段の一態様に相当する。その他の請求項に記載の各手段と実施例の構成との対応は実施例1と同様である。   In the second embodiment, the adding unit 30 corresponds to “correction unit” and one mode of “uplink position acquisition unit”. The encoder 140 corresponds to one aspect of the joint angle measuring unit. The correspondence between each means described in other claims and the configuration of the embodiment is the same as that of the first embodiment.

<実施例3>
次に図5と図6を用いて実施例3を説明する。この実施例ではロボット操作装置130bからは、制御サンプリング毎の上方リンクの目標関節角が出力される。これは例えば、ロボット操作装置130bが上方リンクの各関節の目標関節角を個別に指令する形態である場合などである。またはロボット操作装置130bがロボットの制御装置の一部として機能する場合でもよい。ロボットの制御装置の一部としての機能とは、ロボット自体がカメラと画像処理装置を備え、物体の位置を認識し、その物体に向けて上方リンクを移動させる機能などがある。この場合、ロボット操作装置130b内で、物体の位置から手先目標位置を設定し、この手先目標位置から上腕リンク(上方リンク)の制御サンプリング毎の目標関節角を算出する。ロボット操作装置130bからは、算出された制御サンプリング毎の上方リンクの各関節の目標関節角が出力される。
<Example 3>
Next, Embodiment 3 will be described with reference to FIGS. In this embodiment, a target joint angle of the upper link for each control sampling is output from the robot operation device 130b. This is the case, for example, when the robot operating device 130b is configured to individually command the target joint angle of each joint of the upper link. Alternatively, the robot operation device 130b may function as a part of the robot control device. The functions as a part of the robot control device include a function in which the robot itself includes a camera and an image processing device, recognizes the position of the object, and moves the upper link toward the object. In this case, a hand target position is set from the position of the object in the robot operation device 130b, and a target joint angle for each control sampling of the upper arm link (upper link) is calculated from the hand target position. From the robot operation device 130b, the target joint angle of each joint of the upper link for each calculated control sampling is output.

図5は実施例3のロボット制御装置10cとロボット本体100のブロック図である。ロボット操作装置130bから出力された上方リンクの各関節の目標関節角は、実重心位置算出部26bに送られる。同時に実重心位置算出部26bには、逆変換部22aから出力される脚部の各関節の目標関節角が送られる。実重心位置算出部26bは、上方リンクの各関節の目標関節角と脚部の各関節の目標関節角からロボットの重心位置を算出する。標準重心位置算出部24および偏差算出部32の機能は実施例1と同様である。   FIG. 5 is a block diagram of the robot controller 10c and the robot body 100 according to the third embodiment. The target joint angle of each joint of the upper link output from the robot operation device 130b is sent to the actual center-of-gravity position calculation unit 26b. At the same time, the actual center-of-gravity position calculation unit 26b receives the target joint angles of the respective joints of the legs output from the inverse conversion unit 22a. The actual center-of-gravity position calculation unit 26b calculates the center-of-gravity position of the robot from the target joint angle of each joint of the upper link and the target joint angle of each joint of the leg. The functions of the standard gravity center position calculation unit 24 and the deviation calculation unit 32 are the same as those in the first embodiment.

偏差算出部32で算出された重心位置の水平面内の偏差は、体幹リンクの水平方向の目標位置の補正値として、加算部30bで歩容データ上の体幹リンクの目標位置に加算される。
ここで、実施例1ではロボット操作装置130から上方リンクの目標位置が出力されるので、図1の加算部30ではロボット操作装置130から出力される上方リンクの目標位置が加算された。実施例3ではロボット操作装置130bからは制御サンプリング毎の上方リンクの各関節の目標関節角が出力されるので、加算部30bではロボット操作装置130bからの出力を加算する必要はない。
The deviation in the horizontal plane of the position of the center of gravity calculated by the deviation calculating unit 32 is added to the target position of the trunk link on the gait data by the adding unit 30b as a correction value of the target position in the horizontal direction of the trunk link. .
Here, since the target position of the upper link is output from the robot operation device 130 in the first embodiment, the target position of the upper link output from the robot operation device 130 is added by the adding unit 30 in FIG. In the third embodiment, since the target joint angle of each joint of the upper link for each control sampling is output from the robot operation device 130b, the adding unit 30b does not need to add the output from the robot operation device 130b.

加算部30bで、歩容データの体幹リンクの目標位置に対して補正が加えられた後の歩容データは逆変換部22cで脚部の各関節の目標関節角に変換される。アクチュエータ駆動部28には、逆変換部22cから出力される脚部の各関節の目標関節角と、ロボット操作装置130bから出力される上方リンクの各関節の目標関節角が入力される。アクチュエータ駆動部28は、これらの目標関節角に追従するようにアクチュエータ110を駆動する。   The gait data after the adder 30b corrects the target position of the trunk link of the gait data is converted into the target joint angle of each joint of the leg by the inverse converter 22c. The actuator drive unit 28 receives the target joint angle of each joint of the leg output from the inverse conversion unit 22c and the target joint angle of each joint of the upper link output from the robot operation device 130b. The actuator driving unit 28 drives the actuator 110 so as to follow these target joint angles.

図6に上記動作の処理のフローチャートを示す。ステップS102bではロボット操作装置130bから上方リンクの各関節の目標角を取得する。ステップS110bでは、ステップS104から出力される脚部各関節の目標関節角と、ステップS102bで取得した上方リンクの各関節の目標関節角に基づいて、ロボットの上方リンクが目標関節角通りに動いた場合のロボットの重心位置を算出する。ステップS112では、ステップS110bで求めたロボットの実重心位置と、ステップS108で求めた上方リンクが標準位置にあるときのロボットの重心位置との水平面内偏差を算出する。ステップS114bでは、歩容データの体幹リンクの水平方向の目標位置を上記の水平面内偏差で補正し、脚部の最終的な歩容データが算出される。実施例1のステップS114の処理(図2)では、ここで上方リンクの目標位置が加えられロボット全体の最終的な歩容データが算出されたが、実施例3のステップS114bでは脚部の歩容データのみが算出される。ステップS116bではステップS114bで算出された脚部の歩容データを逆変換し、脚部の角関節の目標関節角が算出される。そしてステップS118において、ステップS116bで算出された脚部の各関節の目標関節角と、ステップS102bで取得した上方リンクの各関節の目標関節角とに基づいてロボットの各各関節が駆動される。   FIG. 6 shows a flowchart of the processing of the above operation. In step S102b, the target angle of each joint of the upper link is acquired from the robot operation device 130b. In step S110b, the upper link of the robot moves according to the target joint angle based on the target joint angle of each joint of the leg output from step S104 and the target joint angle of each joint of the upper link acquired in step S102b. In this case, the position of the center of gravity of the robot is calculated. In step S112, a horizontal deviation between the actual center of gravity of the robot obtained in step S110b and the center of gravity of the robot when the upper link obtained in step S108 is at the standard position is calculated. In step S114b, the horizontal target position of the trunk link of the gait data is corrected with the above-described horizontal plane deviation, and the final gait data of the leg is calculated. In the process of step S114 of the first embodiment (FIG. 2), the target position of the upper link is added here and the final gait data of the entire robot is calculated. However, in step S114b of the third embodiment, the step of the leg portion is calculated. Only content data is calculated. In step S116b, the leg gait data calculated in step S114b is inversely transformed to calculate the target joint angle of the corner joint of the leg. In step S118, each joint of the robot is driven based on the target joint angle of each joint of the leg calculated in step S116b and the target joint angle of each joint of the upper link acquired in step S102b.

図1に示した実施例1のブロック図と図5に示した実施例3のブロック図を比較すると、または図2に示した実施例1のフローチャートと図と図6に示した実施例3のフローチャート図を比較すると、実施例3の方が処理が簡単となっている。これは実施例3のロボット操作装置130bからは、上方リンクの各関節の目標関節角が出力されることによる。このように上方リンクの各関節の目標関節角を別の制御回路(ロボット操作装置130b)で求めることによって、実際の重心位置と上方リンクを標準位置においたときの重心位置との水平方向の差(水平面内偏差)を求めて体幹リンクの水平方向の目標位置を補正する処理を単純化することができる。   The block diagram of the first embodiment shown in FIG. 1 and the block diagram of the third embodiment shown in FIG. 5 are compared, or the flowchart and the diagram of the first embodiment shown in FIG. 2 and the third embodiment shown in FIG. Comparing the flowcharts, the processing in Example 3 is simpler. This is because the robot operation device 130b according to the third embodiment outputs the target joint angle of each joint of the upper link. Thus, by obtaining the target joint angle of each joint of the upper link with another control circuit (robot operating device 130b), the horizontal difference between the actual center of gravity position and the center of gravity position when the upper link is at the standard position. It is possible to simplify the processing of obtaining the horizontal target position in the horizontal plane and correcting the target position in the horizontal direction of the trunk link.

なお実施例3においては、「入力手段」の一態様であるロボット操作装置130bからは、制御サンプリング毎の上方リンクの目標関節角が出力される。従ってロボット操作装置130bからから出力される上方リンクの目標関節角は直接アクチュエータ駆動部28へ送られる。よって実施例3においてはアクチュエータ駆動部は「制御手段」の一態様に相当するとともに「上方リンク位置取得手段」および「補正手段」の一態様に相当する。また図6のフローチャートにおいてステップS114bが「補正手段」の一態様に相当する。その他の請求項に記載の各手段と実施例の構成との対応は実施例1と同様である。   In the third embodiment, the upper joint target joint angle for each control sampling is output from the robot operation device 130b which is an aspect of the “input unit”. Accordingly, the target joint angle of the upper link output from the robot operation device 130 b is directly sent to the actuator driving unit 28. Therefore, in the third embodiment, the actuator driving unit corresponds to one aspect of “control means” and also corresponds to one aspect of “uplink position acquisition means” and “correction means”. In the flowchart of FIG. 6, step S <b> 114 b corresponds to an aspect of “correction unit”. The correspondence between each means described in other claims and the configuration of the embodiment is the same as that of the first embodiment.

次に図7、図8を用いてロボットの体幹リンク目標位置を補正する補正量の設定を例示する。この例示は先に説明した実施例1から実施例3のいずれの構成でも可能な例である。説明を簡単にするため図7の例ではロボット体側方向、即ち図7に図示したY軸方向のみについてロボットの動作を説明する。
図7(A)はロボット本体100が紙面垂直上方に歩行しているときのある時点でのロボットの姿勢の模式図である。図7(A)のロボットの構成は前述した通りである。
図7(A)の姿勢はまた、ロボットの上方リンク(右腕部44R、左腕部44L、頭部リンク48)が標準位置にあるときの姿勢でもある。ここで右腕部44Rの代表点は右腕手先リンク先端44RPに設定され、同様に左腕部44Lの代表点は左腕手先リンク先端44LPに設定されている。また頭部リンク48の代表点は頭頂部48Pに設定されている。そしてそれらの標準位置は夫々図7(A)に示した、右腕手先リンク先端44RP、左腕手先リンク先端44LP、頭頂部48Pの位置である。これらの標準位置は体幹リンク代表点40Pに原点をおいた座標系での座標値で表される。例えば右腕手先リンク先端44RPの標準位置は図7(A)に図示するベクトル44RPHで表される。他の標準位置についても同様である。
Next, setting of the correction amount for correcting the trunk link target position of the robot will be exemplified with reference to FIGS. This illustration is an example that is possible with any of the configurations of the first to third embodiments described above. In order to simplify the description, in the example of FIG. 7, the operation of the robot will be described only in the robot body side direction, that is, the Y-axis direction shown in FIG.
FIG. 7A is a schematic diagram of the posture of the robot at a certain point when the robot body 100 is walking vertically upward on the paper surface. The configuration of the robot in FIG. 7A is as described above.
The posture in FIG. 7A is also a posture when the upper link (right arm portion 44R, left arm portion 44L, head link 48) of the robot is at the standard position. Here, the representative point of the right arm portion 44R is set to the right arm hand tip link tip 44RP, and similarly, the representative point of the left arm portion 44L is set to the left arm hand tip link tip 44LP. The representative point of the head link 48 is set to the top 48P. These standard positions are the positions of the right arm hand tip link tip 44RP, the left arm hand tip link tip 44LP, and the crown 48P shown in FIG. 7A, respectively. These standard positions are represented by coordinate values in a coordinate system with the origin at the trunk link representative point 40P. For example, the standard position of the right arm hand tip link tip 44RP is represented by a vector 44RPH illustrated in FIG. The same applies to other standard positions.

図7(A)では、体幹リンク40と脚リンク(右脚部46R、左脚部46L)は歩容データ内の体幹リンク40と脚リンクの目標位置の時系列データに従って動作している。上方リンクは体幹リンク40に対して固定されているとして歩容データが作成されており、図7(A)の状態では上方リンクは動作していない。即ち上方リンクは標準位置にある。
図7(A)の姿勢におけるロボット全体の実際の重心Gの位置はY1にある。また体幹リンク40の代表点40Pの位置もY1である。図7(A)ではまだロボット操作装置130は操作されておらず、上方リンクの目標位置はロボット操作装置130からは与えられていない。従ってロボットは歩容データ記憶装置20に記憶された歩容データに追従して動作している。従って歩容データ内の体幹リンク40と脚リンクの目標位置、及び上方リンクの標準位置から算出されるロボットの重心GHの位置もY1である。
ここでロボット操作装置130から、ロボットの左腕部44Lの手先目標位置がQの位置に与えられる。すると左腕部44Lはこの目標位置に従って動作する。その結果左腕部44Lは標準位置から離脱し、図7(B)の姿勢になる。このとき、歩容データ内の体幹リンク60と脚リンクの目標位置、およびロボット操作装置から取得した上方リンクの目標位置から算出されるロボットの重心Gの位置はY2となる。従って、体幹リンクと脚リンクが目標位置にあり上方リンクが標準位置にあるときのロボットの重心GHの位置Y1と、体幹リンクと脚リンクが目標位置にあり上方リンクが取得した目標位置にあるときのロボットの重心Gの位置Y2との水平面内偏差はベクトルL1となる。ここでベクトルL1は、上方リンクが取得した目標位置にあるときのロボットの重心Gの位置Y2から、上方リンクが標準位置にあるときのロボットの重心GHの位置Y1へと向いたベクトルである。
In FIG. 7A, the trunk link 40 and the leg link (the right leg portion 46R and the left leg portion 46L) operate according to the time series data of the target positions of the trunk link 40 and the leg link in the gait data. . Gait data is created assuming that the upper link is fixed with respect to the trunk link 40, and the upper link is not operating in the state of FIG. That is, the upper link is in the standard position.
The actual position of the center of gravity G of the entire robot in the posture of FIG. The position of the representative point 40P of the trunk link 40 is also Y1. In FIG. 7A, the robot operation device 130 is not yet operated, and the target position of the upper link is not given from the robot operation device 130. Therefore, the robot operates following the gait data stored in the gait data storage device 20. Therefore, the position of the center of gravity GH of the robot calculated from the target positions of the trunk link 40 and the leg link in the gait data and the standard position of the upper link is also Y1.
Here, from the robot operation device 130, the hand target position of the left arm 44L of the robot is given to the position Q. Then, the left arm portion 44L operates according to this target position. As a result, the left arm portion 44L is detached from the standard position and assumes the posture of FIG. At this time, the position of the center of gravity G of the robot calculated from the target positions of the trunk link 60 and the leg link in the gait data and the target position of the upper link acquired from the robot operation device is Y2. Therefore, the position Y1 of the center of gravity GH of the robot when the trunk link and the leg link are at the target position and the upper link is at the standard position, and the target position where the trunk link and the leg link are at the target position and the upper link is acquired. The deviation in the horizontal plane from the position Y2 of the center of gravity G of the robot at a certain time is a vector L1. Here, the vector L1 is a vector directed from the position Y2 of the center of gravity G of the robot when the upper link is at the acquired target position to the position Y1 of the center of gravity GH of the robot when the upper link is at the standard position.

ロボット制御装置は、体幹リンク代表点40Pの目標位置をベクトルL1だけ補正する。補正した後のロボットの姿勢を図7(C)に示す。補正された結果、体幹リンク代表点40Pの目標位置は補正前のY1から図7(C)上で左方向へL1だけ移動したY3の位置となる。この補正により、上方リンクがロボット操作装置130から与えられた目標位置となったときのロボットの重心Gの位置は、体幹リンクと脚リンクの目標位置および上方リンクの標準位置から算出されたロボットの重心GHの位置Y1と水平面内でほぼ同じ位置とすることができる。なお、厳密には、体幹リンク40の水平方向目標位置を補正した後のロボットの姿勢(図7(C))は、上方リンクが標準位置にあるときのロボットの重心位置を計算した際のロボットの姿勢(図7(A))または上方リンクが取得した目標位置にあるときのロボットの重心位置を算出した際のロボットの姿勢(図7(B))のいずれとも異なる。従って補正後のロボットの姿勢(図7(C))の姿勢で実際の重心位置はY1に正確には一致しない。しかしバランスを確保するには十分な程度には一致する。
このようにリアルタイムにロボット上方リンクの目標位置が与えられた場合であっても、ロボット本体100を、バランスを失わずに動作し続けるよう制御することができる
なお、図7(A)、(B)において、左手先位置44LPが1サンプリングの間で図7(A)の状態から図7(B)の状態へ移ることはなく、実際には図7(A)の状態から徐々に図7(B)の状態へと移っていく。その過程でサンプリング周期ごとに上記のような補正を繰り返すことになる。図7はあくまでも補正量の設定を例示するための模式図である。
The robot controller corrects the target position of the trunk link representative point 40P by the vector L1. FIG. 7C shows the posture of the robot after correction. As a result of the correction, the target position of the trunk link representative point 40P is the position of Y3 that is moved by L1 in the leftward direction from Y1 before correction in FIG. 7C. By this correction, the position of the center of gravity G of the robot when the upper link becomes the target position given from the robot operation device 130 is calculated from the target position of the trunk link and the leg link and the standard position of the upper link. The position Y1 of the center of gravity GH can be substantially the same position in the horizontal plane. Strictly speaking, the posture of the robot after correcting the horizontal target position of the trunk link 40 (FIG. 7C) is obtained when the center-of-gravity position of the robot when the upper link is at the standard position is calculated. This is different from either the robot posture (FIG. 7A) or the robot posture (FIG. 7B) when the center-of-gravity position of the robot when the upper link is at the acquired target position. Therefore, the actual center-of-gravity position does not exactly match Y1 in the corrected posture of the robot (FIG. 7C). However, they are consistent enough to ensure balance.
Thus, even when the target position of the robot upper link is given in real time, the robot body 100 can be controlled to continue to operate without losing the balance. ), The left hand tip position 44LP does not shift from the state of FIG. 7A to the state of FIG. 7B during one sampling, and in actuality, gradually from the state of FIG. Go to state B). In the process, the above correction is repeated every sampling period. FIG. 7 is a schematic diagram for illustrating the setting of the correction amount to the last.

次に図8を用いてロボット重心位置を補正する他の例を示す。この例では図8に示すX軸方向についてのみ説明する。
図8(A)は歩容データ内の体幹リンクと脚リンクの目標位置および上方リンクの標準位置に従ってロボットが直立姿勢をとったときの模式図である。上方リンクは標準位置にある。例えば右手先位置44RPの標準位置は体幹リンク代表点40Pを原点とする座標系でのベクトル44RPHで表される。
ロボットは歩容データに追従するよう制御されているので歩容データと上方リンクの標準位置とから算出されるロボットの重心GHの位置と、ロボットの実際の重心Gの位置は、X軸上の位置X1で同一である。ここでロボット操作装置130から、両腕手先位置(44RP、44LP)の位置を図8(B)に示すRの位置とするよう目標位置が出力される。ロボット本体100は、この目標位置に追従して、図8(B)に示すようにロボット両腕の手先代表点(44RP、44LP)はRの位置となる。ロボット両手先位置が標準位置から離脱したことにより、ロボットの実際の重心位置GはX2の位置になる。このときの重心位置の水平方向偏差はベクトルL2である。
ロボット制御装置は体幹リンクの代表点40Pの目標位置の水平方向位置をベクトルL2だけ補正する。その結果が図8(C)である。この例では体幹リンクの代表点40Pの水平方向位置をベクトルL2だけ補正するために体幹リンクの目標姿勢角をA1とするよう補正量が設定される。その結果、上方リンクがロボット操作装置130から取得した目標位置となったときの重心Gの位置は、体幹リンクと脚リンクを歩容データ内の目標位置におき、上方リンクを標準位置においたときのロボットの重心GHの位置X1にほぼ一致する。従ってロボットはバランスを失わずに動作を続けることができる。
なお、図8も図7と同様にあくまでも補正量設定の様子を例示した模式図である。
Next, another example of correcting the position of the center of gravity of the robot will be described with reference to FIG. In this example, only the X-axis direction shown in FIG. 8 will be described.
FIG. 8A is a schematic diagram when the robot takes an upright posture according to the target positions of the trunk link and the leg link in the gait data and the standard position of the upper link. The upper link is in the standard position. For example, the standard position of the right hand tip position 44RP is represented by a vector 44RPH in a coordinate system with the trunk link representative point 40P as the origin.
Since the robot is controlled to follow the gait data, the position of the center of gravity GH of the robot calculated from the gait data and the standard position of the upper link and the actual position of the center of gravity G of the robot are on the X axis. It is the same at position X1. Here, the target position is output from the robot operation device 130 so that the positions of the both-arms hand positions (44RP, 44LP) are set to the R position shown in FIG. 8B. The robot body 100 follows this target position, and the hand representative points (44RP, 44LP) of both arms of the robot are in the R position as shown in FIG. Since the robot's both-hands position is deviated from the standard position, the actual center of gravity position G of the robot becomes X2. The horizontal deviation of the center of gravity at this time is a vector L2.
The robot controller corrects the horizontal position of the target position of the representative point 40P of the trunk link by the vector L2. The result is shown in FIG. In this example, in order to correct the horizontal position of the representative point 40P of the trunk link by the vector L2, the correction amount is set so that the target posture angle of the trunk link is A1. As a result, the position of the center of gravity G when the upper link becomes the target position acquired from the robot operation device 130 is such that the trunk link and the leg link are placed at the target position in the gait data, and the upper link is at the standard position. Substantially coincides with the position X1 of the center of gravity GH of the robot. Therefore, the robot can continue to operate without losing balance.
Note that FIG. 8 is also a schematic diagram illustrating how the correction amount is set, just like FIG.

<実施例4>
次に実施例4として、ロボット動作中に他の物体(例えば荷物)が付加された場合にロボットのバランスを確保する制御装置について、図1に戻って説明する。
実施例4ではロボット操作装置130は、ロボットの頭部リンクに設置されたカメラで荷物の位置を検出し、その荷物を両腕で把持するようリアルタイムに上方リンクの目標値を生成する装置である。
またロボットの両腕手先には力センサ120が取り付けられている。ロボット本体100が荷物を持った時点で力センサ120は荷物から受ける力を検出する。検出された力は実重心位置算出部26に送られる。実重心位置算出部26では力センサの出力値および力センサの設置位置からロボットに付加された質量とその位置とを算出する。実重心位置算出部26では、ロボット各リンクの質量とその位置のデータと、ロボットに付加された荷物の質量とその位置のデータとを合わせてロボット全体の重心位置を算出する。その後の処理は実施例1または実施例2と同様である。
リアルタイムで与えられるロボットの上方リンクの目標位置と同時に、ロボットに付加される物体(例えば荷物)の質量と位置を考慮してロボット全体の重心位置を算出する。この重心位置と、歩容データ内の体幹リンクと脚リンクの目標位置および上方リンクの標準位置から算出される重心位置との水平面内偏差を算出する。そして体幹リンクの代表点の水平方向の目標位置を、上記偏差を補正量として補正する。これによりロボットがバランスを失うことを回避するよう制御できる。このとき、ロボットに付加された物体の影響によるZMPの変化を制御ロジック内で明示的に考慮する必要はない。制御ロジックを簡略化できる。
なおこの実施例4において、ロボットの頭部リンクに設置されたカメラで荷物の位置を検出し、その荷物を両腕で把持するようリアルタイムに上方リンクの目標値を生成する装置であるロボット操作装置130が「上方リンクで物体を把持する動作を指定するために用いる入力手段」の一態様に相当する。
<Example 4>
Next, as a fourth embodiment, a control device that ensures the balance of the robot when another object (for example, a load) is added during the robot operation will be described with reference back to FIG.
In the fourth embodiment, the robot operation device 130 is a device that detects the position of a load with a camera installed on the head link of the robot and generates a target value for the upper link in real time so that the load is held by both arms. .
A force sensor 120 is attached to both arms of the robot. When the robot body 100 has a load, the force sensor 120 detects the force received from the load. The detected force is sent to the actual center-of-gravity position calculation unit 26. The actual center-of-gravity position calculation unit 26 calculates the mass added to the robot and its position from the output value of the force sensor and the installation position of the force sensor. The actual center-of-gravity position calculation unit 26 calculates the center-of-gravity position of the entire robot by combining the mass of each link of the robot and its position data, and the mass of the load added to the robot and its position data. Subsequent processing is the same as in the first or second embodiment.
Simultaneously with the target position of the upper link of the robot given in real time, the center of gravity position of the entire robot is calculated in consideration of the mass and position of an object (for example, luggage) added to the robot. The horizontal plane deviation between the center of gravity position and the center of gravity position calculated from the target position of the trunk link and the leg link in the gait data and the standard position of the upper link is calculated. Then, the horizontal target position of the representative point of the trunk link is corrected using the deviation as a correction amount. As a result, the robot can be controlled to avoid losing balance. At this time, it is not necessary to explicitly consider the change in ZMP due to the influence of the object added to the robot in the control logic. The control logic can be simplified.
In the fourth embodiment, the robot operating device is a device that detects the position of the load with a camera installed on the head link of the robot and generates a target value for the upper link in real time so as to hold the load with both arms. 130 corresponds to one mode of “input means used for designating an operation of gripping an object with an upper link”.

図9を用いて実施例4の具体例を示す。図9(A)は、ロボット本体100が体幹リンクと脚リンクの目標位置と上方リンクの標準位置に制御されているときの姿勢である。このときのロボットの実際の重心Gの位置は、体幹リンクと脚リンクの目標位置および上方リンクの標準位置から算出されるロボットの重心GHの位置とX軸上の位置X1で一致している。また体幹リンク40の代表点40Pの位置もX1である。
次にロボット頭部に備えられたカメラが荷物200を検出し、ロボットの両腕に対してこの荷物を把持するよう両腕手先位置を荷物の両側に設定した手先目標位置を出力し、ロボット本体100はこの目標位置に従って動作する。
図9(B)は、ロボット本体100が荷物200を持った瞬間を示す。ロボット本体100の手先に設置された力センサ120は荷物の質量による外力を検出する。実重心位置算出部26(図1参照)にはこの外力の値が入力されロボット本体100に付加された質量とその位置が算出される。実重心位置算出部26は、標準位置から離脱した手先位置と、この付加された質量とその位置からロボット本体100全体の重心Gの位置(体幹リンクと脚リンクの目標位置、上方リンクの目標値および荷物の質量と位置から算出されるロボットの重心Gの位置)を算出する。算出された重心Gの位置は図9(B)に示すX4である。荷物把持前の、上方リンクの標準位置から算出されるロボットの重心GHの位置X1と、荷物把持後のロボットの実際の重心Gの位置X4との水平面内の偏差はベクトルL3である。
A specific example of the fourth embodiment will be described with reference to FIG. FIG. 9A shows the posture when the robot body 100 is controlled to the target position of the trunk link and the leg link and the standard position of the upper link. At this time, the actual position of the center of gravity G of the robot coincides with the position of the center of gravity GH of the robot calculated from the target positions of the trunk link and the leg link and the standard position of the upper link at the position X1 on the X axis. . The position of the representative point 40P of the trunk link 40 is also X1.
Next, the camera provided on the robot head detects the luggage 200, and outputs a hand target position in which both arm hand positions are set on both sides of the luggage so as to hold the luggage against both arms of the robot. 100 operates according to this target position.
FIG. 9B shows a moment when the robot body 100 holds the luggage 200. A force sensor 120 installed at the hand of the robot body 100 detects an external force due to the mass of the load. The actual center-of-gravity position calculation unit 26 (see FIG. 1) receives the value of the external force and calculates the mass added to the robot body 100 and its position. The actual center-of-gravity position calculation unit 26 determines the position of the hand away from the standard position, the added mass, and the position of the center of gravity G of the entire robot body 100 (the target position of the trunk link and the leg link, the target position of the upper link). The position of the center of gravity G of the robot calculated from the value and the mass and position of the load is calculated. The calculated position of the center of gravity G is X4 shown in FIG. The deviation in the horizontal plane between the position X1 of the center of gravity GH of the robot calculated from the standard position of the upper link before gripping the load and the position X4 of the actual center of gravity G of the robot after gripping the load is a vector L3.

ロボット制御装置は、体幹リンク40の代表点40Pの目標位置X1をこのベクトルL3で補正する。補正後のロボット本体100の姿勢を図9(C)に示す。体幹リンク40の位置X5はもとの位置X1からL3だけ移動している。そしてロボットの実際の重心位置は、体幹リンクと脚リンクの目標位置および上方リンクの標準位置から算出されるロボットの重心GHの位置X1にほぼ一致する。従ってロボットが荷物を把持して上方に持ち上げてもバランスを失わないよう制御することができる。   The robot controller corrects the target position X1 of the representative point 40P of the trunk link 40 with this vector L3. FIG. 9C shows the posture of the robot body 100 after correction. The position X5 of the trunk link 40 has moved by L3 from the original position X1. The actual center-of-gravity position of the robot substantially coincides with the position X1 of the center-of-gravity GH of the robot calculated from the target positions of the trunk link and the leg link and the standard position of the upper link. Therefore, control can be performed so that the balance is not lost even when the robot grips the load and lifts it.

なおこのとき、ロボット操作装置130からは荷物の位置を上方に上げるよう両腕の手先目標位置が出力し続けられている。従って両腕の手先目標位置は図9(B)のときと同じ位置に保たれる。そのため両腕44R、44Lの姿勢も変化する。
また、荷物を持った瞬間にロボットの質量配分は急に変化するが、ロボットの動作はサンプリング毎にみると微小量ずつ変化する。荷物を持つロボット手先が微小量変化したとき荷物の質量によりロボット全体の重心Gの位置が図9(B)に示す位置X4となってロボットが前へ倒れる場合でも荷物は机210に支えられる。そこでロボット本体100は転倒することはない。次のサンプリング時に図9(C)に示すようにロボットの実際の重心G位置が、体幹リンクと脚リンクの目標位置および上方リンクの標準位置から算出されるロボットの重心GHの位置X1にほぼ一致するよう体幹リンク代表点40Pの位置が補正されることによって、さらにその次のサンプリング時には安定して荷物を持ち上げることが可能となる。
At this time, the robot arm 130 continues to output the target positions of both arms so as to raise the position of the load upward. Therefore, the hand target positions of both arms are kept at the same position as in FIG. 9B. Therefore, the postures of both arms 44R and 44L also change.
Also, the mass distribution of the robot changes abruptly at the moment when the baggage is held, but the operation of the robot changes by a small amount when viewed every sampling. When the robot hand holding the load changes by a small amount, the load is supported by the desk 210 even if the position of the center of gravity G of the entire robot becomes the position X4 shown in FIG. Therefore, the robot body 100 does not fall down. At the next sampling, as shown in FIG. 9C, the actual gravity center G position of the robot is almost equal to the position X1 of the robot gravity center GH calculated from the target position of the trunk link and the leg link and the standard position of the upper link. By correcting the position of the trunk link representative point 40P so as to match, it is possible to lift the luggage stably at the next sampling.

以上、本発明の具体例を詳細に説明したが、これらは例示に過ぎず、特許請求の範囲を限定するものではない。特許請求の範囲に記載の技術には、以上に例示した具体例を様々に変形、変更したものが含まれる。
また、本明細書または図面に説明した技術要素は、単独であるいは各種の組合せによって技術的有用性を発揮するものであり、出願時請求項記載の組合せに限定されるものではない。また、本明細書または図面に例示した技術は複数目的を同時に達成し得るものであり、そのうちの一つの目的を達成すること自体で技術的有用性を持つものである。
Specific examples of the present invention have been described in detail above, but these are merely examples and do not limit the scope of the claims. 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 this specification or the drawings can achieve a plurality of objects at the same time, and has technical usefulness by achieving one of the objects.

実施例1のロボット制御装置のブロック図である。1 is a block diagram of a robot control apparatus according to a first embodiment. 実施例1のロボット制御装置の処理のフローチャート図である。It is a flowchart figure of the process of the robot control apparatus of Example 1. 実施例2のロボット制御装置のブロック図である。It is a block diagram of the robot control apparatus of Example 2. 実施例2のロボット制御装置の処理のフローチャート図である。It is a flowchart figure of the process of the robot control apparatus of Example 2. 実施例3のロボット制御装置のブロック図である。FIG. 6 is a block diagram of a robot control apparatus according to a third embodiment. 実施例3のロボット制御装置の処理のフローチャート図である。It is a flowchart figure of the process of the robot control apparatus of Example 3. 実施例1から3による補正量設定の例を示す図である。6 is a diagram illustrating an example of correction amount setting according to Embodiments 1 to 3. FIG. 実施例1から3による補正量設定の他の例を示す図である。It is a figure which shows the other example of the correction amount setting by Example 1-3. 実施例4による補正量設定の例を示す図である。FIG. 10 is a diagram illustrating an example of correction amount setting according to a fourth embodiment.

符号の説明Explanation of symbols

10a、10b、10c:ロボット制御装置
20:歩容データ記憶部
22a、22b、22c:逆変換部
24:標準重心位置算出部
26、26b:実重心位置算出部
28:アクチュエータ駆動部
30、30b:加算部
32:偏差算出部
100:ロボット本体
110:アクチュエータ
120:力センサ
130:ロボット操作装置
10a, 10b, 10c: Robot control device 20: Gait data storage units 22a, 22b, 22c: Inverse conversion unit 24: Standard centroid position calculation unit 26, 26b: Actual centroid position calculation unit 28: Actuator drive unit 30, 30b: Adder 32: Deviation calculator 100: Robot main body 110: Actuator 120: Force sensor 130: Robot operating device

Claims (5)

体幹リンクに脚リンクと上方リンクが揺動可能に連結されている歩行ロボットであり、
体幹リンクと脚リンクの目標位置の時系列データを記憶している記憶手段と、
ロボット動作中に上方リンクの位置を取得する上方リンク位置取得手段と、
体幹リンクと脚リンクを前記記憶手段に記憶されている目標位置におくとともに上方リンクを標準位置においたときのロボットの重心位置と、体幹リンクと脚リンクを前記記憶手段に記憶されている目標位置におくとともに上方リンクを前記上方リンク位置取得手段で取得した位置においたときのロボットの重心位置との水平面内偏差を計算する水平面内偏差計算手段と、
前記記憶手段に記憶されている体幹リンクの目標位置の水平面内位置を、前記水平面内偏差だけ補正する補正手段と、
体幹リンクの目標位置の補正されたデータと、前記記憶手段に記憶されている脚リンクの目標位置のデータによって、体幹リンクと脚リンクの相対姿勢を制御する制御手段とを備えており、
前記記憶手段に記憶されている体幹リンクと脚リンクの目標位置の時系列データは、上方リンクを標準位置においたときにロボットのバランスが確保される関係に設定されていることを特徴とする歩行ロボット。
A walking robot in which a leg link and an upper link are swingably connected to a trunk link,
Storage means for storing time series data of the target positions of the trunk link and the leg link;
Upper link position acquisition means for acquiring the position of the upper link during robot operation;
The position of the center of gravity of the robot when the trunk link and the leg link are stored at the target position stored in the storage means and the upper link is at the standard position, and the trunk link and the leg link are stored in the storage means. Horizontal plane deviation calculating means for calculating a horizontal plane deviation from the center of gravity of the robot when the upper link is placed at the target position and at the position acquired by the upper link position acquiring means;
Correction means for correcting the horizontal plane position of the target position of the trunk link stored in the storage means by the horizontal plane deviation;
Control means for controlling the relative posture of the trunk link and the leg link according to the corrected data of the target position of the trunk link and the data of the target position of the leg link stored in the storage means,
The time-series data of the target positions of the trunk link and the leg link stored in the storage means is set so as to ensure a balance of the robot when the upper link is at the standard position. Walking robot.
上方リンクの前記標準位置は、体幹リンクに対して固定されていることを特徴とする請求項1の歩行ロボット。   The walking robot according to claim 1, wherein the standard position of the upper link is fixed with respect to the trunk link. 上方リンクの動作を指定するために用いる入力手段を備えており、
前記上方リンク位置取得手段は、前記入力手段から入力した上方リンクの目標位置を取得することを特徴とする請求項1又は2の歩行ロボット。
It has an input means used to specify the operation of the upper link,
The walking robot according to claim 1, wherein the upper link position acquisition unit acquires a target position of the upper link input from the input unit.
体幹リンクと上方リンク間の関節角を計測する関節角計測手段を備えており、
前記上方リンク位置取得手段は、前記関節角計測手段の計測値から上方リンクの位置を取得することを特徴とする請求項1又は2の歩行ロボット。
It has a joint angle measurement means that measures the joint angle between the trunk link and the upper link,
The walking robot according to claim 1, wherein the upper link position acquisition unit acquires the position of the upper link from the measurement value of the joint angle measurement unit.
上方リンクで物体を把持する動作を指定するために用いる入力手段を備えており、
前記水平面内偏差計算手段は、体幹リンクと脚リンクを前記記憶手段に記憶されている目標位置におくとともに上方リンクを標準位置においたときのロボットの重心位置と、体幹リンクと脚リンクを前記記憶手段に記憶されている目標位置におくとともに上方リンクを前記上方リンク位置取得手段で取得した位置において物体を把持したときのロボットの重心位置との水平面内偏差を計算することを特徴とする請求項1から4のいずれかの歩行ロボット。
It has input means used to specify the action of gripping an object with the upper link,
The horizontal plane deviation calculating means sets the position of the center of gravity of the robot when the trunk link and the leg link are stored at the target position stored in the storage means and the upper link is at the standard position, the trunk link and the leg link. A horizontal plane deviation from the center of gravity position of the robot when the object is gripped at the position acquired by the upper link position acquisition unit and placed at the target position stored in the storage unit is calculated. The walking robot according to claim 1.
JP2005193273A 2005-07-01 2005-07-01 Walking robot Pending JP2007007797A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2005193273A JP2007007797A (en) 2005-07-01 2005-07-01 Walking robot

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005193273A JP2007007797A (en) 2005-07-01 2005-07-01 Walking robot

Publications (1)

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

Family

ID=37746919

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005193273A Pending JP2007007797A (en) 2005-07-01 2005-07-01 Walking robot

Country Status (1)

Country Link
JP (1) JP2007007797A (en)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007222951A (en) * 2005-12-06 2007-09-06 Sony Corp Robot device
JP2015208790A (en) * 2014-04-24 2015-11-24 トヨタ自動車株式会社 Device and method of estimating center of gravity
CN104238360B (en) * 2014-09-03 2016-08-24 浙江大学 A kind of acquisition methods of the Zc parameter of anthropomorphic robot desk-little vehicle model
JP2020501918A (en) * 2016-12-13 2020-01-23 ボストン ダイナミクス,インコーポレイテッド Whole-body manipulation for legged robots using dynamic balance

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6265190U (en) * 1985-10-14 1987-04-22
JPH054177A (en) * 1991-06-28 1993-01-14 Takenaka Komuten Co Ltd Control system for manipulator
JPH05305583A (en) * 1992-04-30 1993-11-19 Honda Motor Co Ltd Walking control device for leg type mobile robot
JP2004114243A (en) * 2002-09-26 2004-04-15 National Institute Of Advanced Industrial & Technology Device for generating walking possible power of biped robot
JP2005118924A (en) * 2003-10-15 2005-05-12 Toyota Motor Corp System for preparing walking figure data of robot

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6265190U (en) * 1985-10-14 1987-04-22
JPH054177A (en) * 1991-06-28 1993-01-14 Takenaka Komuten Co Ltd Control system for manipulator
JPH05305583A (en) * 1992-04-30 1993-11-19 Honda Motor Co Ltd Walking control device for leg type mobile robot
JP2004114243A (en) * 2002-09-26 2004-04-15 National Institute Of Advanced Industrial & Technology Device for generating walking possible power of biped robot
JP2005118924A (en) * 2003-10-15 2005-05-12 Toyota Motor Corp System for preparing walking figure data of robot

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007222951A (en) * 2005-12-06 2007-09-06 Sony Corp Robot device
JP2015208790A (en) * 2014-04-24 2015-11-24 トヨタ自動車株式会社 Device and method of estimating center of gravity
CN104238360B (en) * 2014-09-03 2016-08-24 浙江大学 A kind of acquisition methods of the Zc parameter of anthropomorphic robot desk-little vehicle model
JP2020501918A (en) * 2016-12-13 2020-01-23 ボストン ダイナミクス,インコーポレイテッド Whole-body manipulation for legged robots using dynamic balance
JP2021059011A (en) * 2016-12-13 2021-04-15 ボストン ダイナミクス,インコーポレイテッド Whole body manipulation on legged robot using dynamic balance
JP2022020784A (en) * 2016-12-13 2022-02-01 ボストン ダイナミクス,インコーポレイテッド Total body manipulation on leg robot using dynamic balance
US11667343B2 (en) 2016-12-13 2023-06-06 Boston Dynamics, Inc. Whole body manipulation on a legged robot using dynamic balance
JP7469282B2 (en) 2016-12-13 2024-04-16 ボストン ダイナミクス,インコーポレイテッド Whole-body manipulation for legged robots using dynamic balance

Similar Documents

Publication Publication Date Title
JP6483014B2 (en) Mobile robot controller
US20130079929A1 (en) Robot and control method thereof
US9334002B2 (en) Balance control apparatus of robot and control method thereof
JP5975735B2 (en) Robot and control method thereof
KR100718479B1 (en) Ambulation control apparatus and ambulation control method of robot
JP5129415B2 (en) ROBOT, ROBOT CONTROL DEVICE, CONTROL METHOD, AND CONTROL PROGRAM
KR101743926B1 (en) Robot and control method thereof
US8271137B2 (en) Robot and method of controlling the same
US20110178637A1 (en) Walking control apparatus of robot and method of controlling the same
JP6498597B2 (en) Mobile robot controller
US9014854B2 (en) Robot and control method thereof
US10099378B2 (en) Mobile robot
KR20130068694A (en) Walking robot and method for controlling the same
JP2007175809A (en) Robot controller
US20130116820A1 (en) Walking robot and control method thereof
JPH10217159A (en) Remote control system for mobile robot with legs
US20120059518A1 (en) Walking robot and control method thereof
KR20110082394A (en) Walking robot and control method thereof
JP2010069546A (en) Robot control apparatus, robot control method, and robot control program
US20100268382A1 (en) Controller of mobile robot
WO2004033160A1 (en) Robot device operation control device and operation control method
JP2007007797A (en) Walking robot
Seiwald et al. Quintic spline collocation for real-time biped walking-pattern generation with variable torso height
JP2014155985A (en) Robot, robot control device, control method, and control program
JP6240590B2 (en) Mobile robot controller

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20071207

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110118

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20110705