JP4613539B2 - ロボットの動作計画方法 - Google Patents

ロボットの動作計画方法 Download PDF

Info

Publication number
JP4613539B2
JP4613539B2 JP2004210671A JP2004210671A JP4613539B2 JP 4613539 B2 JP4613539 B2 JP 4613539B2 JP 2004210671 A JP2004210671 A JP 2004210671A JP 2004210671 A JP2004210671 A JP 2004210671A JP 4613539 B2 JP4613539 B2 JP 4613539B2
Authority
JP
Japan
Prior art keywords
robot
acceleration
speed
posture
fall
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.)
Expired - Fee Related
Application number
JP2004210671A
Other languages
English (en)
Other versions
JP2006026828A (ja
Inventor
真太郎 吉澤
暁友 張
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 JP2004210671A priority Critical patent/JP4613539B2/ja
Publication of JP2006026828A publication Critical patent/JP2006026828A/ja
Application granted granted Critical
Publication of JP4613539B2 publication Critical patent/JP4613539B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明は、与えられた初期姿勢及び最終姿勢に基づいて、初期姿勢から最終姿勢までのロボットの動作を計画するロボットの動作計画方法に関する。
二足歩行型のロボットの歩行制御において、ZMP規範が良く知られている([特許文献1],[非特許文献1])。ZMP(Zero Morment Point)とは、ロボットが位置する床面上において、このロボットの各部材の重力によるモーメントと慣性力によるモーメントと(もし外力が作用していれば、さらに外力によるモーメントと)の総和がゼロとなる点のことである。ZMP規範とは、このZMPがロボットの接地面が形成する支持多角形(安定領域と呼ばれる)の辺上又は内部にあればロボットは転倒せずに安定に移動することが可能であるとする規範である([非特許文献2])。
なお、ZMP規範は、二足歩行ロボットに対してのみ適用されるものではなく、車輪などによって移動するロボットなどに対しても有効である。また、ロボット自体やロボットの腕などを操作する際には、その経路を設定する必要が生じる。下記[非特許文献3]には、確率機構を用いた経路計画について記載されている。[非特許文献3]の方法では、スタート位置(初期姿勢)とゴール位置(最終姿勢)とが設定され、この間に一つ以上の中間点を経由する経路が設定される。
特開2003−236780号公報 ヴィークル搭載型マニュピレータの安定化制御−安定規範とマニュピレータによる補償運動− 黄強,菅野重樹,加藤一郎 計測自動制御学会論文集Vol.31,No.7,861〜870ページ 1995年7月 上体の運動によりモーメントを補償する2足歩行ロボット 高西淳夫 日本ロボット学会誌Vol.11,No.3,348〜353ページ 1993年4月 Randomized Kinodynamic Planning : S.M.LaValle and J.J.Kuffner,Jr. : Proc of IEEE Int. Conf. on Robotics and Automation, 1999
上述した文献などでの経路生成では、何れもロボットの安定した動作を補償することが十分に検討されていない。このため、ロボットが決定された経路でその一部(ロボットアーム)や全体を移動させたときに転倒してしまうなどのおそれがあった。ロボットがその一部や全体を移動させる際には、重力に対するバランスだけでなく、慣性力によるバランスなども考慮する必要があり、これらを十分に考慮しないと転倒してしまう。従って、本発明の目的は、ロボットの初期姿勢から最終姿勢までの安定した動作を計画することのできるロボットの動作計画方法を提供することにある。
請求項1に記載のロボットの動作計画方法は、ロボットの初期姿勢及び最終姿勢に基づいて、初期姿勢と最終姿勢とをつなぐ動作を確率を用いて計画するもので、重力によってロボット各部に作用する複数のモーメントの釣り合い条件に基づいて、動作中のある時点での停止状態でロボットが転倒するか否かを静的に判定する静的転倒判定工程と、静的転倒判定工程において、ロボットが動作の間に静的に転倒しないと判定された場合に、重力及び動作による慣性力によって該ロボットに作用する複数のモーメントのつり合い条件を考慮して動作中にロボットが転倒しないと動的に判定されるように、該ロボット各部の速度及び/又は加速度を設定する速度/加速度変更工程とを備え、静的転倒判定工程は、初期姿勢と最終姿勢との間に設定された複数の中間姿勢の動作を滑らかにする平滑化工程によって平滑化された動作計画を用いてロボットが転倒するか否かを静的に判定し、速度/加速度変更工程は、移動駆動部上に複数の関節を連結した胴体部を有するロボットの複数の関節ごとに、初期姿勢と最終姿勢との間に設定された複数の中間姿勢における最大角速度及び/又は最大角加速度を超えないように、複数の中間姿勢間の動作にかかる動作時間を設定し、平滑化工程によって平滑化された後に最大角加速度を超えないように動作時間を修正することを特徴としている。
請求項2に記載の発明は、請求項1に記載のロボットの動作計画方法において、速度/加速度変更工程における動的転倒判定時に、ZMP規範に基づいてロボットが動的に転倒しないようにロボットの複数の関節ごとの速度及び/又は加速度を設定することを特徴としている。

請求項3に記載の発明は、請求項1又は2に記載のロボットの動作計画方法において、ロボットの複数の関節ごとについて許容し得る上限値となる最大速度及び/又は最大加速度が予め決定されており、速度/加速度変更工程においては、最大速度及び/又は最大加速度を減少させることを特徴としている。

請求項1に記載のロボットの動作計画方法における速度/加速度変更工程において行われる「重力及び動作による慣性力によってロボットに作用する複数のモーメントのつり合い条件を考慮して動作中にロボットが転倒しないと動的に判定(動的転倒判定)」する工程を、以下、動的転倒判定工程と言うこととする。即ち、動的転倒判定工程は、速度/加速度変更工程に含まれている。請求項1に記載のロボットの動作計画方法によれば、静的には転倒しないと判断されるときには、動的にも転倒しないようにロボット各部の速度(加速度)を設定する。このようにすることで、動的にも転倒しない経路を決定でき、ロボットを安定して動作させることができる。
なお、速度/加速度変更工程においては、速度だけで動的に転倒しないようにしても良いし、加速度だけで動的に転倒しないようにしても良いし、速度と加速度の双方を制御して動的に転倒しないようにしても良い。このようにすれば、静的には転倒しないが動的には転倒するような場合を確実に回避することができる。また、動的転倒判定工程においては、ロボットに作用する重力及び慣性力を考慮するが、ロボットに作用する重力・慣性力以外の力(例えば外力)を考慮する事を除外しているわけではないことは言うまでもない。
請求項2に記載のロボットの動作計画方法によれば、ZMP規範に基づいて動的転倒判定を行うため、転倒判定を迅速かつ的確に判定することができる。この結果、経路決定を迅速かつ確実に行うことができる。
請求項3に記載のロボットの動作計画方法によれば、ロボット各部(例えばロボットアームの関節部など)毎に予め設定される最大速度や最大加速度を引き下げることで、慣性力を低減し、ロボットの動作を安定化させる。このようにすることで、経路はそのままにしつつもロボットの動作を安定化させることが可能となり、動作計画を迅速かつ確実に行うことができる。
本発明の動作計画方法の一実施形態について以下に説明する。動作計画によってロボットの移動経路が計画される。まず、本実施形態の動作計画方法を実行(演算)する装置(安定動作計画手段)の構成を図1に示す。安定動作計画手段1は、具体的にはコンピュータによって構成されている。図1に示されるように、安定動作計画手段1は外部環境情報を入力する手段である外部環境情報入力手段2と、生成過程にある経路や最終的に生成した(設定した)経路を出力する経路出力手段3とを有している。
外部環境情報入力手段2は、移動経路を生成する自動機械(ロボット自体やロボットアームなど)周辺の情報、特に障害物情報を外部環境として取得する手段であり、カメラや各種センサなどの情報取得デバイスが例として挙げられる。あるいは、外部環境情報入力手段2は、キーボードや光ディスクドライブなどであっても良く、オペレータが手動で外部環境情報を入力しても良いし、すでにデータ化されて光ディスクに格納されている外部環境情報を入力しても良い。経路出力手段3は、具体的には、モニタやプリンタ、記憶可能な媒体を扱うドライブなどである。
外部環境情報入力手段2から入力された外部環境情報は、環境情報記憶手段4に蓄積される。環境情報記憶手段4は、具体的にはハードディスクやRAMなどである。環境情報記憶手段4には、知識としての環境情報(すでに知識として保持している情報)と、上述したような、外部環境情報入力手段2によって新たに入力された環境情報とを保持する。外部環境情報入力手段2によって新たに入力された環境情報は、その後は知識としての環境情報として蓄積される。安定動作計画手段1は、ロボットの初期姿勢と最終姿勢とを入力する初期・最終姿勢入力手段5や、初期姿勢と最終姿勢との間に中間姿勢を設定する中間姿勢生成手段6や、速度設定手段7、加速度設定手段8、衝突判定手段9、転倒判定手段10なども有している。
速度設定手段7は、ある中間姿勢から次の中間姿勢までの動作にかかる時間を設定することで、ロボット各部の速度を設定する。即ち、ここでは、ある中間姿勢から次の中間姿勢までの単なる位置の変化だけでなく、動作にかかる時間をも考慮している。同様に、加速度設定手段8は、上述した速度の時間変化を考慮することで、ロボット各部の加速度を設定する。なお、速度や加速度は、関節部であれば角速度や角加速度が用いられる場合もありえる。
衝突判定手段9は、環境情報記憶手段4に記憶された障害物に関する情報に基づいて、生成中の動作経路が障害物と干渉するかどうかを判定するものである。動作経路が障害物と干渉するようであれば、中間姿勢生成手段6によって障害物と干渉する姿勢が修正される。転倒判定手段10は、障害物と干渉しないものとして生成された動作経路に沿ってロボットを動作させたときに、ロボットが転倒するか否かを静的及び動的に判定する。静的に転倒すると判定されるようであれば、中間姿勢生成手段6によって中間姿勢が修正される(動作経路が修正される)。
静的には転倒しない場合は、動的に転倒しないように動作(経路だけでなく速度や加速度を含む)が設定される。このとき、まず、経路のみ(速度や加速度を含まない)を決定し、この経路が静的に転倒しないと判定された場合に、動的に転倒しないように速度や加速度を設定する事が考えられる。なお、静的に転倒すると判断される場合は、中間姿勢生成手段6によって経路(中間姿勢)自体が修正あるいは再生成される。
あるいは、動作(経路だけでなく速度や加速度を含む)を生成し、この動作が静的に転倒しないと判定できる場合に、動的転倒判定を行うようにしても良い。この場合に、動的判定で転倒すると判定される場合には、中間姿勢生成手段6によって経路(中間姿勢)を変更しても良いし、速度や加速度だけを修正しても良い。この場合も、静的に転倒すると判断される場合は、経路(中間姿勢)自体が修正あるいは再生成される。
速度や加速度を修正する場合は、速度設定手段7や加速度設定手段8によって速度や加速度を低減させて(動作経路自体は変わらない)転倒しないようにする。速度や加速度を制御しても転倒を防止できないような場合は、中間姿勢生成手段6によって中間姿勢が修正される(動作経路が修正される)。これらの中間姿勢生成手段6〜転倒判定手段10などは、ハードディスク内やROM内に格納されたプログラムとこれを実行するCPUなどによって実現されている。
次に、動作経路計画の手順について順を追って説明する。図2は、台車101上に人型の上体を取り付けたロボット100を模式的に示した図である。台車101には、四つの車輪102が取り付けられている。ロボット100は、これら車輪102を内部のモータで駆動して移動することができる。上体は、胴体103と左右の腕104L,104Rと頭部105とからなっている。頭部105には、上述した外部環境取得手段としてのカメラが人間の目を模して内蔵されている。
胴体103には、1B〜4Bの関節ジョイントが配設されている。関節ジョイント1B,2B,4Bは、紙面に平行でかつ図中左右に伸びる回転軸を持つ関節である。関節ジョイント3Bは、紙面に平行でかつ図中上下に伸びる回転軸を持つ関節である。関節ジョイント1B,2B,4Bによって前のめりや後のめりの体勢を作り、関節ジョイント3Bによって腰をまわすのと同様に上体をまわした体勢を作る。
左右の腕104L,104Rは、左右対称なので右腕104Rを例に説明する。また、便宜上ここに言う腕には肩も含むものとする。右腕104Rには、5R〜11Rの関節ジョイントが配設されている。また、図示されていないが、手先部には、対象物を把持するために、指関節に相当する小さな関節ジョイントが配設されている。関節ジョイント5Rは、紙面に平行でかつ図中左右に伸びる回転軸を持つ関節であり、腕を前方に上げる際に用いられる。関節ジョイント6Rは、紙面に垂直な回転軸を持つ関節であり、腕を側方に上げる際に用いられる。関節ジョイント7R,9Rは、紙面に平行でかつ図中上下に伸びる回転軸を持つ関節であり、腕をねじる際に用いられる。関節ジョイント8R,11Rは、紙面に平行でかつ図中左右に伸びる回転軸を持つ関節であり、手先を肩につけるように曲げる際に用いられる。関節ジョイント10Rは、紙面に垂直な回転軸を持つ関節であり、手先部を動かす際に用いられる。
即ち、このロボット100の上体は、胴体が4自由度(4DOF:Degree Of Freedom)、腕部が7自由度(7DOF)、手先部が13自由度(13DOF)の自由度を有している。また、台車101を底面側から見た図を図3に示す。図3に示されるように、台車101は4つの車輪102を備えており、車輪102の回転方向や回転速度を制御することで、移動やその場での方向転換が可能である。また、図3中には、車輪102と床面との接点を結んだ多角形(支持多角形)によって囲まれたハッチングを施した領域(安定領域α:辺上を含む)が示されている。この安定領域については、後述する転倒判定時にさらに説明する。
次に、上述したロボット100の動作計画について説明する。動作計画では、ロボット100の全体あるいは一部(腕104R,104Lなど)の移動経路とそのときの移動速度及び移動加速度を決定する。ロボット100が存在する実際の作業空間に対してx,y,z座標軸を設定し、同時に、ロボット100の姿勢を変えるパラメータとなり得る情報量(ここでは、関節1B〜4B,5R〜11R,5L〜11Lの各角度θ1B〜θ4B,θ5R〜θ11R,θ5L〜θ11L)を各座標軸の座標として設定可能な多次元座標軸(ここでは18次元となる)を設定する。即ち、ロボット100(ここではロボットアームのみで説明しているが)のある姿勢は、多次元座標軸上の一点で示すことができる。このようにすると、実際の作業空間での手首位置Xの座標(x,y,z)は、多次元座標軸上に示されるベクトル(θ1B,…,θ4B,θ5R,…,θ11R,θ5L,…,θ11L)の値[ベクトル先端の座標位置]を座標変換することで容易に得ることができる。なお、ここでは、説明の便宜上、人間の指に相当する手先部の動きと、台車101の移動は考えないことする。
ロボット100の動作計画に際しては、まず、外部環境情報入力手段2によって外部環境情報が入力される。すでに入力され、環境情報記憶手段4に蓄積された情報のみで不足がない場合は、新たな外部環境情報の入力は必ずしも必要ない。次に、ロボット100の初期姿勢と最終姿勢とをオペレータがセットする。これらの姿勢があらかじめプリセットされているのであれば、オペレータによる入力は必要ない。入力は、キーボードから座標位置を入力するなどして設定することができる。あるいは、安定動作計画手段1にロボット100を接続し、ロボット100を実際に初期姿勢及び最終姿勢をとらせて安定動作計画手段1に読み込ませるようにしても良い。また、装置に組み込まれたカメラや各種センサによって外部環境情報が自動又は半自動で取得されるようにしても良い。初期姿勢及び最終姿勢は、最終的には上述した多次元座標空間上の座標に変換される。
初期・最終姿勢入力手段5は、環境情報記憶手段4に蓄積された情報と照らし合わせて、入力された初期姿勢及び最終姿勢が障害物と衝突していないか(干渉していないか)を判断し、衝突していない場合はこれらを初期姿勢及び最終姿勢として決定する。衝突判定時には、多次元座標軸上の一点の座標として表された姿勢を実際の作業空間に反映させ、そこで外部環境情報として蓄積されている障害物に関する情報と照らし合わせて衝突しているか否かが判定される。このような衝突判定は既存の手法を用いることができる。
なお、もし、入力された初期姿勢及び/又は最終姿勢が障害物と衝突している場合はオペレータに対して再入力を促し、再入力された初期姿勢及び/又は最終姿勢について同様の判定を行い、初期姿勢及び最終姿勢が決定されるまで反復される。次に、公知の手法によって、初期姿勢と最終姿勢との間に中間姿勢が仮設定される(中間姿勢設定工程)。この中間姿勢の仮設定は、中間姿勢生成手段6によって行われる。この中間姿勢の設定方法としては、例えば、上述した多次元座標軸上に中間姿勢に対応する座標をランダムに発生させればよい。
初期姿勢と最終姿勢との間には、順番を含めて複数の中間姿勢が設定される。このとき、中間姿勢が仮設定された状態では、姿勢(空間的位置)のみが仮設定されただけであり、動作速度のような時間的な要素は設定されていない。そこで、次に、時間的要素を決定するため、各関節毎に設定されている最大速度(最大角速度)を超えないように、各中間姿勢の間に必要な時間が決定される(時間設定工程)。この時間設定は、速度設定手段7によって行われる。具体的には、各関節毎に時間−関節角のグラフが生成され、このグラフ上に各中間姿勢に相当する関節角が座標としてプロットされたときに、各座標を順に結ぶ線分の傾きとして表される角速度が最大角速度を超えないように設定される。
可能である場合は最大角速度で設定されるが、このような時間設定はすべての関節において同時に行われるため、最も条件の厳しい関節に合わせてすべての関節についての中間姿勢間の時間、即ち、関節角速度が設定される。なお、速度(角速度)だけでなく、加速度(角加速度)についても同様のことが行われ、各関節における角加速度が予め設定された最大角加速度を超えないように設定される。なお、時間−角加速度のグラフは、時間−角速度のグラフを一階微分すれば容易に得られる。この角加速度に関する時間設定は、加速度設定手段8によって行われる。
上述した時間に関する要素の決定について、ある関節ジョイント部分を例にして説明する。ある関節ジョイントの角度について、初期姿勢での角度をθ、最終姿勢の角度をθとする。そして、上述した中間姿勢生成時に、この関節ジョイント部分に関して仮設定された中間姿勢での関節ジョイントの角度をθ,θ,…,θと表すものとする。例えば、ここで、時間設定が行われる以前には、θとθ,θとθi+1,θとθの間の移動にかかる時間を一定時間tであると仮定して、関節ジョイントの角度の時間変化をグラフにして示すと図4のようになる。
図4から分かるように、図4の角度変化を示す折れ線の傾きが角速度を表すことになる。ここでは、角速度は時間に対して一定の割合で増減するため、角加速度はゼロである。しかし、ロボット100を実際に駆動する場合には、関節ジョイント部分のアクチュエータ(モータなど)の機械的性能などから、角速度や角加速度には上述した最大角速度や最大角加速度といった制限を設ける必要が生じる。これらの条件は予め安定動作計画手段1にインプットされており、これらの制約を考慮して時間設定が行われる。即ち、図4のように、単純に中間姿勢間の移動にかかる時間を決めてしまうと、アクチュエータなどの機械的性能などのために実現し得ない経路設計がなされてしまう場合や、アクチュエータの駆動に不都合がある場合などがある。
そこで、各関節ジョイントに関する上述した制約を考慮した最大角速度ωmaxが予め設定される。そして、θからθi+1までの時間間隔を(ti+1−t)として、|(θi+1−θ)/ωmax|で定義される時間を設定すれば、角速度が許容範囲内となる時間設定を行える。二つの関節ジョイント部分における角度・角速度の時間変化の例を図5に示す。なお、各中間姿勢の間の時間(例えば、図5中のΔtの長さ)は全ての関節ジョイント部で一致させる必要がある。図5では、関節Aと関節Bとにおける各中間姿勢での制御タイミングがすでに一致されている状態が示されている。
そこで、次に、このΔtの長さの求め方、即ち、複数の関節ジョイント部分での中間姿勢の制御タイミングを合わせる方法について説明する。関節Aに関しては、Δtの前後で角度がθ1Aからθ2Aに変化したとし、関節Bに関しては、Δtの前後で角度がθ1Bからθ2Bに変化したとする。このとき、上述したように、関節Aに関しては、最大角速度ωAmaxが設定されていたとすると、関節Aでの角速度を許容範囲内とするには、Δtは|θ2A−θ1A|/ωAmax以上とする必要がある。同様に、関節Bに関しては、最大角速度ωBmaxが設定されていたとすると、関節Bでの角速度を許容範囲内とするには、Δtは|θ2B−θ1B|/ωBmax以上とする必要がある。そこで、Δt=max{|θ2A−θ1A|/ωAmax,|θ2B−θ1B|/ωBmax}とし、各関節で必要な時間の中で最長の時間を選択してΔtとして決定する。ここでは、二つの関節を例にして説明しているが、関節が複数でも同様に行えば良い。また、Δt以降の各時間間隔についても同様にタイミングを一致させる。これで、時間設定が終了する(後述するが、さらに修正される場合もある)。
この後、設定された中間姿勢のうち、省略できる姿勢を省略して動作(経路)を単純化する平坦化が行われ(平坦化工程:これについては詳述しない)、その後、動作(経路)を滑らかにする平滑化が行われる(平滑化工程)。平滑化について簡単に説明する。平坦化が終了した時点での経路は、各中間姿勢において急激に動作方向が変わるものとなっている。このような急激に方向の変わる動作を、滑らかな軌跡を描くように修正してロボット100の動きを滑らかにするのが平滑化である。ここでは、平滑化後の経路を無限回微分可能な関数によって近似する。このため、経路自体の滑らかさに加えて、その経路上の移動速度及び加速度の滑らかさも保証される。さらに、平滑化後の経路についても障害物と衝突するか検証し、衝突する場合は回避されるまで平滑化が再履行される。
平滑化後のある関節についての平滑化後の時間−角度曲線の一例を図6(a)に示す。また、図6(a)に対応する時間−角速度曲線を図6(b)に、時間−角加速度曲線を図6(c)に示す。平滑化は、直線で構成されている平滑化前の時間−角度曲線における節(ノード)部分を滑らかにする。このため、平滑化前に角速度が最大加速度以下となっていれば、平滑化後も角速度は最大角速度以下となる。しかし、角加速度に関しては、平滑化後に、許容し得る最大角加速度を超えないことは保証されていない。そこで、角速度の最大許容角速度ωmaxと同様に、角加速度についても最大角加速度amaxが予め設定され、角加速度がこの最大角加速度amaxを超えないように平滑化後の経路が修正される(時間修正工程)。この経路修正工程では、時間スケールが局所的に修正され、これによって角加速度が許容範囲内に納められる。
なお、以下、ある関節を例にして説明するが、最終的には全ての関節について同様のことが行われる。図6中、点線が平坦化後・平滑化前の経路についての角度・角速度・角加速度を示しており、実線が平滑化後の経路についての角度・角速度・角加速度を示している(角加速度に関しては、平滑化前の経路ではつねに0であるので図示を省略する)。図6からも分かるように、上述したノードを提示する時刻で角加速度は極大値・極小値をとる。すべてのノードでの角加速度のなかから、上述した最大角加速度amaxを超えるものを抽出する。そして、最大角加速度amaxを超えているノードに関しては、その部分時間軸を局所的に引き伸ばして角加速度を許容範囲内に修正する。
なお、ある関節について、角加速度条件から時間軸の引き延ばしが行われた場合は、同時刻における他の関節における角加速度が許容範囲内であっても、全ての関節についての時間軸も引き延ばされ、全体としての制御タイミングが一致するようになされる。なお、障害物との衝突判定を、動作がある程度確定する加速度設定後に行うようにしても良い。このようにして、一旦、動作が決定されたら、この動作に関して転倒判定を行う。まず、静的転倒判定を行う(静的転倒判定工程)。静的転倒判定は、重力の影響のみを考慮してロボット100が転倒するかどうかを判定する。これは、各部の重量とロボット100の重心位置などをもとに、公知の方法で算出することで判定できる。例えば、上体を前傾させ過ぎれば、ロボット100は前方に倒れる。このようなことが起きないかを、ここまでで決定している動作の全行程で判定する。
静的に転倒すると判断される場合は、中間姿勢の生成からやり直しとなる。なお、全経路についてやり直してもよし、転倒すると判断された姿勢の前後のみをやり直してもよい。一方、静的に転倒しないと判断された場合は、今度は動的に転倒しないかどうかの判定が行われる(動的転倒判定工程)。この判定は、上述したZMP規範に則って行われる。ZMPを計算によって求めるには、まず、各関節の角度・角速度・角加速度を既知値として、各関節間のリンクの角速度・角加速度、及び、ロボット100の重心の並進加速度を計算する。
次に、各リンクの慣性力と慣性モーメントとを計算する。さらに、計算した慣性力・慣性モーメント及び重心位置を慣性座標系に変換し、最後に、ZMPが算出される。ZMPの算出方法は公知であるため、ここでのさらなる詳しい説明は省略する。そして、このZMPが図3中の安定領域α内(辺上を含む)にあれば、転倒しないで安定して動作を行えると判断できる。なお、上述した計算には、ロボットの各リンクに関するデータ、即ち、図2中のリンク長L〜L12などの形状データや各リンクの重量などが必要となるが、これらは予め環境情報記憶手段に記憶されている。また、算出に必要な角度・角速度・角加速度は上述したものが用いられることとなる。
動的な転倒判定で転倒しないと判断されれば動作計画は終了する。しかし、動的転倒判定によって転倒する場合は、転倒しないように速度(角速度)及び/又は加速度(角加速度)を調整して転倒しないように動作を修正する(速度/加速度変更工程)。修正方法は、いくつか考えられるが、例えば、(1)上述した最大角加速度amaxは固定したまま、最大角速度ωmaxを一定の割合で徐減させ、更新された最大角速度ωmaxを超える角速度部分を修正し、転倒判定(静的及び動的)を行うことを繰り返す、ことが考えられる。ただし、角速度には最小角速度ωminも設定されており、最大角速度ωmaxを徐減させていったところ、最小角速度ωminに達してもまだ動的転倒判定で転倒すると判定された場合は、動作計画を最初からやり直すものとする。
あるいは、(2)上述した最大角速度ωmaxは固定したまま、最大角加速度amaxを一定の割合で徐減させ、更新された最大角加速度amaxを超える角加速度部分を修正し、転倒判定(静的及び動的)を行うことを繰り返す、ことが考えられる。ただし、角加速度には最小角加速度aminも設定されており、最大角加速度amaxを徐減させていったところ、最小角加速度aminに達してもまだ動的転倒判定で転倒すると判定された場合は、動作計画を最初からやり直すものとする。
あるいは、(3)上述した最大角速度ωmaxと最大角加速度amaxとを同時に一定の割合で徐減させ、更新された最大角速度ωmax及び最大角加速度amaxを超える部分を修正し、転倒判定(静的及び動的)を行うことを繰り返す、ことが考えられる。ただし、この場合も、角速度には最小角速度ωminが、角加速度には最小角加速度aminが設定されており、最大角速度ωmax及び最大角加速度amaxを徐減させていったところ、何れかが最小角速度ωmin又は最小角加速度aminに達してもまだ動的転倒判定で転倒すると判定された場合は、動作計画を最初からやり直すものとする。
なお、本発明は上述した実施形態に限定されるものではない。例えば、上述した実施形態では、屈曲部の関節を例に説明したので、角度・角速度・角加速度で動作計画が説明された。しかし、ロボット100の姿勢を決めるものとしては、例えば、伸張可能な部分の伸張量なども挙げられる。このような場合は、伸張量・伸張速度・伸張加速度を用いて動作計画が行われる。また、上述した実施形態では、台車101を移動させない場合を例に説明したが、移動させた場合にも本発明を適用することが可能である。また、上述した実施形態は台車移動ロボット100を例にして説明したが、脚式移動ロボットなどに対しても本発明を適用することが可能である。また、一つの大きな動作をいくつかに分割し、それぞれについて動作を計画し、両者を一連の動作として扱うことも可能である。即ち、分割したはじめの計画の最終姿勢が、分割した次の計画の初期姿勢と一致することとなる。
本発明のロボットの動作計画方法の一実施形態を実施する装置の構成図である。 本発明のロボットの動作計画方法の一実施形態によって制御される台車式ロボットを模式的に示す図である。 図2のロボットを底面から見た図である。 各中間姿勢間の時間を一定とした場合の時間−関節角度のグラフである。 時間設定後の時間−関節角度のグラフであり、(a)は関節Aについての、(b)は他の関節Bについてのグラフである。 (a)時間−角度、(b)時間−角速度、(c)時間−角加速度の関係を示すグラフである。
符号の説明
1…安定動作計画手段、2…外部環境情報入力手段、3…経路出力手段、4…環境情報記憶手段、5…初期・最終姿勢入力手段、6…中間姿勢生成手段、7…速度設定手段、8…加速度設定手段、9…衝突判定手段、10…転倒判定手段、100…ロボット、101…台車、102…車輪、103…胴体、104R……右腕、104L……左腕、105…頭部。

Claims (3)

  1. 移動駆動部上に複数の関節を連結した胴体部を有するロボットの初期姿勢及び最終姿勢に基づいて、初期姿勢と最終姿勢とをつなぐ動作を確率を用いて計画するロボットの動作計画方法において、
    重力によって前記ロボット各部に作用する複数のモーメントのつり合い条件に基づいて、前記動作中のある時点での停止状態で前記ロボットが転倒するか否かを静的に判定する静的転倒判定工程と、
    前記静的転倒判定工程において、前記ロボットが前記動作の間に静的に転倒しないと判定された場合に、重力及び動作による慣性力によって該ロボットに作用する複数のモーメントのつり合い条件を考慮して前記動作中に前記ロボットが転倒しないと動的に判定されるように、該ロボットの一部の速度及び/又は加速度を設定する速度/加速度変更工程とを備え、
    前記静的転倒判定工程は、初期姿勢と最終姿勢との間に設定された複数の中間姿勢の動作を滑らかにする平滑化工程によって平滑化された動作計画を用いて前記ロボットが転倒するか否かを静的に判定し、
    前記速度/加速度変更工程は、
    移動駆動部上に複数の関節を連結した胴体部を有する前記ロボットの前記複数の関節ごとに、初期姿勢と最終姿勢との間に設定された複数の中間姿勢における最大角速度及び/又は最大角加速度を超えないように、前記複数の中間姿勢間の動作にかかる動作時間を設定し、
    前記平滑化工程によって平滑化された後に前記最大角加速度を超えないように前記動作時間を修正すること、
    を特徴とするロボットの動作計画方法。
  2. 前記速度/加速度変更工程における動的転倒判定時に、ZMP規範に基づいて前記ロボットが動的に転倒しないように前記ロボットの複数の関節ごとの速度及び/又は加速度を設定することを特徴とする請求項1に記載のロボットの動作計画方法。
  3. 前記ロボットの複数の関節ごとについて許容し得る上限値となる最大速度及び/又は最大加速度が予め決定されており、前記速度/加速度変更工程においては、前記最大速度及び/又は前記最大加速度を減少させることを特徴とする請求項1又は2に記載のロボットの動作計画方法。

JP2004210671A 2004-07-16 2004-07-16 ロボットの動作計画方法 Expired - Fee Related JP4613539B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2004210671A JP4613539B2 (ja) 2004-07-16 2004-07-16 ロボットの動作計画方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2004210671A JP4613539B2 (ja) 2004-07-16 2004-07-16 ロボットの動作計画方法

Publications (2)

Publication Number Publication Date
JP2006026828A JP2006026828A (ja) 2006-02-02
JP4613539B2 true JP4613539B2 (ja) 2011-01-19

Family

ID=35893762

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004210671A Expired - Fee Related JP4613539B2 (ja) 2004-07-16 2004-07-16 ロボットの動作計画方法

Country Status (1)

Country Link
JP (1) JP4613539B2 (ja)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5141098B2 (ja) * 2007-06-01 2013-02-13 ヤマハ株式会社 姿勢データフィルタ装置、姿勢データフィルタリング方法および姿勢データフィルタプログラム。
DE112009004356B4 (de) * 2009-01-29 2020-09-03 Toyota Jidosha Kabushiki Kaisha Steuervorrichtung und Steuerverfahren für Fahrzeuge
EP2933068B1 (en) * 2014-04-17 2021-08-18 Aldebaran Robotics Omnidirectional wheeled humanoid robot based on a linear predictive position and velocity controller
JP6075343B2 (ja) 2014-09-02 2017-02-08 トヨタ自動車株式会社 走行ロボット、その動作計画方法及びプログラム
CN108458715B (zh) * 2018-01-18 2020-05-15 亿嘉和科技股份有限公司 一种基于激光地图的机器人定位初始化方法
JP2021083488A (ja) * 2019-11-25 2021-06-03 株式会社バンダイ プログラム及び構造体制御システム
DE112021001484T5 (de) 2020-05-22 2023-01-12 Fanuc Corporation Roboter-System

Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05285866A (ja) * 1992-04-09 1993-11-02 Mitsubishi Heavy Ind Ltd 脚型移動機構の動的方向転換方法
JPH05305582A (ja) * 1992-04-28 1993-11-19 Honda Motor Co Ltd リンク式移動ロボットの制御装置
JPH07200033A (ja) * 1993-12-28 1995-08-04 Mitsubishi Electric Corp ロボット制御装置
JP2002301674A (ja) * 2001-04-03 2002-10-15 Sony Corp 脚式移動ロボット及びその運動教示方法、並びに記憶媒体
JP2002301684A (ja) * 2001-04-03 2002-10-15 Sony Corp 脚式移動ロボット並びに脚式移動ロボットのための情報伝達装置
WO2003057423A1 (fr) * 2001-12-28 2003-07-17 Honda Giken Kogyo Kabushiki Kaisha Dispositif de production de demarche pour robot se deplaçant sur des jambes
JP2003241811A (ja) * 2002-02-15 2003-08-29 Nachi Fujikoshi Corp 産業用ロボットの経路計画方法及び経路計画装置
JP2004001217A (ja) * 2002-05-30 2004-01-08 Kuka Roboter Gmbh ロボットと他の物体との衝突を回避する方法と装置
JP2004174654A (ja) * 2002-11-26 2004-06-24 Toyota Motor Corp 2足歩行ロボットの体幹姿勢を精度よく制御する方法
JP2005309990A (ja) * 2004-04-23 2005-11-04 Toyota Motor Corp 経路設定方法

Patent Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05285866A (ja) * 1992-04-09 1993-11-02 Mitsubishi Heavy Ind Ltd 脚型移動機構の動的方向転換方法
JPH05305582A (ja) * 1992-04-28 1993-11-19 Honda Motor Co Ltd リンク式移動ロボットの制御装置
JPH07200033A (ja) * 1993-12-28 1995-08-04 Mitsubishi Electric Corp ロボット制御装置
JP2002301674A (ja) * 2001-04-03 2002-10-15 Sony Corp 脚式移動ロボット及びその運動教示方法、並びに記憶媒体
JP2002301684A (ja) * 2001-04-03 2002-10-15 Sony Corp 脚式移動ロボット並びに脚式移動ロボットのための情報伝達装置
WO2003057423A1 (fr) * 2001-12-28 2003-07-17 Honda Giken Kogyo Kabushiki Kaisha Dispositif de production de demarche pour robot se deplaçant sur des jambes
WO2003057425A1 (fr) * 2001-12-28 2003-07-17 Honda Giken Kogyo Kabushiki Kaisha Dispositif de production de demarche pour robot se deplaçant sur des jambes, et dispositif de commande
JP2003241811A (ja) * 2002-02-15 2003-08-29 Nachi Fujikoshi Corp 産業用ロボットの経路計画方法及び経路計画装置
JP2004001217A (ja) * 2002-05-30 2004-01-08 Kuka Roboter Gmbh ロボットと他の物体との衝突を回避する方法と装置
JP2004174654A (ja) * 2002-11-26 2004-06-24 Toyota Motor Corp 2足歩行ロボットの体幹姿勢を精度よく制御する方法
JP2005309990A (ja) * 2004-04-23 2005-11-04 Toyota Motor Corp 経路設定方法

Also Published As

Publication number Publication date
JP2006026828A (ja) 2006-02-02

Similar Documents

Publication Publication Date Title
US10065306B2 (en) Traveling robot, motion planning method for traveling robot, and storage medium storing program for traveling robot
US8793019B2 (en) Control device for legged mobile robot
JP4560658B2 (ja) 脚式移動ロボットの制御装置
JP5284923B2 (ja) 脚式移動ロボットの制御装置
KR100685339B1 (ko) 이동 로봇
US8532824B2 (en) Control device for robot
JP5322562B2 (ja) 移動台車
EP1559519A1 (en) Robot device, motion control device for robot device and motion control method
WO2005051608A2 (ja) 移動体の制御装置
US20070156283A1 (en) Gait generator for mobile robot
JPH0663876A (ja) 移動ロボットの制御装置
WO2002040223A1 (fr) Robot mobile a deux jambes et son procede de commande, sa structure jambes, et unite jambe mobile destinee a ce robot
WO1998033629A1 (fr) Appareil de controle de robot mobile du type a jambes
JP2003241836A (ja) 自走移動体の制御方法および装置
JP5181957B2 (ja) ロボット制御装置、ロボット制御方法およびロボット制御プログラム
US20110213495A1 (en) External force target generating device of legged mobile robot
JP2014508660A (ja) 人型ロボットの転倒損傷低減制御法
JP2004223712A (ja) 歩行式ロボット及びその位置移動方法
JP4613539B2 (ja) ロボットの動作計画方法
JP4899165B2 (ja) 脚式移動ロボットの制御装置
JP2005309990A (ja) 経路設定方法
EP2428335B1 (en) Robot and control method thereof
JP4483254B2 (ja) ロボット装置及びロボット装置の制御方法
JP6468127B2 (ja) 全方位移動体、その制御方法及びプログラム
JP4982413B2 (ja) 脚車輪型移動ロボット

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20070410

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20080512

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080520

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080711

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090401

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090601

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20100330

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100618

A911 Transfer of reconsideration by examiner before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20100707

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20100921

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20101004

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20131029

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees