(57)【要約】　　　（修正有）【課題】ある環境において、少なくとも一つの機能的タスクを実行するための自律性マルチプラットフォームロボットシステムを提供する。【解決手段】本システムは、環境内にある自身と少なくとも一つの他のプラットフォームに対して、マッピング、定位、プランニング、および制御機能を提供する少なくとも一つのナビゲータプラットフォーム１１０と、一以上の機能的タスクを実行するために一以上のナビゲータプラットフォームと通信を行う機能ロボットプラットフォーム１２０，１１２０を有する。機能ロボットプラットフォーム１１２０は、該環境に関する情報を送信するためのセンサを有する。【選択図】　図１
2004133882.tif 000002
【特許請求の範囲】
【請求項１】
ある環境において、少なくとも一つの機能的タスクを実行するための自律性マルチプラットフォーム・ロボットシステム（１１０、１１１０）において、
少なくとも一つの機能ロボットプラットフォーム（１１２０）と、
自身と前記少なくとも一つの機能ロボットプラットフォームに対しマッピング、定位、プランニングおよび制御機能を提供する、少なくとも一つのナビゲータプラットフォーム（１１０、１１１０）とを有し、
前記少なくとも一つの機能ロボットプラットフォーム（１１２０）は、前記環境に関する情報を感知し、この情報を前記少なくとも一つのナビゲータプラットフォームに伝えることを特徴とする、自律性マルチプラットフォーム・ロボットシステム。
【請求項２】
請求項１に記載のシステムにおいて、
前記少なくとも一つのナビゲータプラットフォームは、
前記少なくとも一つの機能ロボットプラットフォームからの環境データを含む通信を受信するための受信機（２２２）と、
前記ナビゲータプラットフォームと前記少なくとも一つの機能ロボットプラットフォームのためのマッピング、定位、プランニングおよび制御プロセスを提供するために、前記受信機と通信を行う制御装置（２０４）と、
前記環境内にある前記少なくとも一つの機能ロボットプラットフォームに対し、制御信号と他の情報伝達を送信するために、制御装置と通信を行う送信機（２０８）を有することを特徴とする、自律性マルチプラットフォーム・ロボットシステム。
【請求項３】
請求項２に記載のシステムにおいて、
前記少なくとも一つのナビゲータプラットフォームは、
該ナビゲータプラットフォームを環境内で移動させるための制御装置と通信を行う駆動手段（２１０、２１２、２１４）をさらに有することを特徴とする、自律性マルチプラットフォーム・ロボットシステム。
【請求項４】
請求項２に記載のシステムにおいて、
前記少なくとも一つのナビゲータプラットフォーム（１１１０）は、定置式であることを特徴とする、自律性マルチプラットフォーム・ロボットシステム。
【請求項５】
請求項１に記載のシステムにおいて、
前記少なくとも一つの機能ロボットプラットフォームは、
前記少なくとも一つのナビゲータプラットフォームからの制御信号および他の情報伝達を受信するための受信機（３０２）と、
前記少なくとも一つの機能ロボットプラットフォームを前記環境内で移動させるための駆動手段（４０４、４０６、４０８）と、
前記環境に関する情報を感知するための少なくとも一つのセンサ（３０２）と、
制御信号に応じて、前記駆動手段とセンサを制御するために、前記受信機、駆動手段およびセンサと通信を行う制御装置（４１０）と、
前記環境内にある前記少なくとも一つのナビゲータプラットフォームに対し、環境データと他の情報伝達を送信するために、前記制御装置と通信を行う送信機（３０６）とを有することを特徴とする、自律性マルチプラットフォーム・ロボットシステム。
【請求項６】
請求項５に記載のシステムにおいて、
前記少なくとも一つの機能ロボットプラットフォームはまた、少なくとも一つの機能的タスクを行うことを特徴とする、自律性マルチプラットフォーム・ロボットシステム。
【請求項７】
請求項１に記載のシステムにおいて、
前記環境に関する情報を感知するために、前記少なくとも一つのナビゲータプラットフォームと通信を行う少なくとも一つの定置式センサプラットフォーム（１２４）をさらに備えることを特徴とする、自律性マルチプラットフォーム・ロボットシステム。
【請求項８】
請求項７に記載のシステムにおいて、
前記少なくとも一つの定置式センサプラットフォームは、
前記少なくとも一つのナビゲータプラットフォームからの制御信号および他の情報伝達を受信するための受信機（３１２）と、
前記環境に関する情報を感知するための、少なくとも一つのセンサ（３１０）と、
前記制御信号に応じて、少なくとも一つのセンサを制御するための、受信機およびセンサと通信を行う制御装置（５０４）と、
前記少なくとも一つのナビゲータプラットフォームに対し、環境データと他の情報伝達を送信するために前記制御装置と通信を行う送信機（３１４）と、を有することを特徴とする、自律性マルチプラットフォーム・ロボットシステム。
【請求項９】
ある環境において、機能的タスクを実行するためのマルチプラットフォームロボットシステム（１００、１１００）において、
機能ロボットプラットフォーム（１２０、１１２０）と、
自身と、前記機能ロボットプラットフォームのためにマッピング、定位、プランニングおよび制御機能を提供する、ナビゲータプラットフォーム（１１０、１１１０）を有し、
前記機能ロボットプラットフォーム（１２０、１１２０）は、一以上の機能的タスクを実行するために、前記ナビゲータプラットフォームと通信を行い、
さらに、
前記環境に関する情報を感知するために、前記ナビゲータプラットフォームと通信を行う定置式センサプラットフォーム（１２４）とを有することを特徴とする、マルチプラットフォーム・ロボットシステム。
【請求項１０】
請求項９に記載のシステムにおいて、
前記ナビゲータプラットフォームは、
前記機能ロボットプラットフォームからの環境データを含む、前記機能ロボットプラットフォームと定置式プラットフォームからの情報伝達を受信するための受信機（２２２）と、
前記ナビゲータプラットフォーム、機能ロボットプラットフォームおよび定置式センサプラットフォームに対しマッピング、定位、プランニング、および制御プロセスを提供するために、前記受信機と通信を行う制御装置（２０４）と、
前記機能ロボットプラットフォームと定置式センサプラットフォームに対して制御信号と他の情報伝達を送信するために、制御装置と通信を行う送信機（２０８）と、を有することを特徴とする、マルチプラットフォーム・ロボットシステム。
【請求項１１】
請求項１０に記載のシステムにおいて、
前記ナビゲータプラットフォームは、
前記環境内で前記ナビゲータプラットフォームを移動させるために前記制御装置と通信を行う駆動手段（２１０、２１２、２１４）をさらに有することを特徴とする、マルチプラットフォーム・ロボットシステム。
【請求項１２】
請求項１０に記載のシステムにおいて、
前記ナビゲータプラットフォーム（１１１０）は定置式であることを特徴とする、マルチプラットフォーム・ロボットシステム。
【請求項１３】
請求項９に記載のシステムにおいて、
機能ロボットプラットフォームは、
前記環境内にある前記ナビゲータプラットフォームから制御信号と他の情報伝達を受信するための受信機（３０２）と、
前記制御信号に応じて、該環境内で前記機能ロボットプラットフォームを移動させるための駆動手段（４０４、４０６、４０８）とを有することを特徴とする、マルチプラットフォーム・ロボットシステム。
【請求項１４】
請求項９に記載のシステムにおいて、
定置式センサプラットフォームは、
前記環境内にあるナビゲータプラットフォームからの制御信号と他の情報伝達を受信するための受信機（３１２）と、
前記環境に関する情報を感知するための少なくとも一つのセンサ（３１０）と、
前記制御信号に応じて、前記センサを制御するための受信機およびセンサと通信を行う制御装置（５０４）と、
前記ナビゲータプラットフォームに対して環境データと他の情報伝達を送信するための送信機（３１４）とを有することを特徴とする、マルチプラットフォーム・ロボットシステム。
【請求項１５】
ある環境において、一以上の機能的タスクを実行するためのロボットシステム（１１００）において、
前記機能的タスクを実行するための、少なくとも一つの機能ロボットプラットフォーム（１２０、１１２０）と、
前記環境に関する情報を感知し、自身にマッピング、定位、プランニングおよび制御機能を提供するために、少なくとも一つの機能ロボットプラットフォームと通信を行う、少なくとも一つの定置式ナビゲータプラットフォーム（１１１０）とを有し、
前記少なくとも一つのナビゲータプラットフォームは、前記少なくとも一つの機能ロボットプラットフォームのために、マッピング、定位、プランニングおよび制御機能を提供することを特徴とする、ロボットシステム。
【請求項１６】
請求項１５に記載のシステムにおいて、
少なくとも一つのナビゲータプラットフォームは、
前記環境に関する情報を感知するための、少なくとも一つのセンサ（２０２）と、
前記ナビゲータプラットフォームと前記環境内の他のプラットフォームに対し、マッピング、定位、プランニングおよび制御プロセスを提供するために、前記センサと通信を行う制御装置（２０４）と、
前記環境内にある一以上の他のプラットフォームに対し、制御信号および他の情報伝達を送信するために、前記制御装置と通信を行う送信機（２０８）とを備えた、ロボットシステム。
【請求項１７】
請求項１５に記載のシステムにおいて、
少なくとも一つの機能ロボットプラットフォームは、
前記環境内にある一以上のナビゲータプラットフォームからの制御信号と他の情報伝達を受信するための受信機（３０２）と、
前記制御信号に応じて、前記環境内で少なくとも一つの機能ロボットプラットフォームを移動させるための駆動手段（４０４、４０６、４０８）を備えることを特徴とするロボットシステム。
【請求項１８】
請求項１５に記載のシステムにおいて、
少なくとも一つの機能ロボットプラットフォーム（１１２０）はまた、前記環境に関する情報を感知するためのものであることを特徴とする、ロボットシステム。
【請求項１９】
請求項１８に記載のシステムにおいて、
前記環境に関する情報を感知するための少なくとも一つの機能ロボットプラットフォームは、
前記環境内にある一以上のナビゲータプラットフォームから制御信号および他の情報伝達を受信するための受信機（３０２）と、
前記環境内で、環境に関する情報を感知するために、少なくとも一つの機能ロボットプラットフォームを移動させるための駆動手段（４０４、４０６、４０８）と、
前記環境に関する情報を感知するための少なくとも一つのセンサ（３０４）と、
前記制御信号に応じて、駆動手段とセンサを制御するために、受信機、駆動手段、およびセンサと通信を行う制御装置（４１０）と、
前記環境内にある一以上のナビゲータプラットフォームに対し、環境データと他の情報伝達を送信するために制御装置と通信を行う送信機（３０６）と、をさらに有することを特徴とする、ロボットシステム。
【請求項２０】
請求項１５に記載のシステムにおいて、
前記環境に関する情報を感知するために、一以上のナビゲータプラットフォームと通信を行う少なくとも一つの定置式センサプラットフォーム（１２４）をさらに有することを特徴とするロボットシステム。
【請求項２１】
請求項２０に記載のシステムにおいて、
前記少なくとも一つの定置式センサプラットフォームは、
前記環境内にある一以上のナビゲータプラットフォームから制御信号と他の情報伝達を受信するための受信機（３１２）と、
前記環境に関する情報を感知するための少なくとも一つのセンサ（３１０）と、
前記制御信号に応じて、センサを制御するために、前記受信機とセンサと通信を行う制御装置（５０４）と、
前記環境内にある一以上のナビゲータプラットフォームに対し、環境データと他の情報伝達を送信するための送信機（３１４）とを有することを特徴とする、ロボットシステム。
【請求項２２】
請求項１５に記載のシステムにおいて、
自身と、前記環境内の少なくとも一つの他のプラットフォームに対しマッピング、定位、プランニング、および制御機能を提供するために、少なくとも一つの他のプラットフォームと通信を行う、少なくとも一つの移動式ナビゲータプラットフォーム（１１０）をさらに有することを特徴とするロボットシステム。
【請求項２３】
請求項２２に記載のシステムにおいて、
前記移動式ナビゲータプラットフォームは、
一以上の機能ロボットプラットフォームと一以上の定置式センサプラットフォームのうちの少なくとも一つからの環境データを含む、前記環境内の他のプラットフォームからの情報伝達を受信するための受信機（２２２）と、
前記環境内において、移動式ナビゲータプラットフォームを移動させる駆動手段（２１０、２１２，２１４）と、
前記環境内にあるナビゲータプラットフォームと他のプラットフォームに対し、マッピング、定位、プランニングおよび制御プロセスを提供するために、前記受信機と駆動手段と通信を行う制御装置（２０４）と、
前記環境内にある他のプラットフォームに対して制御信号と他の情報伝達を送信するために、制御装置と通信を行う送信機（２０８）と、を備えることを特徴とする、ロボットシステム。
【発明の詳細な説明】
【０００１】
【発明の属する分野】
本発明は、移動式ロボットシステムに関する。特に、本発明は、自律性マルチプラットフォームロボット環境においてマッピング、定位、プランニング、制御およびタスク実行機能を割り当てるためのシステムおよび方法に関する。なお、本願は、２００２年５月１０日付米国仮出願番号第６０／３７９，５３０号の優先権を主張し、その開示内容は参照により本願に含まれる。
【０００２】
【発明の背景】
移動式ロボットは、清掃や警備といったようなさまざまなタスクに対処するように、設計、開発がなされ、かつ導入されてきた。移動式ロボットの大半は非自律性である。すなわち、自律的に運行することができない。非自律性ロボットは挙動に柔軟性がなく設置費用がかかるため、それにより与えられる経済的利益は限定される。多くの場合、特定のルートやタスクについてロボットを予めプログラミングするために、熟練した技術者を採用し賃金を支払わなければならない。また、ロボットを誘導する環境において、行路、埋設された信号発信配線、標識またはセンサといったようなものを設置する必要がある場合もある。設置および操作上の問題を最小にするため、この環境に対してさらに改良を加えることが必要とされる場合もある。
【０００３】
移動式非自律性ロボットの中には、経路を阻む障害物を検出し、このような障害物を回避するために、停止するか、または経路から僅かに逸れることができるものがいくつかある。しかしながら、環境が大きく変化した場合、例えば、家具のような大きな物を移動した場合などは、従来型の非自律性ロボットでは正しく対処できない。多くの場合、部分的に、あるいは、すべての設置プロセスを繰り返さなければならない。このような限界があるので、非自律性ロボットは通常、安定し、かつ高い価値が認められるルートにおいてのみ配置される。非自律性ロボットには、プール清掃ロボットのように、タスクを実行する際に無作為動作に基づくものもあるが、この手法へと適用可能なアプリケーションの数には限りがある。
【０００４】
完全な自律性移動式ロボットは、ここ数年の間に研究室から出現し始めてきている。自律性ロボットは、周囲と環境の条件を感知し反応することにより、その環境下を運行することができる。自律性ロボットの運行は、マッピング、定位、プランニングおよび制御の４つの主たるタスクを含む。これらの密接に関連する概念は、次のような質問に類似している。「私はだれか？」（マッピングおよび定位）、「私は何になりたいのか」または「私は何をしたいのか？」（プランニング）、そして、「どのようしたらそこに到達するのか？」または「それをどのようにして行うのか？」（制御）。
【０００５】
マッピングが完了すると、マップ内のロボットの現在位置、向きおよび変化率を定めなければならない。このプロセスを定位（ローカライゼーション）と呼ぶ。二次元マッピングと定位に基づく自律性ロボットは、マップが比較的簡略なため、十分な信頼性をもって運行することができない場合が多い。時に、該ロボットは道に迷い、立ち往生し、または落下する。それに対して、動的三次元マッピングと定位を使用すると、より信頼性のある運行が可能となるが、これは、大容量の計算オーバーヘッドを必要とする複雑な計算を含む。三次元マップは通常、何百万ものセルを有し、ランドマーク抽出、定位、およびプランニングといった単純な操作が、計算的に集中したものになり。結果として計算上の遅延が生じ、ロボット動作の速度とタスクの実行が制限されてしまう。
【０００６】
マッピングと定位が完了すると、タスクのプランニングと実行を開始しなければならない。タスクを実行している間でも、定位をする必要がある場合がある。一台のロボットでタスクを実行しながら定位を行おうとすると、許容範囲を超えた遅延を生ずる。複数のロボットを使用した場合でも、上記のトレードオフは依然として存在し、現状では、何倍もの時間超過に対処しなければならない。
【０００７】
バラッハ（Ｗａｌｌａｃｈ　ｅｔ　ａｌ．）に対する米国特許第６，３７４，１５５号は、マッピング、定位、プランニングおよび制御機能を少なくとも一つのナビゲータロボットに割り当て、タスクの実行機能を一以上の機能ロボットに割り当てる、自律性移動型ロボットシステムを開示している。少なくとも一つのナビゲータロボットは、環境をマッピングし、地図内において自身と機能ロボットの定位を行い、該少なくとも一つの機能ロボットによって実行されるべきタスクの計画を立て、タスクの実行中の該少なくとも一つの機能ロボットを制御し追跡する。該少なくとも一つのナビゲータロボットは、自身と機能ロボットの双方に対するマッピング、定位、プランニングおよび制御のための概ねすべての計算を行う。実施例の一つにおいて、定位計算を簡略化するために、少なくとも一つの機能ロボットのプラットフォームを制御し移動させる間、該少なくとも一つのナビゲータロボットは静止状態にある。また、実施例の一つにおいて、該少なくとも一つのナビゲータロボットは、移動式であっても定置式であっても、これらのタスクに要求されるマッピング、定位、プランニングおよび制御のための概ねすべての計算を行うセンサプロセッシング・ハードウェアが備えられている。その一方、少なくとも一つの機能ロボットは、計算のために用いられるさまざまなセンサまたはハードウェアが設けられている。該少なくとも一つの機能ロボットは、このセンサから少なくとも一つのナビゲータロボットに対してデータを送信し、ナビゲータロボットがその計算のためにデータを処理することができるようにする。
【０００８】
上記を鑑みて、高速で正確かつ対費用効果の高いマッピングおよび定位を行い、さらに、向上した環境感知により効果的なプランニングおよびタスク割り当てを行う、自律的なマルチロボットシステムを提供する。
【０００９】
【発明の開示】
本発明の一態様においては、ある環境において少なくとも一つの機能的タスクを実行するための自律性マルチプラットフォームロボットを提供する。実施例の一つにおいて、該システムは、マッピング、定位、プランニングおよび制御機能を、自身と環境内の他の少なくとも一つのプラットフォームに提供する少なくとも一つのナビゲータプラットフォームと、環境に関する情報を感知するために、一以上のナビゲータプラットフォームと通信を行う少なくとも一つの機能ロボットプラットフォームを有する。
【００１０】
別の実施例において、本システムは、マッピング、定位、プランニング、および制御機能を、自身および環境内の他のプラットフォームに提供するナビゲータプラットフォームと、一以上の機能的タスクを実行するために該ナビゲータプラットフォームと通信する一以上の機能ロボットプラットフォームと、環境に関する情報を感知するために、該ナビゲータプラットフォームと通信する一以上の定置式センサプラットフォームを有する。
【００１１】
さらに別の実施例において、本システムは、環境に関する情報を感知し、自身と、環境内にある少なくとも一つの他のプラットフォームに対してマッピング、定位、プランニング、および制御機能を与える少なくとも一つの定置式のナビゲータプラットフォームと、機能タスクを実行するために、一以上のナビゲータプラットフォームと通信を行う少なくとも一つの機能ロボットプラットフォームを有する。
【００１２】
本システムによれば、操縦とタスク完了をほぼ同時に実現することができる。本発明の応用の一つとして、家庭またはオフィスの清掃が挙げられ、これは通常、掃除機による吸引、掃き掃除、モップ掃除といったような複数かつ繰り返しのタスクを含む。しかしながら、本発明は、割り当てられたタスクを実行するために、一以上のロボットが操縦されるいかなる環境においても実施することが可能である。
【００１３】
以下に提供される本発明の説明を読み理解することにより、本発明の利便性および利点は、この技術分野において通常の知識を有する者にとって明白であろう。
【００１４】
【発明の実施の形態】
本発明は添付の図面とともに説明されるが、この図面は本発明の典型的な実施例を図で示すことを目的とし、本発明をこの実施例に限定することとして解釈されることはない。本発明は、図面およびそれに関連する説明の範囲を超えて、さまざまな部品および部品の配置、およびさまざまなステップおよびその配置をとり得る。この図面の範囲内で、同等の参照番号は同等の構成要素を表し、類似する参照番号は類似する構成要素を表す。
【００１５】
図１は、本発明の一実施例における自律性マルチプラットフォームロボットシステム１００を表すブロック図である。システム１００は、一以上の移動式ナビゲータプラットフォーム１１０、一以上の機能ロボットプラットフォーム１２０，１１２０、一以上の定置式センサプラットフォーム１２４および、任意の一以上のベースステーション１３０を有する。機能ロボットプラットフォーム１２０，１１２０は、センサ付き機能ロボットプラットフォーム１１２０と、センサなし機能ロボットプラットフォーム１２０を含んでもよい。尚、ベースステーション１３０は、以下に記載する利点を提供するが、すべての実施例において必要とされるわけではない。
【００１６】
ベースステーション１３０が含まれる場合、ここには移動式ロボット１１０，１２０，１１２０を再充電するための充電ステーションが取り付けられる。さらに、ベースステーション１３０は、タスクの実行を補助するように構成される場合もある。例えば、システム１００が住居の清掃環境において導入される場合、ベースステーション１３０には、塵埃用箱、ゴミ箱、水受け等が取り付けられ、要求されるタスク実行の一助となる。
【００１７】
実施例の一つにおいて、ナビゲータプラットフォーム１１０およびセンサ付き機能ロボットプラットフォーム１１２０が、マッピング、定位、プランニング、および制御機能の全体またはほぼ全体を担う。ナビゲータプラットフォーム１１０は、環境マップ、達成すべきタスクのリスト、タスクスケジュールおよび充電スケジュールを作成し保持する。機能ロボット１１２０は、ナビゲータプラットフォーム１１０に対し環境データを収集し送信するために必要な、すべてのセンサおよびハードウェアにより構成される。ナビゲータプラットフォーム１１０は、この環境データを受信し、自身と機能ロボットプラットフォーム１２０、１１２０を運行させ操縦するために必要なすべてのハードウェアにより構成される。これに関連し、ナビゲータプラットフォーム１１０は、機能ロボットプラットフォーム１２０にコマンドを伝えるための送信機を備える。
【００１８】
機能ロボットプラットフォーム１２０，１２０は、体的なタスクを実行し、これらのタスクの実行を容易にするような形状と大きさにすることができる。機能ロボット１２０，１１２０には、ナビゲータプラットフォーム１１０からのコマンドを受信するための受信機が取り付けられている。図１及び図２に示すように、センサなし機能ロボットプラットフォーム１２０に対して、ユニークな形またはマーク１２２を付けることも可能である。これによりナビゲータプラットフォーム１１０は、これらの機能ロボットの認識、定位、追跡が行い易くなる。
【００１９】
別の実施例においては、ナビゲータプラットフォーム１１０及び定置式センサプラットフォーム１２４が、マッピング、定位、プランニングおよび制御機能の全体またはほぼ全体を担う。定置式センサプラットフォーム１２４は、車輪がなく、移動不能となっているが、ユーザーが容易に手で運べるよう可搬性を有する。定置式センサプラットフォーム１２４は、ナビゲータプラットフォーム１１０に対し環境データを収集し送信するために必要とされる、すべてのセンサとハードウェアにより構成される。定置式センサプラットフォーム１２４は、センサ付き機能ロボットプラットフォーム１１２０に加えて、またはその代わりに、環境データを収集することが可能である。すなわち、システム１００は、定置式プラットフォーム１２４もしくはセンサ付き機能ロボットプラットフォーム１１２０のいずれかにより構成されるか、または１２４と１１２０の両方により構成することができる。
【００２０】
図２は、本発明の他の実施例による自律性マルチプラットフォームロボットシステム１１００のブロック図である。システム１１００は、移動式ナビゲータプラットフォーム１１０の代わりに一以上の定置式ナビゲータプラットフォーム１１１０を有し、他の態様の多くにおいては、図１のシステム１００と同様である。定置式ナビゲータプラットフォーム１１１０は車輪がなく、移動不能となっているが、ユーザーが容易に手で運べるよう可搬性を有する。しかしながら、システム１１００の一実施例においては、ナビゲータプラットフォーム１１１０が、マッピング、定位、プランニングおよび制御機能の全体またはほぼ全体を担う。本実施例において、ナビゲータプラットフォーム１１１０は、機能ロボットプラットフォーム１２０，１１２０を運行させ操縦するために必要とされるすべてのセンサおよびハードウェアにより構成される。ナビゲータプラットフォーム１１１０は、センサ付き機能ロボットプラットフォーム１１２０およびまたは定置式センサに加えて、またはその代わりに、環境データを収集することができる。すなわち、システム１１００は、定置式ナビゲータプラットフォーム１１１０、定置式センサプラットフォーム１２４またはセンサ付き機能ロボットプラットフォーム１１２０のいずれか、またはそのいずれかの組み合わせにより構成することが可能である。
【００２１】
図３は、システム１００の移動式ナビゲータプラットフォーム１１０の一実施例を表すブロック図である。図３に表されたロボット１１０についての特定の実施は、説明の目的のみであって、ナビゲータプラットフォーム１１０のための具体的な物理的アーキテクチャを必要としているとして解釈すべきではない。
【００２２】
ナビゲータプラットフォーム１１０は、制御装置２０４、電源および給電システム２０６、送信機２０８、モーター制御装置２１０、モーター２１２、車輪２１４、および受信機２２２を有する。制御装置２０４は、プロセッサまたは中央演算処理装置（ＣＰＵ）２１６、一時記憶装置またはＲＡＭ２１８、および非揮発性記憶装置２２０を備える。マップやタスクスケジュールといった情報は不揮発性記憶装置２２０に記憶され、これは、実施例の一つにおいては、ＥＰＲＯＭまたはＥＥＰＲＯＭである。制御装置２０４は、機能ロボットプラットフォーム１１２０およびまたは定置式センサプラットフォーム１２４に搭載されたセンサから受信機２２２を介して情報を受信し処理する。受信する情報は、ロボット１１０を取りまく環境に関するデータである。これは、ナビゲータプラットフォーム１１０の位置、機能ロボットプラットフォーム１２０の位置、付近のランドマーク等の情報を含む。制御装置２０４は、この情報を使って、次に起こすべきタスクまた動作を決定する、つまりプランニングする。
【００２３】
制御装置２０４は、入手可能な情報に基づいて、ナビゲータプラットフォーム１１０の移動運動および操縦を制御する。ナビゲータプラットフォーム１１０が自身を操縦し、移動運動をもたらす方法および手段は、「コントロールループ」と呼ばれ、モーター制御装置２１０、モーター２１２および車輪２１４を含む。制御装置２０４は、受信した環境データに基づいて、モーター制御装置２１０に対して適切なコマンドを送信する。モーター制御装置２１０は、これらのコマンドに従ってモーター２１２に指示を行う。モーター２１２はそれに応じて車輪２１４を駆動させる。実施例のいくつかにおいては、移動運動の方法および複雑性によって、コントロールループは、サーボ、アクチュエータ、送信機等を有する。コントロールループは、また、制御装置２０４に対してオドメトリデータを収集し送信する。
【００２４】
図４は、システム１１００の定置式ナビゲータプラットフォーム１１１０の一実施例を表すブロック図である。図４に表されたロボット１１１０についての特定の実施は、説明の目的のみであって、ナビゲータプラットフォーム１１１０のための具体的な物理的アーキテクチャを必要としているとして解釈すべきではない。
【００２５】
センサ２０２は、ナビゲータプラットフォーム１１１０に搭載されている。センサ２０２は、ロボット環境に適するものであればいかなる種類のものでもよく、複数のセンサを使用することも可能である。センサは、固定位置に搭載してもよいが、あるいは、ナビゲータプラットフォーム１１１０との関連で、位置と向きを変化させられるように構成することも可能である。センサの種類とシステムの複雑性によって、センサ２０２の位置および向きはナビゲータプラットフォーム１１１０が制御する場合もあるし、しない場合もある。実施例の一つにおいて、センサ２０２は、周囲環境の光学的画像を記録するカメラである。別の実施例においては、センサ２０２は、ロボットの環境についての詳細かつ正確な情報を得るために立体映像を提供するカメラセットを備える。他のセンサオプションとしては、レーダー、ライダー、ソナーおよびまたはそれらの組み合わせを含むが、これらに限られない。このようなセンサの操作および構成は、当業において通常の知識を有する者にはよく知られている。
【００２６】
ナビゲータプラットフォーム１１１０は、さらに、制御装置２０４、電源および給電システム２０６および送信機２０８を備える。制御装置２０４は、移動式ナビゲータプラットフォーム１１０について上記に説明した制御装置と同様である。制御装置２０４は、ロボットの周囲環境に関する情報をセンサ２０２から受信し処理する。これは、ナビゲータプラットフォーム１１１０の位置、機能ロボットプラットフォーム１２０、１１２０の位置、付近のランドマークといったような情報を含むことができる。
【００２７】
図５は、システム１１００の定置式ナビゲータプラットフォーム１１１０の別の実施例を表すブロック図である。図５に表されたロボット１１１０についての特定の実施は、説明の目的のみであって、ナビゲータプラットフォーム１１１０のための具体的な物理的アーキテクチャを必要としているとして解釈すべきではない。
【００２８】
本実施例において、ナビゲータプラットフォーム１１１０は、制御装置２０４、電源および給電システム２０６、送信機２０８および受信機２２２を有する。制御装置２０４は、移動式ナビゲータプラットフォーム１１０について上記に説明した制御装置と同様である。ナビゲータプラットフォーム１１１０は定置式であるので、車輪と移動運動のためのコントロールループは含まない。
【００２９】
図６は、作動中のシステム１００の一態様を表す。ナビゲータプラットフォーム１１０は、送信機２０８と、機能ロボットプラットフォーム１２０の受信機３０２によって受信された制御信号２０９を介して、一以上の機能ロボットプラットフォームの移動および動作を制御する。
【００３０】
図７は、システム１００の動作の別の一態様を表す。一以上の機能ロボットプラットフォーム１１２０は、センサ３０４を介してセンサ入力データ２０１を受信し、通信機３０６を介して、ナビゲータプラットフォーム１１０に環境データ３０８を送信する。ナビゲータプラットフォーム１１０は、受信機２２２を介して環境データ３０８を受信し、機能ロボットプラットフォーム１２０，１１２０が次に開始すべきタスク、移動または他の機能を決定する。その決定がなされると、図６と同様に、ナビゲータプラットフォーム１１０は、送信機２０８を介して、機能ロボットプラットフォーム１１２０の移動および動作を制御する。
【００３１】
図８は、システム１００の動作のさらに別の態様を表す。定置式センサプラットフォーム１２４は、センサ３１０を介してセンサ入力データ２０１を受信し、送信機３１４を介してナビゲータプラットフォーム１１０に対して環境データ３０８を送信する。ナビゲータプラットフォーム１１０は、その受信機２２２を介して環境データ３０８を受信し、機能ロボットプラットフォーム１２０、１１２０が次に開始すべきタスク、移動または他の機能を決定する。その決定がなされると、ナビゲータプラットフォーム１１０は、図６と図７に表されたように、機能ロボットプラットフォーム１２０、１１２０の移動および動作を制御する。ナビゲータプラットフォーム１１０は、送信機２０８を介して、さらに定置式センサプラットフォーム１２４を制御することもできる。
【００３２】
図９は、システム１１００の動作のさらに別の態様を表したものである。ナビゲータプラットフォーム１１１０は、センサ３１０を介してセンサ入力データ２０１（すなわち環境データ）を受信し、機能ロボットプラットフォーム１２０、１１２０があれば、次に開始すべきタスク、移動、または他の機能を決定する。その決定がなされると、図６と同様に、ナビゲータプラットフォーム１１１０は、通信機２０８を介して機能ロボットプラットフォーム１２０の移動および動作を制御する。
【００３３】
図１０は、システム１１００の動作のさらに別の態様を表す。図７と同様に、機能ロボットプラットフォーム１１２０は、センサ３０４を介してセンサ入力データ２０１を受信し、送信機３０６を介してナビゲータプラットフォーム１１１０に環境データ３０８を送信する。ナビゲータプラットフォーム１１１０は、受信機２２２を介して環境データ３０８を受信し、機能ロボットプラットフォーム１２０、１１２０が次に開始すべきタスク、移動、または他の機能を決定する。その決定がなされると、図９と同様に、ナビゲータプラットフォーム１１１０は、送信機２０８を介して機能ロボットプラットフォーム１１２０の移動と動作を制御する。
【００３４】
図１１は、システム１００の動作のさらに別の態様を表す。図８と同様に、定置式センサプラットフォーム１２４は、センサ３１０を介してセンサ入力データ２０１を受信し、送信機３１４を介してナビゲータプラットフォーム１１０に環境データ３０８を送信する。ナビゲータプラットフォーム１１１０は、その受信機２２２を介してその環境データ３０８を受信し、機能ロボットプラットフォーム１２０，１１２０が次に開始すべきタスク、移動、または他の機能について決定する。その決定がなされると、ナビゲータプラットフォーム１１１０は、図９及び１０について上記に説明した機能ロボットプラットフォーム１２０，１１２０の移動と動作を制御する。ナビゲータプラットフォーム１１１０はまた、送信機２０８を介して定置式センサプラットフォーム１２４を制御することもできる。
【００３５】
送信機２０８と受信機３０２，３１２は、従来の通信手段や通信媒体のうち適切なものであればどんなものでも使用することができる。送信機３０６，３１４および受信機２２２についても同様に、従来の通信手段や通信媒体のうち適切なものであればどんなものでも使用することができる。実施例の一つにおいては、ナビゲータプラットフォーム１１０，１１１０と機能ロボットプラットフォーム１２０、１１２０の間と、ナビゲータプラットフォーム１１０、１１１０と定置式センサプラットフォーム１２４との間の通信について音波を使用する。一実施例において、ある周波数の音波はある方向に動くコマンドを意味する（例えば、ナビゲータプラットフォーム１１０，１１１０から機能ロボットプラットフォーム１２０、１１２０へのコマンド）。一方、別の周波数における音波は、他の方向へ動くコマンドを意味する（例えば、機能ロボットプラットフォーム１２０からナビゲータプラットフォーム１１０へのコマンド）。他の適切な通信手段としては、有線または無線通信、赤外線信号および磁気誘導などがあるが、これらに限定されない。
【００３６】
図１２に示されるロボット１２０の特定の実施は、説明の目的のみであって、ロボット１２０のための具体的な物理的アーキテクチャを必要としているとして解釈すべきではない。
【００３７】
機能ロボットプラットフォーム１２０は、受信機３０２を含む。ロボット１２０を移動し操縦するコントロールループは、電源と給電システム４０２、モーター制御装置４０４、モーター４０６および車輪４０８を備える。受信機３０２を介してナビゲータプラットフォーム１１０または１１１０から受信した制御信号は、モーター制御装置４０４に指示を行う。制御装置４０４は、モーター４０６を制御し、モーターはそれに応じて車輪４０８を駆動させる。このコントロールループはまた、サーボ、アクチュエータ、送信機等を備えてもよい。
【００３８】
図１３に示されるロボット１１２０の特定の実施は、説明の目的のみであって、ロボット１１２０のための具体的な物理的アーキテクチャを必要としているとして解釈すべきではない。
【００３９】
センサ３０４は、ロボット１１２０に搭載される。センサ３０４は、ナビゲータプラットフォーム１１１０におけるセンサ２０２と同様のものである。センサ２０２についての上記の説明は、ロボット１１２０におけるセンサ３０４の動作に適用される。センサの種類やシステムの複雑性によって、センサ３０４の位置と向きは、ナビゲータプラットフォーム１１０，１１１０が制御する場合もあるし、しない場合もある。
【００４０】
ロボット１１２０は、さらに、制御装置４１０、電源および給電システム４０２、受信機３０２、送信機３０６、モーター制御装置４０４、モーター４０６および車輪４０８を備える。制御装置４１０は、移動式ナビゲータプラットフォーム１１０について上で説明された制御装置２０４と同様である。制御装置４１０は、ロボットの周囲環境に関するセンサ３０４から情報を受信し処理する。これは、ナビゲータプラットフォーム１１０，１１１０の位置、他の機能ロボットプラットフォーム１２０，１１２０の位置、付近のランドマークといったような情報を含む。制御装置４１０は、送信機３０６を介して、ナビゲータプラットフォーム１１０，１１１０に対してセンサデータを送信する。
【００４１】
機能ロボットプラットフォーム１２０のように、機能ロボットプラットフォーム１１２０は、受信機３０２を含む。受信機３０２は、ナビゲータプラットフォーム１１０，１１１０から、ロボット１１２０を操作し操縦するためのコマンドを受信し、制御装置４１０にそのコマンドを伝える。ロボット１１２０を移動し操縦するためのコントロールループは、電源および給電システム４０２、モーター制御装置４０４、モーター４０６および車輪４０８を備える。制御装置４１０は、操作および操縦コマンドに基づいて、しかるべきコマンドをモーター制御装置４０４に送る。モーター制御装置４０４は、これらのコマンドに従って、モーター４０６に指示を行う。モーター４０６は、これに応じて、車輪４０８を駆動させる。ロボット１２０と同様に、ロボット１１２０におけるコントロールループはまた、サーボ、アクチュエータ、送信機等を備えることができる。
【００４２】
ここで、図１４で示したシステム１００，１１００の定置式センサプラットフォーム１２４の実施例を表すブロック図を参照する。ここでもまた、図１４に示される定置式センサプラットフォーム１２４の特定の実施は、説明の目的のみであって、定置式センサプラットフォーム１２４のための具体的な物理的アーキテクチャを必要としているとして解釈すべきではない。
【００４３】
センサ３１０は、定置式センサプラットフォーム１２４に搭載される。センサ３１０は、ナビゲーションプラットフォーム１１１０におけるセンサ２０２と機能ロボットプラットフォーム１１２０におけるセンサ３０４と同様である。センサ２０２と３０４についての上記の説明は、定置式センサプラットフォーム１２４の動作に関してセンサ３１０に適用される。センサの種類とシステムの複雑性により、センサ３１０の位置と向きえはナビゲーションプラットフォーム１１０，１１１０により制御される場合もあるし、されない場合もある。定置式センサプラットフォーム１２４は、水平な表面上に、持ち運びできるように直立に配置されるか、垂直面に取り付けられるか、水平面（例えば天井）から下向きに伸ばすか、または、ナビゲータプラットフォーム１１０，１１１０と適切に通信できる環境の範囲内でさまざまな位置に配置することができる。
【００４４】
定置式センサプラットフォーム１２４は、さらに制御装置５０４、電源および給電システム５０６、送信機３１４、および受信機３１２を備える。ロボット１１２０に対する制御装置４１０と同様に、制御装置５０４は、ロボットの周囲環境に関してセンサ３１０から情報を受信し処理する。これは、ナビゲータプラットフォーム１１０，１１１０の位置、他の機能ロボットプラットフォーム１２０、１１２０の位置、付近のランドマークといったような情報を含む。制御装置５０４は、送信機３１４を介してナビゲータプラットフォーム１１０，１１１０に対しセンサデータを送信する。
【００４５】
機能ロボットプラットフォーム１１２０のように、定置式センサプラットフォーム１２４は、受信機３１２を含む。受信機３１２は、ナビゲータプラットフォーム１１０、１１１０から、定置式センサプラットフォーム１２４を操作するためのコマンドを受信し、このコマンドを制御装置５０４に伝える。
【００４６】
ナビゲータプラットフォーム１１０，１１１０、機能ロボットプラットフォーム１２０，１１２０、および定置式センサプラットフォーム１２４の電源および給電機構は、同様または同一である。電源部分は、電池、電気コンセント、燃料電池、内燃機関その他のエンジン、またはそれらの組み合わせのいずれか適切なものを備えるが、それに限定されない。給電部分は、通常、電気の力を調節し、適用される仕様や要件に合わせて配電を行う。同様に、ナビゲータプラットフォーム１１０，１１１０、機能ロボットプラットフォーム１２０，１１２０および定置式センサプラットフォーム１２４における他の類似する機能的構成要素（例えば、制御装置、センサ、受信機、送信機）は、同様または同一である。
【００４７】
上記のように、本発明は、自律性マルチプラットフォームロボット環境において、マッピング、定位、プランニング、制御およびタスク実行を割り当てるためのシステムおよび方法を提供する。特に、実施例の一つにおいて、マッピング、定位、前プランニングと、プランニングおよび制御機能は、移動式ナビゲータプラットフォームとセンサ付き機能ロボットプラットフォームに割り当てられ、タスク実行機能は少なくとも一つの移動式機能ロボットプラットフォームに割り当てられる。別の実施例においては、マッピング、定位、前プランニングとプランニングおよび制御機能は、移動式ナビゲータプラットフォームと定置式センサプラットフォームに割り当てられ、タスク実行機能は少なくとも一つの移動式機能ロボットプラットフォームに割り当てられる。さらに別の実施例においては、マッピング、定位、前プランニングとプランニングおよび制御機能は、センサ付き定置式ナビゲータプラットフォームに割り当てられ、タスク実行機能は少なくとも一つの移動式機能ロボットプラットフォームに割り当てられる。さらに別の実施例においては、マッピング、定位、前プランニングとプランニングおよび制御機能は、定置式ナビゲータプラットフォームとセンサ付き移動式機能ロボットプラットフォームに割り当てられ、タスク実行機能は少なくとも一つの移動式機能ロボットプラットフォームに割り当てられる。さらにまた別の実施例においては、マッピング、定位、前プランニングとプランニングおよび制御機能は、定置式ナビゲータプラットフォームと定置式センサプラットフォームに割り当てられ、タスク実行機能は少なくとも一つの移動式機能ロボットプラットフォームに割り当てられる。各機能（マッピング、定位、前プランニングと、プランニングおよび制御、そしてタスク実行）については以下に述べる。
【００４８】
実施例の一つにおいて、ナビゲータプラットフォーム１１１０は、全体のまたはほぼ全体のマッピング機能を実行する。他の実施例において、ナビゲータプラットフォーム１１０，１１１０は、機能ロボットプラットフォーム１１２０、定置式センサプラットフォーム１２４、または１１２０と１２４の両方と連動してマッピング機能を実行する。マッピングとは、それによって環境の描写が作成され、センサデータと事前にプログラムされた入力から更新される。異なる解像度レベル、安定度およびまたは座標系を有する複数のマップが保持される場合がある。動的マッピングは、カレント・ダイナミック・マップ（ＣＤＭ）を保持し、これは、ロボットの環境の確率的二次元（２Ｄ）または三次元（３Ｄ）マップである。環境の外周部（すなわち部屋の壁、庭の境界）についての静的マップもまた作成される。ナビゲータプラットフォーム１１０，１１１０により作成されるマップは、ＲＡＭ２１８または不揮発性記憶装置２２０に記憶される。
【００４９】
反復型マッピングプロセスは、基本的に、センサ付き定置式ナビゲータプラットフォーム１１１０、センサ付き機能ロボットプラットフォーム１１２０、または定置式センサプラットフォーム１２４の近接周囲エリアにある対象物および障害物についてセンサデータを収集し、定位を行い、新しいセンサデータから引き出される情報を組み込むために動的マップを更新するステップを備える。センサ付き機能ロボットプラットフォーム１１２０は、与えられた環境についての情報を収集するために反復的に移動させることができる。あるいは、複数の定置式部品（すなわち、ナビゲータプラットフォーム１１１０、定置式センサプラットフォーム１２４）を戦略的に配置し、マスターナビゲータプラットフォーム１１０、１１１０により環境データを収集するための順序付けが行われる。いずれかのプロセスも、計算的に集中したものになるので時間を要する。しかしながら、以下に説明するように、ナビゲータプラットフォーム１１０、１１１０においてマッピング機能のために環境データを統合することにより、従来のシステムがマッピングに要した時間に対し、ほんのわずかな時間にまで、マッピングに要する時間を短縮することができる。
【００５０】
上記のように、環境の動的マップに加えて、環境の外周部の静的マップを作成することもできる。この静的マップは、例えば、建物の壁や庭の境界を含む。この静的マップは、予め決められていてナビゲータプラットフォーム１１０，１１１０に入力されているか、あるいは、タスクの実行が開始される前に、ナビゲータプラットフォーム１１０，１１１０が環境の静的マップを作成することも可能である。後者の場合、実施例の一つにおいて、ナビゲータプラットフォーム１１０，１１１０は物理的に識別できる外周部をたどるように、センサ付き機能ロボットプラットフォーム１１２０と連動し、ロボット１１２０が移動するにつれ、動的マップを保持して、動的マップから静的マップに外周部情報が組み込まれる。このプロセスは静的マップが完成し不変かつ安定的なものになるまで続行される。他の実施例において、ナビゲータプラットフォーム１１０，１１１０は、定置式装置（すなわち、ナビゲータプラットフォーム１１１０、定置式センサプラットフォーム１２４）の事前位置づけによって定義された識別可能な外周部エリアに沿って順序付された他のナビゲータプラットフォーム１１１０およびまたは定置式センサプラットフォーム１２４と連動する。
【００５１】
静的マップを作成するプロセスは比較的長く反復的である。好ましくは、本システムを新しい環境に導入する際に一回のみ行うのがよい。このマップを作成するための正確な方法は、使用されるセンサと計算を行う際に選択されるアルゴリズムによる。実施例の一つにおいて、この静的マップは一旦作成されると、ナビゲータプラットフォーム１１０，１１１０内に永久的に記憶される。ナビゲータは、環境におけるランドマークや他の物理的属性を認識することにより、かつ静的マップ内にＣＤＭの位置合わせをすることにより、静的マップにおける自身の位置を確認することができる。あるいは、ナビゲータプラットフォーム１１０，１１１０は、センサ付き機能ロボットプラットフォーム１１２０およびまたは定置式センサプラットフォーム１２４と連動して、静的マップ内における自身の位置を確認することが可能である。原点または基準点は必要ではない。ある程度の仮定を用いることにより、静的マップを作成するために必要とされる時間と計算を短くすることが可能である。例えば、オフィスや家庭環境において、壁は四角で平らであると仮定できる。このような仮定を用いることにより静的マップを作成するための時間を短縮できる。
【００５２】
実施例の一つにおいて、マッピングプロセスは、ナビゲータプラットフォーム１１１０に搭載された一対のステレオデジタルカメラから引き出されるセンサデータにより作成される三つのマップを含む。あるいは、この三つのマップは、一以上の機能ロボットプラットフォーム１１２０およびまたは一以上の定置式センサプラットフォーム１２４に搭載された一対のステレオデジタルカメラから引き出されるセンサデータから作成することも可能である。本実施例における第一のマップは、ナビゲータ１１０，１１１０の近接周囲についてのテンポラリマップ（ＴＭ）である。特に、ＴＭは、近接周囲環境について最新のステレオ対画像から作成される確率的描写である。本実施例における第二のマップは、ＣＤＭである。ＣＤＭは、作業環境の確率的三次元描写であり、連続するＴＭからの情報を交互に組み入れることにより作成される。本実施例におけるＣＤＭは、ナビゲーションプラットフォーム１１０，１１１０が移動するたびに更新される。本実施例における第三のマップは、静的周辺マップ（ＰＭ）である。上記のように、ＰＭは、ナビゲータプラットフォーム１１０，１１１０が環境の外周部をたどるにつれ作成される。
【００５３】
別の実施例においては、マップはナビゲータプラットフォーム１１０，１１１０によって作成されるのではなく、むしろ、ナビゲータプラットフォーム１１０，１１１０に入力されるか、または事前にプログラムされる。さらに別の実施例においては、静的マップは、タスク開始前に作成されず、または入力されない。この実施例においてナビゲータプラットフォーム１１０，１１１０は、単に、空の動的マップとともにタスクを開始し、タスクが実行されるにつれて動的マップを更新する。
【００５４】
実施例の一つにおいて、ナビゲータプラットフォーム１１０は、マップされた環境周辺で、自身と機能ロボットプラットフォーム１２０の両方を運行させる。本実施例において、ナビゲータプラットフォーム１１０は、自身と機能ロボットプラットフォーム１２０の双方について、定位、プランニングおよび制御を含むナビゲーション全体またはほぼ全体の態様を担う。これとは対照的に、従来のシステムにおいては、移動式ロボットは各々、自身の定位、プランニングおよび制御を担っていた。このようなシステムにおける各ロボットは、タスクを実行するために適切な位置へと自身を運行させ操縦することを担う。このようなシステムによると、すべてのロボットに対して定位計算が遅延することになり、タスク完了が遅くなり非効率的なものになる。ここに説明される実施例によれば、一つのナビゲータプラットフォーム１１０に全体またはほぼ全体のナビゲーション機能を集約させ、ロボットの移動量を最小化することにより、このような遅延は回避され効率化を図ることができる。
【００５５】
別の実施例において、ナビゲータプラットフォーム１１１０は定置式であり、機能ロボットプラットフォーム１２０，１１２０をマップされた環境周辺において運行させることを担う。すでに説明した実施例と同様に、本実施例において、ナビゲータプラットフォーム１１１０は、機能ロボットプラットフォーム１２０，１１２０に対する定位、プランニングおよび制御を含むナビゲーション全体またはほぼ全体を担う。
【００５６】
定位とは、それによってマップ内におけるロボットの現在位置、方位および変化率が定められるプロセスである。ナビゲータの定位と機能ロボットプラットフォームの定位には、異なる手順が用いられる場合がある。機能ロボットプラットフォームの定位は、比較的単純である。というのは、実施例の一つにおいて、機能ロボットプラットフォームの定位を行う際、ナビゲータは定置式であるか、またはほぼ定置式であり、ＣＤＭにおける自身の位置を知っているからである。一実施例において、ナビゲータプラットフォーム１１０は、単に、機能ロボットプラットフォーム１１２０または定置式センサプラットフォーム１２４のビジョンシステム（すなわちセンサ３０４，３１０）を使用し、機能ロボットプラットフォームを追跡し、カルマンフィルタなどのトラッキングフィルタを用いて、ビジョンデータをフィルタにかける。機能ロボットプラットフォーム１２０が短い距離を移動または回転した場合、センサ３０４，３１０は、この移動を検出し、機能ロボットプラットフォーム１２０の位置を確認できる。ベースステーション１３０を使用する実施形態においては、ベースステーション１３０付近の機能ロボットプラットフォーム１２０の位置もまた迅速に確認することができる。
【００５７】
機能ロボットプラットフォーム１２０におけるユニークな形状およびまたは幾何学的マーキング１２２は、ナビゲータプラットフォーム１１０がロボット１２０の定位を行うための一助となる。ナビゲータプラットフォーム１１０により用いられる種類のセンサ２０２は、ユニークな形状またはマーキングが使用されているか否か、およびそれがどのように認識されるかを指示する。実施例の一つにおいては、ナビゲータプラットフォーム１１０は、センサデータを処理し、具体的な形状を認識するためにニューラルネットを使用する。別の実施例において、ナビゲータは、どんなマーキングおよびまたは形状でも認識するようなビジョンまたはセンサシステムを使用する。
【００５８】
機能ロボットプラットフォーム１２０，１１２０の定位に加え、実施例の一つにおいて、ナビゲータプラットフォーム１１０，１１１０は、いかなる移動後も自身の位置を確認する。ナビゲータの定位は、マッピング、特にＣＤＭの維持と密接不可分である（すなわち、ＣＤＭを維持するために、ナビゲータはＣＤＭ内で自身がどこにいるかを把握しなければならない）。ＣＤＭと静的ＰＭが両方使用される場合、定位とは、これらのマップ内でのナビゲータと機能ロボットプラットフォーム両方の位置を定めることを含む。尚、ＣＤＭは事前にプログラムしてもよい。
【００５９】
ナビゲータの定位を行うプロセスは、通常、機能ロボットプラットフォームの定位プロセスよりも複雑である。ナビゲータが自身の定位を行う際に考えられる方法は、推測航法、アクティブビーコン定位法、アクティブセンサ定位法およびランドマーク認識法を含む。推測航法を用いると、オドメトリと慣性航法システムを使用して、ロボットの位置変化の大まかな推定値を維持することができる。アクティブビーコン定位法は、環境内の周知の位置に置かれたビーコンからの距離を計測することによりロボットの位置を決定する。そして、ロボットの位置を正確に示すために三角測量が使用される。アクティブセンサ定位法は、周知の固定された位置に設けられたデジタルカメラのようなセンサを用いてロボットの位置を追跡する。ランドマーク認識法を使用すると、ロボットは環境における特徴物やランドマークの位置を認識し識別する。認識されたランドマークの位置を使用して、ロボットの位置が算出される。
【００６０】
コストが低く簡易なため、本発明の一実施例において、推測航法（特にオドメトリ）のなんらかの形態を採用することができる。しかしながら、車輪のスリップや位置合わせ不良などの要因により、時間が経過するにつれて推測航法の定位誤差が積み重なる場合がある。これらの誤差を補正するため、推測航法と組み合わせて上記のような補助的技術を用いる。現実の世界での要因や制約により、補助技術の実現可能性が制限される場合もある。アクティブビーコンおよびアクティブセンサ法は、通常、ロボット環境において、カメラや反射テープといったような異物の設置を必要とする。このようなものの設置は工場や工業的条件においては許容される場合もあるが、家庭、オフィスおよび屋外環境では一般的に受け入れられない。これらの理由により、本発明の一実施例において、推測航法定位を補強するためにランドマーク認識法が使用される。
【００６１】
推測航法を、ランドマーク認識法といったような補助的技術との組み合わせで使用した場合でも、センサ解像度の限界などの要因により、通常、定位を完全に正確なものにはできない。定位精度を改善するために、マルコフ連鎖モンテカルロ・アルゴリズムのような定位アルゴリズムのいくつかを使用する場合もある。
【００６２】
図１７は、ナビゲータプラットフォーム１１０のためのマッピングおよび定位プロセス７２０に関する一実施例に含まれるサブステップを表わすフローチャートである。ステップ７２１において、ナビゲータプラットフォーム１１０は、センサ付き機能ロボットプラットフォーム１１２０または定置式センサプラットフォーム１２４に搭載されたセンサからの、近接する周囲環境についてのセンサデータを取得する。実施例の一つにおいて、このセンサデータを取得するために、一対のデジタルステレオカメラが使用される。対のステレオ画像から、ステップ７２２において新たなＴＭが作成され、ＣＤＭと相対させて位置合わせする（ステップ７２３）。暫定的かつ現在のマップについて位置合わせするために、位置推定値の集合（ＰＥｎ＋１，　１　・・・ＰＥｎ＋１，　ｍ）が生成される。マルコフ連鎖モンテカルロ・アルゴリズムのような定位アルゴリズムが、この推定値集合を生成するために使用される。この位置推定値における誤差範囲により、因数ｍがどのくらいの大きさであるかが決定される。この範囲から最良の推定値ＰＥｎ＋１、ｋ（１＝ｋ＝ｍ）が選択され、ＰＥｎ＋１、ｋを使ってＴＭとセンサデータから情報が抽出され、ＣＤＭに加えられる（ステップ７２４）。このＴＭはその後廃棄される。
【００６３】
ナビゲータプラットフォーム１１０は、計算を最小化するために静止状態を保つ（ステップ７２５）。実施例の一つにおいて、ナビゲータプラットフォーム１１０は、以下に説明するように静止を保つ一方、機能ロボットプラットフォームを追跡し制御する。結果として、ナビゲータプラットフォーム１１０も移動をする必要がある場合もある。ナビゲータプラットフォーム１１０が新たなゴール位置ＧＰｎ＋１に向かって移動を開始すると（ステップ７２６）、ＰＥｎからの距離と方位の推定値を取得する際に使用するためのオドメトリデータ（実施例の一つにおいては上記の推測航法を使用する）を収集する（ステップ７２７）。別の実施例において、ナビゲータプラットフォーム１１０はまた、現在位置についてより改善された推定値を出すために、センサ付き機能ロボットプラットフォーム１１２０または定置式センサプラットフォーム１２４に搭載されたセンサを使用して、一以上の機能ロボットプラットフォームまたは他の認識されたランドマークの位置を（トラッキングフィルタを介して）追跡する。上記のように推測航法とランドマーク認識法を使うことにより、ナビゲータプラットフォーム１１０が最新の位置推定値ＰＥｎ＋１は、新たなゴール位置ＧＰｎ＋１と相対的に許容可能な閾値内にあると決定した場合（決定ノード７２８）、移動を停止し、定位およびマッピングプロセスを繰り返すためにステップ７２１に戻る。
【００６４】
図２２は、ナビゲータプラットフォーム１１１０のための、マッピングおよび定位プロセス７２０に関する別の実施例に含まれるサブステップを表すフローチャートである。概して、これらのステップは、ナビゲータプラットフォーム１１０に対して上に記載した図１７のステップと同様である。しかしながら、ナビゲータプラットフォーム１１１０は定置式であり、搭載されたセンサを備えるので、いくつかのステップにおいて多少の差異がある。まず、ステップ７２１と１７２７における環境データも、また、ナビゲータプラットフォーム１１１０に搭載されたセンサから取得される。それ以外、最も重要な相違点はステップ１７２６と１７２７にある。それは、ナビゲータプラットフォーム１１１０を移動させる必要が生じた場合、ナビゲータプラットフォーム１１１０は、手動で新たな位置（ＧＰｎ＋１）に再配置されなければならない。通常、ナビゲータプラットフォーム１１１０は、このような移動を容易にするために一以上のハンドルまたはグリップ１１１２を有する（図２７）。
【００６５】
なお、ナビゲータプラットフォーム１１１０を移動させるのではなく、作動中の機能ロボットプラットフォーム１２０，１１２０の視界に入った、別の予め設けられた定置式センサプラットフォーム１２４の方に、システム１１００を単に前進させることも可能である。さらに別の方法は、作動中の機能ロボットプラットフォーム１２０，１１２０を追跡させるために、ナビゲータプラットフォーム１１１０が第二のセンサ付き機能ロボットプラットフォーム１１２０を制御することである。また、さらに別の方法として考察されるのは、定置式センサプラットフォーム１２４に対して上に記載したように、戦略的に事前に配置した複数のナビゲータプラットフォーム１１１０を使用することなどである。
【００６６】
実施例の一つにおいて、ナビゲータプラットフォーム１１０，１１１０は、環境に関する情報を集め、情報収集と前プランニングを行う。この情報収集と前プランニングプロセスの実施例に含まれるさまざまなサブステップを図１８により詳細に表す。尚、図１８に表されたステップは、いかなる順序で行われてもよいし、各ステップは自由に選択できる。すなわち、情報収集と前プランニングは、リストされたステップのうちのいくつかが欠けていても完了でき、リストされたステップのいくつかはナビゲータプラットフォーム１１０，１１１０に事前にプログラムされているか入力しておくことが可能である。
【００６７】
ステップ７３１において、ナビゲータプラットフォーム１１０，１１１０は、一以上の機能ロボットプラットフォームが存在する部屋または環境の特性（すなわち、サイズ、掃除の必要性など）とこれらの部屋に存在する表面のタイプといったような追加的データを収集する。一実施例においては、データは、システム内の機能ロボットプラットフォームごとに収集される。このデータは、マッピングや定位に使用されるセンサと同じものを使用して集められてもよいし、あるいは、これらのデータ収集用に異なるセンサを使用してもよい。例えば、マッピングと定位にソナーセンサが使用される場合、部屋の表面タイプのようなデータを集めるためには、通常、カメラ等の別のセンサが使用される。
【００６８】
ステップ７３２において、ナビゲータプラットフォーム１１０，１１１０は、タスク実行のために、どの機能ロボットプラットフォーム１２０，１１２０が使用可能であるかを決定する。あるいは、この情報は、ナビゲータプラットフォーム１１０，１１１０に入力しておくか事前にプログラムしておくことも可能である。あるいは、これは単に不必要な情報である場合もある。次に、ステップ７３３において、ナビゲータプラットフォーム１１０，１１１０は、どのタスクを実行すべきかを決定する。また、この情報は、ナビゲータプラットフォーム１１０，１１１０に事前にプログラムしておいてもよいし、インターフェースを介して入力してもよいし、事前プログラムと入力を組み合わせることにより決定してもよい。
【００６９】
ステップ７３１〜７３３において収集された情報を使用して、ナビゲータプラットフォーム１１０，１１１０は、使用可能な機能ロボットプラットフォームと実行すべきタスクとのマッチングを行い（ステップ７３４）、タスクスケジュールを作成する（ステップ７３５）。ナビゲータの移動を最小化し、効率を上げるために、各タスクはサブタスクに分割される場合もある。
【００７０】
実施例の一つにおいて、ナビゲータプラットフォーム１１０，１１１０は、このスケジュールタスクを実行するために機能ロボットプラットフォーム１２０，１１２０を制御する。プランニングおよび制御に含まれるステップは図１９に詳細に表す。ステップ７４２において、ナビゲータプラットフォーム１１０，１１１０は、（上記のように作成されたタスクスケジュールに従って、）次にスケジュールされたタスクの実行を開始するタイミングを待つ。次のタスクのタイミングがきた時、またはその前に、ステップ７４４において、ナビゲータプラットフォーム１１０，１１１０は、次の最も低いレベルのサブタスクを再帰的に計算する。最も低いレベルのサブタスクの例としては、モーターの電源を入れてイベントが起きるまでロボットを追跡するなどが含まれる。ナビゲータは、各サブタスクを実行するために、自身を移動させるか、適切な機能ロボットプラットフォームを移動およびまたは制御する（ステップ７４６）。ナビゲータプラットフォーム１１０，１１１０は、送信機２０８を介して、機能ロボットプラットフォーム１２０，１１２０に対して適切な制御信号２０９を発する（図６〜１１参照）。このプランニングおよびコントロールループは、すべてのタスクが完了するまで繰り返される（決定ノード７４８）。
【００７１】
ナビゲータプラットフォーム１１０，１１１０は、機能ロボットプラットフォームのコントロールループを使って、プランされたルートに沿って機能ロボットプラットフォーム１２０，１１２０を案内する。上記のように、実施例の一つにおいて、ロボット１２０，１１２０を移動させ操縦するためのコントロールループは、電源、給電システム４０２、モーター制御装置４０４、モーター４０６および車輪４０８を備える。ナビゲータプラットフォーム１１０，１１１０から受信機３０２を介して受け取る制御信号によりモーター制御装置４０４は指示を受ける。制御装置４０４はモーター４０６を制御し、モーター４０６はそれに応じて車輪４０８を駆動する。このコントロールループはまた、サーボ、アクチュエータ、送信機等を備える。
【００７２】
実施例の一つにおいて、機能ロボットプラットフォーム１２０，１１２０が移動している間、ナビゲータプラットフォーム１１０，１１１０は、静止状態を維持し、機能プラットフォームの進行を追跡する。いくつかのトラッキングアルゴリズムについては当業者に良く知られている。ナビゲータプラットフォーム１１０，１１１０を静止状態に保つことにより、トラッキングアルゴリズムに関連する定位計算オーバーヘッドがかなり軽減される。さらに、定置式ナビゲータの使用は、不測の障害物の周りを運行する際に生じる遅延を軽減する。ナビゲータプラットフォーム１１０，１１１０は、まずプランされたルートをテストするために機能ロボットプラットフォームを使用することができる。衝突が起こる場合、ナビゲータプラットフォーム１１０，１１１０は自身の位置を認識し、代替経路を進行するよう指示する際には、機能ロボットプラットフォームの位置を追跡できる。図１５に示したように、ナビゲータプラットフォーム１１０，１１１０は、ナビゲータプラットフォーム１１１０、機能ロボットプラットフォーム１１２０または定置式センサプラットフォーム１２４に搭載されたセンサから、センサユニット５３０を介して、障害物５１０を「見る」ことができる。そして、機能ロボットプラットフォーム１２０，１１２０に対しコントロールループ５２０を介して障害物５１０の周りを案内することができる。これは、ナビゲータプラットフォーム１１０，１１１０自身が機能ロボットプラットフォームのタスクを実行する必要がある場合や、機能ロボットプラットフォーム１２０，１１２０が追跡プロセスを行う必要がある場合に比べて、計算は非常に軽くて済む。
【００７３】
実施例の一つにおいて、ナビゲータプラットフォーム１１０，１１１０は、機能ロボットプラットフォームが従来のシステムよりも実質的に速いスピードで移動する間、機能ロボットプラットフォームを追跡し制御することができる。特に、一実施例においては、このシステムは、１０００ＭＩＰＳごと毎秒１フィートよりも実質的に速い速度で移動することが可能である。さらに、ナビゲータプラットフォーム１１０，１１１０は、機能ロボットプラットフォームを追跡し制御すると同時に、マッピングおよび定位機能の一部またはすべてを実行する十分な処理能力を有する。
【００７４】
最終的に、ナビゲータプラットフォーム１１０は、機能ロボットプラットフォーム１２０，１１２０の追跡を続行するために、他の機能ロボットプラットフォーム１１２０または定置式センサプラットフォーム１２４に搭載されたセンサを介して、自身の位置を変える必要がある。通常このような位置の変更は、作動している機能ロボットプラットフォーム１２０，１１２０が遠くに離れて移動する必要がある場合、または現在追跡に使用されているセンサの視界からはずれて移動してしまった場合に生じる。ナビゲータプラットフォーム１１０が、自身の位置変更が必要であると決定した場合は、実施例の一つにおいては、作動中の機能ロボットプラットフォーム１２０，１１２０に対して、動きを止めるよう命令し、その後、機能ロボットプラットフォーム１２０，１１２０およびまたは定置式センサプラットフォーム１２４をランドマークとして使用して、移動する。
【００７５】
同様に、ナビゲータプラットフォーム１１１０についても、自身のあるいは他のナビゲータプラットフォーム１１１０、他の機能ロボットプラットフォーム１１２０または定置式センサプラットフォーム１２４に搭載されたセンサを介して、機能ロボットプラットフォーム１２０，１１２０の追跡を続行するために、位置を変える必要がある場合がある。通常、この位置変更は、ナビゲータプラットフォーム１１０を移動させるための上記の理由と同じ理由で生じる。しかしながら、ナビゲータプラットフォーム１１０，１１１０のどちらのタイプについても、機能ロボットプラットフォーム１１２０上のセンサと複数の定置式センサを使用することにより、ナビゲータ１１０と１１１０の位置を変更する必要性がなくなることに留意すべきである。
【００７６】
図１６に示したように、実施例の一つにおいて、ナビゲータプラットフォーム１１０が移動しているときには、機能ロボットプラットフォーム１２０，１１２０および部屋の角または窓のような他のランドマーク６１２について三角測量をするために、ナビゲータプラットフォーム１１１０、機能ロボットプラットフォーム１１２０または定置式センサプラットフォーム１２４に搭載されたセンサからのセンサ入力６１０を使用する。このデータを使用することにより、ナビゲータプラットフォーム１１０は、正しい位置に移動する。ナビゲータプラットフォーム１１０は、新たな位置に到達すると、動的マッピングと定位（上記のとおり）を開始し、自身がどこに位置するのかを確認する。このプロセスは、ランドマークが離れている場合や、はっきりしない場合は数分を要し、さらにマップまたは位置データに誤差がある場合がある。この反復プロセスは、従来の方法と比べると比較的速度が速い。というのは、通常、ナビゲータプラットフォーム１１０の近くに、正確に寸法のわかるランドマークが少なくとも一つ存在するからである。一実施例において、ナビゲータプラットフォーム１１０が機能ロボットプラットフォーム１２０，１１２０に十分に接近して移動すると、この方法はステップ７４４（図１９）に戻り、ナビゲータプラットフォーム１１０はさらなるタスク実行のための次のサブタスクを計算する。サブタスクの再帰計算は、ナビゲータの移動を最小限にするようなアルゴリズムに基づいて行われる。
【００７７】
実施例の一つにおいて、ナビゲータプラットフォーム１１０，１１１０は、タスクを実行する際の機能ロボットプラットフォームを追跡する。例えば、ナビゲータプラットフォーム１１０，１１１０は、ロボットを追跡する際に補助となるように、タスクによって要求される移動の動作模型を使用することができる。この動作模型は、与えられた表面のタイプに対する機能ロボットプラットフォームの、予想される線速度と角速度、および加速度、そしてロボットのモーターとアクチュエータに対するインプットセットから成る。この動作模型により機能ロボットプラットフォームの位置について大まかな推定値が与えられると、ナビゲータプラットフォーム１１０，１１１０は、ナビゲータプラットフォーム１１１０、機能ロボットプラットフォーム１１２０または定置式センサプラットフォーム１２４上に搭載されたセンサを使用して、さらに正確なデータを取得することができる。動作模型の誤差をフィルタリングするために、さまざまなフィルタリングアルゴリズムが使用される。実施例の一つにおいては、カルマンフィルタリングが使用される。当業者に良く知られている他の適切なフィルタリングアルゴリズム、例えば、ｇ−ｈフィルタおよびベネディクト・ボードナーフィルタなどが使用される場合もある。基本的に、ｘ−ｙ方位データがトラッキングされ、フィルタリングアルゴリズムは、動作模型とセンサ入力による誤差を軽減する。
【００７８】
決定ノード７４８（図１９）において、ナビゲータプラットフォーム１１０，１１１０は全体のタスクまたはサブタスクが完了したか否かを決定する。タスクが完了すると、この方法はステップ７４２に戻り、ナビゲータプラットフォーム１１０，１１１０は次のタスクまたはサブタスクを開始するタイミングを待つ。実施例の一つにおいて、タスクの完了とは、ナビゲータプラットフォーム１１０，１１１０と機能ロボットプラットフォームが充電のためにベースステーション１３０（図１）に戻ることを含む。この点において、すべての移動およびタスクの実行を通じて、ナビゲータプラットフォーム１１０，１１１０は、機能ロボットプラットフォームの電力レベルを推定しまたはモニターし、必要に応じて機能ロボットプラットフォームを充電のために引き返させることも可能である。
【００７９】
移動およびタスクの実行に際し、例えば、掃除機のような機能ロボットプラットフォームには、内蔵された電源ではなく、壁コンセントからの電源を必要とするものもある。このようなロボットを使用するシステムにおいては、ナビゲータプラットフォーム１１０，１１１０と機能ロボットプラットフォームは、協同して作動し、壁コンセントの位置を確認し、機能ロボットプラットフォームをコンセントに差し込む。機能ロボットプラットフォームがある特定のコンセントからかなり離れて移動する必要がある場合は、ナビゲータプラットフォーム１１０，１１１０と機能ロボットプラットフォームをコンセントから引き抜き、別の場所に移動することができる。
【００８０】
本発明のいくつかの実施例が上記に示され説明された。本発明については、また他の実施例も考えられる。例えば、一以上のナビゲータプラットフォーム１１０，１１１０を使用することも、本発明の他の実施例として考察される。この実施例においては、第一のプラットフォームセット（すなわち、ナビゲータプラットフォーム１１０，１１１０、機能ロボットプラットフォーム１１２０、および定置式センサプラットフォーム１２４）がマッピング、定位、プランニングおよび制御機能の全体、またはほぼ全体を担い、第二の、機能プラットフォームセットが機能タスク完了を担う。第一のプラットフォームセットは、プランニング、ナビゲーティング、および第二のセットによるタスク実行のトラッキングを担う。本発明のこの実施例は、一つのナビゲータが指示や制御すべき機能ロボットプラットフォームの数が多すぎる場合や、機能ロボットプラットフォームが格別に大きな地理的エリアに亘って広がってしまっている場合に適する。
【００８１】
最後に、上記の実施例のいずれにおいても、定置式または移動式プラットフォームはいずれも、処理および計算の一部またはすべてを実行するための専用にすることができる。このような構造においては、データを収集するための適切なセンサをどのプラットフォームも備えることができる。このセンサデータは、未処理のものでも部分的に処理されたものでも、無線ネットワークや他の適切な通信手段を介して、さらなる処理のために専用の定置式または移動式プラットフォームに送信される。この専用のプラットフォームが計算を行い、その結果をナビゲータに伝える。
【００８２】
図２０を参照すると、自律性マルチプラットフォームロボットシステム１００の一実施例を実行する方法８００を表すフロー図が示されている。ステップ８０２において、識別可能な移動式ナビゲータプラットフォームと移動式機能プラットフォームから成る自律性システムが提供されており、ここでは一以上の機能プラットフォームがセンサを含む（すなわち、選択された機能プラットフォーム）。ステップ８０４において、マッピング、定位、プランニングおよび制御の機能は、少なくとも一つのナビゲータプラットフォームと少なくとも一つの選択された機能プラットフォームに割り当てられる。
【００８３】
ステップ８０６において、機能タスク完了のための役割は、少なくとも一つの機能プラットフォームに割り当てられる。ステップ８０８において、ナビゲータプラットフォームと選択された機能プラットフォームは環境のマッピングをし、環境内におけるすべてのロボットの位置を確認し、タスク実行スケジュールを計画する。ステップ８１０において、ナビゲータは、機能プラットフォームが割り当てられたタスクを実行するよう制御される間、静止状態を維持する。割り当てられたタスクは、トラッキングをより容易にするために、かつナビゲータの再配置の必要性を限定するために、より小さな単位のタスクにサブ分割される。ステップ８１２において、これは任意であるが、ナビゲータは新たな現在位置を再取得するために、選択された機能プラットフォームを使用して、新しい位置へと移動する場合もある。
【００８４】
図２１を参照すると、自律性マルチプラットフォームロボットシステム１００の一実施例を実行している別の方法１８００を表すフロー図が示されている。ステップ１８０２において、識別可能な移動式ナビゲータプラットフォーム、移動式機能プラットフォームと定置式センサプラットフォームから成る自律性システムが提供されている。ステップ１８０４において、マッピング、定位、プランニングおよび制御の機能は、少なくとも一つのナビゲータプラットフォームと少なくとも一つの選択された定置式センサプラットフォームに割り当てられる。
【００８５】
ステップ８０６において、機能タスク完了のための役割は、少なくとも一つの機能プラットフォームに割り当てられる。ステップ１８０８において、ナビゲータプラットフォームと定置式センサプラットフォームは環境のマッピングをし、環境内におけるすべてのロボットの位置を確認し、タスク実行スケジュールを計画する。ステップ８１０において、ナビゲータは、機能プラットフォームを割り当てられたタスクを実行するように制御する間、静止状態を維持する。割り当てられたタスクは、トラッキングをより容易にするために、かつナビゲータの再配置の必要性を限定するために、より小さな単位のタスクにサブ分割される。ステップ１８１２において、これは任意であるが、ナビゲータは新たな現在位置を再取得するために、定置式センサプラットフォームを使用して、新しい位置へと移動する場合もある。
【００８６】
図２３を参照すると、自律性マルチプラットフォームロボットシステム１１００の一実施例を実行している別の方法２８００を表すフロー図が示されている。ステップ２８０２において、識別可能なセンサ付き定置式ナビゲータプラットフォームおよび移動式機能プラットフォームから成る自律性システムが提供されている。ステップ２８０４において、マッピング、定位、プランニングおよび制御の機能は、少なくとも一つのナビゲータプラットフォームに割り当てられる。
【００８７】
ステップ８０６において、機能タスク完了のための役割は、少なくとも一つの機能プラットフォームに割り当てられる。ステップ２８０８において、ナビゲータプラットフォームは環境のマッピングをし、環境内におけるすべてのロボットの位置を確認し、タスク実行スケジュールを計画する。ステップ８１０において、ナビゲータは、機能プラットフォームを割り当てられたタスクを実行するように制御する間、静止状態を維持する。割り当てられたタスクは、トラッキングをより容易にするために、かつナビゲータの再配置の必要性を限定するために、より小さな単位のタスクにサブ分割される。ステップ２８１２において、これは任意であるが、ナビゲータは新たな現在位置を再取得するために、搭載されたセンサを使用して、新しい位置へ再配置される場合もある。
【００８８】
図２４を参照すると、自律性マルチプラットフォームロボットシステム１１００の一実施例を実行している別の方法３８００を表すフロー図が示されている。ステップ３８０２において、識別可能なセンサ付き定置式ナビゲータプラットフォームおよび移動式機能プラットフォームから成る自律性システムが提供されており、ここで一以上の機能プラットフォームはセンサを含む（すなわち選択された機能プラットフォーム）。ステップ３８０４において、マッピング、定位、プランニングおよび制御の機能は、少なくとも一つのナビゲータプラットフォームと少なくとも一つの選択された機能プラットフォームに割り当てられる。
【００８９】
ステップ８０６において、機能タスク完了のための役割は、少なくとも一つの機能プラットフォームに割り当てられる。ステップ３８０８において、ナビゲータプラットフォームと選択された機能プラットフォームは環境のマッピングをし、環境内におけるすべてのロボットの位置を確認し、タスク実行スケジュールを計画する。ステップ８１０において、ナビゲータは、機能プラットフォームを割り当てられたタスクを実行するように制御する間、静止状態を維持する。割り当てられたタスクは、トラッキングをより容易にするために、かつナビゲータの再配置の必要性を限定するために、より小さな単位のタスクにサブ分割される。ステップ３８１２において、これは任意であるが、ナビゲータは新たな現在位置を再取得するために、選択された機能プラットフォームを使用して、新しい位置へ再配置される場合もある。
【００９０】
図２５を参照すると、自律性マルチプラットフォームロボットシステム１１００の一実施例を実行しているさらに別の方法４８００を表すフロー図が示されている。ステップ４８０２において、識別可能な定置式ナビゲータプラットフォーム、移動式機能プラットフォーム、および定置式センサプラットフォームから成る自律性システムが提供されている。ステップ４８０４において、マッピング、定位、プランニングおよび制御の機能は、少なくとも一つのナビゲータプラットフォームと少なくとも一つの定置式センサプラットフォームに割り当てられる。
【００９１】
ステップ８０６において、機能タスク完了のための役割は、少なくとも一つの機能プラットフォームに割り当てられる。ステップ４８０８において、ナビゲータプラットフォームと定置式センサプラットフォームは環境のマッピングをし、環境内におけるすべてのロボットの位置を確認し、タスク実行スケジュールを計画する。ステップ８１０において、ナビゲータは、機能プラットフォームを割り当てられたタスクを実行するように制御する間、静止状態を維持する。割り当てられたタスクは、トラッキングをより容易にするために、かつナビゲータの再配置の必要性を限定するために、より小さな単位のタスクにサブ分割される。ステップ４８１２において、これは任意であるが、ナビゲータは新たな現在位置を再取得するために、定置式センサプラットフォームを使用して、新しい位置へ再配置される場合もある。
【００９２】
図２６〜３１は、上記の自律性マルチプラットフォームロボットシステム１００、１１００の複数の実施例についてさまざまなプラットフォームを表す定型の斜視図である。具体的に、図２６は、移動式ナビゲータプラットフォーム１１０の一実施例を表す定型の斜視図である。これは、後輪１２０２と前輪１２０４を含み、さらに、筺体１２０８上に通信アンテナ１２０６が設けられている。尚、ナビゲータプラットフォーム１１０の前方端部１２１２に位置するバンパー１２１０も使用される。
【００９３】
図２７は、定置式ナビゲータプラットフォーム１１１０の一実施例を表す定型の斜視図である。尚、ナビゲータプラットフォーム１１１０は、複数のセンサ１１１４とハンドル１１１２を備える。センサ１１１４は、ベース１１２０に支持されたステム１１１８上に設けられたボール形状の筺体１１１６内に保持される。このようにすることにより、このプラットフォームは、隣接する床面から離れ、他のナビゲータプラットフォーム１１０，１１１０、機能ロボットプラットフォーム１２０，１１２０および／または定置式センサプラットフォーム１２４とより容易に通信することが可能となる。
【００９４】
図２８は、移動式機能ロボットプラットフォーム１２０の実施例についての定型の斜視図である。機能ロボットプラットフォーム１２０は、動力付き後輪１１３４とフロントキャスタ１１３６によって支持された筺体１１３２の先端に吸引ノズル１１３０を備える。フィルタ室１１３８は、通信アンテナ１１４０と同様、ノズル１１３０の後方に位置する。図２８では見えないが、機能ロボットプラットフォーム１２０にはモーター／ファンおよび、所望であれば、ブラシローラがある。
【００９５】
図２９は、移動式機能ロボットプラットフォーム１２０’の別の実施例を表す定型の斜視図である。この実施例においては、動力付きトラックアセンブリ１１５０の形態をしている駆動手段が、図２８で表された動力付き車輪１１３４の代わりに用いられる。また、ノズル１１５２が筺体１１５４の前方端部に設けられ、そこに一対のトラックアセンブリ１１５０が搭載される。ノズル１１５２はフィルタ室１１５６と情報伝達を行う。
【００９６】
図３０は、移動式機能ロボットプラットフォーム１１２０の一実施例を表す定型の斜視図である。尚、機能ロボットプラットフォーム１１２０は、センサと、ほぼ四角形の、各角にある４つの車輪１１７４に支持された筺体１１７２から上方に延びるコラム１１７０を備える。コラム１１７０は、やや正方形の本体の各角にセンサ１１７８を収容できアンテナ１１８０も支持するセンサハウジング１１７６を支持する。
【００９７】
図３１は、定置式センサプラットフォーム１２４の一実施例を表す定型図面である。尚、定置式センサプラットフォーム１２４は、ベース１１９６に保持されたステム１１９４に支持されるセンサハウジング１１９２内に設けられたセンサ１１９０を備える。
【００９８】
本発明は、例示的な実施例と関連させて本願明細書において記載されているが、多くの代替物、修正および変形例が当業者にとって明らかであることは明白である。したがって、上に記載の本発明の実施例は、本発明の要旨と範囲を例示することを意図し、限定するものではない。具体的には、本発明は、添付のクレームまたはその均等物の要旨および範囲において、ここに記載された例示的実施例の全ての代替物、修正、および変形例を包括することを意図している。
【図面の簡単な説明】
【図１】本発明の一実施例における自律性マルチプラットフォームロボットシステムを表すブロック図である。
【図２】本発明の他の実施例における自律性マルチプラットフォームロボットシステムを表すブロック図である。
【図３】ロボットシステムのナビゲータプラットフォームの実施例を表すブロック図である。
【図４】ロボットシステムのナビゲータプラットフォームの他の実施例を表すブロック図である。
【図５】ロボットシステムのナビゲータプラットフォームのさらに別の実施例を表すブロック図である。
【図６】ナビゲータプラットフォームと機能ロボットプラットフォームとの間の通信関係を示すブロック図である。
【図７】ナビゲータプラットフォームと機能ロボットプラットフォームとの間の通信関係の他の実施例を示すブロック図である。
【図８】ナビゲータプラットフォームと定地式センサプラットフォームとの間の通信関係の実施例を示すブロック図である。
【図９】ナビゲータプラットフォームと機能ロボットプラットフォームとの間の通信関係のさらに他の実施例を示すブロック図である。
【図１０】ナビゲータプラットフォームと機能ロボットプラットフォームとの間の通信関係のさらに他の実施例を示すブロック図である。
【図１１】ナビゲータプラットフォームと定地式センサプラットフォームとの間の通信関係の他の実施例を示すブロック図である。
【図１２】機能ロボットプラットホームの実施例のブロック図である。
【図１３】機能ロボットプラットホームの他の実施例のブロック図である。
【図１４】定地式センサプラットホームの実施例のブロック図である。
【図１５】障害物を避けるように機能ロボットプラットフォームを操縦する場合のナビゲータプラットフォームの動作実施例を示す説明図である。
【図１６】機能ロボットプラットフォームに向かって、自身を操縦する場合のナビゲータプラットフォームの動作実施例を示すブロック図である。
【図１７】ナビゲータプラットフォームが、環境の動的マップ内で自身を定位する場合に使用する方法実施例を示すフローチャートである。
【図１８】ナビゲータプラットフォームが、前プランニングを行う場合に使用する方法実施例を示すフローチャートである。
【図１９】ナビゲータプラットフォームが、タスク実行中の機能ロボットプラットフォームを制御し追跡する場合に使用する方法実施例を示すフローチャートである。
【図２０】本発明の一実施例による自律性マルチプラットフォームロボットシステムを実施する方法の一つを示すフローチャートである。
【図２１】本発明の他の実施例による自律性マルチプラットフォームロボットシステムを実施する他の方法を示すフローチャートである。
【図２２】ナビゲータプラットフォームが、環境の動的マップの範囲内で、自身を定位する他の方法実施例を示すフローチャートである。
【図２３】本発明の一実施例による自律性マルチプラットフォームロボットシステムを実施するための方法を示すフローチャートである。
【図２４】本発明の他の実施例による自律性マルチプラットフォームロボットシステムを実施するための方法を示すフローチャートである。
【図２５】本発明のさらに他の実施例による自律性マルチプラットフォームロボットシステムを実施するための方法を示すフローチャートである。
【図２６】ロボットシステムの移動式ナビゲータプラットフォームの一実施例を表す定型の斜視図である。
【図２７】ロボットシステムの定置式ナビゲータプラットフォームの一実施例を表す定型の斜視図である。
【図２８】ロボットシステムの機能ロボットプラットフォームの一実施例を表す定型の斜視図である。
【図２９】ロボットシステムの機能ロボットプラットフォームの別の実施例を表す定型の斜視図である。
【図３０】ロボットシステムの機能ロボットプラットフォームのさらに別の実施例を表す定型の斜視図である。
【図３１】ロボットシステムの定置式センサプラットフォームの一実施例を表す定型の斜視図である。
【図１】
2004133882.tif 000003
【図２】
2004133882.tif 000004
【図３】
2004133882.tif 000005
【図４】
2004133882.tif 000006
【図５】
2004133882.tif 000007
【図６】
2004133882.tif 000008
【図７】
2004133882.tif 000009
【図８】
2004133882.tif 000010
【図９】
2004133882.tif 000011
【図１０】
2004133882.tif 000012
【図１１】
2004133882.tif 000013
【図１２】
2004133882.tif 000014
【図１３】
2004133882.tif 000015
【図１４】
2004133882.tif 000016
【図１５】
2004133882.tif 000017
【図１６】
2004133882.tif 000018
【図１７】
2004133882.tif 000019
【図１８】
2004133882.tif 000020
【図１９】
2004133882.tif 000021
【図２０】
2004133882.tif 000022
【図２１】
2004133882.tif 000023
【図２２】
2004133882.tif 000024
【図２３】
2004133882.tif 000025
【図２４】
2004133882.tif 000026
【図２５】
2004133882.tif 000027
【図２６】
2004133882.tif 000028
【図２７】
2004133882.tif 000029
【図２８】
2004133882.tif 000030
【図２９】
2004133882.tif 000031
【図３０】
2004133882.tif 000032
【図３１】
2004133882.tif 000033
【外国語明細書】
2004133882.tif 000034
2004133882.tif 000035
2004133882.tif 000036
2004133882.tif 000037
2004133882.tif 000038
2004133882.tif 000039
2004133882.tif 000040
2004133882.tif 000041
2004133882.tif 000042
2004133882.tif 000043
2004133882.tif 000044
2004133882.tif 000045
2004133882.tif 000046
2004133882.tif 000047
2004133882.tif 000048
2004133882.tif 000049
2004133882.tif 000050
2004133882.tif 000051
2004133882.tif 000052
2004133882.tif 000053
2004133882.tif 000054
2004133882.tif 000055
2004133882.tif 000056
2004133882.tif 000057
2004133882.tif 000058
2004133882.tif 000059
2004133882.tif 000060
2004133882.tif 000061
2004133882.tif 000062
2004133882.tif 000063
2004133882.tif 000064
2004133882.tif 000065
2004133882.tif 000066
2004133882.tif 000067
2004133882.tif 000068
2004133882.tif 000069
2004133882.tif 000070
2004133882.tif 000071
2004133882.tif 000072
2004133882.tif 000073
2004133882.tif 000074
2004133882.tif 000075
2004133882.tif 000076
2004133882.tif 000077
2004133882.tif 000078
2004133882.tif 000079
2004133882.tif 000080
2004133882.tif 000081
2004133882.tif 000082
2004133882.tif 000083
2004133882.tif 000084
2004133882.tif 000085
2004133882.tif 000086
2004133882.tif 000087
2004133882.tif 000088
2004133882.tif 000089
2004133882.tif 000090
2004133882.tif 000091
2004133882.tif 000092
2004133882.tif 000093
2004133882.tif 000094
2004133882.tif 000095
2004133882.tif 000096
2004133882.tif 000097
2004133882.tif 000098
2004133882.tif 000099
2004133882.tif 000100
2004133882.tif 000101