JP2021527889A - 自律移動ロボットと自律移動ロボットの制御方法 - Google Patents

自律移動ロボットと自律移動ロボットの制御方法 Download PDF

Info

Publication number
JP2021527889A
JP2021527889A JP2020570544A JP2020570544A JP2021527889A JP 2021527889 A JP2021527889 A JP 2021527889A JP 2020570544 A JP2020570544 A JP 2020570544A JP 2020570544 A JP2020570544 A JP 2020570544A JP 2021527889 A JP2021527889 A JP 2021527889A
Authority
JP
Japan
Prior art keywords
sensor
autonomous mobile
navigation
robot
mobile robot
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
JP2020570544A
Other languages
English (en)
Other versions
JPWO2019241811A5 (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 JP2021527889A publication Critical patent/JP2021527889A/ja
Publication of JPWO2019241811A5 publication Critical patent/JPWO2019241811A5/ja
Pending legal-status Critical Current

Links

Images

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
    • 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/0055Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots with safety arrangements
    • 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/0238Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means using obstacle or wall sensors
    • 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/0272Control of position or course in two dimensions specially adapted to land vehicles using internal positioning means comprising means for registering the travel distance, e.g. revolutions of wheels

Landscapes

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

Abstract

【課題】
安価で再利用可能なナビゲーション及び堅牢な安全機構の提供。
【解決手段】
制御信号に従ってロボットを動かす駆動ユニットと、ナビゲーション特徴を検出するナビゲーションセンサと、ナビゲーションセンサからの情報を受信し、ロボットの動きを計画するナビゲーションユニットと、ナビゲーションユニットによって計画された動きを表す動き情報に基づいて制御信号を生成する制御ユニットと、制御ユニットに結合された更なるセンサと、を有する自律移動ロボットが開示されいる。制御ユニットは、更なるセンサからの更なるセンサ情報を前処理し、前処理された更なるセンサ情報を予め定義されたフォーマットでナビゲーションユニットに提供する。ナビゲーションユニットによるロボットの動きの計画は、ナビゲーションセンサからの情報と、制御ユニットによって提供される前処理されたセンサ情報に基づいて行われる。
【選択図】図2

Description

本発明の実施形態は、表面処理(例えば、床の清掃)、例えば、物体の運搬または領域の監視および検査を行うロボットなどの自律移動サービスロボット、およびそのような自律移動ロボットの制御方法に関する。
近年、自律移動式ロボット、特にサービスロボットは、家庭環境だけでなく職場環境でもますます使用されている。例えば、自律移動ロボットは、床面の清掃、建物の監視、位置および活動に依存しない通信の実現、または物体の輸送に使用できる。
その際に、SLAM(Simultaneous Localization and Mapping:同時位置特定およびマッピング)アルゴリズムを使用してターゲットのナビゲーションをするため環境の地図を生成するシステムがますます使用されている(例えば、非特許文献1参照)。ロボットの制御と監視に使用されるアルゴリズムは、使用されるセンサとアクチュエータ、およびロボットの特定の形状に関して高度に最適化され得る。これには、実装されたソフトウェアが大規模な適応開発でしか再利用できないという欠点がある。別のアプローチでは、さまざまなハードウェア構成をサポートするため、ソフトウェアに様々なレベルの抽象化が組み込まれる。これらの解決は、多くの場合、計算量が多いため、より高価なハードウェアが必要になる。
BH Durrant−Whyte and T. Bailey著、「Simultaneous Localization and Mapping (SLAM): Part I The Essential Algorithms」、IEEE Robotics and Automation Magazine、第13巻、第2号、99〜110頁、2006年6月
ますますインテリジェントなシステムを開発し市場に出すという要求と共に、自律移動ロボットで使用される行動ルーチンの複雑さは絶えず増大している。しかし、複雑さが増すと、通常は、多くの複雑なソフトウェアアプリケーションと同様に、エラーに対し動作異常を起こす可能性が高くなる。これは、ロボットが危険な状況を検出するためのセンサを有しているにもかかわらず、例えば故障、認識されないプログラミングエラーまたは外部からの望ましくない影響により、ナビゲーションソフトウェア及び制御ソフトウェアが、検出された危険な状況に適切に応答しないことを意味する。ロボットが考えられるすべての危険な状況に適切かつ正確に反応するということを証明することは、ナビゲーションソフトウェア及び制御ソフトウェアの複雑さが増すにつれてかなりの労力を要することになる。このような機能安全性の証明は、特定の用途では法律で要求される場合がある。機能安全性の要求もさまざまな規格の対象となっている(例えば、EN/IEC 61508およびEN/IEC 62061)。
したがって、本発明の基礎となる目的は、とりわけ、安価で再利用可能なナビゲーションソリューション、および自律移動ロボットのための堅牢な安全機構を有する自律移動ロボット及び対応する制御方法を提供することである。
上記目的は、請求項1に記載の自律移動ロボット及び請求項12に記載の方法によって達成される。様々な例示的な実施形態及びさらなる開発は、従属請求項の主題である。
以下に、自律移動ロボットが記載される。一実施形態によれば、自律移動ロボットは、制御信号を受信し、前記制御信号に従って前記自律移動ロボットを動かすように構成された駆動ユニットと、ナビゲーション特徴を検出するためのナビゲーションセンサと、ナビゲーションセンサに結合されたナビゲーションユニットと、を有する。このナビゲーションユニットは、ナビゲーションセンサから情報を受信し、自律移動ロボットの動きを計画するように構成される。自律移動ロボットは、さらに、ナビゲーションユニットによって計画された動きを表す動き情報を受信し、動き情報に基づいて制御信号を生成するように構成された制御ユニットを有する。自律移動ロボットは、さらに、制御ユニットに結合され、更なるセンサを有し、制御ユニットは、更なるセンサから更なるセンサ情報を受信する。制御ユニットは、更なるセンサ情報を前処理し、前処理されたセンサ情報を予め定義されたフォーマットでナビゲーションユニットに提供する。ナビゲーションユニットによる自律移動ロボットの動きの計画は、ナビゲーションセンサからの情報と、制御ユニットから提供された前処理されたセンサ情報に基づいて行われる。このように構成されたロボットは、ナビゲーションユニットと制御ユニットを完全に機能的に分離することができる。さらに、対応する方法が記載される。
安価で再利用可能なナビゲーションソリューション、および自律移動ロボットのための堅牢な安全機構を有する自律移動ロボット及び対応する制御方法が提供できる。
例として、様々な自律移動ロボット及び様々な起こり得る危険な状況を示している。 自律移動ロボットの構成を例示するブロック図である。 自律移動ロボットの制御ユニットの例示的な構造と、ナビゲーションユニットとモータ制御とのインターフェースのブロック図である。 自律移動ロボットの下面の一例を示す上面図である。
本発明は、図に示される実施形態を用いて、以下でより詳細に説明される。図は必ずしも縮尺通りではなく、本発明は示されている態様に限定されない。むしろ、本発明の基礎となる原理を説明することに重点が置かれている。
図1は、自律的に活動を実行し、地図によりその環境をナビゲートする自律移動ロボット100の様々な例、ならびに起こり得る危険な状況を示している。本願の意味における活動は、その環境におけるロボットの単なるナビゲーションを超えたものであり、例えば、床処理、床清掃、検査および監視活動、搬送作業、またはユーザの娯楽のための活動などが含まれる。
図1(a)は、例えば、床面を掃除、特に床面のゴミを吸い取るために構成された掃除ロボットを示す図である。掃除ロボットは、通常、少なくとも3つの車輪(通常、そのうち2つが駆動される)で前方に移動する(図1(a)には図示せず)。さらに、掃除ロボットの裏側には、通常、ロボット100が床面上を移動する間に汚れを集めるための回転ブラシ及び/又は吸引ユニットなどが設けられている。図1(b)に示すように、階段の段差のような立ち下がりエッジを越えて転倒すると、掃除ロボットが損傷する可能性がある。加えて、ロボット100が、床面上に落下したり近くの物体又は人間にぶつかったりすると、床面、近くの物体、又は人間にも損傷が生じる可能性がある。したがって、一部の自律移動ロボット100は、転落を回避するために階段の段差などの立ち下がりエッジを適時に検出することができる床面距離センサ(図1には図示せず)を有している。床面距離センサは、床検出センサ又は、床センサとも呼ばれる。
図1(c)はテレプレゼンスロボットの一例を示す図である。テレプレゼンスロボットは、通常、例えば、ディスプレイ、スマートフォン、タブレットなどのようなインターフェース101(ヒューマン・マシン・インターフェース(HMI)としても知られるユーザインターフェース)を有する。このインターフェース101は、ロボット100の垂直アーム102の上端に取り付けられている。垂直アーム102の下端には、駆動モジュール103を有するロボット本体が取り付けられている。ロボット100のスリムな形状の構成およびインターフェース101の垂直アーム102の上端部への取り付けにより、このようなテレプレゼンスロボットは比較的高い重心を有する。基本的に、ロボットは自身でバランスを取る。しかしながら、例えば、急勾配の表面上を移動するとき、ロボット100はひっくり返る可能性があり、これにより装置が損傷を受ける可能性がある。加速度が高すぎたり、敷居や段差を超えたりした場合でも、ロボット100の転倒が発生する可能性がある。また、ロボット100が傾いたり、転倒したりすると、周囲の床面、近くの物や人が損傷する可能性がある。テレプレゼンスロボットの傾く一例は、図1(d)に示されている。このため、テレプレゼンスロボットは、ロボット100の状態(特に傾斜)、加速度および/または角速度を決定するように構成されたセンサ(図1には図示せず)を有することができる。同様に、テレプレゼンスロボットは、ロボットの走行挙動を適合させてロボットの傾きを回避するために敷居(例えば、ドア敷居)又は段差を検出するセンサを含むことができる。
図1(e)は、補助ロボット、特に運搬ロボットの一例を示す図である。運搬ロボットは通常、運搬台104を有し、その上に、皿やグラスなどの搬送される物体が置かれる。運搬ロボットの裏面には、例えば車輪(図1(e)には示されていない)が設けられ、これにより運搬ロボットは移動することができる。このようなロボット100は、例えば、日常生活の中で高齢者を支援することができ、したがって高齢者が独立して生活することを可能にする。運搬ロボットにとって、輸送されるべき物体またはロボット100全体の傾斜を回避するために衝突が回避されることが基本的に重要である。この目的のために、ロボット100は、ロボット100の環境内の静止または移動する物体または人を検出するように(場合によっては関連センサ信号処理を用いて)構成された多種多様なセンサ(例えばレーザ距離計、光学三角測量センサ、カメラなど)を有することができる。
したがって、基本的に、様々な方法を使用して、ロボットをその使用領域で自律的に移動させ、その際に自律移動ロボット100にとって起こり得る危険な状況を認識し、認識された危険な状況に適切に対応することによって事故を回避することが可能である(それによって事故は回避されるか、少なくとも軽減される)。このようなロボット100は通常、自律移動ロボット100を制御するためのナビゲーションソフトウェア及び制御ソフトウェアを含む。しかしながら、制御モジュール内のプロセッサによって実行されるそのようなナビゲーションソフトウェア及び制御ソフトウェアは、ますます複雑になりつつある。ナビゲーションソフトウェア及び制御ソフトウェアの複雑さが増すと、望ましくないプログラミングエラーのリスクが高まる。さらに、ますます多くの自律移動ロボット100がインターネットに接続されている。これにより、例えばユーザがロボット100の近くにいなくても、ロボット100を制御することができる。同様に、ロボット100のファームウェア、特にナビゲーションソフトウェア及び制御ソフトウェアはインターネットを介して更新することができる。たとえば、ソフトウェアアップデートは自動的に、または、ユーザの要求に応じて、ダウンロードすることもできる。この機能は、オーバ・ジ・エア・プログラミング(OTAプログラミング)、OTAアップグレード、またはファームウェア・オーバ・ジ・エア(FOTA)とも呼ばれる。
しかしながら、自律移動ロボット100をインターネットに接続することは、見知らぬ人がロボット100にアクセスする危険(例えば、ロボットのいわゆるハッキング、クラッキング、またはジェイルブレイク)をもたらし、自律移動ロボット100が危険な状況に正しく反応しないように自律移動ロボット100に影響を与え、それにより事故が発生する恐れがある。ナビゲーションソフトウェア及び制御ソフトウェア全体は、ロボット100自体、またはロボット内に配置された記憶媒体に格納することができる。しかしながら、ナビゲーションソフトウェア及び制御ソフトウェアの一部をクラウドサーバ等の外部装置に保存することも可能である。ナビゲーションソフトウェア及び制御ソフトウェアの一部が外部装置に格納されている場合、ロボット100の一部は一般にもはやリアルタイム対応ではない。ロボット100は、そのナビゲーションソフトウェア及び制御ソフトウェアのアルゴリズムが非決定論的モンテカルロ法または、例えばディープラーニング学習(ディープ機械学習としても知られる)などの機械学習を使用していることが知られている。モンテカルロアルゴリズムは、上限のある確率で誤った結果を出すことが許されているランダム化されたアルゴリズムである。通常は、決定論的アルゴリズムと比較して、モンテカルロアルゴリズムは効率的である。ディープラーニングは、通常、入力層と出力層との間に多数の隠れ層を有し、それによって大規模な内部構造を有する、人工ニューラルネットワークの一種の最適化方法である。モンテカルロアルゴリズムでも機械学習でも、因果関係は最初から決定されないため理解が困難である。このため、ロボット100の安全な動作を証明し、事故を回避するためにロボット100のナビゲーションソフトウェア及び制御ソフトウェアがいかなる危険な状況においても正しくかつ適時に反応することを保証することは非常に困難である。同時に、そのような新しいロボット制御方法の使用は、自律移動ロボット100をより知的にするために必要である。改善された知能は、ロボット100がユーザの生活およびそれらの環境により容易に適合することを可能にする。
したがって、ロボット100の知能を制限することなく、安全が証明可能であるロボットの振る舞いを可能にすることが重要であるかまたは必要であり得る。一実施形態によれば、自律移動ロボット100は、前記ナビゲーションソフトウェアを使用して経路及び作業計画を実行するナビゲーションユニットに加えて、リスク検出モジュールとも呼ばれる安全モジュールを含んでいる。ここに記載の例では、安全モジュールはナビゲーションモジュールから機能的に独立して動作する。基本的に、安全モジュールは、ナビゲーションモジュールから独立してロボットの行動を監視し、危険な状況を認識するように構成されている。検出された危険状況におけるロボットの行動が「誤り」、「危険」、または「不適切」であると見なされた場合、安全モジュールは適切な対策(安全対策)を開始することができる。対策としては、例えば、ロボット100を停止させたり、ロボット100の進行方向を変えたりすることが考えられる。この際、正しい動作を決定することよりも、安全ではないためどの動作を実行すべきでないかを決定することが通常容易であるという事実が利用される。
自律移動ロボットは、プライベート及びジネスの環境でますますサービスを提供している。基本的な機能の一つは、適切なセンサを用いて環境の地図を作成し、その地図を利用して自律的にナビゲーションを行うことである。ロボット工学のさらなる開発における根本的な問題は、使用されるソフトウェアとアルゴリズムが、駆動装置のモータ又はその他活動に必要な作業ユニット及びロボットに組み込まれたセンサなどの基盤となるハードウェアと強く結びついていることである。新しいロボットの構築におけるソフトウェアの再利用は、このような強い結びつきによって困難になっている。
この問題には2つのアプローチが知られている。1つは、ロボットの移動に必要なすべての要件を提供するモバイルプラットフォームを利用できるようにすることである。新しいアプリケーションは、このプラットフォーム上に構築する必要があり、このアプローチは柔軟性に欠けるものとなる。もう1つのアプローチは、ハードウェアに依存したモジュールとハードウェアに依存しないモジュールを分離して、ソフトウェアを強力にモジュール化することである。これは、高レベルのハードウェア抽象化が必要となる場合があり、通常、システムのパフォーマンスに悪影響を及ぼす。
対照的に、本発明の一実施形態に従って追求されるアプローチは、特定のハードウェアと関連するアルゴリズムの機能的な分離を目指している。これは、先に説明したナビゲーションユニットと安全モジュールの分離と組み合わせることができる。
図2は、機能的に分離された複数のユニットを有する自律移動ロボット100の例示的な構造をブロック図で示している。一般に、ユニットは、独立したアセンブリ(ハードウェア)、特定のロボット使用領域で所望のタスクを実行するロボット100を制御するためのソフトウェアのコンポーネント、又は、両方の組み合わせ(例えば、接続された周辺コンポーネントを備えた専用ハードウェア及び適切なソフトウェア及び/又はファームウェア)である。
本実施形態では、自律移動ロボット100は、駆動ユニット170を含み、この駆動ユニット170は、例えば、電動モータ、歯車、車輪などを含み得る。ロボット100は、例えば、床面の清掃またはアイテムの輸送などの特定のプロセスを実行する作業ユニット160(プロセスユニット)をさらに含むことができる。作業ユニット160は、例えば、床面を清掃するための清掃ユニット(例えば、ブラシ、吸塵装置)、トレイとして設計された高さ調整可能及び/又は旋回可能な運搬台、または物体をつかんで輸送するための把持アームであってもよい。テレプレゼンスロボットや監視ロボットなどの場合、作業ユニット160は必ずしも必要ではない。例えば、テレプレゼンスロボットは通常、空間的に互いに離れた複数の人の間で通信するために、たとえばマイク、カメラ、画面などを有するマルチメディアユニット(図1、インターフェース101を参照)を備え、ヒューマン・マシン・インターフェース200に接続された複雑な通信ユニット130を備えている。別の例は、特別なセンサ(例えば、カメラ、モーションセンサ、マイクロフォン)を使用して監視走行で特定の(異常な)イベント(例えば、火災、光、無許可の人など)を検出し、それに応じて制御ステーションに通知できる監視ロボットである。
ロボット100は、ヒューマン・マシン・インターフェース(HMI)200及び/又は他の外部デバイス300への通信接続を確立するための通信ユニット130をさらに含むことができる。通信接続は、例えば、直接無線接続(例えば、ブルートゥース(登録商標))、ローカル無線ネットワーク接続(例えば、WiFiまたはZig−Bee)、またはインターネット接続(例えば、クラウドサービスへ)であってもよい。ヒューマン・マシン・インターフェース200としては、例えば、タブレットPC、スマートフォン、スマートウォッチ、コンピュータ又はスマートテレビが用いられる。場合によっては、ヒューマン・マシン・インターフェース200は、ロボット100に直接統合されてもよく、キー、ジェスチャ、及び/又は音声入出力を介して操作されてもよい。前述の外部ハードウェア及びソフトウェアの少なくとも一部分がヒューマン・マシン・インターフェース200に配置されてもよい。外部デバイス300の例は、計算および/またはデータを交換できるコンピュータおよびサーバ、追加情報を提供する外部センサ、または自律移動ロボット100が恊働及び/又は情報を交換する他の家電製品(例えば、他のロボット)である。例えば、通信ユニット130を介して、自律移動ロボット100に関する情報(例えば、バッテリ状態、現在の作業指示、地図情報など)が提供されてもよく、又は、例えば、自律移動ロボット100の作業指示に関連する命令(例えば、ユーザコマンド)が受信されてもよい。
図2に図示された例によれば、ロボット100は、情報を交換するように構成されたナビゲーションユニット140及び制御ユニット150を有し得る。この際に、制御ユニット150は、ナビゲーションユニット140によって生成された移動情報(動き情報)及び作業情報を受信する。移動情報は、例えば、計画された経路ポイント、経路セグメント(例えば円弧)、または速度情報である。経路ポイントは、例えば、現在のロボットの姿勢(姿勢は位置と向きを表す)を基準に指定することができる。例えば、経路セグメントの場合は、移動すべき距離と回転角度を指定することができる(距離がゼロの場合はその場で回転し、回転角度がゼロの場合は直進する)。速度情報としては、例えば、予め定められた時間駆動される並進速度と角速度とを用いることができる。このように、ナビゲーションユニット140は、特定の移動(例えば、特定の経路セグメント)を前もって計画し、これを(移動情報として)制御ユニット150に伝達する。制御ユニット150は、移動情報から駆動ユニット170に対する制御信号を生成するように構成されている。これらの制御信号は、駆動部のアクチュエータ(特にモータ)を制御するのに適した全ての信号とすることができる。例えば、差動駆動装置の左右の車輪の必要回転数であってもよい。代替的に、電圧及び/又は電流を変更することにより、モータを直接制御することができる。原則として、ナビゲーションユニット140から受信した移動情報から制御信号を生成するためには、ロボットの特定のハードウェア構成(アクチュエータの種類および位置)が知られていなければならないが、移動情報は、より抽象的なレベルで、主として使用されているハードウェアとは独立して決定される。このように、駆動ユニット160が変更された場合、必要な適応開発は制御ユニット150に限定される。
移動情報と同様に、作業情報を作業ユニット160の制御信号に変換してもよい。作業情報は、例えば、作業ユニットがアクティブであるか、どのような能力でアクティブであるかを記述することができる。例えば、作業ユニット160は、回転ブラシや吸引ユニットを備えた清掃ユニットであってもよい。作業情報には、清掃ユニットが現在アクティブであるかどうか、どの程度の強さで作業すべきかなどが含まれている。これにより発生した制御信号は、例えば、ブラシや吸引ユニットのモータの動力を直接制御する。ナビゲーションユニット140は、特に、ナビゲーションセンサ125から提供された情報を、前述した移動計画の立案や、ロボット使用領域の地図の構築・更新に利用する。このようなナビゲーションセンサ125は、例えば、非接触型の光センサ(例えば、三角測量センサ)であり得る。
さらに、制御ユニット150は、ロボットに固有のセンサ情報を収集する制御センサ120から情報を収集し得る。これには、例えば、ロボットの近くの環境における安全上重要な状況を検出するための安全センサ122が含まれる。安全センサの一例としては、前述した立ち下がりエッジを検出するための床面距離センサが挙げられる。他の安全センサ122は、障害物との接触を検出するための触覚センサ(例えば、接触スイッチ)、またはロボットの近くの障害物を検出するための近距離センサ(例えば、赤外線センサ)であり得る。これにより、障害物との意図しない衝突を良好に検出することができる。制御センサ120の別の例としては、モーションセンサ123があり、これは、制御ユニット150によって特別に制御されるロボット100の動きを監視するために使用され、この動きは、実際には、ナビゲーションユニット140によって計画された動きと正確には一致しない。これには、例えば、ホイールエンコーダなどの走行距離計、加速度計、ジャイロスコープ(例えば、慣性計測ユニット(IMU)に統合されたもの)などが含まれる。制御センサ120の別の例は、ロボット100の傾き及びその変化を決定するための姿勢(位置)センサである。制御センサ120の他の例としては、ロボットの各部の状態を検知するためのステータスセンサ124が挙げられる。これには、例えば、駆動ユニットの消費電力が決定される電流計や電圧計などが含まれる。他のステータスセンサ(状態センサ)は、ロボットが床面に接触しているかどうかを判断するための車輪接触スイッチや、ブラシやゴミ入れなどの部品の有無を示すスイッチを含んでもよい。
制御センサ120の測定値は、制御ユニット150によって検知され、評価される。その結果は、標準化された形式でナビゲーションユニット140に提供され得る。これは、規則的な間隔で行ってもよいし、周期的な間隔で行ってもよいし、ナビゲーションユニット140からの要求があった後に行ってもよい。情報の種類はセンサに依存し、センサに典型的なセンサモデルにマッピングすることができる。例えば、差動駆動装置の場合、オドメトリデータには、車輪の1回転(ホイールエンコーダ)の端数を記述することができる。これにより、エンコーダに属する車輪がどれだけ距離を移動したかを判断することができる。差動駆動装置の両輪の組み合わせとその位置によって、走行距離と向きの変化が生じる。ナビゲーションモジュール140に渡されるオドメトリ情報は、最後の情報以降のロボットの位置及び向きの変化を示している。例えば、床面距離センサを用いて立ち下がりエッジを判定することができ、この判定には、多くの測定原理を用いることが可能である。制御ユニット150は、床面距離センサからの生データに基づいて、いずれかのセンサが立ち下がりエッジを検出したか否かを判定する。検出された立ち下がりエッジの位置は、ロボットの(例えば、差動駆動装置の運動中心から始まる)固定座標系に対する、トリガーされた床面距離センサの位置の形でナビゲーションユニット140に送信されてもよい。あるいは、センサに関連付けられた番号(ID)をナビゲーションユニット140に送信してもよい。ナビゲーションユニット140において、この番号(ID)から、予め決定されたパラメータからの、トリガーされた床面距離センサに関連付けられた位置が決定される。関連するパラメータ(センサの番号と位置)は、例えばナビゲーションユニットの初期化中にロードすることができる。これにより、データトラフィックが削減され、計算はナビゲーションユニット内のより強力なプロセッサに移行される。このように、制御センサ120によって提供される情報は、特定のセンサとは独立した抽象化された形でナビゲーションユニット140に渡される。
このようなセンサの他の例としては、障害物(例えば、衝突)との接触を検出するための触覚センサが挙げられる。検出された接触に関する対応する情報は、イベントが検出された場合に、(立ち下がりエッジが検出された場合と同様に)トリガーされたセンサの位置または番号(ID)を用いて送信できる。衝突を回避するセンサは、接触することなく近接する障害物を検出できる。このために、例えば、赤外線信号を発する赤外線センサが使用される。その反射から障害物の有無や距離を推測することができる。これらのセンサについては、センサ位置に加えて、例えば、障害物が確実に存在しない距離をナビゲーション装置に送信することができる。
図2に示された例によれば、制御ユニット150からのセンサ情報に加えて、ナビゲーションユニット140はまた、ロボットが自分自身を方向付けるために使用することができるロボットの環境に関する情報を提供する1つ以上のナビゲーションセンサ125からの直接的なセンサ測定値を受信する。これは、(単数又は複数の)センサ125を用いて、地図を構築するのに適したナビゲーション特徴の位置が決定され得ることを意味す
る。このようなナビゲーションセンサ125は、例えば、より長い距離の物体までの距離を非接触で測定するためのセンサであり、例えば、特にレーザ距離センサまたは3Dカメラのように、三角測量または飛行時間測定によって距離を決定するセンサである。これらのセンサは、障害物の位置に関する情報を提供し、地図上に記録することができる。追加的に又は代替的に、ナビゲーションセンサ125は、ロボットの周囲の環境の画像を提供するカメラであってもよい。画像は直接ナビゲーション特徴として機能し得る。追加的に又は代替的に、物体認識及び画像処理により、ナビゲーション特徴として機能する周囲の画像のコーナやエッジなどの特徴を検出し得る。特に、制御ユニット150からのオドメトリ情報(走行距離情報)とナビゲーション特徴とを組み合わせることにより、それ自体既知のSLAMアルゴリズムを用いて環境の地図を構築することができ、地図内のロボットの位置を決定し、ナビゲーションおよび作業計画のために使用することができる。このような地図は、一時的に(つまり、使用するたびに)構築することもできるし、繰り返し使用するために保存し、必要に応じてロードすることもできる。このソリューションの利点は、ナビゲーションセンサとそれに関連するアルゴリズムが密接に統合されることである。したがって、ナビゲーションユニット140とナビゲーションセンサ125との組み合わせは、新しいロボットアプリケーションに比較的容易に組み込むことができる。必要な条件は、前述の標準化された形式(標準化されたフォーマット)でデータを交換するための所定のインターフェースを有する制御ユニット150のみである。さらに、ロボット内のナビゲーションセンサ125の位置及び向きのようないくつかのパラメータは、予め定められ、及び/又は(例えば、較正によって)決定されなければならない。
また、環境を検出するためのセンサの他に、ナビゲーションに不可欠な他のセンサをナビゲーションユニットに密接に接続し、その信号をナビゲーションユニットにより直接評価することができる。その一例として、加速度や角速度を測定するための慣性計測ユニット(IMU)がある。これにより、制御ユニットから受信したオドメトリ情報の整合性を判断して、地図上でのロボットの位置決定性を向上させることができる。特に、車輪が空転する際に発生するような、計画された動きから逸脱した加速度を検出するためにIMUを使用することができる。また、重力による加速度に対するロボットの相対的な位置を求めることができる。これは、環境情報を解釈し、ナビゲーションセンサの測定方向を決定するために使用される。
例えば、ナビゲーションユニット140は、障害物回避戦略(sense and avoid strategy)及び/又は同時局在化及びマッピング(Simultaneous Localization and Mapping)(SLAM)アルゴリズム、及び/又はロボット使用領域の1つ以上の地図を使用して動作し得る。ロボットは、使用中にこのようなロボット使用領域の地図(複数可)を作成したり、使用開始時に既存の地図を使用したりすることができる。既存の地図は、偵察走行のような以前の使用中にロボット自身が作成したものであってもよいし、他のロボットや人間が提供したものであってもよい。例えば、ナビゲーションユニット140のナビゲーション及び作業計画は、目的地点を作成すること、目的地点間の経路を計画すること、および目的地への経路中または目的地での作業ユニット160の活動を決定することを含む。また、ナビゲーションユニット140は、予め計画されたアクティビティが入力されたカレンダー(スケジューラ)を管理し得る。例えば、ユーザは、毎日決まった時間に清掃ロボットが清掃を開始する旨を登録することができる。
なお、図2に示す実施形態のように、通信ユニット130と、ナビゲーションユニット140と、制御ユニット150とを有するシステムは、通信ユニット130とナビゲーションユニット140との間、およびナビゲーションユニット140と制御ユニット150との間でのみ情報を交換するように構成されていてもよい。特に、高速でデータ量の多い通信を通信ユニット130で処理する場合に有用である。これにより、データの流れも単純化される。
後でより詳細に説明するように、ナビゲーションセンサ125を含むナビゲーションユニット140は、制御センサ120によって提供されるセンサ情報を加工する制御ユニット150とは機能的に独立している。ナビゲーションユニット140と制御ユニット150との間で交換されるデータ/情報は、使用されるセンサハードウェアに依存しない定義されたフォーマットで送信される。異なるナビゲーションセンサ125がロボット100の後継モデルで使用される場合、ナビゲーションユニット140のソフトウェア(および場合によってはいくつかのハードウェアコンポーネント)のみが新しいナビゲーションセンサに適合される必要があるが、この変更は制御ユニット150には影響を与えない。同様に、異なるまたは追加の制御センサ120又は異なる駆動ユニット170又は異なる作業ユニット160がロボット100の後継モデルで使用される場合には、制御ユニット150のソフトウェア(特にドライバおよび場合によってはいくつかのハードウェアコンポーネント)のみを適合させる必要がある。したがって、使用されるナビゲーションユニット140及びナビゲーションセンサ125は、制御ユニット150及び制御ユニットに接続されたハードウェア(制御センサ120、作業ユニット160、駆動ユニット170)から機能的に完全に切り離されている。制御ユニット150およびナビゲーションユニット140の両方は、前述したように、少なくとも部分的にソフトウェアによって実装されてもよく、これらのソフトウェアは、異なるプロセッサ(計算ユニット)又はプロセッサコア上で互いに独立して実行され得る。さらに、別個のメモリデバイスまたは別個の(例えば、保護された)メモリ領域が、異なるプロセッサ又はプロセッサコアに割り当てられ、制御ユニット150のソフトウェア及びナビゲーションユニット140のソフトウェアが互いに独立して実行され得る。
制御ユニット150及びナビゲーションユニット140によるセンサ情報及び他のイベント(例えば、ユーザ入力)の別個の処理のため、時間の割り当ては簡単にはできない。データ処理、ナビゲーション、経路計画、作業計画を簡素化するために、各測定と検出された各イベントにタイムスタンプを割り当てることができる。これは、少なくともナビゲーションユニット140によって曖昧さなく解釈されるべきである。このためには、制御ユニット150とナビゲーションユニットの両方が、クロックジェネレータ145を介して同期したクロックを使用することが必要である。クロックジェネレータは、例えば、ナビゲーションユニット140と制御ユニット150の両方が受信する時刻信号を一定の間隔で出力するシステムクロックであってもよい。あるいは、ナビゲーションユニット140又は制御ユニット150の演算ユニット内のクロックジェネレータを使用してもよい。
例えば、ナビゲーションユニット140のクロックジェネレータを用いてもよい。このクロックに基づいて、ナビゲーションユニット140は、内部的に与えるタイムスタンプを決定する。周期的な間隔(例えば、1秒毎)で、クロックジェネレータ145から制御ユニット150にクロック信号が送信される。このクロック信号は、制御ユニット150の内部クロックをナビゲーションユニットで使用されているクロックと同期させるために使用される。このようにして、制御ユニット150は、ナビゲーションユニット140のタイムスタンプと同期するタイムスタンプをセンサ情報および他の検出されたイベントに割り当てることができる。例えば、制御ユニット150は、走行距離計(オドメータ)からの測定値に基づいて走行距離情報(オドメトリ情報)を決定する。これらは、タイムスタンプが付与され、ナビゲーションユニット140に送信される。ナビゲーションユニット140は、ナビゲーションセンサ(特に、ナビゲーション特徴)からの、同様にタイムスタンプが押されたセンサ情報を受信する。タイムスタンプに基づいて、ナビゲーションユニット140は、現在、必要な走行距離情報を既に受信したかどうかを判断し、必要に応じて、新しい走行距離情報を受信するのを待つことができる。タイムスタンプに基づいて、測定値は時間順に並べられ、SLAMアルゴリズムのフレームワーク内で一緒に扱われ、地図の状態とその地図内のロボットの位置(姿勢)が更新される。
さらに、自律移動ロボット100は、バッテリ(図2には図示せず)などの電源を有してもよい。バッテリは、例えば、自律移動ロボット100が基地局(図示せず)にドッキングされたときに充電され得る。基地局は、例えば、電力網に接続されてもよい。自律移動ロボット100は、バッテリの充電が必要なとき、またはロボット100がそのタスクを完了したときに、自主的に基地局を目指して進むように構成されてもよい。
図3は、制御ユニット150の実施形態をより詳細に示す。制御ユニット150は、例えば、安全モジュール151と、モータコントローラ152と、予測モジュール153とを有していてもよい。モータコントローラ152は、ナビゲーションユニット140から受信した移動情報および作業情報から、駆動ユニット70および作業ユニット160のモータおよびアクチュエータを制御するための具体的な信号を生成するように構成されている。このため、予め定められた期間だけ制御信号を一時的に記憶するバッファを構築し得る。この場合、移動情報にはロボットの即時停止を含めることができ、その際に、バッファに含まれるすべての制御信号は削除され、アクティブなブレーキ制御信号に置き換え得る。制御のために、電流や電圧の測定情報(ステータスセンサ124)及びエンコーダ情報(モーションセンサ123)も制御ループで利用することができる。
制御信号を生成するとき、ハードウェア固有の適応が必要となる場合があり、これは、実際に制御される動きとナビゲーションユニット140によって最初に計画された動きとの間に特定の偏差をもたらす。また、駆動ユニット170で使用される駆動部材(モータ、パワードライバ等)の制限(最小曲線半径、最大加速度、制御精度の制限等)も、このような逸脱につながる可能性がある。このため、予測モジュール153は、制御信号のバッファに基づいて、ロボットの将来の動きを決定し得る。その際、計算モデルを使用することができ、この計算モデルは、ロボットの慣性、駆動電子回路の特性、及び/又は駆動ユニットの特定の構成(車輪の位置及びサイズなど)を考慮に入れることができる。その結果は、例えば、1以上の予め定められた時間間隔での位置や向きの変更である。この予測は、ナビゲーションユニット140に伝達され、ナビゲーションや作業計画の際に考慮され得る。
安全モジュール151は、ナビゲーションユニット140とは無関係に独立してロボット100の自律的な動きの選択された安全関連の観点を監視するように構成されている。安全モジュール151は、ナビゲーションユニット140が危険な状況で応答しないか不適切な反応の際に介入するようにさらに構成される。不適切な反応とは、危険な状況を回避できないか、または別の危険な状況を引き起こす反応である。不適切な状況とは、たとえば、ロボット100が傾斜または転倒する可能性があり、それにより人間の介入なしではロボット100のさらなる動作が不可能になり、又は、ロボット、周囲の物体、床、又は、周りに立っている人に損傷が発生し得る反応である。この点において、安全モジュール151は、ナビゲーションユニット140によって計画されたロボットの動きを「フィルタリング」、すなわち拒否又は修正し得る。
ナビゲーションユニット140からの制御ユニット150の上述の機能的な独立性を達成するために、安全モジュール151を有する制御ユニット150は、上述のように独自のプロセッサとメモリモジュールを有してもよい。メモリモジュールには、プロセッサによって実行される危険検出用のソフトウェアを保存できる。しかし、安全モジュール151を有する制御ユニット150がプロセッサ及び/又はメモリモジュールをロボット100の他の1つまたは複数のユニットと共有することも可能である。一実施形態では、マルチコアプロセッサの1つのプロセッサコアが安全モジュール151を有する制御ユニット150に割り当てられ、他のプロセッサコアがロボット100の他のユニット(例えば、ナビゲーションユニット140)によって使用され得る。それにもかかわらず、安全モジュール150のソフトウェアは、制御モジュール140または他のモジュールのソフトウェアとは機能的に独立して動作してもよい。制御ユニット150が独自のプロセッサとメモリモジュールを持っている(又はマルチコアプロセッサのプロセッサコアを独占的に使用している)場合、これにより干渉が減り、制御ユニット150の安全に関する安全モジュール151が高い信頼性で適時に応答できることがより容易に確実となる。制御センサ120からの情報を必ずしもリアルタイムで受信しないナビゲーションモジュール140とは異なり、制御ユニット150ひいては安全モジュール150は、制御センサ120からのセンサ情報をリアルタイムで利用可能な状態にしており、したがって、危険な状況を迅速かつ確実に検出して対応することができる。
安全モジュール151の危険検出用のソフトウェアは、危険な状況および危険な状況での反応の、追跡可能な、したがって証明可能な、信頼できる検出を保証するために、可能な限り単純に構成され得る。一実施形態によれば、自律移動ロボット100の制御ユニット150が複数の安全モジュール151を有し、安全モジュール151のそれぞれは、特定の危険な状況に対応するように構成された危険検出ソフトウェアを有し、特定の危険な状況(例えば、階段から落下する差し迫った危険)に特化することも可能である。
例えば、安全モジュール151及び危険検出ソフトウェアの簡単化という目標を達成(し、したがって、安全モジュールの機能の簡単な検証を可能に)する1つの方法は、安全モジュール151に反応的及び/又は行動的ロボット工学の様々な概念を適用することである。そのような概念では、例えば、ロボット100の行動の仕方は、センサモジュール120の現在のセンサデータのみに基づいて決定される。そのような概念では、例えば、ロボット100の行動の仕方は、現在のセンサデータのみに基づいて決定される。しかし、そのような概念とは異なり、例外的な状況、例えば即時の危険が検出され、ナビゲーションモジュール140が適切に応答しない場合には、安全モジュール151は、ロボット100の計画された行動に介入するように構成されている。この目的のために、安全モジュール151は、ナビゲーションユニット140から動き及び作業情報並びに予測モジュール153の将来の動きの予測を受け取ることができる。動作情報が安全な動作を示す場合には、それはモータコントローラ152に渡される。安全でない動作の場合、動作情報は、モータコントローラ152に渡される前に、安全モジュール151によって変更または破棄され得る。追加的又は代替的に、安全モジュール151は、「緊急停止」のためのコマンドをモータコントローラ152に送信することができる。これにより、バッファに格納されたすべての制御信号が破棄され、ロボット100のブレーキの起動(及び場合によっては後方への移動)のための新しい制御信号が生成される。この目的のために、安全モジュール151は、制御センサ120によって供給される現在の(ナビゲーションユニット140から受信される)情報に基づいて禁止される又は潜在的に危険な動作情報であって、安全モジュール151の介入なしには事故につながる可能性がある動作情報を認識するように構成され得る。あるいは、安全モジュール151は、モータコントローラ152をバイパスして駆動ユニットを直接制御して、ロボットの動きにブレーキをかけてもよい。さらに、安全モジュール151は、駆動ユニットへの電流又は駆動ユニット内のモータを遮断してもよい。
例えば、安全モジュール151は、安全センサ122として1つ以上の床距離センサに結合されてもよい。床距離センサが床までの距離が異常に高いことを示している場合(例えば、ロボットが縁を越えて走行しようとしている、又はロボットが高く持ち上げられているため)、安全モジュール151は、この状況を危険な状況であると判断し得る。関係するセンサがロボットの(進行方向の)正面にある場合、安全モジュール151は、現在の動きを潜在的に危険なものとして分類し、現在の動きの停止又は変更(例えば、後退など)することができる。この場合、安全モジュール151が危険な状況を検出するために使用する基準と、安全モジュール151が現在の動きを(危険又は危険でないと)評価するために使用する基準は実質的に同じである。進行方向の前方にある落下センサが距離の増加を示している場合、危険な状況が検出され、現在の動きが危険であると評価される。安全モジュールは、ナビゲーションユニット140によって計画された前方移動を破棄し、現在の移動を停止する。特定の危険な状況が検出された際には(たとえば、エッジからの差し迫った落下が検出された場合)、安全モジュールはロボットの現在の動きを即座に停止し得る(実質的に現在の動きのいかなる継続も不適切/危険と見なされるため)。
ナビゲーションユニット140が送信した移動情報を評価するために制御センサ120が出力する情報が評価され得る。例えば、制御センサ120の情報は、ロボット100の内部状態(ステータスセンサ124)及び/又は環境(安全センサ122)に関連し得る。したがって、この情報は、例えば、ロボット100の環境に関連する情報、例えば、立ち下がりエッジ、敷居、障害物の位置、または障害物(例えば、人)の移動などを含み得る。ロボット100の環境に関して受信された情報は、安全モジュール150によって、ロボット100の現在の動き(モーションセンサ123)又は計画された動き(予測モジュール153)に関する情報と結合され得る。情報は、受信された直後に安全モジュール151内で処理されてもよく、及び/又は、処理及び/又は考慮される前に、最初に、予め定められた期間又は予め定められた距離(ロボット100によって移動された距離)の間、安全モジュール151に格納されてもよい。
加えて、受信された情報はまた、例えばナビゲーションユニット140によって作成及び使用されるロボット100の環境の地図データに関連してもよい。たとえば、地図データには、立ち下がりエッジまたはその他の障害物に関する情報が含まれ得る。ロボット100は、通常の動作では、地図上の現在の自身の位置を「知って」いる。
受信された情報に基づいて、安全モジュール150は、危険な状況が存在するかどうかを確認し得る。危険な状況とは、たとえば、立ち下がりエッジ、ロボット100の不利な場所(たとえば、湿った、滑らかな、急傾斜な、または不均一な表面)、または、ロボット100のすぐ近くの環境に障害物があること、又は、これらに向かう障害物(例えば、人)があることである。危険な状況が検出されない場合、何もせず、安全モジュール151は、移動情報を変更せずにモータコントローラ152に渡す。
安全モジュール151が危険な状況を検出した場合、安全モジュール151は、まず、危険な状況を検出したことを制御モジュール140に通知することができる。例えば、検出された立ち下がりエッジ又は切迫した衝突に関する情報がナビゲーションユニット140に送信されてもよい。しかしながら、検出された危険状況についてナビゲーションユニット140に通知することは必ずしも必要ではない。安全モジュール151は、「サイレントオブザーバ」としても機能し、ナビゲーションユニット140に通知することなく危険状況を検査することができる。この場合、前述したように、センサ情報(例えば、タイムスタンプ付きのオドメトリ情報)のみが送信されることになる。さらに、安全モジュール151は、ナビゲーションユニット140が、検出された危険状況に適切に応答しているかどうかを検査してもよい。すなわち、安全モジュール151は、ナビゲーションユニット140の移動情報が、ロボット100を障害物(または、立ち下がりエッジなど)に向わせる(それにより危険状況を悪化させる)か、又はロボット100を危険な状況から遠ざけるように操舵、減速、又は停止させているかを検査し得る。この目的のために、安全モジュール151は、識別された危険状況に応じて、最初に、どの動きが原則としてロボット100の事故につながり得るかを判定し得る。たとえば、事故につながる可能性のある動きは「危険な動き」に分類され、事故につながる可能性が低い動きは「安全な動き」と分類され得る。危険な動きは、例えば、ロボット100が直接、立ち下がりエッジ又は障害物に向かって移動する(又はそこから離れない)動きである。また、ロボット100が障害物にぶつかり、それにより、よろめき、落下、転倒するか、又は接触により障害物を損傷する可能性のある動きは、危険として分類することができる。
動きを安全又は危険として分類した後、安全モジュール151は、ロボット100の現在の動きが危険な動き又は安全な動きであるかどうかを検査し得る。安全モジュール150は、例えば、ロボット100がまだ危険な状況に向かって動いているか、それとも障害物を通り抜ける可能性があるか、方向を変えて危険な状況から離れるかを検査することができる。この目的のために、安全モジュール151は、例えば、予測モジュール153の予測、オドメトリ情報(モーションセンサ123)及び/又はナビゲーションユニット140から送信された移動情報を使用して、解析してもよい。ロボット100が危険な動きをしていることを安全モジュールが認識すると、ロボット100および周囲の物体の安全を確保し、事故を回避又は少なくとも軽減する対策(安全対策)を開始する。対策としては、例えば、ナビゲーションユニット140の移動情報を破棄したり、変更したりすることが挙げられる。安全モジュール150の制御信号は、例えば、ロボット100に対してその方向及び/又はその速度を変化させる、方向及び/又は速度コマンドを含むこともできる。たとえば、移動する物体がロボットの予定している経路を横切るときに速度を下げることで、事故を回避できる。多くの場合、例えば、ロボット100が速度を変えずに、わずかに又はそれ以上に方向を変えれば十分であり得る。同様に、ロボット100が完全に反対の方向に移動すること、すなわち、例えば、180°回転又は逆走することも考えられる。通常は、ロボット100を停止(緊急停止)することで事故を確実に防止することができる。
上述したように、安全モジュール151がナビゲーションユニットからの移動情報を破棄又は修正した場合、安全モジュール151が制御ユニット140に対策を通知することが(任意に)可能である。ナビゲーションユニット140は、この情報の受信を確認し得る。この確認は、例えば、ナビゲーションユニット140が、検出された危険な状況に適合して修正された移動情報を送信することによってなされ得る。しかし、ナビゲーションユニット140が安全モジュール151に直接確認応答を送信するようにしてもよい。
例えば、所定の時間(例えば、1秒)後にナビゲーションユニット140から応答がないか有効な応答がない場合、安全モジュール151は、ロボット100の安全な動作がもはや保証されないと想定し得る。この場合、ロボット100は、オプションで永久的に停止されてもよい。例えば、リスタートは、ユーザが積極的に許可してから、又は、ユーザ又は技術者によってロボット100が修理されて(例えば、センサのクリーニング)から、可能となり得る。
本発明の実施形態によれば、ナビゲーションユニット140は、ロボット100のさらなる動作を可能にするために、安全モジュール151により危険と分類される動きを、それにもかかわらず実行させる要求を安全モジュール151に送信することができる。この要求は、ナビゲーションユニット140が安全モジュール151によって危険な動きに対する対策を通知された後に行われ得る。代替的または追加的に、要求を予防措置として行うことができ、これにより計画された動きについて安全モジュール151に事前に通知され得る。その結果、たとえば、計画された動きの中断を回避できる。安全モジュール151は、この要求を検査し、要求された動きが許可されるかどうかをナビゲーションユニット140に通知し得る。
ロボットのセンサ(特にセンサモジュール122)は、多くのロボットにおいて、ロボット100の前方への移動、すなわち、通常の移動方向、すなわちロボット100の前の領域の方向のみを測定するように構成されている。つまり、ロボット100の背後の領域に関する情報をまったく提供しないか、非常に限られた情報のみを提供し得る。例えば、ロボット100の逆方向の走行は、例えば、5cm未満又は10cm未満の非常に短い距離だけが安全であると考えられ得る。したがって、これより長い逆方向の走行は、例えば、安全モジュール151によって不許可とされ得る。しかし、ロボット100がその電力供給手段を再充電できる基地局に到着するとき、又は離れるとき、例えば、より長い逆方向の走行が必要になる場合がある。原則として、安全モジュール150は、この場合、基地局への安全な到着及び基地局からの離脱が可能なようにユーザによって基地局が適切に配置されたと想定することができる。ロボット100が基地局に到着するか、基地局を離れるかしなければならず、このためにより長い逆方向の走行が必要な場合、ナビゲーションユニット140は安全モジュール151に対応する要求を送ることができる。次に、安全モジュール151は、例えば、ロボット100が実際に基地局にいるかどうかを検査することができる。例えば、このために、ロボット100の対応する充電接点に電圧が印加されているかどうかを確認できる。この場合、充電接点は、ロボットが充電ステーションにドッキングしたかどうかを検出することができる一種のステータスセンサ124を形成する。代替として、例えば、基地局にドッキングするとき、接触スイッチが閉じられるように構成できる。したがって、安全モジュール151は、接触スイッチが閉じているかどうかを検査することができる。これらは単なる例である。ロボット100が基地局にいるかどうかは、さらに他の適切な方法で確認することができる。安全モジュール151は、ロボット100が基地局にいることを検出すると、基地局を離れるのに必要な逆方向の走行の距離が通常の許容距離を超える場合であっても、それを許可し得る。しかしながら、ロボット100が基地局にいないことを安全モジュール151が検出した場合、逆方向の走行の通常許可された距離のみが許可され得る。これは単なる例である。安全モジュール151が、危険であると分類された動きを例外的に安全であるとみなし、それを許可する様々な他の状況が考えられる。
本発明のさらなる実施形態によれば、安全ユニット150、特に安全モジュール151は、自己テストを実行するように構成されている。この場合、自己テストは、例えば、安全モジュール150に属するメモリモジュールの読み取りテスト及び書き込みテストを有することができる。そのような自己テストが失敗した場合、ロボット100の動作がユーザによって許可されるまで、ロボット100は永久的に停止され、電源がオフにされ得る。自己テストに失敗した後は、原則としてロボット100の安全な動作が保証されない。自己テストは、たとえば、様々な部品の冗長構成によって実現することもできる。したがって、例えば、安全モジュール150のプロセッサ及び/又はメモリモジュールを重複して有することができ、両方のプロセッサで危険検出ソフトウェアを実行することが可能である。両方のプロセッサの結果が同一であるか、許容できる僅かな偏差である限り、安全モジュール151は適切に機能していると想定できる。
本発明の別の実施形態によれば、安全モジュール151は、制御センサ120の信頼できる動作を監視するように構成されてもよい。この際、安全に関係する情報を提供するセンサのみを監視すれば十分であり得る。このセンサの監視により、センサが、たとえば欠陥又は汚れによって、誤ったデータまたは信頼できないデータを供給しているかどうかを検出できる。この場合、監視されるセンサは、誤動作を個別に検出し、これらを安全モジュール151に報告するように構成され得る。代替的または追加的に、センサは、センサが完全に機能している間だけ、意味のある測定データを供給するように構成され得る。例えば、床面までの距離の一般的な値ではなく、床面までの距離がゼロ(または無限大)である場合、床面距離センサは機能しないことが検知される。代替的または追加的に、安全モジュール151は、センサから受信したデータの一貫性をチェックし得る。例えば、安全モジュール151は、ロボット100の動きを決定するために使用されるセンサデータ(モーションセンサ123、特にホイールエンコーダ)が、駆動ユニットの測定された消費電力(ステータスセンサ124、電流計、電圧計)と一致しているかどうかをチェックしてもよい。1つまたは複数の障害のあるセンサ信号が検出された場合、ロボット100の安全な動作を保証できないため、ユーザが再び動作を許可するまでロボットを永久に停止し、電源を切ることができる。
原則として、既知の危険な状況は、説明した方法で検出できる。既知の危険な状況は、ロボット100の安全性を確認するためのテスト状況で目的に合致するように調整できる。例えば、そのようなテストでは、ロボット100は、潜在的に危険な状況に意図的に持ち込まれ得る(例えば、ロボットを立ち下がりエッジの近くに配置する)。次に、ナビゲーションユニット140が誤った及び/又はランダムな移動情報を制御ユニット150に送信する場合をシミュレートすることができる。その後、安全モジュール151が確実に事故を防止できるかどうかを観察することができる。このために、ナビゲーションユニット140は、特別なテスト動作を可能にしてもよく、特別なテスト動作では、予め定義された移動パターンが生成され、及び/又は移動情報が通信ユニット130を介して(例えば、遠隔制御により)予め与えられ得る。
図4は、自律移動ロボット100の下側の平面図を例示的に示している。図4は、清掃ロボットの一例を示しており、ロボットの清掃モジュールは、明確にするために示されていない。図示されたロボット100は、駆動モジュール170に属する2つの駆動輪171(差動駆動)と、前輪172とを有する。前輪172は、例えば従動車輪であってもよく、それ自体は駆動力を持たず、床面上でロボット100の動きに伴って動くだけである。前輪172は、床面に実質的に垂直な軸を中心に360°回転可能であり得る(回転方向は図4に破線の矢印で示されている)。駆動輪171はそれぞれ、電気駆動装置(例えば、電気モータ)に接続され得る。駆動輪171の回転により、ロボット100は前進する。ロボット100は、床面距離センサ121を(安全センサ122の一部として)さらに有する。図4に示す例では、ロボット100は、3つの床面距離センサ121R、121M、121Lを有する。第1の床面距離センサ121Rは、例えば、ロボット100の右側(進行方向に見て)に配置される。このとき、第1の床面距離センサ121Rは、ロボット100を前部と後部とに等分する中心軸x上に配置する必要はない。例えば、第1の床面距離センサ121Rは、中心軸xからわずかに前方に配置され得る。例えば、第2の床面距離センサ121Lは、ロボット100の左側(移動方向に見て)に配置される。この場合、第2の床面距離センサ121Lも中心軸x上に配置する必要はない。第2の床面距離センサ12ILも同様に、中心軸xからわずかに前方に位置し得る。例えば、第3の床面距離センサ121Mは、ロボット100の正面中央に配置され得る。例えば、少なくとも1つの床面距離センサ121が各車輪の前に配置されており、前方に走行するときに車輪が立ち下がりエッジを通過する前に立ち下がりエッジが検出されるようになっている。
床面距離センサ121は、ロボット100の床面までの距離を検出するように構成され、または少なくとも一定の間隔内に床面が存在するかどうかを検出するように構成される。ロボット100の通常の動作中、床面距離センサ121の距離、すなわちロボット100の床面までの距離はわずかしか変化しないため、床面距離センサ121は通常、比較的均一な値を供給する。特に、滑らかな床面では、通常、広範囲で床面までの距離はほぼ同じままである。例えば、駆動輪171および前輪172が沈む得るカーペット上では、値のわずかな偏差が生じる可能性がある。その結果、床面距離センサ121を備えたロボット本体の床面までの距離が減少し得る。階段などの立ち下がりエッジは、例えば、床面距離センサ121の少なくとも1つによって供給される値が急激に増加したときに検出することができる。例えば、少なくとも1つの床面距離センサ121によって測定された値が所定のしきい値を超えて増加する場合に、立ち下がりエッジを検出することができる。床面距離センサ121は、例えば、光学信号又は音響信号用の送信機と、送信された信号の反射を検出するように構成された受信機とを含み得る。可能な測定方法には、床面から反射された信号の強度の測定、三角測量、又は送信された信号とその反射の通過時間の測定が含まれる。たとえば、本発明の一実施形態によれば、床面距離センサ121は、床面までのセンサの正確な距離を決定せず、床面が所定の距離内で検出されたかどうかを示すブール信号を提供するだけである(たとえば、床面距離センサ121まで最大5cmの距離で検出される床面)。なお、センサ信号の実際の評価及び解釈は、制御ユニット150において行われ得る。
自律移動ロボットによって実行される一般的な動き(又は、ナビゲーションユニット140により計画され、移動情報の形式で制御ユニット140に送られる動き)には、前方への動き、右又は左の回転、およびこれらの動きの組み合わせが含まれる。ロボット100がそのような運動を行う際に立ち下がりエッジに向かって動くと、その運動は、少なくとも1つの床面距離センサ121によって検出される。単純な幾何学的考察により、ロボット100の事故(この場合は衝突)につながる可能性のある動きを決定することが可能である。例えば、ロボット100のサイドに配置された第1又は第2の床面距離センサ121R、121Lがトリガーされると、ロボット100は最大で、駆動輪171(車輪支持点)と床面距離センサ121R、121Lとの間の距離に対応する第1の距離L1だけ前方に移動しても良い。たとえば、ロボット100の前面にある第3の床面距離センサ121Mがトリガーされた場合、ロボット100は最大で、前輪172(車輪支持点)と第3の床面距離センサ121Mに対応する第2の距離L2だけ前方に移動しても良い。したがって、ロボット100は、全速力で走行中に立ち下がりエッジを検出し、減速のための制御信号を生成し、立ち下がりエッジの前で(すなわち、第1又は第2の距離L1、L2内で)停止できなければならない。特に、必要な個々の部品の反応時間、すなわち関係する安全センサ122、ナビゲーションユニット140、安全モジュール151を有する安全ユニット及び駆動ユニット170、並びにロボット100の速度、ロボット100を減速させる(負の)加速及び関連する制動距離が考慮される。例えば、安全モジュール150は、床面距離センサ121の少なくとも1つがトリガーされる限り、ロボット100の後退のみを許可にするように構成されてもよい。床面距離が許容最大値を超えていることが検出されると、床面距離センサがトリガーされる。
図4に示す例では、第2の距離L2は第1の距離L1よりも短い。第3の床面距離センサ121Mがトリガーされた後、立ち下がりエッジの前でロボット100が適時に停止することを保証できるようにするために、安全モジュール151は、例えば、第3の床面距離センサ121Mがトリガーされるやいなや、ナビゲーションユニット140からの全ての移動情報を破棄し、ロボット100を停止させる制御信号をモータコントローラに出力させるように構成されても良い。例えば、安全モジュール151は、時間がかかりすぎる可能性があるため、最初にナビゲーションユニット140の正しい挙動を検査しない場合がある。ロボット100の停止後に初めて、安全モジュール151は、例えば、ナビゲーションユニット140が、認識された状況に適した移動情報を、同様に、送信するかどうかを検査することができる。そのような状況に適した移動情報には、たとえば、ロボットを停止する、後退させる、又は立ち下がりエッジから遠ざかるように方向転換するコマンドが含まれる。このような移動情報は、安全モジュール151によってモータコントローラにそのまま(異議無しに)渡されることになる。しかしながら、安全モジュール151が、ナビゲーションユニット140によって危険な動き(例えば、前進)を実行するための移動情報が生成されていることを検知する場合、この移動情報を破棄することによりロボットの制御を保持又は引き継ぎ得る。
第1又は第2の床面距離センサ121R、121Lがトリガーされる場合、例えば、危険を回避するためにロボット100が停止するまでより多くの時間が利用可能であるため、危険な状況に対するナビゲーションユニット140の反応を待つことで十分であり得る。例えば、そのような場合、安全モジュール151は、ロボット100が第3の距離L3を移動するのを待つことができる(例えば、L3=L1-L2)。このとき、ロボット100は、事故を回避するために利用可能な第2の距離L2に必要な時間のみを有する。したがって、第3の距離L3に必要な時間の間、安全モジュール151は、その移動情報を破棄したり、ロボット100を停止したりすることなく、ナビゲーションユニット140の自由にさせる得る。この間にナビゲーションユニット140が適切に応答する場合(ロボット100が検知された立ち下がりエッジから遠ざかる移動情報の場合)、安全モジュール151の介入は不要であり、安全モジュール151は、受動的な状態のままである(移動情報を変更せずに渡す)。第3の距離L3が既に走行されたかどうかは、例えば、経過時間及び/又は走行距離計により、ロボット100の可能な最大速度に基づいて決定することができる。例えば、安全モジュール151は、ナビゲーションユニット140が第1又は第2の床面距離センサ121R、121Lによる立ち下がりエッジの検出の後10ms以内にロボット100の停止及び/又は立ち下がりエッジから遠ざかる向きに走行させない場合は、ロボット100を停止し得る。距離L3の決定と、この距離を移動した時を判断する際には、予測モジュール153の移動予測を利用し得る。
コストの理由から、図4に示すように、ロボット100は、ロボット100の前部に床面距離センサ121しか持たない場合も多く、その場合には、立ち下がりエッジはロボット100が前進するときにのみ検出できる。ロボット100は主に前進方向に移動するので、これは通常、立ち下がりエッジに関してロボット100の安全な動作を確保するのに十分である。状況によっては、障害物や立ち下がりエッジによって前方への動きがブロックされる場合がある。そのような状況では、この状況から抜け出すために、ロボット100は、全体として、またはその駆動輪171の少なくとも1つにより後方に移動することは避けられない可能性がある。しかし、ロボット100が自身の後方の経路を知っていれば、それだけ確かにロボット100は後方に走行できる。ロボット100がその経路を知らない場合、ロボット100の後部に床面距離センサがないため、例えば、ロボット100の後ろの立ち下がりエッジを認識できず、事故の危険がある。ロボット100が最後に移動した距離は、例えば直線として近似することができる。後進は、例えば、第4の距離Dに対して安全であると認識され得る。ここで、距離Dは、駆動輪171と、ロボット100の前側領域で床面距離センサ121が配置される円周Sとの間の距離である。ロボットが最後に第4の距離Dよりも短い距離だけ前方に移動した場合、前方に移動した最後の距離よりも大きくない距離だけ後退しても良い。前進と後退を組み合わせた場合、実際に移動した距離を(例えば、モーションセンサ123で)決定し、必要な後退移動を考慮し得る。
例えば、安全モジュール151は、その環境に関する情報を持たず、その背後に立ち下がりエッジがあるかどうかを知らない可能性があるため、ロボット100の電源投入直後に後方への移動を許可しないように構成され得る。例えば、ロボット100は、ユーザによって、テーブルの端近くのテーブル上に、または階段や踊り場に置かれた可能性がある。この際に、例えば、前方方向が障害物又は立ち下がりエッジによってブロックされている場合に、安全モジュール150は、ロボット100の後方への動きもブロックすることができる。例えば、上述のように、制御ユニット140は、基地局から離れる向きにロボット100を走行させようとする場合、対応する要求を安全モジュール151に送信することができる。安全モジュール151が、そのような要求に続いてロボット100が実際に基地局にいることを確認する場合には、安全モジュール151は、基地局から離れる方向に移動するのに必要とされる距離の後退移動を許可する。
ロボット100の動きは、例えば走行距離計(例えば、ホイールエンコーダ)などのさまざまなセンサによって決定され、及び/又は予測モジュール153の制御信号に基づいて計算され得る。この場合、例えば、ロボット100が移動した、所定の時間間隔及び/又は移動間隔ごとの距離が保存され得る。さらに、例えば、安全な床面をより良く推定するために、床面距離センサ121の位置又は経路を保存することができる。
本発明の一実施形態によれば、ロボット100が、以前に、少なくとも円周Sの半径よりも大きい距離だけ前に移動した場合には、床面距離センサ121が配置される円周Sは、安全に走行可能な領域と見なすことができる。この場合、安全モジュール151は、ロボット100が後進駆動中(及び後進駆動と組み合わされた短い前進移動中)に後退方向の移動により円周Sから離れることを(例えば、制御コマンド及び/又は走行距離計の読み取りに基づいて)検出したときには、ロボット100を停止するように構成され得る。
衝突を避けるために、いくつかのセンサを共有して障害物を検出できる。例えば、安全センサ122は、障害物をロボットの近接領域において非接触で検出するように構成された光学センサ(例えば、床面距離センサとは異なる測定原理の赤外線センサ)を含む。安全センサ122は、例えば、接触した場合に視覚的に検出が困難な障害物(例えばガラスドア)を検出するように構成された触覚センサを備えてもよい。たとえば、触覚センサには、障害物に触れたときに閉じるように構成された接触スイッチを含み得る。例えば、触覚センサは、ロボット100の本体が障害物に衝突する前にロボット100が減速することを可能にするスプリング偏位手段をさらに含み得る。このような場合、安全モジュール151は、立ち下がりエッジの検出時に床面距離センサ121をトリガーするときと同様に振る舞う。
例えば、安全モジュール151は、ロボットの近くにある障害物を監視するように構成され得る。例えば、ロボット100から所定の距離内に障害物が検出された場合、安全モジュール150は、制限速度を超える速度での動きを阻止し得る。所定の距離は、障害物が検出される方向に依存し得る。例えば、通常、ロボット100の背後で検出された障害物によりロボット100の前方への動きに制限が加えられない。制限速度は、障害物までの距離及び/又は障害物が検出される方向に依存し得る。
安全モジュール151は、生物(人間、ペット)がロボットの環境で適切な安全センサ122(例えば、温度画像)により検出されたときに、生物がどの速度でどの方向に移動するかに関係なく、所定の制限値より大きい速度及び/または加速度を防ぐように構成することもできる。例えば、最大速度を制限することにより、物体の予期しない動きに応答するために、ロボット100が利用できる時間が増加する。同時に、最高速度を制限すると、速度の低下によりロボット100の運動エネルギーが低下するため、人や動物の負傷やロボットや物体の損傷のリスクが低減する。ロボット100の加速を制限することにより、環境内の人々はロボット100の挙動をよりよく判断でき、ロボットの動きによりよく応答することができ、それによって事故のリスクも低減する。
例えば、運搬ロボットなどの自律移動ロボット100のステータスセンサ124は、ロボット100が、物体を運んでいるか、及び、どんな物体(例えばグラスまたは皿)を運んでいるかを検出するように構成されたセンサを含み得る。この情報に基づいて、ロボットの動きが適合され制限され得る。例えば、ロボット100は、何も運ばない場合、より速く加速し、より速い速度で移動し得る。たとえば、皿などの平らな物体を運ぶ場合、グラスや瓶を運ぶ場合よりも速く加速し得る。
安全モジュール151は、作業モジュール160の機能を監視するようにさらに構成され得る。これは、特に、作業モジュール160の活動が、作業モジュール160自体のより大きな動き及び/又は駆動モジュール170によるロボット100の動きに関連する場合に有利となり得る。
例えば、作業モジュール160は、ごみを収集するためのブラシを含み得る。回転ブラシは、例えば、散らばっている靴の靴紐、カーペットの縁、または電化製品のケーブルを巻き込み、それによってブロックされるリスクがある。ブラシの回転は、例えば回転数エンコーダによって測定できる。ブラシの回転が検出されなくなることで、ブラシがブロックされたことを検出できる。また、たとえば、ブラシモータの電力消費を特定し、それによってブラシがブロックされたことを検出することもできる。
ブロックされたブラシを解放するためのさまざまな方法が知られている。例えば、ブラシが空転に切り替わり、ロボット100が逆走し、その際にケーブルなどが再び巻き戻される。しかし、この方法には危険が伴う。ブラシがブロックされた状態でのロボット100の走行は、基本的に事故につながる可能性がある。ブラシに巻き付けられたケーブルが、例えば電気機器のケーブルである場合、ロボットが逆走の際にロボットと一緒に電気機器を引っ張る危険性が基本的にある。このような電気機器が高い位置、たとえば棚に配置されている場合、これは床に落ちて損傷する可能性がある。したがって、安全モジュール151は、例えば、ブラシを解放する手順が実行されるときにブラシがまだブロックされているかどうかを検出するように構成されてもよい。このような場合、物体に損傷を与えることなく前進も後退もできないため、ロボット100の移動が停止され得る。別の可能性は、ロボット100がその位置を変えることなく、ケーブルなどをブラシから解放するために、通常の移動方向とは反対の方向にブラシを回転させることである。
100…自律移動ロボット
120…センサ
122…安全センサ
123…モーションセンサ
124…ステータスセンサ
125…ナビゲーションセンサ
130…通信ユニット
140…ナビゲーションユニット
145…クロックジェネレータ
150…制御ユニット
151…安全モジュール
170…駆動ユニット
300…外部デバイス

Claims (12)

  1. 自律移動ロボットであって、
    制御信号を受信し、前記制御信号に従って前記自律移動ロボットを動かすように構成された駆動ユニット(170)と、
    ナビゲーション特徴を検出するためのナビゲーションセンサ(125)と、
    前記ナビゲーションセンサ(125)に結合され、前記ナビゲーションセンサ(125)から情報を受信し、前記自律移動ロボットの動きを計画するように構成されたナビゲーションユニット(140)と、
    前記ナビゲーションユニット(140)によって計画された動きを表す動き情報を受信し、前記動き情報に基づいて前記制御信号を生成するように構成された制御ユニット(150)と、
    前記制御ユニット(150)に結合された更なるセンサ(120)と、
    を有し、
    前記制御ユニット(150)は、前記更なるセンサ(120)から更なるセンサ情報を受信し、前記更なるセンサ情報を前処理し、前処理された前記センサ情報を予め定義されたフォーマットで前記ナビゲーションユニット(140)に提供し、
    前記ナビゲーションユニット(140)による前記自律移動ロボットの動きの計画は、前記ナビゲーションセンサ(125)からの情報と、前記制御ユニット(150)から提供された前処理されたセンサ情報に基づいて行われる
    自律移動ロボット。
  2. 請求項1に記載の自律移動ロボットであって、
    前記ナビゲーションユニット(140)及び前記制御ユニット(150)は機能的に独立しており、前記前処理されたセンサ情報のための前記予め定義されたフォーマットは、前記更なるセンサ(120)の実装とは独立している
    自律移動ロボット。
  3. 請求項1又は請求項2に記載の自律移動ロボットであって、
    前記制御ユニット(150)と前記ナビゲーションユニット(140)の両方が、同期したクロックジェネレータをそれぞれ有しており、
    前記前処理されたセンサ情報のための前記予め定義されたフォーマットは、前記前処理されたセンサ情報に関連付けられたタイムスタンプを有し、及び/又は、前記ナビゲーションユニット(140)によって提供された前記動き情報は、計画された動きに関連付けられたタイムスタンプを有する
    自律移動ロボット。
  4. 請求項1乃至請求項3の何れか一項に記載の自律移動ロボットであって、
    前記制御ユニット(150)及び前記ナビゲーションユニット(140)の両方は、異なるプロセッサ又はプロセッサコア上で実行されるソフトウェアによって少なくとも部分的に実装されている
    自律移動ロボット。
  5. 請求項1乃至請求項3の何れか一項に記載の自律移動ロボットであって、
    前記ナビゲーションユニット(140)は、第1のメモリ又はメモリ領域が割り当てられた第1の計算ユニットを有し、前記制御ユニット(150)は、第2のメモリ又はメモリ領域が割り当てられた第2の計算ユニットを有し、
    前記第1の計算ユニットは、前記自律移動ロボットの環境の地図を使用するナビゲーションソフトウェアを実行するように構成されている
    自律移動ロボット。
  6. 請求項5に記載の自律移動ロボットであって、
    前記ナビゲーションソフトウェアは、前記第1の計算ユニット上で実行されると、前記ナビゲーションユニット(140)が、前記ナビゲーションセンサ(125)から受信した情報に基づいて前記自律移動ロボットの環境の地図を作成し、前記自律移動ロボットの前記地図上での位置及び向きを決定する
    自律移動ロボット。
  7. 請求項1乃至請求項6の何れか一項に記載の自律移動ロボットであって、
    前記ナビゲーションユニット(140)は、特に前記自律移動ロボットの地図情報やステータス情報の提供のために外部デバイスとの通信を可能にする通信ユニット(130)のインターフェースを有する
    自律移動ロボット。
  8. 請求項7に記載の自律移動ロボットであって、
    前記ナビゲーションユニット(140)は、前記通信ユニット(130)を介して受信したコマンドに応じて、前記自律移動ロボットの動きの計画を実行するように構成されている自律移動ロボット。
  9. 請求項1乃至請求項8の何れか一項に記載の自律移動ロボットであって、
    前記更なるセンサ(120)は、前記自律移動ロボットに近接する環境に関する情報を検出する安全センサ(122)を含み、及び/又は、
    前記更なるセンサ(120)は、前記自律移動ロボットの現在の動きに関する情報を検出するモーションセンサ(123)を含み、及び/又は、
    前記更なるセンサ(120)は、前記自律移動ロボットの状態に関する情報を検出するステータスセンサ(124)を含む
    自律移動ロボット。
  10. 請求項10に記載の自律移動ロボットであって、
    前記モーションセンサ(123)が距離センサであり、前処理された前記センサ情報が、距離センサによって提供されたセンサ信号に依存する情報を含む
    自律移動ロボット。
  11. 請求項1乃至請求項10の何れか一項に記載の自律移動ロボットであって、
    前記制御ユニット(150)は、前記ナビゲーションユニット(140)から受信した動き情報をチェックして、前記計画された動きが危険な状況を引き起こすかどうか、又は危険な状況を引き起こす可能性があるかどうかを、前記更なるセンサ情報を考慮して決定するように構成された安全モジュール(151)を含む
    自律移動ロボット。
  12. 自律移動ロボットのための方法であって、
    ナビゲーション特徴を検出するナビゲーションセンサによって提供される情報に基づいて、前記自律移動ロボットのナビゲーションユニット(140)で前記自律移動ロボットの動きを計画するステップと、
    前記ナビゲーションユニット(140)によって計画された動きを表す動き情報を前記自律移動ロボットの制御ユニット(150)に送信するステップと、
    前記制御ユニット(150)において、送信された前記動き情報に基づいて前記自律移動ロボットの駆動ユニット(170)の制御信号を生成するステップと、
    更なるセンサ(120)から更なるセンサ情報を受信し、前記制御ユニット(150)によって前記更なるセンサ情報を前処理し、前処理された前記センサ情報を予め定義されたフォーマットで準備するステップと、
    前記前処理されたセンサ情報を前記予め定義されたフォーマットで前記ナビゲーションユニット(150)に送信するステップと、
    を有し、
    前記ナビゲーションユニット(140)による前記自律移動ロボットの動きの計画は、前記ナビゲーションセンサ(125)からの情報と前記制御ユニット(150)によって提供された前記前処理されたセンサ情報に基づいて行われる
    方法。
JP2020570544A 2018-06-20 2019-06-05 自律移動ロボットと自律移動ロボットの制御方法 Pending JP2021527889A (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
DE102018114892.5A DE102018114892B4 (de) 2018-06-20 2018-06-20 Autonomer mobiler Roboter und Verfahren zum Steuern eines autonomen mobilen Roboters
DE102018114892.5 2018-06-20
PCT/AT2019/060186 WO2019241811A1 (de) 2018-06-20 2019-06-05 Autonomer mobiler roboter und verfahren zum steuern eines autonomen mobilen roboters

Publications (2)

Publication Number Publication Date
JP2021527889A true JP2021527889A (ja) 2021-10-14
JPWO2019241811A5 JPWO2019241811A5 (ja) 2022-05-11

Family

ID=67060208

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2020570544A Pending JP2021527889A (ja) 2018-06-20 2019-06-05 自律移動ロボットと自律移動ロボットの制御方法

Country Status (6)

Country Link
US (1) US20210271262A1 (ja)
EP (1) EP3811174A1 (ja)
JP (1) JP2021527889A (ja)
CN (1) CN112352207A (ja)
DE (1) DE102018114892B4 (ja)
WO (1) WO2019241811A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2022021501A (ja) * 2020-07-22 2022-02-03 パナソニックIpマネジメント株式会社 掃除機システム、および、危険位置掲示方法

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11685053B1 (en) * 2014-11-24 2023-06-27 AI Incorporated Edge detection system
CN113226143A (zh) * 2018-12-18 2021-08-06 特里纳米克斯股份有限公司 自主家用电器
DE102020107899A1 (de) 2020-03-23 2021-09-23 Technische Universität Darmstadt Körperschaft des öffentlichen Rechts Vorrichtung zur Korrektur von Abweichungen in Lokalisierungsinformationen einer Planungsebene und einer Ausführungsebene
WO2022136570A2 (de) * 2020-12-24 2022-06-30 Robotise Ag Serviceroboter
US11803188B1 (en) * 2021-03-12 2023-10-31 Amazon Technologies, Inc. System for docking an autonomous mobile device using inductive sensors
DE102021205620A1 (de) 2021-06-02 2022-12-08 Robert Bosch Gesellschaft mit beschränkter Haftung Verfahren zum Bestimmen eines Bewegungspfades auf einem Untergrund
CN116098536B (zh) * 2021-11-08 2024-07-19 青岛海尔科技有限公司 一种机器人控制方法及装置
CN114035569B (zh) * 2021-11-09 2023-06-27 中国民航大学 一种航站楼载人机器人路径拓展通行方法
JP2024068910A (ja) * 2022-11-09 2024-05-21 株式会社豊田自動織機 産業車両

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015519677A (ja) * 2012-10-01 2015-07-09 アイロボット コーポレイション センサデータの空間的集約を用いる適応マッピング
JP2018068896A (ja) * 2016-11-02 2018-05-10 東芝ライフスタイル株式会社 電気掃除機

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0680203A (ja) * 1992-03-24 1994-03-22 East Japan Railway Co 床面洗浄ロボットの制御方法
AU2002341358A1 (en) * 2001-09-26 2003-04-07 Friendly Robotics Ltd. Robotic vacuum cleaner
US20050010331A1 (en) * 2003-03-14 2005-01-13 Taylor Charles E. Robot vacuum with floor type modes
JP3841220B2 (ja) * 2004-01-30 2006-11-01 船井電機株式会社 自律走行ロボットクリーナー
ATE534941T1 (de) * 2005-12-02 2011-12-15 Irobot Corp Abdeckungsrobotermobilität
KR100812724B1 (ko) * 2006-09-29 2008-03-12 삼성중공업 주식회사 실내 위치측정시스템을 이용한 벽면 이동 로봇
JP2011128899A (ja) * 2009-12-17 2011-06-30 Murata Machinery Ltd 自律移動装置
KR101850386B1 (ko) * 2011-04-19 2018-04-19 엘지전자 주식회사 로봇 청소기 및 이의 제어 방법
CN104121936A (zh) * 2013-04-29 2014-10-29 艾默生电气(美国)控股公司(智利)有限公司 具有数字输出的动态传感器及其使用方法
US9919425B2 (en) * 2015-07-01 2018-03-20 Irobot Corporation Robot navigational sensor system
CN106054896A (zh) * 2016-07-13 2016-10-26 武汉大学 一种智能导航机器人小车系统
CN106708053A (zh) * 2017-01-26 2017-05-24 湖南人工智能科技有限公司 一种自主导航的机器人及其自主导航方法
JP6640777B2 (ja) * 2017-03-17 2020-02-05 株式会社東芝 移動制御システム、移動制御装置及びプログラム
US10496104B1 (en) * 2017-07-05 2019-12-03 Perceptin Shenzhen Limited Positional awareness with quadocular sensor in autonomous platforms
CN107368073A (zh) * 2017-07-27 2017-11-21 上海工程技术大学 一种全环境多信息融合智能探测机器人系统

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015519677A (ja) * 2012-10-01 2015-07-09 アイロボット コーポレイション センサデータの空間的集約を用いる適応マッピング
JP2018068896A (ja) * 2016-11-02 2018-05-10 東芝ライフスタイル株式会社 電気掃除機

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2022021501A (ja) * 2020-07-22 2022-02-03 パナソニックIpマネジメント株式会社 掃除機システム、および、危険位置掲示方法
JP7519579B2 (ja) 2020-07-22 2024-07-22 パナソニックIpマネジメント株式会社 掃除機システム、および、危険位置掲示方法

Also Published As

Publication number Publication date
DE102018114892A1 (de) 2019-12-24
DE102018114892B4 (de) 2023-11-09
US20210271262A1 (en) 2021-09-02
WO2019241811A1 (de) 2019-12-26
CN112352207A (zh) 2021-02-09
EP3811174A1 (de) 2021-04-28

Similar Documents

Publication Publication Date Title
JP2021527889A (ja) 自律移動ロボットと自律移動ロボットの制御方法
JP7106542B2 (ja) 自律移動ロボットおよび自律移動ロボットの制御方法
US11016493B2 (en) Planning robot stopping points to avoid collisions
JP6811258B2 (ja) ロボット車両の位置測定
US20210154840A1 (en) Movement Planning For Autonomous Robots
KR102118278B1 (ko) 희소 네트워킹 하의 다중 에이전트 조정
JP6853832B2 (ja) ネガティブマッピングを用いる位置測定
JP2020509500A (ja) 自律移動ロボットの制御方法
JP5324286B2 (ja) ネットワークロボットシステム、ロボット制御装置、ロボット制御方法およびロボット制御プログラム
JP2020520008A (ja) ロボットの動作制御のためのシステムおよび方法
KR20180039977A (ko) 공항용 보조 로봇 및 그의 동작 방법
JP2019534516A (ja) 自律移動ロボットを動作させる方法
US20190381661A1 (en) Autonomous moving body and control program for autonomous moving body
JPWO2019241811A5 (ja)
US20190354246A1 (en) Airport robot and movement method therefor
CN110609543B (zh) 自主移动体和用于自主移动体的控制程序
JP2024517882A (ja) 指定区域を走行する多数のロボットを制御する方法およびシステム、ロボットが配置される建物
JP2022087019A (ja) サービスアプリケーションと連係してサービスを提供するロボットを制御する方法およびクラウドサーバ
KR102366333B1 (ko) 로봇용 인공지능 플랫폼 제공 방법
TWI806429B (zh) 控制自動導引車之模組化控制系統及方法
US12032387B2 (en) Autonomous mobile robot, autonomous mobile method, and storage medium
KR20240121451A (ko) 클라우드 서버 및 적어도 하나의 로봇을 포함하는 시스템의 제어 방법
Hilde Autonomous Interoffice Delivery Robot (AIDeR) Software Development of the Control Task

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220427

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20220427

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20230207

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20230501

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20230912