"可動式ロボット100であって、順駆動方向Fを有する駆動システム200と、前記駆動システム200と通信しているコントローラ500と、前記駆動システム200の上方に支持され、かつ前記可動式ロボット100の移動方向の床面を含む空間体積から点群を取得することができるように方向付けられる、体積点群撮像デバイス450と、前記体積点群撮像デバイス450によって検出不可能な空間体積453内の物体12を検出するように配設される検出界492、2192を有する、死角センサ490、2190と、を備え、前記コントローラ500は、前記撮像デバイス450から点群信号と、前記死角センサ490、2190から検出信号とを受信し、少なくとも部分的に前記受信した点群信号および検出信号に基づき、前記駆動システム200に駆動コマンドを発行する、可動式ロボット100。前記死角センサ490、2190は、体積点群撮像デバイス450、ソナーセンサ、カメラ、超音波センサ、LIDAR、LADAR、光学センサ、および赤外線センサのうちの少なくとも1つを備える、請求項1に記載の可動式ロボット100。前記死角センサ490、2190の前記検出界492、2192は、前記体積点群撮像デバイス450によって検出不可能な空間体積453を包囲する、請求項1または2に記載の可動式ロボット100。前記体積点群撮像デバイス450によって検出不可能な前記空間体積453は、第1の角度α、第2の角度β、および半径RSによって、好ましくは57°×45°×50cmによって画定される、請求項3に記載の可動式ロボット100。前記死角センサ490の前記検出界492は、前記体積点群撮像デバイス450と前記体積点群撮像デバイス450の検出界457との間に配設される、請求項1~4のいずれかに記載の可動式ロボット100。前記死角センサ2190は、前記死角センサ2190から外向きに少なくとも3メートル延在する視界2192を有する、請求項1~5のいずれかに記載の可動式ロボット100。前記体積点群撮像デバイス450によって検出不可能な前記空間体積453内の物体12を検出するように配設される検出界492、2192を有する少なくとも1つの死角センサ490、2190を含む死角センサ490、2190のアレイをさらに備え、死角センサ490の前記アレイは、それらの視界492、2192が、前記順駆動方向Fに沿った状態で、または前記ロボット100によって画定される垂直中心軸Zを中心に均等に分配された状態で配設される、請求項1~6のいずれかに記載の可動式ロボット100。前記撮像デバイス450は、前記ロボット100の周囲の情景10に光を放射し、前記ロボット100の前記駆動方向Fに沿った前記情景10の画像を捕捉し、前記画像は、a3次元深度画像、bアクティブ照明画像、およびc周囲照明画像のうちの少なくとも1つを含み、前記コントローラ500は、前記画像に基づき、前記情景10内の物体12の位置を判定し、前記物体位置に基づき、前記情景10内で前記ロボット100を機動させるように、前記駆動システム200に駆動コマンドを発行する、請求項1~7のいずれかに記載の可動式ロボット100。前記撮像デバイス450は、前記光の放射と前記情景10からの反射光の受けとりとの間の飛行時間を判定し、前記コントローラ500は、前記物体12の反射面までの距離を判定するために、前記飛行時間を使用する、請求項8に記載の可動式ロボット100。前記撮像デバイス450は、好ましくは間欠パルスの光を前記情景10に放射するための光源1172、1310、1510であって、より好ましくは、前記光源1172、1310、1510は、前記光パルスを第1の省電力周波数で放射し、センサ事象を受信すると、前記光パルスを第2のアクティブ周波数で放射し、前記センサ事象は、任意選択により、前記情景10内の物体12の存在を示すセンサ信号を含む、光源1172、1310、1510と、前記情景10から前記放射光の反射を受けとるための撮像部1174、1320、1520と、を備え、前記撮像部1174、1320、1520は、光検出ピクセル1174p、1326、1522のアレイを備える、請求項8または9に記載の可動式ロボット100。前記撮像デバイス450は、第1および第2の部分450a、450bを備え、前記第1の部分450aは、実質的に地面上に光を放射し、前記地面から前記放射光の反射を受けとるように配設され、前記第2の部分450bは、前記地面の実質的に上方の情景10内に光を放射し、前記ロボット100の周囲の前記情景10から前記放射光の反射を受けとるように配設される、請求項1~10のいずれかに記載の可動式ロボット100。前記撮像デバイス450は、光のスペックルパターンを前記ロボット100の駆動方向に沿った情景10に放射する、スペックル放射部1310と、前記情景10内の物体12から前記スペックルパターンの反射を受けとる、撮像部1320と、を備え、前記コントローラ500は、前記情景10内の基準物体12から反射される前記スペックルパターンの基準画像を記憶し、前記基準画像は、前記基準物体12から様々な異なる距離Znで捕捉され、前記情景10内の標的物体12から反射される前記スペックルパターンの少なくとも1つの標的画像を前記基準画像と比較して、前記標的物体12の前記反射面の距離ΔΖを判定する、請求項1~11のいずれかに記載の可動式ロボット100。前記コントローラ500は、前記標的物体12上の一次スペックルパターンを判定し、前記一次スペックルパターンと前記基準画像の前記スペックルパターンとの間のそれぞれの相互相関および非相関のうちの少なくとも1つを演算する、請求項12に記載の可動式ロボット100。前記撮像センサ450は、前記撮像センサ450の横方向視界452、θvHを増加させるように前記順駆動方向Fに対して左右に、および/またはその垂直視界452、θvvを増加させるように上下に走査する、請求項1~13のいずれかに記載の可動式ロボット100。前記コントローラ500は、前記駆動システム200に駆動コマンドを発行するために、受信後の閾値期間の後、前記受信した点群信号の使用を中止する、請求項1~14のいずれかに記載の可動式ロボット100。前記コントローラ500は、前記死角センサ490、2190からの前記受信した検出信号に基づき、前記体積点群撮像デバイス450によって検出不可能な前記空間体積453内の物体12の存在を判定すると、前記受信した点群信号の使用の中止を一時中断する、請求項15に記載の可動式ロボット100。前記コントローラ500は、好ましくは前記死角センサ490、2190からの前記受信した検出信号に基づき、前記体積点群撮像デバイス450によって検出不可能な前記空間体積453にいかなる物体12もないと判定すると、受信後の前記閾値期間の後、前記受信した点群信号の使用の中止を継続する、請求項16に記載の可動式ロボット100。可動式ロボット100であって、基部120と、前記基部120によって支持され、かつ垂直軸Zを画定する、ホロノミック駆動システム200であって、情景10の作業面5の上で前記ロボット100を機動させる、ホロノミック駆動システム200と、前記駆動システム200と通信しているコントローラ500と、前記基部120から上向きに延在する脚部130と、前記脚部130によって支持される胴部140であって、前記基部120に対して前記垂直軸Zを中心に回転する、胴部140と、前記胴部140上に配置され、前記ロボット100の周囲の前記情景10の体積点群を捕捉する、少なくとも1つの撮像センサ450と、を備え、前記回転胴部140は、前記体積点群撮像デバイス450を前記垂直軸Zを中心に回動運動で移動させ、前記ロボット100の周囲の最大で360°の視界452を提供する、可動式ロボット100。前記少なくとも1つの撮像センサ450は、前記駆動システム200の順駆動方向Fに沿って下向きに照準を定めるように配設される撮像軸455を有する、請求項18に記載の可動式ロボット100。前記少なくとも1つの撮像センサ450は、前記駆動システム200の順駆動方向Fに沿って下向きに照準を定めるように配設される撮像軸455を有する、第1の撮像センサ450、450aと、前記作業面5に対して平行又は上方に、前記胴部140から離れるように照準を定めるように配設される撮像軸455を有する、第2の撮像センサ450、450bと、を備える、請求項18に記載の可動式ロボット100。前記少なくとも1つの撮像センサ450は、前記撮像センサ450の横方向視界452、θvHを増加させるように前記順駆動方向Fに対して左右に、および/またはその垂直視界452、θvvを増加させるように上下に走査する、請求項18~20のいずれかに記載の可動式ロボット100。前記少なくとも1つの撮像センサ450は、光のスペックルパターンを前記情景10に放射する、スペックル放射部1310と、前記情景10内の物体12から前記スペックルパターンの反射を受けとる、撮像部1320と、を備え、前記コントローラ500は、前記情景10内の基準物体12から反射される前記スペックルパターンの基準画像を記憶し、前記基準画像は、前記基準物体12から様々な異なる距離Znで捕捉され、前記情景10内の標的物体12から反射される前記スペックルパターンの少なくとも1つの標的画像を前記基準画像と比較して、前記標的物体12の前記反射面の距離ΔΖを判定する、請求項18~21のいずれかに記載の可動式ロボット100。前記少なくとも1つの撮像センサ450は、前記ロボット100の駆動方向Fに沿った前記情景10の画像を捕捉し、前記画像は、a3次元深度画像、bアクティブ照明画像、およびc周囲照明画像のうちの少なくとも1つを含む、請求項22に記載の可動式ロボット100。前記コントローラ500は、前記画像比較に基づき、前記情景10内の物体12の位置を判定し、前記物体位置に基づき、前記情景10内で前記ロボット100を機動させるように、前記駆動システム200に駆動コマンドを発行する、請求項22または23のいずれかに記載の可動式ロボット100。前記コントローラ500は、前記標的物体12上の一次スペックルパターンを判定し、前記一次スペックルパターンと前記基準画像の前記スペックルパターンとの間のそれぞれの相互相関および非相関のうちの少なくとも1つを演算する、請求項22~24のいずれかに記載の可動式ロボット100。前記少なくとも1つの撮像センサ450は、前記作業面5の上方の2フィート約61cmを超える高さに位置付けられ、かつ前記ロボット100の移動方向Fの床面5を含む空間体積から点群を取得することができるように方向付けられる、体積点群撮像デバイス450を備える、請求項18~25のいずれかに記載の可動式ロボット100。前記少なくとも1つの撮像センサ450は、少なくとも45度の水平視界θv-Ηと、少なくとも40度および/または約1メートル~約5メートルの範囲の垂直視界θvvと、を有する、請求項18~26のいずれかに記載の可動式ロボット100。前記撮像センサ450は、約44msの待ち時間を有し、好ましくは、前記撮像センサ450の撮像出力は、待ち時間を補償するためにタイムスタンプを受ける、請求項18~27のいずれかに記載の可動式ロボット100。前記撮像センサ450によって検出不可能な空間体積453内の物体12を検出するように配設される検出界492、2192を有する、死角センサ490、2190をさらに備える、請求項18~28のいずれかに記載の可動式ロボット100。前記死角センサ490、2190は、体積点群撮像デバイス450、ソナーセンサ、カメラ、超音波センサ、LIDAR、LADAR、光学センサ、および赤外線センサのうちの少なくとも1つを備える、請求項29に記載の可動式ロボット100。前記死角センサ490、2190の前記検出界492、2192は、前記体積点群撮像デバイス450によって検出不可能な空間体積453を包囲する、請求項29または30に記載の可動式ロボット100。前記体積点群撮像デバイス450によって検出不可能な前記空間体積453は、第1の角度α、第2の角度β、および半径RSによって、好ましくは57°×45°×50cmによって画定される、請求項31に記載の可動式ロボット100。前記死角センサ490の前記検出界492は、前記撮像センサ450と前記撮像センサ450の検出界457との間に配設される、請求項29~32のいずれかに記載の可動式ロボット100。前記死角センサ2190は、前記死角センサ2190から外向きに少なくとも3メートル延在する視界2192を有する、請求項29~33のいずれかに記載の可動式ロボット100。前記撮像センサ450によって検出不可能な前記空間体積453内の物体12を検出するように配設される検出界492、2192を有する少なくとも1つの死角センサ490、2190を含む死角センサ490、2190のアレイをさらに備え、死角センサ490の前記アレイは、それらの視界492、2192が、前記順駆動方向Fに沿った状態で、または前記ロボット100によって画定される垂直中心軸Zを中心に均等に分配された状態で配設される、請求項29~34のいずれかに記載の可動式ロボット100。前記コントローラ500は、前記駆動システム200に駆動コマンドを発行するために、閾値期間の後、前記撮像センサ450から受信した点群信号の使用を中止する、請求項29~35のいずれかに記載の可動式ロボット100。前記コントローラ500は、前記死角センサ490、2190から受信した検出信号に基づき、前記撮像センサ450によって検出不可能な前記空間体積453内の物体12の存在を判定すると、前記受信した点群信号の使用の中止を一時中断する、請求項36に記載の可動式ロボット100。前記コントローラ500は、好ましくは前記死角センサ490、2190からの前記受信した検出信号に基づき、前記前記撮像センサ450によって検出不可能な前記空間体積453にいかなる物体12もないと判定すると、前記閾値期間の後、前記受信した点群信号の使用の中止を継続する、請求項37に記載の可動式ロボット100。前記胴部140は、前記脚部130に対して前記垂直軸Zを中心に回転し、および/または前記脚部130は、前記基部120に対して前記垂直軸Zを中心に回転する、請求項18~38のいずれかに記載の可動式ロボット100。前記脚部130は、可変高さHLを有する、請求項18~39のいずれかに記載の可動式ロボット100。可動式ロボット100のための物体検出の方法であって、撮像センサ450を、前記ロボット100の垂直軸Zを中心に回転させるステップを含み、前記撮像センサ450は、前記ロボット100の周囲の情景10に光を放射し、前記情景10の画像を捕捉し、前記画像は、a3次元深度画像、bアクティブ照明画像、およびc周囲照明画像のうちの少なくとも1つを含み、前記画像に基づき、前記情景10内の物体12の位置を判定するステップと、前記物体位置に信頼レベルを割り当てるステップと、前記物体位置および対応する信頼レベルに基づき、前記情景10内で前記ロボット100を機動させるステップと、を更に含む、方法。前記情景10の物体占領マップ1700を構築するステップをさらに含む、請求項41に記載の方法。それぞれの物体位置が新たに判定される物体位置で更新されるまで、前記各物体位置の前記信頼レベルを経時的に低下させることをさらに含む、請求項40または41に記載の方法。好ましくは、前記撮像センサ450によって検出不可能な空間体積453内の物体12を検出するように配設される検出界492、2192を有する死角センサ490、2190を使用して、前記撮像センサ450によって検出不可能な前記空間体積453内の物体12を検出するステップと、前記検出された物体12の前記信頼レベルの低下を中止するステップと、をさらに含む、請求項43に記載の方法。前記撮像センサ450によって検出不可能な前記空間体積453にその物体12がないことを検出すると、前記検出された物体12の前記信頼レベルの低下を継続することをさらに含む、請求項44に記載の方法。前記ロボット100を、少なくとも、a前記物体12と接触させ、前記物体12の周辺に沿って追従させるように、またはb前記物体12を回避するように、機動させることをさらに含む、請求項41~45のいずれかに記載の方法。任意選択により前記放射光パルスの周波数を変化させて、間欠パルスの前記光を前記情景10に放射するステップであって、好ましくは、前記光パルスを第1の省電力周波数で放射し、センサ事象を受信すると、前記光パルスを第2のアクティブ周波数で放射し、前記センサ事象は、好ましくは、前記情景10内の物体12の存在を示すセンサ信号を含む、前記ステップをさらに含む、請求項41~46のいずれかに記載の方法。光のスペックルパターンを前記情景10に放射するステップと、前記情景10内の前記物体12から前記スペックルパターンの反射を受けとるステップと、前記情景10内の基準物体12から反射される前記スペックルパターンの基準画像を記憶ステップであって、前記基準画像は、前記基準物体12から様々な異なる距離Znで捕捉される、前記ステップと、前記情景10内の標的物体12から反射される前記スペックルパターンの少なくとも1つの標的画像を捕捉するステップと、前記少なくとも1つの標的画像を前記基準画像と比較して、前記標的物体12の前記反射面の距離ΔΖを判定するステップと、によって、前記情景10の前記3次元深度画像を構築するステップをさらに含む、請求項41~47のいずれかに記載の方法。前記標的物体12上の一次スペックルパターンを判定するステップと、前記一次スペックルパターンと前記基準画像の前記スペックルパターンとの間のそれぞれの相互相関および非相関のうちの少なくとも1つを演算するステップとをさらに含む、請求項48に記載の方法。好ましくは約10Hz~約90Hzの、あるフレーム速度で、前記標的物体12の表面からの前記放射されたスペックルパターンの反射のフレームを捕捉するステップと、任意選択により、前記標的物体12の識別のために、連続フレーム内に捕捉されるスペックルパターンの間の差を解決することをさらに含む、請求項48または49のいずれかに記載の方法。様々な図面中の同様の参照記号は、同様の要素を指す。可動式ロボットは、人と対話またはやりとりして、在宅支援から商業支援、およびその他に及ぶ多数のサービスを提供することができる。在宅支援の例では、可動式ロボットは、投薬計画の維持、移動支援、通信支援例えば、テレビ会議、電話通信、インターネットアクセス等、住居もしくは現場監視屋内および/または屋外、人監視、および/または個人用緊急対応システムPERSの提供を含むが、これらに限定されない、高齢者の日常生活を支援することができる。商業支援では、可動式ロボットは、テレビ会議例えば、病院状況における、売り場専用端末、対話型情報/マーケティング端末等を提供することができる。図1~図2を参照すると、いくつかの実現形態では、可動式ロボット100は、順駆動方向Fを画定するロボット本体110またはシャーシを含む。また、ロボット100は、それぞれがロボット本体110によって支持され、かつロボット100の動作および移動を協調させるコントローラ500と通信している、駆動システム200と、インターフェースモジュール300と、センサシステム400とも含む。電源105例えば、バッテリ単数または複数は、ロボット本体110によって運搬され、これらの構成要素のそれぞれと電気通信し、必要に応じてそれらに電力を送達することができる。例えば、コントローラ500は、1000MIPS100万命令/秒超の能力があるコンピュータを含み得、電源1058は、3時間より長くコンピュータに電力を供給するのに十分なバッテリを提供する。示される実施例では、ロボット本体110は、基部120と、基部120から上向きに延在する少なくとも1つの脚部130と、少なくとも1つの脚部130によって支持される胴部140とを含む。基部120は、駆動システム200の少なくとも部分を支持してもよい。また、ロボット本体110は、胴部140によって支持される首部150も含む。首部150は頭部160を支持し、頭部160はインターフェースモジュール300の少なくとも一部分を支持する。基部120は、機械的安定性を維持するために、基部120の低重心CGBおよびロボット100の低全体重心CGRを維持するのに十分な重りを含む例えば、電源105バッテリを支持することによって。図3および図4A~図4Cを参照すると、いくつかの実現形態では、基部120は、三角対称形状例えば、上面図で三角形状を画定する。例えば、基部120は、三角形状の基部120例えば、図4A参照の各脚部に対応する第1、第2、および第3の基部本体部分124a、124b、124cを有する基部本体124を支持する、基部シャーシ122を含んでもよい。各基部本体部分124a、124b、124cは、物体と接触するのに応えて、基部シャーシ122に対して独立して移動することができるように、基部シャーシ122によって移動可能に支持することができる。基部120の三角対称形状は、ロボット100の周囲360°のぶつかり検出を可能にする。各基部本体部分124a、124b、124cは、基部シャーシ122に対する対応する基部本体部分124a、124b、124cの移動を検出する、関連接触センサ例えば、容量センサ、リードスイッチ等を有することができる。いくつかの実現形態では、駆動システム200は、ロボット100の全方向性および/またはホロノミック運動制御を提供する。本明細書で使用される場合、全方向性という用語は、実質的に任意の平面方向に移動する能力、すなわち、左右横方向、前/後、および回転移動する能力を指す。これらの方向は、本明細書では、概して、それぞれx、y、およびθzとして参照される。さらに、ホロノミックという用語は、文献における用語の使用と実質的に一致し、3つの平面自由度を伴う、平面方向に移動する能力、すなわち、2つの平行移動および1つの回転を指す。したがって、ホロノミックロボットは、3つの平面速度前/後、横方向、および回転の実質的に任意の比率で構成される速度で平面方向に移動する能力、ならびに3つの比率を実質的に継続的に変化させる能力を有する。ロボット100は、車輪可動性を使用して、人間環境例えば、典型的に二足歩行の歩行居住者向けに設計された環境内で動作することができる。いくつかの実現形態では、駆動システム200は、垂直軸Zを中心に均等に離間した例えば、120度離れている第1、第2、および第3の駆動車輪210a、210b、210cすなわち、三角対称を含むが、しかしながら、4車輪ホロノミック駆動システムのような他の配設も同様に可能である。図5Aおよび図5Bを参照すると、駆動車輪210a、210b、210cは、ホロノミック駆動システム200の機動性を助長し得る、横方向に弓状の転がり表面すなわち、転がり方向DRを横断する、またはそれに対して直角な方向に湾曲した輪郭を画定してもよい。各駆動車輪210a、210b、210cは、駆動車輪210a、210b、210cを他の駆動モータ220a、220b、220cから独立して順および/または逆方向に駆動することができる、それぞれの駆動モータ220a、220b、220cに連結される。各駆動モータ220a~cは、コントローラ500に車輪回転フィードバックを提供する、それぞれのエンコーダ212図8Cを有することができる。いくつかの実施例では、各駆動車輪210a、210b、210cは、正三角形の3つの点のうちの1つ上またはその付近に搭載され、それぞれの三角形端部の角の二等分線に対して直角な駆動方向順および逆方向を有する。順駆動方向Fを伴う三角対称ホロノミック基部120の駆動は、閉じ込めまたは散乱物から自律的に脱出し、脱出が解決された後に順駆動方向Fに沿って駆動するように次いで回転および/または平行移動するために、ロボット100が非順駆動方向に移行することを可能にする。図3~図5Bに示される実施例では、第1の駆動車輪210aは、順駆動方向Fに沿った先端駆動車輪として配設され、残りの2つの駆動車輪210b、210cは、後方から追従する。この配設では、前進するために、コントローラ500は、第1の駆動車輪210aを順駆動方向Fに沿って滑らせる一方で、第2および第3の駆動車輪210b、210cを同等の速度で順転方向に駆動させる、駆動コマンドを発行してもよい。さらに、この駆動車輪配設は、ロボット100が急停止する例えば、順駆動方向Fに対する急激な負の加速を発生させることを可能にする。これは、3車輪設計の自然な動的不安定性によるものである。順駆動方向Fが2つの順駆動車輪の間の角の二等分線に沿ったものである場合、急停止は、ロボット100を転倒させ得るトルクを生じさせ、その2つの前車輪の上で枢動させる。代わりに、1つの駆動車輪210aを用いた前方への移動は、急速停止する必要がある場合に、必然的に、ロボット100が前方に倒れることから支持する、またはそれを防止する。しかしながら、停止から加速する際、コントローラ500は、ロボット100のその全体重心CGRからの慣性モーメントIを考慮してもよい。駆動システム200のいくつかの実現形態では、各駆動車輪210a、210b、210は、ロボット100のXおよびY軸に直交する垂直軸Zと半径方向に整合される転がり方向DRを有する。第1の駆動車輪210aは、順駆動方向Fに沿った先端駆動車輪として配設することができ、残りの2つの駆動車輪210b、210cは、後方に追従する。この配設では、前進させるために、コントローラ500は、第1の駆動車輪210aを順転方向に駆動させ、第2および第3の駆動車輪210b、210cを第1の駆動車輪210aと同等の速度で逆方向に駆動させる、駆動コマンドを発行してもよい。他の実現形態では、駆動システム200は、2つの駆動車輪210a、210bの間の角度の角の二等分線が、ロボット100の順駆動方向Fと整合されるように位置付けられる、第1および第2の駆動車輪210a、210bを有するように配設することができる。この配設では、前進させるために、コントローラ500は、第1および第2の駆動車輪210a、210bを順転方向に同等の速度で駆動させ、一方、第3の駆動車輪210cを逆方向に駆動させる、または空転状態に保ち、第1および第2の駆動車輪210a、210bの後方に引きずられさせる、駆動コマンドを発行してもよい。前進しながら左または右に曲がるために、コントローラ500は、対応する第1または第2の駆動車輪210a、210bを相対的により速い/より遅い速度で駆動させるコマンドを発行してもよい。他の駆動システム200の配設も同様に使用することができる。駆動車輪210a、210b、210cは、円筒形、円形、楕円形、または多角形の輪郭を画定してもよい。再び図1~図3を参照すると、基部120は、基部120からZ方向に上向きに延在する、少なくとも1つの脚部130を支持する。脚部単数または複数130は、基部120に対して胴部140を上昇および降下させるために、可変高さを有するように構成されてもよい。いくつかの実現形態では、各脚部130は、相互に対して移動する例えば、入れ子状伸縮、線形、および/または角移動、第1および第2の脚部分132、134を含む。示される実施例では、第2の脚部分134は、相互の中および外へ、ならびに相対的により大きい基部押出部の外へ入れ子状に伸縮移動する、連続的により小さい直径の押出部を有するというよりはむしろ、第1の脚部分132の上に入れ子状に伸縮移動し、したがって、第2の脚部分134に沿って他の構成要素を定置すること、および潜在的に、第2の脚部分134と共に基部120の相対的近接に移動させることを可能にする。脚部130は、第1の脚部分132に対して第2の脚部分134を移動させるためのアクチュエータアセンブリ136図8Cを含んでもよい。アクチュエータアセンブリ136は、コントローラ500に位置フィードバックを提供する、リフトモータ138bおよびエンコーダ138cと通信している、モータドライバ138aを含んでもよい。一般的に、入れ子状伸縮配設は、脚部130全体の重心CGLを可能な限り低く保つために、基部120に、相対的により大きい押出部の外へ上に入れ子状に伸縮移動する、連続的により小さい直径の押出部を含む。さらに、脚部130が完全に延在される際に基部120が受ける、より大きいトルクに対処するために、より頑丈な、および/またはより大きい構成要素を底部に定置することができる。しかしながら、この手法は、2つの問題を提示する。第一に、相対的により小さい構成要素が脚部130の上部に定置される際、いずれの雨、粉塵、または他の微粒子も、押出部を流れる、または転がり落ちる傾向があり、押出部の間の空間に入り込み、したがって押出部の入れ子を詰まらせる。これは、依然として脚部130の完全な可動性/関節運動を維持することを試みる一方での、非常に困難な封止問題をもたらす。第二に、ロボット100上に搭載物またはアクセサリを搭載することが望まれる場合がある。アクセサリを搭載する1つの一般的な場所は、胴部140の上部である。第2の脚部分134が第1の脚部分の外に入れ子状に伸縮移動する場合、アクセサリおよび構成要素は、それらが胴部140と共に移動する必要がある場合、第2の脚部分134全体の上方にしか搭載することができない。そうでなければ、第2の脚部分134上に搭載されるいずれの構成要素も、脚部130の入れ子状伸縮移動を制限することとなる。第2の脚部分134を第1の脚部分132上で入れ子状に伸縮移動させることによって、第2の脚部分134は、基部120に対して垂直に移動することができる、追加の搭載物取り付け点を提供する。このタイプの配設は、水または浮遊微粒子が、脚部分132と脚部分134との間の空間に入ることなく、胴部140のそれぞれの脚部分132、134例えば、押出部の外側上を流れ落ちるようにする。これは、脚部130のいずれの接合部も封止することを大いに簡単にする。さらに、胴部140および/または第2の脚部分134の搭載物/アクセサリ搭載特徴は、脚部130がどれくらい延在されているかに関わらず、常に露出され、利用可能である。図3および図6を参照すると、脚部単数または複数130は、基部120の上および上方に延在する、段部142を有してもよい、胴部140を支持する。示される実施例では、胴部140は、段部142の少なくとも一部を形成する、下を向く表面または底面144例えば、基部を向くと、反対の上を向く表面または上面146とを有し、その間に延在する側面148を伴う。胴部140は、脚部単数または複数130によって支持される中心部分141と、脚部単数または複数130の範囲を横方向に越えて横方向に延在する周辺遊離部分143とを有する、円形状もしくは楕円形状等の様々な形状または幾何学的形状を画定してもよく、このようにして、下を向く表面144を画定する張り出し部分を提供する。いくつかの実施例では、胴部140は、基部120上に脚部単数または複数130を越えて延在する張り出し部分を提供する、段部を画定する、多角形または他の複雑な形状を画定する。ロボット100は、搭載物を受容するために、1つ以上のアクセサリポート170例えば、機械的および/または電気的相互接続点を含んでもよい。アクセサリポート170は、受容される搭載物が、センサシステム400のセンサ例えば、胴部140の底面144および/または上面146上等のを塞がない、または遮らないように、位置することができる。いくつかの実現形態では、図6に示されるように、胴部140は、例えば、バスケット360内に搭載物を受容して、胴部140の前方部分147またはロボット本体110の他の部分上のセンサを遮らないように、胴部140の後方部分149上に、1つ以上のアクセサリポート170を含む。再び図1~図3、および図7を参照すると、胴部140は、胴部140に対する頭部160の回動および傾斜を提供する、首部150を支持する。示される実施例では、首部150は、回転部152と、傾斜部154とを含む。回転部152は、約90°~約360°の、ある範囲の角移動θR例えば、Z軸を中心としたを提供してもよい。他の範囲も同様に可能である。さらに、いくつかの実施例では、回転部152は、頭部160とロボット100の残りの部分との間の電気的通信を維持した状態で、無限回数の回転の、胴部140に対する頭部160の連続する360°の回転を可能にする、電気的コネクタまたは接触を含む。傾斜部154は、頭部160とロボット100の残りの部分との間の電気的通信を維持した状態で、胴部140に対する頭部160の回転を可能にする、同一もしくは同様の電気的コネクタまたは接触を含んでもよい。回転部152は、リング153例えば、歯状リングラックに連結される、またはそれと嵌合する、回転部モータ152mを含んでもよい。傾斜部154は、回転部152から独立して、頭部を胴部140に対して角度θTに移動させてもよい例えば、Y軸を中心に。いくつかの実施例では、傾斜部154は、頭部160をZ軸に対して±90°の角度θTに移動させる、傾斜部モータ155を含む。±45°等の他の範囲も同様に可能である。ロボット100は、脚部単数または複数130、胴部140、首部150、および頭部160が、ロボット100の安定した可動性を維持するために、基部120の周辺内に留まるように構成されてもよい。図8Fに示される例となる回路図では、首部150は、回転部152および傾斜部154を、対応するモータドライバ156a、156b、およびエンコーダ158a、158bと共に含む、回動-傾斜アセンブリ151を含む。図8A~図8Gは、ロボット100の例となる回路図を提供する。図8A~図8Cは、ソナー近接センサ410および段差近接センサ420等の近接センサと、接触センサ430と、レーザスキャナ440と、ソナースキャナ460と、駆動システム200とを収容してもよい、基部120の例となる回路図を提供する。また、基部120は、コントローラ500と、電源105と、脚部アクチュエータアセンブリ136とも収容してもよい。胴部140は、マイクロコントローラ145と、マイクロフォン単数または複数330と、スピーカ単数または複数340と、撮像センサ450走査3-D画像センサ450a等と、コントローラ500がユーザの接触またはタッチを受信し、それに応答する例えば、胴部140を基部120に対して移動させる、首部150を回動およびもしくは傾斜させる、ならびに/またはこれらに応えて駆動システム200にコマンドを発行することによってことを可能にする、胴部タッチセンサシステム480とを収容してもよい。首部150は、対応するモータドライバ156aおよびエンコーダ158aを有する回動モータ152と、対応するモータドライバ156bおよびエンコーダ158bを有する傾斜モータ154とを含んでもよい、回動-傾斜アセンブリ151を収容してもよい。頭部160は、1つ以上のウェブパッド310例えば、ロボット100と通信している遠隔コンピューティングデバイスであってもよいと、カメラ320とを収容してもよい。ウェブパッド310は、遠隔ユーザがロボット100の周囲の環境または情景10を可視化し、ロボット100を遠隔制御することを可能にする、ソフトウェアアプリケーション例えば、タブレットベースのUIコンポーネント/アプリケーションを実行してもよい。ソフトウェアアプリケーションは、ウェブパッド310にAppleiPad2および/またはMotorolaXoom等のハードウェアを、および撮像センサ450にPrimeSensorカメラPrimeSense,28HabarzelSt.,4thfloor,Tel-Aviv,69710,Israelから入手可能を、または任意の他の好適なハードウェアを使用してもよい。ソフトウェアアプリケーションは、AppleiOS4.x、Android3.0別名Honeycomb、OpenGLES2.0.、または任意の他の好適なオペレーティングシステムもしくはプログラムを使用してもよい。図1~図4Cおよび図9を参照すると、信頼性があり、かつ強固な自律的移動を達成するために、センサシステム400は、ロボット100が、その環境内でとる動作についての知性的決定を行うことを可能にするのに十分なロボットの環境の知覚を生じさせるように、相互と併用して使用することができる、いくつかの異なるタイプのセンサを含んでもよい。センサシステム400は、ロボット本体110によって支持される、障害物検出障害物回避ODOAセンサ、通信センサ、ナビゲーションセンサ等を含んでもよい、1つ以上のタイプのセンサを含んでもよい。例えば、これらのセンサには、近接センサ、接触センサ、3次元3D撮像/深度マップセンサ、カメラ例えば、可視光および/または赤外線カメラ、ソナー、レーダ、LIDARLightDetectionAndRanging、離れた標的の距離および/または他の情報を発見するために、散乱光の特性を計測する、光学遠隔感知を必要とする可能性がある、LADARLaserDetectionandRanging等が挙げられるが、これらに限定されない。いくつかの実現形態では、センサシステム400は、測距ソナーセンサ410例えば、基部120の周辺に9つと、近接段差検出器420と、接触センサ430と、レーザスキャナ440と、1つ以上の3-D撮像/深度センサ450と、撮像ソナー450とを含む。センサをロボットの基本骨格上に定置することに伴う、いくつかの課題が存在する。第一に、センサは、それらがロボット100の周囲の最大対応範囲関心領域を有するように定置する必要がある。第二に、センサは、ロボット100自体がセンサを絶対的に最小限しか塞がないように定置しなければならない場合がある、本質的に、センサを、それらがロボット自体によって覆い隠されるように定置することはできない。第三に、センサの定置および搭載は、基本骨格の工業設計の残りの部分に対して邪魔にならないべきである。審美性の観点から、センサが目立たないように搭載されたロボットは、そうではないものより魅力的であると見なすことができる。実用性の観点から、センサは、通常のロボット動作を妨げない障害物上に引っかかる等ように搭載されるべきである。いくつかの実現形態では、センサシステム400は、コントローラ500と通信しており、かついずれの近くの、または侵入する障害物も検出するために、ロボット100の1つ以上の域または部分内に配設される例えば、ロボット本体110の基部本体部分124a、124b、124c上またはその付近に配置される、一式の近接センサ410、420またはそのアレイを含む。近接センサ410、420は、物体がロボット100の所与の範囲内にある際に、コントローラ500に信号を提供する、収束赤外線IR放射部-センサ要素、ソナーセンサ、超音波センサ、および/または撮像センサ例えば、3D深度マップ画像センサであってもよい。図4A~図4Cに示される実施例では、ロボット100は、基部本体120の周囲に配置され例えば、実質的に等距離に、かつ上向き視界を伴って配設される、ソナータイプの近接センサ410のアレイを含む。第1、第2、および第3のソナー近接センサ410a、410b、410cは、第1の前方基部本体部分124a上またはその付近に配置され、第1の基部本体124aの半径方向に最も外側の縁部125aに、ソナー近接センサのうちの少なくとも1つを有する。第4、第5、および第6のソナー近接センサ410d、410e、410fは、第2の右側基部本体部分124b上またはその付近に配置され、第2の基部本体124bの半径方向に最も外側の縁部125bの付近に、ソナー近接センサのうちの少なくとも1つを有する。第7、第8、および第9のソナー近接センサ410g、410h、410iは、第3の右側基部本体部分124c上またはその付近に配置され、第3の基部本体124cの半径方向に最も外側の縁部125cの付近に、ソナー近接センサのうちの少なくとも1つを有する。この構成は、少なくとも3つの検出域を提供する。いくつかの実施例では、基部本体120の周囲に配置される一式のソナー近接センサ410例えば、410a~410iは、上例えば、実質的にZ方向を向くように配設され、任意選択により、Z軸から離れるように外向きに角度付けられ、したがって、ロボット100の周囲に検出カーテン412を生じさせる。各ソナー近接センサ410a~410iは、ソナー放出を上向きに、または少なくともロボット本体110の他の部分に向かわないように例えば、ロボット本体110のそれ自体に対する移動を検出しないように誘導する、シュラウドまたは放出ガイド414を有してもよい。放出ガイド414は、シェルまたは半シェル形状を画定してもよい。示される実施例では、基部本体120は、脚部130を越えて横方向に延在し、ソナー近接センサ410例えば、410a~410iは、脚部130の周囲の基部本体120上に例えば、実質的に基部本体120の周辺に沿って配置される。さらに、上を向くソナー近接センサ410は、脚部130の周囲に連続する、または実質的に連続するソナー検出カーテン412を生じさせるように離間される。ソナー検出カーテン412は、テーブル上部、棚等の高くなった横方向突出部分を有する障害物を検出するために使用することができる。上を見るソナー近接センサ410は、テーブル上部等の水平面内の近接にある物体を見る能力を提供する。これらの物体は、それらのアスペクト比のため、レーザスキャナ440または撮像センサ450等のセンサシステムの他のセンサによって見逃される場合があり、そのため、ロボット100に問題をもたらす可能性がある。基部120の周辺の周囲に配設される、上を見るソナー近接センサ410は、これらのタイプの物体/障害物を見る、または検出するための手段を提供する。さらに、ソナー近接センサ410は、ロボット100の胴部140または頭部160によって塞がれない、または遮られないように、基部周辺の最大幅点の周囲に、わずかに外向きに角度付けて定置することができ、したがって、ロボット100自体の部分を感知することによる誤検出をもたらさない。いくつかの実現形態では、ソナー近接センサ410は、ソナー近接センサ410の視界の外側の胴部140の周囲の体積を残すように配設され上向きかつ外向きに、したがって、バスケット460等の搭載される搭載物またはアクセサリを自由に受容する。ソナー近接センサ410は、視覚的隠蔽を提供し、障害物上に引っかかる、またはそれに衝突する外部特徴をなくすために、基部本体124に引っ込めることができる。センサシステム400は、後退している間の障害物を検出するために、後ろ向き例えば、順駆動方向Fと反対に方向付けられる、1つ以上のソナー近接センサ410例えば、後部近接センサ410jを含んでもよい。後部ソナー近接センサ410jは、そのソナー検出界412を方向付ける、放出ガイド414を含んでもよい。さらに、後部ソナー近接センサ410jは、ロボット100と後部ソナー近接センサ4l0jの視界内の検出される物体との間の距離を判定するよう測距するために使用することができる例えば、後退警報として。いくつかの実施例では、後部ソナー近接センサ410jは、筐体形態にいかなる視覚的または機能的不規則性ももたらさないように、基部本体120内に引っ込んで搭載される。図3および図4Bを参照すると、いくつかの実現形態では、ロボット100は、駆動車輪210a、210b、210cが段差例えば、階段に遭遇する前に段差を検出することを可能にするように、駆動車輪210a、210b、210cの付近または周囲に配設される、段差近接センサ420を含む。例えば、段差近接センサ420は、基部本体124a~cの半径方向に最も外側の縁部125a~cのそれぞれに、もしくはその付近に、またはその間の位置にあってもよい。場合によっては、段差感知は、床があることが予測されるべき位置で重なる放射および検出界、したがって検出域を有するように、相互に向かって角度付けられる赤外線放射部422および赤外線検出器424を使用する、赤外線IR近接または実距離感知を使用して実現される。IR近接感知は、比較的狭い視界を有する可能性があり、信頼性が表面アルベドに依存する場合があり、表面間で変化する距離精度を有する可能性がある。結果として、ロボット100上の複数の点から段差を適切に検出するために、複数の別個のセンサをロボット100の周辺の周囲に定置することができる。さらに、IR近接ベースのセンサは、典型的に、段差とロボット100が敷居を登った直後等の安全事象とを区別することができない。段差近接センサ420は、ロボット100が一式の階段に遭遇する際等の床の低くなっている縁部に遭遇した際を検出することができる。コントローラ500制御システムを実行するは、縁部が検出される際、ロボット100にその移動方向を変化させる等の動作をとらせる挙動を実行してもよい。いくつかの実現形態では、センサシステム400は、1つ以上の二次段差センサ例えば、段差感知用および任意選択により他のタイプの感知用に構成される他のセンサを含む。段差検出近接センサ420は、段差の早期検出を提供するように、実際の段差と安全事象敷居を乗り越える等とを区別するためのデータを提供するように、およびそれらの視界が、ロボット本体110の少なくとも一部と、ロボット本体110から離れた領域とを含むように、外側低めに位置付けられるように配設することができる。いくつかの実現形態では、コントローラ500は、支持作業面例えば、床の縁部、作業面の縁部を通り過ぎた距離の増加、および/またはロボット本体110と作業面との間の距離の増加を識別し、検出する、段差検出ルーチンを実行する。本実現形態は、1潜在的な段差の早期検出未知の環境内でのより速い移動速度を可能にし得る、2段差事象が本当に安全ではないものであるか否か、または安全に横断すること例えば、敷居を登って越える等ができるものであるか否かを知るために、コントローラ500が段差検出近接センサ420からの段差撮像情報を受信することによる、自律的可動性の信頼性の増加、3段差の誤検出の低減例えば、縁部検出対複数の狭い視界を伴う別個のIR近接センサの使用によるを可能にする。冗長性のため、および距離感知カメラが特定のタイプの段差を確実に検出することができない状況を検出するために、脱輪センサとして配設される追加のセンサを使用することができる。敷居および段検出は、ロボット100が、登ることができる敷居を横断するか、または高過ぎる段を回避するかのいずれかを効率的に計画することを可能にする。これは、ロボット100が安全に横断し得る、または横断し得ない、作業面上の無差別な物体についても同じであることができる。ロボット100が、登ることができると判定する障害物または敷居について、それらの高さを知ることは、ロボット100が、円滑さを最大限にし、突然の加速によるいかなる不安定性も最小限にするために、円滑な移行を可能にするのに必要であると考えられる場合に、適切に減速することを可能にする。いくつかの実現形態では、敷居および段検出は、幾何学的形状認識例えば、敷居または電気ケーブル対靴下等の小塊とを判別するに加えて、作業面の上方の物体の高さに基づく。敷居は、縁部検出によって認識されてもよい。コントローラ500は、段差検出近接センサ420またはロボット100上の別の撮像センサから撮像データを受信し、縁部検出ルーチンを実行し、縁部検出ルーチンの結果に基づき、駆動コマンドを発行してもよい。コントローラ500は、物体を識別するために、パターン認識も同様に使用してもよい。敷居検出は、ロボット100が、円滑に段を登る能力を最大限にするように、敷居に対するその配向を変化させることを可能にする。近接センサ410、420は、単独で機能してもよく、または代替として、冗長性のために、1つ以上の接触センサ430例えば、隆起スイッチとの組み合わせで機能してもよい。例えば、ロボット本体110上の1つ以上の接触または隆起センサ430は、ロボット100が障害物に物理的に遭遇したか否かを検出することができる。そのようなセンサは、障害物に遭遇した際を判定するために、ロボット100内の静電容量または物理的移動等の物理的特性を使用してもよい。いくつかの実現形態では、基部120の各基部本体部分124a、124b、124cは、基部シャーシ122例えば、図4A参照に対する対応する基部本体部分124a、124b、124cの移動を検出する、関連接触センサ430例えば、容量センサ、リードスイッチ等を有する。例えば、各基部本体124a~cは、3方向ぶつかり検出を提供するために、基部シャーシ122のZ軸に対して半径方向に移動してもよい。図1~図4C、図9、および図10Aを参照すると、いくつかの実現形態では、センサシステム400は、ロボット本体110の前方部分上に搭載され、かつコントローラ500と通信している、レーザスキャナ440を含む。示される実施例では、レーザスキャナ440は、第1の基部本体124a上またはその上方例えば、ロボットの駆動方向Fに沿って最大撮像対応範囲を有するようにの前を向く基部本体120上に搭載される例えば、順駆動方向Fに沿った視界を有する。さらに、三角形の基部120の前先端上またはその付近へのレーザスキャナの定置は、ロボット基部の外角例えば、300度が、レーザスキャナ440の視界442例えば、約285度より大きいことを意味し、したがって、基部120が、レーザスキャナ440の検出視界442を塞ぐ、または遮るのを防止する。レーザスキャナ440は、レーザスキャナのいずれかの部分が、基部本体124を通り越して突き出すのを最小限にするように例えば、審美性のため、および障害物上に引っかかるのを最小限にするため、その視界を塞ぐことなく、基部本体124内に可能な限り引っ込めて搭載することができる。レーザスキャナ440は、ロボット100の周囲領域を走査し、コントローラ500は、レーザスキャナ440から受信される信号を使用して、走査した領域の環境マップまたは物体マップを作成する。コントローラ500は、ナビゲーション、障害物検出、および障害物回避に、物体マップを使用してもよい。さらに、コントローラ500は、物体マップを作成するため、および/またはナビゲーションのために、センサシステム400の他のセンサからの感知入力を使用してもよい。いくつかの実施例では、レーザスキャナ440は、主走査線として1次元内の領域を素早く走査するレーザと、線内の生成される各ピクセルに深度を割り当てるのに位相差または同様の技法を使用する飛行時間撮像要素とを使用し得る、走査LIDARである走査面内の2次元深度線を返す。3次元マップを生成するために、LIDARは、第2の方向に補助走査を実施することができる例えば、スキャナを上下させることによって。この機械的走査技法は、補われていない場合、ピクセルの完全2-Dマトリックスのための飛行時間計算を可能にして、各ピクセルの深度、またはさらには各ピクセルの一連の深度を提供するためにコード化照明器または照明レーザを用いて、半導体スタックを使用する技法、FlashLIDARLADARおよびSwissRangerタイプの焦点面撮像要素センサ等の技術によって補完することができる。センサシステム400は、コントローラ500と通信している、1つ以上の3次元3-D画像センサ450を含んでもよい。3-D画像センサ450が、限られた視界を有する場合、コントローラ500またはセンサシステム400は、強固なODOAを実施するために、相対的により広い視界を生じるよう、3-D画像センサ450aを、左右を走査するように作動させることができる。図2および図4A~図4Cを参照すると、センサシステム400は、ロボット100の全体重心CGRに対するロボット100の慣性モーメントを計測し、監視する、コントローラ500と通信している、慣性計測ユニットIMU470を含んでもよい。コントローラ500は、正常な妨害されていない動作に対応する閾値信号から、IMU470からのフィードバックにおけるいかなる逸脱も監視し得る。例えば、ロボットが直立位置から離れるように傾き始める場合、タックルされた、ないしは別の方法で邪魔された、または誰かが重い搭載物を突然追加した可能性がある。そのような状況では、ロボット100の安全な動作を保証するために、緊急動作回避機動、再較正、および/または音声/視覚警告の発行を含むが、これらに限定されないをとる必要がある場合がある。ロボット100は、人間環境内で動作得るため、人とやりとりし、人向けに設計されたかつロボット制約が考慮されていない空間内で動作する場合がある。ロボット100は、カクテルパーティまたは混み合った病院等の混雑した、制約された、または極めて動的な環境において、その駆動速度および加速を制限することができる。しかしながら、ロボット100は、誰もいない長い廊下のような比較的高速に駆動することが安全だが、誰かがロボットの運動経路を横切る際に依然として突然減速し得る状況に遭遇する場合がある。停止から加速する際、コントローラ500は、ロボットが倒れるのを防止するように、その全体重心CGRからのロボット100の慣性モーメントを考慮してもよい。コントローラ500は、その現在の慣性モーメントを含む、その姿勢のモデルを使用してもよい。搭載物が支持される際、コントローラ500は、全体重心CGRへの負荷影響を計測し、ロボットの移動の慣性モーメントを監視してもよい。例えば、胴部140および/または首部150は、歪みを計測する、歪みゲージを含んでもよい。これが可能ではない場合、コントローラ500は、安全限界を実験的に判定するために、駆動車輪210に試験トルクコマンドを適用し、IMU470を使用して、ロボットの実際の線形加速および角加速を計測してもよい。突然の減速中、第2および第3の駆動車輪210b、210c後輪にコマンドされる負荷は低減され、一方、第1の駆動車輪210a前輪は、順駆動方向に滑り、ロボット100を支持する。第2および第3の駆動車輪210b、210c後輪の負荷が非対称である場合、ロボット100は、偏揺れする場合があり、これは、動的安定性を低下させる。この偏揺れを検出し、第2および第3の駆動車輪210b、210cに、ロボット100を再配向するようコマンドするために、IMU470例えば、ジャイロを使用することができる。図1~図3、図9、および図10Aを参照すると、いくつかの実現形態では、ロボット100は、順駆動方向Fに沿った視界を伴う、ロボット本体110の前方部分上に搭載される例えば、ロボットの駆動方向Fに沿った最大撮像対応範囲を有するように、走査3-D画像センサ450aを含む。走査3-D画像センサ450aは、主に、障害物検出/障害物回避ODOAに使用することができる。示される実施例では、走査3-D画像センサ450aは、例えば、ユーザが走査3-D画像センサ450aと接触するのを防止するために、図3に示されるように、胴部140上の段部142の下部上、または底面144上に搭載され、胴部140内に引っ込められる例えば、底面144と同一平面上またはそれを通り越して。走査3-D画像センサ450は、障害物検出および障害物回避ODOAのために、ロボット100の正面内の下向き視界452を有するように例えば、基部120またはロボット本体110の他の部分による遮りを伴う、実質的に下向きかつロボット本体110から離れるよう照準を定めるように配設することができる。胴部140の前縁部上またはその付近への走査3-D画像センサ450aの定置は、3-D画像センサ450の視界例えば、~285度が、3-D画像センサ450に対する胴部140の外面角度例えば、300度より小さくなるようにすることができ、したがって、胴部140が走査3-D画像センサ450aの検出視界452を塞ぐ、または遮るのを防止する。さらに、走査3-D画像センサ450aおよび関連アクチュエータは、可能な限りその視界を塞ぐことなく例えば、また、審美性のため、および障害物に引っかかるのを最小限にするためにも、胴部140内に埋め込んで搭載することができる。走査3-D画像センサ450aの気を散らす走査運動は、ユーザには見えず、それ程不快ではない対話経験をもたらす。突出するセンサまたは特徴とは異なり、引っ込んだ走査3-D画像センサ450aは、特に、移動または走査する際、事実上、胴部140の周辺を越えて延在する可動部分がないため、環境との意図されない相互作用人、障害物等への引っかかりを有さない傾向がある。いくつかの実現形態では、センサシステム400は、基部本体120上に配置される追加の3-D画像センサ450と、脚部130と、首部150および/または頭部160とを含む。図1に示される実施例では、ロボット100は、基部本体120、胴部140、および頭部160上に3-D画像センサ450を含む。図2に示される実施例では、ロボット100は、基部本体120、胴部140、および頭部160上に3-D画像センサ450を含む。図9に示される実施例では、ロボット100は、脚部130、胴部140、および首部150上に3-D画像センサ450を含む。他の構成も同様に可能である。1つの3-D画像センサ450例えば、首部150上かつ頭部160の上を、人認識、ジェスチャ認識、および/またはテレビ会議に使用することができ、一方、別の3-D画像センサ450例えば、基部120および/または脚部130上を、ナビゲーションならびに/または障害物検出および障害物回避に使用することができる。首部150および/または頭部160上に配置される、前を向く3-D画像センサ450を、ロボット100の周囲の人々の人認識、顔認識、および/またはジェスチャ認識に使用することができる。例えば、頭部160上の3-D画像センサ450からの信号入力を使用して、コントローラ500は、見た/捕捉したユーザの顔の3次元マップを作成し、作成した3次元マップを人の顔の既知の3-D画像と比較し、既知の3-D顔画像のうちの1つとの合致を判定することによって、ユーザを認識してもよい。顔認識は、ユーザをロボット100の正当なユーザとして認証するために使用されてもよい。さらに、3-D画像センサ450のうちの1つ以上を、ロボット100が見る人のジェスチャを判定し、判定されるジェスチャ単数または複数例えば、手差し、手振り、およびまたは手信号に基づき、任意選択により反応するために使用することができる。例えば、コントローラ500は、認識される特定の方向への手差しに応えて、駆動コマンドを発行してもよい。図10Bは、すべてがロボット本体905上に搭載され、それぞれが地面Gに対して平行な、または実質的に平行な視界を有する、カメラ910と、ソナーセンサ920と、レーザ距離計930とを有する、ロボット900の概略図を提供する。この配設は、少し離れた物体の検出を可能にする。実施例では、レーザ距離計930は、地面Gに近い物体を検出し、超音波センサソナー920のリングは、地面Gのさらに上方の物体を検出し、カメラ910は、非常に見晴らしの利く点から、情景の大部分を捕捉する。この設計の主要特徴は、センサ910、920、930がすべて、地面Gに対して平行に配向されているということである。この配設の1つの利点は、センサ910、920、930のうちの1つ以上を使用することによって判定される物体までの距離が、また、ロボット900が、それが物体に接触する前に、対応する所与の方向に移動することができる距離でもあるという点で、演算を簡略化することができるということである。この配設の欠点は、ロボットの包囲の良好な対応範囲を得るために、多くのレベルの感知が必要であるということである。これは、費用または演算の視点から不可能な要求である可能性があり、多くの場合、ロボット900のすべてのセンサ910、920、930のセンサ視界に大きい欠落部をもたらす。いくつかの実現形態では、ロボットは、ロボット100を包囲する領域の音響撮像のためのソナースキャナ460を含む。図1および図3に示される実施例では、ソナースキャナ460は、基部本体120の前方部分上に配置される。図1、図3B、および図10Aを参照すると、いくつかの実現形態では、ロボット100は、冗長感知のためにレーザスキャナまたはレーザ距離計440を、ならびに安全のために後ろを向くソナー近接センサ410jを使用し、これらの両方は、地面Gに対して平行に配向される。ロボット100は、ロボット100の周囲の環境の強固な感知を提供するために、第1および第2の3-D画像センサ450a、450b深度カメラを含んでもよい。第1の3-D画像センサ450aは、胴部140上に固定角度で下向きに地面Gを指すように搭載される。第1の3-D画像センサ450aを下向きに角度付けることによって、ロボット100は、ロボット100の前方向への短期移動に適した、ロボット100の直前または隣接領域における隙間のないセンサ対応範囲を得る。後ろを向くソナー410jは、ロボットが後方移動する際の物体検出を提供する。ロボット100にとって、後方移動が典型的である場合、ロボット100は、ロボット100の直後または隣接領域における隙間のないセンサ対応範囲を提供するために、下を向く第3の3D画像センサ450を含んでもよい。第2の3-D画像センサ450bは、首部150を介して回動および傾斜させることができる頭部160上に搭載される。第2の3-D画像センサ450bは、人オペレータが、ロボット100が進行している場所を見ることを可能にするため、遠隔駆動に有用であり得る。首部150は、オペレータが、近い物体および離れた物体の両方を見るように、第2の3-D画像センサ450bを傾斜および/または回動させることを可能にする。第2の3-D画像センサ450bを回動させることは、関連水平視界を増加させる。高速移動中、ロボット100は、3-D画像センサ450a、450bの両方の総体的または組み合わせた視界を増加させるため、およびロボット100が障害物を回避するのに十分な時間を与えるためより速い速度は、一般的に、障害物に反応する時間がより短いことを意味するために、第2の3-D画像センサ450bをわずかに下向きに傾斜させてもよい。低速では、ロボット100は、ロボット100が追従することを意図される人を追跡するように、第2の3-D画像センサ450bを上向きに、または地面Gに対して実質的に平行に傾斜させてもよい。さらに、比較的低速で駆動している間、ロボット100は、ロボット100の周囲のその視界を増加させるように、第2の3-D画像センサ450bを回動させることができる。ロボットが、ロボットの知覚範囲を拡大するように駆動している際、第1の3-D画像センサ450aは、固定されたままであることができる例えば、基部120に対して移動しない。3-D画像センサ450は、以下のタイプのデータを生成することができる:i深度マップ、ii反射率ベースの強度画像、および/またはiii標準強度画像。3-D画像センサ450は、画像パターン合致、源から放射され、標的から反射される光の飛行時間および/または位相遅延偏移計測によって、そのようなデータを取得してもよい。いくつかの実現形態では、プロセッサ例えば、ロボットコントローラ500の上で実行可能な推論または制御ソフトウェアは、センサシステム400によって生成される様々なデータ型を使用して実行されるアルゴリズムの組み合わせを使用する。推論ソフトウェアは、例えば、ロボット100が障害物と衝突することなく移動することができるかに関するナビゲーション決定を行うために、センサシステム400から収集されるデータを処理し、データを出力する。ロボットの包囲の経時的な撮像データを蓄積することによって、その結果、推論ソフトウェアは、3-D画像センサ450の深度計測を改善するために、感知される画像単数または複数の選択されるセグメントに効率的な方法を適用することができる。これには、適切な時間および空間平均技法を使用することが含まれてもよい。衝突のないロボット移動を実行する信頼性は、i高レベルの経時的な推論によって構築される信頼レベル、およびii解析のために3つの主なタイプのデータ、a深度画像、bアクティブ照明画像、およびc周囲照明画像を蓄積する、深度知覚センサに基づいてもよい。深度知覚撮像センサ450によって取得される画像のそれぞれに、異なるタイプのデータを認識するアルゴリズムを実行することができる。集約データは、1つの種類のデータのみを使用するシステムと比較して、信頼レベルを改善し得る。3-D画像センサ450は、1つ以上の物体を含有するロボットの周囲の情景100から、深度および明度データを含有する画像例えば、部屋または作業領域のセンサ視野部分を取得してもよい。コントローラ500は、情景から捕捉される反射光に基づき、物体の占領データを判定するように構成されてもよい。さらに、いくつかの実施例では、コントローラ500は、少なくとも一部において占領データに基づき、障害物すなわち、情景内の物体を迂回するように、駆動システム200に駆動コマンドを発行する。3-D画像センサ450は、情景内のいかなる物体にも衝突することなく、情景の周囲でロボット100をナビゲートするよう、コントローラ500によってリアルタイム決定を行うために、情景深度画像を繰り返し捕捉してもよい。例えば、3-D画像センサ450によって深度画像データが取得される速度または頻度は、3-D画像センサ450のシャッター速度によって制御されてもよい。加えて、コントローラ500は、事象トリガを受信してもよい例えば、コントローラ500に近隣の物体または危険を通知する、近接センサ410、420等のセンサシステム400の別のセンサ構成要素から。コントローラ500は、事象トリガに応えて、3-D画像センサ450に、深度画像が捕捉される頻度を増加させることができ、占領情報が取得される。図11を参照すると、いくつかの実現形態では、3-D撮像センサ450は、ロボット100の周囲領域例えば、部屋等の情景10に光を放射する、光源1172を含む。また、撮像センサ450は、光源1172から発される光の反射光を含む、情景10からの反射光を捕捉する例えば、情景深度画像として、撮像部1174例えば、光感知ピクセル1174pのアレイも含んでもよい。いくつかの実施例では、撮像センサ450は、放射される光および受信される反射光をそれぞれ操作する例えば、スペックリングまたは集束させるために、光源レンズ1176および/または検出器レンズ1178を含む。ロボットコントローラ500またはロボットコントローラ500と通信しているセンサコントローラ図示せずは、撮像部1174によって捕捉される反射光の画像パターン合致および/または飛行時間特性に基づき、情景10内の物体12の深度情報を判定するために、撮像部1174例えば、ピクセル1174pから光信号を受信する。図12は、撮像センサ450を動作させるための動作の例となる配設1200を提供する。図10Aを追加参照すると、動作は、ロボット100の周囲の情景10に光を放射すること1202と、撮像部例えば、光感知ピクセルのアレイ上への情景10からの放射光の反射を受けとる1204とを含む。動作は、コントローラ500が撮像部から光検出信号を受信すること1206と、光検出信号から得られる画像データを使用して、情景10内の物体12の1つ以上の特徴を検出すること1208と、光検出信号から得られる画像深度データを使用して、情景10内の物体12の検出される特徴単数または複数の位置を追跡すること1210とをさらに含む。動作は、画像データまたは画像深度データの解像度を増加させるため、および/または信頼レベルを提供するために、光を放射すること1202、光反射を受けとること1204、光検出信号を受信すること1206、物体特徴単数または複数を検出すること1208、および物体特徴単数または複数の位置を追跡すること12010の動作を繰り返すこと1212を含んでもよい。動作を繰り返すこと1212は、比較的高い解像度のために比較的遅い速度例えば、遅いフレーム速度で、中間速度で、または比較的低い解像度を伴って高速で実施することができる。動作を繰り返す1212頻度は、ロボットコントローラ500によって調節可能であり得る。いくつかの実現形態では、コントローラ500は、事象トリガを受信すると、動作を繰り返す1212頻度を高めてもよく、または低めてもよい。例えば、情景内の感知されるアイテムは、情景10内の高くなっている可能性のある物体12例えば、戸口、敷居、または段差を感知するために、動作を繰り返す1212頻度を増加させる事象をトリガし得る。追加の実施例では、検出された物体12間の経過時間事象が、動作を繰り返す1212頻度を低下させ得る、またはある期間停止させ得る例えば、別の事象によって起こされるまで活動停止状態になる。いくつかの実施例では、情景10内の物体12の1つ以上の特徴を検出する1208動作は、画像深度データが取得される速度を増加させるために、比較的大きい頻度の繰り返し動作1212をもたらす、特徴検出事象をトリガする。画像深度データの比較的大きい獲得速度は、情景内の相対的により信頼できる特徴追跡を可能にすることができる。また、動作は、情景10内の物体12を迂回するために、ナビゲーションデータを出力すること1214も含む。いくつかの実現形態では、コントローラ500は、駆動システム200に駆動コマンドを発行して、物体12との衝突を回避するようにロボット100を移動させるために、出力されるナビゲーションデータを使用する。いくつかの実現形態では、センサシステム400は、ロボット100の周囲の情景10内の複数の物体12を検出し、コントローラ500は、検出される物体12のそれぞれの位置を追跡する。コントローラ500は、部屋の境界付けられた領域等のロボット100の周囲の領域内の物体12の占領マップを作成してもよい。コントローラ500は、情景10を占領マップの一部分と合致させ、占領マップを追跡される物体12の位置で更新するために、センサシステム400の画像深度データを使用してもよい。図13を参照すると、いくつかの実現形態では、3-D画像センサ450は、スペックル非相関を通した画像マッピングを可能にする、3次元3Dスペックルカメラ1300を含む。スペックルカメラ1300は、情景10標的領域としてのにスペックルパターンを放射する、スペックル放射部1310例えば、赤外線、紫外線、および/または可視光のと、情景10内の物体12の表面上のスペックルパターンの画像を捕捉する、撮像部1320とを含む。スペックル放射部1310は、拡散器1314に、および反射、ひいては情景10へのスペックルパターンとしての投射のために反射器1316上に光ビームを放射する、レーザ等の光源1312を含んでもよい。撮像部1320は、CCDまたはCMOSベースの画像センサ等の光検出器1326のアレイを有する画像センサ1324上に画像を結像させる、対物光学素子1322を含んでもよい。スペックル放射部1310および撮像部1320の光学軸は、同一直線上であるように示されているが、非相関モードでは、例えば、スペックル放射部1310および撮像部1320の光学軸はまた、非同一直線上であってもよく、一方、相互相関モードでは、例えば、撮像軸が放射軸からずれるという具合であってもよい。スペックル放射部1310は、情景10にスペックルパターンを放射し、撮像部1320は、スペックル放射部1310から広範の異なる物体距離Znでの、情景10内のスペックルパターンの基準画像を捕捉する例えば、Z軸は、撮像部1320の光学軸によって画定することができる。示される実施例では、Z1、Z2、Z3等と標識される基準位置等、原点から異なる、それぞれの距離の連続平面で、投射されるスペックルパターンの基準画像が捕捉される。基準画像間の距離ΔΖは、閾値距離例えば、5mmに設定されてもよい、またはコントローラ500によって調節可能であってもよい例えば、トリガされる事象に応えて。スペックルカメラ1300は、スペックルパターンのスペックル放射部1310からの距離との非相関を可能にして、後続画像に捕捉される物体12の測距を実施するために、捕捉される基準画像を保管し、それぞれの放射距離にインデックスを付ける。例えば、ΔΖが隣接する基準距離Z1、Z2、Z3、...、の間の距離とほぼ同等であると仮定すると、位置ZAの物体12上のスペックルパターンを、Z2で捕捉されるスペックルパターンの基準画像と相関させることができる。その一方で、例えば、ZBの物体12上のスペックルパターンは、Z3の基準画像と相関させることができる。これらの相関計測は、原点からの物体12の近似距離をもたらす。物体12を3次元にマップするために、スペックルカメラ1300またはスペックルカメラ1300から情報を受信するコントローラ500は、最も近い合致をもたらした基準画像との局所相互相関を使用することができる。例えば、本明細書に記載されるものと組み合わせることが可能であり得る、三角測量または非相関を使用するスペックル相互相関を介したスペックル測距を使用した3D画像マッピングにおける他の詳細および特徴は、内容全体が参照することによって本明細書に組み込まれる、PCT特許出願第PCT/IL2006/000335号に見ることができる。図14は、スペックルカメラ1300を動作させるための動作の例となる配設1400を提供する。動作は、情景10にスペックルパターンを放射すること1402と、スペックル放射部1310から異なる距離での、基準画像例えば、基準物体12のを捕捉すること1404とを含む。動作は、情景10内の標的物体12にスペックルパターンを放射すること1406と、物体12上のスペックルパターンの標的画像を捕捉すること1408とをさらに含む。動作は、標的画像スペックルされた物体のを異なる基準画像と比較して、標的物体12上のスペックルパターンと最も強く相関する基準パターンを特定することと1410と、情景10内の標的物体12の推定される距離範囲を判定すること1412とをさらに含む。これは、物体12上の一次スペックルパターンを判定することと、物体12上の一次スペックルパターンと最も強く相関するスペックルパターンを有する基準画像を発見することとを含んでもよい。基準画像の対応する距離から、距離範囲を判定することができる。動作は、任意選択により、例えば、情景内の物体12の位置を判定するために、物体12上のスペックルパターンと識別される基準パターンとの間の局所相互相関によって、物体12の表面の3Dマップを構築すること1414を含む。これは、物体の3次元3Dマップを得るために、物体12上の一次スペックルパターンを判定することと、標的画像内の物体12の複数の領域上の一次スペックルパターンと特定された基準画像内の一次スペックルパターンとの間のそれぞれのオフセットを発見することとを含んでもよい。情景の3Dマッピングへの固体状態構成要素の使用は、ロボットナビゲーションシステムの比較的安価な解決策を提供する。典型的に、異なる、それぞれの距離のうちの少なくともいくつかは、それぞれの距離での一次スペックルパターンの軸長さより長く軸方向に離れている。標的画像を基準画像と比較することは、標的画像と基準画像のうちの少なくともいくつかのそれぞれとの間のそれぞれの相互相関を演算することと、標的画像との最大のそれぞれの相互相関を有する基準画像を選択することとを含んでもよい。動作は、例えば、継続的に情景10内の物体12の動きを追跡するために、動作1402~1412または動作1406~1412を繰り返すこと1416と、任意選択により動作1414とを含んでもよい。例えば、スペックルカメラ1300は、基準画像との比較のために、物体12が移動している間、連続標的画像を捕捉してもよい。本明細書に記載されるものと組み合わせることが可能であり得る、スペックル測距を使用する3D画像マッピングにおける他の詳細および特徴は、内容全体が参照することによって本明細書に組み込まれる、米国特許第7,433,024号、名称がDepthMappingUsingProjectedPatternsの米国特許出願公開第2008/0106746号、名称がDepthMappingUsingProjectedPatternsの米国特許出願公開第2010/0118123号、名称がModelingOfHumanoidFormsFromDepthMapsの米国特許出願公開第2010/0034457号、名称がDepthMappingUsingMulti-BeamIlluminationの米国特許出願公開第2010/0020078号、名称がOpticalDesignsForZeroOrderReductionの米国特許出願公開第2009/0185274号、名称がThree-DimensionalSensingUsingSpecklePatternsの米国特許出願公開第2009/0096783号、名称がDepthMappingUsingProjectedPatternsの米国特許出願公開第2008/0240502号、および名称がDepth-VaryingLightFieldsForThreeDimensionalSensingの米国特許出願公開第2008/0106746号に見ることができる。図15を参照すると、いくつかの実現形態では、3-D撮像センサ450は、深度画像データを取得するための3D飛行時間TOFカメラ1500を含む。3DTOFカメラ1500は、光源1510と、相補型金属酸化物半導体CMOSセンサ1520または電荷結合デバイスCCDと、レンズ1530と、光源1510およびCMOSセンサ1520と通信している、処理資源を有する制御論理またはカメラコントローラ1540および/またはロボットコントローラ500とを含む。光源1510は、周期的高周波信号によって調節される強度を伴う、レーザまたは発光ダイオードLEDであってもよい。いくつかの実施例では、光源1510は、集束レンズ1512を含む。CMOSセンサ1520は、各ピクセル検出器1522が、その上に衝突する光子エネルギーの強度および位相を検出することができる、ピクセル検出器1522のアレイ、またはピクセル検出器1522の他の配設を含んでもよい。いくつかの実施例では、各ピクセル検出器1522は、関連ピクセル検出器1522の検出電荷出力を処理するための専用検出器回路1524を有する。レンズ1530は、1つ以上の関心物体12を含有する情景10から反射される光を、CMOSセンサ1520上に集束させる。カメラコントローラ1540は、CMOSセンサ1520によって取得されるピクセルデータを深度マップおよび明度画像に形式化する、一連の動作を提供する。いくつかの実施例では、また、3DTOFカメラ1500は、入力/出力IO1550例えば、ロボットコントローラ500と通信している、メモリ1560、ならびに/またはカメラコントローラ1540および/もしくはピクセル検出器1522例えば、検出器回路1524と通信しているクロック1570も含む。図16は、3DTOFカメラ1500を動作させるための動作の例となる配設1600を提供する。動作は、光パルス例えば、赤外線、紫外線、および/または可視光を情景10に放射すること1602と、光パルスの飛行時間の時間計測を開始すること例えば、クロック1570のクロックパルスをカウントすることによって1604とを含む。動作は、情景10内の物体12の1つ以上の表面から放射される光の反射を受けとること1606を含む。反射は、光源1510から異なる距離Znで、物体12の表面から反射されてもよい。反射は、レンズ1530を通してCMOSセンサ1520のピクセル検出器1522上に受けとられる。動作は、CMOSセンサ1520の各対応するピクセル検出器1522上に受信される、各光パルス反射の飛行時間を受信すること1608を含む。光パルスの往復飛行時間TOF中、各それぞれのピクセル検出器1522の検出器回路1523のカウンタは、クロックパルスを蓄積する。より大きい数のクロックパルスの蓄積は、より長いTOF、およびしたがって、撮像される物体12上の光反射点と光源1510との間のより大きい距離を表す。動作は、それぞれの受けとられる光パルス反射の物体12の反射面の間の距離を判定すること1610と、任意選択により、3次元物体表面を構築すること1612とをさらに含む。いくつかの実現形態では、動作は、動作1602~1610を繰り返すこと1614と、任意選択により、情景10内の物体12の移動を追跡するための1612とを含む。本明細書に記載されるものと組み合わせることが可能であり得る、3D飛行時間撮像における他の詳細および特徴は、内容全体が参照することによって本明細書に組み込まれる、名称がCMOSCompatible3-DImageSensorの米国特許第6,323,942号、名称がMethodsforCMOS-CompatibleThree-DimensionalImageSensingUsingQuantumEfficiencyModulationの米国特許第6,515,740号、および名称がMethodandSystemtoEnhanceDynamicRangeConversionUsablewithCMOSThree-DimensionalImagingのPCT特許出願第PCT/US02/16621号に見ることができる。いくつかの実現形態では、3-D撮像センサ450は、3つのタイプの情報、すなわち1深度情報例えば、CMOSセンサ1520の各ピクセル検出器1522から情景12上の対応する位置までの、2各ピクセル検出器位置での周囲光強度、および3各ピクセル検出器位置でのアクティブ照明強度を提供する。深度情報は、特に物体の近接からロボット配備現場に関して、検出される物体12の位置が経時的に追跡されるようにすることを可能にする。アクティブ照明強度および周囲光強度は、異なるタイプの明度画像である。アクティブ照明強度は、標的物体12から反射されるアクティブ光光源1510によって提供されるもの等の反射から捕捉される。周囲光画像は、標的物体12から反射される周囲光のものである。2つの画像は、共に、特に照明条件が悪い際例えば、暗すぎるか、または過度の周囲照明に、追加の強固性を提供する。情景10内の物体12の位置を分類し、検出するために、画像区分化および分類アルゴリズムが使用されてもよい。これらのアルゴリズムによって提供される情報、ならびに撮像センサ450から取得される距離計測情報は、ロボットコントローラ500または他の処理資源によって使用することができる。撮像センサ450は、周囲光をフィルタ処理するために、フォトダイオードの感度を調節するための技法を含む、飛行時間の原理に基づき、およびより具体的には、情景10から反射される、調節された光パターンにおける検出可能な位相遅延に基づき、動作することができる。ロボット100は、1マッピング、位置特定ナビゲーション、2物体検出物体回避ODOA、3物体探索例えば、人を発見するための、4ジェスチャ認識例えば、コンパニオンロボットのための、5人顔検出、6人追跡、7ロボット100による物体の操作の監視、およびロボット100の自律的動作のための他の好適な用途に、撮像センサ450を使用してもよい。いくつかの実現形態では、3-D画像センサ450のうちの少なくとも1つは、ロボット100上の地面の上方の1フィート約30.5cmまたは2フィート約61cmを超える高さに位置付けられ、かつロボットの移動方向の床面を含む空間体積から点群を取得することができる全方向性駆動システム200を介してように方向付けられる、体積点群撮像デバイススペックルまたは飛行時間カメラ等であってもよい。図1および図3に示される実施例では、第1の3-D画像センサ450aを、基部120上の地面の上方の1または2フィートを超える高さまたは地面の約1または2フィート上方の高さに位置付け、駆動している間、床を含む体積の画像例えば、体積点群を捕捉するように、順駆動方向Fに沿って照準を定める例えば、障害物検出および障害物回避のためにことができる。ロボット100に隣接する空間体積から骨格認識および画定点群を取得することができるように、頭部160上に搭載された例えば、地面の上方の約3または4フィートを超える高さに、第2の3-D画像センサ450bが示されている。コントローラ500は、捕捉される体積点群のデータを解析するために、骨格/デジタル認識ソフトウェアを実行してもよい。周囲光条件に関わらず、撮像センサ450を使用して、物体12を適切に感知することは、重要であり得る。多くの環境では、照明条件は、直接日光から、明るい蛍光照明、ぼんやりとした影まで広い範囲に及び、物体12の表面質感および基本的な反射率に大きい変化をもたらす可能性がある。照明は、所与の位置内で、および情景10から情景10でも同様に変化する可能性がある。いくつかの実現形態では、すべての状況において、周囲光条件からの比較的小さい影響を伴って例えば、周囲光排除、人および物体12を識別し、解像するために、撮像センサ450を使用することができる。いくつかの実現形態では、撮像センサ450のVGA解像度は、水平640ピクセル×垂直480ピクセルであるが、しかしながら、320×240例えば、短距離センサではのような他の解像度も同様に可能である。撮像センサ450は、パルスレーザと、特定の範囲内のみの物体12を見るために、タイムドメインにおける帯域通過フィルタとしての機能を果たす、カメラアイリスとを含んでもよい。異なる距離の物体12aを検出するために、撮像センサ450の可変アイリスを使用することができる。さらに、屋外用途では、より高い電力のレーザパルスを発することができる。表1および表2以下は、様々な用途向けの撮像センサ450の例となる特徴、パラメータ、および/または仕様を提供する。センサ1は、汎用撮像センサ450として使用することができる。センサ2および3は、人対話型ロボットに使用することができ、センサ4および5は、カバレッジまたは掃除ロボットに使用することができる。最小センサ待ち時間は、ロボット100が移動している際に、物体12を回避するのに十分に素早く見ることを保証する。撮像センサ450の待ち時間は、検出され、認識されるユーザジェスチャにリアルタイムに反応することにおける要因であり得る。いくつかの実施例では、撮像センサ450は、約44msの待ち時間を有する。撮像センサ450によって捕捉される画像は、空間内を平行移動している、または回転している間のどのロボット姿勢で画像が撮られたかを判定するために使用することができる、属性付けられたタイムスタンプを有することができる。撮像センサ450と通信するために、コントローラ500と通信している、シリアル周辺機器インターフェースバスSPIが使用されてもよい。全体が参照することによって本明細書に組み込まれる、2010年2月16日に出願された、名称がMobileRobotCommunicationSystemの米国特許出願第61/305,069号に記載されるように、撮像センサ450にSPIインターフェースを使用することは、その使用をマルチノード分散センサ/アクチュエータシステムに制限せず、次いでデータをイーサネット登録商標およびイーサIOシステム上で利用可能にすることができる、マイクロプロセッサまたはフィールドプログラマブルゲートアレイFPGA等のイーサネット登録商標有効デバイスとの接続を可能にする。SPIは、限定されたプロトコルであるため、画像捕捉が実行される際に、点灯または遷移し得る割り込みピンが、撮像センサ450とのインターフェース上で利用可能であり得る。割り込みピンは、フレームが捕捉される際に、コントローラ500と通信することを可能にする。これは、コントローラ500が、データを読み出し可能であることを知ることを可能にする。さらに、割り込みピンは、画像が撮られた時を示すタイムスタンプを捕捉するために、コントローラ500によって使用することができる。撮像センサ450の撮像出力に、待ち時間を補償するために参照することができる、タイムスタンプを付けることができる例えば、コントローラ500のグローバルクロックによって。さらに、複数の撮像センサ450からのタイムスタンプが付けられた撮像出力例えば、情景10の異なる部分のを、同期させ、組み合わせる例えば、共に縫い合わせることができる。イーサIOシステム上で、割り込み時間割り込みピン上のを捕捉し、イーサIOシステム上のより高いレベルのデバイスおよびソフトウェアが利用可能な状態にすることができる。ロボット100は、撮像センサ450から捕捉されるデータに適用することができる、IEEE1588等のクロック同期ストラテジを実装する、マルチノード分散センサ/アクチュエータシステムを含んでもよい。SPIインターフェースおよびイーサIOの両方は、メモリアドレス駆動型インターフェースであってもよい。例えば、バイト/ワード/ダブルワードの形態のデータを、SPIインターフェース上で撮像センサ450から読み出し、イーサIOシステムのメモリ空間内で利用可能にすることができる。例えば、FPGAでは、イーサIOシステムのイーサIOノードを制御するために、直接メモリアクセスDMAメモリ等のローカルレジスタおよびメモリを使用することができる。場合によっては、ロボット100は、撮像センサ450を左右および/または上下に走査させる必要がある場合がある例えば、物体12または塞ぎ状態16図17Aの周囲を見るために。別個に機動されるロボット100では、これは、駆動システム200を用いて、ロボット100を適所で回転させること、または撮像センサ450と関連付けられる鏡、プリズム、可変角度マイクロミラー、もしくはMEMSミラーアレイを回転させることを伴う場合がある。全方向性、魚眼、反射屈折例えば、放物面鏡、テレセントリックレンズ、パナモーフミラーおよびレンズ等の光学素子によって、360より小さい視野角θvを有する撮像センサ450の視界452を、360度に拡大することができる。コントローラ500は、撮像センサ450を、とりわけ測距に使用してもよいが、必ずしも人に可視の画像または動画例えば、ヒューマンコミュニケーションのためのに使用しなくてもよいため、光源1172の照射および/または光学素子を通して撮像部1174図11によって捕捉される画像の歪み例えば、ワーピングは、測距に許容可能である例えば、3Dスペックルカメラ1300および/または3DTOFカメラ1500におけるように。場合によっては、撮像センサ450は、黒色の物体12、様々なアルベドの表面、高反射性の物体12、頑丈な3D構造、自己相似もしくは周期構造、または視界452もしくはそれをちょうど越えた物体例えば、水平および垂直視界角またはその外側のを認識し、測距することが困難である場合がある。そのような状況では、撮像センサ450を補うために、またはその冗長としての機能を果たすために、センサシステム400の他のセンサを使用することができる。いくつかの実現形態では、光源1172例えば、3Dスペックルカメラ1300および/または3DTOFカメラ1500のは、赤外線IRレーザ、IRパターン照明器、または他のIR照明器を含む。黒色の物体、特に黒色の布またはカーペットは、IRを吸収し、撮像部1174による認識に十分な強力な反射を返さない場合がある。この場合、黒色の物体の認識を改善するために、感知ソナー等の二次モード、または表面アルベド差を自己較正するための技法のいずれかが必要である場合がある。高反射性の物体12または著しく鏡面反射性の主要部を伴う物体12例えば、円筒形または球形は、距離撮像センサ450が測距することを困難にする場合がある。同様に、撮像センサ450が感知する光の波長を極度に吸収する物体12も、問題を提示する可能性がある。ガラスで作製されているドアおよび窓等の物体12は、高反射性であり、測距される際、空き空間無限範囲であるか、あるいは第1の非鏡面反射性表面までの反射としての距離であるかのいずれかのように見える可能性がある。これは、ロボット100が物体12を障害物として見ない場合があり、結果として、窓またはドアと衝突し、場合によっては、ロボットまたは物体12を損傷する場合がある。これを回避するために、コントローラ500は、典型的な窓枠または戸口のサイズおよび形状直線的なが合致する表面内の不連続を探す、1つ以上のアルゴリズムを実行してもよい。次いで、これらの表面を、障害物であり、空き空間ではないと推論することができる。ロボットの経路内の反射性の物体を検出するための別の実現形態は、その自己の反射を検出する、反射センサを使用することを含む。障害物または物体12に注意深く接近すると、鏡面反射性の物体が前途にあるか否か、またはロボットが安全に空間を占領することができるか否かを判定するために、反射センサを使用することができる。3Dスペックルカメラ1300の場合では、光源1310は、高反射性の物体12の表面上の認識可能なパターンを形成しない場合がある、または撮像部1320は、高反射性の物体12からのスペックル反射を認識しない場合がある。3DTOFカメラ1500の場合、高反射性の物体12は、3DTOFカメラ1500が、物体12内で反射される別の物体12物体自体というよりはむしろまでの距離を取得する、マルチパス状況を生じる場合がある。IR失敗モードを是正するために、センサシステム400は、音響飛行時間、ミリメートル波レーダ、または情景10内のさらに小さい反射を使用することができる立体もしくは他の視覚技法を採用してもよい。メッシュ物体12は、撮像センサ450が測距することを困難にする場合がある。特定の空隙率のメッシュのすぐ背後に物体12がない場合、メッシュは、固体障害物12のように見える。しかしながら、物体12がメッシュの背後に通過する場合、および3Dスペックルカメラ1300の場合、スペックルは、メッシュの背後の物体12から反射することができ、物体は、メッシュの背後であるにも関わらず、メッシュの代わりに深度マップに表示される。以前にメッシュの識別に寄与した点に関する情報物体12がメッシュの背後に通過する前が利用可能である場合、将来の占領マップにメッシュの位置を登録するために、そのような情報を使用することができる。様々な距離の受信されるスペックルマップの確率的相関に関する情報を受信することによって、コントローラ500は、撮像センサ450と直線状にある複数の多孔質の、またはメッシュのような物体12の位置を判定し得る。コントローラ500は、色/サイズ/寸法小塊合致に、撮像センサ45からの撮像データを使用してもよい。情景10内の別個の物体12の識別は、ロボット100が衝突を回避するだけでなく、また、物体12を探索することも可能にする。ヒューマンインターフェースロボット100は、住居またはオフィス環境の背景において、人および標的物体12を識別する必要がある場合がある。コントローラ500は、情景10内の連続物体12をもたらすために、撮像センサ450の撮像データから得られる深度マップ単数または複数に、マップが単純なグレースケールマップであるかのうように、1つ以上のカラーマップ小塊発見アルゴリズムを実行し、同一の色つまり、深度の連続性を探してもよい。物体12をどのように区分化するかの決定を促進するために、カラーマップを使用することは、色空間での区分化、ならびに深度空間での区分化を可能にすることによって、物体合致をさらに増強し得る。コントローラ500は、最初に深度によって物体12を検出し、次いで、色によって物体12をさらに区分化してもよい。これは、ロボット100が、異なる光学的品質を伴う、近接する、または相互に寄り掛かる2つの物体12を区別することを可能にする。センサシステム400が、物体検出のための撮像センサ450例えば、カメラを1つのみ含む実現形態では、撮像センサ450は、情景質感の不在下で、表面の撮像に問題を有する場合があり、情景のスケールを解像できない場合がある。さらに、スペックルカメラ1300では、物体12の鏡および/または鏡面主要部は、撮像部1174のピクセル1174pのグループを飽和させる例えば、捕捉される画像の対応する部分を飽和させる可能性があり、カラー画像では、鏡面主要部は、異なる視点から異なって見える可能性があり、それによって、画像合致を妨害する。物体検出に2つ以上のセンサを使用する、または統合することは、相対的により強固かつ冗長なセンサシステム400を提供することができる。例えば、フラッシュLADARは、一般的に、低ダイナミックレンジを有し、回転スキャナは、一般的に、長い検査時間を有するが、これらのタイプのセンサは、物体検出に有用である可能性がある。いくつかの実現形態では、センサシステム400は、コントローラ500と通信している撮像センサ450例えば、3Dスペックルカメラ1300および/または3DTOFカメラ1500に加えて、フラッシュLADARおよび/または回転スキャナを含む。コントローラ500は、物体12を識別する、ロボット100からの物体12の距離を判定する、物体12の表面の3Dマップを構築する、および/または占領マップ1700を構築もしくは更新するために、撮像センサ450、ならびにフラッシュLADARおよび/または回転スキャナからの検出信号を使用してもよい。距離範囲を初期化する、低質感の領域を埋める、深度不連続性を検出する、および/もしくはスケールを固定することによって、いかなるカラーまたは立体カメラの弱点にも対処するために、3Dスペックルカメラ1300および/または3DTOFカメラ1500を使用することができる。3Dスペックルカメラ1300を使用する実施例では、スペックル放射部1310によって放射されるスペックルパターンは、撮像部1320に対して回転不変であってもよい。さらに、3Dスペックルカメラ1300および/または3DTOFカメラ1500と共に登録される追加のカメラ1300例えば、カラーまたは立体カメラは、自我回転、傾斜、奥行き、および/またはスケール距離を扱うために、一部または完全にスケール回転アフィン不変である、特徴検出器を採用してもよい。スケール不変特徴変換またはSIFTは、画像内の局所特徴を検出および/または記述するためのアルゴリズムである。コントローラ500によって、物体認識、ロボットマッピングおよびナビゲーション、3Dモデル化、ジェスチャ認識、ビデオ追跡、ならびにマッチムービングに、SIFTを使用することができるセンサシステム400からのデータを用いて。SIFTは、スケール不変、回転不変変換であるため、情景10内の特徴にシグネチャを定置することを可能にし、それらがさらに離れるか、または回転される場合にさえ、情景10内の識別された特徴を再獲得することを助長することができる。例えば、通常の画像へのSIFTの適用は、移動した物体12例えば、顔もしくはボタンまたはあるテキストの認識が、物体12が同一の輝度または色パターンを有し、より大きい、もしくはより小さい、または回転されただけであるということを識別することを可能にする。ある角度から物体12を識別するために、アフィン不変であり、スキューskewまたは歪みを考慮することができる、他の変換が採用されてもよい。センサシステム400および/またはコントローラ500は、SIFT、RIFT、アフィンSIFT、RIFT、G-RIF、SURF、PCA-SIFT、GLOH、PCA-SIFT、FASTコーナー検出器および/もしくはScalableVocabularyTreeを用いたSIFT、ならびに/またはIrregularOrientationHistogramBinningを用いたSIFTを採用することによって、スケール不変特徴認識例えば、カラーまたは立体カメラを用いたを提供してもよい。いくつかの実現形態では、コントローラ500は、物体検出および/または識別のために、SIFTおよび/もしくは他の変換を採用するプログラムまたはルーチンを実行する。コントローラ500は、画像センサ450からカラー、白黒等の、またはIRカメラから画像データを受信してもよい。いくつかの実施例では、画像センサ450は、スペックル測距の利益なく特徴を識別するために、スペックル照射なく画像データを提供することができる、3DスペックルIRカメラである。コントローラ500は、スペックル測距から3D情景内に以前にマップされた特徴もしくは物体12を識別またはタグ付けすることができる。カメラを用いて撮像された特徴に適用されるSIFTをフィルタ処理し、認識率を改善するために、および/またはスケール不変を簡略化するため運動および距離の変化の両方が既知であり、スケールと関連する可能性があるために、深度マップを使用することができる。SIFT様の変換は、慣性追跡、走行距離計測、自己受容、および/または標識参照を有するロボットが、追跡することが可能であり得る、フレームからフレームで位置変化が正規化および/または偏移された深度マップデータで有用であり得る。例えば、スケールおよび回転不変のために適用される変換は、深度マップが特徴の方向への移動量によってインデックスを付けられる場合、深度マップ内の局所特徴を認識するのに、依然として効果的であり得る。本明細書に記載されるものと組み合わせることが可能であり得る、3DデータのSIFTのような、または他の特徴記述子における他の詳細および特徴は、内容全体が参照することによって本明細書に組み込まれる、Se,S.;Lowe,DavidG.;Little,J.2001.Vision-basedmobilerobotlocalizationandmappingusingscale-invariantfeatures.ProceedingsoftheIEEEInternationalConferenceonRoboticsandAutomationICRA.2.pp.2051、またはRothganger,F;S.Lazebnik,C.Schmid,andJ.Ponce:2004.3DObjectModelingandRecognitionUsingLocalAffine-InvariantImageDescriptorsandMulti-ViewSpatialConstraints,ICCV、またはIrynaGordonandDavidG.Lowe,Whatandwhere:3Dobjectrecognitionwithaccuratepose,TowardCategory-LevelObjectRecognition,Springer-Verlag,2006,pp.67-82に見ることができる。転倒を含む、人の行為認識における3DSIFTに好適な技法における他の詳細および特徴は、内容全体が参照することによって本明細書に組み込まれる、Laptev,IvanandLindeberg,Tony2004.Localdescriptorsforspatio-temporalrecognition.ECCV’04WorkshoponSpatialCoherenceforVisualMotionAnalysis,SpringerLectureNotesinComputerScience,Volume3667.pp.91-103、IvanLaptev,BarbaraCaputo,ChristianSchuldtandTonyLindeberg2007.Localvelocity-adaptedmotioneventsforspatio-temporalrecognition.ComputerVisionandImageUnderstanding108:207-229、Scovanner,Paul;Ali,S;Shah,M2007.A3-dimensionalsiftdescriptoranditsapplicationtoactionrecognition.Proceedingsofthe15thInternationalConferenceonMultimedia,pp.357-360、Niebles,J.C.Wang,H.andLi,Fei-Fei2006.UnsupervisedLearningofHumanActionCategoriesUsingSpatial-TemporalWords.ProceedingsoftheBritishMachineVisionConferenceBMVC.Edinburghに見ることができる。コントローラ500は、深度不連続性による穴を埋めるため、および3Dモデルの計測基準スケールを固定するために、物体12の表面の3Dマップを構築する際、撮像センサ450例えば、深度マップセンサを使用してもよい。センサ姿勢を推定するために、深度マップセンサ距離データで向上された運動からの構造化Structure-from-motionが使用されてもよい。典型的な運動からの構造化パイプラインは、視点不変特徴推定、カメラ間特徴合致、およびバンドル調整を含んでもよい。カラー/立体カメラ例えば、3Dスペックルカメラ1300、および/またはTOFカメラ1500の特徴を撮像センサ450と組み合わせるソフトウェアソリューションは、1センサ姿勢推定、2深度マップ推定、および33Dメッシュ推定を含んでもよい。センサ姿勢推定では、各画像捕捉のセンサパッケージの位置および体位が判定される。深度マップ推定では、各画像の高解像度深度マップが取得される。3Dメッシュ推定では、関心物体を識別するために、センサ姿勢の推定、および深度マップを使用することができる。いくつかの実現形態では、カラーまたは立体カメラ320図9および3Dスペックル1300または3DTOFカメラ1500が、共に登録されてもよい。1メートルの隔離距離および45度の視界452は、妥当な回路時間および視野間の重なりをもたらし得る。50パーセントの検出に少なくとも2つのピクセルが必要とされる場合、45度の視界452を有するレンズを有する、少なくとも1メガピクセル解像度のカラーカメラが、60度以上の視界452には比例してより大きい解像度のカラーカメラが使用されてもよい。深度マップセンサは、比較的低い解像度および距離精度を有する場合があるが、カラー/立体画像からのピクセルの集合に、正確な表面を確実に割り当てることができる。これは、質感の欠如による立体視覚エラーを低減することができ、また、距離を例えば5cm間隔に境界付けすることによって、視差探索距離および演算費用を低減することもできる。再び図10Aを参照すると、近隣の物体をマップするために第1の3-D画像センサ450aを使用することができ、離れた物体をマップするために第2の3-D画像センサ450bを使用することができるので、ロボットの環境のマッピングを改善して、ロボットマップを作成するために、第1および第2の3-D画像センサ450a、450bを使用することができる。図17Aおよび図17Bを参照すると、場合によっては、ロボット100は、情景10および/もしくは作業領域5内の物体12の占領マップ1700を受けとる、またはロボットコントローラ500は、撮像センサ450例えば、第2の3-D画像センサ450bから経時的に受けとられる画像データおよび/または画像深度データに基づき、占領マップ1700を生成するおよび更新してもよい。情景10例えば、ロボット100の周囲の環境内のロボット100の位置特定に加えて、ロボット100は、センサシステム400を使用して、連続空間例えば、作業領域5内の他の点に移動してもよい。ロボット100は、ロボット110の周囲の近隣領域をマップし、比較的近い物体12を判別するための短距離型の撮像センサ450a例えば、図1および図3に示されるように、胴部140の下側上に搭載されると、ロボット100の周囲の比較的より大きい領域をマップし、比較的遠い物体12を判別するための長距離型の撮像センサ450b例えば、図1および図3に示されるように、頭部160上に搭載されるとを含んでもよい。ロボット100は、情景10内の既知の物体12ならびに塞ぎ16例えば、物体12が確認されるべきであってもなくても、現在の見晴らしの利く点からはできない場所を識別するために、占領マップ1700を使用することができる。ロボット100は、塞ぎ16内の新たな物体12または任意の物体12の位置を確認するために、情景10内の塞ぎ16または新たな物体12を登録し、塞ぎ16または新たな物体12を迂回することを試みることができる。さらに、占領マップ1700を使用して、ロボット100は、情景10内の物体12の移動を判定し、追跡することができる。例えば、撮像センサ450、450a、450bは、情景10内の物体12のマップされた位置を検出しない間に、情景10内の物体12の新たな位置12 ́を検出してもよい。ロボット100は、物体12の位置を確認するために、古い物体12の位置を塞ぎ16として登録し、塞ぎ16を迂回することを試みることができる。ロボット100は、新たな画像深度データを以前の画像深度データ例えば、マップ1700と比較し、情景10内の物体12の位置の信頼レベルを割り当ててもよい。情景10内の物体12の位置信頼レベルを、閾値期間の後、タイムアウトさせる、または低下させることができる。センサシステム400は、センサシステム400の各撮像サイクルの後、各物体12の位置信頼レベルを更新することができる。いくつかの実施例では、塞ぎ検出期間例えば、10秒間未満内に検出される新たな塞ぎ16例えば、占領マップ1700に欠けている物体12は、情景10内の生きている物体12例えば、移動物体12を表してもよい。いくつかの実現形態では、情景10内の検出される第1の物体12aの背後に位置する第2の関心物体12bは、情景10内の塞ぎ16のために、最初は未検出であり得る。塞ぎ16は、容易に検出可能ではない、または撮像センサ450、450a、450bによって見ることができない、情景10内の領域であり得る。示される実施例では、ロボット100のセンサシステム400例えば、または撮像センサ450、450a、450b等のその一部分は、情景10を見るために、視野角θV0度~360度の任意の角度であることができるを有する視界452を有する。いくつかの実施例では、撮像センサ450は、360度視野角θVのために、全方向性光学素子を含み、一方、他の実施例では、撮像センサ450、450a、450bは、360度未満例えば、約45度~180度の視野角θVを有する。視野角θVが360度未満である実施例では、撮像センサ450、450a、450bまたはその構成要素は、360度の視野角θVを達成するために、ロボット本体110に対して回転してもよい。撮像センサ450、450a、450bは、水平視野角θV-Ηと同一の、または異なる、垂直視野角θVVを有してもよい。例えば、撮像センサ450、450a、450bは、少なくとも45度の水平視界θV-Ηおよび少なくとも40度の垂直視界θVVを有してもよい。いくつかの実現形態では、撮像センサ450、450a、450bまたはその部分は、ロボット本体110および/または駆動システム200に対して移動することができる。さらに、第2の物体12bを検出するために、ロボット100は、第2の物体10bの検出を可能にする、見晴らしの利く点を取得するために、撮像センサ450、450a、450bを、情景10の周囲で1つ以上の方向に駆動させることによって例えば、作業面5上で平行移動させる、および/または回転させることによって移動させてもよい。ロボット移動または撮像センサ450、450a、450bもしくはその部分の独立移動は、単眼問題も解決し得る。作業領域5内の物体12の検出される位置または追跡される移動に、信頼レベルが割り当てられてもよい。例えば、占領マップ1700を生成または更新すると、コントローラ500は、マップ1700上の各物体12に信頼レベルを割り当ててもよい。信頼レベルは、マップ1700上に示される、物体12が作業領域5内に実際に位置する確率に正比例することができる。信頼レベルは、物体12を検出するために使用されるセンサの数およびタイプ等の多数の要因によって判定され得る。例えば、接触センサ430は、ロボット100による物体12との実際の接触を感知するため、接触センサ430は、最高レベルの信頼を提供し得る。撮像センサ450は、近接センサ430より高い場合がある、異なるレベルの信頼を提供し得る。いずれか1つのセンサよりも相対的に高いレベルの信頼を提供するために、センサシステム400の2つ以上のセンサから受けとられるデータを集約または蓄積することができる。走行距離計測は、位置の経時的な変化移動距離を推定するために、アクチュエータの移動からのデータを使用するものである。いくつかの実施例では、車輪回転、したがってロボット100による移動距離を計測するために、駆動システム200上にエンコーダが配置される。コントローラ500は、物体位置の信頼レベルの評価に、走行距離計測を使用してもよい。いくつかの実現形態では、センサシステム400は、ロボット100による移動距離を感知するための走行距離計および/または角速度センサ例えば、ジャイロスコープまたはIMU470を含む。ジャイロスコープは、角運動量保存の原理に基づき、配向を計測または維持するためのデバイスである。コントローラ500は、作業領域5内および/または占領マップ1700上のロボット100の位置を判定するために、走行距離計および/または角速度センサからそれぞれ受信される走行距離計測および/またはジャイロ信号を使用してもよい。いくつかの実施例では、コントローラ500は、デッドレコニングを使用する。デッドレコニングとは、以前に判定された位置に基づき、現在の位置を推定し、既知の、または推定される速度に基づき、経過時間にわたりその位置を前進させる、一連のプロセスである。作業領域5内のロボット位置例えば、走行距離計測、ジャイロスコープ等を介して、ならびに作業領域5内の1つ以上の物体12の感知される位置センサシステム400を介してを知ることによって、コントローラ500は、占領マップ1700上および作業領域5内の物体12の位置または移動の相対的により高い信頼レベル走行距離計測またはジャイロスコープを使用しないものに対してを評価することができる。車輪運動に基づく走行距離計測は、電気的にノイズが多い可能性がある。コントローラ500は、駆動システム200の車輪ベースの走行距離計測から独立して、視覚走行距離計測を通してロボット運動を演算するために、撮像センサ450から、ロボット100の周囲の環境または情景10の画像データを受信してもよい。視覚走行距離計測は、撮像センサ450の運動を判定するために、オプティカルフローを使用することを必要とする場合がある。コントローラ500は、車輪ベースの走行距離計測におけるいかなるエラーも修正するために、撮像センサ450の撮像データに基づいて計算された運動を使用することができ、したがって、改善されたマッピングおよび運動制御を可能にする。視覚走行距離計測は、撮像センサ450が、捕捉された画像単数または複数内の特徴を追跡することができない場合、低質感または低光情景10における制限を有する場合がある。本明細書に記載されるものと組み合わせることが可能であり得る、走行距離計測および撮像システムにおける他の詳細ならびに特徴は、内容全体が参照することによって本明細書に組み込まれる、米国特許第7,158,317号被写界深度撮像システムを記載する、および米国特許第7,115,849号波面コード化界面コントラスト撮像システムを記載するに見ることができる。図18を参照すると、いくつかの実現形態では、撮像センサ450は、物体が検出されない撮像センサ450の周囲の空間体積である、撮像死角453を有する。いくつかの実施例では、撮像死角453は、撮像センサ450に直近し、撮像軸455の周囲を中心とする、それぞれ第1の角度α、第2の角度β、および半径RSによって画定される、約57°×45°×50cmの空間体積を含む。死角453は、視界452内の撮像センサ450と撮像センサ450の検出界457との間に位置付けられる。図19に示される実施例では、ロボット100は、胴部140上に配置される、第1および第2の撮像センサ450a、450b例えば、3D深度撮像センサを含む。両方の撮像センサ450a、450bは、順駆動方向Fに沿った視界452を有するように配設される。第1の撮像センサ450aは、基部120または脚部130と接触する前に物体を検出するように、その撮像軸455を実質的に下向きかつロボット100から離れるよう照準を定めるように例えば、地面および/またはロボットの下方部分の周囲上の領域を見るように配設される。第1の撮像センサ450aを下向きに角度付けることによって、ロボット100は、ロボット100の前方向への短期移動に適した、ロボット100の直前または隣接領域における隙間のないセンサ対応範囲を得る。第2の撮像センサ450bは、その撮像軸455が、順駆動方向Fに沿って実質的に地面と平行を指す状態で配設される例えば、ロボット100の中間および/または上方部分に接近する物体を検出するように。他の実施例では、第2の撮像センサ450bは、その撮像軸455が、地面の上方または地面から離れるようにさらに上向きを指す状態で配設される。撮像センサ450a、450bが死角453を有する場合、ロボット100に近接または隣接する物体を検出しない可能性が存在する。図10Aに示される実施例では、ロボット100は、首部150を介して回動および傾斜させることができる頭部160上に搭載される撮像センサ450を含む。結果として、ロボット100は、物体検出のために、他の撮像センサ450a、450bの死角453を見るように、頭部上の撮像センサ450を移動させることができ、したがって、ロボット100の周囲の完全な、または実質的に完全な視界452を提供する。頭部160上への撮像センサ450の定置が可能ではない場合、または死角453を見るように撮像センサ450を移動させることができない場合、死角453を見るために、他の技法が採用されてもよい。死角453に加えて、撮像センサ450の視界452内のいくつかの物体は、サイズ、形状、反射率、および/または色のために、検出することが困難である可能性がある。例えば、時に、高反射性または鏡面物体は、検出することが困難である可能性がある。他の実施例では、非常に暗い、または黒色の物体は、検出することが困難である可能性がある。さらに、細長い物体すなわち、非常に細い輪郭を有するは、検出することが困難である場合がある。検出が難しい物体は、複数の角度から見られる、または複数のセンサから感知される際、相対的により検出可能になる場合がある。図1、図4C、および図10Aに示される実施例では、ロボットは、基部本体120の周囲に配置され、かつ上例えば、実質的にZ方向を向くように配設され、任意選択により、Z軸から離れるように外向きに角度付けられ、したがって、ロボット100の周囲に検出カーテン412を生じる、1つ以上のソナー近接センサ410例えば、410a~410iを含む。ソナー近接センサ410は、各撮像センサ450の死角453内の物体を感知するように配設し、照準を定めることができる。いくつかの実現形態では、ロボット100は、対応する死角453を見る能力を得るために、撮像センサ450、450a、450bを移動または回動させるコントローラ500またはセンサシステム400を介して。撮像センサ450は、その関連撮像軸455を移動させることによって、任意の方向に360°/-180°向けることができる。いくつかの実施例では、ロボット100は、いったんは死角453であった空間体積の知覚を得るために、各撮像センサ450の撮像軸455および対応する視界452を移動させるように、自体を地面上で機動させる。例えば、ロボット100は、適所で枢動してもよく、ホロノミックに横方向に移動してもよく、前後に移動してもよく、またはそれらの組み合わせを行ってもよい。追加の実施例では、撮像センサ450が、限られた視界452および/または検出界457を有する場合、コントローラ500またはセンサシステム400は、相対的により広いおよび/またはより高い視界を生じさせて、強固なODOAを実施するために、撮像センサ450を左右および/または上下に走査するように作動させることができる。撮像センサ450を回動させること撮像軸455を移動させることによっては、関連する水平および/または垂直視界を増加させ、撮像センサ450が、その死角453のすべてまたは一部分だけでなく、ロボット100上の別の撮像センサ450の死角453を見ることも可能にし得る。いくつかの実施例では、各撮像センサ450は、撮像センサ450を走査運動で移動させる、関連アクチュエータ図示せずを有してもよい。追加の実施例では、撮像センサ450は、撮像センサ450の視界452および/または検出界457を増加させるように、関連回転する鏡、プリズム、可変角度マイクロミラー、またはMEMSミラーアレイを含む。図20に示される実施例では、胴部140は、脚部130上でZ軸を中心に枢動し、ロボット100が、胴部140上に配置される撮像センサ450を、基部120によって画定される順駆動方向Fに対して移動させることを可能にする。いくつかの実施例では、脚部130は、Z軸を中心に枢動し、したがって、Z軸を中心に胴部140を移動させる。いずれの実施例でも、コントローラ500と通信しているアクチュエータ138回転アクチュエータ等は、胴部140を基部120に対して回転させる例えば、胴部140を脚部130に対して回転させるか、および/または脚部130を基部120に対して回転させるかのいずれかによって。回転胴部140は、撮像センサ450を、Z軸を中心に、ロボット100の周囲の最大で360°の視界452を提供する回動運動で移動させる。ロボット100は、胴部140を順駆動方向Fに対して連続して360°または/-角度≦180°枢動させてもよい。図21を参照すると、いくつかの実現形態では、ロボット100は、各撮像センサ450と関連付けられ、かつ関連撮像センサ450の死角453内の物体を感知するように配設される、死角センサ490を含む。死角センサ490は、ソナーセンサ、カメラ、超音波センサ、LIDAR、LADAR、光学センサ、赤外線センサ等であってもよい。示される実施例では、死角センサ490は、死角453を包囲する、または実質的に包囲する視界492を有するように配設される。図22は、胴部140上に撮像センサ450に隣接して配置され、かつ死角453に延在するその視界492を有するように配設される、死角センサ490を有する、ロボット100の上面図を提供する。示される実施例では、死角視界492は、死角453内の実質的に中心にあるが、しかしながら、他の配設例えば、中心を外れたも同様に可能である。図23は、胴部140の前方部分147上に配置される、死角センサ490のアレイを有する、例となるロボット100を図示する。死角センサ490のアレイは、示される死角453だけでなく、以前はセンサの視界内ではなかったロボット100の周囲の追加の領域例えば、撮像センサ450の視界452の各側の領域の対応範囲も提供する。これは、ロボット100が、近隣の物体を、それらに向かって移動する、または曲がる前に感知することを可能にする。図24に示される実施例では、ロボット100は、ロボット100から比較的遠い例えば、3メートル超の物体12を検出するように配設および構成される、少なくとも1つの長距離センサ2190を含む。長距離センサ2190は、撮像センサ450例えば、比較的長距離の検出のために構成される光学素子またはズームレンズを有するであってもよい。追加の実施例では、長距離センサ2190は、カメラ例えば、ズームレンズを有する、レーザ距離計、LIDAR、レーダ等であってもよい。示される実施例では、ロボット100は、前方、後方、右、および左駆動方向に沿った対応する視界2192を伴って配設される、4つの長距離センサ2190を含む。他の配設も同様に可能である。遠く離れた物体の検出は、ロボット100が、障害物である、または物体が接近すると見なされる場合、目的地例えば、テレビ会議セッションを実行するために人に接近するためのであると見なされる場合に、物体を回避するように、ナビゲーションルーチンを実行することを可能にするコントローラ500を介して。ロボット100上の撮像センサ単数または複数450の視界の外の物体の認識は、コントローラ500が、検出される物体12を死角453内に定置し得る移動を回避することを可能にする。さらに、人追従ルーチンでは、人が撮像センサ450の視界の外に移動する際、長距離センサ2190が、人を検出し、ロボット100が、人を撮像センサ450の視界452内に再び知覚するように機動させることを可能にしてもよい。図25を参照すると、いくつかの実現形態では、コントローラ500は、相互と通信している制御調停システム510aと、挙動システム510bとを含む、制御システム510を実行する。制御調停システム510aは、アプリケーション520を制御システム510に動的に追加すること、およびそれから削除することを可能にし、アプリケーション520が、いずれかの他のアプリケーション520について知る必要なく、それぞれにロボット100を制御することを可能にすることを促進する。換言すれば、制御調停システム510aは、ロボット100のアプリケーション520と資源530との間での簡単な優先制御機構を提供する。資源530には、駆動システム200、センサシステム400、および/またはコントローラ500と通信している任意の搭載物もしくは制御可能なデバイスが挙げられる。アプリケーション520は、ロボット100例えば、プロセッサ上で同時に実行し、ロボット100を同時に制御するように、ロボット100のメモリ内に記憶することができる、またはそれに通信することができる。アプリケーション520は、挙動システム510bの挙動600にアクセスしてもよい。独立して配備されるアプリケーション520は、実行時に動的に、かつロボット100のロボット資源530例えば、駆動システム200、腕部単数または複数、頭部単数または複数等を共有するように組み合わせられる。アプリケーション520の間で実行時にロボット資源530を動的に共有するために、低レベルポリシーが実装される。ポリシーは、どのアプリケーション520が、そのアプリケーション520によって要求されるロボット資源530の制御を有するか例えば、アプリケーション520の間の優先順位階層を判定する。アプリケーション520は、動的に開始および停止すること、ならびに相互から完全に独立して実行することができる。また、制御システム510は、相互を支援するように共に組み合わせることができる、複雑な挙動600も可能にする。制御調停システム510aは、1つ以上の資源コントローラ540と、ロボットマネージャ550と、1つ以上の制御アービタ560とを含む。これらの構成要素は、共通プロセスまたはコンピュータ内にある必要はなく、いずれかの特定の順序で開始される必要はない。資源コントローラ540構成要素は、アプリケーション520に制御調停システム510aへのインターフェースを提供する。すべての各アプリケーション520のためのこの構成要素のインスタンスが存在する。資源コントローラ540は、認証、分散資源制御アービタ、コマンドバッファリング等の複雑性を取り除き、カプセル化する。ロボットマネージャ550は、任意の特定の時間にどのアプリケーション520がロボット資源530のいずれかの排他的制御を有するかを制御することによって、アプリケーション520の優先順位付けを協調させる。これは、情報の中枢コーディネータであるため、ロボット毎に1つのみ、ロボットマネージャ550のインスタンスが存在する。ロボットマネージャ550は、資源コントローラ540の線形に優先順位付けされた順序を有する、優先順位ポリシーを実装し、ハードウェア制御を提供する、資源制御アービタ560を追跡記録する。制御アービタ560は、すべての各アプリケーション520からコマンドを受信し、アプリケーションの優先順位に基づき、単一のコマンドを生成し、その関連資源530にそれを公開する。また、制御アービタ560は、その関連資源530から状態フィードバックも受信し、それをアプリケーション520まで返送する。ロボット資源530は、1つ以上のハードウェアコントローラを有する、機能モジュールのネットワーク例えば、アクチュエータ、駆動システム、およびそれらのグループであってもよい。制御アービタ560のコマンドは、特定の動作を実施する資源530に特定的である。現在のロボットの状態を評価するために、重心CG、慣性モーメント、およびロボット100の様々な部分の慣性の外積を演算するように、コントローラ500上で実行可能な動力学モデル570を構成することができる。また、動力学モデル570は、これらの構成要素の形状、重量、および/または慣性モーメントもモデル化してもよい。いくつかの実施例では、動力学モデル570は、ロボット100の様々な重心を計算するために、ロボット100上に配置され、かつコントローラ500と通信している、1つ例えば、加速度計および/またはジャイロの慣性モーメントユニット470IMUまたはその部分と通信する。コントローラ500は、ロボット100およびその構成要素の動作限界を判定するために、他のプログラム520または挙動600と共に、動力学モデル570を使用することができる。各アプリケーション520は、動作選択エンジン580と、資源コントローラ540と、動作選択エンジン580に接続される1つ以上の挙動600と、動作選択エンジン580に接続される1つ以上の動作モデル590とを有する。挙動システム510bは、予測モデル化を提供し、挙動600が、ロボット動作の見込まれる結果を評価することによって、ロボットの動作を協働して決定することを可能にする。いくつかの実施例では、挙動600は、複数の源からのセンサフィードバックを、先験的限界および情報と共に、ロボットの許容動作における評価フィードバックに連結する、階層的状態完全評価機能を提供する、プラグイン構成要素である。挙動600は、アプリケーション520にプラグイン可能である例えば、アプリケーション520の中または外にあるため、アプリケーション520または制御システム510のいずれかの他の部分を修正することなく、削除および追加することができる。各挙動600は、独立したポリシーである。挙動600をより強力にするために、複雑な組み合わせ機能を有することができるように、複数の挙動600の出力を共に別の入力に添付することが可能である。挙動600は、ロボット100の総合的認識の管理可能な部分を実現することが意図される。動作選択エンジン580は、制御システム510の協調要素であり、すべての挙動600の入力を考慮して、最適な動作を検索する、高速最適動作選択サイクル予測/修正サイクルを実行する。動作選択エンジン580は、3つの段階、すなわち指名、動作選択検索、および完了を有する。指名段階では、各挙動600は、動作選択サイクルが開始されたことを通知され、サイクル開始時間、現在の状態、およびロボットアクチュエータ空間の限界を提供される。内部ポリシーまたは外部入力に基づき、各挙動600は、この動作選択サイクルに関与することを望むか否かを決定する。この段階中、能動的挙動プリミティブのリストが生成され、この入力は、ロボット100上で実行されるコマンドの選択に影響を及ぼす。動作選択検索段階では、動作選択エンジン580は、また、動作空間とも称される、利用可能な動作の空間から、実現可能な結果を生成する。動作選択エンジン580は、実現可能なコマンド限界内のプール、および将来の対象期間の異なる時間ステップでの各コマンドの動作をシミュレーションした結果としての対応する結果を提供するために、動作モデル590を使用する。動作選択エンジン580は、挙動600の結果評価に基づき、好ましい結果を計算し、制御調停システム510aに対応するコマンドを送信し、フィードバックとして選択されるコマンドの動作モデル590を通知する。完了段階では、協働最高スコア結果に対応するコマンドが、ロボット資源530上での実行のために資源コントローラ540に提示される全般コマンドとして、共に組み合わせられる。将来の評価サイクルで使用されるフィードバックとして、能動的挙動600に最適結果が提供される。センサシステム400から受信されるセンサ信号は、動作を実行するために、1つ以上の挙動600との対話を生じさせることができる。例えば、制御システム510を使用して、コントローラ500は、それ自体およびロボット100が認知しているロボット100の周囲のいずれかの物体との衝突を回避する、各ロボット構成要素の調整された移動を効率的に達成するように、各ロボット構成要素例えば、モータまたはアクチュエータの動作または移動コマンドを、対応する動作空間例えば、その特定の要素の構成要素の可能な動作または移動の集合から選択する。コントローラ500は、イーサIOネットワーク等のロボットネットワーク上で、調整されたコマンドを発行することができる。制御システム510は、ロボット100が領域の周囲を機動する際、異なる構成/位置でのロボット100の安定性を最大限にするために、駆動システム200の適応速度/加速を提供してもよい例えば、1つ以上の挙動600を介して。いくつかの実現形態では、コントローラ500は、進行方向設定および速度設定に従って、ロボット100を推進する駆動システム200にコマンドを発行する。1つ以上の挙動600は、障害物に対処するために、1つが実行するよう選択され得る単独で、または全般ロボットコマンドとして他のコマンドとの組み合わせで、実現可能なコマンドの予測結果を評価するために、センサシステム400から受信される信号を使用してもよい。例えば、近接センサ410からの信号は、制御システム510に、ロボット100のコマンドされる速度または進行方向を変更させてもよい。例えば、近隣の壁による近接センサ410からの信号は、制御システム510が減速させるコマンドを発行するという結果をもたらし得る。別の場合では、椅子との遭遇による接触センサ単数または複数からの衝突信号は、制御システム510に、進行方向を変更するコマンドを発行させてもよい。他の場合では、接触センサに応えて、ロボット100の速度設定が低減されなくてもよい、および/または近接センサ410に応えて、ロボット100の進行方向設定が変化されなくてもよい。挙動システム510bは、占領マップ1700を生成するためのマッピング挙動600aと、物体検出障害物回避ODOA挙動600bと、ロボット100の速度設定を調節するように構成される速度挙動600c例えば、プロセッサ上で実行可能な挙動ルーチンと、ロボット100の進行方向設定を変化させるように構成される進行方向挙動600dとを含んでもよい。速度および進行方向挙動600c、600dは、同時に、かつ互いに独立して実行するように構成されてもよい。例えば、速度挙動600cは、センサ例えば、一式単数または複数の近接センサ410、420のうちの1つをポーリングするように構成されてもよく、進行方向挙動600dは、別のセンサ例えば、動態隆起センサをポーリングするように構成されてもよい。図25および図26A~図26Dを参照すると、いくつかの実現形態では、ロボット100は、目的地位置にナビゲートするために、その局所知覚空間2100すなわち、センサシステム400を通して把握されるロボット100の周囲の空間を判別するその能力に依存し、物体検出障害物回避ODOA戦略を実行してもよい。センサシステム400は、ロボット100に隣接する空間体積から点群を取得することができるようにロボット100上に位置付けられる、体積点群撮像デバイス450によって提供される3次元深度画像データを含む、センサデータを提供してもよい。例えば、体積点群撮像デバイス450は、ロボット100上の地面の上方の2フィート約61cmを超える高さに位置付けられ、ロボットの移動方向100の床面Gを含む空間体積から点群を取得することができるように方向付けられてもよい。ロボット100例えば、図25に示される制御システム510は、その局所知覚空間2100を3つのカテゴリ、すなわち障害物黒色2102、未知灰色2104、および既知の空き白色2106に分類してもよい。障害物2102は、ロボット100の高さより低い地面Gの上方の観測すなわち、感知点、および地面Gより低い観測点例えば、穴、段下り等である。既知の空き2106は、3-D画像センサ450が地面Gを見ることができる領域に対応する。センサシステム400内のいくつかまたはすべてのセンサからのデータを、離散化3-Dボクセルグリッドに組み合わせることができる。次いで、3-Dグリッドを解析し、3つの局所知覚空間分類を伴う2-Dグリッド2101に変換することができる。図26Aは、ロボット100の静止している間の局所知覚空間2100の例となる概略図を提供する。3-Dボクセルグリッド内の情報は、持続性を有するが、補強されない例えば、新しいセンサデータによって場合、経時的に劣化する。ロボット100が移動している際、持続性のため、ナビゲートするより多くの既知の空き領域2106を有する。環境内の一時的な、またはわずかにより古い物体例えば、歩いている人、センサアーチファクト等が局所経路計画に使用されないように、3-D撮像センサ450の体積点群データは、数ミリ秒から数秒等の閾値期間の後にタイムアウトしてもよい。3-D撮像センサ450が、死角453図20~図24を有し、ロボット100が、全体が死角453図26A内の非一時的な物体12のすぐ隣で自体を機動させる際、制御システム510は、その非一時的な物体12と関連付けられるセンサデータをタイムアウトさせ、したがって、もはや物体12をナビゲーション目的の障害物2102として認識しなくてもよい。死角センサ単数または複数490等のセンサシステム400の他のセンサが、物体12を検出することが可能であり得るが、制御システム510は、死角453内のその物体12と関連付けられるセンサデータのデータタイムアウトを一時中断する、ODOA戦略を実行してもよい。例えば、制御システム510は、障害物2102が、死角453またはロボット100に直接近接する領域内にあると把握される際、通常は閾値期間の後にタイムアウトする、局所知覚2100内の障害物2102例えば、物体12と関連付けられるセンサデータのデータタイムアウトを一時中断してもよい。制御システム510は、1つ以上の死角センサ490またはセンサシステム400の他のセンサ単数または複数を近場センサとして使用して、死角453内の障害物2102に対応する物体12の存在を判定してもよい。制御システム510は、ロボット100が、その位置から離れるように移動した後、および/または死角センサ単数または複数490が、物体12が死角453の外へ移動したことを検出した後にのみ、この場合も同様に、その物体12と関連付けられるセンサデータを劣化またはタイムアウトさせてもよい。これは、制御システム510が、障害物がロボット100の死角453内にある可能性を考慮する、物体検出障害物回避ODOAナビゲーション戦略を実行することを可能にする。制御システム510の物体検出障害物回避ODOAナビゲーション戦略は、コマンドから結果としてもたらされ得る可能性のあるロボット位置を承認または拒否することを含んでもよい。異なるコマンドの多くのレベルの深さの可能性のあるロボット経路2110を生成し、各レベルでのロボット位置をもたらすことができる。図26Bは、ロボット100の移動している間の局所知覚空間2100の例となる概略図を提供する。ODOA挙動600b図25は、各予測ロボット経路2110を評価することができる。好ましい結果および対応するロボットコマンドを判定するために、動作選択エンジン580によって、これらの評価を使用することができる。例えば、ロボット経路2110内の各ロボット位置2120について、ODOA挙動600bは、ロボット100の対応する位置2120の周囲の境界形状2107例えば、衝突四角形、三角形、または円形内のグリッド2101内の各セル2103を識別することと、各セル2103の分類を受信することとを含む、物体検出および障害物回避のための方法を実行することができる。障害物2102または未知2104に分類される各セル2103について、セル2103に対応するグリッド点2105を取り出し、グリッド点2105がロボット100の位置2120の周囲の境界形状2107例えば、衝突円形内であるか否かを判定することによって、衝突チェックを実行する。グリッド点2105が境界形状2107内である場合、本方法は、グリッド点2105が、三角形に形状化される境界形状2107例えば、ロボット100を三角形にモデル化することができる内であるか否かの3点比較試験を実行することをさらに含む。グリッド点2105が衝突三角形2107内である場合、本方法は、グリッド点2105を拒否することを含む。ロボット位置2120が、ロボット経路2110上の親グリッド点2105のセンサシステム視界405の内側である場合、未知グリッド点2105は、ロボット100がこれらのグリッド点2105に到達する時までに、それらが既知であると想定されるため、無視される。本方法は、あるロボット位置2120から次のロボット位置への移行中にロボットが衝突するのを防止するために、ロボット経路2110内の連続ロボット位置2120の間のロボット経路領域例えば、長方形によってモデル化される内に、いずれかの障害物衝突が存在するか否かを判定することを含んでもよい。図26Cは、ロボット100の局所知覚空間2100およびセンサシステム視界405制御システム510は、ロボット経路判定に、第1および第2の3-D画像センサ450a、450b等の特定のセンサのみを使用してもよいの概略図を提供する。駆動システム200のホロノミック可動性を利用して、ロボット100は、センサシステム視界405が能動的に対応範囲としない方向に駆動することを可能にするために、既知の地面Gの持続性を使用することができる。例えば、ロボット100が、第1および第2の3-D画像センサ450a、450bが前方を指す状態で、静止して座っている場合、ロボット100は、側方向に駆動することができるが、ロボット100の側方に未知に分類される領域を示す図26Cに示される実施例に図示されるように、ロボット100がその側方に何があるかを知らないため、制御システム510は、提案される移動を拒否する。ロボット100が、第1および第2の3-D画像センサ450a、450bが前方を指す状態で、前方に駆動する場合、ロボット100が前方に駆動する際、第1および第2の3-D画像センサ450a、450bの両方が、地面Gを空きと見ることができ、分類の持続性は依然として劣化されていないため、ロボット100の隣の地面Gが、既知の空き2106に分類されてもよい例えば、図26B参照。そのような状況では、ロボット100は、側方向に駆動することができる。図26Dを参照すると、いくつかの実施例では、ホロノミック可動性による、大きい数の可能な軌跡を考慮して、ODOA挙動600bは、ロボットに、ロボットが向かっている場所でロボットが見る現在ではないが軌跡を選択させてもよい。例えば、ロボット100は、センサ視界配向を予期することができ、これは、制御システム510が、物体を検出することを可能にする。ロボットは、平行移動しながら回転することができるため、ロボットは、駆動しながらセンサ視界405を増加させることができる。本明細書に記載されるシステムおよび技法の様々な実現形態を、デジタル電子回路、集積回路、専用に設計されたASIC特定用途向け集積回路、コンピュータハードウェア、ファームウェア、ソフトウェア、および/またはそれらの組み合わせで実現することができる。これらの様々な実現形態には、記憶システムからデータおよび命令を受信するように、ならびにそれにデータおよび命令を伝送するように連結される、専用であっても汎用であってもよい、少なくとも1つのプログラマブルプロセッサと、少なくとも1つの入力デバイスと、少なくとも1つの出力デバイスとを含む、プログラム可能なシステム上で実行可能な、および/または解釈可能な1つ以上のコンピュータプログラムでの実現形態を含むことができる。これらのコンピュータプログラムまた、プログラム、ソフトウェア、ソフトウェアアプリケーション、またはコードとしても知られるは、プログラム可能プロセッサのための機械命令を含み、高水準手続きおよび/もしくはオブジェクト指向プログラミング言語、ならびに/またはアセンブリ/機械言語で実現することができる。本明細書で使用される場合、機械可読媒体およびコンピュータ可読媒体という用語は、機械命令を機械可読信号として受信する機械可読媒体を含む、プログラマブルプロセッサに機械命令および/もしくはデータを提供するために使用される、任意のコンピュータプログラム製品、装置、ならびに/またはデバイス例えば、磁気ディスク、光学ディスク、メモリ、プログラマブル論理デバイスPLDを指す。機械可読信号という用語は、プログラマブルプロセッサに機械命令および/またはデータを提供するために使用される、任意の信号を指す。本明細書に記載される主題の実現形態および機能動作は、デジタル電子回路、または本明細書に開示される構造およびそれらの構造的均等物を含む、コンピュータソフトウェア、ファームウェア、もしくはハードウェア、あるいはそれらのうちの1つ以上の組み合わせで実現することができる。本明細書に記載される主題の実施形態は、データ処理装置による実行のための、またはその動作を制御する、1つ以上のコンピュータプログラム製品、すなわち、コンピュータ可読媒体上にコード化されるコンピュータプログラム命令の1つ以上のモジュールとして実現することができる。コンピュータ可読媒体は、機械可読記憶デバイス、機械可読記憶回路基板、メモリデバイス、機械可読伝搬信号に影響を及ぼす組成物、またはそれらのうちの1つ以上の組み合わせであることができる。データ処理装置という用語は、一例として、プログラマブルプロセッサ、コンピュータ、または複数のプロセッサもしくはコンピュータを含む、データを処理するためのすべての装置、デバイス、および機械を包含する。装置は、ハードウェアに加えて、問題のコンピュータプログラムの実行環境を作り出すコード、例えば、プロセッサファームウェア、プロトコルスタック、データベース管理システム、オペレーティングシステム、またはそれらのうちの1つ以上の組み合わせを構築するコードを含むことができる。伝搬信号は、好適な受信装置に伝送するために、情報をコード化するように生成される、人工的に生成される信号、例えば、機械生成電気、光学、または電磁信号である。コンピュータプログラムまた、プログラム、ソフトウェア、ソフトウェアアプリケーション、スクリプト、またはコードとしても知られるは、コンパイルされる、または解釈される言語を含む、任意の形態のプログラミング言語で書くことができ、単独プログラムとして、またはモジュール、構成要素、サブルーチン、もしくはコンピューティング環境で使用するのに好適な他のユニットとしての配備を含む、任意の形態で配備することができる。コンピュータプログラムは、必ずしもファイルシステム内のファイルに対応する必要はない。プログラムは、問題のプログラム専用の単一のファイル内の他のプログラムもしくはデータ例えば、マークアップ言語文書で記憶される1つ以上のスクリプトを保持するファイルの一部分に、または複数の調整されたファイル例えば、1つ以上のモジュール、サブプログラム、またはコードの部分を記憶するファイルに記憶することができる。コンピュータプログラムは、1台のコンピュータ上で、または1つの場所に位置する、もしくは複数の場所にわたって分散され、通信ネットワークによって相互接続される、複数のコンピュータ上で実行されるように配備することができる。本明細書に記載されるプロセスおよび論理フローは、入力データに対して動作し、出力を生成することによって機能を実施する、1つ以上のコンピュータプログラムを実行する、1つ以上のプログラマブルプロセッサによって実施することができる。また、プロセスおよび論理フローは、専用論理回路、例えば、FPGAまたはASICによって実施することもでき、また、装置は、それらとして実現することもできる。コンピュータプログラムの実行に好適なプロセッサには、一例として、汎用および専用マイクロプロセッサの両方、および任意の種類のデジタルコンピュータの任意の1つ以上のプロセッサが挙げられる。一般的に、プロセッサは、読み出し専用メモリもしくはランダムアクセスメモリ、または両方から命令およびデータを受けとる。コンピュータの不可欠な要素は、命令を実施するためのプロセッサ、ならびに命令およびデータを記憶するための1つ以上のメモリデバイスである。一般的に、また、コンピュータは、データを記憶するための1つ以上の大容量記憶デバイス、例えば、磁気、光磁気ディスク、もしくは光学ディスクも含む、またはそれからデータを受けとるため、もしくはそれにデータを転送するため、または両方のために、それに動作可能に連結される。しかしながら、コンピュータは、そのようなデバイスを有する必要はない。さらに、コンピュータは、別のデバイス、例えば、ごくわずかな例を挙げると、携帯電話、個人用デジタル補助装置PDA、携帯型オーディオプレーヤー、グローバルポジショニングシステムGPS受信器に埋め込むことができる。コンピュータプログラム命令およびデータを記憶するのに好適なコンピュータ可読媒体には、一例として、半導体メモリデバイス、例えば、EPROM、EEPROM、およびフラッシュメモリデバイス、磁気ディスク、例えば、内蔵ハードディスクもしくはリムーバブルディスク、光磁気ディスク、ならびにCDROMおよびDVD-ROMディスクを含む、すべての形態の不揮発性メモリ、媒体、およびメモリデバイスが挙げられる。プロセッサおよびメモリは、専用論理回路によって補完することができる、またはそれに組み込むことができる。本明細書に記載される主題の実現形態は、例えば、データサーバとしてバックエンド構成要素を含む、ミドルウェア構成要素、例えば、アプリケーションサーバを含む、フロントエンド構成要素、例えば、ユーザがそれを通して本明細書に記載される主題の実現形態と相互作用することができる、グラフィカルユーザインターフェースもしくはウェブブラウザを有する、クライアントコンピュータを含む、コンピューティングシステム、または1つ以上のそのようなバックエンド、ミドルウェア、もしくはフロントエンド構成要素の任意の組み合わせで実現することができる。システムの構成要素は、任意の形態またはデジタルデータ通信の媒体、例えば、通信ネットワークによって相互接続することができる。通信ネットワークの例には、ローカルエリアネットワークLAN、および広域ネットワークWAN、例えば、インターネットが挙げられる。コンピューティングシステムは、クライアントおよびサーバを含むことができる。クライアントおよびサーバは、一般的に、相互から遠隔にあり、典型的に、通信ネットワークを通してやり取りする。クライアントおよびサーバの関係は、それぞれのコンピュータ上で実行され、相互にクライアント-サーバ関係を有する、コンピュータプログラムによって生じる。本明細書は、多くの詳細を含むが、これらは、本発明またはその主張され得る範囲を限定すると解釈されるべきではなく、むしろ、本発明の特定の実現形態に特定の特徴の説明として解釈されるべきである。また、本明細書の別個の実現形態の文脈において記載される特定の特徴は、単一の実現形態において、組み合わせて実現することもできる。逆に、また、単一の実現形態の文脈に記載される様々な特徴は、複数の実現形態において別々に、または任意の好適な副組み合わせで実現することもできる。さらに、特徴は、特定の組み合わせで作用するように上記され、さらには最初にそのように主張されている場合があるが、場合によっては、主張される組み合わせの1つ以上の特徴を組み合わせから切り取ることができ、主張される組み合わせは、副組み合わせ、または副組み合わせの変形を対象としてもよい。同様に、動作は、特定の順序で図面に描写されているが、これは、望ましい結果を達成するために、そのような動作が、示される特定の順序で、もしくは起こる順序で実施されること、またはすべての図示される動作が実施されることを要求すると理解されるべきではない。ある特定の状況では、マルチタスクおよび並列処理が有利である場合がある。さらに、上述される実施形態における様々なシステム構成要素の分離は、すべての実施形態において、そのような分離を要求すると理解されるべきではなく、記載されるプログラム構成要素およびシステムは、一般に、単一のソフトウェア製品に共に統合することができる、または複数のソフトウェア製品にパッケージ化することができることが理解されるべきである。多数の実現形態が記載されてきた。しかしながら、本開示の趣旨および範囲から逸脱することなく、様々な修正が行われてもよいことが理解される。したがって、他の実現形態が、続く特許請求の範囲の範囲内である。例えば、特許請求の範囲に言及される動作を、異なる順序で実施し、依然として望ましい結果を達成することができる。"