(58)【調査した分野】(Int.Cl.,DB名)
自立走行車両であって、カメラベースの検知システム、該自立走行車両を駆動するための駆動システム、および、前記駆動システムを制御するための制御システムが設けられた、自立走行車両と、
第1の基準マーカーおよび第2の基準マーカーを有するドッキングステーションであって、前記第2の基準マーカーが、前記第1の基準マーカーに対して所定の相対的間隔を規定するように前記ドッキングステーション上に位置している、前記ドッキングステーションと、
を備えた、自立走行車両をドッキングステーションへ誘導する装置であって、
前記制御システムが、
カメラベースの検知システムによって提供される前記第1の基準マーカーおよび前記第2の基準マーカーの画像を含む画像データを受信し、かつ、
前記自立走行車両を前記ドッキングステーションへ誘導するために、前記受信された画像データにおける画像フレームの底辺から前記第1の基準マーカーの基準点までの間隔と前記画像フレームの底辺から前記第2の基準マーカーの基準点までの間隔とを比較し、該比較結果に基づいて、前記自立走行車両の前記駆動システムを制御するように動作可能とされている、
自立走行車両をドッキングステーションへ誘導する装置。
前記第1の基準マーカーと前記第2の基準マーカーとが、前記ドッキングステーションが床面の上に配置されたときに、直立姿勢にある前記ドッキングステーションの表示部分に位置している、請求項1から3のいずれか一項に記載の装置。
前記第1の基準マーカーおよび前記第2の基準マーカーが、それぞれ、パターンを規定していて、前記第1の基準マーカーの前記パターンが、前記第2の基準マーカーの前記パターンと同じパターンとされている、請求項1から5のいずれか一項に記載の装置。
前記第1の基準マーカーおよび前記第2の基準マーカーが、それぞれ、パターンを規定していて、前記第1の基準マーカーの前記パターンが、前記第2の基準マーカーの前記パターンに対して鏡像とされている、請求項1から5のいずれか一項に記載の装置。
前記第1の基準マーカーと前記第2の基準マーカーとが、前記ドッキングステーションが床面の上に配置されたときに、実質的に直立姿勢にある前記ドッキングステーションの表示部分に位置している、請求項11に記載のドッキングステーション。
前記第1の基準マーカーおよび前記第2の基準マーカーが、それぞれ、パターンを規定していて、前記第1の基準マーカーの前記パターンが、前記第2の基準マーカーの前記パターンと同じパターンとされている、請求項12から14のいずれか一項に記載のドッキングステーション。
前記第1の基準マーカーおよび前記第2の基準マーカーが、それぞれ、パターンを規定していて、前記第1の基準マーカーの前記パターンが、前記第2の基準マーカーの前記パターンに対して鏡像とされている、請求項12から14のいずれか一項に記載のドッキングステーション。
【発明の概要】
【発明が解決しようとする課題】
【0004】
移動ロボットドッキングステーションには基本的に一群の接点を有する充電システムが設けられている。接点は、充電電流をロボットに供給するためにロボット上の相補的接点と係合可能とされている。しかしながら、ドッキングステーションはまた、ロボットがドッキングステーションを同定するのを支援するために無線信号、赤外線誘導ビームまたはその他の発出物を供給するための施設を有していることがある。しかしながら、かかる複雑性には問題点が伴う。しばしば、移動ドッキングステーションは住宅の部屋の内部において電源ソケットの近くにおかれる必要のある大きくかさばる物品である。それらの物理的存在は、少なからぬ視覚的インパクトがあり、これが、移動ロボットのユーザに対するインパクトは最小化されるべきであるという、移動ロボットとして優先されるべき原理からの乖離をきたすことにつながる。
【0005】
これらの問題点を念頭に本発明はなされたものである。
【課題を解決するための手段】
【0006】
第1の態様においては、本発明の様態は、カメラベースの検知システムと、自立走行車両を駆動するための駆動システムと、駆動システムを制御するための制御システムとが設けられた自立走行車両を備えた自立走行車両をドッキングステーションへ誘導する装置を提供する。この装置はさらに、第1の基準マーカーおよび第2の基準マーカーを有するドッキングステーションであって、前記第2の基準マーカーが、前記第1の基準マーカーに対して所定の相対的間隔を規定するように前記ドッキングステーション上に位置している、ドッキングステーションを備えており、前記制御システムは、前記カメラベースの検知システムによって提供された、前記第1の基準マーカーおよび前記第2の基準マーカーの表現を含む画像、を受信し、かつ、前記自立走行車両をベースステーション部へ誘導するために、前記受信された画像において表現された前記第1の基準マーカーおよび前記第2の基準マーカーと、前記第1の基準マーカーおよび前記第2の基準マーカーの間の前記所定の相対的間隔との差分に基づいて、前記自立走行車両の駆動システムを制御するように動作可能とされている。
【0007】
本発明は、多岐にわたる半自律型または完全自律型被誘導車両の文脈において有用であるが、家庭用移動ロボットの分野において注目すべき有用性を有する。本発明は、一対の基準マーカー(これはターゲットとも呼ばれる。)の間の観測された相対的間隔に基づいて、車両をドッキングステーションへ誘導するための計算的により集中的でないヒューリスティックな制御スキームを提供する。
【0008】
この装置はさらに、前記第1の基準マーカーと前記第2の基準マーカーとの間の前記所定の相対的間隔に関連するデータを保存し、前記画像における前記第1の基準マーカーと前記第2の基準マーカーとを探索して特定し、前記画像における前記第1の基準マーカーと前記第2の基準マーカーの相対的位置を評価し、前記第1の基準マーカーと前記第2の基準マーカーとの前記評価した相対的位置を、前記第1の基準マーカーと前記第2の基準マーカーの前記所定の相対的位置と比較して、前記自立走行車両を前記ベースステーション部へ誘導するために前記駆動システムを前記比較に従って制御するように動作可能とされていてもよい。
【0009】
一実施形態においては、車両とドッキングステーションとの間の距離に関する情報を取得するために、制御システムは、第1の基準マーカーと前記第2の基準マーカーとの間の相対的距離を比較するように動作可能とされている。好ましくは、制御システムは、前記比較を行うために前記基準マーカーの各々の中心点を特定して、前記撮影された画像内に出現する前記基準マーカーの各々における中心点のピクセル角距離を算出する。
【0010】
ドッキングステーションに対する車両の横方向の一列配置に関する情報を取得するために、制御システムは、画像における前記第1の基準マーカーと前記第2の基準マーカーとの間の水平方向整列を比較してもよい。これは、前記第1の基準マーカーと前記第2の基準マーカーのそれぞれのピクセル距離高さを計算し、2つの計算されたピクセル距離高さの間の差分を比較して、比較結果に基づいて誘導情報を推測することを伴ってもよい。
【0011】
装置がドッキングステーションとドッキング可能な自立走行車両を備えているので、本発明はまた、第1の基準マーカーと前記第1の基準マーカーから所定の距離だけ離隔されている第2の基準マーカーとを有する本体部を備えているドッキングステーションに存する。
【0012】
好ましくは、前記第1の基準マーカーと前記第2の基準マーカーとが、前記ドッキングステーションが床面の上に配置されたときに、実質的に直立位置にある前記ドッキングステーションの表示部分に位置している。好ましくは、カメラベースの検知システムがマーカーを撮像するのを支援するようにマーカーが顕著かつ明確に表示される平坦な表面を提供するように前記ドッキングステーションの前記表示部分が平面状とされている。一実施形態においては、前記表示部分が、前記ドッキングステーションのベース部分に対して枢動可能とされている。これにより、ドッキングステーションを薄型形態とすることが可能となる。
【0013】
原理的には基準マーカーは単純なものであれ複雑なものであれ多くの形態をとり得る。しかしながら、複雑な基準マーカーのほうが多くの情報を伝達することができるものの、かかる複雑な基準マーカーはカメラベースの撮像システムによって精確に撮影されるという観点からはあまりロバストとはいえない。一実施形態においては、基準マーカーは、2×2構成の4つの正方形で構成されたグリッド部の形態とされたパターンを規定している。好ましくは、画像フレームにおけるマーカーを特定するシステムの能力を最大化するために、前記グリッド部における交互配置された複数の正方形が対比色、特に黒色および白色とされている。基準マーカーの形態に係るその他のオプションとしては、円形ベースまたは他の多角形ベースのマーカーがあるが、現状では正方形パターンのマーカーは適切な特徴検出アルゴリズムによって可及的容易に特定されることができる。
【0014】
自立走行車両のカメラベースの検知システムは単眼カメラを備えていてもよいが、一実施形態においては、カメラベースの検知システムは、360度の情景画像が単一フレーム内で撮影されることができるように全方位カメラを備えている。
【0015】
本発明はまた、自立走行車両を制御して前記車両をドッキングステーションへ誘導する方法であって、前記ドッキングステーションが、第1の基準マーカーと第2の基準マーカーとを備え、前記第2の基準マーカーが、前記第1の基準マーカーに対して所定の相対的間隔を規定するように前記ドッキングステーション上に位置し、かつ、前記方法が、前記ドッキングステーションを含む画像を撮影するステップと、前記自立走行車両を前記ベースステーション部へ誘導するために、前記受信した画像における前記第1の基準マーカーおよび前記第2の基準マーカーの表現と、前記第1の基準マーカーおよび前記第2の基準マーカーの間の前記所定の相対的間隔との差分に基づいて、前記自立走行車両の駆動システムを制御するステップと、を含む、自立走行車両を制御して前記車両をドッキングステーションへ誘導する方法に存する。
【0016】
本発明がより一層容易に理解されるようにするため、以下、実施形態を添付の図面を参照しつつ専らかかる実施形態の一例として説明する。
【発明を実施するための形態】
【0018】
図1を参照すると、ロボットシステム2は、移動ロボット4と、関連するドッキングステーション6とを備えている。この実施形態においては、移動ロボット4は、この移動ロボット4が真空掃除ロボットであるという文脈において示されているが、このことは本発明にとって本質的なことではないこと、および、本発明が家庭内またはその他の状況における任意の移動ロボットに適用可能であることが理解されるべきである。移動ロボット4は、自律型であって、ロボットが適切なオンボードナビゲーションシステムの支援のもとで床を掃除しつつ室内を移動することができるように十分な処理能力および検知能力を備えている。
【0019】
移動ロボット4は、内部バッテリパック(
図1には図示せず)の形態とされた充電式電源による電力供給を受けている。かかるバッテリパックは、概ね技術分野において知られたものであり、セルを構成する化学物質は様々であるが複数のセルで構成されている。セルを構成する化学物質としては、ニッケル金属水素化物やニッケルカドミウムといったその他の化学物質で構成されたセルも許容範囲ではあるが、高電力密度、低充電損失、および、メモリ効果がないこと等の観点からリチウムイオン系列のものが現状では好ましい。
【0020】
ロボット4は、バッテリパックが残量ゼロ状態に近づいた際にバッテリパックを再充電することができるようにドッキングステーション6とドッキング可能とされている。ドッキングステーション6とドッキングするためにロボット4が進む経路については、後続箇所においてより一層詳細に説明するものとする。
【0021】
ドッキングステーション6は、部屋の壁を背にして位置した状態で
図1に示されている。ドッキングステーション6は、一対の細長い電気的接点8の形態とされた電気的接触手段を備えており、この電気的接触手段により、ドッキングステーション6は、ロボット4がドッキング位置に位置すればロボット4に対して充電エネルギーを供給することができるようになっている。ドッキングステーション6は、電源供給部12とケーブル14とを介して電源壁コンセント10に接続されており、このようにして、ドッキングステーション6の電気的接点8に対する電源供給が提供される。
【0022】
ロボット4は、
図2においてより一層詳細に示されている。ここで、ロボット4は、略円形の本体部16と、該本体部16の前方部に担持されていて本体部16の相補形状の凹部20から突出している分離装置18とを備えている。
【0023】
本明細書の目的のため、ロボットの文脈における用語「前方(front)」および「後方(rear)」は、ロボットの運転中の進行方向および後退方向の意味で用いるものとし、この意味で分離装置18はロボットの前方部に配置されている。同様に、用語「左(left)」および「右(right)」はロボットの前進移動方向を基準に用いるものとする。
【0024】
本体部16は、ロボットの複数の構成部品を支持しており、好ましくはABS(アクリロニトリルブタジエンスチレン)などの高強度射出成型材料から製作されているが、アルミニウムまたはスチールなど適切な金属材料または炭素繊維複合体などの複合材料で構成されることもできる。
【0025】
ロボット4は、ロボットをその周囲環境において推進させることができる駆動システムを有しており、本体部の両側にそれぞれ取付けられた一対のトラクションユニット22を備えている。一方のトラクションユニット22のみが部分的に
図2に示されているが、トラクションユニットの精確な形態は本発明の中心的問題ではないことが理解されるべきである。しかしながら、この特定の実施形態においては、トラクションユニット22は、駆動プーリーホイールと従動プーリーホイールとの周囲に拘束された連続ゴム引ベルトまたはトラックを有する電動式キャタピラー(無限軌道)ユニットの形態とされているが、これに代えて車輪を用いることもできる。トラクションユニット22は、本体部16の対向する両側にそれぞれ配置されており、ホイールの回転速度および回転方向に従って、左または右へ向かって屈曲した経路に従うために、または、いずれかの方向へ任意のスポットで反転するために、ロボット4が進行方向または後退方向において駆動されることができるように独立的に動作可能とされている。かかる配置構成は移動ロボット用途において一般的なものであるので、ここではさらなる詳述は行わないものとする。
【0026】
床面を掃除するために、ロボットはまた、トラクションユニット22の後方で本体部16の裏側上に支持されたクリーナーヘッド24を備えている。図面には図示しないが、クリーナーヘッド24は、床面から塵埃を攪拌するように動作する回転式攪拌機を備えている。モータまたはファンユニットといった適切な形態の適切な真空発生器は、図示しないが、塵埃を含む空気流がクリーナーヘッド24内を通過して分離装置18へ吸引されるようにクリーナーヘッド24と連通して設けられている。これらの構成部品の精確な構成は進歩的発明概念にとっては本質的なものではなく、さらなる詳細については省略するものとするが、クリーナーヘッド、攪拌装置および分離装置などの構成部品がロボット真空掃除器の文脈において知られていることに留意すべきである。
【0027】
本体部16の裏側はまた、ロボット本体部16の裏側に支持された第1の電気的接点と第2の電気的接点で構成された電気的接触手段(図示せず)を備えている。第1の接点および第2の接点の各々は、整列した構成で取付けられており、ドッキングステーション6上の電気的接触手段8に接続されることができるように動作可能とされている。
【0028】
図3は、ロボット4の制御システム30および制御システム30とその前述した構成部品とのインタフェースを図式的に示した図である。制御システム30は、その様々なセンサから受信した信号を処理するとともにロボット4を適切な仕方で駆動するための適切な制御回路および処理機能を有するコントローラ32を備えている。コントローラ32は、ロボット4のセンサ群34内にインタフェース接続されており、この手段により、ロボット4は、その周囲環境のマップを構成して掃除ルートを作成するために、その周囲環境に関する情報を収集する。センサ群34はまた、概ね
図1に示されておりナビゲーションセンサ36を備えているところ、ナビゲーションセンサ36は、この実施形態においては、ロボット4に対してその周囲に係るパノラマビューを提供する全方位カメラの形態とされたカメラベースのシステムであり、また、ロボット4に対して障害物検出能力を提供する近距離近接センサアレイ38である。そして、
図1には示されていないが、凸凹検出システム40が設けられている。
【0029】
ユーザインタフェース42は、ユーザが例えばロボット4に対して掃除プロセスを開始/停止させる命令を行うことができるように設けられている。ユーザインタフェース42はまた概ね
図1に示されている。ユーザインタフェース42は、1つまたは複数の機械式ボタンといった様々な形態をとり得るもので、あるいは、タッチスクリーン技術によるグラフィカルユーザインタフェースであってもよい。
【0030】
コントローラ32はまた、トラクションユニット22に関連するモータ44へ駆動信号を供給するように構成されているとともに、トラクションユニットから走行距離データを受信するように構成されている。この目的のため、ロータリーエンコーダなどの適切な回転式検知手段46がモータ44上に設けられている。
【0031】
適当な電源入力および制御入力が吸引モータ48および攪拌機モータ50に供給されている。そして、電源入力は、バッテリパック52からコントローラ32へ供給されており、充電インタフェース54が提供され、この手段により、コントローラ32はバッテリ供給電圧が適切な閾値を下回ったときにバッテリパック52の充電を行うことができる。充電インタフェース54は前述のとおり、ロボット4の裏側に設けられた充電接点によって実現されていることが理解されるべきである。
【0032】
ナビゲーションセンサは、全方位センサ36で構成されているものとして簡単に前述したところである。より詳細には、
図4を参照すると、ナビゲーションセンサ36は、焦点調節システム58とデジタル画像センサ60、例えば、当業者に知れているように、電荷結合素子(CCD)とに光学的に結合されたパノラマ環状レンズ56を備えている。
図4において図式的な形態で示されたように、パノラマ環状レンズ56は、屈曲した環状上部表面62と屈曲した環状下部表面64とを有するモノリシックレンズで構成されている。上部表面はロボット4のカバーから突出しており、ロボット4周辺部の周りにおよそ45度の高さの視野θをなしている。
【0033】
レンズ56に入射する光は上側レンズ表面62を通過して屈折し、下側レンズ表面64の鏡面仕上げされた内部から反射し、続いて、上側表面62から反射して、下側レンズ表面62に設けられた射出瞳66を通過する。出射光は画像センサ60上の焦点調節システムによってコリメートされる。図示したとおり、結果として得られる画像65は、環状フォーマットであるが、コントローラ32による画像処理を単純化するため、環状画像を矩形フォーマットに準拠する処理後画像67に変換する適切な制御回路が設けられている。この実施形態においては、矩形画像67は、1024ピクセル×128ピクセルの解像度を有するが、これらの数値は一例として提供されたものであることが理解されるべきである。
【0034】
図3における制御システム30に戻ると、コントローラ32は、掃除機能を行うためにロボット4を部屋じゅうに誘導する機能を担うナビゲーション制御モジュール68を備えている。ナビゲーション制御モジュール68は、ナビゲーションセンサ36から画像データを受信し、その周囲の環境内に自装置を配置して床面を真空掃除するために適切な掃除パターンに従って走行するように動作可能とされている。好ましいシナリオにおいては、ロボット4は、部屋の側部でドッキングステーション6上に配置された状態で運転を開始し、それによりロボット4は自装置の初期位置をグローバル基準座標系における自装置の原点である(0,0)座標として、自装置の内部マップ上に設定する。ロボット4は、そのうえで、部屋じゅうを掃除しながら移動することに移行し、それによりロボットは適切な時点で、例えば、バッテリパック52の充電レベルが所定の閾値を下まわったと判定されたときに、ドッキングステーション6に帰還する。ナビゲーション制御モジュール68は、したがって、ロボット4が部屋じゅうを移動して自装置の初期位置に帰還することができるように適切な位置測定およびマッピング機能を実装しており、この初期位置は、このシナリオにおいてはドッキングステーションが存在する位置である。ナビゲーション制御モジュール68の精確な動作内容は本発明にとって本質的なものではないため、さらなる詳細については提供しないものとする。
【0035】
ロボット4をドッキングステーション6へ帰還させる際、ナビゲーション制御モジュール68は、ロボット4を、ドッキングステーション6の正面にかつできるかぎりドッキングステーション6に接近して配置するようにする。実際には、システム内における潜在的な誤差のために、ナビゲーション制御モジュールは、ロボット4を、角度誤差を許容しつつ、かつ、ドッキングステーションの所定の最大半径内、例えば400mmから600mm内でドッキングステーションの正面に配置することができる。これが達成されると、ロボット4の制御は、コントローラ32の機能部としても提供される、ドッキング制御モジュール70に委譲される。
【0036】
記憶モジュール71は、ナビゲーション制御モジュール68とドッキング制御モジュール70とによって生成されかつ利用されるデータを保存するとともにここでは言及しないコントローラ32によって行われるその他のタスクのために設けられている。例えば、記憶モジュール71は、ナビゲーション制御モジュール68によって生成されかつ利用されるマッピングデータおよびルートデータを保存する役割を担う。メモリ形式の具体的タイプは本発明にとり本質的なものではないので、ここでは詳述しないものとする。いうまでもなく、しかしながら、記憶モジュールはコントローラ32の適切なオンボードメモリとすることができ、コントローラ32にとり適切かつ許容し得る十分な容量およびアクセス速度を有する。
【0037】
ドッキング制御モジュール70の目標は、ロボット4の初期位置からナビゲーション制御モジュール68によって提供されるドッキングステーション6の所定の距離および角度内となるようにロボット4をドッキングステーション6上へ誘導することにある。ドッキング制御モジュール70はこの目標を、ドッキングステーション上に設けられた一対のターゲット73を特定するために画像データを解析するとともに以下に詳述するように、ロボット4をドッキングステーション6上へ誘導するために画像データから、トラクションユニット22への適切な制御入力を推測することによって達成する。
【0038】
ドッキングステーション6について、これを適切な文脈においたうえで一般的用語により説明した。より詳細には、
図5を参照すると、ドッキングステーション6は、2つの主要コンポーネント、すなわち、ベース部分72と該ベース部分72に対して枢動可能とされていて折りたたんだ状態または「収納」状態とされることができる背部74とを備えている。
【0039】
ドッキングステーション6は、ユーザによって部屋内で位置決め可能とされており、典型的には、ユーザは、
図1に示すように、ベース部分の後端部が壁に隣接した状態となるようにベース部分72の位置を選択する。ベース部分72は、細長い後部76と、該後部76から前方へ延在されたプラットフォーム部78とを備えている。ベース部分72は、「T」字型の一般的形態をとり、T字のうちその横方向バーが細長い後部76をなし、かつ、「T」の幹の部分が前方プラットフォーム部78をなしている。プラットフォーム部78は、ロボット4がドッキングステーション6に対して許容範囲内の位置にあるときにロボット4との電気的結合を確立するための電気的接触手段8を備えている。
【0040】
ここで、ドッキングステーション6は、背部74は、該背部74が実質的に直立しつつベース部分64に対してほぼ直角に向くように、折りたたまれていない状態あるいは「展開」状態において示されている。ドッキングステーション6はまた、背部74がベース部分72に対して略平坦となるように枢動する折りたたんだ状態あるいは「収納」状態におくことができることに留意すべきである。背部74は、本実施形態においては略矩形でありかつ実質的に平坦であるが、このことは本質的ではないことが理解されるべきである。
【0041】
一対のターゲット73は、ドッキングステーション6の背部74上に設けられており、したがって、ドッキングステーション6が展開状態にあるときに一対のターゲット73はロボット4にとって高度に視認可能な表示位置にある。一対のターゲット73は、背部74の左手側に位置している第1の基準マーカーまたはターゲット80と、背部74の右手側に位置している第2の基準マーカーまたはターゲット82とで構成されている。この実施形態においては、第2のターゲット82は、垂直平面に対してみた場合に第1のターゲット80に対して左右対称となる鏡像であり、かつ、第1のターゲット80に対して水平方向に一列に並んでいる。ターゲット80、82の各々は、チェスまたは「チェッカー」盤のような態様で対照的になっている単色の2×2の正方形グリッド部またはアレイで構成されている。ターゲット80、82の各々にとっては実質的に同一パターンを有することが現状では好ましいが、その理由は、そうすることでドッキング制御モジュール70によって実行される目標追跡アルゴリズムの実装が簡素化されるからであり、また、この実施形態においては、グリッド部の交互配置される要素は最大のコントラストを得るため黒色または白色に着色されている。しかしながら、各ターゲットは所望により、異なるパターンにて設けられることができ、および/または所望により、異なる色で設けられることができる。後の参照のため、各ターゲットはグリッド部の中心にある中心点「C」を有している。
【0042】
ターゲット80、82の精確な形態は決定的なものではない。ターゲット80、82は背部74に貼付されるステッカーの形態とされることができ、代替的には、ターゲット80、82は、例えば、製造プロセスにおいて背部74のプラスチック素材に組み込まれた適切なラベルとされることもできる。
【0043】
ドッキング制御モジュール70は、ナビゲーションセンサ36から受信された画像データにおけるターゲット80、82を特定するとともにターゲット80、82が画像において出現しているそれらの相対的位置から誘導情報を決定することができるように構成されている。
図6は、この原理の説明の便宜のために提供されており、ドッキングステーション6の正面で横方向に互いに隣り合うように一列に並んだ3つのポジションP1、P2、P3においてロボット4が示されている。各ポジションにあるロボット4の正面の矢印は、それらの「真正面」方向を示している。ロボットの3つのポジションP1、P2およびP3の各々に対応する画像フレームもまた示されているところ、この点で、各画像フレームにおけるドッキングステーション6の縮尺は実世界のデータに対して必ずしも正確ではなく動作原理をより一層明確に説明するためにある程度の定型化を行ったものであることに言及しておくべきである。
【0044】
ポジションP1においては、ロボット4は、ドッキングステーション6の真正面においてドッキングステーション6と対面している。まず画像フレームP1についてみると、ドッキングステーション6が画像の中央に位置していること、および、ターゲット80、82の各々が水平方向に整列していることがみてとれる。より具体的には、ロボット4がドッキングステーションと同じ地平面上にあるという仮定の下では、ターゲット80、82の各々における中心点のピクセル高さは、実質的に等しい。
【0045】
次に第2のロボットポジションP2についてみると、ロボットの真正面位置がドッキングステーション6と整列する方向にロボットが向けられているので、ドッキングステーション6は依然として画像の中心に位置していることがみてとれる。しかしながら、ロボットポジションP2がドッキングステーション6の一方の側に対して横方向に離隔しているので、ターゲット80、82の相対的位置は視覚上の遠近が変化するために画像内でシフトしている。より具体的には、右手ターゲット82は、左手ターゲット80と比較して、画像フレームP1内でより低い位置にある。別の仕方で表現すると、左手ターゲット80の中心点のピクセル高さH1は、右手ターゲット82の中心点のピクセル高さH2よりも大きい。
【0046】
第3のロボットポジションP3を第2のロボットポジションP2と比較すると、ドッキングステーション6が依然として画像フレームの中心に位置していることがわかるが、この画像フレームにおける視覚上の遠近の変化のために、右手ターゲット82と比較して画像フレーム内でより低い位置に存在しているのは、今度は左手ターゲット80のほうとなっている。別の仕方で表現すると、左手ターゲット80の中心点のピクセル高さH1は右手ターゲット82の中心点のピクセル高さH2よりも小さい。
【0047】
2つのターゲットの中心点のピクセル高さを解析することで、および、ドッキングステーション6の表示部分上で水平方向に整列するように第1のターゲット80と第2のターゲット82とが所定の相対的間隔とされていることを知ることで、ドッキング制御モジュール70は、ロボットがドッキングステーション6の左または右のいずれに存在しているのかを判定することができ、したがって、ロボット4をドッキングステーションと整列するようにするのに適切なトラクションユニット22向け制御信号を判定することができる。例えば、ポジションP2においては、右手ターゲット82のピクセル高さH2は相対的に低い位置にあり、したがって、ドッキング制御モジュール70は、自装置をターゲット80、82の間で整列させるために自装置が右へ移動する必要があることを判定することができる。さらに、2つのターゲットの間のピクセル高さH1、H2の差分の大きさを評価することで、ドッキング制御モジュール70は、自装置をターゲット80、82に対して整列させるために自装置が横方向にどの程度の距離を移動する必要があるかに関する情報を推測することができる。
【0048】
前述したロボットポジションP1、P2およびP3のすべてにおいて、ロボット4は、ドッキングステーション6と向かい合うような方向に向けられており、したがって、ドッキングステーション6およびターゲット80、82は画像フレームの中心に出現している。しかしながら、ロボット4がこのような仕方で配置されていない場合には、ドッキングステーション6は画像内で異なる横方向位置で出現するであろうことが理解されると考えられる。ロボット4は、したがって、画像内のターゲット80、82の横方向位置から、ドッキングステーション6に対する自装置の向きを推測してもよい。
【0049】
同様の原理がロボット4とドッキングステーション6との間の距離を判定するためにドッキング制御モジュール70によって利用されることができる。次に
図7を参照すると、2つの代替的なロボットポジションP1、P2が整列した位置で示されており一方が他方の後方にあり、かつ、ドッキングステーション6に直接向かい合うような方向に配置されている。
図6におけると同様、ロボットの各ポジションP1、P2に対応する画像フレームが提供されている。
【0050】
ポジションP1では、ロボット4は、ポジションP2におけるよりも、ドッキングステーションに対してより接近しており、ドッキングステーションは画像フレーム内で中央に位置しており、ターゲット80、82の各々は水平方向に整列している。これを第2のポジションP2と比較すると、画像フレームP2においてはドッキングステーション6もまた画像フレームの中央で整列しているが、2つのターゲット80、82が第1のポジションP1におけるよりも互いにより接近していることがわかる。別の仕方で表現すると、左手ターゲット80の中心点と右手ターゲット82の中心点との間のピクセル幅W2が第2のポジションP2においては第1のポジションP1におけるピクセル幅W1よりも小さくなっている。したがって、2つのターゲット80、82の中心点の間のピクセル幅W1、W2を解析することで、および、第1のターゲット80と第2のターゲット82とが互いに対して所定の相対的距離にあることを知ることで、ドッキング制御モジュール70は、ドッキングステーション6からのロボット4の距離に関する情報を推測することができる。
【0051】
前述した議論は、ドッキングステーション6に向けて誘導されるためにロボット4が移動しなければならない方向および距離に関する情報をドッキング制御モジュール70が判定する原理を説明したものである。さらなる説明のため、ドッキング手順の間にドッキング制御モジュール70によって実行されるルーチン99が
図8に示されているところ、これについて、以下、ドッキング手順の間にロボット4によってとられる移動パターンを示す
図9をも参照しつつ、ドッキング手順の実施例を用いて説明することにする。
【0052】
図8を参照すると、ナビゲーション制御モジュール68がドッキングステーション6のアクセス可能範囲内へロボット4を帰還させて制御をドッキング制御モジュール70へ委譲すると、ルーチンがステップ100をもって開始する。ロボット4は、したがって、ステップ102でドッキング状態に移行し、ステップ102に続いて、ドッキング制御モジュール70は、画像取得ステップ104で、ナビゲーションセンサ36から画像フレームを取得して画像フレーム上でターゲット80、82を探索することにより「ターゲット探索」を行う。
【0053】
画像内におけるターゲット80、82の存在を特定するために、ドッキング制御モジュール70が、ターゲット80、82において提示されたパターンを特定するように適切に調整された「FAST特徴検出器(FAST feature detector)」として知られる加速セグメントテスト(accelerated segment test)アルゴリズムの一種を実装することが現状では好ましく、かかる特徴検出アルゴリズムは当業者に理解されていると考えられる。しかしながら、画像フレーム内でターゲットのペアを特定すること、好ましくは本実施形態において用いられるような相対的に低解像度の画像においてターゲットのペアを特定することにおいてロバストであるかぎり、他の特徴検出アルゴリズムであっても許容範囲である。
【0054】
画像取得ステップ104からさらに進んで、ターゲット80、82が取得された画像フレーム内で特定されたか否かに依存してルーチンは判定ステップ106で分岐する。次に
図9における実施例を参照すると、ロボット4はドッキングステーション6の左側に位置しており、ドッキング制御モジュール70がターゲットを確実に「視認する」ことができないエリアを表すゾーン「A」内に存在していることが理解できる。このシナリオにおいてルーチンは機動ステップ108に移行し、この機動ステップ108においては、ロボットは所定のターゲット探索機動を開始する。本実施形態においては、ロボット4は、自装置の開始点から外側へ螺旋運動を開始するが、その他の機動パターンも許容範囲であることが理解されるべきである。例えば、ロボット4は、段階的に増大する左右交互移動を行うようにプログラムされることができる。
【0055】
ロボット4が
図9に符号110で示すその螺旋形「ターゲット探索」経路に沿って機動を行っている間、ルーチン99は、画像フレームを取得してターゲット80、82が画像内のどこで視認可能であるかを判定するためにステップ104、106および108をループする。好ましくは、ルーチンはターゲット探索機能の実効性を最大化することとプロセッサオーバーヘッドに対する大きなインパクトを回避することとをうまく両立させると現在のところ考えられている、およそ5-10Hzでこれらのステップをループする。
【0056】
図9をみるとわかるように、ロボット4は、ゾーンB内で、「ターゲット探索」機能が画像フレーム内でターゲット80、82を特定することができるポジションP1に到達するまで、螺旋形ターゲット探索経路に沿って移動する。ルーチン99は、したがって、ターゲット80、82がロボット4の真正面に位置するか否かを確定する判定ステップ112へ進む。ゾーンBは、ターゲットがロボットにより視認可能であるべきドッキングステーションの中心線に対する角度領域によって表現されることに留意すべきである。この目的のため、ゾーンBは、およそ45度の角度範囲を有している。
【0057】
ロボット4の向きは、ポジションP1において矢印で示されており、ロボット4はドッキングステーション6に対して略平行に向いている。ポジションP1の代表画像がまた
図9に示されており、ロボット4の移動方向がターゲット80、82に対して整列されていないことから、ドッキングステーション6が画像フレームの左手側に位置していることがわかる。ポジションP1における画像フレームにおけるターゲット80、82の位置ゆえに、判定ステップ112における判定は否定的となり、ルーチンは、ロボット4を回転させてターゲット80、82に対して整列されるようにするステップ114に進む。ルーチンは、そのうえで、ロボット4がドッキングステーション6に対して整列されるまでステップ104からステップ112をループする。この議論におけるこの点に関しては、ドッキングステーション6は、その視覚上の遠近は変化していないものの実際には画像フレーム内で中心にくるように画像フレームに対して移動したことが理解されるべきである。
【0058】
ひとたびターゲット80、82がロボット4の真正面にくると、ルーチンはステップ116に移行し、このステップ116において、各ターゲット80、82の中心点Cが画像内で実質的に整列されているか否かが判定される。これを達成するため、ドッキング制御モジュール70は、
図6を参照して前述したとおり最も直近の画像においてドッキング制御モジュール70が取得した各ターゲット80、82の中心点どうしの高さの差分を解析する。
図9の例においては、ポジションP1では、ドッキングステーション6の視覚上の遠近は、左手側ターゲット80が右手側ターゲット82と比較して画像内でより高い位置にあることを意味する。したがって、判定ステップ116における判定は否定的となり、処理フローは判定ステップ118に移行し、この判定ステップ118では、ドッキングステーション6が遠すぎるか否かが確定される。これを達成するため、ドッキング制御モジュール70は、画像内のターゲット80、82の中心点間のピクセル距離W(以下、「ターゲットピクセル角距離」という。)を比較し、この値を、ロボット4が自装置の「ドッキング走行」を開始する前にロボット4がドッキングステーション6から離隔し得る許容範囲の距離を確定するために設定された所定の値と比較する。実際には、したがって、所定のターゲットピクセル角距離は、ロボット4がドッキング走行に成功することに備えるためにドッキングステーション6から離隔すべき理想的距離ゾーンであるゾーンCを確立する。ドッキング制御モジュール70の全体的な狙いは、ロボット4をドッキング走行に備えさせるために該ロボット4をゾーンC内に位置付けることにある。
【0059】
図9の例においては、ロボット4は、ゾーンCの向こう側にあるもののゾーンBの角度範囲内に入っているので、判定ステップ118での判定は肯定的となり、したがって処理フローはステップ120に進み、このステップ120においてロボット4を前進させる。これに続いて、ルーチンは、ステップ122において電荷が検出されたか否かを判定するために、ロボット4の充電システムをチェックするところ、この例では判定は否定的となり、処理は画像取得およびターゲット探索ステップ104へループバックする。ターゲット80、82がロボット4にとって視認可能であるので、そして、ロボット4がターゲット80、82に対して整列されているので、ターゲット80、82が離れすぎていると判定されなくなるまで、処理はステップ118、120および122をループバックする。別の仕方で表現すると、ターゲットピクセル角距離が所定の最大値以上であるとドッキング制御モジュール70が判定するまで「前進」動作が継続する。ロボット4は、したがって、
図9に示すポジションP2に到達したことになる。
【0060】
今やポジションP2においては、プロセスは、前述のとおり、ステップ102からステップ118の間をループするが、判定ステップ118の判定は否定的となり、処理フローはさらなる判定ステップ124へ進む。ステップ118と同様の仕方で、ステップ124では、ドッキング制御モジュール70はターゲットピクセル角距離を解析して、当該角距離がゾーンCの内側境界125を確立する所定の最大値を超えるか否かを判定し、そして、そうする際に、ドッキング制御モジュール70は、ロボットが依然としてゾーンC内にあって、ドッキングステーション6に接近しすぎていないか否かを判定する。ロボット4がゾーンC外へ移動して、ドッキングステーション6に対して接近しすぎている場合には、判定ステップ124における判定は否定的となり、ステップ127は、ロボット4がゾーンC内に位置するようになるまでロボット4に逆機動を実行させる。
【0061】
ポジションP2ではロボット4が依然としてゾーンC内にあるので、ステップ124では判定は否定的となり、したがって処理フローはステップ126に移行する。ステップ126は機動ステップであって、ドッキング制御モジュール70は
図6を参照して上記説明したとおり2つのターゲットの中心点の相対的ピクセル高さを解析して、ロボット4に対して低いほうのターゲット(この場合には右手ターゲット82である。)の方向に所定の距離だけゾーンCを横断するように命令する。所定の距離は、固定値であってもよいが、好ましくはターゲットの不整合にリンクされていてもよい。例えば、ターゲットの不整合が大きくなるほどゾーンCをロボットが横断すべき距離も大きくなるなどであるが、オーバーシュートを防止するため、ロボットが相対的に少ないステップで横断を行うことが好ましい。ひとたびロボット4が横断移動を完了すると、ロボット4は自装置をターゲットに対して整列させるために再び回転する。その理由は、ロボットが横断移動の間に、ターゲットが真正面に視認されていない場合にターゲットが「傾動」することにつながる前後の縦揺れ効果から保護することにある。
【0062】
この機動は、ロボット4がポジションP2からポジションP3へ横断する
図9に示されている。この操作の間、ロボット4が今やゾーン「D」内においてポジションP3で存在するように2つのターゲット80、82が画像内で実質的に水平方向に整列するようになるまで、ルーチンはステップ104からステップ126をループする。
【0063】
ポジションP3では、ターゲットは、対応する画像フレームに示されるとおり水平方向に整列されているが、ドッキングステーション6が画像フレームの左手側に寄っていることから、ターゲット80、82がロボット4に対して真正面で整列していないことが理解される。処理フローは、したがって、画像フレーム内のターゲット80、82に対して整列されるポジションP4に到達するように、ステップ112から114をループする。
【0064】
ポジションP4では、ロボット4はゾーンDの中間におりドッキングステーション6と真正面になるように整列しているので、ロボット4は、ドッキングステーションへの「ドッキング走行」を行うために理想的な位置となるように機動を行ったことになる。したがって、処理は、ステップ112および116からステップ120を継続し、ステップ120では、ロボット4は前進するように命令される。処理は、電荷検出ステップ122を継続し、この判定ステップ122の判定が肯定的となることができるまで、つまり、ロボット4が機動を行って電気的接触手段8と係合するために自装置をドッキングステーション6上におくことに成功するまで、ループを継続する。電荷がステップ122で検出されると、ルーチンはステップ128へと続き、この時点で、ドッキング手順は完了しているとみなされ、ドッキング制御モジュール70は充電プロセスの間、ロボットをスタンバイモードに移行させる。
【0065】
上記説明から、ドッキング制御モジュール70は、ドッキングステーション6の近傍における一定範囲の位置からロボット4を誘導して充電接点8との電気的接触を確立するためにドッキングステーション6に到達させることにおいて効果的であることが理解される。有利には、ドッキング制御モジュール70は、ヒューリスティックな仕方で動作して、誘導情報を推測するための画像フレームにおけるターゲット80、82の相対的位置の解析は、システムに対して大きな処理負荷を課すとともに視覚検知システム内のノイズから大きな影響を受け得る複雑な幾何学的演算を回避する。もちろん、ロボット4がドッキングステーション6で充電されることは本質的なことではなく、ロボットが別の目的でドッキングする必要があることも考えられる。例えば、ドッキングステーション6は、ユーザの介入を必要とすることなく、分離システムから塵埃を空にするためにロボットと係合可能な真空システムを備えていてもよい。
【0066】
ロボット4は、全方位視覚システムを有するものとして説明したが、かかるシステムは、ロボット周囲環境の全方位視界を提供するので移動ロボット用途において有用である。しかしながら、本発明は、全方位視覚システムとともに利用することに限定されるものではない。例えば、ロボット4は、これに代えて、真正面位置に向けられた単眼カメラを備えたものであってもよく、かかる構成においては、ターゲット探索機能は、自装置の周囲環境の全方位視界を撮影するためにロボット4もまた回転する必要があると考えられる。かかるプロセスはより時間がかかり、わずかではあるが計算も複雑となるが、依然として実現可能ではあると考えられる。
【0067】
さらには、本発明は、ここに記載したドッキングステーションの形態に限定されるものではなく、任意の形状のドッキングステーションにも適用可能である。しかしながら、重要な要因は、ロボットによってターゲットペアの画像が撮影されることができるように、ドッキングステーションが直立姿勢においてターゲットペアを提示することができるよう適切な表示面を有するという点である。
【0068】
一対のターゲットについて記載したが、本発明は、2つを超える数のターゲットに対しても適用可能である。
【0069】
以上、ロボット4について真空掃除ロボットとして説明したところであるが、これは本発明を適切な文脈におくために過ぎないことが理解されるであろう。実際にも、本発明は、他の移動ロボット用途に対しても適用可能であり、ロボット/車両をドッキングステーションにドッキングさせる必要のある実にあらゆる自立走行車両に対して適用可能である。例えば、セキュリティ/メンテナンスロボットであれば再充電のためあるいは工具をつかむためにドッキングステーションへ帰還する必要があることもあり、月面車であれば収集した土壌サンプルを預けるためにステーションとドッキングする必要があることもある。加えて、半自律型または完全自律型電気乗用車両であれば充電ポイントに係合するためにドッキングステーションとドッキングする必要があり得る。最も有用とするため、おそらくは本発明は、一例を挙げると、自立掃除機、芝刈り機、床面艶出機などの移動ロボット型の家庭用表面処理機器に適用されてもよい。