(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2022-03-30
(45)【発行日】2022-04-07
(54)【発明の名称】衝突回避動作計画のための方法
(51)【国際特許分類】
B25J 19/06 20060101AFI20220331BHJP
G05B 19/42 20060101ALI20220331BHJP
G05B 19/4093 20060101ALI20220331BHJP
【FI】
B25J19/06
G05B19/42 D
G05B19/4093 E
(21)【出願番号】P 2019520740
(86)(22)【出願日】2017-10-27
(86)【国際出願番号】 EP2017077620
(87)【国際公開番号】W WO2018078107
(87)【国際公開日】2018-05-03
【審査請求日】2020-07-01
(31)【優先権主張番号】102016120763.2
(32)【優先日】2016-10-31
(33)【優先権主張国・地域又は機関】DE
(73)【特許権者】
【識別番号】501493037
【氏名又は名称】ピルツ ゲーエムベーハー アンド コー.カーゲー
(74)【代理人】
【識別番号】110002310
【氏名又は名称】特許業務法人あい特許事務所
(72)【発明者】
【氏名】グレイシェン,クヌート
(72)【発明者】
【氏名】ヴォルツ,アンドレーアス
(72)【発明者】
【氏名】バコヴィック,ダニエル
【審査官】岩▲崎▼ 優
(56)【参考文献】
【文献】特開2003-200368(JP,A)
【文献】特開2014-073550(JP,A)
【文献】特開2004-280635(JP,A)
【文献】特開昭61-260306(JP,A)
【文献】特開2018-20413(JP,A)
【文献】HONG et al.,A Dynamic Subgoal Path Planner for Unpredictable Environments,2010 IEEE International Conference on Robotics and Automation,2010年05月03日
【文献】HONG et al.,A Planning Method for Safe Interation between Human Arms and Robot Manipulators,2005 IEEE/RSJ International Conference on Intelligent Robots and Systems,2005年08月02日
【文献】GHARBI et al.,Roadmap Composition for Multi-Arm Systems Path Planning,2009 IEEE/RSJ International Conference on Intelligent Robots and Systems,2009年10月10日
(58)【調査した分野】(Int.Cl.,DB名)
B25J 1/00-21/02
G05B 19/4093
(57)【特許請求の範囲】
【請求項1】
第1作業空間(16)における第1マニピュレータ(12)と第2作業空間(18)における第2マニピュレータ(14)との衝突回避動作計画のための方法(100)において、前記第1
作業空間(16)および
前記第2作業空間
(18)は少なくとも部分的に重なり、
前記第1マニピュレータ(12)の第1コンフィギュレーション空間の第1動的ロードマップ(22)であって、第1探索グラフ(24)と、前記第1作業空間(16)と前記第1探索グラフ(24)との間の第1マッピング(26)と、を含む前記第1動的ロードマップ(22)をインポートするステップと、
前記第2マニピュレータ(14)の第2コンフィギュレーション空間の第2動的ロードマップ(28)であって、第2探索グラフ(30)と、前記第2作業空間(18)と前記第2探索グラフ(30)との間の第2マッピング(32)と、を含む前記第2動的ロードマップ(28)をインポートするステップと、
前記第1マニピュレータ(12)の第1動作経路を前記第1動的ロードマップ(22)から決定するステップと、
前記第2マニピュレータ(14)の第2動作経路を前記第2動的ロードマップ(28)から決定するステップと、
前記第1動作経路および前記第2動作経路を協調グラフに関連付けるステップと、
前記協調グラフを用いて、前記第1マニピュレータ(12)および前記第2マニピュレータ(14)の動作を前記第1動的ロードマップ(22)と前記第2動的ロードマップ(28)とに基づいて協調させるステップと、
を含む、方法。
【請求項2】
前記動作を協調させるステップは、
前記第1マッピング(26)および前記第2マッピング(32)を使って、前記第1マニピュレータ(12)と前記第2マニピュレータ(14)との間の衝突を確認することを含む、請求項1に記載の方法。
【請求項3】
前記第1動作経路は、前記第2動作経路とは関係なく決定される、
請求項1または請求項2に記載の方法。
【請求項4】
前記第1動作経路は前記第1作業空間(16)における占有領域を画定し、前記第2動作経路は前記占有領域外で決定される、
請求項1から請求項3のいずれか1項に記載の方法。
【請求項5】
前記第1マニピュレータ(12)の前記第1動作経路を決定するために、前記第2マニ
ピュレータ(14)との衝突は無視され、前記第2マニピュレータ(14)の前記第2動作経路を決定するために、前記第1マニピュレータ(12)との衝突は無視される、
請求項1から請求項4のいずれか1項に記載の方法。
【請求項6】
前記第1マニピュレータ(12)の前記第1動作経路は第1直線グラフであり、前記第2マニピュレータ(14)の前記第2動作経路は第2直線グラフであり、前記協調グラフは前記第1および第2直線グラフの完全なグラフ積である、
請求項1から請求項5のいずれか1項に記載の方法。
【請求項7】
第1作業空間(16)における第1マニピュレータ(12)と第2作業空間(18)における第2マニピュレータ(14)との衝突回避動作計画のための方法(100)において、前記第1作業空間(16)および前記第2作業空間(18)は少なくとも部分的に重なり、
前記第1マニピュレータ(12)の第1コンフィギュレーション空間の第1動的ロードマップ(22)であって、第1探索グラフ(24)と、前記第1作業空間(16)と前記第1探索グラフ(24)との間の第1マッピング(26)と、を含む前記第1動的ロードマップ(22)をインポートするステップと、
前記第2マニピュレータ(14)の第2コンフィギュレーション空間の第2動的ロードマップ(28)であって、第2探索グラフ(30)と、前記第2作業空間(18)と前記第2探索グラフ(30)との間の第2マッピング(32)と、を含む前記第2動的ロードマップ(28)をインポートするステップと、
前記第1マニピュレータ(12)の第1動作経路を決定する
ステップと、
前記第1動作経路および前記第2探索グラフ(30)
を協調グラフに関連付ける
ステップと
、
前記協調グラフを用いて、前記第1マニピュレータ(12)および前記第2マニピュレータ(14)の動作を前記第1動的ロードマップ(22)と前記第2動的ロードマップ(28)とに基づいて協調させるステップと、
を含む
、方法。
【請求項8】
前記第1マニピュレータ(12)の前記第1動作経路は第1直線グラフであり、前記協調グラフは前記第1直線グラフと前記第2探索グラフ(30)とのデカルト積である、
請求項7に記載の方法。
【請求項9】
前記第1動作経路を決定するために、前記第2マニピュレータ(14)との衝突は無視される、
請求項7または
請求項8に記載の方法。
【請求項10】
第1作業空間(16)における第1マニピュレータ(12)と第2作業空間(18)における第2マニピュレータ(14)との衝突回避動作計画のための方法において、前記第1作業空間(16)および前記第2作業空間(18)は少なくとも部分的に重なり、
前記第1マニピュレータ(12)の第1コンフィギュレーション空間の第1動的ロードマップ(22)であって、第1探索グラフ(24)と、前記第1作業空間(16)と前記第1探索グラフ(24)との間の第1マッピング(26)と、を含む前記第1動的ロードマップ(22)をインポートするステップと、
前記第2マニピュレータ(14)の第2コンフィギュレーション空間の第2動的ロードマップ(28)であって、第2探索グラフ(30)と、前記第2作業空間(18)と前記第2探索グラフ(30)との間の第2マッピング(32)と、を含む前記第2動的ロードマップ(28)をインポートするステップと、
前記第1探索グラフ(24)および前記第2探索グラフ(30)
を協調グラフに関連付ける
ステップと
、
前記協調グラフを用いて、前記第1マニピュレータ(12)および前記第2マニピュレータ(14)の動作を前記第1動的ロードマップ(22)と前記第2動的ロードマップ(28)とに基づいて協調させるステップと、
を含む
、方法。
【請求項11】
前記協調グラフは、前記第1探索グラフ(24)と前記第2探索グラフ(30)とのデカルト積である、
請求項10に記載の方法。
【請求項12】
前記第1および第2動的ロードマップ(22,28)のうちの少なくとも1つは、付加的な時間情報からなるノードを有する拡張探索グラフを含む拡張動的ロードマップであり、前記第1マニピュレータ(12)および前記第2マニピュレータ(14)の前記動作の協調は前記拡張動的ロードマップに基づく、請求項1
から請求項11のいずれか1項に記載の方法。
【請求項13】
第1マニピュレータ(12)と、第2マニピュレータ(14)と、動的動作計画のための制御ユニットとからなり、前記制御ユニットは請求項1
から請求項12のいずれか1項に記載の方法を実行するように構成されている、装置。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、第1作業空間における第1マニピュレータと、対応する装置との衝突だけでなく、第1マニピュレータと第2作業空間における第2マニピュレータとの衝突を回避する動作計画のための方法に関する。
【背景技術】
【0002】
ロボット工学において、衝突回避動作計画とは、ロボットまたはそのマニピュレータについて、動作中に発生する障害物または自身との衝突のない、始点から終点までの動作経路を見つけるという作業である。衝突回避動作計画のための方法は、たとえば、特許文献1で知られている。
【0003】
特許文献1は、現代の生産システムにおいて使用されているような、1本のロボットアーム(マニピュレータ)を有する産業用ロボットの衝突回避動作計画を開示している。産業用ロボットは、ワークのハンドリング、組み立てまたは加工をするための工作機械である。産業用ロボットは、通常、いくつかの動作軸を有する少なくとも1台のマニピュレータと、操作中にロボットの動作シーケンスを(ロボットの駆動装置をそれに応じて制御することによって)協調させるプログラマブルコントローラとからなる。
【0004】
これらの一般的な単腕ロボットに加え、2本以上のアームを有するロボットがますます研究の焦点になってきている。人間に類似しているため、双腕ロボットは、人型ロボットだけでなく、ロボットが人間オペレーターにより遠隔制御されるテレロボティクスの分野のロボットにも好ましいデザインである。さらに、産業界における多くの仕事場は本来人間向けに設計されており、したがって両手操作用に設計されている。
【0005】
多腕ロボット用の動作計画の目標は、基本的には単腕ロボット用のものと同じであり、つまり、各腕について、自身または作業空間にあるもう一方の腕を含む障害物と衝突することなく始点から終点までの動作経路を見つけることである。したがって、原則として、単腕ロボット用の動作計画の公知の方法を多腕ロボットにも使用することによって、もう一方の腕を、作業空間における別の動的障害物とみなすことができる。そして、計画は、よく知られている動作計画方法を使用して共通のコンフィギュレーション空間で行われる。周知の方法には、Probabilistic Roadmaps(PRM:確率的ロードマップ法)またはRapidly-exploring Random Trees(RRT:高速探索ランダムツリー)などの確率的方法がある。
【0006】
さらに、まず各腕の動作を個別に計画し、その後で一種の協調が行われる分離手法も知られている。個別の計画はまた、上述した確率的方法などの公知の方法に基づいている。分離手法は、個々のアーム間にほとんど相互作用がないシステムにおいてとりわけ有利である。
【先行技術文献】
【特許文献】
【0007】
【文献】独国特許出願公開第102010007458号明細書(米国特許出願公開第2011/0196533号明細書)
【発明の概要】
【発明が解決しようとする課題】
【0008】
多腕ロボットの動作計画のための公知の結合および分離手法では、主に確率的計画方法または局所最適化に基づく方法が使用される。しかしながら、確率的方法には、確定的な軌道が生成されず、そのような方法に必要な演算時間は制限されるかもしれないが一般的に予測できないという欠点がある。局所最適化に基づく方法には、複雑な環境において解を見つけることができないという欠点がある。
【0009】
こうした背景から、本発明の目的は、上述した欠点を回避する、多腕ロボットシステム用の衝突回避動作計画のための代替方法を提供することにある。具体的には、本発明の目的は、動的に変化する環境において衝突回避動作の高速で確定的な再計画を可能にする方法を提供することにある。
【課題を解決するための手段】
【0010】
本発明の一態様によれば、この目的は、冒頭で述べた種類の方法において、第1マニピュレータの第1コンフィギュレーション空間の第1動的ロードマップであって、第1探索グラフと、第1作業空間と第1探索グラフとの間の第1マッピングと、を含む第1動的ロードマップをインポートするステップと、第2マニピュレータの第2コンフィギュレーション空間の第2動的ロードマップであって、第2探索グラフと、第2作業空間と第2探索グラフとの間の第2マッピングと、を含む第2動的ロードマップをインポートするステップと、第1マニピュレータおよび第2マニピュレータの動作を第1動的ロードマップと第2動的ロードマップとに基づいて協調させるステップとを含む方法によって解決される。
【0011】
本発明の着想は、それぞれのマニピュレータの2つの独立した動的ロードマップに基づいて動作計画を行うことである。
【0012】
動的ロードマップは、空環境、すなわち障害物のない環境を想定して、まずロボットのコンフィギュレーション空間でグラフを生成するという原理に基づいている。さらに、作業空間の各部の、グラフのノードおよびエッジへのマッピングをコンフィギュレーション空間において事前に計算し、たとえば表形式で保存する。マッピングを使用して、いかなる障害物にも有効なグラフを迅速に見つけることができる。
【0013】
本発明によれば、現在、動的ロードマップが動作計画の分離手法において使用されている。この手法の利点は、いったん動的ロードマップが作成されると、多腕ロボットの共通の作業空間ための動的ロードマップを生成する必要なしにその動的ロードマップを1本のロボットアームに再利用できることである。したがって、新規の方法により、既存のデータを土台にすることが可能になる。
【0014】
また、動的ロードマップの使用には、確定的再計画が可能であるという利点がある。確定的計画をするにあたっては、ロボットの行動を再現し、人間に分かりやすくさせることができるという利点がある。さらに、動的ロードマップの使用には、動的ロードマップを事前に計算することによって一般的なデスクトップパソコン上で100ミリ秒未満の計画時間を実現することができるという利点がある。これは、時間のかかる衝突チェックを実行する必要がなく、事前に計算したマッピングを使用して衝突チェックを実行することができるためである。
【0015】
概して、新規の方法によって短い計画時間が可能になり、それにより、市販の機器上においてさえリアルタイムでの高速再計画が可能になる。さらに、この方法は多腕システムに柔軟に拡張できるため、個々のロボットアームのあらかじめ定義された動的ロードマップを使用することができる。
【0016】
このように、上述の目的は完全に達成される。
【0017】
さらなる改良形態において、動作の協調は、第1マッピングおよび第2マッピングを使って第1および第2マニピュレータ間の衝突を確認することを含む。第1および第2マッピングは、好ましくは表形式で入手可能であり、コンフィギュレーション空間におけるそれぞれの探索グラフのノードおよびエッジに作業空間の体積要素を割り当てることを含む。そのようなマッピングを使用することで、作業空間に障害物がないかコンフィギュレーション空間のグラフを確認できる。したがって、この改良形態は有利にも高速再計画に寄与する。
【0018】
さらなる改良形態において、動作の協調は、第1マニピュレータの第1動作経路を第1動的ロードマップから決定することと、第2マニピュレータの第2動作経路を第2動的ロードマップから決定することと、を含む。この改良形態によれば、まず、2つの動作経路が、それぞれの動的ロードマップに基づいて決定される。この改良形態は、より小さな探索グラフに対して経路探索を特に容易に実行できるという事実に寄与する。
【0019】
特に好適な改良形態において、第1動作経路は第2動作経路に関係なく決定される。この改良形態により、第1および第2動作経路の決定の完全な分離が可能になる。これには、個々の動作経路の計算が互いとは関係なく行われ、よって容易に並列化できるという利点がある。さらに、既存の動的ロードマップを再利用できる。
【0020】
さらなる改良形態において、第1動作経路は作業空間における占有領域を画定し、第2動作経路は占有領域外で決定される。この改良形態によれば、優先順位をつけられた計画が実行される。これは、1台のマニピュレータが優先されたと見なされ、その動作が最初に単独で計画されることを意味する。第2マニピュレータの計画はその後で行われるので、もう1台のマニピュレータの計画中には、作業空間において第1マニピュレータの動作により占有された領域は、占有されていると表示される。作業空間の厳密な分離によって、シンプルな計画手順が可能になる。
【0021】
さらなる改良形態によれば、方法はさらに、第1動的ロードマップと第2動的ロードマップとに基づいて協調グラフを生成することを含み、第1マニピュレータおよび第2マニピュレータの動作は協調グラフを使って協調される。この改良形態によれば、最初に、第1マニピュレータおよび第2マニピュレータの動作を協調させるための協調グラフが作成される。協調グラフによって、両方の動的ロードマップを考慮に入れた協調計画が可能になる。解決される協調問題の割合を、協調グラフを使うことで増やせることが明らかになっている。
【0022】
好適な改良形態において、協調グラフの生成には、第1動的ロードマップに基づいて第1マニピュレータの第1動作経路を決定することと、第2動的ロードマップに基づいて第2マニピュレータの第2動作経路を決定することと、第1および第2動作経路を協調グラフに関連付けることと、が含まれる。この改良形態では、協調グラフは2つの別個の動作経路を関連付けることで生成される。改良形態には、単腕を優先させて作業空間を厳密に分離するよりも計画が制限されず、よって、より柔軟であるという利点がある。このようにして、解決される協調問題の割合が有利に増やせる。
【0023】
好適な改良形態において、第1マニピュレータの第1動作経路を決定するために、第2マニピュレータとの衝突は無視され、第2マニピュレータの第2動作経路を決定するために、第1マニピュレータとの衝突は無視される。この改良形態には、個々の動作経路を最初に別々に、よって迅速に計画することができ、起こりうる衝突のチェックは協調グラフでのみ行われるという利点がある。この改良形態には、演算時間と解決される協調問題の割合とのとりわけ良好な比率を実現できるという利点がある。
【0024】
とりわけ好適な改良形態において、第1マニピュレータの第1動作経路は第1直線グラフであり、第2マニピュレータの第2動作経路は第2直線グラフであり、協調グラフは第1および第2直線グラフの完全なグラフ積を含む。完全なグラフ積を使用することで、2つの別個の動作経路の組み合わせからの可能な経路をすべて含む協調グラフが生成される。その結果、協調グラフは、マニピュレータの同時かつ連続的な動作を特定(capture)する。
【0025】
別の改良形態では、協調グラフの作成は、第1マニピュレータの第1動作経路を決定することと、第1動作経路および第2探索グラフを協調グラフに関連付けることと、を含む。この改良形態では、第1マニピュレータが優先され、その動作経路が最初に決定される。第2探索グラフとともに、第1マニピュレータの動作経路は結果として協調グラフになる。したがって、第1マニピュレータの動作はその動作経路に沿って協調され、第2マニピュレータの動作は第2探索グラフに沿って協調される。したがって、第2マニピュレータの動作を計画するときに、第1マニピュレータの動作によって占有される作業空間全体がブロックされるのではない。
【0026】
好適な改良形態において、第1マニピュレータの第1動作経路は第1直線グラフであり、協調グラフは第1直線グラフと第2探索グラフとのデカルト積である。このようにして、動作計画の効率的な協調グラフを容易に決定することができる。デカルト積には、テンソル積または完全なグラフ積よりも少ないノードとエッジとでグラフが生成されるという利点がある。
【0027】
とりわけ好適な改良形態において、第1動作経路を生成するために、第2マニピュレータとの衝突は無視される。この改良形態には、第1動作経路が特に容易かつ迅速に決定できるという利点がある。
【0028】
もう別の代替的な改良形態において、協調グラフの作成は、第1探索グラフおよび第2探索グラフを協調グラフに関連付けることを含む。この改良形態において、まず第1および第2探索グラフが一緒に関連付けられ、その後、関連付けられたグラフに基づいて第1および第2マニピュレータの動作経路が協調される。
【0029】
とりわけ好適な改良形態において、協調グラフは第1探索グラフと第2探索グラフとのデカルト積である。この改良形態には、協調グラフが必要以上に複雑ではなく、経路探索に有利なノードおよびエッジのみを含むという利点がある。
【0030】
さらなる改良形態において、第1および第2動的ロードマップのうちの少なくとも1つは、付加的な時間情報を有するノードを備えた拡張探索グラフを含む拡張動的ロードマップであり、第1マニピュレータおよび第2マニピュレータの動作の協調は拡張動的ロードマップに基づいている。この構成では、動的ロードマップのうちの少なくとも1つが付加的な時間情報を含んでいる。したがって、探索グラフの各ノードは、有効なコンフィギュレーションだけでなく有効な時間も含んでいる。ノードを探索グラフに関連付けるときに、有向グラフが作成される。この改良形態には、経路探索中に少なくとも部分的に時間情報を考慮に入れることができるという利点がある。
【0031】
上述した発明の特徴およびこれから以下で説明する特徴は、示されたそれぞれの組み合わせだけでなく、本発明の範囲を離脱することなく他の組み合わせでまたは単独で使用できることが理解されよう。
【0032】
本発明の実施形態を以下の説明でさらに詳細に説明し、図に表す。
【図面の簡単な説明】
【0033】
【
図2】衝突回避動作計画のための方法を示すブロック図である。
【
図3】衝突回避動作計画の別の方法を示すブロック図である。
【発明を実施するための形態】
【0034】
図1は、新規な装置の第1の実施形態を示す。
図1において、装置は全体として参照符号10で示されている。
【0035】
この実施形態にかかる装置10は、第1マニピュレータ12と第2マニピュレータ14とを有するロボットシステムである。第1マニピュレータ12および第2マニピュレータ14は、共通の制御システム(ここでは図示せず)によって制御される別個のロボットである。第1および第2マニピュレータ12,14はそれぞれ、空間内で動くことができる7つの回転軸を有する。したがって、ロボットシステムは14自由度からなる。
【0036】
各マニピュレータ12,14には、自身が移動できる作業空間16,18が割り当てられている。作業空間の形状および大きさは、本質的に、ロボットの動作の形態だけでなく回転軸の数および配置によって決まる。さらに、作業空間は、たとえば制御システムにソフトウェアの制限を設けることによって、ある形態に限定することもできる。作業空間は、ここに示す立方体形状に限定されず、他の実施形態では円柱、球または多面体にすることもできる。
【0037】
第1マニピュレータ12の第1作業空間16は第2マニピュレータ14の第2作業空間18と重なる部分がある。共通の作業空間20は、
図1において破線で示されている。第1および第2マニピュレータ12,14の両方が共通の作業空間20に位置することができるので、2台のマニピュレータ12,14間の衝突が起きる可能性がある。したがって、互いに関係する2台のマニピュレータ12,14の動作は、共通の作業空間20内で協調されなければならない。このために、2台のマニピュレータ12,14の共通の制御システムが本発明にかかる方法を実行し、それについて次の図と関連して詳細に説明する。
【0038】
ここに示すシナリオが例としてのみ理解できることは言うまでもない。他の実施形態において、ロボットシステムは、2台のマニピュレータが配置された1台のロボットを備えることもできる。制御システムの共同協調が可能である限り、個々のマニピュレータまたはロボットが別個の制御システムを有してもよいということも考えられる。これは、たとえば制御システム間の適切なデータ通信インターフェースを介して可能にすることができる。
【0039】
同様に、互いに相互作用する同じ種類の2台のマニピュレータである必要はない。他の実施形態では、マニピュレータは異なるデザインであってもよい。また、2台のマニピュレータの作業空間は大きさおよび形状が異なることも可能である。さらに、発明の装置および方法は2台のマニピュレータに限定されない。他の実施形態において、ロボットシステムはまた、第1および/または第2マニピュレータと相互作用する他のマニピュレータを含んでいてもよい。さらに、マニピュレータを協調させるときに、それらに配置されるあらゆる負荷だけでなくツールやグラブなどのエフェクタも考慮に入れることも可能であることは言うまでもない。
【0040】
図2は、新規の方法の例をブロック図で示す。この方法は、ここでは全体として参照符号100で記載され、
図1に示される新規の装置の実施形態との関連において以下にさらに詳細に説明される。
【0041】
第1方法ステップ110は、第1マニピュレータ12の第1コンフィギュレーション空間の第1動的ロードマップ22をインポートすることからなり、第1動的ロードマップは、第1探索グラフ24と、第1作業空間16と第1探索グラフ24との間のマッピングである第1マッピング26と、を含む。
【0042】
第2方法ステップ120は、第2マニピュレータ14の第2コンフィギュレーション空間の第2動的ロードマップをインポートすることからなり、第2動的ロードマップ28は、第2探索グラフ30と、第2作業空間18と第2探索グラフ30との間のマッピングである第2マッピング32と、を含む。
【0043】
マニピュレータのそれぞれのコンフィギュレーション空間は、最小限の独立座標一式でマニピュレータの空間的状態を表す。したがって、コンフィギュレーション空間は(三次元)空間におけるマニピュレータの到達可能な位置一式からなり、それにより、マニピュレータの要素は剛体とみなされる。一般に、システムを表すために必要な最小限の座標数は自由度の数と等しい。
【0044】
したがって、コンフィギュレーション空間は、通常、多次元であり、マニピュレータが取ることのできるすべての可能な状態を含む。また、状態は、コンフィギュレーションとも称される。
【0045】
動的ロードマップ(DRM)は、コンフィギュレーション空間におけるグラフG=(V,E)とマッピングφとを含む。グラフはノードVおよびエッジEを有し、ノードは定義済みコンフィギュレーションを表し、エッジは第1コンフィギュレーションから第2コンフィギュレーションまでの動作を表す。動的ロードマップのグラフはコンフィギュレーション空間におけるランダムサンプルから形成され、それにより、DRMの場合、空環境(empty environment)、すなわち障害物のない環境が想定される。空環境の想定により、サンプルは均等な分布から取ることができ、自身との衝突だけを考慮すればよい。
【0046】
さらに、動的ロードマップは、作業空間からコンフィギュレーション空間までのマッピングφ(またはコンフィギュレーション空間から作業空間までのマッピングφ-1)を含む。マッピングは、好ましくはルックアップテーブルの形で保存される。ルックアップテーブルを作成するには、作業空間を一式の体積要素(いわゆるボクセル)に分割し、作業空間における各体積要素w∈Wについて、コンフィギュレーション空間におけるグラフG=(V,E)のノードとエッジとに対してマッピングφv:W→Vおよびφe:W→Eを決定する。体積要素が障害物で占有されると、マッピングは、探索グラフにおいて衝突しているコンフィギュレーションと動作とを特定する。したがって、テーブル表示は、作業空間における空間を、コンフィギュレーション空間における多くのノードとエッジとに容易に割り当てられるようにする。
【0047】
マニピュレータの動的ロードマップは、システムのその他のマニピュレータとは関係なく、上述した原理に従って生成することができる(具体的には、動的ロードマップは事前に計算できる。すなわち、マニピュレータまたは独立したロボットの動的ロードマップはオフラインフェーズで計算して保存できる)。オンラインフェーズで、動的ロードマップをインポートし、探索グラフを使用して動作経路を決定する。動作経路が決定すると、マッピングを使用してグラフの各部が動的に無効にされる。これは、動的障害物(すなわち、動的ロードマップの事前計算において考慮に入れていなかった障害物)を、オンラインで、表を介して、コンフィギュレーション空間におけるエッジとノードとにマッピングすることでなされる。無効にされたノードおよびエッジは、次の経路計画で考慮されない。事前計算と探索グラフの動的無効とによって、新しい計画は100ミリ秒未満以内に実現できる。
【0048】
2つの動的ロードマップを使って、第1マニピュレータおよび第2マニピュレータの動作は、工程ステップ130において協調される。4つの異なる手法を以下に説明する。
【0049】
第1の手法(以下、固定分離(fixed separation)と称する)は、優先順位付きの計画として分類することができる。この手法は、時間に関係なく衝突が起こらないように2つのマニピュレータの作業空間を厳密に分離するという考えを追求する。このために、第1マニピュレータが優先され、動作経路u=[u0,u1,…,un]が第1動的ロードマップに基づいて決定され、第2マニピュレータは無視される。経路uに沿って移動するときに第1マニピュレータによって占有される作業空間WM1(u)は、次のように表すことができる。
【0050】
【0051】
始点と終点とのマッピングおよびそれらの動的ロードマップのグラフへの関連付けを除いて、他のすべてのマッピングは、事前に計算されているため、すぐに使用できる。ロードマップへの関連付けだけでなく始点および終点のコンフィギュレーションが決定したら、第2マニピュレータの動作経路を決定することができ、それにより、残りのコンフィギュレーション空間WM2=W\WM1(u)が考慮される。
【0052】
図3および
図4を参照して、第1マニピュレータおよび第2マニピュレータの動作を協調させるための別の3つの手法(これらはすべてさらなる方法ステップからなる)を、以下にさらに詳細に説明する。
【0053】
図3は、ステップ120とステップ130との間に追加の方法ステップ121を有する、
図2からの方法を示す。これ以外は、
図3で説明する方法は、
図2で説明した方法と同じである。
【0054】
さらなる方法ステップ121は、第1動的ロードマップと第2動的ロードマップとに基づいて協調グラフを生成することからなり、これに基づいて第1マニピュレータおよび第2マニピュレータの動作計画が行われる。手法は、この協調グラフの生成において互いに異なる。
【0055】
第2の手法(以下、経路協調(path coordination)とも称する)は、固定分離の協調で適用される作業空間の厳密な分離に比して制限的でない手法である。第2手法は、第1および第2マニピュレータの2つの独立した動作経路を作成してから、衝突が起きないようにこれらの経路に沿って動作を協調(coordinate)させる。
【0056】
経路計画の基礎として動的ロードマップを使用することで、協調による動作経路の共通交点が与えられているか否かのテストが可能になる。これは、マッピングφまたはφ-1に基づいて行われる。したがって、費用のかかる衝突チェックを避けることができる。
【0057】
独立した計画の結果は、第1マニピュレータの第1動作経路u=[u0,u1,…,un]および第2マニピュレータの第2動作経路v=[v0,v1,…,vm]である。両経路は、直線グラフPGM1およびPGM2として解釈できる。よって、協調グラフCGPCは、完全なグラフ積
【0058】
【0059】
である。経路協調のためのこのような協調グラフCG
PCを、
図4に参照符号121aで図形によって示す。
【0060】
CGPCにおける各ノードは、i=0,…,nおよびj=0,…,mのペア(ui,vj)である。(ui+1,vj),(ui,vj+1)および(ui+1,vj+1)へのエッジは、いずれか1台のマニピュレータのみの動作または両マニピュレータの並行動作に相当する。
【0061】
協調グラフCGPCのノード(ui,vj)は、
【0062】
【0063】
が満たされるときに有効である。
【0064】
両マニピュレータの並行動作は、
【0065】
【0066】
が満たされるときに有効である。
【0067】
単腕の動作については、次の条件
【0068】
【0069】
または
【0070】
【0071】
をテストすればよい。
【0072】
協調グラフが生成されるとすぐに、協調グラフにおいて最短有効経路を探索することで協調が行われる。好適な実施形態では、グラフ探索において個々の腕の連続動作に消極的に重きを置くことによって、個々の腕の連続動作よりも腕の並行動作の方を選ぶことができる。
【0073】
経路協調において、それぞれの経路に対して時間のパラメータ化は行われず、そのような時間のパラメータ化に経路協調が依存することもない。(許容できる速度と加速とを考慮に入れる)時間のパラメータ化は、協調した経路上で行うことができる。第1または第2マニピュレータの動作経路が、もう一方のマニピュレータの動作経路よりも少ないノードを有する場合、一方のマニピュレータは、他方のマニピュレータが動作している間はいかなる場合でも待たなければならない。
【0074】
第3の手法(動的分離(dynamic separation)とも称される)を、以下にさらに詳細に説明する。
【0075】
動的分離の協調において、第1動的ロードマップと第2動的ロードマップとに基づく協調グラフが最初に生成される。固定分離と同様に、第1マニピュレータが優先され、有効な動作経路u=[u0,u1,…,un]が第1動的ロードマップに基づいて決定され、そのため、第2マニピュレータは無視される。
【0076】
しかしながら、固定分離の協調とは対照的に、第2マニピュレータの動作計画中に作業空間WM1(u)全体がブロックされるのではない。むしろ、第1マニピュレータの動作がその動作経路uに沿って協調される一方で、第2マニピュレータの動作は第2動的ロードマップの探索グラフに沿って協調される。
【0077】
経路協調とは対照的に、動的分離協調の協調グラフは、第2探索グラフと経路uの直線グラフとのデカルト積から形成される(CG
GS=PG
M1□G
M2)。そのような協調グラフの説明が、
図4において参照符号121bで示されている。デカルト積を使用すると、テンソル積または完全なグラフ積を使用するよりも少ないノードおよびエッジのグラフが生成されるため、複雑さが低減される。これは、動的分離協調に続いて経路協調を行うことで補うことができる。
【0078】
協調グラフCGGSの各ノードは、一対の点(ui,v)に相当し、ここでは、uiはグラフPGM1の要素であり、vは第2動的ロードマップの探索グラフGM2のノードである。
【0079】
ノードは、
【0080】
【0081】
が満たされるときに有効である。
【0082】
(ui,v)から(ui+1,v)までのエッジは、
【0083】
【0084】
が満たされるときに有効である。
【0085】
(ui,v’)からのエッジは、
【0086】
【0087】
が満たされるときに有効である。
【0088】
第1マニピュレータと第2マニピュレータとの動作協調は、すでに述べたように、それ自体が公知の方法で最短の許容可能経路を決定することによって、協調グラフに基づいて経路協調とともに行われる。経路協調と同様に、マッピングの大部分は、すでに事前に計算され、表形式で保存される。
【0089】
協調の第4の手法は、グラフ協調(graph coordination)と呼ばれる。ここでは、両マニピュレータはそれぞれの探索グラフGM1およびGM2に沿って協調され、可能性のある重なりが決定される。動的分離と同じように、グラフ協調では、協調グラフはデカルト積から形成される。
【0090】
グラフ協調の協調グラフは、第1探索グラフと第2探索グラフとのデカルト積である(CG
GC=G
M1□G
M2)(
図4、121c参照)。すでに述べたように、協調は、協調グラフを使って協調グラフにおいて最短有効経路を探索することで実行される。
【0091】
グラフ協調では、動的ロードマップが大きくなるにつれて協調グラフCGGCが非常に複雑になり、それにより、グラフ探索が法外に高くつくかもしれない。したがって、他の実施形態では、それを補うために、準最適な探索アルゴリズムを使用できる。
【0092】
上記の手法は、動的ロードマップのうちの少なくとも1つを、付加的な時間情報を有する動的ロードマップと置き換えることでさらに最適化できる。これには、計画段階で時間の側面を少なくとも部分的に考慮に入れることができるという利点がある。シナリオに応じて、経路探索はさらに改善でき、必要ならばスピードアップできる。
【0093】
上述した手法はそれぞれ選択肢として列記したが、他の実施形態では、個々の手法を有利に組み合わせることもできる。たとえば、経路協調は動的分離協調の後に実行できる。それにより、毎回異なる協調手法でフォローアップする必要がない。他の実施形態では、個々の手法は動的に関連付けることもできる。たとえば、1つのシナリオでは第1手法が実行され、別のシナリオでは別の手法が実行されることが考えられる。したがって、手法は任意に関連付けられることができ、そのため、それぞれの選択は外的要因に依存することができる。
【0094】
2台のマニピュレータに関連して記載した協調の手順を多腕システムにも容易に適用できることは言うまでもない。