(57)【要約】【課題】  駆動車輪が階段などの崖部に落ちることを避けるため、ロボットが崖部のへりの上を進む時を検出することが可能な自律型ロボットを提供することを目的とする。【解決手段】  自律型ロボットであって、筐体と、右駆動車輪および左駆動車輪を含む駆動システムと、駆動システムを制御するコントローラと、清掃表面を清掃するための清掃部と、ロボットの前方部分の底面に対向する崖に反応して信号を生成する、右前方クリフセンサおよび左前方クリフセンサと、ロボットの後方部分の底面に対向する崖に反応して信号を生成する、右後方クリフセンサおよび左後方クリフセンサと、を備え、コントローラは、各クリフセンサが生成する信号に応じて、自律型ロボットの進行方向を変更する構成とした。【選択図】  図４
2014111190.tif 000002
【特許請求の範囲】
【請求項１】
自律型ロボットであって、
筐体と、
該自律型ロボットを清掃表面上で動かすための右駆動車輪および左駆動車輪を含む駆動システムと、
前記駆動システムを制御するコントローラと、
前記清掃表面を清掃するための清掃部と、
前記筐体の前方部分であって、前記清掃表面と対向する前記ロボットの底面にそれぞれ配置され、前記自律型ロボットの前記前方部分の底面に対向する崖に反応して信号を生成する、右前方クリフセンサおよび左前方クリフセンサと、
前記筐体の後方部分であって、前記清掃表面と対向する前記ロボットの底面にそれぞれ配置され、前記自律型ロボットの前記後方部分の底面に対向する崖に反応して信号を生成する、右後方クリフセンサおよび左後方クリフセンサと、
を備え、
前記コントローラは、前記右前方クリフセンサ、前記左前方クリフセンサ、前記右後方クリフセンサ、前記左後方クリフセンサの各々が生成する信号に応じて、前記自律型ロボットの進行方向を変更することを特徴とする、自律型ロボット。
【請求項２】
前記右後方クリフセンサおよび左後方クリフセンサは、前記駆動システムの後方に配置される、請求項１に記載の自律型ロボット。
【請求項３】
前記自律型ロボットの進行方向は、前記右前方クリフセンサおよび左前方クリフセンサ、ならびに前記右後方クリフセンサおよび左後方クリフセンサのどれが反応したかに基づいて決定される、請求項１または２に記載の自律型ロボット。
【請求項４】
前記コントローラは、後方崖回避行動および前方崖回避行動を実行するものであり、
前記後方崖回避行動においては、前記右前方クリフセンサおよび左前方クリフセンサ、並びに前記右後方クリフセンサおよび左後方クリフセンサが用いられ、
前記前方崖回避行動においては、前記右前方クリフセンサおよび左前方クリフセンサが用いられ、前記右後方クリフセンサおよび左後方クリフセンサは用いられない、請求項１から３のいずれか一項に記載の自律型ロボット。
【請求項５】
前記後方崖回避行動は、前記前方崖回避行動より優先される、請求項４に記載の自律型ロボット。
【請求項６】
前記コントローラと連通する加速度計をさらに備え、
前記コントローラは、前記加速度計から、急な速度の変化を示す信号を受信した場合に、前記自律型ロボットの進行方向を変更する、請求項１から５のいずれか一項に記載の自律型ロボット。
【請求項７】
前記コントローラは、前記加速度計から受信した信号が前記自律型ロボットの静止状態を示すものである場合に、前記自律型ロボットの進行方向を変更する、請求項６に記載の自律型ロボット。
【請求項８】
前記コントローラは、前記加速度計から受信した信号が所定の閾値以上を示す場合に、前記自律型ロボットの走行速度を落とす、請求項６または７に記載の自律型ロボット。
【請求項９】
前記所定の閾値は、前記自律型ロボットの最高速度である約２００ｍｍ／ｓから約４００ｍｍ／ｓの間である、請求項８に記載の自律型ロボット。
【請求項１０】
前記コントローラと連通し、複数の方向における衝突を検出するよう構成される衝突センサをさらに備え、
前記コントローラは、前記衝突センサから受信した信号に応じて、前記自律型ロボットの進行方向を変更する、請求項１から９のいずれか一項に記載の自律型ロボット。
【請求項１１】
前記右駆動車輪および左駆動車輪の間に配置される電源をさらに備える、請求項１から１０のいずれか一項に記載の自律型ロボット。
【請求項１２】
前記自律型ロボットの側面に配置され、前記自律型ロボットの近くの障害物に反応して信号を生成する近接センサをさらに備え、
前記コントローラは、前記近接センサが生成する信号に応じて、前記自律型ロボットの進行方向を変更する、請求項１から１１のいずれか一項に記載の自律型ロボット。
【発明の詳細な説明】
【技術分野】
【０００１】
本明細書の開示は、床またはその他の表面を清掃するための自律型カバレッジロボットに関する。
【背景技術】
【０００２】
本米国特許出願は、米国特許法第１１９条（ｅ）に基づく２００７年５月１７日出願の米国仮出願６０／９３８，６９９、及び、２００７年５月９日出願の米国仮出願６０／９１７０６５に対する優先権を主張する。これらの先行する出願の開示は、本出願の開示の一部分とみなされ、参照によりそれらの全ての内容が本明細書に組み込まれるものとする。
【０００３】
米国の特許出願公開２００３／０１９２１４４、２００６／２００２８１、及び２００７／００１６３２８、及び、さらに米国特許６，７４８，２９７及び６，８８３，２０１は参照によりそれらの全ての内容が本明細書に組み込まれるものとする。
【０００４】
自律型ロボットは、構造化されていない環境において、人間による連続した誘導なしで所望の作業を実行できるロボットである。多くの種類のロボットは、ある程度自律型である。異なるロボットは、異なる方式において自律型となりえる。自律型カバレッジロボットは、１つまたはそれ以上の作業を実行するための人間による連続した誘導なしで、作業表面をあちこち移動する。家庭、オフィスおよび／または消費者志向のロボット工学の分野において、真空掃除、床の洗浄、パトロール、芝刈りおよびその他の作業といった、家事の役割を果たす移動ロボットが広く採用されてきている。
【０００５】
床を清掃する移動ロボットは、例えば、ジョーンズその他による（「ジョーンズ」）米国特許番号６,８８３,２０１に記載されており、これには、床をあちこち移動しつつ、ローラブラシ、電気掃除機、またはその他の洗浄機構を利用してごみを除去する自律型床洗浄ロボットが開示されている。ジョーンズは、３つの車輪で支持された概して円形の形状の要素を持つロボットで、特に障害物の周りを移動するために、自由に回転できるものを開示している。
【発明の概要】
【発明が解決しようとする課題】
【０００６】
以下に開示されるのは、床、調理台、並びに、タイル、硬材、またはじゅうたんを敷いた床といった、その他の関連する表面を清掃するための小型移動ロボットである。このロボットは、壁のへりに沿って、または、壁の隅部において清掃することを容易にする、長方形の前方の形状の要素を持つ。１つの例において、ロボットは、円形の部分と長方形の部分の両方を含み、その長方形の部分内の清掃機構は、その長方形の部分の反対側の両方の角に隣接して配置される。その長所として、ロボットは、その清掃機構が壁の隅部または壁のへりに及ぶことによって、その長方形の部分が壁の隅部または壁のへりに接するように、動くことができる。
【課題を解決するための手段】
【０００７】
１つの態様において、自律型カバレッジロボットは、前方部分と後方部分を含む筐体と、筐体によって保持される駆動システムを含む。筐体の前方部分は、実質的に長方形の輪郭を示す。ロボットは、筐体の前方部分に搭載された清掃部と、清掃部に隣接して配置されたごみ容器を含む。ごみ容器は、清掃部によって攪拌されたごみを受け取るように構成されている。ごみ容器の蓋は、前記筐体の下位部に枢動可能に取り付けられ、ごみ容器によって定められる開口部の閉鎖を規定する第一の閉じた位置と、ごみ容器の開口部の利用を可能とする第二の開いた位置との間を回転するように構成されている。ロボットは、筐体に取り付けられた本体と、本体の上部に配置された取っ手を含む。ごみ容器の蓋の解除装置は、ごみ容器の蓋の、その第一及び第二の位置の間での動きを制御するように構成されている。ごみ容器の蓋の解除装置は、実質的に取っ手の近くで作動可能とされている。
【０００８】
本開示の本態様の実施は、以下の特徴の１つまたはそれ以上を含んでもよい。いくつかの実施において、ごみ容器の蓋の解除装置は、ごみ容器の蓋をその第一の閉じた位置に固定する第一の固定位置と、ごみ容器の蓋が第二の開いた位置に移動することを可能にする第二の開放された位置との間を動くように構成される。ごみ容器の蓋の解除装置は、ばね式の外れ止めとすることができる。いくつかの例において、ごみ容器の蓋の解除装置は、取っ手に配置され、解除装置を作動させるように構成され、その結果取っ手を握りながらごみ容器の蓋の作動を可能にするように構成されたボタンを含む。いくつかの実施において、駆動システムは、右及び左の作動駆動される駆動車輪で、筐体の後方部分に回転可能に搭載されたものを含む。駆動システムは、その場で旋回するように、ロボットを動かすことができる。
【０００９】
別の態様において、自律型カバレッジロボットは、前方部分と後方部分を持つ筐体と、筐体の後方部分によって保持される駆動システムを含む。駆動システムは、清掃表面上でロボットを動かすために構成されている。ロボットは、駆動システムと通信するコントローラを含む。コントローラは、ロボットがその場で旋回するように、動かすよう構成されている。ロボットは、筐体の前方部分に搭載された清掃部を含む。ロボットは、コントローラと通信する、複数の方向の動きを検出する衝突センサを含む。本体は、筐体に柔軟に取り付けられ、実質的に筐体を覆う。本体との接触は、検出のため、衝突センサに平行に伝達される。コントローラは、衝突センサから受信した信号に応じて、駆動方向を変更するように構成されている。衝突センサは、センサ基板と、センサ基板に隣接して置かれ、本体に結合されたセンサの覆いと、センサの覆いに格納されたエミッタ、及び、センサ基板に保持された少なくとも３つの検出器を含む。エミッタは、センサ基板に信号を放射し、検出器は、放射された信号を検出するように構成されている。センサの覆いの動きは、検出器の上での放射された信号の動きを引き起こす。いくつかの実施において、ロボットは、清掃部に隣接して配置され、清掃部によって攪拌されたごみを受け取るように構成されたごみ容器を含む。
【００１０】
本開示の本態様の実施は、以下の特徴の１つまたはそれ以上を含んでもよい。いくつかの実施において、衝突センサは、本体の、衝突センサ周りの、３６０°の動きを検出する。衝突センサは、お互いに対して長方形状に配置された４つの検出器を含むことが好ましい。センサの覆いは、それを通してエミッタがセンサ基板の上にその信号を放射する開口部を定める。エミッタは、赤外線エミッタを含み、検出器は赤外線検出器を含み、開口部は、センサ基板上に放射された信号の照準を合わせる。いくつかの例において、ロボットは、本体の移動を２つの方向に沿って制限する衝突ガイドを含む。衝突ガイドは、本体によって定められ、かつ、筺体に配置されたガイドピンを受けるように構成された２つの直交する溝を含む。いくつかの例において、前方部分は、実質的に長方形の輪郭を示す。いくつかの実施において、駆動システムは、対応する右及び左のモータで別々に駆動される、右及び左の駆動車輪を含む。
【００１１】
更に別の態様において、自律型カバレッジロボットは、前方部分と後方部分を持つ筐体と、筐体の後方部分によって保持された駆動システムを含む。前方部分は、実質的に長方形の輪郭を示し、後方部分は、弓形の形状の輪郭を示す。駆動システムは、清掃表面上でロボットを動かすために構成され、対応する右及び左のモータによって別々に駆動される、右及び左の駆動車輪を含む。ロボットは、駆動システムと通信するコントローラを含む。コントローラは、その場で旋回するようにロボットを動かすために構成されている。ロボットは、筐体の前方部分に搭載された清掃部を含む。ロボットは、コントローラと通信する加速度計を含み、コントローラは、加速度計から受信した信号に応じて、駆動システムを制御する。いくつかの実施において、ロボットは、清掃部に隣接して配置され、清掃部によって攪拌されたごみを受け取るように構成されたごみ容器を含む。
【００１２】
本開示の本態様の実施は、以下の特徴の１つまたはそれ以上を含んでもよい。いくつかの実施において、前記コントローラは、急な速度の変化を示す、加速度計から受信した信号に応じて、ロボットの進行方向を変更する。コントローラは、ロボットの静止状態を示す、加速度計から受信した信号に応じて、ロボットの進行方向を変更する。コントローラは、最高速度を示す、加速度計から受信した信号に応じて、ロボットの走行速度を落とす。いくつかの例において、最高速度は約２００ｍｍ／ｓから約４００ｍｍ／ｓの間となる。
【００１３】
本開示の上記態様の実施は、以下の特徴の１つまたはそれ以上を含んでもよい。いくつかの実施において、清掃部は、筐体の前方エッジの実質的近くに回転可能に搭載された第一のローラブラシを含む。清掃部は、第一のローラブラシに実質的に平行に及びその後方に、回転可能に搭載された第二のローラブラシを含んでもよく、第一と第二のローラブラシは、反対向きに回転する。ごみ容器は、第一及び第二ローラブラシの後方で、かつ、駆動システムの前方に配置される。各ローラブラシは、ローラブラシの各末端から前記筺体の側面の広がりを越えて延びる右及び左末端ブラシを含み、各末端ブラシは、ローラブラシによって定められる長手方向の軸と、０°から９０°の間の角度φをなして延びる。いくつかの実施において、清掃部は、実質的に筺体の前方エッジの近くに回転可能に搭載された前方ローラブラシと、実質的に筐体の右及び左側面のエッジそれぞれの近くに、前方ブラシに直交して回転可能に搭載された、右及び左側面ローラブラシと、を含む。ごみ容器は、前方ローラブラシの後方、かつ、実質的に右及び左のローラブラシの間かつ駆動システムの前方に配置される。
【００１４】
別の態様において、自律型カバレッジロボットは、前方部分と後方部分を持つ筐体と、筐体の後方部分によって保持された駆動システムを含む。前方部分は、実質的に長方形の輪郭を示し、後方部分は、弓形の形状の輪郭を示す。駆動システムは、清掃表面上でロボットを動かすために構成され、対応する右及び左モータによって、別々に駆動される右及び左駆動車輪を含む。ロボットは、駆動システムと連通するコントローラを含む。コントローラは、その場で旋回するようにロボットを動かすために構成されている。ロボットは、筺体の前方部分に搭載され、筺体の前方エッジの実質的近くに回転可能に搭載された第一のローラブラシと、第一のローラブラシに実質的に平行かつ後方に回転可能に搭載された第二のローラブラシとを含む清掃部を含む。第一と第二のローラブラシは反対方向に回転する。ごみ容器は、清掃部の後方に配置され、清掃部によって攪拌されたごみを受け取るように構成されている。ごみ容器の蓋は、筺体の下部に枢動可能に取り付けられ、ごみ容器により定められる開口部の閉鎖を規定する第一の閉じた位置と、ごみ容器の開口部の利用を可能とする第二の開いた位置との間を回転するように構成されている。ロボットは、ごみ容器の蓋の第一と第二の位置の間の動きを制御するように構成されたごみ容器の蓋の解除装置を含む。取っ手は筐体に配置されている。ごみ容器の蓋の解除装置は、実質的に取っ手の近くから作動可能とされている。本体は、筐体に柔軟に取り付けられ、実質的に筐体を覆う。本体は、取っ手及び筐体に関して可動とされている。ロボットは、コントローラと通信し、複数の方向の動きを検出するように構成されている衝突センサを含む。本体との接触は、検出のため、衝突センサに平行に伝達される。コントローラは、衝突センサからの信号に応じて、ロボットの駆動方向を変更するように構成されている。
【００１５】
本開示の本態様の実施は、以下の特徴の１つまたはそれ以上を含んでもよい。いくつかの実施において、衝突センサは、センサ基板と、前記センサ基板に隣接して置かれ、本体に連結されているセンサの覆いと、センサの覆いに格納されたエミッタ、及び、センサ基板に保持された、少なくとも３つの検出器とを含む。エミッタは、センサ基板上に信号を放射し、検出器は放射された信号を検出する。さらに、センサの覆いの動きは、検出器上で、放射された信号の動きを引き起こす。
【００１６】
いくつかの実施において、ロボットは、本体の動きを２つの方向に沿って制限するように構成された衝突ガイドを含む。衝突ガイドは、本体によって定められ、かつ、筐体に配置されたガイドピンを受けるように構成された２つの直交する溝を含むことがある。
【００１７】
ロボットは、ごみ容器の蓋に配置された遊動輪を含むことがある。いくつかの例において、筐体の後方部分は、実質的に半円形の形状の輪郭を示し、かつ、遊動輪は、駆動車輪の前方の、実質的半円形の形状の後方部分の、半径の少なくとも三分の一の所に位置する。
【００１８】
特定の例において、駆動車輪は、清掃部の後方９ｃｍ未満に配置される。ロボットは、筺体の後方部分の、実質的に、右及び左車輪の間に配置された、電源を含むことがある。電源は、ごみ容器の後方に隣接して配置される。清掃部は、第一と第二のローラブラシを駆動するように構成されたブラシモータを更に含む。いくつかの例において、ブラシモータは、筐体の実質的に近くに配置される。第一のローラブラシは、実質的に、筐体の後方エッジの近くに配置されることがある。
【００１９】
本開示の実施は、次の特徴の１つまたはそれ以上を含んでもよい。いくつかの実施において、右及び左の駆動車輪は、筐体の後方部分に回転可能に搭載され、駆動システムは、その場で旋回するように、ロボットを動かすことができる。筐体の後方部分は弓形の形状の輪郭を示すことが好ましい。しかしながら、長方形や多角形といったその他の形状も可能である。いくつかの例において、筐体の後方部分は、実質的に半円の形状の輪郭を示し、右及び左駆動車輪の軸は、筺体の後方部分によって定められる中心軸の上又は後方に配置される。いくつかの実施において、筐体及び本体は、共に長さが２３ｃｍ未満で、幅が１９ｃｍ未満となる。
【００２０】
いくつかの実施において、ロボットは、ロボットの優位側に保持された少なくとも１つの近接センサを含む。この少なくとも１つの近接センサは、実質的に本体の近くの障害物に反応する。コントローラは、少なくとも１つの近接センサから受け取った信号に応じて、駆動方向を変更するように構成されている。
【００２１】
いくつかの実施において、ロボットは、本体の前方部分に保持され、実質的に本体の前方のエッジに配置された、少なくとも１つのクリフセンサを含む。その少なくとも１つのクリフセンサは、ロボットの前方の潜在的な崖に反応する。駆動システムは、潜在的な崖を示している、クリフセンサから受信した信号に応じて駆動方向を変更する。いくつかの例において、右及び左クリフセンサは、ロボットの前方部分の右及び左角にそれぞれ配置されている。このことは、駆動車輪が崖のへりにそれ以上近づくことを避けるため、ロボットが前方のどちらかの角が崖のへりの上を進む時を検出することを可能にする。
【００２２】
いくつかの実施において、ロボットは、ごみ容器の蓋に配置された遊動輪を含む。筐体の後方部分は、ロボットが、筐体の後方部分のどの部分も検出された障害物にあてることなく、その場で旋回することを可能にする、実質的に半円の形状の輪郭を示すことが好ましい。遊動輪は、駆動車輪の前方の、実質的半円形の形状の後方部分の、半径の少なくとも三分の一の所に置かれる。いくつかの例において、遊動輪は、静止状態検出器で、遊動輪の中または上に配置された磁石と、遊動輪が回転する時に磁石を検出するために、遊動輪に隣接して配置された磁石検出器とを含む。
【００２３】
その他のより一般的な態様で、上記実施のいずれとも組み合わせられるものにおいて、自律型カバレッジロボットは、筐体と、筐体により保持された駆動システムを含む。駆動システムは、清掃表面上でロボットを動かすために構成されている。いくつかの例において、駆動システムは、右と左の別々に駆動される車輪を含む。しかしながら、スキッドステア方式のキャタピラーといった、その他のロボットの駆動手段も適用可能である。いくつかの例において、筐体は前方部分と後方部分を持ち、その前方部分は実質的に長方形の輪郭を示す。任意で、後方部分は弓形の形状とすることができる。
【００２４】
いくつかの実施において、ロボットは、筐体の前方部分に搭載された清掃部を含む（例えば、筐体の前方エッジの実質的近くに）。ごみ容器は、清掃部に隣接して配置され、清掃部によって攪拌されたごみを受け取るように構成されている。いくつかの例において、ごみ容器箱の蓋は、枢動可能にロボットに取り付けられていて、ごみ容器によって定められる開口部の閉鎖を規定する第一の閉じた位置と、ごみ容器の開口部の利用を可能とする第二の開いた位置との間を回転するように構成されている。その他の例において、ごみ容器の蓋は、スライド可能にロボットに取り付けられていて、第一の閉じた位置と、第二の開いた位置との間でスライドする。
【００２５】
いくつかの例において、本体は筐体に取り付けられている。本体は、筐体の外側と一致させることができる。いくつかの例において、本体は、筐体に柔軟に、または、移動可能に取り付けられる。ロボットは、そのロボットを運ぶための取っ手を含むことがある。取っ手は、本体または筐体に配置される。取っ手が筐体に配置される場合、本体は、取っ手及び／または筐体に対して移動可能とされる。ロボットは、ごみ容器の蓋の解除装置で、ごみ容器の蓋の第一と第二の位置の間の動きを制御するように構成されたものを含むことがある。ごみ容器の蓋の解除装置は、実質的に、取っ手の近くから作動できることが好ましい。しかしながら、ごみ容器の蓋の解除装置は、実質的にごみ容器の蓋の近くから作動できるようにすることができる。
【００２６】
いくつかの実施において、ロボットは、複数の方向の動きを検出するように構成できる衝突センサを含む。いくつかの例において、本体との接触は、検出のために、衝突センサに平行に伝達される。本体は、衝突センサから受信した信号に応じて、ロボットの駆動方向を変更するように構成されたコントローラを含むことがある。いくつかの例において、ロボットは、コントローラと通信する加速度計を含み、コントローラは、その加速度センサから受信した信号に応じて、駆動システムを制御する。
【００２７】
本開示の１つまたはそれ以上の実施の詳細は、添付の図面及び以下の解説において説明される。その他の特徴、目的、利点は、解説及び図面から、及び、請求項から明瞭になる。
【図面の簡単な説明】
【００２８】
【図１】図１は、小型自律カバレッジロボットの上面斜視図である。
【図２】図２は、図１に示されるロボットの底面斜視図である。
【図３】図３は、図１に示されるロボットの上面図である。
【図４】図４は、図１に示されるロボットの底面図である。
【図５】図５は、図１に示される上面の分解部品配列図である。
【図６】図６は、図１に示されるロボットの正面図である。
【図７】図７は、図１に示されるロボットの背面図である。
【図８】図８は、図１に示されるロボットの左側面図であり、ごみ容器の蓋が開いた位置にある。
【図９】図９は、図１に示されるロボットの右側面図である。
【図１０】図１０は、小型自律カバレッジロボットの上面斜視図である。
【図１１Ａ】図１１Ａは、静止状態検出器の側面図である。
【図１１Ｂ】図１１Ｂは、小型自律カバレッジロボットの上面概略図である。
【図１１Ｃ】図１１Ｃは、小型自律カバレッジロボットの側面概略図である。
【図１２Ａ】図１２Ａは、壁に沿って走る小型自律カバレッジロボットの上面図である。
【図１２Ｂ】図１２Ｂは、壁に衝突する小型自律カバレッジロボットの上面図である。
【図１３Ａ】図１３Ａは、バンパーガイドの付いた小型自律カバレッジロボットの上面概略図である。
【図１３Ｂ】図１３Ｂは、衝突センサの側断面図である。
【図１３Ｃ】図１３Ｃは、バンパーガイドの付いた衝突センサシステムの上面概略図である。
【図１３Ｄ】図１３Ｄは、衝突センサシステムの透視図である。
【図１４】図１４は、図３の小型洗浄ロボットの輪郭の影付きの図である。
【図１５】図１５は、全方向センサの透視分解部品配列図である。
【図１６】図１６は、図１５に示される全方向センサの側面図である。
【図１７】図１７は、小型自律カバレッジロボットの上面斜視図である。
【図１８】図１８は、図１７に示すロボットの底面斜視図である。
【図１９】図１９は、図１７に示すロボットの上面図である。
【図２０】図２０は、図１７に示すロボットの底面図である。
【図２１】図２１は、図１７に示す上面の分解部品配列図である。
【図２２】図２２は、図１７に示すロボットの正面図である。
【図２３】図２３は、図１７に示すロボットの後面図である。
【図２４】図２４は、図１７に示すロボットの左側面図で、ごみ容器の蓋が開いた位置にある。
【図２５】図２５は、図１７に示すロボットの右側面図である。
【図２６】図２６は、壁のへりにそってあちこち移動している長方形の形状を持つ小型清掃ロボットの斜位像である。
【図２７】図２７は、壁の隅部にぴったりはまって進む小型清掃ロボットの平面図である。
【図２８】図２８は、壁の隅部に進む円形ロボットの平面図で、円形ロボットが横切れない隙間を示している。
【図２９−３２】図２９−３２は、自律型カバレッジロボットの制御回路の概略図を集合的に提供する。
【図３３】図３３は、自律型カバレッジロボットの行動システムのソフトウエア構造の概略図である。
【発明を実施するための形態】
【００２９】
図１−３を参照すると、自律型カバレッジロボット１００は、前方部分２１０と後方部分２２０を持つ筐体２００を備えている。筐体２００の前方部分２１０は、略長方形を定める。例示において、筐体２００の後方部分２２０は、アーチ形の形状を定める（例えば、例示において、後方部分２２０は円形）が、後方部分２２０は、長方形、三角形、先の尖った、または波形といったような、しかしこれらに限定されない、その他の形状を定めても良い。
【００３０】
図１から５を参照すると、ロボット１００は、筐体２００の輪郭に略沿った本体３００を含んでいる。本体３００は、筐体２００の上で移動することができる。いくつかの例において、取っ手３３０は、本体３００の上部に設置されるか、または定められる。その他の例において、取っ手３３０は、取り付け部３３２に固定されるか、または取り付け部３３２から延びている。取り付け部３３２は、筐体２００の上部２０５に固定されている。取り付け部３３２は、着脱可能で、異なる配列の、若しくは異なる部品（例えば、異なる取っ手３３０かつ／またはセンサ）を運ぶ、その他の取り付け部３３２と取り換え可能となっている。本体３００は、取り付け部３３２および筐体２００に関して、移動する。例示において、本体３００は、取り付け部３３２の下で浮いている。取り付け部３３２は、本体との接触による（例えば、本体３００の下部３０３に沿った（図８参照））本体の動き（例えば２−４ｍｍのバンパーの動作）に対し、３６０°にわたる変位の制限を与えるため、円形で、本体３００の上部（３０５）で定められる開口部に関してずれた大きさであっても良い。ロボット１００（筐体２００と本体３００を含めて）は、長さ２３ｃｍ以下で、幅１９ｃｍ以下の小型のフットプリントを持つ。
【００３１】
図４および５を参照すると、ロボット１００は、筐体２００によって保持され、清掃表面上で、ロボットを動かすために構成された駆動システム４００を含む。例示において、駆動システム４００は、右と左の駆動車輪４１０と４２０とをそれぞれ含み、対応する右および左の駆動モータ４１２と４２２によって、それぞれ別々に駆動される。例示において、駆動モータ４１２と４２２は、それぞれ車輪４１０、４２０の上に取り付けられ、ロボット１００の足跡を小型に維持することに役立つ。その他の実施において、駆動モータ４１２、４２２は、それぞれの駆動車輪４１０、４２０に隣接して取り付けられる（例えば、同軸で）。いくつかの例において、ロボットは、駆動車輪４１０、４２０とそれぞれの駆動モータ４１２、４２２との間に、ギアボックス４１４、４２４を含む。ギアボックス４１４、４２４および駆動モータ４１２、４２２は、ロボットをその最大速度約２００ｍｍ／ｓから約４００ｍｍ／ｓ（もしできれば、３０６ｍｍ／ｓ）および、その最大加速度５００ｍｍ／ｓ２で推進するうように構成されている。いくつかの実施において、駆動車輪４１０、４２０の中心軸は、以下に記載する清掃部５００の後方９ｃｍ未満内（もしできれば８ｃｍ）に配置される。ロボット１００は、駆動システム４００と通信するコントローラ４５０を含む。コントローラ４５０は、ロボット１００がその場で旋回するように動かすように構成されている。
【００３２】
従来型の円筒型ロボットで、駆動車輪がロボットの直径上に配置されているものの長所は、障害物があっても回転するのを妨げられないことにある。これにより、簡単で効果的な脱出戦略−ロボットの前方に障害物が検出されなくなるまでその場で回転すること、を可能にする。ロボットが円筒形でないか、車輪部の軸がロボットの直径上にない場合、ロボット上の垂直抗力および接線分力は、ロボットが物体に接触しながら回転するにつれて変化する。そのような従来型とは異なるロボットが任意の衝突から脱出できることを確実にするため、周囲からロボットに加えられる力とトルクは、ロボットの生成したロボットの動きを停止させる力およびトルクと結合してはならない。実際には、このことはロボットの形状が幅に関して一定であるべきであり（外力を受けたときの外殻のたわみの距離の範囲まで）、ロボットの車輪が横移動を可能とするものであることを意味する。特定の形状は、車輪への最大の横力（ｍａｘｉｍｕｍ  ｌａｔｅｒａｌ  ｗｈｅｅｌ  ｆｏｒｃｅｓ）と、最大限許容可能な周囲の摩擦係数とに対する異なる要求条件を生じさせる。しかしながら、ここに開示されるロボット１００は、いくつかの例において、隅部の中を完全に掃除可能とするため、長方形の前方部分２１０を持つ。
【００３３】
再度、図４に示される例を参照すると、筐体２００の後方部分２２０の略半円形の輪郭を定める円形の輪郭２２１は、筐体２００の前方部分２１０まで伸び、中心軸２２３を持つ。駆動車輪４１０、４２０は、円形の輪郭２２１の中心軸２２３の上か、または中心軸２２３のほぼ近くに置かれる。この例示において、駆動車輪４１０、４２０は円形の輪郭２２１の中心軸２２３の少し後方に置かれる。駆動車輪４１０、４２０を円形の輪郭２２１の中心軸２２３の上または後方に置くことにより、ロボット１００は、障害物に筐体２００の後方部分２２０を引っ掛けることなくその場で回転することができる。
【００３４】
図２、４および５−９を参照すると、ロボット１００は、筐体２００の前方エッジ２０２の大体近くにある、筐体２００の前方部分２１０に取り付けられた清掃部５００を含む。この例示において、清掃部５００は、回転可能に取り付けられた、お互いに大体平行な、第１と第２のローラブラシ５１０と５２０を含む。ローラブラシ５１０、５２０は、ローラブラシ５１０、５２０の中央部分とギアボックス５３２によって結合された清掃モータ５３０によって駆動される。清掃モータ５３０は、清掃部５００を筐体２００の前方部分２１０に限定するため、および、小型ロボットのフットプリントを比較的小さく維持することを助けるため、ローラブラシ５１０、５２０の上に置かれる。各ローラブラシ５１０、５２０は、ローラブラシ５１０、５２０の長手方向の端５１２、５１４、５２２、５２４それぞれに、端板５４０を含んでもよい。各端板５４０は、ローラブラシ５１０と５２０とによって定められる長手方向の軸５１３、５２３と０°から９０°の角度φをなすように配置される（できれば４５°）。端板５４０は、筐体２００と本体３００を超えて（例えば、それぞれ右側および左側のエッジ３０６、３０８を超えて）、ロボット１００に隣接する目的物の上またはそれに沿って、ごみを攪拌するために伸びている（例えば、壁に接して清掃するため）。清掃部５００のその他の実施については、ロボット１００の別の実施とともに後で取り扱われる。
【００３５】
図１−５、８、および１０を参照すると、ロボット１００は、清掃部５００に隣接して配置され、清掃部５００によって攪拌されたごみを受け取るように構成された、ごみ容器部６００を含む。いくつかの例において、筐体２００は、ごみ用の空間またはごみ容器６１０を定める（図１０参照）。その他の例において、ごみ容器６１０は、筐体の下に配置され、清掃部５００に攪拌されたごみを受け取るように置かれる。この例示において、ごみ容器６１０は、大体、清掃用部品５００と駆動システム４００との間に置かれる。特に、ごみ容器６１０は駆動車輪４１０、４２０の前方で、ローラブラシ５１０、５２０の後方となっている。
【００３６】
ごみ用の空間／ごみ容器６１０は、筐体２００によって定められ、従って、筐体２００と一体的に形成されるのが好ましい。別の構成において、ロボット１０１は、ごみ用の空間／ごみ容器６１０としての役目を果たす、モジュール式の、着脱可能なカートリッジまたは袋で、利用者がカートリッジまたは袋を取り去り、空にすることで、ごみを除去できるものを含む場合がある。カートリッジまたは袋６１０は着脱可能に筐体２００に取り付けられている。
【００３７】
ごみ容器の蓋６２０は、枢動可能に、筐体２００の下部２０３に取り付けられていて、ごみ容器６１０によって形成される開口部６１２の閉じた状態を定める第一の閉じた位置と、ごみ容器の開口部６１０の利用を可能とする開いた位置との間で、回転するように構成されている。いくつかの例において、ごみ容器の蓋６２０は、筐体２００に対して、１つまたは複数の蝶番６２２によって、解放可能なように結合される。ごみ容器部６００は、ごみ容器の蓋６２０のその第一の位置と第二の位置との間の動きを制御するように構成されているごみ容器の蓋の解放装置６３０を含んでいる。ごみ容器の蓋の解放装置６３０は、ごみ容器の蓋を第一の閉じた位置に固定する第一の固定位置と、ごみ容器の蓋６２０がその第二の開いた位置に移動することを可能にする第二の解放位置との間を動けるように構成されている（図８参照）。ごみ容器の蓋の解放装置６３０は、取っ手３３０の大体近くにおいて作動可能で、これにより、ごみ容器の蓋の解放装置６３０は、取っ手３３０を保持しながらの作動を可能とする。このことは、利用者が取っ手３３０を用いてロボット１００を片手で持ち上げることを可能にし、ごみ容器の上にロボット１００を保持することを可能にし、また、ごみ容器の蓋の解放装置６３０を、ごみ容器の蓋６２０を開放し、ごみ容器６１０の中身をごみ箱に移すために、取っ手３３０を保持している同じ手で作動させることを可能にする。いくつかの実施において、ごみ容器の蓋の解放装置６３０は、ばね式の外れ止め、または、外れ止めボタンで、下方に押すこと（例えば、ボタン）、または、上方に引っ張ることで（例えば、引き金）引きつけられるものとなっている。
【００３８】
ロボット１００は、駆動システム４００および／またはコントローラ４５０と連通し、筐体２００に着脱可能に取り付けられている電源１６０（例えば、電池）を含む。図２、４、５、および７−８に示される例において、電源１６０は、筐体２００の後方部分２２０で定められる電源ソケット２６０に入れられる。いくつかの例では、電源１６０は、実質的にコントローラ４５０の下で、右および左の駆動車輪４１０、４２０の間に位置し、その一方で、ロボット１００の重心を実質的に筐体２００の中心または、実質的に、駆動車輪４１０、４２０で定められる第一の横軸４１５と、フリーホイール７２２（例えば、静止状態ホイール７２２）により定まる第二の横軸４２５の間に置くために十分なだけ、前方に伸びている（図４参照）。電源１６０の重量の位置が後ろ過ぎる場合、清掃部５００上の重量が不十分となり、筐体２００の前方部分２１０が上に軽く持ち上がることがある。比較的小さなフットプリントの小型ロボット１００であるため、筐体２００の上および内部の部品の配置は、機能を維持しつつロボット１００の小型のサイズを達成するため、重要となっている。図５および８を参照すると、ごみ用の空間／ごみ容器６１０は、電源１６０の前方に配置されることを妨げる（例えば、電源１６０は、筐体２００の後方部分２１０に限定されて配置される）。それにもかかわらず、電源１６０は、駆動車輪４１０と４２０の間で可能な限り前方に置かれ、ロボットの重心を駆動車輪４１０と４２０で定められる第一の横軸４１５の前方に置くために、実質的にごみ容器６１０に隣接する。重心を駆動車輪４１０、４２０の前方に置くことで、ロボット１００が上または後方に持ち上がることはほとんどなくなる（例えば、境界を越える場合）。
【００３９】
図１−１１を参照すると、ロボット１００は、ロボット１００がその周囲／環境を知ることを可能にし、その周囲／環境について感知した認識に従って、所定の方法または行動で対処することを可能にするコントローラ４５０と通信するナビゲーションセンサシステム７００を含む。行動制御についての解説は、Ｊｏｎｅｓ，Ｆｌｙｕｎ  ＆  Ｓｅｉｇｅｒ，Ｍｏｂｉｌｅ  Ｒｏｂｏｔｓ：  Ｉｎｓｐｉｒａｔｉｏｎ  ｔｏ  Ｉｍｐｌｅｍｅｎｔａｔｉｏｎ  ｓｅｃｏｎｄ  ｅｄｉｔｉｏｎ，１９９９，  Ａ  Ｋ  ｐｅｔｅｒｓ，  Ｌｔｄ．において、詳しく見い出すことができ、その本文は、参照することにより全体が本明細書に含まれるものとする。ナビゲーションシステム７００は、１つまたは複数のクリフセンサ７１０、静止状態検出器７２０、近接センサ７３０、少なくとも１つの衝突センサ８００、かつ／または、全方向受信機９００を含む。ナビゲーションセンサシステム７００からのインプットを使うことで、コントローラ４５０はロボット１００によって実行されるコマンドを生成する。その結果として、ロボット１００は、自律的な方法で表面を洗浄することができる。
【００４０】
クリフセンサ７１０は、階段に遭遇した時といった、ロボット１００が床または作業表面のエッジに遭遇した時に、感知するために用いることができる。エッジが検出された場合、ロボット１００は、ロボットに、進行方向を変えるといったような行動を行わせるような反応をすることができる。図２、４、５、及び１０に示す例において、ロボット１００の本体３００は、本体３００の周囲に沿って、４つのクリフセンサ７１０を格納し、その中の２つのクリフセンサ７１０は、本体３００の前方部分３１０の前方エッジ３０２に実質的に沿っていて（前方の外側の角または側面のエッジの近くが好ましい）、また、もう２つのクリフセンサ７１０は、本体３００の後方部分３２０の後方エッジ３０４に実質的に沿っている（後方の外側の角または側面のエッジの近くが好ましい）（図４参照）。各クリフセンサ７１０は、信号を送信するエミッタ７１２と反射した信号を検出するように構成されている受信機７１４を持つ。いくつかの実施において、クリフセンサ１０７４は、センサを安定させ、保護する、取り付け装置の内部に設置されることもあり、その取り付け装置は、その底部の方に設置された窓の方向を向くようにセンサを配置する。取り付け装置と窓は、センサと共に、クリフセンサを構成する。クリフセンサ７１０の信頼性は、蓄積するほこりを減らすことで、高めることができる。いくつかの実施において、傾斜した成形物内に取り付けられたシールドで、帯電防止材料のような、ほこりが蓄積するのを防止する材料で構成されたものを含む取り付け装置の底に、窓は設置される。シールド部材と成形物は、結合されることもある。ほこりとごみの蓄積の削減を促進するため、シールドは、ごみをより容易にすべり落とすために傾斜部上に取り付けられることもある。いくつかの実施において、第一のクリフセンサ７１０が機能しなくなった場合に備え、床のエッジを検出する二次的なクリフセンサ７１０が既存のクリフセンサ７１０の後方に存在することもある。
【００４１】
幅が一定の形状のロボットは、大体それらの形状の重心の場所において、回転することができる。幅が一定の形状とは、凸状の平面的な形状で、その幅は、その境界に接する対向する平行線の間の距離によって測ると、それらの２つの平行線の向きにかかわらず、同じになる。ある方向からの形状の幅は、その方向に直行する平行線間の垂直距離として定められる。ルーローの三角形は、幅が一定の形状の（円形の次に）最も簡単な例である。しかしながら、この例示において、ロボット１００は、筐体２００の前方部分２１０に長方形の形状を持ち、従って、幅が一定となるロボットではなく、このことによって、例えばキャニオニング状態における場合のように、様々な動きがとれない位置から脱出するために、ロボットがその場で回転することが妨げられる。キャニオニング状態は、ロボット１００が、ロボット１００の幅よりも少しだけ広い、狭い廊下（側壁のある）または厚板（横に断崖がある）を走行する場合に起こる。ロボット１００が廊下または厚板の端に着くと、逆に走行して、廊下からバックして出るか、厚板を後退することによってのみ、脱出することができる。ロボット１００がその場を回転すると（例えば１８０°回転すると）、ロボットの角の１つが壁にぶつかるか、崖から外れる。崖の場合、クリフセンサ７１０を実質的に本体３００の後方のエッジ３０４、または、筐体２００の後方のエッジ２０４に配置することは、ロボット１００が、崖を後退することなく、知的に脱出することを可能にする。同様に、以下に説明される衝突センサ８００は、後部の衝突を検出し、ロボット１００を狭い廊下からバックして出ることを可能にする。
【００４２】
図２、４、５及び１１Ａを参照すると、静止状態検出器７２０は、ロボット１００が動いているか、静止しているかを示す。例示において、静止状態検出器７２０は、磁石７２４がホイール７２２に埋め込まれるか配置されている、静止状態状態ホイール７２２を含む。磁気受信機７２６（例えば、インダクタ）は、磁石７２４が通過するのを検出するため、ホイール７２２に隣接して置かれる。磁気受信機７２６は、コントローラ４５０に対して、いつ磁石７２４が磁気受信機７２６を通過したかを示す出力信号を提供する。コントローラ４５０は、磁気受信機７２６および静止状態ホイール７２２の円周からの出力信号に基づき、ロボット１００がどれだけの速度で、どれだけ遠くまで移動しているかを判定するように構成されている。その他の実施において、静止状態検出器７２０は、少なくとも２つの異なる反射特性（例えば、白と黒）の円周面を持つ静止状態ホイール７２２を含む。静止状態エミッタおよび受信器の１対（例えば、赤外線）が静止状態ホイール７２２に隣接して置かれる。静止状態エミッタは、静止状態ホイール７２２の円周表面に信号を放射するように構成され、静止状態受信機は、静止状態ホイール７２２の円周表面からの反射信号を検出し、受信するように構成されている。静止状態検出器７２０は、反射状態と非反射状態を観測し、ロボットが移動しているかどうか、および、ことによると移動速度まで判定する。
【００４３】
更に、ロボット１００の小型の特性、及び、部品の緻密な配置のため、静止状態ホイール７２２は、安定して接地される第三の車輪としての役割を持つ。もし静止状態ホイール７２２が清掃部５００の前方に置かれるならば、それは、ロボット１００が曲がる場合に円弧に引き込む方向車輪というよりは、むしろ荷物運搬用の車輪であることが必要とされるであろう。しかしながら、隅部を完全に清掃できるようにするため、筐体２００の前方部分２１０は長方形であることが必要で、このことによって静止状態ホイール７２２を清掃部５００の前方に配置することはできなくなる（例えば、そのことにより、形状が長方形以外となる）。車輪は、筐体２００の前方部分２１０を、清掃及びブラシの回転のため、適切な高さだけ持ち上げるために、駆動車輪４１０、４２０の前方である必要がある。
【００４４】
再び図４を参照すると、静止状態ホイール７２２は、ごみ容器の蓋６２０に置かれ、清掃部５００の後方で、駆動システム４００と電源１６０の前方に位置する。静止状態ホイール／遊動輪７２２は、駆動車輪４１０と４２０の前方に位置し、円形の輪郭２２１の中心軸２２３の前方で、円形の輪郭２２１内に位置する。静止状態ホイール７２２をこの位置に置くことは、筐体２００の前方部分２１０を支持し、安定させつつ、実質的にその回転方向を横切る方向に静止状態ホイール７２２を引きずることなく、ロボットが曲がることを可能にする。静止状態ホイール７２２は、中心軸２２３の半径の三分の一の所に置くのが好ましい。静止状態ホイール７２２及び電源１６０を前方に配置することは、清掃部５００により妨げられる。結果として、清掃部５００のサイズを小さくすることにより、静止状態ホイール７２２及び電源１６０は、より前方に置くことが可能となり、ロボット１００の全体的な長さを減らすことが可能となる。
【００４５】
図１１Ｂ−１１Ｃに示す例は、小型の形態および移動の安定性を達成するするための、ロボット１００の部品の配置を説明している。ここで、ＬＤ  ＝  平面クリフ検出器７１０Ａ、７１０Ｂの厚さ、ＣＨ  ＝  清掃用先端５００の前後の長さ、ＷＢ  ＝  ホイールベース、ＲＤ  ＝  角のあるクリフ検出器７１０Ｃ、７１０Ｄの前後の長さ、ＷＴ  ＝  車輪距離、そして、ＣＲ  ＝  円形の半径（＞車輪距離の二分の一）であり、墓石形のロボット１００は、長さが、１）ＬＤ＋ＣＨ＋ＷＢ＋ＣＲで、２）１．４ＣＲ以下で、３）ＲＤ＜１／２ＣＲ、ＷＢ＞１／３ＣＲ、ＣＧはＷＢ以内となる。上記関係を満たす部品の配置によって、ロボットの重心１０５は、駆動車輪４１０、４２０の前方で、円形の半径ＣＲ以内に置かれる。図はさらに、重心１６５を持つ電源１６０と、重心５１７を持つブラシモータ５１５を含む、最も重たい部品の中の２つ配置について説明している。ブラシモータ５１５は、その重心５１７をできるだけ前方に配置し、電源１６０の重量を相殺するため、できるだけ前方に置かれる。同様に、電源１６０は、その重心１６５についてもできるだけ前方に配置するために、できるだけ前方に置かれる。しかしながら、一般に電源１６０が前方に位置することは、清掃部５００とごみ容器６１０により妨げられる。
【００４６】
図１、５、及び９を参照すると、近接センサ７３０は、障害物がロボット１００に近いか、または、隣接していることを判定するために使うことができる。近接センサ７３０は、例えば、物体がロボット１００から所定の距離以内にある場合に、信号を与える赤外線センサまたは超音波センサとすることができる。例示において、近接センサ７３０は、壁のような物体が、その側面に隣接している場合を検出するために、ロボット１００の側面（例えば右側面）に配置されている。
【００４７】
好適な実施において、図示されている通り、近接センサ７３０を持つロボット１００の側面はロボット１００の優位側の面であり、この事例においては主要な進行方向１０５に対して右側の側面となっている。いくつかの例において、壁近接センサ７３０は、有限の体積の交差が壁の想定される位置において生じるように視準の合された、エミッタと検出器の一対で構成される赤外線センサとなっている。この焦点位置は、駆動車輪４１０、４２０から、ロボットの前進方向に約３インチ前方となっている。壁検出の半径方向距離は、約０．７５インチとなっている。近接センサ７３０は、壁伝い行動を実行するために利用することが可能であり、壁伝い行動の例は米国特許番号６，８０９，４９０に記載されていて、その内容全体は、参照することにより、全体が本明細書に含まれるものとする。
【００４８】
いくつかの実施において、近接センサ７３０は、実質的に並行に置かれたエミッタと検出器を含む。エミッタは、実質的に検出器の検出領域と平行に突出した放射領域を持つ。近接センサ７３０は、検出された物体（例えば壁）との距離を判定するコントローラ４５０に、信号を与える。近接センサ７３０は、正確に検出するため、および、コントローラ４５０が物体距離を判定できるようにするために、調整される必要がある。近接センサ７３０を、隣接する物体の反射能（例えば、色や反射率）に対して調整するため、ロボット１００は、その優位側を物体に衝突させ、反射特性を記録する。赤外線のエミッタと検出器の例では、コントローラ４５０は、壁であることが想定される物体と接触した瞬間に反射強度を記録する。本体３００と近接センサ７３０との間の既知の調整距離における記録された反射強度に基づき、コントローラ４５０は、その後、壁伝いに走る間、壁との間の距離を判定することができる。コントローラ４５０は、駆動モータ４１２、４２２に対して、壁からある距離を走行するように、サーボ制御を適用することができ、従って、壁面追従する。ロボット１００は、周期的に進路を壁の方にむけ、側面を壁に衝突させ、近接センサ７３０を再調整することができる。近接センサ７３０が壁がないことを感知した場合、ロボット１００は、再び壁を認識した時に、近接センサ７３０を再調整することを決定することができる。
【００４９】
ロボット１００は、近接センサ７３０を使って、その優位側で、自発的に壁面追従することができる。ロボット１００はその主要でない側面で（または、近接センサ７３０が存在しないか、機能していない場合は、優位側で）、受動的に壁面追従することができる。物体に衝突した後（例えば衝突センサ８００で感知される）、ロボット１００は物体を壁と仮定して、壁面追従するために方向を変えることができる。ロボット１００は、本体３００の前方の角を物体／壁にひっかけないように、方向を変える前に後退することができ、このようにして前方の衝突センサ８００を再始動させる。方向を変えた後（例えば９０°）、ロボット１００は真っすぐに走り（例えば、壁に沿って）、壁をこするように少しだけ壁の方に曲がる。ロボット１００は、以下に記載される全方向衝突センサ８００を通して、側面の衝突を検出することで、壁をこすっていることを感知することができる。ロボット１００は、衝突センサ８００がロボット１００の現在の壁を伝っている側面において、側面の衝突を検出しなくなるまで、一定期間、受動的に壁を伝い続けることができる。
【００５０】
ロボット１００は、本体３００の平らな側面のため、及び、駆動車輪４１０、４２０が後方に配置されていることに幾らか起因して、受動的に壁面追従することができる。平らな側面は、ロボット１００が壁に沿って走ることを可能にする（例えば、実質的に壁にそって平行に）。駆動車輪４１０、４２０が筺体２００の後方部分２２０に位置することによって、ロボット１００は、その筐体２００の後方部分２１０の方向を、壁に沿って走るように、壁に向かって変えることが可能となる。図１２Ａを参照すると、壁３０と接触して前方に移動するロボット１００は、２つの力の影響を受ける。すなわち、壁に垂直な力、Ｆｎ、及び、壁の接線方向の力、Ｆｔである。これらの力は、ロボットの回転の自然な中心である、車輪間の中心点付近において反対のトルクを作り出す。トルクτを次のように表示することができる：
τ  ＝  ｒＦ（ｃｏｓθ  −  μｓｉｎ２θ）
ここで、μは壁とロボットとの間の摩擦係数である。所定のμの値に対して、トルクが釣り合う臨界角θＣが存在する。θ  ＜  θＣ  の場合、方程式の右側の第一項目が大きく、ロボットは壁とそろう傾向がある。θ  ＞  θＣ  の場合、第二項が大きく、ロボット１００は進路を壁に向ける傾向がある。
【００５１】
開示されているロボットの場合の墓石型のような、特定のロボットの形状は、有益なθＣの値を達成することができる。標準的な円筒形の場合、ロボットの壁への接近の角度にかかわらず、θＣ  ＝  π／２となることに注意する。従って、受動的に壁面追従することは、この構成では達成できない。受動的にうまく壁面追従するため、ロボットの回転の自然な軸と、壁との接点との間のずれは、ロボットの動きが壁に沿っている場合、できるだけ前方にするべきである。また、受動的な回復を可能にする最大の壁の段の高さを考慮することは重要で、ロボットの形状に影響を与える。
【００５２】
いくつかの例において、ロボット１００は半受動的に壁面追従する。ロボット１００は、側面近接センサ７３０を持つ優位側で壁面追従する。衝突センサ８００、または、近接センサ７３０によって、壁と仮定される物体を検出した後、ロボット１００は、仮定された壁にその優位側を揃えるために曲がる。ロボット１００は、壁に沿って走るように、少し壁の方に曲がりながら、壁に沿っての走行を開始する。ロボット１００は、衝突センサ８００または近接センサ７３０を通して、壁との接触を感知することによって壁との接触を維持し、コントローラ４５０は、サーボ制御を適用するか、または駆動モータ４１２、４２２が結果的に壁に沿って走行するような手段を与える。
【００５３】
図１２Ｂに示すように、いくつかの例において、ロボット１００は、壁面追従を支援する、ロボットの前方の一つまたは両方の角に配置された接触要素１８０（例えばローラ、軸受け、軸受筒、又は柔らかい接触点）を含む。接触要素１８０は、少なくとも、ロボット１００の優位側の、前方の角に配置されるのが好ましい。ロボット１００が壁に沿って動く時、単に壁をこする代わりに、接触要素１８０によって壁に接触する。いくつかの実施において、接触要素１８０は、垂直軸に沿って付けられた側面ブラシで、本体３００を越えて延びている。側面ブラシは、壁とロボットの本体３００との間の緩衝となる空間を維持する。
【００５４】
衝突センサ８００は、ロボット１００が物理的に物体に遭遇したと判断するために利用される。そのようなセンサは、静電容量またはロボット１００内の物理的な変位等の物理的な性質を使って、物体に遭遇したと判断するために利用することができる。いくつかの実施において、衝突センサ８００は、本体３００の大体周辺に配置された接触センサを含む。好適な実施において、衝突センサ８００は、筐体２００上の本体３００の動きを検出するように構成されている。図５、１０及び１３Ａ−１３Ｄを参照すると、ロボット１００の本体３００は、バンパーとして機能し、一つまたは複数の弾性要素３０９によって筐体２００に弾性的に結合されている。弾性要素３０９は、バンパー型の本体３００が少なくとも２つの方向に移動することを可能にする（３つの方向が好ましい）。いくつかの例において、衝突センサ８００は、衝突センサ基盤８１０上で等間隔に間隔をあけられた、少なくとも３つの（４つが好ましい）検出器８２０（例えば、光検出器のような、光または赤外線検出器）を支える衝突センサ基盤８１０を含む。例示において、衝突センサ基盤８１０は、検出器８２０を保持するプリント回路基板となっている。プリント回路基板  −  衝突センサ基盤８１０は、コントローラ４５０と連通し、それを保持することもある。衝突センサ８００は、衝突センサの覆い８３０で、衝突センサ基盤８１０上に位置し、衝突センサ基盤を覆う空洞８３２を定めるものを含む。衝突センサの覆い８３０は、信号８４２（例えば光線）を衝突センサの覆い８３０によって定められる、空洞８３２の壁を貫く開口部８３４を通して放射する、エミッタ８４０（例えば、光線または赤外線のエミッタ）を格納する。開口部８３４は、有向路を持つように、信号８４２を平行にする。衝突センサの覆い８３０が衝突センサ基盤８１０の上を移動するにつれて、信号８４２は検出器８２０の上を移動し、これによって対応する信号がコントローラ４５０に提供される（例えば、信号強度に比例する）。検出器信号に基づき、コントローラ４５０は、筐体２００上の本体３００の動く方向を判定するように構成されていて、オプションで、移動率を判定することができる。衝突センサ８００は、衝突センサの覆い８３０の衝突センサ基盤８１０上の３６０度の動きを検出することができる。検出器８２０から受信した検出信号に応じて、駆動システム４００かつ／またはコントローラ４５０は、ロボット１００の走行方向を変更するように構成されている。
【００５５】
図１３Ａ及び１３Ｃに示す例において、衝突センサ８００は、本体３００を２つの移動方向に沿って導く衝突ガイド８５０を含んでいる。上述の通り、本体３００は、本体が並進及び回転によってずらされることを可能にする、弾性要素３０９によって本体と結合されている。衝突ガイド８５０は、（筐体３００に対して）バンパー３００と共に移動する部材に形成され、（筐体２００に対して）動かない筐体２００の上の少なくとも１つのガイドピン８５４とかみ合される、直交する溝８５２とT字型に交差する形状か、または、直交するように構成される。その他の実施において、衝突ガイド８５０は、筐体２００の一部分に形成され、ガイドピン８５４は、バンパー本体３００に固定される。バンパー３００がずれると、バンパーガイド８５０はバンパー３００を、バンパーをそのまま平行移動させることを可能にするバンパーガイド８５０のアームに沿った領域に導く傾向があり、そうでなければ、回転成分を減らすか、回転を平行移動に導く傾向があり、衝突センサ８００の検出を向上させる。
【００５６】
図５、１０及び１３Ｄに示される例において、衝突センサ８００は、衝突センサの覆い８３０とバンパー型の本体３００との間に固定されるバンパー連結アーム８５０を含む。バンパー連結アーム８５０は、本体３００の動きを衝突センサの覆い８３０に平行移動させる。衝突センサの覆い８３０は、衝突センサ基板７１０に固定することが可能で、衝突センサの覆い８３０が衝突センサ基板８１０に対して弾性たわみによって移動できるように弾性材によって構成される。その他の例において、衝突センサの覆い８３０は、衝突センサ基板７１０の上に位置し、衝突センサ基板８１０に対して自由に移動できるようにされている。
【００５７】
ロボット１００は、前方への走行方向を持ち、筐体２００の前方部分２０２の上の、本体３００の前方部分３０５に全方向受信機９００を保持している。図１は、ロボット１００の最も高い位置となる、ロボット１００の上の全方向受信機９００の位置の例を示している。全方向受信機９００は、ロボット１００がナビゲーションの無線ビーコン（図示せず）に接近している時に、感知するために利用することができる。例えば、全方向受信機９００は信号を、放射強度を示す制御システムに中継することが可能で、ここで信号が強いことは、ナビゲーションの無線ビーコンに接近していることを意味する。
【００５８】
図１４−１６は、全方向受信機９００の透視図、側面図、断面図を示す。全方向受信機９００は、筐体９１０、円錐反射器９２０及び放射受信機９３０を含む。筐体９１０は、上方部分９１２と内部空洞９１６を持つ。上方部分９１２は、内部空洞９１６への放射の伝達を可能にする。円錐反射器９２０は、筐体９１０の上方部分９１２に向けられる放射を内部空洞９１６に反射するするために、空洞９１６の上部表面に位置している。放射受信機９３０は、円錐反射器９２０の下の内部空洞９１６の内部に位置する。いくつかの実施において、全方向受信機９００は、赤外線（ＩＲ）を受信するように構成されている。そのような場合、ガイド９４０（例えば、光ファイバー）は、円錐反射器９２０から反射される放射を導くことができ、それらを放射受信機９３０に向かわせることができる。
【００５９】
コントローラ４５０は、ロボット１００が方向設定および速度設定に従って推進するように構成することができる。ナビゲーションセンサシステム７００から受信した信号は、ロボット１００の指令された速度又は方向を変更するといった、制御システムが障害物を処理するためのコマンドを発行するために利用することができる。例えば、隣接する壁による近接センサ７３０からの信号は、制御システムに速度を落とすためのコマンドを発行させることができる。別の例においては、障害物と遭遇したことによる衝突センサ８００からの衝突信号は、制御システムに方向を変更するためのコマンドを発行させることができる。その他の例において、ロボット１００の速度設定は、接触センサに応じて低下させることが可能で、かつ／または、ロボット１００の方向設定は、近接センサ７３０に応じて変更することが可能である。
【００６０】
コントローラ４５０は、ロボット１００の速度設定を調整するように構成されている第一の独立行動ルーチンと、ロボット１００の方向設定を変更するように構成されている第二の独立行動ルーチンを含むことがあり、第一と第二の独立行動ルーチンは、同時に、また、お互いに独立して実行されるように構成されている。第一の独立行動ルーチンは、近接センサ７３０をポーリングするように構成されることがあり、第二の独立行動ルーチンは衝突センサ８００をポーリングするように構成されることがある。ここで説明されるロボット１００の実施において、行動ベースの制御は一部利用されるか、又は、全く利用されないことがあるが、行動ベースの制御は、ロボットを強固な（すなわち、立ち往生したり、機能しなくなったりすることがない）上に安全に制御する上で効果的である。
【００６１】
図１７−２５は、自律型カバレッジロボット１０１の別の実施について示している。ロボット１０１は、前方部分２１０と後方部分２２０を持つ筺体２００と、実質的に筐体２００の外形に沿った、前方部分３０１と後方部分３０３を持つ本体３００とを備える。筐体２００の前方部分２１０は、実質的に長方形の形状を定め、後方部分２２０は、楕円形の形状を定める。本体３００の前方部分３０１は、筐体２００に対して柔軟に連結されている。取っ手３３０は、本体３００の後方部分３０３の上方部分３０５に配置されるか、または定められる。
【００６２】
構成例において、ロボット１０１の形状因子は、直径約１５ｃｍ、高さ７．５ｃｍであり、再充電する必要があるまでの約６時間、バッテリー電源で機能する。また、例えば、ロボット１０１は平均的な大きさの単一の部屋を約４５分で、または、複数の小さな領域を、効果的に清掃することができる。
【００６３】
図１８、２０及び２１を参照すると、ロボット１０１は、上述の通り、筐体２００に保持された駆動システム４００を含む。示されている実施において、駆動モータ４１２、４２２は、それぞれの駆動車輪４１０及び４２０に隣接し、それらに沿って（例えば同軸で）配置されている。いくつかの例において、ロボットは、駆動車輪４１０、４２０及び、そのそれぞれの駆動モータ４１２、４２２との間に結合されるギヤボックス４１４、４２４を含む。ロボット１０１は、駆動システム４００と連通するコントローラ４５０を含む。コントローラ４５０は、ロボット１０１がその場で旋回するように動かすように構成されている。
【００６４】
ロボット１０１は、筐体２００の前方部分２１０に取り付けられた清掃部５００を含み、筐体２００の前方エッジ２０２の実質的に近くに、前方エッジ２０２に実質的に並行に、回転可能に取り付けられた第一前方ローラブラシ５１０を含む。清掃部５００は、それぞれ本体３００の右側及び左側エッジ３０６、３０８の実質的に近くに、前方ローラブラシ５１０に対して直交して取り付けられた第二側面及び第三側面回転ブラシ５５０、５６０を含んでいる。回転ブラシ５１０、５６０は、ギヤボックス５３２によってローラブラシ５１０、５５０、５６０に結合された、清掃モータ５３０によって駆動される。清掃モータ５３０は、前方ローラブラシ５１０の後方で、側面ローラブラシ５５０、５６０の間に置かれる。
【００６５】
好適な実施において、ロボット１０１は、１種類の清掃機構だけを含んでいる。例えば、図１８のロボット１０１は、前方ローラブラシ５１０および側面ローラブラシ５５０、５６０として、毛ブラシを含んでいる。毛ブラシローラは、例えばアイロボットコーポレーションによって市販されているＳＣＯＯＢＡ（登録商標）ロボットにて見いだすことのできるブラシローラと同じようなものとすることができ、また、それは、追加的な例として、ＲＯＯＭＢＡ（登録商標）ロボットにおいて使用されるＲ２またはＲ３ブラシタイプと同様なものとすることができる。一つの実施において、ブラシは、ブラシの周りにきつく巻き付く傾向のある長い髪や繊維状のものは、ブラシからごみを除去するために利用者によって要求される維持管理の頻度を最小にするために、拾い上げない。あるいは、ロボット１０１は、特に、真空および毛ブラシ両方といった、２つ以上の様々な清掃機構を含むことがある。
【００６６】
いくつかの例において、前方ローラブラシ５１０と側面ローラブラシ５５０、５６０は作業面と平行な水平軸周囲を回転し、これによって水平な清掃部５００を提供する。カバレッジロボット１００の主要な作業幅は垂直の回転ブラシを含むことが可能なものであるが、真空、往復式のブラシ、回転ベルト部材、及びその他の既知の清掃手段に代るブラシは含まない。各ローラブラシ５１０、５２０、５５０、５６０は、回転の長手方向の軸を定める円筒形の本体を持つ。ブラシの毛は、円筒形の本体に放射状に取り付けられ、いくつかの例において、柔軟なフラップが円筒形の本体に沿って長手方向に取り付けられている。ローラブラシ５１０、５２０、５５０、５６０が回転するにつれて、ブラシの毛と柔軟なフラップは、作業面上においてごみを動かし、ロボット１００のごみ容器６１０の方に向かって移動させる。真空装置一式を含む例において、ブラシ５１０、５２０、５５０、５６０はごみ、または、ほこりを清掃ロボット１００の下の吸引路の方に導くことができる。湿式清掃ロボットの場合、ブラシ５１０、５２０、５５０、５６０は、みがきあげる機能を代わりにもつことができ、真空またはその他の集収装置は、みがきあげた後に廃液を収集する。
【００６７】
例示において、ブラシ５１０、５５０、５６０といった清掃部５００の有効な部品は、筐体２００の前方部分２１０の前方の先端の角に向かって配置される。結果として、筐体２００の長方形の前方部分２１０がカバーできる床の領域は最大化され、図２７に示すように、カバーされない床の部分は最小化される。
【００６８】
２つ以上の様々な清掃機構の組み合わせではなく（例えば、ローラブラシと真空の両方、または、特に、２つ以上の保存用の空間を必要とする、湿式清掃機構とドライクリーニング機構の両方といったような）、むしろ清掃部５００といった、単一の清掃機構だけを含むことによって、ロボット１０１を別の方法と比べてより小型にすることができる。
【００６９】
図１８、２０、２１及び２４を参照すると、ロボット１０１は、上述の通り、ごみ容器部６００を含む。例示において、筐体２００は、清掃部５００と駆動システム４００の間に位置する、ごみ室またはごみ容器６１０を定める。特定の例において、ごみ容器６１０は、駆動車輪４１０、４２０の前方で、前方ローラブラシ５１０の後方となる。前方ローラブラシ５００と側面ローラブラシ５５０、５６０が床に反して回転するにつれて、それらはごみを攪拌し、ごみを、吸入溝、または、その他の適切な開口部でローラブラシ５１０、５５０、５６０からごみ室６１０に通じるものを通して、ロボット１０１内のごみ室／ごみ容器６１０の中に掃いて集める。
【００７０】
例示において、ごみ容器の蓋６２０は、１つ以上の蝶番６２２（例えば、リビングルームの蝶番、留めくぎ及びソケット等）によって筐体２００に着脱可能に結合されている。いくつかの実施において、ごみ容器の蓋の解除装置６３０は、取っ手３３０の実質的に近く、または、取っ手３３０において、作動可能で、これによって、取っ手３３０を保持しながらごみ容器の蓋の解除装置６３０を作動することが可能となる。その他の実施において、ごみ容器の蓋の解除装置６３０は、ごみ容器の蓋６２０の近く、または、その上で作動可能で、利用者は取っ手３３０を片手で保持し、別の手でごみ容器の蓋の解除装置６３０によってごみ容器の蓋６２０を開くことができる。いくつかの実施において、ごみ容器の蓋の解除装置６３０は、ばね式の外れ止め、または、外れ止めボタンで、下方に押すこと（例えば、ボタン）、または、上方に引っ張ることで（例えば、引き金）で引きつけられるものとなっている。
【００７１】
例示において、ロボット１０１は、本体３００の上方部分３０５に配置されるか、又は、それによって定められる取っ手３３０を含む。利用者は、ロボット１０１を持ち上げるために取っ手３３０を握り、手でそれを運ぶことができる。さらに、ロボット１０１は取っ手３３０に隣接する１つ以上のボタン６３２を含むことがある。ボタン６３２は、利用者の手が取っ手３３０を通してロボット１０１を握っている間に、片方の手で操作可能であることが好ましい。ごみ容器の蓋の解除装置６３０は、その閉じた位置においてごみ容器の蓋６２０を保持し、また、その開放位置に移動するようにごみ容器の蓋を開放するように制御するために操作できる。図２４に示されるように、一つの例において、利用者がボタン６３２を操作すると、ごみ容器の蓋の解除装置６３０は自由になり、ごみ容器の蓋６２０は、蝶番６２２の周囲で回って開く。ごみ容器の蓋６２０がその開放位置にあると、ごみ室／ごみ容器６１０の中身は、ロボット１０１中から重力によって落ちる。ロボット１０１は、また、ごみ室６１０内のごみの重量がごみ容器の蓋６２０を回して開くのに十分でない場合に、ごみ容器の蓋６２０が開くことを確実にするために、例えば、ばねを含むことがある。
【００７２】
ロボット１０１は、駆動システム４００かつ／またはコントローラ４５０と連通し、筐体２００に着脱可能に固定される電源１６０（例えば電池）を含む。図２０及び２１に示される例において、電源１６０は、筐体２００の後方部分２２０によって定められる電源ソケット２６０に入れられる。電源カバー２６２は、電源ソケット２６０の中で、電源１６０を保持及び／またはカバーするために、着脱可能に筐体２００に固定される。例示において、電源１６０は、駆動車輪４１０、４２０の後方で、筐体２００の後部２２０に置かれる。この位置において、電源１６０の重量は、ロボット１０１の重心が実質的に筐体２００の中心の周辺に位置するように、清掃部５００の重量を相殺する。
【００７３】
ロボット１０１の小型の寸法は、椅子、テーブル、ソファ、またはその他の家庭用品といった潜在的な障害物の下でロボット１０１が進むことを可能にし、これらの到達しづらい領域においてロボット１０１が床を清掃することを可能にする。加えて、ロボット１０１は、ソナー式距離計又は感光性ダイオードといった、直接頭上を走査する、その上面に配置された間隔センサを含むことがある。間隔センサがしきい距離、−例えば２フィート−、以内に物体の存在を検出した時、ロボット１０１は頭上の空間に障害物がなくなるまで動き続けることができる。従って、ロボット１０１は、家具の下で、例えば利用者の視界から消えて、どこにあるか分からなくなるといったことを避けることができる。
【００７４】
駆動システム４００がロボット１０１を床の上で推進する時、ごみをごみ室６１０の中に掃くことができるように、前方ローラブラシ５１０は駆動車輪４１０、４２０と同じ方向に、ロボット１０１が床の上を行き来する速度よりも早い速度で回転することが好ましい。加えて、側面ブラシ５５０、５６０もまた、同時にごみを内側に掃く。一つの例において、約６００から１６００ＲＰＭの間で回転する一方で、ブラシ５１０、５５０、５６０の毛は、車輪４１０、４２０の範囲を約０．０１５から０．０２５インチ下側に超えることがある。
【００７５】
ロボット１０１の形成因子は、荷物運搬用の車輪またはその他の支持機構を除くことで、より小型にできる。前方ローラブラシ５１０の幅、及び、ロボット１０１の反対の側面に配置される側面ブラシ５５０、５６０のため、ロボット１０１は、ロボット１０１のバランスまたは安定性に大きな影響を与えることなく、駆動車輪４１０、４２０は別として、第３の荷物運搬用の車輪またはフリーホイールを省くことができる。あるいは、図１８、２０、及び２２−２５に示すように、ロボット１０１はさらに、筐体２００の前方部分２１０の向かい合った角の先端に配置された、支持軸受４９０を含むことがある。支持軸受４９０は、ポリテトラフルオロエチレンまたはポリオキシメチレンポリマーといった、滑らかな、かつ／または、自己潤滑性の材料の、単一の固い部材を含むことがあり、または、支持軸受４９０は、ローラベアリングまたはその他適切な機構で、ロボット１０１が床を横切る時に低い摩擦抵抗を与える一方で、ロボット１０１が傾いたり、または、バランスを失ったりすることを妨げるものを含むことがある。
【００７６】
図２１を参照すると、ロボット１０１は、ロボットがその周囲の状況／環境を認識することを可能にして、その感知した、その周囲の状況／環境に従って、所定の方法で反応するか、または、行動することを可能にするコントローラ４５０と通信する、ナビゲーションセンサシステム７００を含む。例示において、ナビゲーションセンサシステム７００は、１つ以上の衝突センサ８００及び／又は静止状態検出器７２０を含む。ナビゲーションセンサシステム７００からのインプットを使って、コントローラ４５０は、ロボット１０１によって実行されるコマンドを生成する。結果として、ロボット１０１は、自律的な方法で表面を清掃することができる。
【００７７】
衝突センサ８００は、ロボット１００が物理的に物体に遭遇した場合を検出するために利用される。そのようなセンサは、静電容量またはロボット１００内の物理的な変位等の物理的な性質を使って、物体に遭遇した時に判定するために利用することができる。図２１に示される例において、衝突センサ８００は、筐体２００と本体３００の前方部分３０１との間の、筐体２００の前方部分２１０の周囲に配置された接触スイッチである。本体３００の前方部分３０１は、柔軟に、または、スライド可能に、物体との接触が衝突センサ８００に平行移動されるような方法で、筐体２００に取り付けられる。好適な実施において、ロボットは筐体２００の前方の角に配置された衝突センサ８００を含み、その中の少なくとも一つの衝突センサは、各角の各側面に配置され、このようにして、ロボット１００が衝突の方向及び／又は位置を判定することを可能にする。本体３００の前方部分３０１は、実質的にバンパーの２つの端にある、バンパーの動きを感知するためのセンサ８００を持つ、単一の機械的なバンパーとして作用する。本体３００の前方部分３０１が圧縮された時、センサ事象の間の時間はロボット１０１が障害物と接触したおおよその角度を計算するために利用される。本体３００の前方部分３０１が右側面から圧縮された時、右衝突センサは最初に衝突を検出し、バンパーのたわみ性及びバンパーの形状のため、次に左衝突センサが衝突を検出する。このように、衝突角度は、二つの衝突センサだけから概算される。
【００７８】
ロボット１０１は小型で軽量な構造を持つことが好ましいので、ロボット１０１によって運ばれる運動量は、標準的なサイズのロボットよりも軽い。従って、ロボット１０１は、軽いタッチの、または、非接触型の衝突センサを含むことが好ましい。例えば、ロボット１０１は、少なくとも１つの水平軸に沿ったロボットの加速度を測定するための、１つ以上の加速度センサ４５８でコントローラ４５０と連通するもの（図２１参照）を含むことがある。加速度が、予め決められた閾値を超えると、ロボット１０１は、衝突スイッチが反応したかのように反応することがある。結果として、ロボット１０１は、従来の接触スイッチ型のセンサを除くことができる。
【００７９】
いくつかの例において、ロボット１０１は、静止状態検出器７２０として加速度センサ４５８を利用することができる。その利点として、静止状態検出の加速度計データを処理するのに、約３０ヘルツの処理速度のみが必要とされる場合がある。例えば、ロボット１０１が床の上を動くにつれて、振動によって加速度センサ４５８は、特定の振幅形状の加速度を検出する。しかしながら、ロボットが通常状態または障害物によって妨害されているため、動きを止めると、加速度センサ４５８によって検出される振動の振幅がそれに応じて減少する。従って、ロボット１０１は、そのような加速度の減少に対して、例えば、静止状態回避行動によって反応することができる。衝突検出及び／又は静止状態検出を目的として単一の加速度センサ４５８を観測することによって、ロボット１０１は衝突スイッチ及び／又はその他の静止状態検出ハードウエアを除くことができ、従って、そのことは、より小さな空間をロボット１０１内に潜在的に必要とすることになる。
【００８０】
図２６−２８を参照すると、ロボット１００、１０１は、床からごみをごみ室／ごみ容器６１０内に収集しながら、タイル、硬材、またはじゅうたん地などの床の表面を進むことができる。ロボット１００、１０１が隅部に向かって進むと、前方ローラブラシ５１０と端のブラシ５４０または側面ローラブラシ５５０、５６０は、それぞれ、隅部の側面と接触している領域を効果的に清掃することができる。これに対して、図２８に示されるような、円形の輪郭のロボット１０は、隅部９２２０に接近することはできるが、隅部９２２０で交差する壁９２４１、９２４２と接触して移動することはできない。結果として、円形の輪郭のロボット１０は、隅部９２９０に隣接するくさび形の領域９２９０を効果的に清掃することはできない。図２６に示されるように、ロボット１００、１０１は、実質的に壁のへり９２１０に接触しながら、直線に沿って進むことができ、ここで壁９４２１は、床９２５０と交差する。ロボット１００、１０１は、筐体２００の前方部分２１０内に配置されるか、または、そこで機能している、１つ以上の衝突センサ８００、１８００を含むことが好ましい。ロボット１００、１０１が壁９２４１を軽くたたくにつれて、ロボット１００、１０１は、例えば、壁９２４１に実質的に平行に進むように、その方向を調整することができる。
【００８１】
ロボット１０１の働きは、ＦＲＥＥＳＣＡＬＥＴＭ  ＱＧ８又はその他のマイクロコントローラで、ロボットのセンサからの入力を受信すること、及び、ロボット１０１のモータ又はその他の出力装置を操作するのに適した、マイクロコントローラ４５０によって制御されるのが好ましい。図２９−３２に示されるように、例えば、マイクロコントローラ４５０は、衝突センサ８００からの入力を受信し、右と左の駆動車輪４１０、４２０に結合された駆動モータ４１２、４２２に制御信号を出力する。あるいは、マイクロプロセッサ、または、その他の制御回路を利用することができる。ロボット１０１は、行動ベースの制御ソフトウエアを実行するか、または、特に、単純な、単一スレッドの制御ループに従って動作する。
【００８２】
筐体２００の前方部分２１０の長方形の輪郭は、その角と、衝突センサまたはクリフセンサによっては検出されないかもしれない障害物との衝突を引き起こすかもしれず、そのような危険性なしに自由に回転できる円形の輪郭のロボットとは対照的に、ロボット１０１は、その場で回転する一方で、検出された衝突に対して、回転を中断し、逆方向に後退することで衝突に反応することが好ましい。結果として、ロボット１０１は、筐体２００の前方部分２１０の角張った角にもかかわらず、脱出できないほど無理やり押し込まれたり、動けなくなったりすることはあまりない。あるいは、ロボット１０１は、例えば、ＲＯＯＭＢＡＴＭ、または、ＳＣＯＯＢＡＴＭロボットと概して同様な制御ソフトウエアにしたがって行動することもできる。
【００８３】
さらなる例に従って、ロボット１００、１０１は、清掃サイクルの完了後、自動的に格納のための枠または基地局に戻ることができる。ロボット１００、１０１は、また、搭載された電池を再充電するための電気的インターフェースを含む場合がある。さらに、枠または基地局は、ロボット１００、１０１のホームポジションより低い所に位置する容器を含む場合がある。ロボット１００、１０１が枠とインタフェースで連結し、ホームポジションで停止する時、ロボット１００、１０１は、自動的にごみ容器の蓋の解除装置６３０を作動させ、ごみ室６１０から、ロボット１００、１０１の下に位置する枠の容器の中にごみを取り除いて、からにすることができる。
【００８４】
全方向受信機９００を利用したロボットの実施において、基地局は全方向ビームエミッタと２つのナビゲーション用電磁場のエミッタを含むことがある。ロボット１００は、ドッキング方向と揃えられた重なった電磁場の側面の境界の１つを検出して、それに沿って前進することで、基地局とドッキングするまで基地局に向かって移動することができる。ロボット１００は、基地局の放射を全方向受信機９００で検出することができ、少なくとも一つの電磁場の放射についての、電磁場の側面の外側の境界を検出するように移動することができる。ロボット１００は、重ねられた電磁場の、揃えられた電磁場の側面の境界まで、電磁場の側面の境界に沿って前進することができる。揃えられた電磁場の側面の境界を検出した後、ロボット１００は、揃えられた電磁場の側面の境界に沿って、基地局とドッキングするまで前進する。
【００８５】
図３３は、コントローラ４５０内の行動ソフトウエアアーキテクチャを示すブロック図である。行動ソフトウエアアーキテクチャは、目的指向の行動を含む。ロボット１００、１０１は、コントローラ４５０内のアービタ１００５によって実行される、いくつかの行動を持つ、制御及びソフトウエアアーキテクチャを利用する。アービタ１００５は、各駆動モータ４１２、４２２と通信するモータドライブ１０１０の上で、コマンドを実行する。センサ事象に応じて、行動は、アービタ１００５に入る。一つの実施において、全ての行動は、お互いに固定された相対的優先順位を持つ。アービタ１００５（この場合）は、行動は動作を可能にする条件の完全なセットを持ち、かつ、その動作を可能にする条件を満たすものの中で最も高い優先順位を持つ行動を選択するという、動作を可能にする条件を認識している。図３３に示される略図は、ロボット１００、１０１の（固定の）優先順位の階層を必ずしも反映するものではない。優先順位が低下する順番に、一般に、行動は、脱出及び／又は回避行動（崖を回避したり、隅部から脱出するといった）及び作業行動（例えば、壁面追従する、はね返る、直線上を走行する）に分類される。一つの行動が裁定される一方で、もしあれば、ロボット１００、１０１の動作が生じる。もし１つ以上の行動がアービタ１００５にあれば、対応する要求条件が満足される限り、最も高い優先順位を持つ行動が実行される。例えば、崖回避行動１４００は、崖検出センサによって崖が検出されない限り実行されないが、崖回避行動１４００の実行は、動作を可能にする条件を同様に満たす、その他の行動の実行よりも優先される。
【００８６】
反射行動は、それらの動作を可能にする条件または要因として、様々なセンサ及び事象の検出を持つが、一般に、一列の（任意の）状態としてではない。図３３に示すように、それらは、クリフセンサ７１０、静止状態検出器７２０、側面近接センサ７３０、衝突センサ８００、及び／又は全方向受信機９００（例えば仮想的な壁の信号の検出のための（それについては、その代わりに、カバレッジのトリガと考えられる））といった障害物回避及び検出のセンサを含む。これらの種類のセンサは、動作を可能にする条件、及び、その行動が予測可能に作用することを助ける記録データ、及び、利用できる全ての情報  （例えば、１ビットの真／偽信号の変換、センサの集合からの強度差、または、時間差に基づく衝突または入射のありえる角度の記録、または、歴史的、平均化、頻度、又は分散情報）を生成することが可能な、フィルタ、コンディショニング、およびそれらのドライバによって監視され、調整される。
【００８７】
実際の物理センサは、アーキテクチャにおいて、コンディショニング及びドライバによって合成されるバーチャルセンサとして表現することができる。追加のバーチャルセンサは、固有受容性の、又は、ロボット１００、１０１において解釈される、モータの過電流、ロボット１００、１０１の静止状態または動けない状態、電量分析による電池の充電状態、およびその他のバーチャルセンサ「バーチャルＮ」といった、検出可能または解釈された物理特性から合成される。
【００８８】
いくつかの実施において、ロボット１００は、優先順位が高いものから低い順に並べられた次の行動を含む：１）ユーザインターフェースグループ１１００、２）工場テストグループ１２００、３）リバースバンプフォローグループ１３００、４）崖回避グループ１４００、５）後方跳ね返り１５００、６）バンプフォローグループ１６００、７）跳ね返り１７００、及び、８）走行１８００。行動グループとは、１つの行動全体を実現するために共に働く行動のセットのことを言う。例えば、「ユーザインターフェースグループ」行動は、ロボットが静止している時にユーザインターフェースを処理する３つの行動のセットとなっている。
【００８９】
ロボットは、図１と１７における単一の清掃／電源ボタンで、利用者がロボット１００と情報をやりとりすることを可能にする、ユーザインターフェース３７０を含むことがある。以下の、高い方から低い方に優先順位付けされている、ユーザインタフェースグループ行動１１００の下位行動は、単一の清掃／電源ボタンとして実現されているユーザインターフェース３７０を実行する：１）ユーザオフ１１１０、２）ユーザスタート１１２０、及び３）ユーザは何も行わない１１３０。以下の、高い方から低い方に優先順位付けされている、工場テストグループ行動１２００の下位行動は、品質管理を目的とした工場テストモードを実現する：１）工場テスト完了１２１０、２）工場テストを進める１２２０、及び３）工場テスト１２３０。
【００９０】
以下、高い方から低い方に優先順位付けされている下位行動は、リバースバンプフォロー脱出行動１３００を実現する：１）リバースバンプフォローエスケープスイング１３１０、２）リバースバンプフォローターンアウト１３２０、及び３）リバースバンプフォローアークイン１３３０。筐体２００の前方部分２１０の長方形の形状のため、ロボット１００がその中で回転するには狭すぎる空間に入ってしまうことがありえる（例えば、駐車スペースのような）。そのような制限領域は、キャニオンと呼ばれる。キャニオンという用語は、一般に、どのような狭く制限する原因に対しても引用される。同様に、崖がロボット１００を狭いスペースに制限する場合、それは厚板と呼ばれる。これらの制限する障害からの脱出の戦略は同じなので、方向性のあるクリフセンサ及び衝突センサのデータは、以下の考察の基礎となる４つの方向性制限センサに統合される。４つのセンサは、前方左、前方右、後方左、及び後方右である。リバースバンプフォローアークイン１３３０がロボットを時計回りに回転させながら後方に駆動する場合には、リバースバンプフォローの方向は時計回りとなる。リバースバンプフォローアークイン１３３０がロボット１００を反時計回りに回転させながら後方に駆動する場合には、リバースバンプフォローの方向は反時計回りとなる。
【００９１】
リバースバンプフォローエスケープスイング行動１３１０は、ロボット１００がキャニオンの存在を推定するのに十分な角度だけ進行するように、ロボット１００をその場で回転させる。リバースバンプフォローエスケープスイング行動１３１０の起動は、リバースバンプフォローターンアウト行動１３２０の後に評価される。リバースバンプフォローエスケープスイング行動１３１０が作動可能にされた後、それは一度実行され、その後、リバースバンプフォローターンアウト行動１３２０によって作動可能にされるまで、それ自身を無効にする。リバースバンプフォローエスケープスイング行動１３１０の開始後、脱出角度は、１２０°から１６０°までの間の乱数として設定される。ロボット１００は、その場でリバースバンプフォロー方向と反対の方向に、脱出角度を達成するまで回転する。その場で回転中に、後方に制限の原因が出現した場合、ロボット１００はそれらを避けるため、前進する。前方の制限の原因に遭遇した場合、その場での回転は中断される。その場での回転の完了後、脱出の成功は、以下の順序で判定される。第一に、前方の制限の原因の検出によりその場での回転が中断された場合、その場での回転の角度の進行と、８０°から１２０°の間の乱数を生成することにより算出される最少脱出角度とが比較される。角度の進行がこの量を超えない場合、リバースバンプフォローターンアウト行動１３２０と同様な操作が実行される。これは、ロボット１００をリバースバンプフォローを継続するように導く方向に戻すために行われる。第二に、前方の制限の原因の検出によりその場での回転が中断された場合で、かつ、角度の進行が、上のように算出された最小脱出角度を超えているが、行動が開始される時に算出された脱出角度には及ばなかった場合、以下のことが行われる。リバースバンプフォローはキャンセルされ、その場での回転を止めた制限の原因が衝突であった場合には前方バンプフォローが始動させられる。これにより、ロボット１００が、新しいキャニオンを検出すること及びリバースバンプフォローを再始動することなしに、窮地から抜ける道を発見する可能性を高める。第三に、行動の開始時点で算出された脱出角度が達成されることによって、その場での回転が完了した場合、リバースバンプフォローの起動は取り消される。
【００９２】
リバースバンプフォローターンアウト行動１３２０は、障害物に向かって重ねて孤状に動く間に、前進できるように、ロボット１００を障害物に向かわせるように試みる。ロボット１００の場合、筐体２００の長方形の前方部分２１０は、ある時点で、障害物にぶつかり、ロボット１００がその場でさらに回転することを妨げると考えられるので、円形ロボットの場合のようにその場で回転することだけでは十分ではない。この問題を避けるため、ロボット１００は、障害物からのスペースを維持するために、狭い円弧を辿る。後方バンパーが起動された結果として、リバースバンプフォローアークイン行動１３３０の中で実行される、円弧に沿って後退することが終了した後、リバースバンプフォローターンアウト行動１３２０が開始される。リバースバンプフォローターンアウト行動１３２０の最初の仕事は、バンパー３００を後方の衝突から解放することである。このことは、バンパー３００が解放されるまで、ロボット１００を前方に駆動することで行なわれる。この過程において、前方の制限の原因は、以下のような方法で処理される。前方左の制限の原因は、ロボット１００を時計回りに回転させる。前方右の制限の原因は、ロボット１００を反時計回りに回転させる。バンパー３００が解放された後、リバースバンプフォローアークイン行動１３３０の次の繰返しのためにロボット１００に新しい方向を与えるため、ロボット１００は、それが順方向に進まなければならない、制限されている任意の円弧の範囲と、角度の進行を算出しなければならない。ロボット１００は、算出された角度の進行が達成されるまで、円弧に沿って進む。この間、ロボット１００は、辿られている障害物に対してロボット１００の反対側にある、前方制限センサ７１０、７３０、８００（例えば、クリフセンサ７１０、近接センサ７３０、及び／又は衝突センサ８００）に反応する。これが検出されると、ロボット１００は、辿っている円弧と同じ回転方向に、その場で回転する。算出された角度の進行が達成されるか、又は、ロボット１００の辿られている障害物と同じ側面の前方制限センサ７１０、７３０、８００が反応すると、リバースバンプフォローターンアウト行動１３２０は終了する。この行動の後、リバースバンプフォロースイング行動１３１０を始動するかどうか決定するために、乱数発生器が利用される。リバースバンプフォロースイング行動１３１０を始動する確率は、最低でも２０％となる。リバースバンプフォローターンアウト行動１３２０の角度の進行が２°から５°の間であった場合、確率は約５０％にまで増加する。角度の進行が２°未満の場合、確率は約１００％となる。
【００９３】
リバースバンプフォローアークイン行動１３３０は、浅く始まりその行動の経過時間とともに次第にきつくなる円弧の上を後方に走ることによって、ロボット１００の片方の側面を障害物に近づけたまま、前進するように試みる。リバースバンプフォローアークイン行動１３３０は、ロボット１００がリバースバンプフォローモード１３００にあって、かつ、その他のリバースバンプフォロー行動１３１０、１３２０のどれも起動されていない場合に実行される。円弧の上を移動する間、ロボット１００は、ロボット１００の障害物と反対の側面の前方制限センサ７１０、７３０、８００（例えば、クリフセンサ７１０、近接センサ７３０、及び／又は衝突センサ８００）に反応する。これは、辿られている円弧と反対の方向にその場で回転することによって行われる。リバースバンプフォローアークイン行動１３３０は、後方制限センサ７１０、８００（例えば、クリフセンサ７１０及び／又は衝突センサ８００）が反応した時か、又は、円弧が１２０°を超える角度の進行の状態となった時に終了する。
【００９４】
崖回避グループ行動１４００は、脱出行動のグループで、以下の、高い方から低い方に優先順位付けされている下位行動を含む：１）崖回避後方１４１０、及び、２）崖回避１４２０。図４を参照すると、好適な実施において、ロボット１００は、前方右、前方左、後方右及び後方左のロボット１００の端に位置する４つのクリフセンサ７１０を持つ。前方右及び前方左のクリフセンサ７１０Ａ、７１０Ｂは、ロボット１００の前方の角それぞれのうちのどちらでも、崖の上を移動することを検出する。駆動システム４００が前方エッジの近くに設置されている清掃部５００の後方に位置しているため、ロボット１００は、ロボット１００の感知できるほどの量が崖の境界の上を移動する前に、後退することができる。後方右及び後方左のクリフセンサ７１０Ｃ、７１０Ｄは、それぞれ右及び左の駆動車輪４１０、４２０のすぐ後方に置かれる。結果として、後方右及び後方左のクリフセンサ７１０Ｃ、７１０Ｄは、駆動車輪４１０、４２０が崖の境界の上を動く前に、後方に崖から落ちる角度で走ることを防ぐように、ロボット１００の後方部分が崖の境界の上を動くことを検出する。もしロボット１００が、筐体２００の後方部分２２０の中央部分に沿ってのみ、後方クリフセンサ７１０を含んでいたならば、ロボット１００は、後方に曲がって走り、崖の境界を検出する前に駆動車輪４１０、４２０を崖の境界の上に動かしてしまうかもしれない。
【００９５】
崖回避後方行動１４１０は、後方クリフセンサ７１０Ｃ、７１０Ｄが起動されると、いつでも、実行される。崖回避１４２０よりも優先度が高いため、前方クリフセンサ７１０Ａ、７１０Ｂもまた、この行動１４１０において取り扱われる。崖回避後方行動１４１０の開始時点で、時計回り、または、反時計回りの脱出方向が選択される。この決定は、以下の順序で行なわれる。１）前方左クリフセンサ７１０Ｂが反応した場合、時計回りに設定する。２）前方右クリフセンサ７１０Ａが反応した場合、反時計回りに設定する。３）後方右クリフセンサ７１０Ｃが反応した場合、時計回りに設定する。４）後方左クリフセンサ７１０Ｄが反応した場合、反時計回りに設定する。方向が設定された後、ロボット１００は、駆動車輪４１０、４２０に中心を置かれた円弧に沿って、指定された方向に回転する。移動する間、前方クリフセンサ７１０が監視され、以下のように移動方向を変更するために利用される。前方右クリフセンサ７１０Ａが反応した場合、ロボット１００はその場で反時計回りに回転する。前方左クリフセンサ７１０Ｂが反応した場合、ロボット１００はその場で時計回りに回転する。ロボット１００は、上述の通り、後方クリフセンサ７１０Ｃ、７１０Ｄの両方が反応しなくなるまで、移動を続ける。
【００９６】
崖回避行動１４２０は、ロボット１００のクリフセンサ７１０Ａ、７１０Ｂだけを取り扱い、主としてロボットが前方に走行している時に実行される。崖回避行動１４２０の開始時点で、前方クリフセンサ７１０Ａ、７１０Ｂのどちらが反応しているかに基づき、脱出方向が選択される。前方左クリフセンサ７１０Ｂだけが反応した場合、時計回りの脱出方向が選択される。前方右クリフセンサ７１０Ａだけが反応した場合、反時計回りの脱出方向が選択される。前方クリフセンサ７１０Ａ、７１０Ｂの両方が反応した場合、脱出方向は無作為に選択される。脱出角度は、２５°から５０°の間で無作為に選択される。崖回避行動１４２０は、前方クリフセンサ７１０Ａ、７１０Ｂの両方が反応しなくなるまで、真っ直ぐに後退することで始まる。その後、ロボット１００は、脱出角度に達するまで、その場で回転する。その場での回転一環として、クリフセンサ７１０Ａ、７１０Ｂのどちらでも再度反応した場合、崖回避行動１４２０全体が再度開始され、従って、再度実行される。
【００９７】
後方跳ね返り行動１５００は、後方からバンパー３００が起動された時に作動する。このことは、通常、跳ね返り行動１７００の一部分として、バンパー３００の前方部分を開放するために、ロボット１００が後方に走行する時に起こる。ロボット１００は、バンパー３００が解放されるまで、前方に走行し、そして、まさに実行しようとしているその場での回転が、後方の衝突を再度始動させない可能性を減らすために、新たに５ｍｍ、前方に進み続ける。その場での回転の方向は、最初の後方でのバンパーの衝突の方向に基づいて決定される。衝突がロボット１００の後方右側面で生じた場合、反時計回りが選択される。衝突がロボット１００の後方左側面で生じた場合、時計回りが選択される。衝突が後方の中央部分であった場合、方向は無作為に選択される。脱出角度は、約１０°から約２００°の間から無作為に選択される。ロボット１００は、脱出角度に達するまで、選択された方向に回転する。
【００９８】
バンプフォローグループ１６００は、以下の、優先順位が高い方から低い方の下位行動を含む：１．バンプフォローウォールアライン１６１０、２．バンプフォローアークイン１６２０。バンプフォローは、汚れていない、散らかった領域から脱出するために利用される。これはまた、床面積の至る所において均等にロボット１００を分布させることを目的として、壁面追従させるために利用される。
【００９９】
バンプフォローウォールアライン行動１６１０は、ロボット１００の側面を、壁のような障害物に揃えるために設計されている。バンプフォローの方向が時計回りの場合、ロボットの左側面が壁を背にするようにすることを目的とする。その方向が反時計回りの場合、ロボットの右側面が壁を背にするようにすることを目的とする。バンプフォローが有効とされている時、バンプフォローウォールアライン行動１６１０は、前方の隆起が反応した時に始まる。バンパーの衝突の位置は、バンプフォローアークイン行動１６２０の新たな繰り返しの実行の前に、ロボット１００がその場でどれだけ回転すべきかを決定するために利用される。バンパー３００の障害物に近くにあるべきではない側面において、バンパー３００が反応した場合、ロボット１００は、その場での回転の目標を約２５°から約４５°の間に設定する。この、より大きい増加量は、配置処理の時間を節約する。障害物の近くにあるべき側面においてバンパー３００が反応した場合、ロボット１００は、バンパー３００を障害物の方により近づける方向に回転する。この旋回の目的は、バンパー３００が束縛されたままとなる傾向があるか、または、解除されているか、確かめることにある。解除される場合、ロボット１００がまだ壁に対して非常に浅い角度とはなっていないことを意味し、約５°から約２５°の間の、その場での回転の目標が選択される。そうでなければ、ロボット１００は、恐らく、壁に対して非常に浅い角度となっているので、約１°から約５°の間の、その場での回転の目標が選択される。その場での回転の目標が５°以上に設定される場合、ロボット１００は、バンパー３００が解除されるまで後退する。ロボット１００は、ロボット１００の前方を障害物から離れるように回転させる方向に、目標の角度に達するまで、その場で回転する。その場で回転中にバンパー３００が再度反応すると、ロボット１００はそれを解除するのに十分なだけ後退する。
【０１００】
バンプフォローアークイン行動１６２０は、バンプフォローモード１６００が有効にされ、バンプフォローウォールアライン行動１６１０が機能していない時に実行される。ロボット１００は、前方に進行するために、初めは、浅い円弧を前方に走る。時間が経過するにつれて、障害物と接触するようにロボット１００を戻すために、円弧は次第にきつくなる。これにより、障害物は接近して追従されるようになり、このことはロボット１００がそれからの逃げ道を見つけることを手助けする。バンプフォローモード１６００が、散乱物を通り抜けて動くために選択された場合、ロボット１００はバンパーの衝突無しで最大約１００°の角度の進行の間、弧状に動き続けることができる。その時点で、バンプフォロー１６００は、ロボット脱出により、終了したとみなされる。ロボット１００をその場所の至る所において分布させるためにバンプフォローモード１６００が選択された場合、壁の角を曲がることを可能にするため、バンパーの衝突無しで最大約２１０°まで、弧状に動き続けることができる。この時点で、壁は失われたものとみなされ、バンプフォロー行動１６００は終了する。
【０１０１】
跳ね返り行動１７００は、バンパー３００が前方から起動された時に実行される。ロボット１００は、バンパー３００が解放されるまで、後退する。その後、まさに実行しようとしているその場での回転がバンパー３００を前方から再度反応させる可能性を減らすために、約３０ｍｍ後退を続ける。この大きな追加の間隔は、バンパー３００の前方部分が長方形であり、その場で回転する時にバンパーの角が回って障害物と接触する可能性があるため、必要とされる。その場での回転の方向は、バンパー３００の元の前方衝突の方向に基づいて決められる。衝突がロボット１００の前方右側面から生じる場合、反時計回りが選択される。衝突がロボット１００の前方左側面から生じる場合、時計回りが選択される。衝突が前方の中央部分の場合、方向は無作為に選択される。脱出角度は、約１０°から約２００°の間で無作為に選択される。ロボット１００は、脱出角度に達するまで、選択された方向を回る。
【０１０２】
走行行動１８００は、その他の行動が起動されていない時に実行される。ロボット１００は、その他の行動を引き起こす事象に遭遇するまで、真っ直ぐに走る。
【０１０３】
ロボット１００は、一般に反射行動とは考えられない並列処理である、同時処理２０００の動作を持続する。記述された通り、フィルタとコンディショニング２４００及びドライバ２５００は、生の信号を解釈し、形式を変換することができる。これらの処理は、反射行動とはみなされず、モータ駆動またはその他の作動装置に対して直接に制御を行うことはない。
【０１０４】
いくつかの並列処理２０００は、様々な行動の起動及び実行を支援するために重要である。これらの処理は、例えば、６４ヘルツの周波数で評価されるソフトウエア有限状態機械である。１周期は、処理間隔として見なされる。
【０１０５】
いくつかの実施において、ロボット１００は、キャニオンを特定することを支援する、キャニオン検出処理２１００を含む。キャニオンは、４つの信号を監視することによって、宣言される。これらの信号のそれぞれは、処理間隔ごとに評価される。入力信号が真の場合、出力信号も真となる。入力信号が偽となる１００の連続した処理間隔の後、出力信号は偽となる。４つの入力信号は、以下のように評価される：１）前方左クリフセンサ７１０Ｂが機能していて、前方右クリフセンサ７１０Ａが機能していないか、または、後方左のクリフサンセ７１０Ｄが機能していて、後方右のクリフセンサが機能していない。２）前方右のクリフセンサ７１０Ａが機能していて、前方左のクリフセンサ７１０Ｂが機能していないか、または、後方右のクリフセンサ７１０Ｃが機能していて、後方左のクリフセンサ７１０Ｄが機能していない。３）バンパー３００は、ロボット１００の前方左側面において押されている。４）バンパー３００は、ロボット１００の前方右側面において押されている。これらの信号の必要な処理の行なわれたものは、それぞれ以下のように名付けられる：  １）崖左拘束；２）崖右拘束；３）衝突左拘束；及び４）衝突右拘束。崖左拘束または衝突左拘束が真であると同時に、崖右拘束または衝突右拘束が真である時、キャニオンが検出される。キャニオンが検出されると、リバースバンプフォローグループ１３００が有効にされる。
【０１０６】
いくつかの実施において、ロボット１００は、前方進行処理２２００を含む。前方進行処理２２００において、各処理間隔で、ロボット１００の前方進行は積算器に加算され、それと同時に１ミリメートルに対応する固定の距離の量が減算される。積算器が１００ミリメートルに達すると、前方進行は、真と宣言される。積算器が２００ミリメートルを超えることは許容されていない。前方進行が１０秒間真となる時、リバースバンプフォローグループ１３００はロボットが移動している過度に取り散らかされた環境からの脱出を可能とするために、リバースバンプフォローグループ１３００を有効にする。
【０１０７】
いくつかの実施において、ロボット１００は、リバースバンプフォローアークイン進行処理２３００を含む。ロボット１００がリバースバンプフォローモード１３００にある間、リバースバンプフォローアークイン行動１３３０の各繰り返しの前方進行は、ローパスフィルタに送り込まれる。リバースバンプフォローの開始時点で、このフィルタは、６０ミリメートルに初期化される。出力が５０ミリメートルを下回った場合、進行中の円弧は、良くないものとみなされる。このことは、リバースバンプフォロー方向、すなわち、ロボット１００の主要な障害物の仮定されている側面の切り替えを引き起こす。
【０１０８】
ここに記述されたものと組み合わせることのできる、その他のロボットの詳細及び特徴は、以下のこれとともに同時に出願された、「ＡＵＴＯＮＯＭＯＵＳ  ＣＯＶＥＲ  ＲＯＢＯＴ」と表題を付けられ、整理番号＿＿＿＿＿＿の割り当てられたものと、「ＡＵＴＯＮＯＭＵＯＵＳ  ＣＯＶＥＲＡＧＥ  ＲＯＢＯＴ  ＳＥＮＳＩＮＧ」と表題を付けられ、整理番号＿＿＿＿＿＿の割り当てられた米国特許出願において見いだすことができる。ここで、上述の出願の全内容は、参照することにより、本明細書に組み込まれる。
【０１０９】
いくつかの実施について説明がなされた。それにもかかわらず、本開示の趣旨と範囲を逸脱することなく、様々な改変行うことができることが理解されるであろう。従って、その他の実施も、以下の特許請求の範囲内となる。
【図１】
2014111190.tif 000003
【図２】
2014111190.tif 000004
【図３】
2014111190.tif 000005
【図４】
2014111190.tif 000006
【図５】
2014111190.tif 000007
【図６】
2014111190.tif 000008
【図７】
2014111190.tif 000009
【図８】
2014111190.tif 000010
【図９】
2014111190.tif 000011
【図１０】
2014111190.tif 000012
【図１１Ａ】
2014111190.tif 000013
【図１１Ｂ】
2014111190.tif 000014
【図１１Ｃ】
2014111190.tif 000015
【図１２Ａ】
2014111190.tif 000016
【図１２Ｂ】
2014111190.tif 000017
【図１３Ａ】
2014111190.tif 000018
【図１３Ｂ】
2014111190.tif 000019
【図１３Ｃ】
2014111190.tif 000020
【図１３Ｄ】
2014111190.tif 000021
【図１４】
2014111190.tif 000022
【図１５】
2014111190.tif 000023
【図１６】
2014111190.tif 000024
【図１７】
2014111190.tif 000025
【図１８】
2014111190.tif 000026
【図１９】
2014111190.tif 000027
【図２０】
2014111190.tif 000028
【図２１】
2014111190.tif 000029
【図２２】
2014111190.tif 000030
【図２３】
2014111190.tif 000031
【図２４】
2014111190.tif 000032
【図２５】
2014111190.tif 000033
【図２６】
2014111190.tif 000034
【図２７】
2014111190.tif 000035
【図２８】
2014111190.tif 000036
【図２９】
2014111190.tif 000037
【図３０】
2014111190.tif 000038
【図３１】
2014111190.tif 000039
【図３２】
2014111190.tif 000040
【図３３】
2014111190.tif 000041