(57)【特許請求の範囲】
【請求項１】
ある環境下でロボットを遠隔操縦するための方法であって、
前記ロボットを遠隔操縦するためのユーザ・インタフェースを供給する段階と、
前記ロボットが備えるイメージング装置を介して、前記ユーザ・インタフェースに前記ロボットの周辺の前記環境を表す画像情報を供給する段階と、
前記画像情報を用いて、前記ユーザ・インタフェースにおいて前記ロボットの周辺の前記環境を表すユーザ知覚画像を供給する段階と、
前記ロボットが移動する方へ前記ユーザ知覚画像のある場所に目標を指定する段階と、
前記ユーザ・インタフェースにおいて、前記ユーザ知覚画像で指定された前記目標を、前記ロボットの前記環境における目標位置に自動的に変換する段階と、
前記ユーザ知覚画像上の前記指定された前記目標の場所に、前記目標位置における実際の寸法に基づくガイドライン画像を重畳する段階であって、前記ガイドライン画像は、高さ要素と幅要素とを含む、段階と、
前記環境における前記ロボットの現在の位置から、前記環境の前記目標位置に移動するために、リアルタイム命令を前記ユーザ・インタフェースから前記ロボットに供給する段階と、
前記ロボットが前記目標位置に近づくのに応じて前記ユーザ知覚画像における前記ガイドライン画像のサイズを増加させる段階と、
を具備する方法。
【請求項２】
前記指定された目標に対する前記変換段階は、
前記ロボットの位置及び方向情報を決定する段階と、
前記イメージング装置の位置及び方向情報を決定する段階と、
前記ロボットおよび前記イメージング装置の前記位置及び方向情報に基づいて、前記指定された目標としてユーザから入力された前記ユーザ知覚画像上のクリック位置を、前記環境における目標位置の座標に変換する段階と、
をさらに具備する、請求項１に記載の方法。
【請求項３】
前記クリック位置を前記環境における目標位置の座標に変換する段階は、
前記イメージング装置の固定角およびズームを決定する段階と、
前記ユーザ知覚画像の画素サイズを決定する段階と、
前記指定された目標に対応する前記ユーザ知覚画像の画素位置を識別する段階と、
前記イメージング装置の固定角およびズーム、前記ユーザ知覚画像の前記画素サイズ、および前記指定された目標に対応する前記画素位置を用いて、前記ユーザ知覚画像上のクリック位置を、前記環境における目標位置の座標に変換する段階と、
をさらに具備する、請求項２に記載の方法。
【請求項４】
前記目標指定段階は、
前記指定された目標に対応している前記ユーザ知覚画像の位置に可視ポインタを移動する段階と、
前記指定された目標を選択するために前記位置においてポイント−アンド−クリック選択装置を起動する段階と、
をさらに具備する、請求項１に記載の方法。
【請求項５】
前記目標指定段階は、
アイコンを選択する段階と、
前記指定された目標に対応している前記ユーザ知覚画像の位置に前記アイコンをドラッグする段階と、
前記指定された目標を選択するために前記ユーザ知覚画像の前記位置に前記アイコンをドロップする段階と、
をさらに具備する、請求項１に記載の方法。
【請求項６】
前記ユーザ知覚画像は、前記ユーザ・インタフェースが備えるコンピュータ・モニタに供給される、請求項１に記載の方法。
【請求項７】
前記ユーザ知覚画像は、前記ユーザ・インタフェースが備える携帯用液晶ディスプレイに供給される、請求項１に記載の方法。
【請求項８】
前記ロボットの周辺の環境を表す画像情報は、ビデオ信号によって供給される、請求項１に記載の方法。
【請求項９】
前記ビデオ信号はインターネットを介して送信される、請求項８に記載の方法。
【請求項１０】
前記イメージング装置はカメラである、請求項１に記載の方法。
【請求項１１】
前記ガイドライン画像の前記高さ要素及び前記幅要素は、前記目標位置における前記ロボットの実際の寸法に基づいている、請求項１に記載の方法。
【請求項１２】
ある環境下でロボットを遠隔操縦するためのシステムであって、
前記ロボットを遠隔操縦するためのユーザ・インタフェースと、
前記ロボットの周辺の前記環境を表す画像情報を供給するための、前記ロボットが備えるイメージング装置と、
前記ユーザ・インタフェースに前記画像情報を送信するための手段と、
前記画像情報を用いて、前記ユーザ・インタフェースにおいて前記ロボットの周辺の前記環境を表すユーザ知覚画像を供給するための手段と、
前記ロボットが移動すべき方へ前記ユーザ知覚画像の目標を指定するための手段と、
前記ユーザ知覚画像にて指定された前記目標を前記ロボットの環境の目標位置に自動的に変換するための手段と、
前記ユーザ知覚画像上の前記指定された前記目標の場所に、前記目標位置における実際の寸法に基づくガイドライン画像を重畳する手段であって、前記ガイドライン画像は、高さ要素と幅要素とを含む、手段と、
前記環境の前記ロボットの現在の位置から前記環境の目標位置に移動するために、前記ユーザ・インタフェースから前記ロボットにリアルタイム命令を供給するための手段と、
前記ロボットが前記目標位置に近づくのに応じて前記ユーザ知覚画像における前記ガイドライン画像のサイズを増加させるための手段と、
を備えている、システム。
【請求項１３】
前記目標を変換するための手段は、
前記ロボットの位置及び方向情報を決定する手段と、
前記イメージ装置の位置及び方向情報を決定する手段と、
前記ロボットおよび前記イメージング装置の位置及び方向情報に基づいて、前記指定された目標としてユーザから入力された前記ユーザ知覚画像上のクリック位置を、前記環境における目標位置の座標に変換する手段と、
を備えている、請求項１２に記載のシステム。
【請求項１４】
前記クリック位置を前記環境における目標位置の座標に変換する手段は、
前記イメージング装置の固定角およびズームを決定するための手段と、
前記ユーザ知覚画像の前記画素サイズを決定するための手段と、
前記指定された目標に対応する前記ユーザ知覚画像上の画素位置を識別するための手段と、
前記イメージング装置の固定角およびズーム、前記ユーザ知覚画像の前記画素サイズ、および前記指定した目標に対応する前記画素位置を用いて、前記ユーザ知覚画像上のクリック位置を、前記環境における目標位置の座標に変換する手段と
を備えている、請求項１３に記載のシステム。
【請求項１５】
前記目標指定手段は、ポイント−アンド−クリック選択装置であり、前記ポイント−アンド−クリック選択装置は、前記ユーザ知覚画像内で動作可能な可視ポインタと、ポイント−アンド−クリック選択装置が起動されるときに前記ユーザ知覚画像内の前記可視ポインタの位置が前記ロボットが移動すべき方への前記目標を指定するように前記ポイント−アンド−クリック選択装置を起動する手段とを含む、請求項１２に記載のシステム。
【請求項１６】
前記目標指定手段は、
アイコンを選択し、前記指定された目標に対応する前記ユーザ知覚画像の位置にドラッグするための手段と、
前記指定された目標を選択するために前記ユーザ知覚画像の前記位置に前記アイコンをドロップするための手段と
を備えている、請求項１２に記載のシステム。
【請求項１７】
前記イメージング装置はカメラである、請求項１２に記載のシステム。
【請求項１８】
前記画像情報送信手段はインターネットである、請求項１２に記載のシステム。
【請求項１９】
前記ガイドライン画像の前記高さ要素及び前記幅要素は、前記目標位置における前記ロボットの実際の寸法に基づいている、請求項１２に記載のシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本ＰＣＴ出願は、２０００年５月１日に出願した特許出願番号第６０／２０１，０５４号の米国仮出願への優先権を主張する。本発明は、一般に、移動ロボットの遠隔操作に関し、より詳細には、直観的なグラフィカル・インタフェースでロボットを遠隔操縦するための方法およびシステムを取り扱う。
【背景技術】
【０００２】
本発明は、様々な遠隔操縦型ロボットおよび輸送手段の遠隔操作によるユーティリティを有する。本明細書中に示された記載は、特定の移動ロボットに関する本発明の方法およびシステムを述べているが、本発明はそれに限定されない。当業者は、ここに記載された方法およびシステムがロボット装置の遠隔操作に対する幅広い適用性を有するということを認識するであろう。
【発明の概要】
【０００３】
ロボットがますます一般的かつ有能になると、ロボットを遠隔操作するための直観的な方法およびシステムに対する必要性が増大する。例えば、ユーザは、ユーザがよく知らない違ったロボットへ遠隔アクセスするかもしれない。運転免許を持っているドライバが今までに運転したことがないレンタカーを操作する場合に快適さを感じるように、よく知らないロボットを遠隔操縦する場合でも快適さを感じるようにすべきである。すなわち、今日に至るまで、これは可能ではなかった。
【０００４】
多くの状況においてロボットは、ロボットを視覚的に確認しながら（in visual contact with the robot）ユーザにより局所的に操作することができるが、多くのその他の状況においては、ロボットが遠隔操縦されることは有利である。例えば、有害物質の移送、捜索および救助、軍および警察の応用のような、有害または危険な状態でロボットを操作しなければならないような状況において、ロボットの遠隔操作は、特に有益である。
【０００５】
ある既存のシステムでは、カメラがロボットによって担持され、カメラからの視界の写真が通信リンクによって遠隔操作局に送信され、そこで輸送手段の環境に関するある視覚情報をオペレータに与えるためにディスプレイ画面上に再生される。さらにその他の既存のシステムでは、ユーザは、遠隔的に操縦するためにロボットの環境の地図または詳細なフロアー・プランを苦心して構築する。このようなシステムによって生じる複合エラーのために、これらのシステムは、しばしば不適切である。
【０００６】
使用することが最も難しいシステムは、ジョイスティックのようなインタフェースを効果的に用いて、ユーザが速度を特定するインタフェースである。写真が撮影された時とユーザがそれを見ることができる時との間に時間の遅れが存在し、そして再びユーザがジョイスティックで動きを停止する時とロボットによってそのコマンドが受け取られた時との間に時間の遅れが存在するので、このアプローチは、通信回線の影響を被る。一般に、この種のインタフェースは、“オーバーシューティング”の不利を招く。ユーザは、所望の位置にあるロボットの画像を見て、動きを指示する命令を停止する。しかしながら、その画像は古くなっているので、ロボットは、所望の位置を実際には既にオーバーシュートしてしまう。また、動くことを停止するコマンドは、目的地に到達するまでに時間がかかるので、ロボットは、このコマンドが移送中の間にオーバーシュートし続ける。
【０００７】
オーバーシューティング問題に対する解決策の一つは、インタフェース上に、移動時間または距離を特定することによって一定の移動量を指示する、簡単な、クリック可能な矢印を含ませることである。この簡単なインタフェースは、時間遅れ問題の不利を招かないロボットへの絶対移動指示（absolute motion command）を供給するという望ましい特性を有する。しかしながら、このインタフェースは、限定された機能を供給する。
【０００８】
さらに別の可能な解決策は、動かない目標をポイントする固定形カメラを用い、ユーザに、固定された画像内でロボットの移動位置を選択させることを含む。この解決策は、三次元空間でカメラを任意に位置決めしかつ回転するための能力を欠く。さらに、この解決策は、ロボットが移動することができる全ての場所にカメラを配置することを必要とし、従って柔軟性がなくかつ高価な解決策である。
【０００９】
既存のシステムは制御することがしばしば難しいため、さらなる解決策が提案された。例えば、米国特許第６，１０８，０３１号では、ユーザは、三次元情報をユーザに送信するための“仮想現実”グラス（またはヘッドセット）が与えられる。この向上した視覚情報を用いることによって、ユーザは、次いで、制御ボックスを用いて輸送手段を遠隔操縦する。
【００１０】
しかしながら、ロボットまたは輸送手段を遠隔操作するこれらの方法に対して制限が存在する。上記したように、これらの場合の多くにおいて、リアルタイム視覚情報がカメラからユーザに送信され、ユーザがロボットにリアルタイム制御情報を戻すように送信することができるということが仮定される。しかしながらある種類の通信リンクに対して、かかるリアルタイム通信は可能ではない。特に、インターネット接続は、接続のスピードによって（例えば、ＤＳＬ、ケーブル・モデム、ダイアル−アップ接続）、およびインターネット・トラヒックのその時点でのレベルによって、劇的に変化し得る。従って、インターネット接続形ロボットに対して、かかるリアルタイム送信を保証することができない。
【００１１】
従って、本発明の目的は、ロボットの直観的な遠隔操作のための方法を提供することである。
【００１２】
本発明の別の目的は、ロボットを遠隔操作するための直観的なユーザ・インタフェースを提供することである。
【００１３】
本発明のさらに別の目的は、非同期通信を伴うシステムに特に適するロボットを遠隔操作するための方法およびシステムを提供することである。
【００１４】
本発明の目的は、遠隔的に制御されるロボットのナビゲーションを改良するためにグラフィカル・オーバーレイでユーザにさらなる情報を提供することである。
【００１５】
本発明のその他の目的および利点は、本発明の好適な実施形態の以下の記載、添付した図面、および特許請求の範囲から明らかであろう。
【図面の簡単な説明】
【００１６】
【図１】遠隔ユーザによって制御することができる移動ロボットと、遠隔ユーザと、好適な制御手段とを示す。
【図２】移動ロボットのヘッド／カメラの拡大平面図を示す。
【図３】ロボットを遠隔操作するためのユーザ・インタフェースの好適な実施形態を示す。
【図４】ユーザ・インタフェースのヘッドアップ・ディスプレイ部分の詳細を示す。
【図５】ユーザ・インタフェースの動きコントロールまたはジョイスティック部分の詳細を示す。
【図６】ユーザ・インタフェースのパノラマ・ディスプレイ部分の詳細を示す。
【図７】ユーザ・インタフェースのオーバーヘッド・マップ部分の詳細を示す。
【図８】ユーザ・インタフェースのステータスバーまたはエリア部分の詳細を示す。
【図９】ユーザ・インタフェースのカメラ・コントロール部分の詳細を示す。
【図１０】ユーザ・インタフェースのポーズ、ネックおよびヘッド・コントロール部分を示す。
【図１１】中間地点（または目標）が選択され、ロボットが目標位置に移動する場合の、ヘッドアップ・ディスプレイの順次的な図を示す。
【図１２】中間地点（または目標）が選択され、ロボットが目標位置に移動するようなヘッドアップ・ディスプレイの順次的な図を示す。
【図１３】中間地点（または目標）が選択され、ロボットが目標位置に移動するようなヘッドアップ・ディスプレイの順次的な図を示す。
【図１４】中間地点（または目標）が選択され、ロボットが目標位置に移動するようなヘッドアップ・ディスプレイの順次的な図を示す。
【図１５Ａ】ヘッドアップ・ディスプレイ内における選択から目標位置を選択する好適な方法を示すフロー図を提供する。
【図１５Ｂ】ヘッドアップ・ディスプレイ内における選択から目標位置を選択する好適な方法を示すフロー図を提供する。
【図１６】グローバル・マップ内の位置に対応するヘッドアップ・ディスプレイ内の画素位置を生成する処理を示すフロー図を含む。
【発明を実施するための形態】
【００１７】
この詳細な説明のために、第１に好適な実施形態のハードウェアを説明し、第２にユーザ・インタフェースの好適な実施形態の詳細な説明を提供し、第３に本発明を操作する方法を説明し、最後にシステムおよび方法の必要な計算の詳細を供給する。
【００１８】
１．好適な実施形態のハードウェア 図１は、パーソナル・コンピュータ２１０から遠隔ユーザ２００によって制御することができる移動ロボット１００を示す。本発明の全ての可能な機能を記載する目的のために、ここに説明するロボットは、いくつかの関連機構を含む。
【００１９】
好適な実施形態のロボットは、特定の回転半径内で回転する機能を含む、全ての方向にロボットを移動させることができるホイール１１０を備えている。この好適な実施形態では、一組のホイール１６０は、ヒンジまたはたわみによって（by a hinge or flexure）シャーシの順方向部分に取付けられており、この“フリッパ”の操作によって、ロボットを上昇または降下させることができる。図示した設計は、マサチューセッツ州、ＳｏｍｅｒｖｉｌｌｅのｉＲｏｂｏｔ Ｃｏｒｐｏｒａｔｉｏｎによって製造され、引用により本明細書中に組み込まれる米国特許出願第０９／８２６，２０９号（ＵＳ２００１００４７８９５（Ａ１））に詳細が開示されるロボット、ｉＲｏｂｏｔ−ＬＥに類似するロボットを示す。この設計は、ロボット１００を同じ場所で回転させることができ、それは明らかな利点を有し、好適な実施形態の方法で利用される。当業者は、ロボットは、多くの方法で構成することができ、あらゆる構成のホイール、トラック、アーム・リンク機構またはそれらの組合せを含むいかなる数の種々のモビリティ・プラットフォームをも備えることができるということを認識するであろう。
【００２０】
また、ロボット１００は、ロボットの環境に関する情報を集めることができる一つ以上のセンサと、および遠隔ユーザ２００に情報を送信する手段とを包含しなければならない。本発明の好適な実施形態で用いられるロボットでは、主要センサは、ロボットの本体１２５（またはシャーシ）の上に取付けられたビデオ・カメラ１４０を備えている。好適な実施形態のロボットは、標準ＮＴＳＣ出力信号を生成する小型カメラ１４０を用いており、かかる信号は既成の（off the shelf）フレーム・グラバー・カードを用いてデジタル化される。このカメラは、ＵＳＢまたはファイヤ・ワイヤ・カメラ、または遠隔エンド・ユーザ２００へのアナログ送信を用いるカメラのような、エンド・ユーザのユーザ・インタフェース内に画像を結果として供給するようなあらゆる装置でありうる。カメラ取付けは、シャーシに関して固定でありうるか、またはカメラは、ロボット・シャーシ１２５に関して１、２、３またはそれ以上の度の自由度で動くことができる“アーム”または“ネック”１２０に取付けられうる。好適な実施形態では、カメラ１４０は、ネック１２０の上にある、ヘッド１３０内に取付けられる。ネック１２０は、ロボットのシャーシ１２５内の点のまわりに回転し、１の自由度を有する。
【００２１】
さらに、好適な実施形態では、カメラ装置それ自体は、パン１５０、ティルト１６０およびズーム・コントロールを有する。さらにまた、ロボット１００は、ロボットのヘッド１３０の上に取付けられたスピニング・ソナー・スキャナ１３５、および図示しないがロボット本体１２５内に配置された様々な赤外線エミッタおよび検出器を有する。好適な実施形態では、赤外線エミッタおよび検出器のペアは、ロボット・シャーシ１２５の周囲３６０度の適用範囲を供給するように配置される。
【００２２】
図２は、好適な実施形態のロボット１００のヘッド１３０の拡大平面図を示す。ヘッド１３０は、パン１５０を制御するための電動式リンク機構およびティルト１６０を制御するためのモータに接続され、（ピンホールであると仮定する）カメラ・レンズ１４５を有する、カメラ１４０を包含する。当業者は、ロボットが、ソナー・トランスデューサおよび受信機、レーザ・スキャナ、レーダ、赤外線カメラ、ステレオ・ビジョン、動き検出器、オムニカムズ（omnicams）およびその他の類似する装置を含む、あらゆる数のセンサを包含しうるということを認識するであろう。
【００２３】
好適な実施形態では、ユーザに情報を送信するための手段は、アンテナ１７０を介した無線インターネット・リンクである。インターネットへのロボットのリンクは、無線モデムを通して、または無線送信（例えば、ホームＲＦまたはＩＥＥＥ８０２．１１）をまず通して、インターネットに接続された定置形コンピュータ（stationary computer）を指向することができる。上記は、好適な実施形態であるが、別のアプローチは、ブルートゥース（登録商標）（Ｂｌｕｅｔｏｏｔｈ）またはシリア・ラジオ・モデムのような、ロボットと静止コンピュータとの間の低スピード・デジタル・ラジオ・リンクを用いるもの、それからロボットから定置形コンピュータの近くのアナログ・ビデオ受信機へのブロードキャスト・アナログ・ビデオおよびサウンドを用いるものでありうる。定置形コンピュータのオーディオ−イン・ジャックおよび定置形コンピュータに接続された安価なＵＳＢフレーム・グラバーは、ロボットからオーディオおよびビデオを入手するために用いることができる。その他の実施形態では、エンド−ユーザからロボットへ、デジタル無線ラジオを経由したインターネットからのオーディオ・リンクを用いることができる。代替では、定置形コンピュータのオーディオ−アウト・ジャックに接続されたアナログ・オーディオ・ブロードキャスタを用いることができ、それからの信号は、ロボットのラジオによって受信されかつロボットのスピーカを通してプレーされる。
【００２４】
この無線インターネット・リンクにわたって用いられるプロトコルは、Ｈ２６１のようなビデオ・テレカンファレンシング・プロトコル、ＭＪＰＥＧのようなビデオ・プロトコル、およびＧＳＭ（登録商標）のようなオーディオ・エンコーディングを含むことができる。これらは、無線リンクにわたり直接実行することができるか、またはＨＴＴＰ、ＨＴＴＰＳまたはこのタスク用に作られた専用プロトコルのようなプロトコルに便乗することができる。
【００２５】
また、図１は、ユーザ２００および制御手段の好適な実施形態も示す。図１では、ユーザ２００は、インターネットに接続されたパーソナル・コンピュータ２１０を通してロボット１００と通信する。パーソナル・コンピュータは、コンピュータ・モニタ２４０、キーボード２２０およびマウス２３０を備えている。当業者は、制御手段が、タッチ・スクリーン、ジョイスティック、無線コントロール、仮想実現ヘッドセットおよびセンサ・グローブのような、あらゆる数の既知のコンピュータ入力装置を含むように構成できるということを認識するであろう。さらに、ユーザは、ロボットから物理的に遠隔な場所に存在する必要はない。ユーザがロボットに対して物理的に近くにいるときには、ロボットにコマンドを与えるために、ロボットへの直接的なボタンや制御、またはテレビジョン遠隔操作に類似する赤外線遠隔操作を含む、さらなる制御をラジオ・リンクとは別個に用いることができる。
【００２６】
好適な実施形態では、制御手段は、あらゆるインターネットに接続されたコンピュータからのロボットの制御を許容する、標準ウェブ・ブラウザ上で実行するように実装されたユーザ・インタフェースを備えている。ロボットを操作する好適な方法では、ユーザは、ウェブ・ブラウザにログし、ユーザ名およびパスワードを入力することによってセキュアなウェブサイトにアクセスする。次いでユーザは、ここに記載したユーザ・インタフェースを包含するＪａｖａ（登録商標）アプレットにアクセスすることができる。別の実施形態は、ブラウザへプラグ−インをインストールすることであり、エンド−ユーザのパーソナル・コンピュータ上でのソフトウェアインストール段階を必要とするというコストを払って、アプリケーションにおけるより良いパフォーマンスを可能にする。さらに別の実施形態は、ウェブ−ドライビング・インタフェースを包含するパーパス・ビルト・アプリケーション（purpose built application）をインストールすることであり、このアプリケーションを用いて、エンド−ユーザのパーソナル・コンピュータ上のあらゆるウェブ・ブラウザから独立して、必要な全てのネットワーク操作を実行する。
【００２７】
２．ユーザ・インタフェースの詳細な説明 ロボットを遠隔操縦するための方法およびシステムの詳細な説明をする前に、ユーザ・インタフェースの好適な実施形態の説明をする。
【００２８】
図３は、ロボットを制御するためのユーザ・インタフェース３００の好適な実施形態を示す。ユーザ・インタフェースの好適な実施形態は、ヘッドアップ・ディスプレイ３１０、ジョイスティックまたはダイレクト・ドライブ・コントロール３２０、パノラマ・ディスプレイ３３０、オーバーヘッド・マップ３４０、ステータスバー３５０、カメラ・コントロール３６０、およびヘッド／ネック・コントロール３７０を含む。当業者は、ユーザ・インタフェースをユーザの特定の必要性に合致するように設計することができ、ユーザ・インタフェースの内容とディスプレイ内のあらゆる要素の配置の両方を変えることができるということを認識するであろう。図３に示すこれらの要素のそれぞれは、以下により詳細に説明され、かつ図４〜１０により詳細に示される。
【００２９】
本発明の好適な実施形態を実行するために必要なユーザ・インタフェースの唯一の部分は、ヘッドアップ・ディスプレイ３１０である。ヘッドアップ・ディスプレイ３１０は、ロボットから受信した最新のカメラ画像を連続的に示す。好適な実施形態では、カメラ・レチクル（camera reticle）３１２、フロアー・プレーン・グリッド３１４、およびローテーション・テープ（rotation tapes）３１６および３１８を含む、多数のコンピュータ生成画像が、カメラ画像上に重畳される（overlaid）。以下に説明するように、ユーザを支援する目的で、目標位置または中間地点を選択するためにカーソルがヘッドアップ・ディスプレイ３１０内で指定されると、ヘッドアップ・ディスプレイ・オーバーレイ（例えば、ターゲティング・サークルおよびパースペクティブ・ボックス）が重畳表示される。
【００３０】
好適な実施形態では、二つのローテーション・テープ３１６および３１８がヘッドアップ・ディスプレイ内に表されている。ローテーション・テープ３１６および３１８は、（カメラに対する）ロボットの相対的な回転の角度を示し、ロボットの遠隔操作を支援するために、ユーザにさらなる視覚情報を供給する。好適な実施形態では、ローテーション・テープ３１６は、ロボットのシャーシ１２５の前方１メートルの距離に描かれ、ローテーション・テープ３１８は、２メートルの距離に描かれる。
【００３１】
特定の実施形態では、ヘッドアップ・ディスプレイの上またはその近くで、角度でマークが付けられたローテーション・テープは、回転を指示するために用いることができる。ローテーション・テープの角度マーキングは、画像内での回転角度に揃えられており、画像上のアイテムのすぐ下のローテーション・テープの部分をクリックすることにより、ロボットを回転させ、画像上のアイテムにロボットのレチクルが合うようになる。さらにその他の実施形態では、画像の端にあるローテーション・テープの部分をクリックすることによって、非線形かつ急速な１８０度までの回転を行うことができる。また、インジケータは、回転を示すデッド・センター（dead center showing rotation）に配置することができる。ロボットがドライブ・モードにあり、現在、空らの中間点リストを有しているとき（中間地点リストに中間地点が登録されていないとき）、ローテーション・テープをクリックした場合には、目標インジケータが示され、ロボットは、そのヘッディングまで回転する。回転すると、目標は中心に向けてスライドし、残りの回転を連続的に示す。
【００３２】
そして、ヘッドアップ・ディスプレイ３１０の内容は、カメラからのビデオである必要がないということに注目すべきである。例えば、光がないときの操作のために設計されたシステム（例えば、水中または鉱山探査のためのシステム）では、ヘッドアップ・ディスプレイは、三次元ソナーまたはレーダ・イメージングのグラフィカル表現を包含することができる。
【００３３】
図７に示すように、ユーザ・インタフェース３００の好適な実施形態は、オーバーヘッド・マップ３４０を含む。オーバーヘッド・マップ３４０は、ロボット３４２およびロボットのすぐ周辺の環境に関するさらなるグラフィカル情報の表現を包含する。このディスプレイは、ワールド−オリエンテーション・ベース・マップ（ロボットがその内で回転する）、または、図７に示すように、ロボットの向きに関するマップ（ロボット３４２が同じ方向をポイントしているようにいつも見える）のいずれかでありうる。このマップは、中間地点や、壁３４４、移動した前のパス、方向ベクトル等のようなアーキテクチャ的な特徴の更なる情報を含むことができる。
【００３４】
好適な実施形態では、オーバーヘッド・マップ３４０は、ソナー・スキャナ１３５から受信した信号のグラフィカル表現を包含する。ある実施形態では、オーバーヘッド・マップは、受信したデータの経年変化を示すようにさら更新することができる。例えば、最初に検出したときに、ソナー・スキャナ１３５からのエコーは、明るい緑色で表示されるが、これらの信号が古くなると、暗い緑色で表示される。同様に、赤外線エコーによって検出された赤外線信号は、明るい赤色で表示され、次にそれらが古くなると暗い赤色になり、それから消えてしまう。また、オーバーヘッド・ディスプレイは、ディスプレイ上の動画要素（animated element）として、現在の中間地点、ロボットの現在の方向およびスピードを示したり、ロボットが行った最新位置のトレール（trail）を示すために用いることもできる。
【００３５】
また、ユーザ・インタフェース３００は、中間地点を生成しないでロボット１００の動きを制御するための手段を含むこともできる。図５では、例えば、本発明の好適な実施形態は、４つのボタン（左、右、前進、後退）で構成された、４矢印アイコンによって表された、ジョイスティック３２０を含む。ロボットが駆動モードにある間、上方（前進）または下方（後退）の矢印の先端（arrowhead）をクリックする都度、ロボットは、選択された方向に予め設定された距離（例えば０．１ｍ）だけ移動する。右または左の矢印の先端の各クリックに対して、ロボットは、選択された方向に予め設定された角度（例えば５度）だけ回転する。好適な実施形態では、コンピュータ・キーボードの対応する矢印キーもまた、同様な動きをもたらす。当業者は、ロボットの動きに対する多くの制御インタフェースを単独または様々な組合せで利用することができるということを認識するであろう。例えば、特定の位置にロボットを動かす（“応接間に行く”）、または特定のパターンでロボットを動かす（“２メートル前進し、それから左に４５度回る”）ために、別々のボタンを生成することができる。さらに、所定のボタンは、カメラが現在ポイントしている角度方向にロボットを自動的に回転させるために用いることができる。
【００３６】
ある実施形態では、ユーザ・インタフェース３００は、図３および図６に示すような、一つ以上のパノラマ・ディスプレイ３３０を含むことができる。ロボット１００のある実施形態では、オムニカムのようなカメラがロボットのまわりに取付けられ、ロボットにその場所で回転することを要求することなく３６０度の画像を捕えることができる。その他の実施形態では、ロボットは、３６０度の画像を捕えるために、その場所で回転することができる。
【００３７】
かかる機能が利用できる場合、ユーザ・インタフェースのエリアは、パノラマ・ビューの表示専用とすることができる。各パノラマ画像は、実際には、近接して表示されるカメラからの一連の写真である。ある実施形態では、ユーザは、パノラマ的画像を捕えることをロボットに要求することができる。その他の実施形態では、選択したカメラ（パノラマではない）の画像を記憶するためにユーザ・インタフェースの専用部分を用いることができる。図６は、戸口およびランプ３３５を含む、サンプル・パノラマ・ビューを示す。これらの同じ機構は、図７に示したソナー画像において可視であり、それは、（図７におけるような）対象物のグローバル位置とパノラマ・ビューにおけるそれらの出現との間の関係の表示を供給する。
【００３８】
ユーザ・インタフェース３００の好適な実施形態は、ステータスバーまたはステータスエリア３５０を含み、それは、様々な情報および／または一般的な機能を制御するボタンを包含する。例えば、ユーザ・インタフェース３００は、インタフェース３００の下側左手の角にステータスバー３５０を包含する。ステータスバーの好適な実施形態の詳細を図８に示す。このエリアは、ロボットに全ての動きをすぐに中止させる赤色停止ボタン３５１を含む。また、ステータスエリア３５０は、ロボットの現在のモードに関するあるテキスト的またはアイコン的情報も含む。以下に説明するように、モードは、目標または中間地点を探している間にロボットが用いる慎重な動きおよび／または障害物回避のレベルを示しうる。モードは、ロボットの動き、またはユーザ・インタフェースにおけるユーザ入力の解釈のいずれかを制御することができる。一つのユーザ・インタフェース・モードでは、マウス・クリックを、新しい中間地点を生成するためのコマンドの代わりに、パン／ティルト・カメラへのコマンドとして解釈するであろう。別のモードでは、全ての動きを停止し、そのモードがクリアされるまで停止したままでいることもできる。別のモードでは、ロボットのセンサが途中に障害物があるということを示しているにも係わらず、慎重な動きを無効にして、ロボットを中間地点の方へ移動させることができる。また、ステータスエリア３５０は、緑色の移動ボタン３５４を含み、それは、押されたときに、感知した障害物の存在にも係わらずロボットを移動させる。
【００３９】
また、ステータスエリアは、ロボット１００の現在のバッテリ・レベルをグラフィカルに表示するバッテリ・アイコン３５７も含む。ある実施形態では、バッテリを充電することが必要であるときを示すアイコン、例えば電圧が予め選択したレベルまたは実際の電圧レベル以下に降下するときを示すアイコンを含むことも有用である。ロボットが現在再充電されているということを示すために別個のアイコンを用いることができる。
【００４０】
また、ロボットのある実施形態では、データ送信レート３５５（例えば３００キロバイト／秒）およびビデオ送信レート３５６（例えば１０フレーム／秒）に関する情報を含むこともできる。ロボットの現在のスピード、現在の向き、どの部屋内にそれが配置されているか、ロボットに現在ログ・インしているユーザの数、ロボットにログしたユーザ間のチャット・ページ、またはロボットからユーザ・インタフェースに受け渡されたその他の感知または計算された情報を示すために、このエリアに他の表示を含むことができる。
【００４１】
図９に詳細に示すように、ユーザ・インタフェース３００はまた、ロボットのカメラ１４０の仕様に合わせたカメラ・コントロール３６０も含む。好適な実施形態では、カメラ１４０は、パン、ティルトおよびズーム・コントロールを包含し、従って遠隔ユーザ２００がカメラ１４０を望むように制御できることが好ましい。本発明の好適な実施形態は、カメラのパンおよびティルトを選択するための二次元グリッド３６１を含む。好適な実施形態では、カメラの現在の位置は、グリッド３６１内のカーソル３６２によって表され、フィールド３６４の上部部分に数値的にも表示される。パン／ティルト・カーソル３６２は、マウス２３０を用いてグリッド３６１内でクリックすることで動かすことができ、それによりカメラ１４０は直ちに新たに選択した位置に調整される。さらに、スライドバー３６５制御は、カメラのズームを制御するために、パン−ティルト・グリッド３６１の左側に配置される。当業者は、カメラまたはその他の感知装置に対する位置および焦点距離を制御するために、あらゆる数の制御（キーパッド入力、スライドバー、回転ノブ等）を用いることができるということを認識するであろう。好適な実施形態では、新しい中間地点が生成されたときは、ジャンプ・バック機構により、パン／ティルト角度が二次元グリッド３６１の中心位置に対応するようにリセットされ、カメラ・ズームが広角にリセットされる。
【００４２】
上述したように、好適な実施形態では、カメラ１４０は、ロボット１００のヘッド１３０に取付けられ、カメラの高さは、ロボットのネック要素１２０の角度およびロボットの“フリッパ”要素１６０の伸びという、二つの要因によって調整される。これらの要因の両方は、ｉＲｏｂｏｔ−ＬＥの使用に特有であるが、当業者は、このような特定の実施形態に本明細書中に開示された制御を容易に適応することができるであろう。図１０は、ネック角度３７２およびフリッパ位置３７４を制御するためにスライドバー制御が供給される好適な実施形態を示す。ロボットの動画表示３７８は、ロボットの現在のポーズを示す。さらに、３つのポーズ・ボタン３７６がロボットの動画表示の上に（above the animated robot）配置される。これらのボタンをクリックすることによって、ロボットは、ポーズ・ボタン３７６によって表現された様々なポーズをとる（assume）ように予め設定される。
【００４３】
ヘッド要素のピッチを制御することができるその他の実施形態では、垂直テープが供給され、かかる垂直テープは、角度がマークされ、ヘッド・ピッチを制御するために用いることができる。かかる実施形態では、小さい赤色の矢印または三角形のようなインジケータが、現在のピッチを示す。ユーザが垂直テープ上をクリックした場合には、新しい目標インジケータが垂直テープ上に配置され、ヘッドは、垂直テープ上で新たに特定されたピッチまで上下に回転することを直ちに開始する。ヘッドがそのピッチに達したならば、目標インジケータは消える。当業者は、このような制御が、特定のロボットまたは輸送手段に応じて変更できるということを認識するであろう。
【００４４】
当業者は、パーソナル・コンピュータ、またはＰＤＡコンピュータや移動電話のような液晶ディスプレイを有するハンドヘルド装置に、上述したユーザ・インタフェースを実装することができるということを直に認識するであろう。
【００４５】
上記で紹介したように、ヘッドアップ・ディスプレイ３１０は、ロボットを遠隔操作するために有用なユーザ２００への情報を供給するために、様々なオーバーレイを包含する。上述しかつ図４に示したように、マウスで制御されるカーソルがヘッドアップ・ディスプレイ・ウィンドウ内にないときでも、カメラ・レチクル３１２、フロアー・プレーン・グリッド３１４およびローテーション・テープ３１６および３１８は、可視である。その他の実施形態では、これらは、省略することができるか、または選択的に示すことができる。例えば、ユーザ・インタフェースは、ロボットが駆動モードにあるときにのみ、これらのオーバーレイを含むことができる。
【００４６】
ロボットの動きを遠隔操作するためにヘッドアップ・ディスプレイを用いるときに、さらなるオーバーレイを供給することができる。二次元ビデオ情報によりロボットをナビゲートすることは難しい。なぜなら、視野内の対象物は正確なナビゲーションに必要な視覚的な手がかりをユーザに多く供給することができないからである。これは、ロボットからかなり距離がある中間地点または目標を選択するときに特にそうである。本発明の好適な実施形態は、パースペクティブ、距離および視角に関するさらなる情報をユーザに供給するために、様々なオーバーレイ・ガイドラインを含む。
【００４７】
好適な実施形態では、図４に示すように、緑色のプレーン・グリッド３１４は、０．５ｍ×０．５ｍの四角によりロボットの前方に重畳される。グリッド３１４は、ヘッドアップ・ディスプレイ３１０の水平軸全体に沿って拡張し、ロボットの直ぐ前方のエリアの１ｍだけをカバーする。当業者は、グリッドの寸法が、ロボットの移動特性およびユーザの好みに一致するように選択されるべきであるということを認識するであろう。グリッド３１４は、視野内の様々な対象物の相対距離の表示度数をユーザに供給する。好適な実施形態では、ユーザ・インタフェース３００は、ロボットが水平面で動作していると仮定する。その他の実施形態では、グラウンド・プレーンの傾斜に関するロボットからのデータを、必要によりグリッド３１４を調整するために用いることができる。
【００４８】
グリッド３１４がユーザに対して汎用的なパースペクティブ情報を供給する一方、二つのさらなるオーバーレイが、ロボットの目標として中間地点を正確に選択することにおいてユーザを支援するために用いられる：目標サークルおよびパースペクティブ・ボックス。
【００４９】
目標サークル。図１１に示すように、カーソル矢印４０５がヘッドアップ・ディスプレイ３１０内で移動するときに、特定の中間地点が選択された場合にロボットが移動するエリアを表す一つ以上の投影が、ヘッドアップ・ディスプレイ上に重畳される。好適な実施形態では、このエリアを表す投影は、一つ以上の目標サークル４１０および４１２によって表される。ただし、このエリアを表す投影を、特定のロボットの寸法および輪郭を近似するように選択された形状を含む、（二次元または三次元の）あらゆる形状によって表すことができる。目標サークル４１０および４１２は、現在の視界のパースペクティブにより、ヘッドアップ・ディスプレイ上に楕円として表される。好適な実施形態では、目標のために二つの同心円が用いられる。内側の円４１０は概ねロボットの寸法に対応しており、外側の円４１２はロボット・システムに固有な不正確性に基づく目標のよりルーズな近似を表す。好適な実施形態では、これらの目標サークル４１０および４１２の半径は、実質的に一定のままである（しかしながら、円は、中間地点がロボットからかなり離れた距離にあるときには、より小さくなるように見える）。その他の実施形態では、外側の目標サークル４１２と内側の目標サークル４１０は、ロボットに近い中間地点に対しては一致し、中間地点までの距離が増大すると、離れていく。
【００５０】
パースペクティブ・ボックス。目標サークルまたは同様な投影でさえも、ユーザが中間地点の選択を判断することは、しばしば困難である。これは、高さが可変で、さらなるパン、ティルトおよびズーム・コントロールを有するカメラを組入れたロボット・システムにおいて、しばしば言えることである。ユーザをさらに支援するために、好適な実施形態は、ヘッドアップ・ディスプレイ３１０上に重畳されたにパースペクティブ・ボックス４３０を含む。好適な実施形態では、パースペクティブ・ボックス４３０は、現在の中間地点の上方０．５ｍに位置し、パースペクティブ・ボックスの上部および底部はフロアー平面に並行である。好適な実施形態では、パースペクティブ・ボックス４３０は、幅０．５ｍ、深さ０．５ｍおよび高さ０．２５ｍのワイヤフレーム・オーバーレイである。カメラがパースペクティブ・ボックスと同じ高さに配置されるときは、ボックスの上部および底部は、可視ではない。別の実施形態では、パースペクティブ・ボックスの高さは、カメラの高さの下方０．２５ｍであるように連続的に調整される。このアプローチでは、パースペクティブ・ボックスは、ユーザの水平方向の視界を妨げない。
【００５１】
そして、好適な実施形態では、さらなるガイドラインをユーザに供給するために、目標サークルの中心からパースペクティブ・ボックスの底部側の中心へ０．５ｍの線が描かれる。
【００５２】
３．ウェブドライビングの好適な方法 図１１〜１４は、本発明の方法の実施形態を実行している間のユーザ・インタフェースのヘッドアップ・ディスプレイ部分を示す。図１１では、ヘッドアップ・ディスプレイ３１０は、ロボットのカメラから送信されたビデオを通して、ロボットの環境からの視界を含んでいる。ロボットから視界にあるように、ロボットの前方概ね５メートル、ロボットの多少右側にドア４５０がある。図１１では、カメラ１４０は、二次元グリッド３６１内のパン・カーソル３６２の位置（図９参照）、およびローテーション・テープの両方によって示されるように、順方向に直接向いている（即ち、カメラ・レチクル３１２は、ローテーション・テープ３１６および３１８の角度マークのゼロに一致する）。ユーザがヘッドアップ・ディスプレイ内でカーソル矢印４０５を動かすと、ユーザ・インタフェースは、カーソル矢印４０５の位置に対応する目標サークル４１０および４１２とパースペクティブ・ボックスとを絶えず描き直す。ユーザがヘッドアップ・ディスプレイのあちこちに（around the heads-up display）カーソルを動かすことにより、ユーザは中間地点を選択することができる。
【００５３】
図１２は、ヘッドアップ・ディスプレイ・ウィンドウ内でマウスをクリックすることによって中間地点が選択された直後のヘッドアップ・ディスプレイを示す。好適な実施形態では、一度中間地点４６０が選択されたならば、中間地点は現在の中間地点駆動目標のセットに追加され、目標サークル４１０および４１２は影付けされる（shaded）。選択した中間地点が唯一の現在の中間地点（または中間地点リストの最上部にある中間地点）である場合には、ロボットは、選択した中間地点４６０の方向に向けて動き始める。換言すると、中間地点駆動リストが最新の選択の前に空であって、ロボットが駆動モードにある場合には、ロボットは、選択した中間地点の方向に向けて駆動することを開始する。さらなる選択がなされた場合には、第２の中間地点がリストに追加されることになる。ロボットが中間地点に達すると、その中間地点は、ヘッドアップ・ディスプレイから消える。現在の中間地点リストにさらなる中間地点が存在する場合には、ロボットは、第２の中間地点の方向に向けて駆動することを直ちに開始する。
【００５４】
図１３は、選択した中間地点４６０の方向に向けてロボットが移動するときのヘッドアップ・ディスプレイ３１０を示す。ロボットが中間地点に近づくと、目標サークルは、影付けされたままであるが大きさが増大するようになる。また、パースペクティブ・ボックスも大きさが増大し、ボックスによる三次元パースペクティブを正確に示す。図１４は、ロボットが、ドア４５０のちょうど内側の、中間地点に達したときのヘッドアップ・ディスプレイを示す。目標サークルおよびパースペクティブ・ボックスはヘッドアップ・ディスプレイから除去され、ロボットはさらなる遠隔操作命令を待つ。
【００５５】
一定の実施形態では、中間地点は、中間地点ビン（waypoint bin）にあるアイコンをヘッドアップ・ディスプレイ内の所望の目標位置までドラッグすることによって選択される。これは、標準コンピュータ・デスクトップにおいて、フォルダーにファイルのような対象物をドラッグするのとほとんど同じ方法で行われる。その他の実施形態では、中間地点アイコン上での右クリックは、選択した中間地点で実行可能な動作のポップアップ・メニューを導くことができる。
【００５６】
さらに、ロボットは、特定のシステムの設計によって指示されるように、次の中間地点まで駆動することよりも高いかまたは低い優先順位で、さらなる動作を実行することができる。好適な実施形態では、ロボットは、障害物回避を実行するために、そのオン−ボード・ソナー・スキャナ１３５および赤外線検出器（ロボット本体１２５内に配置されるが図示を省略する）を用いる。その場合には、障害物の存在（および障害物回避ルーチンの実行）は、中間地点への駆動に対して優先し、回り道をするためにロボットを障害物から離れるように向きを変えさせる。かかるシステムは、リアルタイムデータ送信の保証なしでロボットを制御する状況、ダイナミック環境で動作するロボットを制御する状況において、特に有利である。多数の障害物回避ルーチンがこの技術分野でよく知られている。好適な実施形態では、多くの代替の動きコマンドが、中間地点の方向に向けて駆動すること、障害物の周りで向きを変えること、そしてさらに非常に近い障害物を回避するためにバックすること、に対応する行動から生成される。これらのコマンドのそれぞれは、その動き動作を引き起こす挙動コードによって、優先順位が与えられる。これらのコマンドの優先順位およびその重要度（magnitudes）は、それらがロボットを障害物と接触させるかまたは障害物の近くに移動させるかどうかに依存して、予定動作（the proposed movement）が突発または急激すぎる動きをもたらすかどうかといったその他の基準に関して、調整される。次いで、調整後の最も高い優先順位を有する予定動作が、現在のコマンドとして、動きコントローラへ付与される。この処理は、毎秒何回も起こる。その他の実施形態では、ロボットは、障害物が存在する場合に、その現在の中間地点を解放し、ユーザからのさらなる命令を待機することができる（即ち、駆動モードから抜ける）。ある実施形態では、ユーザは、障害物に対する感度のレベルを遠隔制御することができ、これには、障害物検出を無効とし、駆動モードの状態で継続するためのアイコンを選択する場合が含まれる。
【００５７】
４．計算の詳細 詳細に説明したロボットを遠隔操作するための方法およびシステムを用いる、編成、設計および方法として、ヘッドアップ・ディスプレイ内の目標のユーザによる選択を、ロボットに対する目標位置に変換するための好適な実施形態の方法をここで説明する。ヘッドアップ・ディスプレイ内のクリック位置からロボットに対する目標位置への変換を実行する処理は、（ａ）ロボットの現在の位置及び向きを決定すること、（ｂ）カメラ（またはロボットの周辺の領域を表す画像情報を供給するために用いられるその他の装置）の現在の位置を決定すること、（ｃ）クリック・ベクトル（即ち、カメラに関係するヘッドアップ・ディスプレイ上の位置）を決定すること、および（ｄ）目標位置を生成するためにクリック位置を三次元世界地図に投影することを必要とする。これらの段階を実行するための好適な方法を以下に説明する。
【００５８】
好適な実施形態では、システムまたは方法は、ロボットの外部の座標系に基づきグローバル・マップ上でロボットの位置を辿る。その他の実施形態では、ロボット座標系を用いることができる。好適な実施形態の目的のために、方法およびシステムは、ロボットの公称位置（nominal location）がロボットの回転の中心に固定された単一点であるということを仮定する。次いで、ロボットのスタート位置は、ｘ０、ｙ０、ｚ０として表すことができる。好適な実施形態では、ロボットは、純粋に水平な面上を移動すると仮定され、従って地面（the plane of the ground）は、一定（ｚ０＝０）あると仮定される。
【００５９】
図１５Ａは、ロボットの現在位置の計算のフロー図を含む。ロボットは、あらゆる所与の時間に移動することができ、例えば、一連の選択した中間地点の第１の方向に向けて移動するので、本発明の好適な実施形態は、そのスタート位置を計算し、ロボットの動きを辿ることによって、ロボットの現在の位置を辿る。好適な実施形態では、ロボットの動きは、モータ・エンコーダの使用を通して決定される。ロボット本体５１０のスタート位置からの情報を（エンコーダによって辿られたような）ロボット本体の動きと組合せることによって、ロボット本体の路程測定（odometry）は、所与の時間ｔにおける現在の位置ｘｔ、ｙｔ、ｚｔとして計算される。路程測定は、モータの回転を計数することによってロボットの位置を決定する単純な一つの方法であり、その他の手段は、この技術分野でよく知られている。位置を決定するこの手段は、ホイールの滑りによりエラーの測定を起しやすく、それは表面の違いによって大いに変化する。その他の実施形態では、三角測量（ローカルまたはＧＰＳ）、位置測定、目標物認識またはコンピュータ・ビジョンを含む、ロボットの位置を決定する様々な方法を用いることができる。
【００６０】
好適な実施形態では、上述したように、（カメラ・レンズ１４５を有する）ロボットのカメラ１４０は、ネック１２０の動きによって制御される、ロボットの本体１２５の上方の制御可能な高さに取付けられる。ネック１２０のトップには、パン／ティルト・カメラ１４５が取付けられる。
【００６１】
ネック１２０は、ネックの動きが特定の位置を通過するときにシステムがネック位置を絶対的な意味でリセットする、フィジカル・ネック・インデックス・スイッチを含む。ネックの開始角度５２０およびモータ・エンコーダ５２４を用いることによって、所与の時間におけるネックの角度位置（θｎ）を計算することができる５２８。同様に、カメラのパン位置（５３８）およびカメラのティルト位置（５４８）は、スタート位置（それぞれ、５３０、５４０）を用いて計算することができる。
【００６２】
図１５Ｂに示すように、ロボット要素（本体、ネック・パンおよびティルト）のそれぞれの現在の位置を用いること、およびロボット自体の静止幾何学形状６１０（例えば、ネックの長さおよびそのアーク長（the length of the neck and its arc of travel）、回転の中心からネックのベースまでの距離等）を用いることによって、各ロボット要素に対する参照フレーム（frame of reference）を生成することが可能である。この場合、各参照フレームは、ロボット要素のｘ、ｙ、ｚ位置、および順方向、左側および上向きに対する回転ベクトルを与えることにより、４×３のマトリックスによって表される。例えば、ロボット本体が位置ｘｔ、ｙｔ、ｚｔにあり、ロボットがｘ軸方向に沿って向いているときに、ロボット本体の参照フレームは以下の式、
【数１】
0005503052.tif 000002
である。図１５Ｂに示すように、ロボットのベースからカメラ位置の方向に向けて順番に、各要素に対して類似する参照フレームを生成することができる。例えば、ネックに対する参照フレーム６２８は、本体の参照フレーム６１８、ネック幾何学形状６１０を記述するＤｅｎａｖｉ−Ｈａｒｔｅｎｂｅｒｇ Ｐａｒａｍｅｔｅｒｓおよび現在のネックの回転角（θｎ）５２８を用いて計算することができる。これら３つの入力を用いて、ネックに対して新しい参照フレーム６２８を計算することができる。同様に、パン参照フレーム６３８が計算され、ティルト参照フレーム６４８が計算される。ここで、カメラ１４０はティルト要素１６０の終端に取付けられるので、ティルト要素６４８に対する参照フレームは、カメラ自体に対する参照フレーム６５０である。
【００６３】
ここで、ロボットの位置およびベクトル（参照フレーム）６１８およびカメラの位置およびベクトル（参照フレーム）６５０を得ている。好適な実施形態における次の段階は、クリック・ベクトル６８０の決定である。クリック・ベクトル６８０を決定するために、システムは、ヘッドアップ・ディスプレイ内に包含された視界を決定し（段階６７０、６７５）、クリック位置を得なければならない（段階６８５、６８７）。ヘッドアップ・ディスプレイ内に包含された視界を決定するために、システムは、固定したカメラ視角（the camera's fixed angles）およびカメラ・ズームを用いる。好適な実施形態では、カメラの視角は、概ね幅方向に９８°および高さ方向に８８°であり、カメラは８倍のズームを有する。次いで、ズーム視角（水平および垂直）は、現在のズームで視角を除算することによって決定される。好適な実施形態では、ピンホール・カメラ・モデルが簡略化のために仮定される。
【００６４】
クリック位置を決定するために、システムは、画像画素サイズ６８５および画素クリック位置６８７を見る。画像画素サイズは、モニタのヘッドアップ・ディスプレイ３１０の画素で表した寸法によって決定され、それは、好適な実施形態では４００画素×３２０画素のデフォルト値となる。画素クリック位置は、ヘッドアップ・ディスプレイ内のユーザのクリック位置、換言するとポイント−アンド−クリック装置が動作される（activate）ときのカーソル位置によって決定される。（その他の実施形態では、クリック位置は、ロボットに対する目標位置を設定するために、アイコンがドロップされる位置である。）
【００６５】
次いで、クリック・ベクトル（またはクリック参照フレーム）は、視角（view angles）、画像画素サイズおよび画素クリック位置を用いて計算することができる。まず、画像の中心からのパーセント・オフセットを決定するために、画像画素サイズ６８５および画素クリック位置６８７が用いられる。例えば、ヘッドアップ・ディスプレイの上側右手の四分の一区分におけるクリックに対して、システムは、クリック位置が中心から垂直境界までの距離の４０％で、右側水平境界までの距離の８５％であるということを計算する。そのパーセントは、カメラの水平および垂直ズーム視角によって乗算され、現在のカメラの参照フレームからのカメラ・フレーム水平および垂直オフセット角を供給する。Ｄｅｎａｖｉｔ−Ｈａｒｔｅｎｂｅｒｇ Ｐａｒａｍｅｔｅｒｓにおけるものと同じ方法を用いて、しかしゼロ長さ軸（zero length axes）を仮定して、新しいクリックの参照フレーム６８０が生成される。
【００６６】
次いで、あらゆるロールを取り除くために、クリックの参照フレームを再配向する（reorient）。即ち、左側のベクトルがｚグラウンド・プレーンに対して水平になるまで（until the left vector is horizontal to the z ground plane）、順方向ベクトルの回りにクリックの参照フレームを回転させる。一度なされたならば、クリックの参照フレームの方向性は、垂直ティルト角および水平回転角によって完全に表される。これがクリック・ベクトルである。
【００６７】
次いで、クリック・ベクトルは、三角関数を用いて、目標位置のｘ、ｙ、およびｚ座標を決定するためにグローバル・マップに投影される（段階６９０）。好適な実施形態では、目標のｚ座標は、ゼロであると仮定される。次いで、ロボットは、その現在の位置から目標位置まで移動するためにグローバル・マップを用いることができる。
【００６８】
差動駆動（differential drive）を有するロボットに対する好適な実施形態では、ロボットをその現在の位置（５１８）から目標位置（６９０）に移動するための命令を生成するための処理は、順方向速度および回転速度を指示することを含み、回転速度は、現在のロボットの回転角と、現在のロボットの位置と所望のロボットの位置との間の角度と、の間の差の正弦関数である（the rotational velocity is the sine of the difference between the current robot rotational angle and the angle between the current robot position and the desired robot position）。順方向速度は、当該角度の二乗されたものの余弦関数である（The forward velocity is the cosine squared of the same angle）。当業者は、代替のステアリングおよびナビゲーション方法機構を生成することができるということを認識するであろう。
【００６９】
上記は、クリック位置（６８７）をロボットの目標位置（６９０）に変換する好適な方法（６００）を説明した。しかしながら、（目標サークルおよびパースペクティブ・ボックスを含む）オーバーレイ・ガイドラインを供給するために、システムは、目標位置（またはグローバル・マップ内のあらゆる位置）をヘッドアップ・ディスプレイ内の画素位置に変換することができなければならない。この変換を行うために必要なデータの大部分は、クリック位置を目標位置に変換する図１５Ｂに示した処理からのデータの複製である。
【００７０】
好適な実施形態では、（グローバル・マップ内に固定された）目標サークルは、ロボットが目標位置に近づくときに、ヘッドアップ・ディスプレイ上で継続的にリフレッシュされる。従って、一定のカメラ・ズーム角およびベクトルを仮定すると、ロボットの現在の位置が目標位置に近づくときに、目標サークルは大きさが増大するように見えるべきである。この処理では目標サークルのｘ、ｙ、ｚ位置が一定のままであるが、カメラの参照フレームはロボットの動きにより変化する、ということに注目することは重要である。
【００７１】
グローバル・マップでの所与のｘ、ｙ、ｚ位置に対するヘッドアップ・ディスプレイ内の画素位置の計算のための一つの方法７００を、図１６のフロー図に示す。まず、動画ベクトル（animation vector）７２０は、動画ベクトルが現在のカメラ位置とマップされるｘ、ｙ、ｚ位置との間の角度に等しいように決定される。この動画ベクトルは、垂直ティルト角および水平回転角によって表される。次いで、視線（line of sight）７３０は、カメラの参照フレームを用いて動画ベクトルをカメラ・フレームと同じロール・コンポーネントにマッピングすることによって決定される。カメラの参照フレームと視線との間の水平および垂直差７４０は、水平および垂直視角差を供給する。ズーム・カメラ角６７５と組合せたこれらの視角差７４０は、それらの角度オフセットが現在のズーム内であるという条件で、ヘッドアップ・ディスプレイ７６０にマップすることができる画素オフセット７５０を供給する。
【００７２】
本発明は、テレ−ロボット・インタフェースを通して、“あるものを指す（point at something）”機能を提供する。ここに記載したこの発明の特定の実施形態は、ユーザがフロアー上のスポットを指し、ロボットは、そのスポットの上に移動する（the robot will drive on top of that spot）。しかしながら、また、ここに記載した技法は、ウォール・プレーン（the plane of a wall）が与えられているとして、壁上のスポットを指す場合や、既存の市販されている３Ｄ−ステレオ・ビジョン製品によって供給されるような、視対象となるアイテムについての三次元レンジマップが与えられているとして、密集しているアイテム集合の中からある特定のアイテムを指す場合などに用いることもできる。そのように、このインタフェースは、ロボット・アームを把持対象に向ける場合にも用いることができる。例えば、本発明は棚からアイテムをピックアップする食料雑貨買物ロボットの部分として用いることができ、このインターフェースを選択するアイテムを指し示すために用いることができる。このインタフェースは三次元空間を完全に表す同次変換（homogeneous transforms）を用いて構築されるので、このインタフェースは、水平なフロアーを行ったり来たりするのではなく、任意の三次元空間で作業するロボットに用いることができる。例えば、これは、水中ロボット、宇宙ロボット（space-based robots）、または空中ロボット（airborne robots）を管理するために用いることができる。本発明は、エンド・ユーザに写真を提示し、エンド・ユーザにそれらの画像内でポイントさせ、それから、三次元地図の表面かまたはその他の空間の三次元表現とともに、三次元空間のベクトルまたはそのベクトルがプレーンと交叉する三次元空間のスポットのいずれかとして二次元クリックを解釈するために三次元情報を自動的に用いる、汎用的な技法を実現する。
【００７３】
これを念頭に置いて、本発明は、本明細書中に示した実施の特定の例とは異なる詳細に関連して実用化することができ、示したものとは異なる装置、システムおよび方法で実施することができるということが、当業者によって理解されるであろう。それゆえに、本明細書中に記載された詳細は、限定というよりむしろ説明のために提供されるものであり、本発明は添付した特許請求の範囲によってのみ限定される。
【図１】
0005503052.tif 000003
【図２】
0005503052.tif 000004
【図３】
0005503052.tif 000005
【図４】
0005503052.tif 000006
【図５】
0005503052.tif 000007
【図６】
0005503052.tif 000008
【図７】
0005503052.tif 000009
【図８】
0005503052.tif 000010
【図９】
0005503052.tif 000011
【図１０】
0005503052.tif 000012
【図１１】
0005503052.tif 000013
【図１２】
0005503052.tif 000014
【図１３】
0005503052.tif 000015
【図１４】
0005503052.tif 000016
【図１５Ａ】
0005503052.tif 000017
【図１５Ｂ】
0005503052.tif 000018
【図１６】
0005503052.tif 000019