(57)【要約】【課題】機器本体が繰り返し状態に陥ることなく先に進めるようにした賢い自走式機器を提供することを目的とする。【解決手段】機器本体１００が障害物として検出している壁面に沿うように移動する場合において、位置記憶手段１０５に記憶している過去の位置から現在の位置までの移動軌跡が閉じた状態になった時に、壁面に対して機器本体１００が外回りまたは内回りに移動したかにより機器本体１００の動作の切替え判断を行うようにした。これによって、機器本体１００が壁面に沿って移動する場合、繰り返し走行を検出し、同時に移動軌跡から外回りであるか内回りであるかを判断することによって、状況に合わせて適切な回避動作を実行する。このため機器本体１００が繰り返し状態に陥ることを効率的に回避し、先に進んで部屋などの大きさを見積もることや、隅の清掃を行うことができる。【選択図】図１
2009129062.tif 000002
【特許請求の範囲】
【請求項１】
機器本体を移動させる移動手段と、この移動手段を操作して機器本体の移動をコントロールするコントロール手段と、この機器本体に電力を供給する電池と、この機器本体周辺の障害物を検出する障害物検出手段と、移動手段により移動した機器本体の位置を算出する位置算出手段と、この位置算出手段により算出した位置を記憶する位置記憶手段とを備え、機器本体が障害物として検出している壁面に沿うように移動する場合において、前記位置記憶手段に記憶している過去の位置から現在の位置までの移動軌跡が閉じた状態になった時に、壁面に対して機器本体が外回りまたは内回りに移動したかにより機器本体の動作の切替え判断を行うようにした自走式機器。
【請求項２】
機器本体の動作の切替え判断によって、外回りの場合に外回り回避動作を行う請求項１に記載の自走式機器。
【請求項３】
外回り回避動作は、現在の機器本体の移動してきた軌跡の回転方向に対して反対方向に特定の角度回転移動する請求項１または２に記載の自走式機器。
【請求項４】
外回り回避動作は、位置記憶手段によって記憶している過去に移動した位置の方向以外へ移動する請求項１または２に記載の自走式機器。
【請求項５】
機器本体の動作の切替え判断によって、内回りの場合に内回り回避動作を行う請求項１〜４のいずれか１項に記載の自走式機器。
【請求項６】
内回り回避動作は、沿ってきた壁面を逆方向に沿うように移動する請求項１〜５のいずれか１項に記載の自走式機器。
【請求項７】
機器本体の向いている方向を算出する方向算出手段と、方向算出手段で算出した方向を記憶する方向記憶手段とを備え、機器本体の向いている方向を位置記憶手段に記憶している過去の位置から現在の位置までの移動軌跡が閉じているかの判断に利用する請求項１〜６のいずれか１項に記載の自走式機器。
【請求項８】
位置算出手段で算出する位置は、所定大きさの四角形領域毎の単位として扱う請求項１〜７のいずれか１項に記載の自走式機器。
【請求項９】
位置記憶手段に記憶している過去の位置から現在の位置までの移動軌跡が閉じた状態である判断は、現在の位置から一定距離離れたところから行う請求項１〜８のいずれか１項に記載の自走式機器。
【請求項１０】
位置記憶手段に記憶している過去の位置から現在の位置までの移動軌跡が閉じた状態である判断は、過去の位置が現在位置の機器本体の移動方向付近であることを検出する請求項１〜９のいずれか１項に記載の自走式機器。
【請求項１１】
ユーザに機器本体の状況を報知する報知手段を備え、移動軌跡が閉じた状態であることを機器本体が自動的に認識したことをユーザに伝える請求項１〜１０のいずれか１項に記載の自走式機器。
【請求項１２】
請求項１〜１１のいずれか１項に記載の自走式機器における機能の少なくとも一部をコンピュータに実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は自動的に屋内あるいは屋外を移動して清掃や巡回などの作業を行う自走式機器およびそのプログラムに関するものである。
【背景技術】
【０００２】
従来、この種の自走式機器は、部屋あるいは野外などの走行空間の大きさを推定することや、走行空間の隅を重点的に清掃するなどのために、壁面を沿うように走行させる場合があった（例えば、特許文献１、２参照）。
【特許文献１】特開平５−４６２３９号公報
【特許文献２】特開２００５−３５２７０７号公報
【発明の開示】
【発明が解決しようとする課題】
【０００３】
しかしながら、前記従来の構成では、機器本体を壁面に沿って部屋を走行させるときに、例えば、部屋を一周する途中に機器本体の幅とほぼ同じくらいで通過可能な通路があると、走行毎にこの通路を通過する場合と迂回する場合に分かれることがある。また、同じ通路であっても進入する方向によって通過する場合と迂回する場合がある。これは、機器本体の置かれている状況によりセンサの入力状態が異なることや、機器本体と通路との相対的な位置によって、この通路を通過する場合と迂回する場合の判断にばらつきが生じるためである。このようなばらつきが発生すると、例えば、障害物であるソファーの周りを何度も繰り返し沿うように走行して先に進めなくなる状況が発生したり、また、障害物であるテーブル下の隙間に入ってテーブル下を何度も繰り返し沿うようになり先に進めなくなる状況が発生したりする。
【０００４】
障害物の何も無いような部屋ではこのような現象は発生することはほとんど考えられないが、日常的に生活している生活空間内では、椅子やテーブルやソファーなどさまざまな障害物が常時設置されているので、このような繰り返し同じところを走行するような状況に陥りやすくなる。また、このような繰り返し状態に陥った場合、本来の目的である走行空間の大きさを推測することや、走行空間の隅をくまなく清掃することが困難となる。また、このような繰り返し状態をしばらく続けていると偶然抜けて期待する壁面を沿うようになるときもあるが、同じところを不必要に走行していたため、走行に時間が掛かったり、無駄に電池容量を消費したりすることになる。また、ユーザが機器本体の動きを見ている場合に単調な動作であるので、このような自走式機器についてあまり賢くないという印象を持たせてしまうことになる。
【０００５】
本発明は、前記従来の課題を解決するもので、機器本体が繰り返し状態に陥ることなく先に進めるようにした賢い自走式機器およびそのプログラムを提供することを目的とする。
【課題を解決するための手段】
【０００６】
前記従来の課題を解決するために、本発明の自走式機器およびそのプログラムは、機器本体が障害物として検出している壁面に沿うように移動する場合において、位置記憶手段に記憶している過去の位置から現在の位置までの移動軌跡が閉じた状態になった時に、壁面に対して機器本体が外回りまたは内回りに移動したかにより機器本体の動作の切替え判断を行うようにしたものである。
【０００７】
これによって、機器本体が部屋あるいは野外の壁面に沿って移動する場合、繰り返し走行を検出し、同時に移動軌跡から外回りであるか内回りであるかを判断することによって、状況に合わせて適切な回避動作を実行する。このため機器本体が繰り返し状態に陥ることを効率的に回避し、先に進んで部屋あるいは野外の全体の大きさを見積もることや、全体の隅の清掃を効率的に行うことができる賢い自走式機器およびそのプログラムが提供できる。
【発明の効果】
【０００８】
本発明の自走式機器およびそのプログラムは、機器本体が繰り返し状態に陥ることを効率的に回避し、先に進んで部屋あるいは野外の全体の大きさを見積もることや、全体の隅の清掃を効率的に行うことができる。
【発明を実施するための最良の形態】
【０００９】
第１の発明は、機器本体を移動させる移動手段と、この移動手段を操作して機器本体の移動をコントロールするコントロール手段と、この機器本体に電力を供給する電池と、この機器本体周辺の障害物を検出する障害物検出手段と、移動手段により移動した機器本体の位置を算出する位置算出手段と、この位置算出手段により算出した位置を記憶する位置記憶手段とを備え、機器本体が障害物として検出している壁面に沿うように移動する場合において、前記位置記憶手段に記憶している過去の位置から現在の位置までの移動軌跡が閉じた状態になった時に、壁面に対して機器本体が外回りまたは内回りに移動したかにより機器本体の動作の切替え判断を行うようにした自走式機器とする。これによって、機器本体が部屋あるいは野外の壁面に沿って移動する場合、繰り返し走行を検出し、同時に移動軌跡から外回りであるか内回りであるかを判断することによって、状況に合わせて適切な回避動作を実行する。このため機器本体が繰り返し状態に陥ることを効率的に回避し、先に進んで部屋あるいは野外の全体の大きさを見積もることや、全体の隅の清掃を効率的に行うことができる賢い自走式機器が提供できる。
【００１０】
第２の発明は、特に、第１の発明において、機器本体の動作の切替え判断によって、外回りの場合に外回り回避動作を行うことにより、沿っている壁面に対して外回りのときに有効な回避動作を行うことができる。
【００１１】
第３の発明は、特に、第１または第２の発明において、外回り回避動作は、現在の機器本体の移動してきた軌跡の回転方向に対して反対方向に特定の角度回転移動することにより、例えば６０度の角度回転移動することで、外回りで一周した障害物から本来沿うべき壁面へ移動することができる。
【００１２】
第４の発明は、特に、第１または第２の発明において、外回り回避動作は、位置記憶手段によって記憶している過去に移動した位置の方向以外へ移動することにより、外回りで一周した障害物から本来沿うべき壁面へ効率よく移動することができる。
【００１３】
第５の発明は、特に、第１〜第４のいずれか１つの発明において、機器本体の動作の切替え判断によって、内回りの場合に内回り回避動作を行うことにより、沿っている壁面に対して内回りのときに有効な回避動作を行うことができる。
【００１４】
第６の発明は、特に、第１〜第５のいずれか１つの発明において、内回り回避動作は、沿ってきた壁面を逆方向に沿うように移動することにより、内回りで回った閉鎖空間から効率よく脱出することができる。
【００１５】
第７の発明は、特に、第１〜第６のいずれか１つの発明において、機器本体の向いている方向を算出する方向算出手段と、方向算出手段で算出した方向を記憶する方向記憶手段とを備え、機器本体の向いている方向を位置記憶手段に記憶している過去の位置から現在の位置までの移動軌跡が閉じているかの判断に利用することにより、同じところを通過したかどうかの判断精度を高めることができる。
【００１６】
第８の発明は、特に、第１〜第７のいずれか１つの発明において、位置算出手段で算出する位置は、所定大きさの四角形領域毎の単位として扱うことにより、例えば２０ｃｍ四方の四角形領域毎の単位とすることで、移動手段による移動時のすべりや、位置算出手段の計算誤差などを吸収し、さらに扱う位置の情報を少なくしてより少ないメモリで動作することができる。
【００１７】
第９の発明は、特に、第１〜第８のいずれか１つの発明において、位置記憶手段に記憶している過去の位置から現在の位置までの移動軌跡が閉じた状態である判断は、現在の位置から一定距離離れたところから行うことにより、誤判断を防ぐことができる。
【００１８】
第１０の発明は、特に、第１〜第９のいずれか１つの発明において、位置記憶手段に記憶している過去の位置から現在の位置までの移動軌跡が閉じた状態である判断は、過去の位置が現在位置の機器本体の移動方向付近であることを検出することにより、移動軌跡が閉じる以前に検出して状況の判断を行うことができるので、例えば内回りのような場合に出口を通過する前に回避することができる。
【００１９】
第１１の発明は、特に、第１〜第１０のいずれか１つの発明において、ユーザに機器本体の状況を報知する報知手段を備え、移動軌跡が閉じた状態であることを機器本体が自動的に認識したことをユーザに伝えることにより、ユーザは同じところを繰り返し走行しないかどうか心配する必要がなく、さらに自動的に認識したことによってユーザは自走式機器に対して知的に感じることができる。
【００２０】
第１２の発明は、特に、第１〜第１１のいずれか１つの発明における自走式機器の機能の少なくとも一部をコンピュータに実行させるためのプログラムにすることで、汎用的なコンピュータを用いて自走式機器の機能の少なくとも一部を容易に実現することができる。
【００２１】
以下、本発明の実施の形態について、図面を参照しながら説明する。なお、この実施の形態によって本発明が限定されるものではない。
【００２２】
（実施の形態１）
図１〜図６は、本発明の実施の形態１における自走式機器を示している。
【００２３】
図１に示すように、機器本体１００は、少なくとも機器本体１００の移動をコントロールするコントロール手段１０１、コントロール手段１０１により操作され機器本体１００を移動させる移動輪などの移動手段１０２、機器本体１００の周辺にある障害物を検出する障害物検出手段１０３、移動手段１０２により移動した機器本体１００の位置を算出する位置算出手段１０４、位置算出手段１０４にて算出した機器本体１００の位置を記憶する位置記憶手段１０５、機器本体１００を動作させるために必要な電力を供給する電池１０６を備えている。
【００２４】
例えば、障害物検出手段１０３によって検出した障害物との距離を一定に保つように、コントロール手段１０１によって移動手段１０２を制御することにより、機器本体１００を部屋の壁面などを沿うように走行させることができる。また、走行中に位置算出手段１０４で機器本体１００の自己位置を算出し、位置記憶手段１０５へ定期的に記憶していく。これにより、位置記憶手段１０５に記憶している過去の位置から現在の位置の軌跡が閉じた状態になったときに、閉じた軌跡が沿っている壁面に対して外回りか内回りかによって適切な回避動作を行うことで、繰り返し同じところを走行することを回避することができるようになる。
【００２５】
以下に各手段の詳細について説明する。
【００２６】
コントロール手段１０１は、例えば、ＣＰＵ、メモリで構成されている。機器本体１００の移動をコントロールするために、移動手段１０２への制御信号を生成させることや、障害物検出時に障害物検出手段１０３への制御信号を生成させる。また、例えば一定周期あるいは一定距離毎など、予め決めたタイミングで位置算出手段１０４から取得した位置情報を、位置記憶手段１０５へ記憶させる制御を行う。また、位置記憶手段１０５に蓄積している位置情報を取得することで、過去から現在の移動軌跡が閉じたかどうかの判断を行い、さらに沿っている壁面に対して外回りか内回りであるかの判断を行う。
【００２７】
構成としては、他にも、ＣＰＵ、メモリを１つにした１チップマイコンや、ＦＰＧＡ、ＤＳＰなどの他の演算可能なものであっても構わない。また、ＨＤＤやＤＶＤやフラッシュメモリなどの記録装置と一緒に構成することで、メモリ容量を大量に利用するような複雑な処理をすることも可能にすることができる。さらに、無線ＬＡＮなどの通信装置と一緒に構成することで、機器本体１００と外部機器との通信が可能になり、蓄積しているデータの送信や、新たな制御パターンの受信など、さらに高度な処理を可能にすることができる。
【００２８】
移動手段１０２のコントロールには、移動手段１０２として利用する装置にあわせて、ＰＷＭ波形などによる制御やシリアル通信による位置の設定などのさまざまな形態の制御をさせることが可能である。また、障害物検出手段１０３を制御することで検出が必要なタイミングに合わせて実行させることで、電池１０６の消費電力を節約しながら測距を行うことも可能となる。他にもコントロール手段１０１は汎用的に利用することができるので、例えば、音声発生やカメラ制御など他の自走式機器に付随するさまざまな装置のコントロールとしても、共用で利用することが可能である。
【００２９】
移動手段１０２は、例えば、２つのモータと２つの移動輪を左右に水平に配置するように構成することで、コントロール手段１０１からの制御信号によって、左右のモータの回転数を変化させることにより、移動輪が動作して機器本体１００が移動する。移動手段は、モータと移動輪の組み合わせ以外にも、複数のサーボモータを組み合わせた関節型のアクチュエータを組み合わせた２本足や４本足などの多足移動可能なものや、利用するモータは、リニアモータなど物理的な動作が可能なものであれば構わない。
【００３０】
障害物検出手段１０３は、例えば、光の反射を利用して、障害物との距離を計測することが可能な測距センサや、超音波の反射を利用して、障害物との距離を計測することが可能な超音波センサや、障害物が機器本体１００に接触したときのスイッチ作動、あるいは電圧の変化を検出することで、接触を検出するバンパの役割をする接触センサなどによって構成することが可能である。なお、これらのセンサを機器本体１００に複数個組み込んでおくことで、各センサの特性として検出が困難な状態であっても検出能力の相互補間を行うことができるので、検出精度を上げることが可能になる。他にも、ＣＣＤカメラなどの映像を取り込むセンサや、レーザ、電磁波、磁力などの性質を利用したセンサを障害物の検出を行う機能として利用することが可能である。
【００３１】
位置算出手段１０４は、例えば、移動輪などに備え付けた回転数をカウントするエンコーダや移動時の加速度を検出する加速度センサや位置情報を受信するＧＰＳ装置などである。例えば、２輪駆動の場合、移動手段１０２の左右の移動輪に備え付けたエンコーダの発生するパルスをそれぞれカウントすることで、左右の移動輪の移動量から機器本体１００の位置を算出することができる。さらに、加速度センサやジャイロのような他の装置と組み合わせることで、位置の算出精度を高めることができる。また、ＧＰＳ装置のように位置情報を直接受信するような方法で位置を算出しても構わない。
【００３２】
また、他の位置の算出方法として、移動手段１０２への位置の命令から位置を算出して求めることも可能である。例えば、左右２つの移動輪を有する移動手段１０２の場合は、左右の移動輪の速度設定と、設定経過時間から移動した距離と回転角度を算出することができる。このようにすることにより、位置算出手段１０４は、コントロール手段１０１で代用することができるのでより安価に作成することも可能となる。位置の情報は、例えば（Ｘ、Ｙ）で表す２次元座標あるいは３次元座標のユークリッド空間、あるいは角度と距離で表す角座標系などであってもよく、機器本体１００の位置として表せるものであれば特定されるものではない。
【００３３】
位置記憶手段１０５は、情報を記憶する機能を有するものであり、例えば、ＳＤカードなどに代表されるフラッシュメモリや、ＣＰＵと組み合わせて利用するＤＤＲメモリや、ハードディスクや、光ディスクである。また、コントロール手段１０１内に内蔵されているメモリを利用することで安価に構成することも可能である。また、無線ＬＡＮや、Ｂｌｕｅｔｏｏｔｈなどの無線技術を利用することで、機器本体１００の外部に設けたメモリを利用することができる。さらに、メモリを複数の自走式機器や、他の装置と共有して利用することで、共通の位置情報を利用する構成にすることも可能である。また、位置の記憶を行う場合に、割り当てているメモリをリング状のバッファとして扱うことで、過去の古い位置情報を削除しながら、新しい位置の記憶を継続していくことが可能となる。
【００３４】
電池１０６は、例えば、ニッケル水素２次電池にすることで、機器本体１００への電力の供給が可能である。他にも、機器本体１００への電力が供給可能なものであれば、アルカリ乾電池やオキシライド乾電池などの１次電池や、ニッケルカドミウム２次電池、リチウムイオン２次電池、リチウムポリマー２次電池、燃料電池などでも構わない。さらに、有線の電線を使って外部のＡＣ電源から電力を供給することや、マイクロウェーブなどの外部から非接触で電力を供給するなど、機器本体１００が動作中に電力を供給できるものであれば構わない。
【００３５】
次に、図２の外回りに壁面を沿うときに回避するフローチャート、および図３の外回りに壁面を沿うときに回避する例を用いて、機器本体１００が障害物検出手段１０３によって検出した障害物との距離を一定に保つように、コントロール手段１０１によって移動手段１０２を制御して、部屋の壁面などを沿うように走行させるときに、繰り返し同じところを走行することを回避する動作の流れについて説明する。
【００３６】
図２のステップＳ２０１から動作が開始する。ステップＳ２０１では、障害物検出手段１０３で検出している障害物との距離を一定に保つようにコントロール手段１０１で移動手段１０２の制御を行う。例えば、障害物との現在距離と目標距離との差分や変化量などから移動手段１０２の制御信号をコントロール手段１０１により制御することで、壁面との距離を一定に保つようにすることが可能である。壁面を沿う走行を行いながらステップＳ２０２に動作を移行する。
【００３７】
ステップＳ２０２では、位置算出手段１０４は機器本体１００の現在位置情報を取得する。位置の情報は、例えば平面空間を走行するような自走式機器の場合であれば、ミリ単位のＸ軸とＹ軸の位置の情報とすることができる。ステップＳ２０３では、ステップＳ２０２で取得した位置の情報を位置記憶手段１０５へ記憶する。位置記憶手段１０５の記憶容量は有限であるため、想定される自走式機器を使用する空間の広さや記憶容量の大きさなどによって、記憶するタイミングは予め決めておくか、自動的に算出しておく必要がある。例えば、１０００個記憶する容量がある場合は、１ｃｍ移動する毎に記憶しておくと、１０ｍまでの移動した位置を記憶することができる。壁面に沿って同じところを繰り返し走行することを判断する距離を想定して、記憶容量と記憶タイミングを決めておくことで実使用に合う設定にすることができる。また、自動的に走行している過去の空間の大きさを学習していくことでパラメータを変化させながら、精度よく検出させるような仕組みを組み込むことも可能である。また、記憶容量まで位置を記憶した場合に、リングバッファのようにメモリを利用することで過去の古い位置の記憶を新しい位置の記憶と置き換えていくことによって、継続的に記憶動作を続けていくことが可能である。
【００３８】
ステップＳ２０４では、位置記憶手段１０５で記憶している過去の位置から現在の位置の軌跡が閉じているか判断を行う。例えば、現在の位置と過去の記憶している位置を１つずつ比較していくことで、現在の位置と同じ位置が過去の位置に存在した場合に軌跡が閉じていると判断することができる。また、位置の情報は移動手段１０２の例えばタイヤのすべりなどによる誤差、位置算出手段１０４の算出誤差などを含むので、現在の位置から過去の位置との距離差が一定以内であれば閉じていると判断することで誤差を吸収することが可能となる。
【００３９】
なお、走行開始時の位置にまで戻ってきた場合は、部屋を一周したと判断することができるので走行を停止したり、例えばランダムに直進移動したりするなど他の走行に移行することが可能である。位置の軌跡が閉じていない場合は、ステップＳ２０２へ動作を戻す。位置の軌跡が閉じている場合は、ステップＳ２０５へ動作を移行する。
【００４０】
ステップＳ２０５では、機器本体が沿っていた壁面に対して軌跡が外回りであるか判断を行う。例えば、図３に示すように、動作開始の位置ａから壁面ｂを右側に沿って移動していた場合に、ソファーなどの障害物ｃにおいて迂回（１）し、軌跡の移動が時計方向に回って閉じた場合（２）に外回りと判断することができる。例えば閉じた軌跡の中心点を求めて、中心点の方向が壁面であったかどうかを判断することや、機器本体の角度の変化から回転方向を求めることで可能となる。沿っていた壁面ｂに対して外回りに回っていない場合は、ステップＳ２０２へ動作を戻す。沿っていた壁面ｂに対して外回りに回った場合は、ステップＳ２０６へ動作を移行する。
【００４１】
ステップＳ２０６では、外回りに回った場合の回避動作に動作を切り替ええる。例えば、図３の（２）に示すような位置で軌跡が閉じて外回りであると判断した場合に、現在の機器本体の移動してきた軌跡の回転方向に対して反対方向である反時計回りに例えば１８０度の角度回転移動することで、外回りで一周した障害物ｃから本来沿うべき壁面ｂへ移動することができ、図３の（３）の方向へ壁面を沿う走行を継続することができるようになる。他にも、位置記憶手段１０５によって記憶している過去に移動した位置の方向以外へ回転移動することで、外回りで一周した障害物から本来沿うべき壁面へ効率よく移動することができるようになる。また、回転移動後に壁面を見つけるまで直進移動することで壁面を見失うことを回避することが可能となる。他にも、位置の履歴が閉じた状態で外回りになった場合を条件として、大きく旋回させるような動作などさまざまな動作方法で回避することが可能となる。回避動作完了後は引き続きステップＳ２０１に戻って壁面を沿う動作を続けることが可能となる。
【００４２】
このように、機器本体１００が障害物検出手段１０３によって検出した障害物との距離を一定に保つように、コントロール手段１０１によって移動手段１０２を制御し、位置算出手段１０４の位置を位置記憶手段１０５に記憶させていくことで、位置の軌跡と外回りであるかどうかから、繰り返し同じところを走行することを回避することができるようになる。このようにすることにより、機器本体１００が走行する空間の壁面に沿って走行するときに、部屋に置いてある例えば、ソファーや椅子やテーブルの足などで同じところを何度も繰り返し走行してしまうことを回避し、継続して壁面に沿って走行することが可能となり、くまなく部屋の隅を清掃したり、部屋の大きさを見積もったりすることができるようになる。
【００４３】
次に、図４の内回りに壁面を沿うときに回避するフローチャート、および図５の内回りに壁面を沿うときに回避する例を用いて、機器本体１００が障害物検出手段１０３によって検出した障害物との距離を一定に保つように、コントロール手段１０１によって移動手段１０２を制御して、部屋の壁面などを沿うように走行させるときに、繰り返し同じところを走行することを回避する動作の流れについて説明する。
【００４４】
図４のステップＳ４０１から動作が開始する。ステップＳ４０１では、ステップＳ２０１と同様に、障害物検出手段１０３で検出している障害物との距離を一定に保つようにコントロール手段１０１で移動手段１０２の制御を行う。壁面を沿う走行を行いながらステップＳ４０２に動作を移行する。ステップＳ４０２では、ステップＳ２０２と同様に、位置算出手段１０４は機器本体１００の現在位置情報を取得する。ステップＳ４０３では、ステップＳ２０３と同様に、ステップＳ４０２で取得した位置の情報を、位置記憶手段１０５へ記憶する。
【００４５】
ステップＳ４０４では、ステップＳ２０４と同様に、位置記憶手段１０５で記憶している過去の位置から現在の位置の軌跡が閉じているか判断を行う。位置の軌跡が閉じていない場合は、ステップＳ４０２へ動作を戻す。位置の軌跡が閉じている場合は、ステップＳ４０５へ動作を移行する。
【００４６】
ステップＳ４０５では、沿っていた壁面に対して軌跡が内回りであるか判断を行う。例えば、図５に示すように、動作開始の位置ａから壁面ｂを右側に沿って移動していた場合に、テーブルなどの障害物ｃにおいて障害物ｃに沿って通過（１）し、軌跡の移動が反時計方向に回って閉じた場合（２）に内回りと判断することができる。例えば閉じた軌跡の中心点を求めて、中心点の方向が壁面であったかどうかを判断することや、機器本体の角度の変化から回転方向を求めることで可能となる。沿っていた壁面ｂに対して内回りに回っていない場合は、ステップＳ４０２へ動作を戻す。沿っていた壁面ｂに対して内回りに回った場合は、ステップＳ４０６へ動作を移行する。
【００４７】
ステップＳ４０６では、内回りに回った場合の回避動作に動作を切り替ええる。例えば、図５の（２）に示すような位置で軌跡が閉じて内回りであると判断した場合に、沿ってきた壁面を逆方向である左側に沿うように移動することで、内回りで回った閉鎖空間から効率よく脱出することができ、図５の（３）の方向へ壁面を沿う走行を継続することができるようになる。他にも、壁面の抜け出せそうなところを探して移動するなど、位置の履歴が閉じた状態で内回りになった場合を条件として、さまざまな動作方法で回避することが可能となる。回避動作完了後は引き続きステップＳ４０１に戻って壁面ｂを沿う動作を続けることが可能となる。
【００４８】
このように、機器本体１００が障害物検出手段１０３によって検出した障害物との距離を一定に保つように、コントロール手段１０１によって移動手段１０２を制御し、位置算出手段１０４の位置を位置記憶手段１０５に記憶させていくことで、位置の軌跡と内回りであるかどうかから、繰り返し同じところを走行することを回避することができるようになる。このようにすることにより、機器本体１００が走行する空間の壁面に沿って走行するときに、部屋に置いてある例えば、テーブルの下や荷物などが置かれて狭くなった空間に入り込んだときに同じところを繰り返し走行してしまうことを回避し、継続して壁面に沿って走行することが可能となり、くまなく部屋の隅を清掃したり、部屋の大きさを見積もったりすることができるようになる。
【００４９】
次に、図６の壁面を沿うときに回避するフローチャートを用いて、機器本体１００が障害物検出手段１０３によって検出した障害物との距離を一定に保つように、コントロール手段１０１によって移動手段１０２を制御して、部屋の壁面などを沿うように走行させるときに、繰り返し同じところを走行することを回避する動作の流れについて説明する。
【００５０】
図６のステップＳ６０１から動作が開始する。ステップＳ６０１では、ステップＳ２０１と同様に、障害物検出手段１０３で検出している障害物との距離を一定に保つようにコントロール手段１０１で移動手段１０２の制御を行う。壁面を沿う走行を行いながらステップＳ６０２に動作を移行する。ステップＳ６０２では、ステップＳ２０２と同様に、位置算出手段１０４は機器本体１００の現在位置情報を取得する。ステップＳ６０３では、ステップＳ２０３と同様に、ステップＳ６０２で取得した位置の情報を位置記憶手段１０５へ記憶する。
【００５１】
ステップＳ６０４では、ステップＳ２０４と同様に、位置記憶手段１０５で記憶している過去の位置から現在の位置の軌跡が閉じているか判断を行う。位置の軌跡が閉じていない場合は、ステップＳ６０２へ動作を戻す。位置の軌跡が閉じている場合は、ステップＳ６０５へ動作を移行する。
【００５２】
ステップＳ６０５では、ステップＳ２０５と同様に、沿っていた壁面に対して軌跡が外回りであるか判断を行う。沿っていた壁面に対して外回りに回った場合は、ステップＳ６０６へ動作を移行する。沿っていた壁面に対して外回りに回っていない場合は内回りと判断することができるので、ステップＳ６０７へ動作を移行する。ステップＳ６０６では、ステップＳ２０６と同様に、外回りに回った場合の回避動作に動作を切り替ええる。ステップＳ６０７では、ステップＳ４０６と同様に、内回りに回った場合の回避動作に動作を切り替ええる。
【００５３】
このように、機器本体１００が障害物検出手段１０３によって検出した障害物との距離を一定に保つように、コントロール手段１０１によって移動手段１０２を制御し、位置算出手段１０４の位置を位置記憶手段１０５に記憶させていくことで、位置の軌跡と外回りあるいは内回りであるかどうかから、繰り返し同じところを走行することを回避することができるようになる。このようにすることにより、機器本体１００が走行する空間の壁面に沿って走行するときに、さまざまな状態で同じところを繰り返し走行してしまうことを回避し、継続して壁面に沿って走行することが可能となり、くまなく部屋の隅を清掃したり、部屋の大きさを見積もったりすることができるようになる。
【００５４】
（実施の形態２）
図７〜図９は、本発明の実施の形態２における自走式機器を示している。実施の形態１と同一要素については同一符号を付してその説明を省略する。
【００５５】
図７に示すように、機器本体７００は、実施の形態１で示した各手段１０１〜１０５および電池１０６に加えて、機器本体７００の向いている方向を算出する方向算出手段７０７、方向算出手段７０７で算出した方向を記憶する方向記憶手段７０８を備えている。
【００５６】
方向算出手段７０７は、例えば、ジャイロセンサや加速度センサのように方向の変化量を検出するセンサを用いることで、機器本体７００の現在の方向を算出することが可能である。また、位置算出手段１０４と同様に、例えば移動手段１０２が左右２輪の移動輪で移動する場合など、各移動輪の移動時の量から、オドメトリである現在の機器本体７００の姿勢を計算することによって、方向を算出することも可能である。さらに、前記センサとオドメトリを組み合わせることでより精度を高めることも可能である。また、地磁気を検出する方位センサや、ＧＰＳセンサを利用することでさらに精度を高めることも可能である。他にも、機器本体７００の方向が算出できる手段であればどのような手段であっても構わない。なお、位置算出手段１０４と同様、コントロール手段１０１で代用することができるので、より安価に作成することも可能である。また、位置算出手段１０４と使用するセンサを共有することで効率的に構成することも可能である。
【００５７】
方向記憶手段７０８は、実施の形態１の位置記憶手段１０５と同様に、情報を記憶する機能を有するものであればどのようなものであっても構わない。また、位置記憶手段１０５と共有で使用することで構成をシンプルにすることも可能である。
【００５８】
図８のステップＳ８０１から動作が開始する。ステップＳ８０１では、ステップＳ２０１と同様に、障害物検出手段１０３で検出している障害物との距離を一定に保つようにコントロール手段１０１で移動手段１０２の制御を行う。壁面を沿う走行を行いながらステップＳ８０２に動作を移行する。ステップＳ８０２では、ステップＳ２０２と同様に、位置算出手段１０４は機器本体７００の現在位置情報を取得する。ステップＳ８０３では、ステップＳ２０３と同様に、ステップＳ８０２で取得した位置の情報を位置記憶手段１０５へ記憶する。
【００５９】
ステップＳ８０４では、方向算出手段７０７は機器本体７００の現在方向情報を取得する。例えば、機器本体７００が移動する領域は２次元平面と想定した場合は１軸の方向のみの情報で構わない。ステップＳ８０５では、方向算出手段７０７で取得した方向の情報を方向記憶手段７０８へ記憶を行う。ステップＳ８０６では、ステップＳ２０４と同様に、位置記憶手段１０５で記憶している過去の位置から現在の位置の軌跡が閉じているか判断を行う。位置の軌跡が閉じていない場合は、ステップＳ８０２へ動作を戻す。位置の軌跡が閉じている場合は、ステップＳ８０７へ動作を移行する。
【００６０】
ステップＳ８０７では、軌跡が閉じたときの位置の過去方向と現在方向がほぼ同じであるか判断を行う。例えば、角度差が９０度以上異なるなど、軌跡が閉じたときにおける位置の過去の方向と現在の方向が大きく異なる場合は、機器本体７００は過去と異なった経路で同じ位置付近に到達したと考えられるので、継続して走行しても同じ位置を繰り返し走行する可能性が少ないと考えることができるので、ステップＳ８０２へ戻って走行を継続する。軌跡が閉じたときの位置の過去方向と現在方向がほぼ同じである場合は、ステップＳ８０８へ動作を移行する。
【００６１】
ステップＳ８０８では、ステップＳ２０５と同様に、沿っていた壁面に対して軌跡が外回りであるか判断を行う。沿っていた壁面に対して外回りに回っていない場合は、ステップＳ８０２へ動作を戻す。沿っていた壁面に対して外回りに回った場合は、ステップＳ８０９へ動作を移行する。ステップＳ８０９では、ステップＳ２０６と同様に、外回りに回った場合の回避動作に動作を切り替える。回避動作完了後は引き続きステップＳ８０１に戻って壁面を沿う動作を続けることが可能となる。
【００６２】
このように構成することで、例えば、図９に示すように、（１）において、機器本体７００の位置の誤差などにより、ほぼ同じ位置を走行した場合であっても、繰り返し同じところを走行しているのか、別のところを走行しているのか位置のみでなく角度（方向）による判断を追加しているので、誤検知による誤動作を少なくすることが可能となり、よりスムーズに壁沿いの走行を継続して行うことができるようになる。
【００６３】
（実施の形態３）
図１０は、本発明の実施の形態３における自走式機器を示している。自走式機器の構成は、実施の形態１または２と同じである。
【００６４】
図に示すように、位置算出手段１０４で算出する位置は、所定大きさの四角形領域毎の単位として扱っている。例えば、Ｘ軸およびＹ軸方向の大きさを１０ｃｍにすることで、１０ｃｍ四方の単位で位置を記憶していくことができるようになる。なお、図中、ｄは過去の位置から現在の位置の軌跡が閉じた位置を示している。
【００６５】
このように構成することで、位置算出手段１０４の計算誤差などを吸収し、さらに扱う位置の情報を少なくして位置記憶手段１０５をより少ないメモリで動作することができるようになる。なお、実施の形態２で説明した方向の情報についても同様に所定大きさの四角形領域毎の単位として扱うことで、同じ効果を得ることが可能である。
【００６６】
また、位置記憶手段１０５に記憶している過去の位置から現在の位置までの移動軌跡が閉じた状態である判断を、現在の位置から一定距離離れたところから行うようにしている。これによれば、例えば、所定大きさの四角形の大きさにすることで、狭い範囲で障害物の接触回避動作などにより繰り返し同じ位置付近を通過したときに閉じた判断をして不要な回避動作を行うことを防ぐことが可能となる。
【００６７】
（実施の形態４）
図１１は、本発明の実施の形態４における自走式機器を示している。自走式機器の構成は、実施の形態１または２と同じである。
【００６８】
図に示すように、位置記憶手段１０５に記憶している過去の位置から現在の位置までの移動軌跡が閉じた状態である判断は、過去の位置が現在の位置における機器本体の移動方向付近であることを検出することで、移動軌跡が閉じる以前に検出して状況の判断を行うようにしている。
【００６９】
すなわち、機器本体の位置と方向から次に移動すると予測される機器本体の手前ｅにおいて、過去に機器本体が通過したかどうか、位置記憶手段１０５に記憶している位置を検出する。過去に記憶している位置が現在の機器本体の走行方向に存在している場合は、回避動作を行うことで、同じところを通過することなくスムーズに次の経路へ移動することが可能となる。
【００７０】
（実施の形態５）
図１２は、本発明の実施の形態５における自走式機器を示している。実施の形態１と同一要素については同一符号を付してその説明を省略する。
【００７１】
図に示すように、機器本体１２００は、実施の形態１で示した各手段１０１〜１０５および電池１０６に加えて、ユーザに機器本体の状況（移動軌跡が閉じた状態であること）を報知する報知手段１２０７を備えている。
【００７２】
報知手段１２０７は、例えば、液晶画面にすることにより、繰り返し同じところを通過した場合に回避することをユーザに報知することができるようになる。他にも、ＬＥＤによる光によって報知することや、ブザーや音声などによりユーザに報知することができるようになる。
【００７３】
このように構成することによって、ユーザは同じところを繰り返し走行しないかどうか心配する必要がなく、さらに自動的に認識したことによってユーザは自走式機器に対して知的に感じることができるようになる。
【００７４】
（実施の形態６）
次に、本発明の実施の形態６における自走式機器について説明する。
【００７５】
本実施の形態では、各実施の形態１〜５における自走式機器の機能の少なくとも一部をコンピュータに実行させるためのプログラムにするものである。
【００７６】
プログラムとすることで、容易に汎用的なコンピュータを利用することができるようになり、さまざまな自走式機器のプラットフォームに対応させることが容易に可能となる。また、例えば、一部を汎用コンピュータで利用可能なプログラムにすることで、無線ＬＡＮなどの通信機能を用いて、汎用コンピュータと自走式機器を通信させて、コントロール手段の走行の制御などを汎用のコンピュータ側で行うことにより、機器本体のＣＰＵやメモリといった機能の能力を削減することができるので、より安価に自走式機器を提供することが可能となる。さらに、汎用コンピュータに接続されているインターネットなどの外手段との通信機能を介して、外出先からユーザが自走式機器を操作することを可能にすることも容易に実現が可能となる。なお、プログラムの形態であれば、磁気メディアや光メディアなどの記録媒体に記録したり通信回線を用いてプログラムを配信したりすることで、プログラムの配布・更新やそのインストール作業が簡単にできる。
【産業上の利用可能性】
【００７７】
以上のように、本発明にかかる自走式機器およびそのプログラムは、機器本体が繰り返し状態に陥ることを効率的に回避し、先に進んで部屋あるいは野外の全体の大きさを見積もることや、全体の隅の清掃を効率的に行うことができるので、屋内や野外で効率よく走行する必要がある、掃除ロボットや、監視ロボットや、草刈ロボットや、片付けロボットなど、不特定の空間を自動的に移動しながら作業を行う機器全般に適用できる。
【図面の簡単な説明】
【００７８】
【図１】本発明の実施の形態１における自走式機器の構成を示すブロック図
【図２】同自走式機器の外回りに壁面を沿うときに回避動作するフローチャート
【図３】同自走式機器の外回りに壁面を沿うときに回避動作する例を示す説明図
【図４】同自走式機器の内回りに壁面を沿うときに回避動作するフローチャート
【図５】同自走式機器の内回りに壁面を沿うときに回避動作する例を示す説明図
【図６】同自走式機器の壁面を沿うときに回避動作するフローチャート
【図７】本発明の実施の形態２における自走式機器の構成を示すブロック図
【図８】同自走式機器の方向を回避動作に利用するフローチャート
【図９】同自走式機器の方向を回避動作に利用する例を示す説明図
【図１０】本発明の実施の形態３における自走式機器の位置を特定の四角形領域毎に記憶する例の説明図
【図１１】本発明の実施の形態４における自走式機器の次の移動方向に過去の位置を検出する例の説明図
【図１２】本発明の実施の形態５における自走式機器の構成を示すブロック図
【符号の説明】
【００７９】
１００、７００、１２００  機器本体
１０１  コントロール手段
１０２  移動手段
１０３  障害物検出手段
１０４  位置算出手段
１０５  位置記憶手段
１０６  電池
７０７  方向算出手段
７０８  方向記憶手段
１２０７  報知手段
【図１】
2009129062.tif 000003
【図２】
2009129062.tif 000004
【図３】
2009129062.tif 000005
【図４】
2009129062.tif 000006
【図５】
2009129062.tif 000007
【図６】
2009129062.tif 000008
【図７】
2009129062.tif 000009
【図８】
2009129062.tif 000010
【図９】
2009129062.tif 000011
【図１０】
2009129062.tif 000012
【図１１】
2009129062.tif 000013
【図１２】
2009129062.tif 000014