(57)【要約】  少なくとも２個の姿勢定義用の基準マーカを有するドッキングステーションを含む移動ロボットシステムを提供する。姿勢定義用の基準マーカは相互に関しておよび／またはドッキングステーション上の基準点に関して所定の空間的関係を有し、基地ステーションへのドッキング経路は少なくとも２個の姿勢定義用の基準マーカの１つ以上の観察から決定することができる。このシステム内の移動ロボットは姿勢センサ組立体を含む。コントローラはシャーシの上にあり、姿勢センサ組立体からの出力信号を解析するよう構成される。コントローラはドッキングステーション姿勢を決定して、移動ロボットが移動する床面の地図上のドッキングステーション姿勢の位置を探し当て、ドッキング軌跡の経路を計画するよう構成される。
2015535373.tif 000002
【特許請求の範囲】
【請求項１】
移動ロボットシステムであって、
ドッキングステーションであって、少なくとも２個の姿勢定義用の基準マーカを含み、前記少なくとも２個の姿勢定義用の基準マーカは相互に関しておよび／または前記ドッキングステーション上の基準点に関して所定の空間的関係を有し、前記基地ステーションへのドッキング経路は前記少なくとも２個の姿勢定義用の基準マーカの１つ以上の観測から決定することができるドッキングステーションと、
移動ロボットであって、
シャーシと、
前記移動ロボットをドッキング位置まで移動させるための前記シャーシに接続されたモータ駆動部と、
姿勢センサ視野内の前記少なくとも２個の姿勢定義用の基準マーカに応じて  
信号を出力するよう構成されたセンサを含む姿勢センサ組立体と
を含む移動ロボットと、
コントローラであって、前記姿勢センサ組立体からの出力信号を解析するよう構成され、コントローラメモリ内に記憶されている前記少なくとも２個の姿勢定義用の基準マーカの所定の空間的関係を有するコントローラと
を含み、
コントローラは、前記姿勢定義用の基準マーカの空間的関係と前記姿勢センサ組立体からの信号とに基づいてドッキングステーション姿勢を決定して、移動ロボットが移動する床面の地図上のドッキングステーション姿勢の位置を探し当てるよう構成され、
前記コントローラは更に、前記床面の地図上の現在のロボットの位置と前記ドッキングステーション姿勢とに基づいて、前記ドッキングステーションのドッキングレーンと並ぶ端部を有する曲線を含むドッキング軌跡の経路を計画して、前記移動ロボットを前記ドッキング軌跡の曲線に沿って移動させて前記ドッキングステーションと並ぶドッキングレーンに入れるよう前記モータ駆動部に命令を与えるよう構成される、
移動ロボットシステム。
【請求項２】
前記コントローラは前記移動ロボットのシャーシ上にある、請求項１記載の移動ロボットシステム。
【請求項３】
前記ドッキングステーションの複数の視点に関するイメージデータのデータベースを更に含み、前記コントローラは前記姿勢センサ組立体からの出力信号と前記イメージデータのデータベースとを比較して、前記姿勢センサ組立体からの出力信号と前記イメージデータのデータベースとの比較に応じて前記ドッキングステーションの姿勢を推定するよう構成される、請求項１記載の移動ロボットシステム。
【請求項４】
前記イメージデータのデータベースは前記ドッキングステーションおよびその上の前記基準マーカの三次元コンピュータモデルから生成される、請求項３記載の移動ロボットシステム。
【請求項５】
前記コントローラは、前記ロボットの現在位置と前記ドッキングステーションの前記姿勢とに応じて前記ロボットを前記ドッキングレーンに向かって移動させることによりドッキング軌跡の経路を計画するよう構成される、請求項４記載の移動ロボットシステム。
【請求項６】
前記ロボットが前記所定の位置に十分近付いた場合は、前記コントローラは前記ロボットを前記ドッキングステーションの充電ポートおよび／またはコンセントに向かって移動させて、前記ロボットが前記充電ポートおよび／またはコンセントに接続するときに監視するよう構成される、請求項５記載の移動ロボットシステム。
【請求項７】
前記コントローラは、前記ドッキングステーションのイメージを収集することにより前記ロボットに関する前記ドッキングステーションの姿勢を決定し、前記ロボットに関する前記ドッキングステーションの姿勢に応じて前記ロボットを誘導することによりドッキング軌跡の経路を計画するよう構成される、請求項４記載の移動ロボットシステム。
【請求項８】
前記コントローラは、前記ロボットの少なくとも２つの位置からのドッキングステーションの基準マーカの観察を含むデータを収集し、かつ前記データに応じて前記ドッキングステーションの位置および角方向を三角測量することにより、前記ドッキングステーションの姿勢を決定する、請求項１記載の移動ロボットシステム。
【請求項９】
前記基準マーカは前記姿勢センサ組立体へのビーム方向を示すよう構成されたＬＥＤである、請求項８記載の移動ロボットシステム。
【請求項１０】
前記ＬＥＤは異なる発光特性を有し、前記姿勢センサ組立体は前記ＬＥＤの所定の空間的関係に応じて前記ＬＥＤの方向を識別するよう構成される、請求項９記載の移動ロボットシステム。
【請求項１１】
前記姿勢センサ組立体は方向センサを含む、請求項１０記載の移動ロボットシステム。
【請求項１２】
前記方向センサは双子のフォトダイオードを含む、請求項１１記載の移動ロボットシステム。
【請求項１３】
前記基準マーカは一般に一方向に発光する平行にしおよび／または干渉を防いだＬＥＤ光であり、前記ロボット２００が発光を横切ると前記姿勢センサ組立体は視線をプロットするよう構成される、請求項１１記載の移動ロボットシステム。
【請求項１４】
前記基準マーカはＩＲ光を通す部分とＩＲ光を妨げる部分とを含む、請求項１１記載の移動ロボットシステム。
【請求項１５】
ドッキング経路を決定するためのコンピュータプログラム製品であって、前記コンピュータプログラム製品は媒体内に組み込まれたコンピュータ読み取り可能なコードを有する持続性のコンピュータ読み取り可能な記憶媒体を含み、前記コンピュータコードは、
コンピュータ読み取り可能なコードであって、
移動体ロボット上の姿勢センサ組立体からの出力信号を解析し、前記出力信
号はドッキングステーション上の少なくとも２個の基準マーカの姿勢センサ組  
立体による観察に応じるものであり、
前記姿勢定義用の基準マーカの所定の空間的関係と前記姿勢センサ組立体か
らの信号とに基づいてドッキングステーション姿勢を決定し、
前記移動ロボットが移動する床面の地図上のドッキングステーション姿勢の  
位置を探し当て、
床面の地図上の現在のロボット位置と前記ドッキングステーション姿勢とに
基づいて、前記ドッキングステーションのドッキングレーンと並ぶ端部を有す
る曲線を含むドッキング軌跡の経路を計画して、前記移動ロボットを前記ドッ
キング軌跡の曲線に沿って移動させて前記ドッキングステーションと並ぶドッ
キングレーンに入れるよう前記モータ駆動部に命令を与える、
よう構成されたコンピュータ読み取り可能なコードを含む、
コンピュータプログラム製品。  
【請求項１６】
前記コンピュータ読み取り可能なコードは前記ドッキングステーションの複数の視点に関するイメージデータのデータベースを受け、前記姿勢センサ組立体からの出力信号と前記イメージデータのデータベースとを比較し、前記姿勢センサ組立体からの出力信号と前記イメージデータのデータベースとの比較に応じて前記ドッキングステーションの姿勢を推定するよう構成される、請求項１５記載のコンピュータプログラム製品。
【請求項１７】
前記イメージデータのデータベースは、前記ドッキングステーションとその上の基準マーカの三次元コンピュータモデルから生成される、請求項１６記載のコンピュータプログラム製品。
【請求項１８】
前記コンピュータ読み取り可能なコードは、前記ロボットの現在位置と前記ドッキングステーションの姿勢とに応じて前記ロボットを前記ドッキングステーションの前の所定の位置に移動させることによりドッキング軌跡の経路を計画するよう構成される、請求項１７記載のコンピュータプログラム製品。
【請求項１９】
前記コンピュータ読み取り可能なコードは、前記ロボットの少なくとも２つの位置からの前記ドッキングステーションの基準マーカの観察を含むデータを収集し、かつ前記データに応じて前記ドッキングステーションの位置および角方向を三角測量することにより、前記ドッキングステーションの姿勢を決定するよう構成される、請求項１７記載のコンピュータプログラム製品。
【請求項２０】
ドッキング経路を決定する方法であって、
移動体ロボット上の姿勢センサ組立体からの出力信号を解析し、前記出力信号はドッキングステーション上の少なくとも２個の基準マーカの姿勢センサ組立体による観察に応じるものであり、
前記姿勢定義用の基準マーカの所定の空間的関係と前記姿勢センサ組立体からの信号とに基づいてドッキングステーション姿勢を決定し、
前記移動ロボットが移動する床面の地図上のドッキングステーション姿勢の位置を探し当て、
床面の地図上の現在のロボットの位置と前記ドッキングステーション姿勢とに基づいて、前記ドッキングステーションのドッキングレーンと並ぶ端部を有する曲線を含むドッキング軌跡の経路を計画して、前記移動ロボットを前記ドッキング軌跡の曲線に沿って移動させて前記ドッキングステーションと並ぶドッキングレーンに入れるよう前記モータ駆動部に命令を与える、
ことを含むドッキング経路を決定する方法。
【発明の詳細な説明】
【技術分野】
【０００１】
（関連出願）
本出願は、２０１２年１０月５日出願の米国暫定出願番号第６１／７１０，４２２号への優先権を要求し、その内容全体をここに援用する。
【背景技術】
【０００２】
家庭用移動ロボットの非常に望ましい１つの特性は、電池のレベルが十分低い値に達したときに自己充電を行う能力である。現在市販されている多くの移動ロボットはドッキングステーションを見つけて充電用接点と結合するためのシステムを有する。ｉＲｏｂｏｔ（Ｒ）のＲｏｏｍｂａ（Ｒ）や、Ｋaｒｃｈｅｒ（Ｒ）のＲＣ−３０００や、Ｓａｍｓｕｎｇ（Ｒ）のＨａｕｓｅｎ（ＴＭ）などのロボットは、ステーション上のＩＲビームとロボット上のＩＲ受容器とを用いて充電ステーションを検出し、ドッキングするまで移動する。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】米国暫定出願番号第６１／７１０，４２２号
【特許文献２】米国特許第７，０２４，２７８号
【特許文献３】米国特許出願第２００７／０２５０２１２号
【特許文献３】米国特許第８，３８０，３５０号
【非特許文献】
【０００４】
【非特許文献１】Ｐｉｎｔｅｒ  Ｍ．（２００１年）、「より現実的な経路発見に向かって」、Ｇａｍｅ  Ｄｅｖｅｌｏｐｅｒ  Ｍａｇａｚｉｎｅ（４月号）、ＣＭＰ  Ｍｅｄｉａ  ＬＬＣ、ｐｐ．５４−６４
【非特許文献２】Ｄｅｌｌｉｎｇ  Ｄ．他（２００９年）、「エンジニアリングルート計画アルゴリズム」、Ａｌｇｏｒｉｔｈｍｉｃｓ  ｏｆ  ｌａｒｇｅ  ａｎｄ  ｃｏｍｐｌｅｘ  ｎｅｔｗｏｒｋｓ，Ｓｐｒｉｎｇｅｒ，ｐｐ．１１７−１３９
【発明の概要】
【０００５】
ある実施の形態および本発明では、少なくとも２個の姿勢定義用の基準マーカを有するドッキングステーションを含む移動ロボットシステムを提供する。姿勢定義用の基準マーカは、相互に関しておよび／またはドッキングステーション上の基準点に関して所定の空間的関係を有し、基地ステーションへのドッキング経路は少なくとも２個の姿勢定義用の基準マーカを１つ以上観察して決定することができる。このシステム内の移動ロボットは、シャーシと、移動ロボットをドッキング位置まで移動させるためのシャーシに接続されたモータ駆動部と、姿勢センサ視野内の少なくとも２個の姿勢定義用の基準マーカに応じて信号を出力するよう構成されたセンサを有する姿勢センサ組立体とを有する。
【０００６】
コントローラはシャーシ上にあって、姿勢センサ組立体からの出力信号を解析するよう構成される。コントローラは、コントローラメモリ内に記憶されている姿勢定義用の基準マーカの所定の空間的関係を有する。コントローラは、姿勢定義用の基準マーカの空間的関係と姿勢センサ組立体からの信号とに基づいてドッキングステーション姿勢を決定するよう構成される。コントローラは更に、移動ロボットが移動する床面の地図上のドッキングステーション姿勢の位置を探し当て、床面の地図上の現在のロボット位置とドッキングステーション姿勢とに基づいて、ドッキングステーションのドッキングレーンと並ぶ端部を有する曲線を含むドッキング軌跡の経路を計画して、移動ロボットをドッキング軌跡の曲線に沿って移動させてドッキングステーションと並ぶドッキングレーンに入れるようモータ駆動部に命令を与えるよう構成される。
【図面の簡単な説明】
【０００７】
【図１】ある実施の形態または本発明に係るロボット管理システムの略図である。
【図２】ある実施の形態または本発明に係るドックの略図である。
【図３】ある実施の形態または本発明に係るロボットの略図である。
【図４Ａ−Ｃ】図１のロボット管理システムを含む構成の略図である。
【図４Ｄ−Ｅ】図４Ａ−Ｃの略図の一部の実施の形態である。
【図５】ある実施の形態または本発明に係る図２のドックおよび図３のロボットの略図である。
【図６】ある実施の形態または本発明に係る操作を示す流れ図である。
【図７】ある実施の形態または本発明に係る基準マーカの略図である。
【図８】ある実施の形態または本発明に係る操作を示す流れ図である。
【図９】ある実施の形態または本発明に係る操作を示す流れ図である。
【発明を実施するための形態】
【０００８】
本発明について、本発明の実施の形態を示す添付の図面および例を参照して以下に説明する。本発明について、本発明の実施の形態または本発明に係る方法のブロック図および／または流れ図の表示や、装置（システム）および／またはコンピュータプログラム製品を参照して以下に説明する。理解されるように、ブロック図および／または流れ図の表示の各ブロックと、ブロック図および／または流れ図の表示のブロックの組合せは、コンピュータプログラム命令により実現することができる。これらのコンピュータプログラム命令を汎用コンピュータ、専用コンピュータ、および／またはプログラム可能なデータ処理装置のプロセッサに与えて機械を製作すると、コンピュータおよび／または他のプログラム可能なデータ処理装置のプロセッサを介して実行する命令は、ブロック図および／または流れ図ブロックに指定された機能／行動を実現する手段を生成する。
【０００９】
特定の方法で機能するようにコンピュータまたは他のプログラム可能なデータ処理装置に命令することのできるかかるコンピュータプログラム命令は、コンピュータ読取り可能なメモリ内に記憶してもよく、コンピュータ読取り可能なメモリ内に記憶された命令は、ブロック図および／または流れ図ブロック内に指定された機能／行動を実現する命令を含む製作品目を作成する。
コンピュータプログラム命令はコンピュータまたは他のプログラム可能なデータ処理装置にロードして、コンピュータまたは他のプログラム可能な装置上で一連の操作ステップを行うことによりコンピュータで実現するプロセスを生成し、コンピュータまたは他のプログラム可能な装置上で実行する命令は、ブロック図および／または流れ図ブロック内に指定された機能／行動を実現するためのステップを与えてよい。
【００１０】
このように、本発明はハードウエアおよび／またはソフトウエア（ファームウエア、常駐ソフトウエア、マイクロコードなどを含む）で実現してよい。更に、本発明の実施の形態または本発明は、命令実行システムが用いるまたは関係する媒体内で実現されるコンピュータ使用可能なまたはコンピュータ読取り可能なプログラムコードを有する、コンピュータ使用可能なまたはコンピュータ読取り可能な常駐記憶媒体上のコンピュータプログラム製品の形をとってよい。
【００１１】
コンピュータ使用可能なまたはコンピュータ読取り可能な媒体は、限定されないが例えば、電子的、光学的、電磁的、赤外線、または半導体のシステム、装置、または機器でよい。コンピュータ読取り可能な媒体の更に特定された例（非網羅的なリスト）は以下のものを含んでよい。すなわち、ポータブルコンピュータディスケット、ランダムアクセスメモリ（ＲＡＭ）、リードオンリーメモリ（ＲＯＭ）、消去可能プログラム可能なリードオンリーメモリ（ＥＰＲＯＭまたはフラッシュメモリ）、およびポータブルコンパクトディスクリードオンリーメモリ（ＣＤ−ＲＯＭ）などである。
【００１２】
ここで用いる「姿勢」は、対象の位置および方向を定義するのに用いることができる情報を指す。例えば、姿勢は基準角に関する対象の回転の１つから３つの角と位置座標とを含んでよい。位置座標は２次元または３次元の位置座標（例えば、（ｘ，ｙ）または（ｘ，ｙ，ｚ））でよい。
【００１３】
ここで用いる「基準マーカ」はセンサが識別できる任意の特徴を含んでよい。ドッキングステーションなどの対象に関する空間的情報を与えるのに少なくとも２個の基準マーカを用いてよく、またこれらは相互に接続されまたは相互から分離された異なる位置での特徴を含んでよい。ある「姿勢」は、基準系内のＸ−Ｙ座標対と方向の１つの角とを組み合わせたものでよい。基準マーカの制限されない例として、視覚パターン、ＩＲ透過およびＩＲ遮断パターン、ＬＥＤなどの光、写真測量の目標、またはバーコードなどのパターンなどがある。
【００１４】
ある実施の形態または本発明では、少なくとも２個の姿勢定義用の基準マーカを有するドッキングステーションを含む移動ロボットシステムを提供する。姿勢定義用の基準マーカは相互に関しておよび／またはドッキングステーション上の基準点に関して所定の空間的関係を有し、基地ステーションへのドッキング経路は少なくとも２個の姿勢定義用の基準マーカの１つ以上の観察から決定することができる。このシステム内の移動ロボットは、シャーシと、移動ロボットをドッキングステーションまで移動させるためにシャーシに接続するモータ駆動部と、姿勢センサの視野内の少なくとも２個の姿勢定義用の基準マーカに応じて信号を出力するよう構成されたセンサを有する姿勢センサ組立体とを有する。
【００１５】
コントローラはシャーシの上にあって姿勢センサ組立体からの出力信号を解析するよう構成される。コントローラは、コントローラメモリ内に記憶されている姿勢定義用基準マーカの所定の空間的関係を有する。コントローラは、姿勢定義用基準マーカの空間的関係と姿勢センサ組立体からの信号とに基づいてドッキングステーション姿勢を決定するよう構成される。コントローラは更に、移動ロボットが移動する床面の地図上のドッキングステーション姿勢の位置を探し当て、床面の地図上の現在のロボットの位置とドッキングステーション姿勢とに基づいて、ドッキングステーションのドッキングレーンと並ぶ端部を有する曲線すなわち経路を含むドッキング軌跡の経路を計画して、移動ロボットをドッキング軌跡の曲線に沿って移動させてドッキングステーションと並ぶドッキングレーンに入れるようモータ駆動部に命令を与えるよう構成される。
【００１６】
図１−４Ｅにおいて、本発明の実施の形態または本発明に係るロボット管理システム１００は関連する閉空間すなわち居住構造１０内に設けられる。構造１０は  住宅または住居（例えば、単一家族住宅、多家族住宅（例えば、重層型ユニット、共同住宅、コンドミニアムなど）、または移動住宅）、または商業的居住空間（例えば、オフィスまたはスタジオ）でよい。構造１０は閉空間２０を定義し、２つ以上の定義ゾーン（例えば、ゾーンＡ−Ｃ）に細分してよく（物理的に、空間的に、および／または機能的に）、またドア３２などの種々の特徴を含んでよい。
【００１７】
ロボット管理システム１００は、ネットワーク可能な移動ロボット２００、ネットワーク可能なシステムハブ１１０、ロボットドック６００、専用ネットワーク（例えば、広帯域ＬＡＮ）１６０、および遠隔管理サーバ（例えば、クラウドサーバ）１５０、とを含む。図４Ａに示すように、専用ネットワーク１６０はルータ１６２および広帯域無線アクセスポイント（ＷＡＰ）１６４により可能になる。専用ネットワーク１６０は、ゲートウエイ１７０Ａ（例えば、広帯域モデム）および外部接続１７０Ｂ（例えば、ＩＳＰ）を通してＷＡＮすなわち公衆ネットワーク１７０（例えば、インターネット）により、遠隔サーバ１５０に接続する。ルータ１６２、ＷＡＰ１６４、および／またはモデム１７０Ａは単一機器内に統合してよい。ローカルユーザ端末１４２（例えば、ＰＣ、スマートフォン、またはタブレットコンピュータ）は専用ネットワーク１６０に接続してよい（有線または無線で）。遠隔ユーザ端末１４４は公衆ネットワーク１７０を介して遠隔サーバ１５０および／または専用ネットワーク１６０に接続してよい。ハブ１１０、ロボット２００、ローカルユーザ端末６００、および遠隔ユーザ端末１４４はそれぞれ、ここに説明するノード１１０，２００，６００，１４２，１４４、および１５０の間の通信および制御を可能にするダウンロード可能なまたはプレインストールされたアプリケーションソフトウエアを備えるよう構成してよい。
【００１８】
ハブ１１０（図１）はここに述べる機能を与えるよう構成された任意の適当な機器でよい。ある実施の形態または本発明では、ハブ１１０はプロセッサ１１４、メモリ１１５、ＨＭＩ１１６、無線通信モジュール（例えば、Ｗｉ−Ｆｉモジュール）１１２、および関連するアンテナ１１２Ａ、とを含む。ハブ１１０はルータ１６２への有線接続のための接続ハードウエア（例えば、イーサネットコネクタ）を含んでよい。図に示すように、ハブ１１０はルータ１６２に有線接続することにより専用ネットワーク１６０に接続することができる。または、図４に示すように、ハブ１１０は無線モジュール１１２およびＷＡＰ１６４を介してルータ１６２に無線接続してよい。
【００１９】
図２、図４Ｄ、および図４Ｅに示すように、ロボットドック６００は１個以上の独特の識別可能な基準マーカ６４０Ａ、６４０Ｂを含んでよい。ロボットドック６００は電源６８０を含みまたは接続してよく、移動ロボット２００をロボットドック６００にドッキングしたときに移動ロボット２００の電池を充電するための充電接点６２２Ａ、６２２Ｂをその上に有するドッキングポート６６０を含む。ドック６００は排出ステーションでよく、ロボット２００からごみを受けるための容器６７０を含んでよい。ある実施の形態または本発明では、ドック６００は専用ネットワーク１６０に接続して（有線または無線で）、ロボット２００から専用ネットワーク１６０への、および／または専用ネットワーク１６０からロボット２００へのデータの送信を可能にしまたは容易にする。
【００２０】
図４Ａ−図６に示すように、基準マーカ６４０Ａ、６４０Ｂはロボットドック６００の姿勢を定義するよう構成される（図６のブロック３００）。例えば、基準マーカ６４０Ａ、６４０Ｂは相互に関して、および／またはドッキングステーション６００上の基準に関して、および／またはドック６００の直下の平面に関して、所定の空間的関係を有してよい。ここで説明するように、基準マーカ６４０Ａ、６４０Ｂは移動ロボット２００の姿勢センサ組立体２７０Ａ−２７０Ｂが用いて、ドッキングステーション６００の姿勢を決定し（図６のブロック３０２）、および／またはドッキング経路１８０を描く（図４Ａ−４Ｃ、図６のブロック３０４）。ドッキング経路１８０は、例えばロボット２００をドック６００に誘導する命令をロボット２００に与えるのに用いてよく、これによりロボット２００は鍵やクランプや戻り止め６２０Ａ、６２０Ｂに接続し、またはドッキングポート６６０の電気接点６２２Ａ、６２２Ｂに接触して電池を充電してよい。
【００２１】
ドッキング経路２８０は、ロボット２００を誘導してその空気経路とドッキングレーンまたは経路（ドック６００上の排出つば６１０など）とを並べる命令を与えるのに用いて、ドックがごみをロボット２００からドック６６０のごみ容器６７０に移すようにしてよい。図４Ｄ、４Ｅに示す排出つば６１０（または相手のつば）ではロボット２００の位置は排出つばの上にあるが、本発明ではロボット２００はロボット２００の上または横に位置する相手のつば６１０とも並ぶように考えている。基準マーカ６４０Ａ、６４０Ｂは姿勢の検出に用いるように構成された任意の特徴でよい。例えば、基準マーカ６４０Ａ、６４０Ｂは写真測量目標、ＬＥＤなどの２つ以上の光、空間的に認識可能なパターン、またはバーコードでよい。
【００２２】
移動ロボット２００は任意の適切なロボットでよく、認識されるように、本発明の全ての実施の形態においてここに述べた構成要素や特徴や機能の全てが必要なわけではない。図３において、例示の移動ロボット２００はシャーシ２１０、コントローラ２２０、メモリ２２２、電池２２４、電池充電器２２６、人間機械インターフェース（ＨＭＩ）２２８、駆動システム２３０、マッピング／ナビゲーションシステム２４０、サービス業務システム２４２、無線通信システム２３０、ＩＲエミッタ２６０、および姿勢センサ２７０Ａ−Ｂを含む。移動ロボット２００は一般に、Ｒｏｏｍｂａ（ＴＭ）床掃除ロボット、および／または米国特許第７，０２４，２７８号および米国特許出願第２００７／０２５０２１２号（これらの開示を、適当な修正を含めて、ここに援用する）に記述されているロボットの方式で構成され、またはそれらの特徴を含んでよい。
【００２３】
コントローラ２２０は任意の適切に構成されたプロセッサ（例えば、マイクロプロセッサ）を含んでよい。コントローラ２２０は移動ロボット２００の種々の構成要素を制御するよう構成してよい。例えば、コントローラ２２０はメモリ２２２内の情報にアクセスしおよび／または記憶し、姿勢センサ２７０Ａ−Ｂのデータ収集機能を制御し、駆動システム２３０に命令を与え、マッピング／ナビゲーションシステム２４０のデータを受けおよび／またはマッピング機能を制御し、通信システム２５０および／またはＨＭＩ２２８を介して通信し、電池２２４の充電を監視するなどしてよい。
【００２４】
駆動システム２３０は、ロボット２００が閉空間２０内で活動的にかつ制御されて移動するための任意の適切な機構またはシステムを含んでよい。ある実施の形態または本発明では、駆動システム２３０はローラやトラック２３２と、コントローラ２２０が操作する１個以上の車載電気モータ２３４とを含み、ロボット２００を閉空間２０の床全体に運ぶ。
【００２５】
サービス業務システム２４２はある実施の形態または本発明においてオプションでよく、閉空間２０内のサービス業務を行う。ある実施の形態または本発明では、サービス業務システム２４２は、ロボット２００が空間２０の中を移動しながら閉空間２０の床面を掃除する床掃除システムを含む。ある実施の形態または本発明では、サービス業務システム２４２は床を真空掃除するための吸引ヘッドと車載真空発生器とを含む。ある実施の形態または本発明では、システム２４２は掃くまたは拭く機構を含む。
【００２６】
無線通信システム２５０は無線通信送信機またはモジュール２５２（例えば、Ｗｉ−Ｆｉモジュール）と、関連するアンテナ２５４とを含み、ロボット２００と、ハブ１１０および／または専用ネットワーク１６０との間の無線通信を可能にする（すなわち、ＷＡＰ１６４を介して）。移動ロボット２００が１つのノードを構成する専用ネットワーク１６０では種々の異なるネットワーク構成を用いてよい。ある実施の形態または本発明では、ロボット２００はＷＡＰ１６４を介してルータ１６２を通してハブ１１０と無線で通信する。ある実施の形態または本発明では、移動ロボット２００はハブ１１０をバイパスして、ルータ１６２およびＷＡＰ１６４を介して遠隔管理サーバ１５０と通信する。
【００２７】
ある実施の形態または本発明では、ロボット２００は  狭帯域または広帯域（例えば、Ｗｉ−Ｆｉ）ＲＦ通信を用いてハブ１１０と直接に無線で通信してよい。例えば、ＷＡＰ１６４と互換性のある送信機をロボット２００が備えていない場合は、ロボット２００はハブ１１０と通信し、ハブ１１０はデータをロボット２００から専用ネットワーク１６０または遠隔管理サーバ１５０に中継してよい。ある実施の形態または本発明では、システム１００はネットワークブリッジ機器を含む。これはロボット２００からＲＦ信号を受信して変換し、遠隔管理サーバ１５０または専用ネットワーク１６０内の別の機器に引き渡すためのルータが支援する書式でこれをルータ１６２に中継する。ある実施の形態または本発明では、システム１００はメッシュトポロジーを用いる低電力メッシュデータネットワークを含む。この場合、ＲＦ通信信号は移動ロボット２００とハブ１１０との間のノードからノードへ中継される。
【００２８】
例示のロボット２００は姿勢センサ（すなわちＩＲ放射検出器２７０Ａおよびカメラ２７０Ｂ）を含む。これらのセンサはロボット２００に備えてよいセンサのタイプを網羅したものではなく、ロボット２００が検出する姿勢パラメータによっては省いてよいセンサがある。
【００２９】
マッピング／ナビゲーションシステム２４０は、移動ロボット２００が閉空間２０の地図を描くのに、また空間２０に関してロボット２００の位置を決定しまたは登録する（すなわち、空間２０内でロボット２００を局所化する）のに用いてよい。ロボット２００はこれによりその車載センサ２７０Ａ−Ｂの位置を局所化することもできる。ロボット２００を局所化しまた登録するのに任意の適切な技術および構成要素（例えば、機械視覚（例えば、カメラ２７０Ｂと特徴認識またはクラス認識ソフトウエアとを用いる）、光ビーコン、または高周波受信信号強度標識（ＲＳＳＩ）技術など）を用いてよい。
【００３０】
システム１００は、（１）識別情報（例えば、「モノのインターネット」６ＬｏｗＰａｎ電球またはソケットトランシーバ、プラグユニットなどのＩＰｖ６識別）と、（２）ＲＳＳＩ（例えば、同じ近くのＩＰｖ６  ＲＦトランシーバの信号強度／振幅）と、（３）遠隔制御（例えば、ローカルネットワークまたはインターネットを介してそのＲＦトランシーバを変調する能力）とを組み合わせて部屋を一意的に識別することができる(例えば、ゾーンＡ，ゾーンＢ、ゾーンＣ）。例えば、ロボット２００はＩＰｖ６トランシーバのピーク信号強度を見つけるまで（この場合は、このトランシーバに最も近いと期待してよい）部屋(例えば、ゾーンＡ，ゾーンＢ、ゾーンＣ）を移動することができる。次に、このトランシーバにトポロジー位置またはデカルト位置のタグをつけてよい。このトランシーバがエンドユーザによりまたは任意の手段により自動的に部屋の識別と関連付けられる（例えば、リビングルームの第３電球）場合は、ロボット２００はこの情報を種々の方法で用いることができる。
【００３１】
例えば、ロボット２００が居間の掃除を命じられた場合は、ロボットはその移動性と信号強度の距離に依存する変動とを用いてこの部屋を目指すことができる（地図がなくても）。別の例として、ロボット２００が居間だけの掃除を命じられるとする。この場合は、居間にあることが分かっている１個以上のトランシーバがロボット２００をその部屋に「固定する」。（すなわち、ロボット２００は、複数の信号源および／または識別可能な壁またはドアを用いて信号強度および／または大まかな局所化のしきい値を設定し、居間のＩＰｖ６  ６ＬｏｗＰＡＮ電球の信号強度がハイになるように部屋をカバーする。）
【００３２】
例えば、ロボット２００は床掃除の作業中でよく、またシステム１００は（ハブ１００からロボット２００への命令により)ロボット２００に、ドック６００に戻り、別の占有されていないゾーンに移動し、占有されているゾーンを避け、または静寂作業モードで行うように命じてよい。別の例では、コントローラ２２０は電池２２４の電荷を監視してよく、電池の電荷が所定のしきい値量より低い場合は、ドック６００に戻って電池２２４を再充電するようロボット２００に命じてよい。
【００３３】
本発明に係る実施の形態をロボット管理システム１００に関して述べたが、理解されるように、他の構成も本発明の範囲内に含まれる。例えば、ハブ１１０とドック６００の動作を組み合わせて１つのユニットにしてよい。また、コントローラ２２０をロボット２００の一部として示したが、コントローラ２２０の動作の一部または全てをドック６００が、または他のプロセッサ（例えば、遠隔管理サーバ１５０、ローカルユーザ端末１４２、および／または遠隔ユーザ端末１４４）が行ってよい。
本発明の実施の形態または本発明に係る更なる方法および動作と、ロボット管理システム１００の使用について以下に述べる
【００３４】
姿勢の決定
上に述べたように、閉空間２０内のロボット姿勢センサ２７０Ａ−Ｂの位置を決定しまた登録して、ロボット姿勢センサ２７０Ａ−Ｂからの読みを空間２０に関して対応して登録することができる。ロボット２００上のカメラ２７０Ｂまたは他のセンサを用いて開いたドア３２を検出することができる。このようにして、ロボット２００は閉空間の入り口およびゾーンを監視することができる。
【００３５】
図５に示すように、ロボット２００は２つの位置Ｐ１、Ｐ２からの視野内のドック６００の基準マーカ６４０Ａ、６４０Ｂの観察を含むデータを収集することができる。ロボットメモリ２２２はドック６００の基準マーカ６４０Ａ、６４０Ｂの空間的関係を記憶してよく、用いるドック６００のタイプまたはモデルに基づいてこれをロボットメモリ２２２内にプレロードしてよい。地図上の位置Ｐ１、Ｐ２の座標は、例えば、ここで述べるマッピングおよびナビゲーションシステム２４０により計算してよい。法線または基準線（ＲＬ）を地図上に確立してドック６００の姿勢の角基準Θを確立してよい。
【００３６】
オプションとして、姿勢の角基準Θをドック６００のドッキングレーン、走行路、経路、進入路、またはアプローチベクトルと並べてよい（一般にこれらの用語は、ドック６００への物理的進入の好ましいベクトルがあり、これにより、ロボット２００が実質的に直線の経路に沿って進むときに、ロボット２００の機械的および電気的特徴をドック６００の対応する特徴に揃えることができることを意味する）。図に示すように、基準線（ＲＬ）は地図上に定義される任意の基準である。しかし、基準線（ＲＬ）はロボット２００に関してまたは地図上の静止位置を含む別の定義された位置に関して定義してよい。センサ２７０Ａ−Ｂがドック６００および基準マーカ６４０Ａ、６４０Ｂを観察すると、２つの位置Ｐ１、Ｐ２でのロボット２００の位置と、基準線に関するドック６００の方向に関連する基準マーカ６４０Ａ、６４０Ｂの既知の位置とを組み合わせて、当業者に周知の例えば三角測量または三辺測量の技術を用いて、ドック６００の姿勢を決定してよい。
【００３７】
図５に示すように、２つの異なる位置Ｐ１、Ｐ２にロボット２００が移動することによりロボット２００はデータを収集するが、理解されるように、センサ２７０Ａ−Ｂをロボット２００上に設けて、ロボット２００上の２つ以上の空間的に離れた位置から、両眼の視覚などで、同時に情報を収集してよい。更に、データは２つ以上の位置から収集してよく、またはある実施の形態または本発明では、基準マーカ６４０Ａ、６４０Ｂは１つの位置で１度の観察から姿勢情報を与えるよう構成してよい（例えば、基準マーカをカメラで観察した場合は、得られるイメージは少なくとも２個の基準マーカ６４０Ａ、６４０Ｂを含み、各基準マーカは得られたイメージ内で一意的に識別することができ、相互に関しおよび／または追加の基準面に関する基準マーカ６４０Ａ、６４０Ｂの相対的関係はロボット２００が知っている）。
【００３８】
更に基準マーカ６４０Ａ、６４０Ｂの空間的関係は高さと、相互間の距離と、ドック６００の幾何学的形状とを含んでよい。ある実施の形態または本発明では、ロボット２００の現在位置に関してドック６００の姿勢を推定するには、センサの読みの分布が一時的に必要である。例えば、ロボット２００がドック２００の姿勢を推定してそれを地図上に記すのは、限られたセンサでドック６００を３度見た後に初めて可能になる（その後は、ロボット２００は同じ地図上で自分を追跡しながらその相対的姿勢を絶えず推定するので、ドック６００を見て視線を得るたびにそれを訂正することができる）。
【００３９】
本発明のある実施の形態（図４Ｅに示す実施の形態など）では、基準マーカ６４０Ａ、６４０Ｂはビーム方向を示すよう構成したＬＥＤ光でよく、また１個以上の方向センサによりドック６００上で検知してよい。方向センサからのデータと、マッピングおよびナビゲーションシステム２４０が作成中の地図（例えば、同時局所化およびマッピング（Ｓｉｍｕｌｔａｎｅｏｕｓ  Ｌｏｃａｌｉｚａｔｉｏｎ  ａｎｄ  Ｍａｐｐｉｎｇ）（ＳＬＡＭ）法を用いる）上のロボットの現在の姿勢の解析とを組み合わせてよい。ロボットメモリ２２２はＬＥＤの空間的関係を含む（例えば、光は相互に或る距離離れており、第１の光は床から第１の距離にあり、第２の光は、床から第１の距離とは異なる第２の距離にあるなど）。特定の実施の形態または本発明では、光は異なる特性（異なる周波数、変調、またはデユーティーサイクルなど）を有することにより互いから区別することができる。
【００４０】
方向センサは、例えば米国特許第８，３８０，３５０号（この特許の開示を全体的にここに援用する）に述べられている平行な光制限チューブ内に取り付けた双子フォトダイオードなどの「双眼」センサでよい。コントローラ２２０は双眼センサのチューブの方向と、マッピングおよびナビゲーションシステム２４０が作成した地図上のロボットの姿勢とを組み合わせて用いて、地図上の異なる位置からドック６００までの視線をプロットして、Ｘ，Ｙ位置および方向を含むドックの姿勢を得る。
【００４１】
ある実施の形態または本発明では、基準マーカ６４０Ａ、６４０Ｂは一般に一方向だけから見えるビームになるように平行にしまた干渉を防いだＬＥＤ光でよく、ロボット２００上の多方向性または方向性のセンサはロボット２００がＬＥＤのビームを横切ると視線をプロットすることができる。
ある実施の形態または本発明では、姿勢は可視光と視覚パターンの両方を、または二者択一的に、検知することにより得られる。例えば、独特の視覚パターン、バーコード、写真測量目標、ＡＰＲＩＬまたは他のタグをＬＥＤ光により「固定する」（すなわち、ＬＥＤの位置をタグに関して既知の距離および／または方向に配置する）。フォトダイオードまたはフォトトランジスタなどのアナログセンサを用いた場合は、ＬＥＤ光は独特の周波数または変調により識別することができる。またはＣＭＯＳまたはＣＣＤカメラなどのコマ送りセンサを用いる場合は、独特の色、配置、パターン、またはデユーティーサイクルにより識別することができる。ドック６００はＡＣ電源でよいので、少なくともロボットが動作中は、一定の照明が可能である。
【００４２】
理解されるように、ロボットとドックの相対的姿勢の解答可能な式を与えるのに十分な距離および／または角度を測定できる場合は、三角測量、三辺測量、および到着角の任意の組み合わせを方向ビームおよび／またはセンサと共に用いてよい。
【００４３】
基準マーカ６４０Ａ、６４０Ｂの別の例示の集合は図７および図４Ｄに示すドックパターンの部分である。図に示すように、特に、基準マーカ６４０Ａ、６４０Ｂをドック６００などの三次元の対象に適用する場合は、基準マーカ６４０Ａ、６４０Ｂは対象の角位置を定義するのに十分な空間的詳細を有してよい。ある実施の形態または本発明では、基準マーカパターンは工業デザインおよび美的価値のニーズと優れた認識能力のニーズとをバランスさせる。基準マーカパターンは独特なので背景や雑音からの偽の陽画を最小にすることができるし、パターンのサイズは認識の可能性を高めまた偽の陰画を減らす大きさにしてよい。
【００４４】
ある実施の形態または本発明では、工業デザインおよび美的価値に負の影響を与える可能性を減らすために、人の目に見えないドックパターンを用いてよい。カメラに一般に用いられるイメージセンサは可視光だけでなく赤外（ＩＲ）光を感知してよい。したがって、基準マーカは、例えば、ＩＲでは透明だが可視光では黒いフィルムで覆われたパターンを含んでよく、そのパターンはＩＲ適合レンズを用いるカメラで捕らえてよい。したがって、パターンは美的価値を懸念することなく視覚特殊性を最大にするよう設計してよい。
【００４５】
特徴を容易に検出できるようにコントラストを高めるため、パターンは全てのＩＲ光を通す部分とＩＲ光を妨げる部分とを有してよい。特徴の間の混乱を最小にするためにパターンの形は変え、繰り返さないようにする。選択された特徴または特徴のクラスタ６４０Ａ、６４０Ｂの検出および認識を高めるために、種々のパターンを用いてよい。ＩＲ光を通す部分とＩＲ光を妨げる部分とを含む図７の基準マーカのパターンは、ＤｏＧ検出器および／またはＳＩＦＴ記述子に適している。図４Ｄに示すように、パターンはシリンダなどの三次元の面の上に置いてよいので、幾何学的制約を視覚的にも幾何学的にも適合させて、偽の確かな一致を減らしまた種々の方向からのパターンを視覚化することができる。
【００４６】
ある実施の形態または本発明では、データベースは基準マーカ６４０Ａ、６４０Ｂ．．．６４０ｎ（ただし、「ｎ」は独特の基準マーカの最大数を示す整数）の図を表わす一意的に識別可能な項目を記憶し、図７に示すパターン内で検出できる特徴の独特のクラスタの図を用いてドック６００の姿勢を識別してよい。例えば、コンピュータモデルを用いて、ドック６００から種々の空間的位置でのモデルイメージを与えてよい。次に、ドック６００の実際のイメージなどのセンサ出力をモデルイメージと比較して、ドック６００とロボット２００との間の空間的関係を推定して、ドック姿勢を決定してよい。
【００４７】
例えば、ある実施の形態または本発明では、図８に示すように、メモリ２２２はＣＡＤモデルなどのドック６００の三次元モデルを含む（ブロック４００）。ＣＡＤモデルはドック６００を組み立てるのに用いるモデルでよく、または予め組み立てた物理的ドック６００のイメージに基づいてよい。三次元モデルを用いて、一組の視点から取ったドック６００の合成イメージをモデル化して、基準マーカ６４０Ａ、６４０Ｂの特徴ごとの位置および記述子を決定してよい。特徴ごとの三次元位置および記述子をメモリ２２２内に記憶して、ロボット２００の位置を決定するのに用いてよい。このように、ドック６００の三次元モデルを用いて、三次元モデルに関する既知の位置および方向に基づくモデル化されたデータを生成してよい。このデータと、未知の位置でのロボット２００からの実際のセンサデータとを比較してよく、ロボット２００の位置は実際のセンサデータとモデル化されたデータとの一致または近似的一致に基づいて決定してよい。
【００４８】
例えば、モデルは以下のように計算してよい。１個以上の基準マーカ６４０Ａ、６４０Ｂを持つ三次元モデル（視覚パターンなど）を決定してよい。一組の視点を選択し（ブロック４０２）、各視点ごとに（ブロック４０４）三次元モデルのイメージを表示する（ブロック４０６）。
【００４９】
特定の視点について、選択されたイメージ効果（音、照明効果、色、ぼやけ、および／または歪みなど）を持つ三次元モデルを表示する（ブロック４０６）。表示されたイメージ内の各特徴はイメージの座標、方向、およびスケール内に関連する中心を有する。これらの特徴およびその記述子（座標、方向、スケールなど）を視点内で検出して識別する（ブロック４０８）。イメージ内のキーポイントごとに（ブロック４１０）、特定のカメラモデルおよび三次元幾何学を用いて各特徴を三次元イメージの表面上に投影してよい（ブロック４１２）。その中心が三次元モデルの表面と交差しない特徴は全て除去してよく（ブロック４１４および４１６）、特徴の方向およびスケールを用いて残りの特徴ごとのイメージ支持領域を計算する（ブロック４１５）。或る特徴が、表示されたイメージ内の三次元モデルの閉塞境界と交差する支持領域を有する場合は（ブロック４１８）、これを除去する。残った特徴ごとの特徴記述子を計算し（ブロック４２０）、特徴ごとの三次元の位置および記述子を記憶する（ブロック４２２）。視点ごとに上のステップを繰り返す（ブロック４２４および４２６）。
【００５０】
ある実施の形態または本発明では、特徴検出のアーチファクトのために位置がごくわずかに異なるモデル上の同じ三次元の位置から、異種の図にまたがる多くの特徴が検出されることがある。かかる重複検出が重なると、記憶のサイズ、ランタイム、マッチング速度、および最終の姿勢の精度を最適化するための最終モデルの成長が妨げられる。かかる重複検出を組み合わせてイメージモデルを一層コンパクトにするのに、モデル点の次元空間クラスタリングおよび特徴記述子のヒストグラム空間クラスタリングを用いてよい。
【００５１】
このようにして、基準マーカ６４０Ａ、６４０Ｂの特徴の視覚的記述子（ドック６００上の視覚的ドックパターンなど）を含むデータベースを作成することができる。例えば、スケール不変特徴変換（Ｓｃａｌｅ  Ｉｎｖａｒｉａｎｔ  Ｆｅａｔｕｒｅ  Ｔｒａｎｓｆｏｒｍ（ＳＩＦＴ））、高速ロバスト特徴（Ｓｐｅｅｄｅｄ  Ｕｐ  Ｒｏｂｕｓｔ  Ｆｅａｔｕｒｅｓ（ＳＵＲＦ））、バイナリロバスト独立基本特徴（Ｂｉｎａｒｙ  Ｒｏｂｕｓｔ  Ｉｎｄｅｐｅｎｄｅｎｔ  Ｅｌｅｍｅｎｔａｒｙ  Ｆｅａｔｕｒｅｓ（ＢＲＩＥＦ））、または当業者に周知の他のものなどの、任意の適当な視覚記述子を用いてよい。データベースは或る特徴がどの方向から見えるかについての情報も含んでよい。例えば、特徴点で垂直な面を記憶して、視界制約として用いてよい。
【００５２】
図９に示すように、コントローラ２２０はセンサ２７０Ａ−Ｂから目標イメージなどの信号を受け（ブロック５００）、特徴検出器を用いて実際のイメージから視覚特徴を検出してよい（ブロック５０２）。特徴検出器は、ガウシアンの差（Ｄｉｆｆｅｒｅｎｃｅ  ｏｆ  Ｇａｕｓｓｉａｎｓ（ＤｏＧ））、ハリスコーナ（Ｈａｒｒｉｓ  Ｃｏｒｎｅｒｓ）、最大安定極値領域（Ｍａｘｉｍａｌｌｙ  Ｓｔａｂｌｅ  Ｅｘｔｒｅｍａｌ  Ｒｅｇｉｏｎｓ（ＭＳＥＲ））、ＦＡＳＴ、または当業者に周知のその他の方法などである。次に、実際のイメージで用いた特徴検出器はモデル内で計算した特徴を調べて（ブロック５０４）、その特徴とモデル化された特徴とを突き合わせる（ブロック５０６−５２６）。実際に検出した特徴ごとの記述子を取り出し、上に説明したドック「ランドマーク」特徴のデータベース内の特徴記述子を調べて、外観の一致を決定してよい。
【００５３】
ある実施の形態または本発明では、基準マーカ６４０Ａ、６４０Ｂと一致する一組の特徴を見つける可能性を増やすため、目標イメージのイメージ平面内で空間的に近くにあるイメージとデータベースの特徴とを突き合わせてクラスタを形成してよい（ブロック５０６）。クラスタごとに（ブロック５０８）、ランダムサンプルコンセンサス（ＲＡＮＳＡＣ）または漸進サンプルコンセンサス（ＰＲＯＳＡＣ）プロセスを用いて、基準マーカ６４０Ａ、６４０Ｂに対するカメラの仮想的姿勢を見つけてよい（ブロック５１０）。例えば、インライア（ｉｎｌｉｅｒ）しきい値に合格した場合は（これはイメージデータを一組のモデルパラメータで説明してよいことを示す）（ブロック５１２）、イメージが一致した全てのものの姿勢およびインライアを計算し（ブロック５１６）、その結果を記憶し（ブロック５１８）、また追加のクラスタを解析する（ブロック５２０）。
【００５４】
インライアしきい値に合格しない場合は（ブロック５１２）、残りの追加のクラスタを解析する（ブロック５１４）。サンプリングプロセスは制約を用いてよい（例えば、成功する機会を増やしまたドック基準マーカ６４０Ａ、６４０Ｂの三次元情報を利用するために、同じ方向から見える一致の候補の組を要求するなど）。各クラスタ内で仮想の姿勢が見つかった場合は、バンドル調整を用いて洗練してよく、また全てのイメージ一致（すなわち、クラス内のものだけでない）を用いて姿勢を再び最適化してよい。インライア一致の数により各クラスタにスコアをつけて、最良のクラスタを選択してよい。或るクラスタがしきい値一致スコアに合格した場合は（ブロック５２２）認識が成功したと決定して、ドッキングステーション６００に誘導するために、推定された姿勢および共分散をコントローラ２２０に与える（ブロック５２４）。
【００５５】
本発明の実施の形態についてロボット２００上のセンサ２７０Ａ−Ｂとドック６００上の基準マーカ６４０Ａ、６４０Ｂとに関して説明したが、理解すべきであるが、ある実施の形態または本発明では、センサ２７０Ａ−Ｂをドック６００上に設けてもよいし、また基準マーカ６４０Ａ、６４０Ｂをロボット２００上に設けてもよい。したがって、ドック６００がセンサデータを送信し、ドッキング経路１８０を計算し、および／またはドック６００上のセンサの信号出力に基づいて命令をモータ駆動システム２３０に送るよう構成してよい。例えば、ドック６００は方向性または非方向性センサを含んでよく、ロボット２００はＬＥＤまたはＬＥＤビームなどの基準マーカを含んでよく、またドック６００上のセンサがロボットの基準マーカを検出するとドック６００はロボット２００に知らせてよい。更に、ロボット２００の種々の構成要素（コントローラ２２０、メモリ２２２、ＨＭＩ２２８、およびマッピングおよびナビゲーションシステム２４０など）をドック６００および／またはハブ１１０上に含んでよく、かかる構成要素の機能の出力をロボット２００に送ってよい。
【００５６】
ドッキング経路の計算
次にドッキングレーン６５０に向かう順方向Ｆに移動するロボット２００とドックのドッキングポート６６０との間のドッキング経路１８０の経路計画に移ると、図４Ａ−４Ｃはドッキングレーン６５０への曲線のあてはめ１８０を用いる直接経路計画（図４Ａ−４Ｂ）と、対比する分割接近１８０ａ、１８０ｂ、１８０ｃ（図４Ｃ）の概要を示す。ロボット２００はロボット２００に対するドック６００の姿勢を決定することができるし、またある実施の形態または本発明では、ロボット２００が作成しまたはその中に記憶している地図上のドック６００の位置を決定することができるので、再充電および／またはごみの排出のときが来ると、ロボット２００はドック６００への最も直接のまた邪魔されない経路を予め計画してよい（図４Ｃ）。
【００５７】
図４Ｄおよび図４Ｅのドック６００の実施の形態に示すように、ドック６００はドッキングレーン６５０を含み、接近するロボット２００は順方向Ｆに移動してその中に入る。ある実施の形態または本発明では、ドッキングレーン６５０は外端６５０ａ、６５０ｂで制限され、その中にロボット２００が移動するドッキングポート６６０の中心軸と並ぶ中心軸６５０ｃを有する。ドッキングレーン６５０の外側の境界６５０ａ、６５０ｂ内でドック６００に接近することにより、ロボット２００は、その接点がドッキング接点６２２Ａ、６２２Ｂと正しく並び、その車輪がドックの戻り止め６２０Ａ、６２０Ｂと正しく合い、および／またはロボットの空気経路がドック６００の排出アダプタ６１０と正しく並ぶことを保証する。
【００５８】
図４Ａおよび図４Ｂが示すように、ロボット２００がここに述べた空間の地図を作り、地図上のドック姿勢（Ｘ，Ｙ位置および方向）の姿勢を記憶し、またロボット２００に対するドック姿勢を知ると、ドック６００までのロボット２００のドッキング経路１８０が、全く再調整なしに、ドッキングレーンまでの曲線のあてはめに沿って描かれる。説明のためであるが、ドック６００の姿勢は全体地図に対するドッキングレーン６５０の中心軸６５０ｃのＸ，Ｙ位置および方向と同じである。この情報を持つので、ロボット２００は分割されたドッキングルート１８０ａ、１８０ｂ、１８０ｃに比べて（分割方式では、ドック６００の姿勢を記憶するのではなく、ロボット２００がドック６００に戻るときに実時間で決定する（図４Ｂ））、迅速にかつ高い成功率でドッキングレーン６５０に到着することができる。
【００５９】
図４Ｂでは、ロボット２００はドック２００の姿勢を記憶しておらず、複数段の移動でドック６００に戻る。帰巣段１８０ａで、ロボットはドック６００の位置を識別する信号を見つける。ロボット２００は場所１８２ａで回転して整列段１８０ｂに沿って移動し、次に場所１８２ｂで再び回転して検出信号と並び、ロボット２００はドッキングレーン６５０に沿ってドック６００に接近する。対照的に、図４Ｃに示すように、例えば、ロボット２００が既に知っている姿勢を有するドック６００への経路を計画すると、ロボット２００は、ドック６００のドッキングレーン６５０との正しい整列１８０ｃを達成するための、帰巣１８０ａ、整列１８０ｂ、および再配置（例えば、場所１８２ａ、１８２ｂでの回転、ジグザグ行進、行き過ぎなど）に関連する時間を含まないコースを計画する。ドッキングレーン６５０と並ぶことにより、ロボット２００は前に述べた排出つば６１０、戻り止め６２０Ａ、６２０Ｂ、および／または電気接点６２２Ａ、６２２Ｂとうまく合い、または単にドッキングポート６６０と並ぶことができる。したがって、ドック６００までの経路を計画すること（図４Ｃ）は、経路を計画しないドッキング（図４Ｂ）より早くまた成功しやすい方法である。
【００６０】
経路計画の実施の形態または本発明では、帰巣、整列、または接近の段階はドック６００への曲線あてはめ経路１８０（これは例えば、ベイズ曲線でよい）を直接計画した経路である。曲線あてはめ経路１８０により、ドック姿勢（例えば、地図座標に対するドッキングレーン６５０の角度）へのロボット２００の整列を改善する必要が減りまたはなくなる。また経路計画は、ロボット２００とドッキングレーン６５０との間の障害物（例えば、椅子の足、オットマン、長椅子など）が片付いているかどうかを考慮に入れて、ドッキングプロセスを妨げる（例えば、遅らせる）可能性のある障害物に曲線あてはめ１８０が衝突するのを避けるようにしてよい。
【００６１】
ユーザまたは制約アルゴリズムが指定した場合は、床上の一連の点によりロボット２００はこれらの点の間でベジェ曲線を完成して、障害物を避け、および／または壁に平行に出入口や廊下を通って（すなわち、廊下の壁に平行におよび／または廊下の中央を通って、出入口３２のレンティル（ｌｅｎｔｉｌ）に垂直におよび／または出入口３２の中央を通って）進むことができる。ベジェ曲線により、場所１８２ａ、１８２ｂで止まったり回転したりしない滑らかなスプラインから成る優美な経路１８０を形成することができる。経路上に障害物を検出した場合は、上に述べた経路発見アルゴリズムは必要に応じて中間点を追加してよい。
【００６２】
ロボット２００は、既知の障害物を避ける経路を取り、占有されていない床空間を通り、ドッキングレーン６５０と適合してよい。経路１８０は、Ｄｉｊｋａｓｔｒａのアルゴリズムの変形などの経路発見アルゴリズムにより計画してよい（例えば、Ａ＊アルゴリズムまたはアルゴリズムのＤ＊ファミリ、例えば、Ｄ＊、フィールドＤ＊、ＩＤＡ＊、フリンジ、フリンジセービングＡ＊、一般適応Ａ＊、生涯計画Ａ＊、有界簡易メモリＡ＊、および／またはＴｈｅｔａ＊）。Ｐｉｎｔｅｒ  Ｍ．（２００１年）「より現実的な経路発見に向かって（Ｔｏｗａｒｄ  Ｍｏｒｅ  Ｒｅａｌｉｓｔｉｃ  Ｐａｔｈｆｉｎｄｉｎｇ）」、Ｇａｍｅ  Ｄｅｖｅｌｏｐｅｒ  Ｍａｇａｚｉｎｅ（４月号）、ＣＭＰ  Ｍｅｄｉａ  ＬＬＣ、ｐｐ．５４−６４（その内容全体をここに援用する）に定義されている非ホロノミックドライブ用の修正Ａ＊アルゴリズムを用いてよい。アルゴリズムごとに可能な経路樹が用いられる。
【００６３】
経路発見は前処理をオプションで含んでよい。例えば、縮小階層など、またはＤｅｌｌｉｎｇ  Ｄ．他(２００９年）「エンジニアリングルート計画アルゴリズム（Ｅｎｇｉｎｅｅｒｉｎｇ  ｒｏｕｔｅ  ｐｌａｎｎｉｎｇ  ａｌｇｏｒｉｔｈｍｓ）」、Ａｌｇｏｒｉｔｈｍｉｃｓ  ｏｆ  ｌａｒｇｅ  ａｎｄ  ｃｏｍｐｌｅｘ  ｎｅｔｗｏｒｋｓ，Ｓｐｒｉｎｇｅｒ，ｐｐ．１１７−１３９（その内容全体をここに援用する）に述べられているものなどである。
【００６４】
一般に、用いる曲線あてはめ、経路発見、および／または前処理アルゴリズムには制約がある。例えば、経路解またはあてはめ曲線１８０はドッキングレーン６５０を含み、ドッキングレーン６５０の一部はドック６００のフットプリントから１ロボット長Ｌ以上長く、一組の可能な入り口曲線１８０および／または入り口スプラインはドッキングレーン６５０と部分的に並び、および／または２点または３点がドッキングレーン６５０に沿うなどである。
【００６５】
ある実施の形態または本発明では、ロボット２００はドック６００の新しいイメージを得、モデル化されたイメージのデータベースに関して上に述べたように処理して、ドック６００の姿勢に関してロボット２００の実時間のまたは実時間に近い座標を決定する。処理したイメージごとに、出力はドック６００に関するロボット２００の三次元の位置および方向でよい。計算した三次元の位置および方向に基づいて誘導決定を行う前に、ロボット２００はまず三次元の位置および方向が予期した三次元空間の位置および方向の範囲内に収まるかどうかチェックする。
【００６６】
ある実施の形態または本発明では、三次元の方向のロールおよびピッチは水平で平坦な床面上を移動するロボットの公称のロールおよびピッチ角に近くてよい。更に、ｚ軸は水平で平坦な床に接触しているロボット２００の公称の高さに近くてよい。ロールまたはピッチまたはｚ座標のいずれか１つが予期した公称範囲の外にある場合は、その三次元の位置および方向を拒絶し、ロボット２００はカメラからの新しいイメージを待つ。この三次元の位置および方向を確認することにより、ロボット２００は、水平で平坦な床の上を走るロボットの方向が与えられたときに妥当でないような観察結果を確実に拒絶することができる。
【００６７】
妥当な三次元の位置および方向を得ると、ロールとピッチとｚ軸を捨ててこれを二次元平面上に投影して、ｘ軸とｙ軸とヨー角を含む二次元の位置および方向を得る。
【００６８】
好ましい実施の形態の図や詳細な説明を読むことにより、当業者は本発明の更なる特徴や利点や詳細を理解するであろう。ただし、かかる説明は本発明の単なる例示である。
【図１】
2015535373.tif 000003
【図２】
2015535373.tif 000004
【図３】
2015535373.tif 000005
【図４Ａ】
2015535373.tif 000006
【図４Ｂ】
2015535373.tif 000007
【図４Ｃ】
2015535373.tif 000008
【図４Ｄ】
2015535373.tif 000009
【図４Ｅ】
2015535373.tif 000010
【図５】
2015535373.tif 000011
【図６】
2015535373.tif 000012
【図７】
2015535373.tif 000013
【図８】
2015535373.tif 000014
【図９】
2015535373.tif 000015
【国際調査報告】
2015535373.tif 000016
2015535373.tif 000017
2015535373.tif 000018
2015535373.tif 000019