JP2020532018A - 自律移動ロボットの移動計画 - Google Patents

自律移動ロボットの移動計画 Download PDF

Info

Publication number
JP2020532018A
JP2020532018A JP2020512007A JP2020512007A JP2020532018A JP 2020532018 A JP2020532018 A JP 2020532018A JP 2020512007 A JP2020512007 A JP 2020512007A JP 2020512007 A JP2020512007 A JP 2020512007A JP 2020532018 A JP2020532018 A JP 2020532018A
Authority
JP
Japan
Prior art keywords
robot
contour
obstacle
map
virtual
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
JP2020512007A
Other languages
English (en)
Other versions
JP2020532018A5 (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.)
Robart GmbH
Original Assignee
Robart GmbH
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 Robart GmbH filed Critical Robart GmbH
Publication of JP2020532018A publication Critical patent/JP2020532018A/ja
Publication of JP2020532018A5 publication Critical patent/JP2020532018A5/ja
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0268Control of position or course in two dimensions specially adapted to land vehicles using internal positioning means
    • G05D1/0274Control of position or course in two dimensions specially adapted to land vehicles using internal positioning means using mapping information stored in a memory device
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1656Programme controls characterised by programming, planning systems for manipulators
    • B25J9/1664Programme controls characterised by programming, planning systems for manipulators characterised by motion, path, trajectory planning
    • B25J9/1666Avoiding collision or forbidden zones
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0231Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means
    • G05D1/0234Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means using optical markers or beacons

Landscapes

  • Engineering & Computer Science (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Physics & Mathematics (AREA)
  • Aviation & Aerospace Engineering (AREA)
  • Remote Sensing (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Robotics (AREA)
  • Mechanical Engineering (AREA)
  • Electromagnetism (AREA)
  • Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)

Abstract

【課題】自律移動ロボットの移動のための単純で堅牢な計画を可能にする。【解決手段】第1の輪郭追従モード及び第2の輪郭追従モードで動作可能な自律移動ロボットを制御する方法であって、輪郭追従モードの各々では、ロボットが輪郭に沿って移動する間に、ロボットが輪郭への距離を実質的に一定に維持し、ロボットが輪郭を第1の走行方向に追従する第1の輪郭追従モードを開始するステップと、第1の輪郭追従モードにおいて輪郭の追従を継続することが衝突を伴わずにできない袋小路状態を検出するステップと、ロボットが輪郭を第2の走行方向に追従する第2の輪郭追従モードを開始するステップと、基準を決定し評価するステップであって、前記基準が満たされている場合に、第2の輪郭追従モードを終了し、ロボットが第2の輪郭追従モードで動作している間、前記基準を継続的に評価するステップと、を有する。【選択図】図5

Description

以下の説明は、自律移動ロボットの分野、特に一般的な形態の自律移動ロボットの運動の計画および実行に関する。
近年、自律移動ロボット、特にサービスロボットは、たとえば住居の清掃や監視など、家庭部門でますます使用されている。ロボットは、多くの場合、丸い形状と、垂直軸を中心に回転できる駆動ユニットを備えている。これにより、ロボットの回転の自由度が隣接する障害物によって制限されることはないため、ロボットの経路計画(軌道計画)と制御が大幅に簡素化される。
ロボットの機能には特別な要求があるため、丸い(円板状の)形状から逸脱することが望ましい場合がある。たとえば、ロボットの丸い形状を片側で平らにすることができ、これにより、ロボットは壁に沿って平らな側を平行にして移動できる。この平らな側に清掃ユニット(ブラシなど)を配置して、これを、壁にできるだけ近くなるように案内できる。他の理由でも、ロボットの丸い形状から逸脱することが必要または望ましい場合がある。
ロボットの基本形状が丸くない構成では、その駆動ユニットが原理的には可能であるとしても、ロボットはあらゆる状況でその位置で回転にすることができなくなる可能性がある。上述の例のように、ロボットの平らな側面が(壁などの)障害物に非常に近い場合、ロボットは障害物と衝突することなく垂直軸を中心に回転できなくなる。ロボットの動きの可能性を計画および評価する場合、ロボット適用領域内の障害物とロボットの位置に加えて、ロボットの方向も考慮する必要がある。この問題に対処する1つのアプローチは、事前定義された状況に標準的な移動パターンを使用することである。ただし、このアプローチには柔軟性がなく、エラーが発生しやすい傾向がある。別のアプローチは、開始点から目標点に到達するための、ロボットの動きの正確な計画、つまり位置と向き(一緒にして姿勢と呼ぶ)の変更である。ただし、これは丸い形状のロボットよりもはるかに複雑であり、実装中のエラーの影響を受けやすくなり、必要な計算のためのリソース消費(計算時間、プロセッサパフォーマンス、メモリ需要)が増加する。
J. Fasola et al.,Fast Goal Navigation with Obstacle Avoidance using a Dynamic Local Visual Mode, in: Proc. VII. Simposio Brasileiro de Automacao Inteligente, Sao Luis, Sept. 2005
本発明者らは、任意の形状の自律移動ロボットの移動のための単純であるが堅牢な計画を可能にする課題を自らに設定した。
この課題は、請求項1、16、28、45及び50に記載の方法によって解決される。様々な構成例およびさらなる展開は、従属請求項の主題である。
第1の輪郭追従モード及び少なくとも1つの第2の輪郭追従モードで動作可能な自律移動ロボットを制御する方法が記載される。これら輪郭追従モードの各々では、ロボットが輪郭に沿って移動する間に、前記ロボットが前記輪郭への距離を実質的に一定に維持する。前記方法は、前記ロボットが前記輪郭を前記第1の走行方向に追従する第1の輪郭追従モードを開始するステップと、前記第1の輪郭追従モードにおいて前記輪郭の追従を継続することが衝突を伴わずにできない袋小路状態を検出するステップと、前記ロボットが前記輪郭を前記第2の走行方向に追従する第2の輪郭追従モードを開始するステップと、基準を決定し評価するステップであって、前記基準が満たされている場合に、第2の輪郭追従モードを終了し、前記ロボットが前記第2の輪郭追従モードで動作している間、基準を継続的に評価するステップと、を有する。
さらに、輪郭追従モードで自律移動ロボットを制御する方法が記載される。前記輪郭追従モードにおいて、前記ロボットが前記輪郭を実質的に輪郭追従距離で追従し、前記輪郭追従モードにおいて前記方法は、少なくとも1つの事前定義可能な基準に基づいて、少なくとも3つの異なる基本的な動作を評価するステップと、この評価に基づいて前記少なくとも3つの基本的な動作のうちの1つを実行するステップと、を有し、前記少なくとも3つの基本的な動作のうちの第1の基本的な動作は、前記ロボットの純粋な並進運動であり、前記少なくとも3つの基本的な動作のうちの第2の基本的な動作は、前記輪郭に向かう前記ロボットの回転を含み、前記少なくとも3つの基本的な動作のうちの第3の基本的な動作は、前記輪郭から離れるロボットの回転を含む。
さらに、ロボット使用領域の第1の地図を有する自律移動ロボットを制御する方法が記載される。前記第1の地図は、少なくとも障害物の位置に関するデータを含る。前記方法は、前記ロボットの簡略化された仮想形状を想定して前記第1の地図の目標点への経路を計画するステップと、計画された前記経路に沿ってロボットを移動させるステップと、計画された前記経路に沿う移動の間に、前記ロボットのセンサユニットによって、前記ロボットの環境の障害物を検出するステップと、前記ロボットの実際の形状を考慮して、計画した前記経路が障害物により衝突せずに走行できないと決定するステップと、前記ロボットの前記実際の形状を考慮して、前記ロボットの移動を継続するステップと、を有する。
さらに、ロボット使用領域の地図を用いて自律移動ロボットを制御する方法が記載される。前記地図には、少なくとも、センサユニットによって検出された現実の障害物の位置に関する情報と、仮想的な障害物に関する情報とが含まれている。前記方法は、前記ロボットの実際の形状を考慮して、現実の障害物の近傍で前記現実の障害物との衝突を回避するように前記ロボットを制御するステップと、前記ロボットの簡略化された仮想形状を考慮して、仮想的な障害物の近傍で前記仮想的な障害物との仮想的な衝突を回避するように前記ロボットを制御するステップと、を有する。
さらに、輪郭追従モードで自律移動ロボットを制御する方法が記載される。前記輪郭追従モードにおいて、前記ロボットが前記輪郭を実質的に輪郭追従距離で追従する。前記ロボットの地図には、少なくとも、センサユニットによって検出された現実の障害物の位置に関する情報と、仮想的な障害物に関する情報とが含まれている。前記ロボットは前記地図内の位置を連続的に決定する。前記輪郭追従モードにおいて前記ロボットは、前記輪郭に沿って移動する。前記輪郭は、現実の障害物の形状と仮想障害物の仮想境界の形状によって与えられる。
任意の形状の自律移動ロボットの移動のための単純であるが堅牢な計画を可能にする。
ロボットの平らな側面が、例えば壁などの障害物に沿って非常に接近して動くことができるように、それぞれの場合に片側が平らにされる自律移動ロボットの2つの例を示す図である。 ブロック図により自律移動ロボットの構成を例示的に示す図である。 自律移動ロボットのハウジング形状のさまざまなバリエーションを示し、ロボットが動く可能性に対するハウジング形状の影響を示す図である。 袋小路状況で自律移動ロボットを制御する方法を示すためのフローチャートである。 図5(a)から図5(d)に示すように、袋小路状況で自律移動ロボットを制御するための例示的な手順を示す図である。 袋小路状況で自律移動ロボットを制御する方法を例示的に示す図である。 より複雑な袋小路状況で自律移動ロボットを制御する方法の別のより複雑な例を示す図である。 例として、様々な基本的な動作を示す図である。 基本的な動作の選択の簡単な例を示す図である。 環境に基づいた基本的な動作を示す図である。 仮想的な障害物による輪郭追従走行を示す図である。 丸型ロボットの障害物間の経路計画を示す図であり、ロボットの半径に拡大した障害物間の点の経路計画に相当する。 コストに基づいた経路計画の一例を示す図である。
様々な例示的な実施形態が、図を用いて以下により詳細に説明される。図は必ずしも縮尺通りではなく、本発明は示された態様に限定されない。むしろ、根本的な原則を提示することに重きが置かれている。
ロボット100の機能に対する特別な要求により、ロボットの実質的に丸い板状のハウジング形状から逸脱することが望ましいか、または必要である場合がある。図1は、このような2つの例を示している。図1(a)は、床面を掃除するための自律移動ロボット100(掃除ロボット)を示している。ロボットハウジングの片側は平らになっており、ロボット100は、平らな側を壁Wに平行に整列することが可能である。図1(b)は、テーブルTまたは作業面の縁と同一平面上で移動できる台を備えた物体の輸送のための自律移動ロボット100(サービスロボット)のさらなる例を示している。この例では、このタイプのロボットが、たとえ駆動ユニットが原理的に可能であるとしても、あらゆる状況でその場で垂直軸の周りに回転できないことを明らかにしている。図1に示す状況では、ロボット100は障害物(壁W、テーブルT)と衝突することなく回転することはできない。この事実は、ロボット100の移動計画に影響を与える。なぜならば、ロボット使用領域の開始点から目的地までの軌道を計画するときにロボットの向きも考慮しなければならないからである。
自律移動ロボットの移動計画を詳述する前に、まず自律移動ロボットの構造について簡単に説明する。図2はブロック図を使用して自律移動ロボット100の様々なユニット(モジュール)を例示的に示している。ユニット(モジュール)は、ロボットを制御するための独立したアセンブリまたはソフトウェアの一部である。ユニットは複数のサブユニットを持つことができる。ロボット100の挙動に関係するソフトウェアは、ロボット100の制御ユニット150により実行することができる。図示の例では、制御ユニット150は、メモリ156に保存されているソフトウェア命令を実行するように構成されたプロセッサ155を含む。制御ユニット150のいくつかの機能は、少なくとも部分的に外部コンピュータの助けを借りて実行することもできる。これは、制御ユニット150が必要とする計算能力を、例えばホームネットワークまたはインターネット(クラウド)を介してアクセス可能な外部コンピュータに少なくとも部分的に移すことができることを意味する。
自律移動ロボット100は、例えば電動機、歯車および車輪を有することができる駆動ユニット170を備え、それにより、ロボット100は、少なくとも理論的には、適用範囲内の任意の地点に移動することができる。駆動ユニット170は、制御ユニット150から受信したコマンドまたは信号をロボット100の動きに変換するように構成されている。
自律移動ロボット100は、ヒューマンマシンインターフェイス(HMI)200および/または他の外部デバイス300への通信接続145を確立するために、通信ユニット140をさらに備える。通信接続145は、例えば、直接無線接続(例えば、Bluetooth(登録商標))、ローカル無線ネットワーク接続(例えば、WLANまたはZigBee(登録商標))またはインターネット接続(例えば、クラウドサービス)である。ヒューマンマシンインターフェイス200は、自律型移動ロボット100に関する情報(例えば、バッテリ状態、現在の作業指示、清掃地図などの地図情報)を、例えば視覚的または音響的な形式でユーザに出力することができ、自律的移動ロボット100の作業指示に関するユーザーコマンドを受け取ることができる。HMI200は、例えば、タブレットPC、スマートフォン、スマートウォッチおよびその他のウェアラブル、コンピュータ、スマートテレビ、またはヘッドマウントディスプレイなどである。HMI200は、追加的または代替的に、ロボットに直接統合することができ、それにより、例えば、ボタン、ジェスチャー、および/または音声入力および出力を使用してロボット100を操作することができる。
外部デバイス300は、例えば、計算および/またはデータがアウトソーシングされるコンピュータおよびサーバ、追加情報を提供する外部センサ、または自律移動ロボット100が協働、または情報を交換できる他の家電製品(例えば他の自律移動ロボット)である。
自律移動ロボット100は、床面を処理するための、特に床面を清掃するための処理ユニット(例えば、ブラシ、吸引装置)または物体を把持および輸送するための把持アームなどの作業ユニット160を有することができる。
テレプレゼンスロボットや監視ロボットなど、場合によっては、目的のタスクを実行するために異なる構造ユニットが使用され、作業ユニット160は必要ない。
したがって、テレプレゼンスロボットは、HMIに結合される通信ユニット140を有することができ、HMIは、例えば、マルチメディアユニットを装備することができ、マルチメディアユニットは、マイク、カメラ、スクリーンが含まれており、遠く離れた場所にいる数人の人々とのコミュニケーションを可能にする。監視ロボットは、検査走行で異常なイベント(例えば、火事、照明、許可されていない人など)を検出し、これを、例えば、チェックポイントに通知する。この場合、作業ユニット160の替わりに、ロボット使用領域を監視するためのセンサを備えた監視ユニットが設けられる。
自律移動ロボット100は、様々なセンサ、例えば、その使用領域におけるロボットの環境に関する情報(使用領域内の障害物またはその他のランドマークの位置と範囲など)を取得するための1つ以上のセンサを備えたセンサユニット120を備える。環境に関する情報を取得するためのセンサは、ロボットの環境にある物体(例えば、壁または他の障害物など)までの距離を測定するためのセンサであり、このセンサは、例えば、三角測量、又は、送出された信号の通過時間測定により距離を測定できる光学および/または音響センサ(三角測量センサ、3Dカメラ、レーザスキャナ、超音波センサなど)である。また、代替的または追加的に、カメラを使用して周囲の情報を収集できる。特に2つ以上の位置からオブジェクトを観察する際に、物体の位置と範囲も決定できる。
さらに、ロボットには、障害物との(ほとんどは意図しない)接触(または衝突)を検出するセンサを搭載できる。これは、(たとえば、衝突の際のロボットの速度変化を検出する)加速度センサ、接触スイッチ、静電容量センサ、またはその他の触覚センサまたはタッチセンサを使用して実現できる。さらに、ロボットは、床のエッジ、たとえば階段を検出するための床センサを有することができる。自律移動ロボットの領域におけるその他の一般的なセンサは、ロボットの速度や移動距離を決定するためのセンサであり、これらのセンサは、例えば、ロボットの位置と動きの変化を判断するための距離計または慣性センサ(加速度センサ、回転速度センサ)、および車輪と地面の間の接触を検出する車輪接触スイッチである。
自律移動ロボット100は、例えば、そのエネルギ貯蔵手段(バッテリ)を充電できる基地局110に割り当てることができる。ロボット100は、タスクの完了後にこの基地局110に戻ることができる。ロボットが処理するタスクをもう持っていない場合、新しい作業を基地局110で待つことができる。
制御ユニット150は、ロボットがその使用領域で独立して動き、タスクを実行するために必要なすべての機能を提供するように構成することができる。このためのソフトウェアを実行するために、制御ユニット150は、例えば、プロセッサ155およびメモリモジュール156を含む。制御ユニット150は、センサユニット120および通信ユニット140から受信した情報に基づいて、作業ユニット160および駆動ユニット170の制御コマンド(例えば、制御信号)を生成することができる。既に述べたように、駆動ユニット170は、これらの制御信号または制御コマンドをロボットの動きに変換することができる。メモリ156に含まれるソフトウェアは、モジュール形式で構成されていても良い。例えば、ナビゲーションモジュール152は、ロボット使用領域の地図を自動的に作成し、ロボット100の動きを計画する機能を提供する。制御ソフトウェアモジュール151は、汎用的(グローバル)な制御機能を提供して、個々のモジュール間のインターフェイスを形成できる。
ロボットが自律的にタスクを実行できるようにするために、制御ユニット150は、上記のナビゲーションモジュール152によって提供される、その使用領域でロボットをナビゲートする機能を含むことができる。これらの機能自体は既知であり、特に、次のいずれかを含めることができる。
・センサユニット120を使用して環境に関する情報を収集することによる、例えば、SLAM法(Simultaneous Localization and Mapping)を使用した(必ずしも使用しなくても良い)(電子)地図の作成。
・地図に割り当てられた、1つまたは複数のロボット使用領域の1つまたは複数の地図の管理。
・センサユニット120のセンサで検知された周囲の情報に基づいて、地図内のロボットの位置と向き(姿勢)の決定。
・ロボットの現在の姿勢(開始点)から到着点までの地図に基づいた経路計画(軌道計画)。
・ロボット(100)が1つ以上の障害物(壁など)の輪郭に沿って、この輪郭から実質的に一定の距離dで移動する輪郭追従モード。
制御ユニット150は、ナビゲーションモジュール152を使用し、センサユニット120からの情報に基づいて、例えば、ロボットが動作している間にロボットの環境が変化したとき(障害物が移動した、ドアが開いたなど)、ロボット使用領域の地図を連続的に更新することができる。次いで、ロボットの短期および/または長期の移動計画のために、制御ユニット150により現在の地図を使用することができる。計画範囲として、ロボットの移動が実際に実行される前に、ロボットの(目標とする)移動として制御ユニット150が事前に計算する経路を表示する。ここで説明される例示的な実施形態は、とりわけ、特定の状況、例えば、特定の操作が障害物によってブロックされているため、実行できない状況における移動計画のための様々なアプローチおよび戦略に関する。
一般に、ロボット100で使用できる(電子)地図は、ロボットの使用領域とこの使用領域でのロボットに関連する環境に関する位置関連情報を格納するための地図データ(例えば、データベースなど)のコレクションである。この際、「位置関連」とは、保存された情報が地図上の位置または姿勢に割り当てられることを意味する。このように、地図は地図データを含む多数のデータレコードを表し、地図データには、任意の位置関連情報を含めることができる。ここでは、位置関連情報をさまざまな詳細の程度及び抽象の程度で保存し、この程度は、特定の機能に適合させることができる。特に、個々の情報を冗長に保存できる。多くの場合、同じ領域に関連しているが異なる形式(データ構造)で保存されている複数の地図の編集は、「1つの地図」とも呼ばれる。
非円形ロボット-導入:図3は、それぞれ、下から見た図において、それ自体知られている自律移動ロボット100のハウジング形状の様々な例を示している。示されている例では、ロボット100は、それぞれ、例えば床面を処理するための作業ユニット160を有し、この作業ユニット160は、例えば、ブラシ、吸引ユニットおよび/または拭き取りユニットである。
さらに、ロボット100はそれぞれ、独立して駆動される2つの車輪170R、170Lを備えた駆動ユニット170を有する。一般に、移動ロボットは、矢印で示されている移動の優先方向(一般性を制限することなく前方方向として定義)を持つことができる。この好ましい移動方向または前方方向は、例えば、ハウジング内またはハウジング上での作業ユニットの配置によってだけでなく、センサー(例えばセンサユニット120)の配置によっても事前決定することができる。例えば、汚れを集める清掃ユニット(例えば吸引装置)を駆動ユニット170の前に配置することができ、その結果、車輪に到達する汚れを少なくすることができる。さらに、例えば、洗浄液を塗布し、または床面を研磨する洗浄ユニットを駆動ユニット170の後ろに配置して、車輪が洗浄された床表面に汚れを残さないようにすることができる。例えば、センサは、主にロボットの移動の好ましい方向(つまり、ロボット100の前方)の周囲を優先的に検出するように配置される。しかしながら、ロボット100は、(ある特定の状況下では)好ましい移動方向の反対方向(すなわち、後方)に移動することもできる。
2つの駆動輪170R、170Lが反対方向に回転する場合、ロボットは、その位置で、「x」でマークされた中心点(運動中心、回転中心)の位置で、ロボットの垂直軸の周りに回転し、これにより純粋な回転運動(すなわち、並進運動成分を含まない)を実行する。
図3(a)は、車輪170Rおよび170Lが対称軸の1つに沿って配置された円形ロボットを示している。この構成のロボットは、ロボットがその場で中心の周りを回転できるという利点がある。障害物Hの位置に関わりなく、この回転が妨げられることはない。そのため、丸い形状のロボットは、垂直軸を中心に適切に回転した後、常に優先的な方向(つまり前方)に移動できる。
図3(b)は、D字形状のロボットを示している。D字形状には、ロボットの幅全体にわたって延びる作業ユニット160を使用できるという利点がある。さらに、作業ユニット160は、特に、障害物H(壁など)の近くに移動することができる。ただし、ここに示された姿勢では、ロボットは衝突せずに回転できない。すなわち、垂直軸の周りを回転する前に、最初に(移動の優先方向に対して)少し逆方向に移動する必要がある。
図3(c)は、車輪170Rおよび170Lがロボット形状の対称軸の1つに沿って配置されていない円形状のロボットを示す図である。この構成では、作業ユニット160をロボットの幅全体にわたって延びるように設けることができるという利点がある。しかしながら、ロボット100の中心点「x」(運動中心)は、円形状のハウジング基本領域の幾何学的中心点ともはや一致しないため、回転の際に障害物Hとの衝突を引き起こす可能性がある。図3(c)の場合のような衝突を回避するために、ロボットはまず少なくとも少し後退しなければならない。この例では、ロボットは単純に純粋な回転運動を行うことはできない。運動中心「x」の周りの回転には、幾何学中心の動きに並進運動成分(特に運動中心の周りの円形軌道上の運動)を含み、場合によっては障害物によってブロックされる可能性がある。
図3(d)は、ロボット100の涙滴形状のハウジングを示しており、ハウジングの基本領域は1つの顕著な角を有するが、それ以外は丸くなっている。これは、作業ユニット160をロボットのその角に配置することができ、したがって、特に作業ユニット160を障害物に(例えば、部屋の隅に)近づけることができるという利点を有する。ロボットの動きは、D字形状の場合よりも制限が少なくなる。しかし、ここでも、垂直軸の周りを回るのが妨げられずに可能となる前に、ロボットは少なくとも少し後退しなければならない。
図3(e)は、長く延びた本質的にD字形状のロボットを示している。これには、ロボットの幅全体に広がり得る作業ユニット160のためのより多くのスペースを有するという利点がある。また、作業ユニット160を、壁などの障害物Hに特に近づけることができる。ただし、この位置では、ロボットはもはや回転することができず、最初に少なくとも少し後退する必要がある。
図3(b)から図3(e)に示すように、ロボットが逆方向(優先移動方向とは反対方向)に移動することによってのみ走行できる状況を、以下「袋小路状況」と称する。なお、図3に示されるロボットは単なる例である。もちろん、任意の他の形状も可能である。特に、形状はロボットの高さによっても変化する(図1(b)を参照)。駆動ユニット170の他の変形(チェーン駆動、脚など)も知られており、可能である。
輪郭追従走行:自律移動ロボット100の経路(軌道)のローカルな計画への簡単なアプローチは、ロボットが1つ以上の障害物の輪郭を、本質的に一定の輪郭追従距離dで単純に追従すること(輪郭追従走行)である。ロボットが実質的に一定の距離で障害物の輪郭に沿う方向に移動する動作モードを、以下では輪郭追従モードまたは障害物追従モードと称する。輪郭追従モードでロボットが実行する動作を、輪郭追従走行と称し、輪郭までの距離は輪郭追従距離と称する。輪郭追従モードの使用自体は知られており、たとえば、障害物を回避するために使用される(たとえば、J. Fasolaet al., Fast Goal Navigation with Obstacle Avoidance using a Dynamic LocalVisual Mode, in: Proc. VII. Simpsoio Brasileiro de Automacao Inteligente, Sao Luis, Sept. 2005(非特許文献1))。輪郭追従を実現する方法は、とりわけ、行動ベースロボット工学または反応性ロボット工学の概念に基づいており、実際のセンサ測定(特に、ロボットに対する障害物の位置および/または障害物からのロボットの距離に関する)を、駆動ユニットの制御コマンドに直接変換することが可能である。
輪郭は、大きな障害物である壁の形状によって与えられるが、いくつかの小さな狭い間隔の障害物によっても与えられる。この場合に、階段などのロボットが転倒し得るエッジ(立ち下がりエッジ)もロボットが追従できる輪郭を持つ障害物として考慮される。さらに、輪郭を形成する障害物は、ロボットが対応するセンサで検出できるマーキング(たとえば、磁気テープ、カレントループ、またはビーコン送信機)であり得る。ロボットが自動的に通過してはならない境界(たとえば、磁気テープまたはカレントループの経路、送信されたガイドビームの経路)は、これらのセンサーデータから導き出すことができる。この境界は、ロボットが追従することができる輪郭としても使用できる。さらに、地図データに仮想的な障害物を記録することができる。この障害物は、ロボットが単独で走行することが許可されていない領域をマークする(これらは制限エリア、「立ち入り禁止エリア」とも称される)。追加または代替として、仮想的な障害物および特にその仮想的な輪郭を一時的に使用して、処理が完了するまで処理用に提供された領域にロボットを「閉じ込め」または誘導することができる。このような仮想的な障害物の仮想的な輪郭は、輪郭追従モードにおいてロボットが追従できる輪郭として使用できる。
輪郭追従距離dは、ロボットの大きさとタスクに依存するが、特定の輪郭追従モードでは基本的に一定に保つことができる。距離を大きくすると、たとえば運転ミスなどによる意図しない衝突を回避しやすくなる(可能性が高くなる)。床面を処理する(特に清掃する)ロボットの場合、壁やその他の障害物の近くで処理する場合に輪郭追従モードを使用することができる。その結果、このようなロボットは障害物の非常に近くを移動して、高い表面カバレッジと、特に角とエッジの徹底的な清掃を実現できる。家庭の領域では、小型の清掃ロボットにおける典型的な値は、2.5mm〜20mmである。また、輪郭追従走行中に、ロボットの一部と追従すべき輪郭との間に直接の接触を確立し、維持する清掃ロボットもある。大型ロボットの場合、輪郭追従距離dは、比較的小型のロボットよりも大幅に大きくなり得る。
輪郭追跡走行の際にロボットを制御するために、ロボットは、ロボットの直接の環境を検出するためのセンサを備え得る(図2、センサユニット120を参照)。これらのセンサは、たとえば、障害物、特に近くの領域の追従すべき輪郭までの距離を確実に決定できる。たとえば、このようなセンサは、追従する輪郭に面するロボットの側面に配置できる。
代替または追加として、輪郭追従走行中のロボットの制御は、地図データに基づいており、ロボット位置と方向(姿勢)及び障害物を決定するためのセンサ測定値は保存され、更に処理される。地図に基づく計画により、先見的な軌道計画とロボット制御が可能になり、センサの1つでは検出できない障害物(センサの「盲点」)に関する情報も考慮される。特に、センサで検出できない情報を考慮に入れることができ、この情報は、例えば、地図に記録された仮想障害物(例えば、遮断領域)などである。この仮想障害物は、ロボットが独立して走行したり、処理したりしてはならない。ここで説明する例示的な実施形態では、例えば、ある輪郭追従モードから別の輪郭追従モードに変更する(または輪郭追従モードをキャンセルする)ために使用される基準は、地図に基づいて評価することができる。たとえば、輪郭追従モードを終了するための1つの基準は、ロボットが衝突することなく目標点に向かって回転できることである。この「ロボットが衝突することなく目標点に向かって回転することができる」という基準は、例えば、ロボットの現在の地図データに基づいて判断され得る。
ナビゲーションと地図の生成においては、通常、比較的広い検出範囲のセンサが障害物を検出するために使用され、これにより、より遠くの障害物を検出できるが、至近距離では、しばしば不適当となる。たとえば、三角測量センサを使用でき、これは、構造化された光(たとえば、レーザビームまたは扇型レーザビーム)を放射し、障害物Hによって反射された光を検出することによって、この障害物Hまでの距離を決定できる。原則として、距離が小さいほど、障害物までの距離の測定が正確になる。ただし、反射光が視野外となるため、センサで受光できなくなる最小距離がある場合がある。たとえば、放射信号(光、音)の通過時間測定を測定するセンサを使用でき、原則として、このセンサにも、障害物を検出するための最小距離がある。カメラの場合には、同様に、接近した領域では、視野と焦点が限られているため、問題が発生する可能性がある。
制限されたセンサシステムにもかかわらず、地図データを使用することで、輪郭追従するための追加のセンサを必要とせずにロボットは障害物に近づくようにナビゲートすることができる。さらに、ロボットの後部に追加のセンサを導入せずに、優先する移動方向と反対の方向(つまり、後方向)に対する制御が簡単に可能になる。
袋小路の状況の処理-逆転:図3に例示的に示すように、一般的な非円形のロボット形状では、優先的な方向(前方向)へのロボット100の移動が常に可能であるとは限らない。というのは、ロボット100の所望方向の(特に、静止した状態で中心点「x」の周りの)回転運動がロボットの環境にある障害物によりブロックされる場合があるからである。この場合、ロボットは袋小路の状況にある。床面を処理するための特定のロボットは、処理の可能な限り最大の表面カバレッジと角とエッジの効率的な清掃を達成するために、そのような状況に陥ることに注意すべきである。これは、ロボットがタスクを実行する通常の動作の際に必然的に袋小路の状態になることを意味する。
袋小路の状況を回避する簡単な方法は、ロボットが袋小路に(前進)で入った経路と同じ経路を後退することである。これは、打ち切り条件(たとえば、ロボットが静止しているときに回転できる)が満たされるまで、駆動ユニットの最後に生成された制御コマンドが逆の順序で反転の形状で再度実行されることを意味する。
袋小路の状況から解放する上述の後方移動のために制御コマンドおよび/またはロボットの移動経路(経路ポイントなど)に関する追加情報は、保存する必要があり、これによりメモリ需要が増加する。さらに、反転された制御信号は必ずしも反転された動きをもたらさない。たとえば、運動の連続的な乱れ(たとえば、駆動ユニット、特に車輪のスリップとドリフトによる)は、理論上の乱れのない運動に直接比例するとは限らず、このため後進走行の駆動の逆の制御が前の前進走行と同じ軌道につながらないことを意味する。さらに、袋小路の状況を引き起こした移動障害物がその位置を変更する状況が発生する可能性がある。この状況やその他の状況では、事前定義された運転操作(特定の距離で後退)が必ずしもロボットによる「意味のある」動作につながるとは限らない。
この問題を克服するために、地図情報に基づいてロボットを後退させる、新しい制御コマンドを生成できる。この場合に、特に、ロボットが袋小路の状況に陥る際に追従した輪郭を追従することができる。これは、袋小路を離れることができるか、離れたと判断されるまで続く。
図4は、障害物の輪郭に追従するために自律移動ロボット100を制御するための可能な手順を示している。ここで、第1の輪郭追従モードが開始され、実行される(図4、ステップ10)。これは、たとえば、輪郭に面しているロボットの側、輪郭に追従する方向、および輪郭追従距離dによって特徴付けられる。ロボットが輪郭に沿って移動している間、ロボットは、たとえば袋小路の状況にあるため、輪郭の第1の選択された方向に沿って、第1の輪郭追従モードでロボットが継続して走行できないと判断することがある(図4、ステップ11)。ロボットは、たとえば、地図上の現在の位置とそこに記録されている障害物に基づいてロボットの可能な動きを決定することにより、袋小路の状況を検出する。障害物との衝突につながるために前進または回転運動が不可能である場合、これは上述の袋小路の状況である。袋小路から抜け出すようにナビゲートするため、ロボットは、第2の輪郭追従モードで第1の方向と反対の方向で輪郭を追従する(図4、ステップ13)。この場合、基準が定義され(図4、ステップ12)、その基準が満たされると、例えば、第1の選択された方向に沿った第1の輪郭追従モードでの走行を再開するために第2の輪郭追従モードを停止する。
図5(a)から(d)は、図4に示す方法の実施例を説明するための図である。図5(a)は、壁W(または他の障害物)の輪郭に追従し、壁Wの輪郭から可能な限り一定の距離(輪郭追従距離)dを維持するロボット100を示している。ロボット100は、例えば、図5(b)に示すように、ロボット100の経路が(例えば、ロボット100の前に位置する)障害物Hによってブロックされるまでその輪郭を追従する。この場合に、障害物Hは、壁の一部(部屋の隅)などであり得る。以下では、簡単のために、輪郭は参照符号Wで示されている。この輪郭Wは、壁の輪郭および1つ又は複数の他の障害物を表すことができると理解される。例示的に輪郭Wは部屋の壁と考えることができる。
障害物Hが障害物Hから安全距離ds離れており(しか離れておらず)、ロボット100が回転できない場合、経路は遮断されているとみなされる。安全距離dsが十分に大きく選択されている場合、ロボットの回転の自由度はロボットの前の障害物によって制限されないが、特に、床面処理用のロボットの場合、床面における作業時に可能な限り高い表面カバレッジを達成するため安全距離dsはできるだけ小さく選択される(ロボットの外形寸法よりも大幅に小さくなる)。たとえば、安全距離dsは、ロボットが衝突なしで安全に回転できるように、または衝突なしでは回転できないように選択できる。多くの場合では、後者の構成となっている。安全距離dsは、たとえば、輪郭追従距離dと同じか、より小さい値(ds≦d)にすることができる。たとえば、安全距離dsを完全に省くことができる(つまり、ds=0mm)ので、ロボットは、ロボットの前の障害物Hが接触するまで輪郭Wに追従する。接触は、例えば、触覚センサ(接触に反応するセンサ)を使用して検出できる。
この位置から移動するために、ロボット制御ユニット150は、第2の輪郭追従モードに変わり、ロボット100は、定義された基準が満たされるまで、すなわち、例えば、ロボット100が障害物から離れて、衝突することなく回転でき、新しい障害物Hの輪郭を元の方向(前方)で追従できるようになるまで壁Wの輪郭を反対方向に追従する(図5(b)を参照)。第2の輪郭追従モードは、第1の輪郭追従モードとは、1つのパラメータ、つまりロボットが輪郭を追従する方向が異なる。さらに、第2の輪郭追従モードを終了して第1の輪郭追従モードに戻るか、第1の輪郭追従モードを新たに開始するための(例えば、回転がブロックされなくなったなどの)基準を設定することができる。他の輪郭追従モードは、他のパラメータ(たとえば、輪郭追従距離、追従する輪郭が存在するロボットの側面(左または右)など)が異なり得る。簡単な例では、特定の輪郭追従モードは、進行方向(前方または後方)および輪郭追従距離のパラメータによって定義される。
ここで説明する例によれば、第2の輪郭追従モードを終了するための基準は、ロボットが再び広範囲で自由に動くことができ、特に新しい障害物の輪郭に沿って第1の輪郭追従を継続できることである。これは、とりわけ、ロボットの回転の自由がもはや妨げられないことを意味する。ただし、輪郭の追従を続行できるようにするためにロボットがどこまで回転する必要があるかは、事前には分からない。これは、図5(c)および(d)に例示的に視覚化されている。
図5(c)は、ロボット100が、輪郭追従走行中にロボットの経路の中心にある障害物Hを通り過ぎて走行する場合の動作を示している。この場合、ロボット100は再び自由に旋回できるようになるまで、ロボットは壁Wの輪郭を距離dw1だけ後方に追従しなければならない。ロボットが中心点「x」の周りを回転するために必要なスペースは、円Cで表示されている。ここで、ロボット100は、輪郭Wに沿って少し後方に移動するとすぐに回転できる。ただし、ここでは、障害物Hを超えて走行するために、大きく回転することはできない。
図5(d)は、追従される輪郭Wに近い障害物Hを通り過ぎて走行するための動作を示している。この目的のために、ロボットは、再び回転できるようにするために、壁Wの輪郭を距離dw2に沿って後方に追従する必要がある。この場合に後に戻る距離dw2は、図5(c)の場合の距離dw1よりも小さい。同時に、ロボットの回転の自由度は、回転円C内にある2番目の障害物H´によってさらに制限される。ただし、この制限にもかかわらず、ロボットは2つの障害物H、H´の間を走行して、第1の輪郭追従モードを続行できる。
図5(c)および図5(d)に示す例から、ロボットが回転できるかどうか、およびどれだけ回転できるかという事実は、第2の輪郭移動を終了するための有意義な基準ではないことがわかる。これは、特に第1の輪郭追従走行が継続される場合に価値がある。
第2の輪郭追従モードを終了でき、(第1の輪郭追従モードで)前の輪郭追従走行を有意義に継続できるかどうかの(ロボットによる)評価のあり得る基準は、たとえば、成功した回転の後にロボットが直線で(つまり、第1の輪郭追従モードの走行方向に)前進できることである。これは、図5(c)および図5(d)において、ロボットが長さlを直線で動くことができる通行Pによって示されている。長さlは事前に設定される値であるか、回転中に戻される角度または第2の輪郭追従走行中に戻る距離dw1またはdw2に少なくとも部分的に基づいて決定され得る。例えば、長さlは、ロボット100の前部輪郭が回転円Cから出るように選択することができる。長さlは、回転円Cから出るのに必要な長さより短く選択することもできる。すなわち、この場合、ロボットは障害物により近づいて走行することができる。ただし、これにより、第1の輪郭追従モードに戻った後、これを再度中断する必要があり、このため一連の前進と後退の動きにつながる可能性がある。第2の輪郭追従モードを終了すべきかどうかに関する基準は、特に地図に基づいて評価され得る。この際、少なくともロボット100の局所環境においては、地図は十分に正確で最新であると想定される。
いくつかの実施形態では、第2の輪郭追従モードを終了するための基準は、直進運動の可能であることであり得る。たとえば、この基準は、ロボットが第2の輪郭追従モードで後方に移動した距離に、さらに所定の距離(たとえば、距離d)を加えた距離だけ、所定の方向に前進できなければならないというものであり得る。この所定の方向にそれ自体を位置合わせできるようにするために、ロボットは通常回転しなければならない。回転が可能であるか否かは、第2の輪郭追従モードを終了するための基準の明示的な一部である必要はない。たとえば、ロボットが第2の輪郭追従モード中に湾曲した輪郭に沿って(後方に)移動した場合、ロボットは追加の回転なしで対応する方向に到達できる。回転が不要なもう1つの例は、環境の動的な変化である。例えば、ユーザは、第2の輪郭追従モードを起動するもととなった障害物Hを取り除く可能性ある。その結果、ロボットの前進動作が制限されることがなくなり、回転せずに直進のみするだけで第2の輪郭追従モードを終了することができる。
追加または代替として、第2の輪郭追従モードの終了につながる基準を評価するときに、第1の輪郭追従モードの中断につながった障害物Hの位置、または有り得る回転後の別の障害物Hの位置を確認できる。したがって、ロボットの前の所定の距離に障害物がな有るべきでは無い。同時に、以前に袋小路の状況を引き起こした障害物は、第1の輪郭追従モードで、所定の輪郭追従距離dで障害物Hの輪郭に追従できように回転後にロボットに対して相対的に位置決めされる。これは特に、長さlだけ前方に移動した後、障害物の輪郭の一部がロボットからの輪郭間隔dにあることを意味する(図5(c)参照)。
図5(d)を参照して先に説明したように、第2の輪郭追従モードを終了するためにロボットが少なくとも回転できなければならない角度は、例えば1−5度の範囲と比較的小さくすることができるか、または回転の必要はない。図6(a)は、ロボットの前の障害物Hに加えて、第2の障害物H´がロボットの回転を直接制限する例を示している。そのような障害物は、例えば、それらが少なくとも部分的に回転円Cの前方領域S内にある(例えば、前方半円の内側にある)ということによって認識され得る。このような配置では、ロボットが第2の輪郭追従モードを終了して第1の輪郭追従モードを続行できるために、常に比較的大きな回転が必要である。ここでは、たとえば、検査すべき移動オプションを制限するために回転の前後でロボットの向きの間の必要がある大きな最小角度を基準として設定することが有利である。この最小角度は、標準値(45°など)にすることも、ロボットの形状や障害物の形状とサイズH´に応じて選択することもできる。
したがって、第2の輪郭追従モードを終了するための基準の設定は、ロボットの近くの(例えば、ロボットの地図に格納された)障害物の位置に依存する可能性がある。
特に、障害物の少なくとも1つの点が特にロボットの隣の所定の領域Sにある場合、第1の基準を定義して使用することができ、そうでなければ第2の基準を使用することができる。これら両方の基準によれば、例えば、輪郭から離れた位置へロボットの回転が可能であるべきであり、回転の角度は、少なくとも第1の基準では、所定の最小角度よりも大きくすることができる。両方の基準に最小角度が含まれている場合、第1の基準による最小角度は、第2の基準による最小角度よりも大きくなる。
図6(b)は、第2の障害物H´が図5d)と同じ位置にある例を示している。図5(d)に示す例によれば、第1の障害物Hは輪郭Wに近いので、ロボットは小さな回転の後に2つの障害物H、H´の間を通り抜けることができる。図6(b)では、第1の障害物Hは、2つの障害物H、H´が互いに近すぎるため、そのような走行動作が不可能である。したがって、図6(a)に示す例のように、第2の輪郭追従モードを終了するための、最小角度が大きい基準を定義して使用することができる。
そのような最小角度が必要であるかどうかは、例えば、第1の障害物Hの位置、形状および大きさに基づいて決定することができる。あるいは、(図5(d)に示す例のように)最小角度を設定せずに済ますことも可能である。最小角度は、例えば、第2の輪郭追従モードで領域Sに障害物H´があり、これがロボットの回転を阻止すると判定された場合に後から設定することができる。代替的に、又は追加的に、第2の輪郭追従モードでロボットからの距離のために障害物Hがロボットの回転をブロックしなくなったが、障害物H´のために第2の輪郭追従モードを終了する基準を満たさないと判断された場合に、大きな最小角度を後で設定できる。この基準は、第2の輪郭追従モードで走行中に更新できる。
2番目の輪郭追従モードを終了する基準には、ロボットの環境の領域に関する情報(特に地図データ)に基づいて可能な動きを評価することに加えて、この計画された動きの衝突のない実行が含まれる。つまり、第2の輪郭追従モードは、移動が正常に実行されたときにのみ終了する。移動中に予期しない衝突が発生した場合、第2の輪郭追従モードはすぐにロボット100が壁Wの輪郭に沿って(逆方向に)を走行するように制御を続ける。衝突に関する情報は、ロボットの環境に関する情報、特に地図データに引き継がれるため、ロボットの制御のために引き続き利用できる。これは明示的に実装されていないが、衝突までに実行される動きの一部は、通常、第2の輪郭追従モードで再び反転できる。むしろ、これは、ロボット100を追従すべき輪郭に対して大部分が平行な方向に制御する輪郭追従モードの特性である。
なお、図5(a)、(b)及び図6(a)、(b)に示す例では、輪郭Wは常に直線で表示されており、ロボットが直線的に後退する。一般に、壁W(または他の障害物)の輪郭は必ずしも直線である必要はなく、曲線や角を含む場合があり、ロボットは、これらを第2の輪郭追従モードで追従する。図6(c)及び(d)の例は、非直線輪郭Wの場合を示し、障害物Hが輪郭追従動作のさらなる実行をブロックするまでロボットが第1の輪郭追従モードで非直線輪郭Wを追従する(図6(c)を参照)。後続の第2の輪郭追従モードでは、ロボットは、障害物Hを通過可能となる量だけ回転できるまで輪郭Wに沿って戻る(第2の輪郭追従モードを終了するための基準)。その後、第1の輪郭追従モードが続行され、ロボットは障害物Hの輪郭を追従する。このアプローチは、ここで示した方法を、単純な直進運転などの事前定義された移動パターン(操作)が使用される他のアプローチと区別される。この場合が図6(e)に示されおり、単に後退するだけで、Zでマークされた領域で衝突が発生する。図6(f)は、例えば、袋小路のさらな例を示しており、この例では、例えば後退や回転などの単純な所定の運動パターンによっては、衝突なしに袋小路から脱出できない。加えて、ロボットは、その環境(例えば、センサユニット120で検出し、その地図データを更新するために使用する)における動き(例えば、人間または動物の)による動的変化に直接反応することができる。その結果、ここに示されている方法は、あきらかに柔軟で多用途である。
ロボットが第2の輪郭追従モードで壁W(または別の障害物)の輪郭を追従する間、第2の輪郭追従モードが同様にそれ以上の動きを可能としないことがある。例えば、これは、以下の場合にあり得る。すなわち、ロボットの3つの側面に障害物、特に輪郭が追従される壁W、さらに後退するのを防ぐ障害物、および障害物H´があり、これにより第2の輪郭追従モードが終了するのに必要な基準が満たされていない場合である。この場合、方向を再度変更でき、ロボットは第3の輪郭追従モードで元の方向に再び移動する。袋小路に至った前の運転パターンのほぼ同一の繰り返しを回避するために、例えば、ロボットが輪郭に追従する側を変更することができる。これにより、ロボットが輪郭Wから切り離され、たとえば、障害物Hの輪郭を追従し(ここの障害物は、第2の輪郭追従モードを終了するために必要な基準を満たさなくなる)、たとえば、第1の輪郭追従モードを続行できる位置に到達する。第3の輪郭追従モードを終了するための新しい基準を設定できる。
あるいは、第2の輪郭追従モードを終了するために以前に設定された基準を保持または採用することができる。
ここでの手順は、図4を参照して前に説明した方法に本質的に対応し、第1の輪郭追従モード10の前に既に別のモードが存在しているという唯一の違いがある。原則として、ロボットが袋小路の状況から抜け出す方法を見つけるまで、この手順を第4、第5の輪郭追従モードなどで繰り返すことができる。一般に、輪郭追従モードは、次の機能の少なくとも1つが異なる。
・輪郭を追従する方向
・輪郭に面するロボットの側
・輪郭追従距離d、障害物までの安全距離ds、速度等のナビゲーション用のパラメータ
・障害物(衝突)との接触を回避する優先順位
・衝突を判断するために考慮されるロボットの形状(たとえば、安全距離は、ロボットの仮想的に拡大されたハウジング形状の形において地図ベースの評価で考慮に入れることができる)
・輪郭に沿った動きを生成するためのルール
・地図データの解釈と評価
輪郭追従距離dおよび/または安全距離ds(縮小または拡大)を変更することにより、ロボットはより多くの自由動作空間を得ることができる。同様に、ロボットの速度を調整することにより、ナビゲーションの精度を高めることができ、その結果、たとえば、ロボットは狭い場所をより簡単にナビゲートしたり、床の覆い(たとえば、摩擦やドリフト)が原因の運転エラーに対してより適切に反応したりできる。
観察すべきロボットの形状は、走行方向が変わる場合は、それに対応して反映される必要がある。たとえば、D字型ロボットの場合、輪郭追従走行中に回転の自由度が制限され得る(とりわけ、輪郭追従距離dに依存する)。平らな側面が進行方向を指している場合、輪郭への回転は不可能であるか、限られた範囲でのみ可能である。一方、平らな側面が移動方向の反対の方向を示す場合、輪郭から離れる(静止位置における)回転は制限される。これにより、輪郭に沿った動きを生成するためのルールが対応して直接変更される。
いくつかの実施形態では、ロボット100は、衝突回避戦略で袋小路から抜け出す経路を見つけられない場合がある。これは、たとえば、ロボットが輪郭追従モード(特に、ロボットの方向および/または輪郭に面している側面)の変更が、それぞれの輪郭追従モードを終了するための基準が満たされることなく、複数回、失敗に終わるということにより認識され得る。これは、たとえば、センサや地図データの障害が原因で発生する可能性があり、その結果、ロボットは実際の環境の点が、実際は自由にアクセスできるにも拘らず、障害物によってブロックされていると見なす。このような場合、衝突回避戦略を放棄して、接触走行戦略に置き換え得る。
ロボットが障害物に触れる点も地図データに保存して、ロボットをさらに制御するために使用できる。輪郭追従モードでロボットを制御する方法の例示的な実装では、第1の輪郭追従モードおよび第2の輪郭追従モード(ならびにさらなる輪郭追従モード)は、それぞれ独立したソフトウェアモジュールであり得る。代替的または追加的に、いくつかの輪郭追従モードをソフトウェアモジュールに実装し、異なる設定のパラメータで起動できる。
ロボットは、事前に輪郭追跡走行を実行しなくても、袋小路の状態になることもある。ここでも、ロボットが袋小路から外に出ることができるか、または外に出ることができたとロボットが判断するまで、輪郭を逆方向にたどることが役立つ。たとえば、ロボットの機能を計画するための上位レベルの制御インスタンスは、この目的で第1の輪郭追従モードを開始でき、これにより、ロボットが輪郭に沿って優先方向(前方)に操縦される。ロボットが動作を実行する前に、この第1の輪郭追従モードでは動作を実行できず、そのため、第2の輪郭追従モードが反対方向に開始され、第2の輪郭追従モードの終了の基準が設定されて使用される。代替的または追加的に、ロボットの機能を計画するための上位レベルの制御インスタンスは、第2の輪郭追従モードを直接開始し、事前定義可能な基準に従って再度終了することができる。
図7は、より複雑なさらなる例を使用して、前の例よりも幾何学的に幾分複雑である、袋小路の状況で自律移動ロボットを制御する方法を示している。この例は、例えば、一定の決まった移動パターンを実行するような単純なアプローチでは、袋小路の状況を解決するのに必ずしも適切ではないことを明らかにしている。図7(a)から図7(d)は、ロボット100が輪郭Wに沿って第1の輪郭追従モードで移動している間の引き続く位置にあるロボット100を示し、輪郭Wはロボットの右側にある(すなわちロボット100の右側は輪郭Wに面している)。この例では、輪郭Wは急角度の屈曲部を有し、ロボットはこの屈曲部を超えて輪郭に追従する(図7(b)および(c)を参照)。図7(d)に示す状況では、ロボット100は、第1の輪郭追従モードでのさらなる移動がもはや不可能である位置に到達している。その結果、ロボット100の制御ユニット150は、進行方向が逆である第2の輪郭追従モードに替える。ロボットは輪郭Wを逆にたどり、前述の輪郭Wの屈曲部でさらに袋小路の状況に達し(図7(e)を参照)、後退走行の継続と大きな回転(45°など)の両方がブロックされる。
この第2の袋小路の状況に応答して、第2の輪郭追従モードも終了し、ロボット100の制御ユニット150は第3の輪郭追従モードに替え、このモードでは、移動の方向と輪郭が存在するロボットの(距離dの間隔で追従する)側との両方が第2の輪郭追従モードと比較して「反転」(後退ではなく前進、右ではなく左)する。ロボットの応答は図7(f)から図7(g)に示されいる。ロボット100は、その左側の輪郭の方向へ回転し、前方への移動が再びブロックされるまで、輪郭と輪郭追従距離dで整列される(図7(g))。この第3の袋小路の状況に応答して、第3の輪郭追従モードも終了し、ロボット100の制御ユニット150が第4の輪郭追従モードに替え、移動方向が再び変更される(後退移動)(左の輪郭は保持される)。ロボットは、この場合、輪郭追従距離dで左側の輪郭に平行にすばやく整列し得る。図7(h)に示す状況から始めて、ロボットは、輪郭追従モードを終了する(この場合、図7(i)に示す状況が示されている)基準が満たされるまで、(第4の輪郭追従モードで)輪郭をロボットの左側で後方に追従することができる。ロボットは、(事前定義可能な)角度を回転し、第1の輪郭追従モード(前方移動、ロボットの右側の輪郭)で、別の輪郭(図7(j)で垂直に延びる輪郭)を追従することができる。破線は、中心点「x」が後方に移動した経路を示している。
図7(k)は、ロボットが図7(a)から図7(j)に示されているのと同様の方法で達成する図7(a)から図7(j)と比較してわずかに変更された状況を示している。示されている例では、ロボットは(4番目の輪郭追従モードで)後方走行した後に時計回りに回転し(輪郭が再びロボットの右側になるように)、第1の輪郭追従モードで輪郭追従を続行できる。
基本的な動き:輪郭追従走行で自律移動ロボット100を制御する可能な形態を以下に示す。ロボット100を動かすための多くの可能性の複雑さを減らすために、所定の輪郭追従距離で輪郭に沿って所望の方向にロボットを動かすのに適した少なくとも3つの基本的な動きが導入される。これらの基本的な動きは、ロボットの環境に関する情報に基づいて、特に地図データに基づいて評価される。最高の評価を有する基本的な動きが選択される。駆動ユニット170のための制御コマンドは、選択された基本的な動きに基づいて生成される。この方法は、計画された動きの利点を使用すると同時に、狭い計画範囲と迅速な計画の繰り返しのみを有することで、環境の変化(人や動物の動きなど)または床の覆いなどによる走行エラー(摩擦、ドリフト)への迅速な対応を可能にする。
基本的な動きを評価する場合、基本的な動きのどれも実行できない、または実行すべきでないかが判断され得る。例えば、地図データに基づいて、基本的な動きのどれもが衝突なしでは実行できないと決定し得る。さらなる選択ルールに基づいて、基本的な動きのいずれも有効に実行できないことも決定し得る。このための例は、以下でより詳細に説明する袋小路の状況であり、この状況では、第1の輪郭追従モードで、輪郭に沿った優先方向へのそれ以上の移動は許可されない。
袋小路の状況から脱出するようにロボットを制御するために、新しい輪郭追従モードが開始され、これにより、原則として同じまたは同様の基本的な動きを使用できるが、動きの方向は逆になる。基本的な動きを評価するためのルールは、再定義しても良いし、ほとんど変更しなくても良い。基本的な動きを評価するためのルールが変更されない場合は、後退するロボットのハウジングの輪郭が使用されていることを確認するだけである(たとえば、D字形状のロボットでは、半円形の側が運動方向となる)。
図8は取り得る基本的な動きを示している。これらは少なくも以下を有する。
・第1の基本的な動き:現在の動きの方向への直線的な動き
・第2の基本的な動き:追従する輪郭に向かう回転
・第2の基本動作:追従する輪郭から離れる回転
したがって、第3の基本的な動きの回転方向は、第2の基本的な動きの回転方向と反対である。ロボット100のどちら側が、追従すべき輪郭に向くべきか、は、より高いレベルの計画インスタンスによって決定することができ、それによって輪郭追跡が実行される。代替的または追加的に、輪郭追従モードの開始時に(例えば、地図情報に基づいて)、ロボットのどちら側に追従できるか、または追従すべき輪郭があるかを決定することができる。ロボットが壁を追従する場合、通常、ロボットが向くべき側(輪郭)は明確である。ロボットが障害物を回避する場合、ロボットは理論的には時計回りまたは反時計回りに障害物を迂回することができ、それによって優先方向(たとえば、時計回り)を事前に定義でき、そこからの逸脱は例外的な場合にのみ行われる。
図8(a)は、第1の基本的な動きとしての直進運動を示している。ここでは、両方の車輪170L、170Rが同じ距離だけ前進する。第1の基本的な運きで進む距離は、固定距離であり得る。柔軟性を高めるために、進む距離を移動の評価中に決定できる。この際に、例えば、直線運動の最小および/または最大距離を考慮に入れることができる。
図8(b)は、第2または第3の基本的な動きの可能な変形例を示している。ここでは、車輪170Rと車輪170Lが反対方向に移動し、ロボットがその中心点を中心に回転する。
図8(c)は、第2または第3の基本的な動きのさらなる可能な変形を示している。ここでは、第2の車輪170Rが静止している間、2つの車輪のうちの1つの車輪170Lだけが前進する。したがって、ロボット全体が第2の車輪170Rの周りを回転する。中心点「x」は、円形の経路上を前方に移動する。
図8(d)は、第2または第3の基本的な動きのさらに可能な変形を示す。ここでは、第2の車輪170Lが静止している間、2つの車輪のうちの1つの車輪170Rだけが後方に移動する。したがって、ロボット全体が第2の車輪170Lの周りを回転する。中心点「x」は、円形の経路を逆方向に移動する。ただし、回転方向は図8(b)、(c)と同じである。
駆動する車輪を適切に作動させることにより、ロボットを他の点を中心に回転させることもでき、中心点「x」は常に円形の経路を移動する。適切な回転運動を選択することにより、特に、作業ユニット160(図示せず)の運動が所望の特性を有するようにすることができる。例えば、ロボット100の作業ユニット160が常に前方に移動することが通常望ましい場合があり、これは、例えば、図8(c)に示される運きによって達成することができる。いくつかの用途では、これは、例えば、ロボットのブラシが清掃跡を残すーペット上により美しい清掃パターンを実現できる。図8(d)に示される動きにより、ロボットの前部に配置された清掃ユニット(図3(b)参照)を少し動き、それにより、より完全な洗浄を達成することができる。2つの車輪170L、170Rの駆動規則(正/逆)を交換することにより、図8(b)から図8(d)に示す回転運動と反対の回転(第2または第3の基本的な動きに対応する定義)を生成できる。
第2または第3の基本的な運きでカバーされる回転角度は、例えば、0.5°から5°の固定角度とすることができる。柔軟性を高めるために、特に追従すべき輪郭に平行にロボットを位置合わせするために、動きの評価中に適切な回転角度を決定することができる。ここで、例えば、移動のための最小および/または最大の回転角度を考慮に入れることができる。第2および第3の基本的な動きで使用される回転運動は本質的に同じにすることができ、回転の方向のみが異なる。たとえば、両方の基本的な動きの場合は、図8(b)に示されている回転が、その場で使用できる。
あるいは、第2および第3の基本的な動きは、異なるように選択することができる(すなわち、回転の方向が異なるだけでなく、動きの別の特性も)。これにより、動きの特性をさまざまな要求に簡単に適合させることができる。図8(d)に対応する第2の基本的な動きは、椅子の脚などの小さな障害物を周る(したがってより完全な清掃の)ために後方への小さな動きを含み、および/または図8図(c)に対応する第3の基本的な動きは、壁に平行な位置合わせのためのスムーズな動きを実現するための小さな前方移動を含む。結果として生じるロボットの動きは、一連の個々の基本的な動き(たとえば、右への1°の複数回転、前方への動き、右への1°の複数回転、前方への動きなど)である。これを連続して実行すると、ぎくしゃくした動きになる。制御ユニット150は、この移動を(例えば、移動平均フィルタを用いて)滑らかにするように構成することができる。
さらなる基本的な動きも考慮に入れることができる。たとえば、現在の移動方向(逆方向)に対する基本的な動きも考慮することができる。滑らかな動きを得るために、計画された基本的な動きに対して作成される制御コマンドも滑らかにすることができる。
動きの評価:自律移動ロボット100を制御するための動きを評価するための様々な方法が知られている。例えば、ロボットの環境で検出された障害物に基づいて「仮想力」、「仮想ポテンシャル」、または「仮想コスト」を決定できる。これらは、基本的な動きを評価するために使用でき、その場合、所定の最適の状態(たとえば、仮想力に沿った動き、仮想ポテンシャルまたは仮想コストの最小化)に従う動きが選択される。動きを評価するための方法の選択は、ここで説明される例示的な実施形態の実行にとって必須ではない。
基本的な動きを評価するとき、2つ以上の基本的な動きが同等に評価され得る。この場合、輪郭に沿って進む基本的な動きが優先される。ここに示した動作の場合、これは、同じ評価で、輪郭に向かう回転(第2の基本的な動き)が実行されることが優先されることを意味する。直線運動(第1の基本的な動き)と輪郭から離れる回転(第3の基本的な動き)を同じように評価する際に、輪郭に沿った直線運動(第1の基本的な動き)が選択される。
基本的な動きを評価するときに、1つ以上の以前の基本的な動きを考慮することができる。従って、たとえば、最後の動きを取り消すことは「禁止」することができる。
特に、第2および第3の基本的な動き(輪郭に向かう回転および輪郭から離れる回転)がその場での回転である場合(図8(b)を参照)、これらの基本的な動きが引き続いて連続することを禁止することができる。追従すべき輪郭に沿ったロボットのより滑らかな走行動作を達成するために、基本的な動きの順序に関するさらなるルールを設定することができる。
衝突を回避することは、動きを評価する際の重要な要素である。たとえば、障害物の少なくとも1点との衝突につながる動きは、一般に禁止されるか、非常に高いコストが課せられ得る。さらに、動きを評価する際に、追従すべき障害物の輪郭の位置を考慮することは有効であり得る。図8(a)から(d)は、4つの簡略化された例を示している。図9(a)に示すように、追従すべき輪郭Wと自律移動ロボット100との間の距離が所定の距離d(輪郭追従距離)より大きい場合、ロボットは輪郭に向けて回転(第2の基本的な動き)すべきである。図9(b)に示すように、追従すべき輪郭Wと自律移動ロボット100との間の距離が所定の輪郭追従距離dにほぼ等しい場合(たとえば、特定の許容範囲d±ε内)、ロボットは壁に対して並行に本質的に直線状に移動する(第1の基本的な動き)。図9(c)に示すように、追従すべき輪郭Wと自律移動ロボット100との間の距離が所定の輪郭追従距離dよりも小さい場合、ロボットは輪郭から離れるように回転する(第3の基本的な動き)。
図9(d)に示すように、ロボット100は、一般に、輪郭Wに平行に整列されていない。したがって、ロボット100の制御(すなわち、一連の基本的な動きの自動化された選択)は、ロボット100が輪郭Wにほぼ平行に位置合わせされるように行われなければならない。このために、例えば、輪郭Wの向きOを決定することができ、基本的な動きを、輪郭の向きOおよびロボットの向きに基づいて選択することができ、その結果、事前定義可能な輪郭追従距離dが生じる(ロボット100および輪郭Wの向きは、同じである)。この時点で、単純化のために図に直線として示されているとしても、輪郭Wは一般に直線ではないことを再度指摘しておくべきである。
輪郭Wの向きOは、例えば、輪郭の2点の接続ベクトルとして、いくつかの点における選択の回帰直線として、輪郭への接線などとして決定することができる。環境のマッピングは、たとえば、特徴抽出のアルゴリズムによって、障害物(特に壁)の輪郭の一部が線(または表面)として記録および保存される。輪郭の向きOは、通常、自然な方向を有しており、これは、例えば、障害物が観察された方向および/またはロボットが輪郭に沿って進むべき方向から生じる。輪郭が無方向オブジェクト(ラインなど)として表されている場合でも、輪郭追従走行中に輪郭Wに面するロボットの側面を選択することで、輪郭に平行なロボットの方向が一義的に決まる(そして、それと共に、第2の基本的な動きの回転方向が決定される)。
ロボットの環境を幾つかのセクタに分割して、基本的な動きを評価できる。可能な分割には、例えば、基本的な動きの衝突のない実施のために障害物があってはならないセクタ、追従すべき輪郭を分析するセクタおよび/またはさらなる動きの可能性を分析するセクタが含まれる。図10(a)から図10(c)には、ロボットの環境をセクタに分割した例が示されている。
図10(a)は、直進運動(第1の基本的な動き)を評価するためのロボット環境のセクタの例を示している。一例として、追従すべき輪郭として、角を有する壁Wが示されている。
セクタI(図10(a)に陰影で描かれている)は、ロボットが最小距離(lmin)の線形(前進)運動に必要な領域を示している。このセクタに障害物の少なくとも一部または点がある場合、移動は衝突なしでは実行できないため禁止される。
セクタIIは、ロボットの隣の、追従する輪郭の側の領域である。このセクタは、たとえば、ロボット側から輪郭追従距離dと同じ幅を有する。このセクタIIに障害物の少なくとも一部または点がある場合、これは必ずしも動作の実行の除外基準ではない。ただし、評価中、ロボットが、たとえば、第3の基本的な動きによって追従すべき輪郭Wまでの距離を増加させる必要があるかどうかがチェックされる。たとえば、輪郭線WがセクタIIから明らかに突出している場合、例えばロボットが輪郭から遠ざかるように評価される。
ただし、セクタIIの端の近くに小さな角または単一の点しかない場合は、ぐらつく動きを避けるために回避的な動きをするべきでない。たとえば、第3の基本的な動きのコストベースの評価の場合、セクタIIに突き出た小さな角のコストに対応する、事前に決定可能な基本コストを考慮することができる。コストは、たとえば、セクタIIで突出する輪郭の部分の長さと面積の比率に基づいて決定できる。追従すべき輪郭の一部がセクタIIのエッジにある場合、これはボーナス(例:負のコスト)をもたらす可能性がある。セクタIIに輪郭がなく、特に追従されるべき輪郭のエッジ領域にある場合、これもコストがかかる可能性がある。
セクタIIIは、ロボットのさらなる可能な動きがチェックされる領域である。たとえば、ロボットが衝突を引き起こさずに直線を移動できるか、および移動できる場合は、ロボットが衝突を引き起こさずに直線を移動できる距離がチェックされる。これは、たとえば、最大計画範囲lmaxによって制限される。セクタIII内で、ロボットは、たとえば、衝突せずに移動できる距離l(lmin<l<lmax)を決定できる。ここでは、例えばロボットの前にある障害物までの安全距離dsを考慮する必要がある。
セクタIVは、ロボット100の隣の、輪郭とは反対側の領域である。原則として、この領域には障害物はない。ここに障害物の少なくとも一部が配置されている場合、この情報を使用して、ロボット100をこの障害物と輪郭Wの間の通路で移動させることができる。
図9(b)は、回転(第2/第3の基本的な動き)の実行のためのセクタの例を示している。より分かりやすい表示とするために比較的大きな回転が選択されている。実際のロボット制御では、大幅により小さい回転が選択され得る。
図10(b)で陰影を付けて示したセクタIは、静止状態での回転中にロボットが通過する領域である(図8(b)を参照)。このセクタは、ロボットの形状に強く依存する。このセクタは、対称性のために障害物によって回転の自由度が制限されないため、円形対称ロボット(図3(a)を参照)には存在しない。図10(b)に示すD字型のロボット100の場合、セクタIは、2つの角(ロボットの正面の左右)によって決定される2つの独立した部分に分割される。ロボット後部は丸形なので、この領域では回転自由度に制限はない。回転が中心点の周りではなく、別の点の周りで実行される場合(図8(c)および図8(d)を参照)、セクタIは対応して大きく変位する。
さらに、セクタIIIでは、回転運動の終了後に直線運動のような運動の可能性を評価に含めることができる。ロボットの隣にあるセクタIIおよびセクタIVの障害物も評価できる。例えば、引き続く所定の距離(例えば、lmin)の直線運動が実行できる場合にのみ、輪郭Wへの回転(第2の基本的な動き)を適切であると判断するように構成することができる。回転角度と、回転後の並進運動の距離lminは、相互に適合可能である。たとえば、ロボットが輪郭追従距離よりも輪郭から離れている場合、ロボットは輪郭に向かって回転することができ、一方、輪郭からのロボットの距離が輪郭追従距離以下である場合、輪郭への基本的な動きの選択は妨げられる(なぜなら、回転後は、直進することができなくなるからである)。この動作は、lminと回転角度とを適合させることで実現できる。
回転後に直線移動が不可能である場合、計画された基本移動(つまり、回転)は有り得る方法の次のステップで取り消される必要があり、これは通常望ましくなく、回避する必要がある。回転後に所定の距離の直線運動が可能であるべきという、上述の条件においては、これは回避可能である。これは、直進運動が実際に直後に実行されなければならないという意味ではない。代替的または追加的に、ロボットはまた、図10(a)に示される例における距離lminによる直線移動に類似する、さらなる追加の回転をチェックすることもできる。
自律移動ロボットの一部のアプリケーションでは、ロボットができるだけ後退しないことが望ましい。ロボットがすべての(基本的な)動き、特にすべての直線動作(第1の基本的な動き)に対して直線動作を実行した後、セクタIにおいて衝突なしに完全または部分的な回転が可能かどうかをチェックする場合、後退動作の頻度を減らすことができる。セクタIIIは、ロボットが中心点を中心に回転できるように、障害物があってはならないセクタを例示している。セクタIII´は、ロボットが中心点より上の点の周りを円運動することができるように障害物があってはならないセクタを例示している(図8(c)を参照)。
さらに、例えば、掃除ロボットの場合、処理される領域(例えば、作業ユニット160が通過する領域)は、地図情報として格納され、ロボットの動きを評価するために使用することができる。同時に、評価される基本的な動きの処理利得を決定し、その評価に使用できる。たとえば、このようにして、ロボットが完全に輪郭に沿って移動し、以前に処理された領域(特に、輪郭追従走行の開始点とは限らない)に再び到達したときにそれを認識できる。(基本的な)動きに有り当てられる処理利益は、例えば、移動が実行されたときに追加的に処理される(まだ処理されていない)床面である。この領域は、(たとえば、ロボットが配置されている床や部屋に基づいて)重み付けすることもできる。
たとえば、ロボットは、以前に既に清掃し、それに沿って走行しなければならない輪郭に対して大きな間隔を維持することができる。さらに、偶然の衝突を回避するために、輪郭追従距離が大きいほど、ナビゲーションの精度を下げる必要がある場合がある。たとえば、計画範囲やロボットの速度を大きくすることができる。たとえば、ロボットの前にある障害物までの距離を長く保つことができ、これによりロボットが角や他の狭い場所(袋小路になる可能性がある場所)まで頻繁かつ奥まで入り込むことがなくなる。
パラメータの選択:3つ以上の異なる基本動作及び単純で指定可能なルールによるこれらの動作の評価を使用してロボットを制御する、ここで説明する例に関係する方法は、原則として、さまざまな使用目的で輪郭追従走行において多数の動作プロファイルを生成できる非常に強力なツールである。ただし、多数のパラメータ(評価規則、回転運動の回転中心、進む距離、回転角度)の選択は、すぐに混乱して複雑になる可能性がある。
シミュレーションを用いて、特定のパラメータセットを持つロボットの動作を原理的に分析し、目的の動作に適合させることができる。
さらに、機械学習の方法などの最適化手法の使用により、少なくとも部分的に自動化されたパラメータの決定が可能である。たとえば、特定のシナリオ(壁や椅子の脚などの障害物のさまざまな配置)は、事前定義された測定関数を使用して最適化できる。たとえば、壁の処理される領域を最大化したり、必要な時間を最小化したりできる。追加的にまたは代替的に、(例えば、市場調査に基づいて決定される)所望の動きのパターンは、人によって指定され得る。ロボット経路が指定された移動パターンにできるだけ近づくように(シミュレーションおよび/またはテストで)パラメータを最適化することができる。
目に見えない障害物:このように、環境からの情報と地図データに基づいて、輪郭追従走行がさらに続いて衝突することなく計画および実行できる。特に、基本的な動きの評価または輪郭追従モードを終了するための基準は、地図に基づくことができる。さらに、ロボットは、予期しないイベントで開始することができる適切な緊急ルーチン(例えば、制御ユニット150によって実行されるソフトウェアモジュール、図2参照)を有することができる。例えば、事故を回避するため、またはその影響を制限するために、計画された動きを中断することができ、それによってロボット100を停止することができる。予期しないイベントに関する情報は、たとえば、地図データに含めて、ロボットをさらに制御するために使用できる。緊急ルーチンが完了した後、そのように中断された輪郭追従モードを継続するか、ロボットの現在のタスクを再計画できる。
このような予期せぬイベントは、たとえば、階段の場合のように、ロボットがそれに近づいたり、対応するセンサで少なくとも部分的にその上を走行したりするときにのみ認識され、立ち下がりエッジの検出である。予期しないイベントのもう1つの例は、障害物に触れること(たとえば、衝突)である。これは、障害物が以前にナビゲーションセンサで認識されていないか、地図データに記録されていないために発生する可能性がある。これは、低く、透明または反射する障害物で発生する可能性がある。場合によっては、たとえば床面が悪いために、走行動作が計画どおりに実行されない可能性があり、その結果、ロボットが以前に検出された障害物と誤って衝突する。また、障害物が移動して(たとえば、人間や動物の影響により)衝突が発生することもある。
ロボットの即時停止に加えて、(緊急ルーチンを起動する)予期しないイベントに適応した別の標準化された動作を、緊急ルーチンの枠内で実行できる。たとえば、ロボットが検出された立ち下がりエッジから安全な距離が取られるか、および/または障害物の衝突又は接触を検出する触覚センサが再び解放される(つまり、障害物を検出しなくなる)まで、少なくとも最後の動きを引き返すことができる。たとえば、ロボットは数センチ後退できる。回転中に予期しないイベントが発生した場合、ロボットは反対方向に回転できる。
標準化された動作が完了すると、通常の輪郭移動が再開可能である。予期しないイベントの原因を地図に登録して、ロボットの動きをさらに評価するために考慮することができる。たとえば、立ち下がりエッジが検出された場所である。この場所は、ロボットの姿勢(位置と向き)と、立ち下がりエッジを検出したセンサの(ロボット内の)姿勢に基づいて決定できる。一般に、これは障害物の輪郭の点として扱うことができる1つ以上の点である。
接触や衝突によって引き起こされた予期しないイベントも同様に地図に登録される。この際、衝突または接触を検出するための触覚センサが比較的良好な空間分解能を有することが望ましく、これにより障害物が接触した位置を地図上に高精度で登録できる。ただし、実際には、触覚センサは大まかな解像度しか持っていない場合がしばしばある。この場合、障害物が、測定されたセンサ信号を生成した可能性のあるロボットの触覚センサの外側の輪郭の全部分を、地図上に登録することができる(幾何学的図形またはサンプル点の形式で)。たとえば、これはロボットのさまざまな独立した領域の接点スイッチである。2つの接触スイッチを短い間隔で連続して作動させることにより、衝突の場所に関する追加情報を導き出すことができ、地図上に適切な方法で登録できる。
このように地図に記録された情報は、障害物の位置に直接対応していないため、前述の障害物に関する情報とは異なる扱いが必要になる場合がある。これは、基本的な動きを評価するときに障害物の種類及び障害物(またはその一部)の輪郭がどのセンサで検出されたかを考慮に入れることができることを意味する。たとえば、情報を楽観的に解釈できる。これは、基本的な動きの評価では、センサ情報を生成する可能性があった、最も邪魔にならない位置の最小の可能な障害が想定されることを意味する。これにより、障害物との接触がさらに進み、検出されなかった障害物に関する触覚情報の数が増加する。これにより、ロボットは障害物に沿って手探り状態で移動することができる。
袋小路の状況の処理に関してすでに述べたように、衝突が意図的に危険にさらされる輪郭追従モードを開始する必要がある場合がある。つまり、ナビゲーションセンサで検出された、ロボットの環境の情報や地図データは使用されないか、限られた範囲でのみ使用される。したがって、上述の緊急ルーチンは環境の触覚探査のための方法も含み、その探査に基づいてロボットが輪郭追従モードで輪郭に沿って移動できる。
いくつかの例示的な実施形態では、ロボットは、検出された移動障害物との衝突の危険性、または計画通りに実行されない走行動作による危険が、実際の衝突または障害物との接触の前に認識されるように構成され得る。その結果、ロボットはすぐに停止し、衝突を防ぐことができる。
仮想的な障害物:基本的な動きを評価する際に特別な形式で考慮することができる異なる種類の障害物のさらなる例としては、ロボットの使用領域を制限する目的でユーザが環境に配置した、ロボットがその上を走行することが許されていないマーキングがある。このようなマーキングは、たとえば、ロボットが検出できる磁場を形成する磁気テープや電流ループ、あるいはロボットが検出できる光信号(たとえば、赤外線レーザビーム)を放射するガイド信号送信機である。これらのマーキングは、ロボット100のセンサユニット120(図2参照)の対応するセンサで認識することができ、ロボットによっては、例えば、横切られない。したがって、これらはロボットに対する一種の障害物を表しており、ロボットをナビゲートするときに考慮することができる。また、このような障害物の輪郭を輪郭追従走行で追従させることができる。
例えば、(例えば、磁気や光学的な)マーキングとの衝突はあり得ないので、それらは、例えば、距離測定によって検出され、またはカメラによって検出された障害物とは、基本的な動きの評価において異なる扱いを受け得る。したがって、回転の自由度を制限する必要はないが、マーキングの上を通過するだけでは不十分である。例えば、D字形状ロボット(図3参照)の角部が回転中にマーカの上を通過することを許容することができる。
特に輪郭追従モードで、ロボットを制御するために地図データを使用する利点は、ロボットが独立して走行および/または横断することができない領域を地図上にマークする仮想障害物が利用可能であることである。これらは、例えば、HMI200を介してユーザによって入力されてもよいし、ロボット自身によって作成された(「学習された」)ものであってもよい。このように、ここでは安全な動作が保証されていないため、ロボットは再び走行したくない場所を記憶することができる。ユーザは、例えば、環境に物理的なマーキングを導入することなく、ロボットのために一時的または恒久的に領域を遮断することができる。これは、実際のマーキングよりも柔軟性がより高く、煩わしさがより少ない。
そのような純粋に仮想的な障害物については、マーカによって作成された障害物と同じことが適用される。実際の衝突は不可能であるため、単純化された処理で十分である。これは、仮想的な障害物の仮想的な境界を横切ることを避け、特に遮断領域の走行を防止するようにのみ構成され得る。方法は、仮想的な障害物について例示されている。
図10は、障害物(例えば壁)の輪郭Wに沿った輪郭追従走行と、輪郭Wに垂直に位置し、地図上には含まれているが現実には存在しない仮想的な障害物とを例示的に示す図である。壁の輪郭Wに沿った基本的な動きを評価するために,ロボットの完全なD字形状が考慮される。対照的に、仮想的な障害物の輪郭Vに関する基本的な動きを評価するためにロボット100の単純化された仮想形状101のみが、考慮される。図11に示す例では、簡単化された仮想形状101は、点xを中心とし、直径がロボットの幅に対応する円である。このように、静止中の純粋な回転は仮想的な障害物によって制限されない一方、ロボットの単純化した仮想形状に通常の衝突回避ルールを適用することにより、仮想的な障害物の輪郭Vを横切ること(すなわち、単純化した仮想形状101と仮想障害物との仮想的な衝突)が回避される。円の半径は、したがって、ロボット100がその(運動)中心「x」の周りを回転するときに、ロボット100のハウジングの外側輪郭の少なくとも2点が円上を移動するように選択することができる。示された例では、円の半径は、ロボットのハウジング100の幅の半分に等しい。つまり、ロボット100の一部は、仮想形状101を表す円の外側にある。
図11(a)に示す例では、ロボット100は、ロボット100が仮想的な障害物から安全距離dsだけ離れた位置に到達するまで、壁の輪郭Wに沿って移動する。安全距離dsは、他の種類の障害物と同じ距離にすることができる(図5参照)。あるいは、安全距離は、より大きく又は小さく選択することができる。特に、ロボット100の単純化された形状101の前方の仮想的な障害物までの安全距離は、輪郭追従距離に等しいものを選択することができる。
ロボット100の単純化された形状101のみが仮想的な障害物を扱う際に考慮されるという事実のために、輪郭WおよびVによって形成されるコーナーは、袋小路の状況をもたらさない。ロボットは、壁の輪郭Wから離れて(例えば、静止した状態での回転としての第3の基本的な動きの連続によって)制限なく角内で回転することができ、これにより、ロボット100は、仮想的な障害物の輪郭Vに平行に自分自身を整列させることができる。図11(b)に示すように、回転中にロボットの角部Aが仮想障害物内に突出する(第3の基本的な動き)。図5の例とは異なり、ここでは、輪郭Wを逆方向に追従させるために、現在の輪郭追従モードから終了する必要はない。
図11(c)の例では、ロボットは、仮想的な障害物の輪郭Vに対して完全に平行に整列しており、この輪郭Vはロボットまでの距離dsを有する。安全距離dsが輪郭追従距離dと等しい場合、ロボットは仮想的な障害物の輪郭Vをさらに追従することができる。安全距離dsが輪郭追従距離dより小さいか大きい場合、輪郭追従モードでは、制御ユニット150は、仮想輪郭Vとロボット100(または簡略化されたロボット形状101)との間の距離が輪郭追従距離に等しくなるようにロボットを制御する。
特に床面処理用ロボットの場合、不用意な衝突を避けるために輪郭追従距離と安全距離とが使用される。このような仮想的な障害物との衝突は不可能であるため、障害物の種類に応じて輪郭追従距離や安全距離を設定することも可能である。特に仮想障害物については、輪郭追従距離および/または安全距離を他の障害物よりも小さく設定するか、または完全にゼロに設定することができる。特に、仮想障害物に対する輪郭追従距離および/または安全距離をゼロとすることにより、計算および評価のための消費をいくらか節約することができる。
ロボット100の仮想形状101の最大の簡略化は、ロボット100の仮想形状101を1点で表現することである。この点は、好ましくは中心点「X」(運動中心、回転中心)である。例えば、一点に簡略化された点状のロボットが、仮想的な障害物の輪郭Vに沿って可能な限り正確に移動するように、ロボットを輪郭追従モードで制御することができる。特に、輪郭追従距離dおよび安全距離dsは、ゼロに設定することができる(すなわち、考慮しないようにできる)。すなわち、障害物の境界は、ちょうど許可されたロボット(または運動中心)の経路を描いているので、ロボットに対して遮断された領域は走行されない。これは、遮断された領域を定義する際に考慮することができる。例えば、ユーザは、HMI200を用いて、移動してはならない領域を入力することができる。
この入力に基づいて、中心点「x」を有するロボットが、輪郭追従モードでこの境界を安全に追従することができるように、仮想的な障害物の仮想境界を決定することができる。
例えば、ロボット100の簡略化された仮想形状101のための基本的な動きのコストベースの評価の枠組みでは、仮想的な輪郭Vから離れるすべての動作にコストを割り当てることができる。遮断領域内での移動は、禁止されるか、自由にアクセスできる領域内での移動よりも高いコストが課される。これは、輪郭追従距離に基づく評価と本質的に類似する。
非常に細長い形状のロボット(図3(e)参照)の場合に円形や点に単純化すると、ロボットの一部が仮想的な障害物(すなわち遮断領域)の中へ奥まで突出することがある。この場合、別の仮想形状を用いることで、ナビゲーションや動作の評価を容易にすることができる。仮想形状は、円弧、直線片、または単純な多角形片(例えば放物線)から合成することにより、できるだけ簡単に決定される。特に、中心点「x」(運動中心)を中心とする円弧を選択することができる。
例えば、仮想形状101は、凸形状(すなわち、形状内で任意の2点を直線で結ぶことができる)として選択することができる。例えば、仮想形状101は、現実の形状に完全に含まれるように選択することができる。仮想形状の外側にあるロボットの領域は、したがって、少なくとも一時的に、例えば回転中に、仮想的な障害物の仮想輪郭を超えることができる。このように、現実の障害物だったら、衝突につながる動き、特に仮想的な障害物に対する回転が可能となる。
例えば、仮想形状101は、ロボット100の実際の形状の点とロボット100の仮想形状100と間の最大間隔を超えないように選択することができる。点への単純化と同様に、仮想形状は中心点 "x"(運動中心)を含む線とすることができる。例えば、これは線の一方の第端点である。次に、第2の端点は、ロボットの細長い形状を考慮することができる(図3(e)参照)。
ここで説明したロボット100の簡略化された仮想形状101の概念は、ロボットの完全な3次元形状に一般化することができる。簡略化された立体形状としては、例えば、円錐体等の回転体が挙げられる。特に、平面への適切な投影によって、3次元の問題は、ここで説明した2次元の場合にまで帰することができる。
非円形ロボットの簡略化された経路計画:図11は、本質的に円形の基本領域を有するロボットの、出発点から目的点までの経路計画の2つの同等の表現を示す図である。図12(a)に示されている状況では、幾つかのより小さな障害物H(例えば、椅子の脚)を通り抜ける衝突のない、ロボット100の経路が決定される。図12(a)に示されている状況は、図12(b)に示される状況と同等であり、図12(b)では、幾つかの障害物Hを通り抜ける点形状のロボット100´の経路が決定され、この障害物Hは、(図12(a)に示されている状況と比較して)、ロボット100の半径だけ拡大されている。図12(b)で示した問題は、障害物に占領されていないすべての点がロボットにとって可能な位置であるため、直感的に解決し得る。
図12に示したアプローチは、原則として、ロボット100の一般的な非円形の形状に対しても可能である。しかし、障害物を拡大する規則は、ロボットの向きに依存する。同時に、動きがロボットの向きと平行にしかできないという制約も考慮しなければならない。そのため、数学の定式化は非常に複雑で計算コストがかかる。図1(b)の例のように、ロボットと環境の3次元形状も考慮しなければならない場合には、計算コストはさらに増大する。そのため、よりシンプルな方法が必要とされている。
複雑な形状を有するロボットのための経路計画の問題は、例えば、特に大部分が自由な領域での広範囲な経路計画のためにロボットの「仮想的な」形状の簡略化された経路計画の既知の方法を使用して、簡略化することができる。狭い場所では、正確なロボット形状を考慮した局所的な計画が行われる。例えば、輪郭追従走行を実行するための、ここで説明した方法は、例えば、図12(a)に示すような複雑な環境を有する領域を通る経路を決定するために使用することができる。
ロボットの簡略化された仮想形状による経路計画と、ロボットの完全な形状の局所的な考慮との組み合わせが使用される例示的な状況が図1に示されている。両方の記載(図1(a)及び図1(b)参照)では、好ましい移動方向を持つロボットは壁の真正面に位置している。その結果、好ましい移動方向(前進方向)への移動と静止時の回転とが不可能である。ロボットの簡略化された仮想形状を使用した経路計画では、この問題は無視され、必要なアルゴリズムと計算が大幅に簡略化される。計画された経路を辿ろうとすると、ロボットは障害物(壁など)があるために計画された経路に沿うことができないことを検知し、例えば輪郭追従モードが開始される。
袋小路状態の処理に関連して上述したように、これは、ロボットが自由に旋回できるようになるまで、ロボットの好ましい進行方向と反対方向(すなわち、後方)に少しだけ移動することになる。より上位の制御インスタンスは、例えば、ロボットが計画された経路に沿って整列し、それを追従することができるようになったと判断することができ、これにより輪郭追従モードが終了する。ロボットが後方に移動して壁から離れることができる特別な事前定義された走行動作は必要ない。同様に、ロボットの完全な輪郭を考慮した複雑な経路計画は、この動作には必要ない。したがって、ここで説明する経路計画のアプローチは、柔軟性があり、堅牢で、リソースを節約する。
ロボットの単純化された仮想形状は、中心が中心点「x」(運動中心)にある円形に特に対応する。これにより、例えば、図12に略図で示した経路計画の手法が使用される。経路計画の結果は経路Pであり、経路Pは、ロボット100の駆動ユニット170のための対応する制御コマンドに変換され得る。ここでは、センサユニット120で記録されたロボットの環境情報に基づいて、ロボットの制御を継続的に修正している。例えば、ロボットが経路Pを辿る所望の精度を指定することができる。経路に沿ってロボット100を制御する方法は、それ自体知られている。例えば、輪郭追従の形状は、仮想的な点に簡略化されたロボットの形状で仮想障害物の輪郭Vを追従することについて上述したのと同様に、経路を追従するために使用することができる。
経路計画は通常、使用領域をより完全に、又は、より不完全に説明する地図データに基づいている。これらのグローバル地図では、メモリ需要及び/又は計算の複雑さを制限するために、検知された詳細情報の精度が低減されることがよくある。例えば、そのような地図は、以下のものがある。
・点、線及び/又は面の形で障害物の輪郭を表示できる特徴地図、
・使用領域は、個々のセルに分割され、障害物によって占有されているか、自由にアクセスできるかについてセルごとにマークが付けることができる。ラスタ地図(グリッド地図とも呼ばれる)、
・使用領域のどの特徴点及び/又は領域が、ロボットがそれらを通過できるように接続されているかに関する情報を含むトポロジ地図。
経路計画の方法は、これらのマップについてそれ自体既知であり、必要に応じて組み合わせることができる。
経路に沿ったロボットの制御のために、ロボットは、センサユニット120のセンサで取得された環境に関するより多くの詳細および現在の情報を含む第2の地図または地図データの第2の形態を有することができる。特に、ロボットが経路Pに沿って走行している間、環境に関する現在の情報をこの第2のマップに高精度で登録できる。
第2の地図に登録した情報は、メモリ需要と処理負担を削減するために、しばらくすると削除可能である。代替的に、第2の地図の情報内容は、解釈および/または簡略化によってしばらくしてから減らすことができ、これにより、同様にメモリ需要と処理負担が削減される。
第2の地図及びセンサユニット120のセンサで取得された環境の情報に基づいて、いくつかの状況、例えば、計画された経路をさらに辿ると、少なくとも1つの障害物Hとの衝突につながる可能性があると判断できる。これには、ロボットの完全な形状が考慮される。また、実際の衝突を検出することにより、障害物による衝突がなければ計画経路を走行できないことも判定できる。
この可能性のある差し迫った衝突の1つの理由は、特に、ロボット100の簡略化された仮想形状101が障害物と(仮想的に)衝突せず、この簡略化された形状のみが計画で考慮されたことである。特に丸形状ロボットについても考慮に入れる必要があるその他の理由には、誤った、又は不正確な地図データ、ロボットの広範囲の移動の計画における精度の制限、障害物の位置の変化(たとえば、椅子の使用による)及び/又は新しい障害物が挙げられる。
そのような差し迫った衝突が認識された後、ロボットはそれに反応して衝突を回避することができる。この際に、例えば、ロボットの形状の完全な輪郭が考慮される。例えば、輪郭追従モードにおいて、制御ユニット150は、ロボットが最初に計画された経路に再び当たるか、目標点に到達できるか、または中止条件が満たされるまで、障害物の輪郭に追従するように制御できる。
例えば、輪郭追従モードが開始される前に、追加の目標点を設定できる。これは最初に計画された経路の一部であり得、ロボットはこの点からその経路を引き続き追従できる。追加の目標点は、(可能な限りで)回避する障害物の後ろに配置される。目標点に到達できるのは、例えば、ロボットと目標点との間に障害物がなく、ロボットが衝突することなく目標点に向かって旋回できる場合である。
中止条件とは、例えば、目標地点が障害物の中にあるため、目標地点に到達できないことである。別の終了条件は、目標点までのロボットの距離が予め定められた値よりも大きくなること、及び/又は、元の経路までのロボットの距離が予め定められた値よりも大きくなることであってもよい。障害物の輪郭は、従って、ロボットを本来のコースから異常に遠ざけることになる。最大距離の所定値は、例えばロボットの幅やロボットの幅の2倍である。更なる中止条件は、例えば、所要時間及び/又は輪郭追従走行中に移動する距離である。
中止条件が満たされた場合、ロボットは停止し、現在位置から目標地点までの別の経路があるかどうかを確認する。このために、予め計画された経路が正常に走行できなかったこと、及び経路Pに沿った移動の中断及び中止がどの位置又は領域で発生したかという情報が地図データに記録される。具体的には、ロボットの簡略化された仮想形状を用いた将来の経路計画のために、ロボットの完全な形状では通過できない経路がある場合でも、簡略化された形状101では通過可能な経路である場合には、この情報が記録される。
経路Pの経路計画は「悲観的に」行うことができ、理想的な地図(エラーや精度の制限なし)に基づいて計画する場合、ロボットは常に目的地に到達する。これは、例えば、ロボットの周囲としてロボットの簡略化された仮想形状を選択することによって行われる。
これは、ロボットのすべての点が完全に円内にあり、円の中心点が、ロボットの中心点に対応することを意味する(図13、外接円102参照)。したがって、ロボットは、静止しているときに経路P上の任意の点で回転することができる。ここで、ロボットの仮想形状101は、実際のロボット100よりも広くすることができ、その結果、2つの障害物間の狭い通路を通過しない。
代替的または追加的に、経路Pの計画は、「楽観的に」行うこともできる。
この場合、例えば、直径がロボットの幅に対応する円形が、簡略化された仮想的な輪郭として想定される。これにより、経路が少なくとも2つの障害物の間の中点を通過するときに、ロボットは、これら障害物の間を通過することが保証される。これは理想的な地図データにのみ適用されることに注意すべきである。ただし、実際には、2つの障害物の前に到着したときに、2つの障害物間の経路を辿るのに十分なスペースがないと判断されることがある。また、ロボットの形状が複雑な場合、計画軌道Pを辿るために必要な回転ができない場合がある。
「悲観的な」アプローチの欠点は、一部の環境または関連する地図では、実際には可能であるにも関わらず、出発点から目的地への経路が見つからないことである。「楽観的な」アプローチの欠点は、実際にはロボットが移動できない、または移動が困難な経路が見つかることである。簡略化された仮想的な輪郭を具体的に選択することで、「楽観的な」アプローチと「悲観的な」アプローチの間を任意に段階的に選択できる。
経路計画は、前述のアプローチ(楽観的、悲観的)の適切な組み合わせにより実行できる。たとえば、悲観的な計画を最初に行うことができる。これが失敗した場合、「楽観的な」計画が実行され、可能な経路が有るか否かがチェックされる。たとえば、結果を比較するために悲観的および楽観的な計画を実行できる。例えば、計画された経路は、予め定められた基準に従って評価され、最も評価の高い(例えば、最も低い「コスト」の)経路を選択することができる。事前指定可能な基準は、例えば、経路の長さ及び/又は障害物からの距離が考慮される。例えば、「悲観的な」計画された経路が、「楽観的に」計画された経路よりも「わずかに長い」場合、悲観的な経路が選択され得る。「わずかに長い」は、0.1m〜10mなどの一定の可能な迂回や、たとえば1.5〜3倍の固定係数を意味し得る。必要に応じて、仮想形状の別の変種を使用した追加の計画を比較して考慮することができる。
あるいは、「悲観的な」アプローチ(例えば、ロボットを完全に包囲する第1の仮想ロボット形状)と「楽観的な」アプローチ(例えば、ロボットを完全には包囲しない第2の仮想ロボット形状)とを1つの計画アプローチで組み合わせることもできる。そのための簡単な例が図13に示されており、これは図12(a)の状況と非常によく似ている。この場合に、コスト(例えば,スカラーコスト値)がロボットの地図の異なる部分領域に割り当てられ、これらのコストは,特にロボットの実際の形状が考慮に入れられる。例えば,ロボットが近くにある障害物のためにロボットの(運動中心の周りの)回転が制限される可能性がある場合にはより高く設定される。図13の例では、距離がΔr以下の位置でのコストはKに等しく、他の部分領域では、Kに等しい(K>K)。この場合に、例えば、値Δrは、ロボット100の「大」円周102(最悪の場合を考慮した仮想形状)の半径と、簡略化されたロボット形状101の半径との間の差である。そして、図12のように、実際の経路計画は、簡略化された仮想ロボット形状101(例えば、ロボットの幅の半分に相当する半径の円、図11参照)に基づいて行うことができ、これは、点の経路計画(図12参照)に縮小することができる。例えば、このようなコストベースの計画では、障害物までの距離に応じて経路のコストを生成することができる(上述したように、障害物が近い場合には、回転が制限される可能性があり、その結果、地図のその部分ではコスト値がより高くなる)。その結果、2つの狭い障害物の間の道(楽観的)の方が、迂回路のある障害物の周りの道(悲観的)よりもコストが高くなり得る。ロボットが障害物の近くに移動する場合のコストを選択することで、許容可能な回り道が定義され、最適化タスクの結果として評価することができる。このようなアプローチのメリットは、楽観的なアプローチで経路があると必ず結果が出ることである。同時に、このようにして得られた経路は、スタート地点とゴール地点の間にある狭い通路と、狭い通路を避けるために必要な迂回路との間で常にバランスをとっている。図13に従った例では、コストKおよびKは、離散的な値(例えば、K=0、K=1)であってもよく、代わりに、K1は、障害物Hまでの距離が減少するにつれて増加してもよい。障害物は、このアプローチでは、障害物によって占有されている領域のコストの実質的に無限大の値を選択されるように考慮される。
ロボット100が経路Pに沿って移動している間に障害物Hとの衝突の可能性が検出された場合、ロボットは、障害物に到達するまで(例えば、安全距離を考慮して)経路を追従し、その後、直接、輪郭追従モードに切り替えることができる。あるいは、ロボットは、障害物を迂回した、元の経路Pに戻る回避経路があるかどうかを確認することができる。
特に、障害物Hと衝突する可能性がある場合の反応は、ロボットの現在のタスクに応じて行うことができる。例えば、床面を処理するための自律移動ロボットの場合、計画された経路の処理中に、ロボットは、障害物にできるだけ接近し、その後、障害物の輪郭に沿って表面を処理することができる。一方、同じロボットが処理対象の割り当てられた領域や基地局に移動する際には、処理対象外の領域を通過することができる。この場合、目標(例えば、割り当てられた領域、基地局)により早く到達するように、障害物Hの周囲の代替経路を決定することができる。
回避経路を決定するために、ロボット100の完全な形状を直接考慮することができる。代替的に、又は、追加的に、ロボット100の簡略化された仮想形状101に基づいて、障害物の周囲の経路が可能であるかどうかを事前に計画することができる。これは、経路が2つの狭い障害物の間を通過する場合に特に役立つ。この際、簡略化された仮想形状101は、当初計画された経路を辿ることができなかったため、より広範な迂回路とそれに接続する経路計画が必要であることを決定することができる。この際に、簡略化された仮想形状101は、2つの障害物の間の元々計画された経路を辿ることができることを決定することができる。この場合、ロボットは、例えば、輪郭追従モードを使用して、ロボットの全形状を考慮して、障害物の間を移動することができる。
回避経路を決定した結果、障害物を一定の距離で安全に回避できる可能性がある。これは特に、さらに大部分が自由になっている領域に単一の障害物がある場合である。他の可能性のある結果は、輪郭追従モード(ロボットの全形状を考慮したモード)で障害物を回避することができるということである。
特に、地図データに基づく輪郭追従モードを使用する場合、ロボットが障害物を回避して元の経路Pに戻ることができるかどうかを確認するための変更例は、輪郭追従走行のコースの予測(またはシミュレーション)である。これは、特に、目的地への最速の経路を見つけるために輪郭追従モードを開始する多種の可能性がある場合に使用することができる(特に、右または左を回って回避するなど)。
迂回経路を計画するために、環境を高精度に記述した地図データが用いられる。これは、例えば、第2の地図に収集された環境に関する情報を用いて行われる。メモリと計算能力のために必要なリソースを制限するために、回避経路の計画は、小さな領域(例えば、半径0.5〜2mのロボットの周りの円)に制限することができる。
100…自律移動ロボット
110…基地局
120…センサユニット
140…通信ユニット
145…通信接続
150…制御ユニット
151…制御ソフトウェアモジュール
152…ナビゲーションモジュール
155…プロセッサ
156…メモリ
160…作業ユニット
170…駆動ユニット
200…HMI
300…外部デバイス
d…輪郭追従距離
H…障害物
P…経路
V、W…輪郭

Claims (53)

  1. 第1の輪郭追従モード及び少なくとも1つの第2の輪郭追従モードで動作可能な自律移動ロボットを制御する方法であって、これら輪郭追従モードの各々では、ロボット(100)が輪郭(W、V)に沿って移動する間に、前記ロボット(100)が前記輪郭(W、V)への距離を実質的に一定に維持し、前記方法は、
    前記ロボットが前記輪郭(W、V)を第1の走行方向に追従する第1の輪郭追従モードを開始するステップと、
    前記第1の輪郭追従モードにおいて前記輪郭(W、V)の追従を継続することが衝突を伴わずにできない袋小路状態を検出するステップと、
    前記ロボットが前記輪郭(W、V)を第2の走行方向に追従する第2の輪郭追従モードを開始するステップと、
    基準を決定し評価するステップであって、前記基準が満たされている場合に、前記第2の輪郭追従モードを終了し、前記ロボットが前記第2の輪郭追従モードで動作している間、前記基準を継続的に評価するステップと
    を有する。
  2. 請求項1に記載の方法であって、
    前記輪郭追従モードは、少なくとも2つのパラメータにより特徴付けられ、前記少なくとも2つのパラメータは、走行方向、輪郭追従距離(d)、および任意で、前記ロボットの前記輪郭に面する側面、安全距離、差し迫った衝突を検出するために考慮されるロボットの形状、輪郭に沿った移動を実行するための規則のうちの1つパラメータを含み、
    2つの異なる修正追従モードは、少なくとも1つのパラメータによって区別される。
  3. 請求項1又は請求項2に記載の方法であって、前記袋小路状態を検出するステップは、
    前記輪郭(W)に沿った前記ロボット(100)の移動と前記ロボット(100)の回転が衝突なしでは不可能であることを検出するステップであって、この検出の際に特に前記ロボットの地図に記憶されている位置関連情報が考慮されるステップを有する。
  4. 請求項1乃至請求項3の何れか一項に記載の方法であって、
    前記第2の輪郭追従モードで再び袋小路状態が検出された場合、第3の輪郭追従モードが開始され、
    前記第3の輪郭追従モードを終了する基準が決定され、前記ロボットが前記第3の輪郭追従モードで動作している間、この基準が連続的に評価される。
  5. 請求項4に記載の方法であって、
    前記第3の輪郭追従モードは、前記第2の輪郭追従モードとは、前記輪郭(W)に面した前記ロボットの側面によって区別される。
  6. 請求項1乃至請求項5の何れか一項に記載の方法であって、
    決定された前記基準が満たされたために前記第2の輪郭追従モードが終了したときに、前記第1の輪郭追従モードは継続される。
  7. 請求項1乃至請求項6の何れか一項に記載の方法であって、
    前記輪郭(W)が、実際には存在しないが前記ロボットの地図に含まれる仮想的な障害物によって形成される。
  8. 請求項1乃至請求項7の何れか一項に記載の方法であって、
    基準であって、前記基準が満たされたときに前記第2の輪郭追従モードが終了される基準は、特定の動きを実行する可能性を含む。
  9. 請求項8に記載の方法であって、
    前記特定の動きは、
    特定の角度の回転と、
    特に、前方への特定の距離にわたる並進運動と、
    のうちの少なくとも1つを含む。
  10. 請求項1乃至請求項9の何れか一項に記載の方法であって、
    前記基準を評価することは、
    事前定義可能な規則に従って衝突のない前記ロボットの動作を自動的に計画するステップと、
    計画された前記ロボットの前記動作を実行するステップと、
    前記ロボットの計画された前記動作が衝突なしに実行できたかを確認するステップと、
    を有する。
  11. 請求項10に記載の方法であって、
    前記ロボットの衝突のない前記動作の前記計画は、前記ロボットの地図に格納された障害物に関する位置関連情報が考慮に入れられる。
  12. 請求項10又は請求項11に記載の方法であって、
    事前定義可能な規則に従って前記ロボットの動作を自動的に計画する前記ステップは、
    前記動作が実行された後、障害物の1つの点が前記ロボットから一定の距離、特に輪郭追従距離にあるように回転とその後の並進動作とを計画するステップを有する。
  13. 請求項12に記載の方法であって、
    前記回転は、事前定義可能な最小角度よりも大きい角度で実行される。
  14. 請求項1乃至請求項13の何れか一項に記載の方法であって、
    前記基準が満たされている場合に、前記第2の輪郭追従モードを終了する前記基準を決定する前記ステップ、又は、前記ロボットが前記第2の輪郭追従モードで動作している間、前記基準を継続的に評価する前記ステップは、前記ロボットの地図に格納されている位置関連情報を考慮して行われる。
  15. 請求項1乃至請求項14の何れか一項に記載の方法であって、
    前記第2の輪郭追従モードが実行されている間に、前記第2の輪郭追従モードを終了する前記基準が更新される。
  16. 輪郭追従モードで自律移動ロボットを制御する方法であって、前記輪郭追従モードにおいて、前記ロボット(100)が前記輪郭(W、V)を実質的に輪郭追従距離で追従し、前記輪郭追従モードにおいて前記方法は、
    少なくとも1つの事前定義可能な基準に基づいて、少なくとも3つの異なる基本的な動作を評価するステップと、
    この評価に基づいて前記少なくとも3つの基本的な動作のうちの1つを実行するステップと、
    を有し、
    前記少なくとも3つの基本的な動作のうちの第1の基本的な動作は、前記ロボット(100)の純粋な並進運動であり、
    前記少なくとも3つの基本的な動作のうちの第2の基本的な動作は、前記輪郭(W)に向かう前記ロボット(100)の回転を含み、
    前記少なくとも3つの基本的な動作のうちの第3の基本的な動作は、前記輪郭(W)から離れるロボット(100)の回転を含む。
  17. 請求項16に記載の方法であって、
    前記基本的な動作のうちの少なくとも2つが等しく評価された場合、前記ロボットを前記輪郭(W)により近づける方、又は前記輪郭(W)からより遠ざけない方が選択される。
  18. 請求項16又は請求項17に記載の方法であって、
    基本的な動作の評価は、以前に行われた基本的な動作が考慮される。
  19. 請求項18に記載の方法であって、
    前記評価の際に、前記第2の基本的な動作が行われた後、前記第3の基本的な動作が選択されないようにすることが考慮に入れられ、また、その逆も考慮に入れる。
  20. 請求項16乃至請求項19の何れか一項に記載の方法であって、
    前記基本的な動作の評価において、
    障害物(H)に衝突せずに前記基本的な動作が可能であることと、
    移動中及び/又は移動後の障害物(H)に対する前記ロボットの距離と、
    それぞれの基本的な動作の実行後に、更なる、例えば並進運動の衝突のない実行可能性と、
    のうちの少なくとも1つの基準が考慮される。
  21. 請求項20に記載の方法であって、
    前記障害物(H)が異なる種類を有することができ、前記障害物(H)の種類が評価に考慮される。
  22. 請求項21に記載の方法であって、
    第1の種類の障害物(H)は、前記ロボットのセンサユニット(120)によって検出される障害物(H)を含み、第2の種類の障害物は、実際には存在しないが前記ロボットの地図に含まれる仮想的な障害物である。
  23. 請求項16乃至請求項22の何れか一項に記載の方法であって、
    前記第2及び第3の基本的な動作が、静止した状態での回転を含む。
  24. 請求項16乃至請求項23の何れか一項に記載の方法であって、
    事前定義可能な基準に従って前記3つの基本的な動作のいずれもが実行できないことを検出するステップをさらに有し、
    前記3つの基本的な動作のいずれも実行できないことが検出された場合、前記ロボットは、走行方向及び/又は前記輪郭に面する側面を変更し、及び/又は前記評価の前記基準を変更する。
    を有する。
  25. 請求項24に記載の方法であって、
    前記ロボット(100)は、優先的な走行方向を有し、前記優先的な走行方向が前記優先的な走行方向と反対の走行方向に変更された際、評価の基準が決定され、この評価の基準が満たされた場合、再び前記優先的な走行方向に変更される。
  26. 請求項16乃至請求項25の何れか一項に記載の方法であって、
    前記少なくとも3つの基本的な動作は複数のパラメータによって定義され、前記パラメータは、最適化、特に機械学習によって決定される。
  27. 請求項26に記載の方法であって、
    前記ロボットが特定の事前定義可能な状況で所望の事前定義可能な動作パターンを実行するように、機械学習によって前記パラメータが少なくとも部分的に自動的に決定される。
  28. ロボット使用領域の第1の地図を有する自律移動ロボット(100)を制御する方法であって、前記第1の地図は、少なくとも障害物(H)の位置に関するデータを含み、前記方法は、
    前記ロボット(100)の簡略化された仮想形状(101)を想定して前記第1の地図の目標点への経路(P)を計画するステップと、
    計画された前記経路(P)に沿ってロボットを移動させるステップと、
    計画された前記経路(P)に沿う移動の間に、前記ロボットのセンサユニット(120)によって、前記ロボット(100)の環境の障害物(H)を検出するステップと、
    前記ロボットの実際の形状を考慮して、計画した前記経路(P)が障害物(H)により衝突せずに走行できないと決定するステップと、
    前記ロボットの前記実際の形状を考慮して、前記ロボット(100)の移動を継続するステップと、
    を有する。
  29. 請求項28に記載の方法であって、
    前記ロボット(100)の簡略化された仮想形状(101)は、円で表されており、前記円の中心点が移動せずに前記中心点の周りで前記ロボット(100)が回転可能である。
  30. 請求項29に記載の方法であって、
    前記円の半径は、前記ロボット(100)が前記中心点の周りを回転する際に、前記ロボット(100)の外側の輪郭の少なくとも2点が前記円上を移動するように選択され、例えば、前記円の半径が前記ロボットの幅の半分に対応する。
  31. 請求項30に記載の方法であって、
    前記ロボットの少なくとも一部が前記円の外にある。
  32. 請求項28乃至請求項31の何れか一項に記載の方法であって、
    前記ロボット(100)が計画された前記経路に沿って移動する際に、検出された前記障害物(H)が第2の地図に登録され、前記第2の地図における障害物の位置及び/又は範囲の精度が前記第1の地図におけるよりも高い。
  33. 請求項32に記載の方法であって、
    計画した前記経路(P)が障害物(H)により衝突せずに走行できないと決定する前記ステップ及び前記ロボット(100)の移動を継続する前記ステップは、前記第2の地図に基づく。
  34. 請求項28乃至請求項33の何れか1項に記載の方法であって、
    前記ロボット(100)の簡略化された仮想形状(101)を想定して前記第1の地図の目標点への経路(P)を計画する前記ステップは、
    前記ロボットを完全に含む前記ロボット(100)の第1の仮想形状を想定して前記目標点までの衝突のない経路(P)を計画するステップを有する。
  35. 請求項34に記載の方法であって、
    前記ロボット(100)の簡略化された仮想形状(101)を想定して、前記第1の地図の目標点への経路(P)を計画する前記ステップは、さらに、
    前記第1の仮想形状を想定しての経路計画の際に衝突のない経路が見つからない場合には、前記ロボット(100)の第2の仮想形状を想定して前記目標点までの経路を再度計画するステップであって、前記ロボットの前記第2の仮想形状は、前記ロボットを完全には含まないステップを有する。
  36. 請求項34に記載の方法であって、
    前記ロボット(100)の前記第1の仮想形状は円形である。
  37. 請求項35に記載の方法であって、
    前記ロボット(100)の前記第1の仮想形状及び前記第2の仮想形状は円形を有し、及び/又は前記第1の仮想形状は、前記ロボットをちょうど取り囲み、前記ロボットが静止状態でその中心点の周りに回転できる最小の円に対応する。
  38. 請求項28乃至請求項33の何れか1項に記載の方法であって、
    前記ロボット(100)の簡略化された仮想形状(101)を想定して前記第1の地図の目標点への経路(P)を計画する前記ステップは、
    前記ロボット(100)の第1の仮想形状を想定して、前記目標点への第1の経路を計画するステップと、
    前記第1の仮想形状とは異なる、前記ロボット(100)の少なくとも1つの第2の仮想形状を想定して、前記目標点への少なくとも1つの第2の経路を計画するステップと、
    事前定義可能な基準に従って前記第1の経路と前記少なくとも1つの第2の経路を評価するステップと、
    この評価に基づいて前記第1の経路と前記少なくとも1つの第2の経路からの前記ロボットの後続する動作のための経路(P)を選択するステップと、
    を有する。
  39. 請求項28乃至請求項38の何れか1項に記載の方法であって、
    前記ロボット(100)の簡略化された仮想形状(101)を想定して前記第1の地図の目標点への経路(P)を計画する前記ステップは、
    前記ロボット使用領域内のある領域の走行にコスト関数値を割り当てするステップと、
    前記ロボット(100)の簡略化された仮想形状(101)に対する最小コストの経路を決定するステップと、
    を有し、
    障害物までの経路の距離は、コスト関数値に含まれている。
  40. 請求項39の方法であって、
    特に前記コストは障害物による前記ロボットの回転自由度の制限に依存する。
  41. 請求項39又は請求項40に記載の方法であって、
    前記コスト関数値は、前記第1の地図に含まれる情報に基づいて算出され、特に前記仮想形状は、前記ロボットを完全には含まない円形である。
  42. 請求項28乃至請求項41の何れか一項に記載の方法であって、
    前記ロボットの前記実際の形状を考慮して、前記ロボット(100)の移動を継続する前記ステップは、
    計画された前記経路(P)上の中間目標点を決定するステップと、
    前記ロボットと前記中間目標点との間の経路が空くか、又は終了条件が成立するまで前記障害物の輪郭に沿って移動するステップと、
    を有する。
  43. 請求項42に記載の方法であって、
    前記終了条件は、計画された前記経路(P)及び/又は前記中間目標点からの前記ロボットの距離が考慮されており、
    前記終了条件が満たされた後、前記ロボット(100)は前記ロボット(100)の現在の位置から前記目標点までの新たな経路を計画する。
  44. 請求項43に記載の方法であって、
    前記ロボット(100)の前記終了条件が満たされた後、失敗した試行回数をカウントするカウンタを増加させる。
  45. ロボット使用領域の地図を用いて自律移動ロボット(100)を制御する方法であって、前記地図には、少なくとも、センサユニット(120)によって検出された現実の障害物の位置に関する情報と、仮想的な障害物に関する情報とが含まれており、前記方法は、
    前記ロボット(100)の実際の形状を考慮して、現実の障害物の近傍で前記現実の障害物との衝突を回避するように前記ロボット(100)を制御するステップと、
    前記ロボット(100)の簡略化された仮想形状(101)を考慮して、仮想的な障害物の近傍で前記仮想的な障害物との仮想的な衝突を回避するように前記ロボットを制御するステップと、
    を有する。
  46. 請求項45に記載の方法であって、
    前記ロボット(100)の実際の形状の一部は、前記ロボット(100)の簡略化された仮想形状(101)の外側にある。
  47. 請求項45又は請求項46に記載の方法であって、
    前記ロボット(100)の簡略化された仮想形状(101)は円であり、前記円の中心点が移動せずに前記中心点の周りで前記ロボット(100)が回転可能である。
  48. 請求項47に記載の方法であって、
    前記円の半径は、前記ロボット(100)が前記中心点の周りを回転する際に、前記ロボット(100)の外側の輪郭の少なくとも2点が前記円上を移動するように選択され、例えば、前記円の半径が前記ロボットの幅の半分に対応する。
  49. 請求項45乃至請求項48の何れか一項に記載の方法であって、
    前記ロボット(100)の簡略化された仮想形状(101)は、障害物に対して衝突しないことが可能な任意の位置で前記ロボットが衝突せずに回転できるような形状である。
  50. 輪郭追従モードで自律移動ロボットを制御する方法であって、前記輪郭追従モードにおいて、前記ロボット(100)が前記輪郭(W、V)を実質的に輪郭追従距離で追従し、
    前記ロボットの地図には、少なくとも、センサユニット(120)によって検出された現実の障害物の位置に関する情報と、仮想的な障害物に関する情報とが含まれており、前記ロボットは前記地図内の位置を連続的に決定し、
    前記輪郭追従モードにおいて前記ロボット(100)は、前記輪郭(W、V)に沿って移動し、
    前記輪郭(W、V)は、現実の障害物の形状と仮想障害物の仮想境界の形状によって与えられる。
  51. 請求項50に記載の方法であって、
    前記ロボットと前記輪郭(W、V)の間の距離は、前記地図に格納された情報に基づいて決定される。
  52. 請求項50又は請求項51に記載の方法であって、
    前記輪郭追従距離は、追従する輪郭が仮想的な障害物を表すか否かに依存する。
  53. 請求項1乃至請求項52の何れか一項に記載の方法を実行するように構成された自律移動ロボットのための制御ユニット。
JP2020512007A 2017-09-01 2018-08-31 自律移動ロボットの移動計画 Pending JP2020532018A (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
DE102017120218.8 2017-09-01
DE102017120218.8A DE102017120218A1 (de) 2017-09-01 2017-09-01 Bewegungsplanung für autonome mobile roboter
PCT/EP2018/073497 WO2019043171A1 (de) 2017-09-01 2018-08-31 Bewegungsplanung für autonome mobile roboter

Publications (2)

Publication Number Publication Date
JP2020532018A true JP2020532018A (ja) 2020-11-05
JP2020532018A5 JP2020532018A5 (ja) 2021-08-12

Family

ID=63449477

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2020512007A Pending JP2020532018A (ja) 2017-09-01 2018-08-31 自律移動ロボットの移動計画

Country Status (6)

Country Link
US (1) US20210154840A1 (ja)
EP (1) EP3676680A1 (ja)
JP (1) JP2020532018A (ja)
CN (1) CN111433697A (ja)
DE (1) DE102017120218A1 (ja)
WO (1) WO2019043171A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2021057058A (ja) * 2019-05-21 2021-04-08 株式会社スパイシードローンキッチン 無人移動体を用いた映像処理システム、映像処理方法及び映像処理装置

Families Citing this family (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11835343B1 (en) * 2004-08-06 2023-12-05 AI Incorporated Method for constructing a map while performing work
JP6933167B2 (ja) * 2018-03-14 2021-09-08 オムロン株式会社 ロボットの制御装置
EP3835907A4 (en) * 2018-08-08 2022-04-20 Positec Power Tools (Suzhou) Co., Ltd SELF-MOBILE DEVICE, AUTOMATIC OPERATING SYSTEM AND CONTROL METHOD THEREOF
US11986964B2 (en) * 2018-12-27 2024-05-21 Honda Motor Co., Ltd. Path determination device, robot, and path determination method
US11724395B2 (en) * 2019-02-01 2023-08-15 Locus Robotics Corp. Robot congestion management
CN114450648A (zh) * 2019-09-30 2022-05-06 日本电产株式会社 路径生成装置
US11940800B2 (en) * 2021-04-23 2024-03-26 Irobot Corporation Navigational control of autonomous cleaning robots
CN113238552A (zh) * 2021-04-28 2021-08-10 深圳优地科技有限公司 机器人及其运动方法、装置及计算机可读存储介质
CN113219973B (zh) * 2021-05-08 2022-06-24 浙江工业大学 一种移动机器人的局部路径控制方法
CN113741476A (zh) * 2021-09-14 2021-12-03 深圳市优必选科技股份有限公司 机器人平滑运动控制方法、装置及机器人
CN113966976B (zh) * 2021-09-28 2023-09-22 安克创新科技股份有限公司 清洁机器人及用于控制清洁机器人行进的方法
CN114442629B (zh) * 2022-01-25 2022-08-09 吉林大学 一种基于图像处理的移动机器人路径规划方法
CN114617477B (zh) * 2022-02-15 2023-08-18 深圳乐动机器人股份有限公司 清洁机器人的清洁控制方法及装置
CN115145261B (zh) * 2022-04-07 2024-04-26 哈尔滨工业大学(深圳) 人机共存下遵循行人规范的移动机器人全局路径规划方法
CN115444328B (zh) * 2022-07-29 2023-09-29 云鲸智能(深圳)有限公司 障碍物探索方法、清洁机器人及存储介质

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0496720A (ja) * 1990-08-10 1992-03-30 Matsushita Electric Ind Co Ltd 移動体の壁沿い移動装置並びにこれを有する床面掃除機
JP2009169802A (ja) * 2008-01-18 2009-07-30 Panasonic Corp 自律走行装置およびプログラム
JP2016201095A (ja) * 2015-04-09 2016-12-01 アイロボット コーポレイション 移動ロボットの移動の制限
US20160370803A1 (en) * 2015-06-18 2016-12-22 Kinpo Electronics, Inc. Positioning navigation method and electronic apparatus thereof
JP2017004230A (ja) * 2015-06-09 2017-01-05 シャープ株式会社 自律走行体、自律走行体の狭路判定方法、狭路判定プログラム及びコンピュータ読み取り可能な記録媒体
JP2017503267A (ja) * 2013-12-18 2017-01-26 アイロボット コーポレイション 自律移動ロボット
JP2017080449A (ja) * 2007-05-09 2017-05-18 アイロボット コーポレイション 自律型ガバレッジロボット

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8355818B2 (en) * 2009-09-03 2013-01-15 Battelle Energy Alliance, Llc Robots, systems, and methods for hazard evaluation and visualization
DE102008050206A1 (de) * 2008-10-01 2010-05-27 Micro-Star International Co., Ltd., Jung-Ho City Routenplanungsverfahren und Navigationsverfahren für eine mobile Robotervorrichtung
WO2012099694A1 (en) * 2010-12-30 2012-07-26 Irobot Corporation Coverage robot navigation
KR101970962B1 (ko) * 2012-03-19 2019-04-22 삼성전자주식회사 아기 감시 방법 및 장치
EP2752726B1 (de) * 2013-01-08 2015-05-27 Cleanfix Reinigungssysteme AG Bodenbehandlungsmaschine und Verfahren zum Behandeln von Bodenflächen
KR102527645B1 (ko) * 2014-08-20 2023-05-03 삼성전자주식회사 청소 로봇 및 그 제어 방법
US9630319B2 (en) * 2015-03-18 2017-04-25 Irobot Corporation Localization and mapping using physical features
DE102015119865B4 (de) * 2015-11-17 2023-12-21 RobArt GmbH Robotergestützte Bearbeitung einer Oberfläche mittels eines Roboters
US10401872B2 (en) * 2017-05-23 2019-09-03 Gopro, Inc. Method and system for collision avoidance

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0496720A (ja) * 1990-08-10 1992-03-30 Matsushita Electric Ind Co Ltd 移動体の壁沿い移動装置並びにこれを有する床面掃除機
JP2017080449A (ja) * 2007-05-09 2017-05-18 アイロボット コーポレイション 自律型ガバレッジロボット
JP2009169802A (ja) * 2008-01-18 2009-07-30 Panasonic Corp 自律走行装置およびプログラム
JP2017503267A (ja) * 2013-12-18 2017-01-26 アイロボット コーポレイション 自律移動ロボット
JP2016201095A (ja) * 2015-04-09 2016-12-01 アイロボット コーポレイション 移動ロボットの移動の制限
JP2017004230A (ja) * 2015-06-09 2017-01-05 シャープ株式会社 自律走行体、自律走行体の狭路判定方法、狭路判定プログラム及びコンピュータ読み取り可能な記録媒体
US20160370803A1 (en) * 2015-06-18 2016-12-22 Kinpo Electronics, Inc. Positioning navigation method and electronic apparatus thereof

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2021057058A (ja) * 2019-05-21 2021-04-08 株式会社スパイシードローンキッチン 無人移動体を用いた映像処理システム、映像処理方法及び映像処理装置
JP7355390B2 (ja) 2019-05-21 2023-10-03 株式会社スパイシードローンキッチン 映像処理装置、映像処理方法及び映像処理プログラム

Also Published As

Publication number Publication date
EP3676680A1 (de) 2020-07-08
WO2019043171A1 (de) 2019-03-07
DE102017120218A1 (de) 2019-03-07
US20210154840A1 (en) 2021-05-27
CN111433697A (zh) 2020-07-17

Similar Documents

Publication Publication Date Title
JP2020532018A (ja) 自律移動ロボットの移動計画
US20230409032A1 (en) Method for controlling an autonomous, mobile robot
US11262200B2 (en) Boolean satisfiability (SAT) reduction for geometry and kinematics agnostic multi-agent planning
Köseoğlu et al. Design of an autonomous mobile robot based on ROS
US10296012B2 (en) Pre-computation of kinematically feasible roadmaps
JP6811258B2 (ja) ロボット車両の位置測定
JP2021535485A (ja) 自律移動ロボットによるロボット使用領域の探索
CN111328386A (zh) 通过自主移动机器人对未知环境的探察
US20200397202A1 (en) Floor treatment by means of an autonomous mobile robot
JP2022511359A (ja) ウェイポイントマッチングを用いた自律マップトラバーサル
Ravankar et al. A hybrid topological mapping and navigation method for large area robot mapping
Al-Mutib et al. Stereo vision SLAM based indoor autonomous mobile robot navigation
US20220244741A1 (en) Semantic Models for Robot Autonomy on Dynamic Sites
Romero-Martí et al. Navigation and path planning using reinforcement learning for a Roomba robot
Mastrogiovanni et al. Robust navigation in an unknown environment with minimal sensing and representation
Bauer et al. Sonar feature based exploration
Andersson et al. ISR: An intelligent service robot
Mantha et al. Investigating the fiducial marker network characteristics for autonomous mobile indoor robot navigation using ROS and Gazebo
Özçelikörs et al. Kinect based Intelligent Wheelchair navigation with potential fields
Naveed et al. Analysis of indoor robot localization using ultrasonic sensors
JP2011198173A (ja) ロボットシステム
Hsu et al. A graph-based exploration strategy of indoor environments by an autonomous mobile robot
WO2022259600A1 (ja) 情報処理装置、情報処理システム、および情報処理方法、並びにプログラム
Rojas et al. Integration of algorithms for maps construction and simultaneous localization in a mobile robot
Charabaruk et al. Design and development of an autonomous omnidirectional hazardous materials handling robot

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210630

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20210630

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20220810

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20220830

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20230323