(57)【要約】  【課題】  周囲を壁で囲む領域内にどのような形状の障害物が存在する場合であっても、障害物が存在する領域を除くすべての領域に移動することが可能である自走式移動体、移動体制御方法及びコンピュータプログラムを提供する。  【解決手段】  移動アルゴリズムを定めた自走式移動体において、移動開始時にセンサが検知した物体に向かって移動し、検知した物体との距離が所定値より短いか否かを判断し、検知した物体との距離が所定値より短いと判断した場合、物体に沿って第１の距離移動し、第１の距離移動した後、移動前の位置と移動後の位置とを結ぶ線分と交差する方向に第２の距離移動し、第２の距離移動した後、略反転して第２の距離の移動の開始位置に向かって移動する。【選択図】        図４
2005309700.tif 000002
【特許請求の範囲】
【請求項１】
駆動輪と、該駆動輪を駆動する駆動部と、周囲に存在する物体を検知するセンサと、該センサでの検知結果に応じて前記駆動輪の動作を制御する制御部と、移動開始位置から移動した距離を算出する移動距離算出部とを備える自走式移動体において、
前記制御部は、
前記駆動部に対して、物体に沿って移動させ得る駆動信号を送出する第１の駆動信号送出手段と、
前記移動距離算出部で算出した距離が第１の距離に達したか否かを判断する第１の判断手段と、
該第１の判断手段で、前記第１の距離に達したと判断した場合、前記駆動部に対して、移動前の位置と移動後の位置とを結ぶ線分と交差する方向に移動させ得る駆動信号を送出する第２の駆動信号送出手段と、
前記移動距離算出部で算出した距離が第２の距離に達したか否かを判断する第２の判断手段と、
該第２の判断手段で、前記第２の距離に達したと判断した場合、又は前記センサが物体を検知した場合、前記駆動部に対して、略反転させ得る駆動信号を送出する第３の駆動信号送出手段とを備えることを特徴とする自走式移動体。
【請求項２】
移動開始後に、前記駆動部に対して、前記センサが検知した物体に向かって移動させ得る駆動信号を送出する第４の駆動信号送出手段と、
前記センサが物体を検知した場合、検知した物体との距離を算出する検出距離算出手段と、
該検出距離算出手段で算出した距離が所定値より短いか否かを判断する第３の判断手段とを備えることを特徴とする請求項１記載の自走式移動体。
【請求項３】
前記センサを複数設けてあり、
前記第３の判断手段で、検知した物体との距離が所定値より長いと判断した場合、複数の前記センサの検出結果に基づいて、物体に対する移動方向を算出する手段と、
該手段で算出した移動方向が、複数の前記センサの検出結果に基づいて検知した物体表面の法線方向と相違するか否かを判断する第４の判断手段と、
該第４の判断手段で、算出した移動方向が、検知した物体表面の法線方向と相違すると判断した場合、算出した移動方向と検知した物体表面の法線方向との差異に応じて、前記第４の駆動信号送出手段で前記駆動部に対して送出する駆動信号を補正する手段とを備えることを特徴とする請求項２に記載の自走式移動体。
【請求項４】
前記センサを複数設けてあり、
前記第３の判断手段で、検知した物体との距離が所定値より短いと判断した場合、複数の前記センサの検出結果に基づいて、物体に対する移動方向を算出する手段と、
該手段で算出した移動方向を記憶する手段とを備え、
前記第３の駆動信号送出手段で、記憶してある移動方向に応じて、反転させる方向を補正した駆動信号を前記駆動部に対して送出すべくなしてあることを備えることを特徴とする請求項２に記載の自走式移動体。
【請求項５】
前記センサを複数設けてあり、
前記第３の判断手段で、検知した物体との距離が所定値より長いと判断した場合、複数の前記センサの検出結果に基づいて、物体に対する移動方向を求める手段と、
該手段で求めた移動方向が、前記第２の駆動信号送出手段で送出した駆動信号で指定した移動方向と相違するか否かを判断する第５の判断手段と、
該第５の判断手段で、両移動方向が相違すると判断した場合、両移動方向の差異に応じて前記第４の駆動信号送出手段で前記駆動部に対して送出する駆動信号を補正する手段とを備えることを特徴とする請求項２乃至４のいずれか一項に記載の自走式移動体。
【請求項６】
前記第３の駆動信号送出手段が、前記駆動部に対して略反転させ得る駆動信号を送出した時点までの反転前移動距離を算出する手段と、
反転した後の反転後移動距離を算出する手段と、
前記センサが物体の存在を検知した場合、前記反転後移動距離が前記反転前移動距離より短いか否かを判断する第６の判断手段と、
該第６の判断手段で前記反転前移動距離より短いと判断した場合、前記駆動部に対して、検知した物体を回避し得る駆動信号を送出する第５の駆動信号送出手段とを備えることを特徴とする請求項２乃至５のいずれか一項に記載の自走式移動体。
【請求項７】
駆動輪と、該駆動輪を駆動する駆動部と、周囲に存在する物体を検知するセンサと、移動開始位置から移動した距離を算出する移動距離算出部とを備え、前記センサでの検知結果に応じて前記駆動輪の動作を制御する移動体制御方法において、
前記駆動部に対して、物体に沿って移動させ得る駆動信号を送出する第１の駆動信号送出ステップと、
前記移動距離算出部で算出した距離が第１の距離に達したか否かを判断する第１の判断ステップと、
該第１の判断ステップで、前記第１の距離に達したと判断した場合、前記駆動部に対して、移動前の位置と移動後の位置とを結ぶ線分と交差する方向に移動させ得る駆動信号を送出する第２の駆動信号送出ステップと、
前記移動距離算出部で算出した距離が第２の距離に達したか否かを判断する第２の判断ステップと、
該第２の判断ステップで、前記第２の距離に達したと判断した場合、又は前記センサが物体を検知した場合、前記駆動部に対して、略反転させ得る駆動信号を送出する第３の駆動信号送出ステップとを含むことを特徴とする移動体制御方法。
【請求項８】
駆動輪と、該駆動輪を駆動する駆動部と、周囲に存在する物体を検知するセンサと、移動開始位置から移動した距離を算出する移動距離算出部とを備え、前記センサでの検知結果に応じて前記駆動輪の動作を制御するコンピュータで実行可能なコンピュータプログラムにおいて、
前記駆動部に対して、物体に沿って移動させ得る駆動信号を送出する第１の駆動信号送出ステップと、
前記移動距離算出部で算出した距離が第１の距離に達したか否かを判断する第１の判断ステップと、
該第１の判断ステップで、前記第１の距離に達したと判断した場合、前記駆動部に対して、移動前の位置と移動後の位置とを結ぶ線分と交差する方向に移動させ得る駆動信号を送出する第２の駆動信号送出ステップと、
前記移動距離算出部で算出した距離が第２の距離に達したか否かを判断する第２の判断ステップと、
該第２の判断ステップで、前記第２の距離に達したと判断した場合、又は前記センサが物体を検知した場合、前記駆動部に対して、略反転させ得る駆動信号を送出する第３の駆動信号送出ステップとを含むことを特徴とするコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、自走式掃除機、自走式芝刈り機等の周囲を壁等の境界で囲まれた領域内を走行する自走式移動体、移動体制御方法及びコンピュータプログラムに関する。
【背景技術】
【０００２】
昨今のロボット制御技術の急速な進展により、一般家庭で利用することが可能な自走式のロボット、例えば自走式掃除機、自走式芝刈り機等が市場に登場し始めている。斯かる自走式移動体は、周囲に存在する壁、走行可能な領域内に存在する障害物等を検知するセンサを備えており、該センサが壁、障害物等を検知した場合、壁、障害物等に応じて移動方向を制御することにより、使用者による監視及び手助けを必要とすることなく、所定の作業を円滑に行うことができる。
【０００３】
例えば特許文献１に開示されている自走式の掃除機では、設置された状態から最寄の壁まで移動し、壁に沿って所定の距離移動した後、対向する位置に存在する壁へ移動する。また、壁に沿って所定の距離移動した後、対向する位置に存在する壁（元の壁）へ移動する。斯かる処理を繰り返すことで、室内をジグザグ状に移動し、すべての領域について掃除することを可能ならしめている。
【０００４】
また特許文献２に開示されている自走式の掃除機では、設置された状態から最寄の壁まで、壁に対して斜め方向に移動し、壁に接触又は近接した場合、対向する位置に存在する壁に向かって、接触又は近接した壁の法線方向へ移動する。また、壁に接触又は近接した場合、対向する位置に存在する壁に向かって、接触又は近接した壁の法線方向へ移動する。斯かる処理を繰り返すことで、室内をジグザグ状に移動し、すべての領域について掃除することを可能ならしめている。
【特許文献１】特開平７−３１９５４２号公報
【特許文献２】特開平９−１７９６２５号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
しかし、特許文献１に開示している自走式の掃除機では、対向する壁の間に障害物が存在する場合、障害物を挟んで一方の領域は移動可能であるものの、他方の領域へ移動することができず、また壁の形状により袋小路が形成されている場合、ジグザグ走行制御のみでは脱出することができず、全領域にわたって掃除することができないという問題点があった。
【０００６】
また、特許文献２に開示している自走式の掃除機では、対向する壁の間に略円柱状の障害物が存在する場合、接触又は近接した略円柱状の障害物の法線方向に、該障害物から離れるように移動してから、再度障害物の法線方向に対して所定の角度を有する方向で該障害物に向かって移動することになり、略円柱状の障害物を放射状に離脱しては該障害物へ戻るといった周回移動を行い、一度でも略円柱状の障害物の存在を検知した場合、該障害物の周囲から離脱することができず、全領域にわたって掃除することが不可能になるおそれがあるという問題点があった。
【０００７】
さらに、移動体の位置は、ＧＰＳ等の高価な位置特定装置を用いた場合、高い精度で移動体の位置を特定することが可能であるが、コストが高く、特に一般家庭の庭、室内等の狭い領域で用いる移動体に用いる場合、コスト対効果の観点から実用的ではない。
【０００８】
本発明は、斯かる問題に鑑みてなされたものであり、周囲を壁で囲む領域内にどのような形状の障害物が存在する場合であっても、障害物が存在する領域を除くすべての領域に移動することが可能である自走式移動体、移動体制御方法及びコンピュータプログラムを提供することを目的とする。
【０００９】
また本発明は、周囲を囲む壁がどのような形状であっても、全周にわたって壁に沿って移動することが可能である自走式移動体、移動体制御方法及びコンピュータプログラムを提供することを目的とする。
【課題を解決するための手段】
【００１０】
上記目的を達成するために本発明に係る自走式移動体は、駆動輪と、該駆動輪を駆動する駆動部と、周囲に存在する物体を検知するセンサと、該センサでの検知結果に応じて前記駆動輪の動作を制御する制御部と、移動開始位置から移動した距離を算出する移動距離算出部とを備える自走式移動体において、前記制御部は、前記駆動部に対して、物体に沿って移動させ得る駆動信号を送出する第１の駆動信号送出手段と、前記移動距離算出部で算出した距離が第１の距離に達したか否かを判断する第１の判断手段と、該第１の判断手段で、前記第１の距離に達したと判断した場合、前記駆動部に対して、移動前の位置と移動後の位置とを結ぶ線分と交差する方向に移動させ得る駆動信号を送出する第２の駆動信号送出手段と、前記移動距離算出部で算出した距離が第２の距離に達したか否かを判断する第２の判断手段と、該第２の判断手段で、前記第２の距離に達したと判断した場合、又は前記センサが物体を検知した場合、前記駆動部に対して、略反転させ得る駆動信号を送出する第３の駆動信号送出手段とを備えることを特徴とする。
【００１１】
本発明にあっては、壁に沿って所定の距離だけ移動した後、移動前の位置と移動後の位置とを結ぶ線分に対して略垂直な方向に前述の距離と相違する所定の距離だけ移動した後、又は所定の距離移動する途上でセンサが物体を検知した場合、略反転して、移動前の位置と移動後の位置とを結ぶ線分に対して、例えば略垂直な方向に移動を開始した位置に向かって移動する。これにより、壁がどのような形状であっても、壁から離れるように移動した位置へ必ず戻ることができることから、壁の内周の略すべての面に沿って移動することができ、周囲を壁で囲む領域内にどのような形状の障害物が存在する場合であっても、障害物が存在する領域を除くすべての領域に移動することが可能となる。
【００１２】
また、本発明に係る自走式移動体は、移動開始後に、前記駆動部に対して、前記センサが検知した物体に向かって移動させ得る駆動信号を送出する第４の駆動信号送出手段と、前記センサが物体を検知した場合、検知した物体との距離を算出する検出距離算出手段と、該検出距離算出手段で算出した距離が所定値より短いか否かを判断する第３の判断手段とを備えることを特徴とする。
【００１３】
本発明にあっては、最初はセンサが検知した壁に向かって移動し、壁との距離が所定値より短いと判断した場合（接触する場合も含む）、壁に沿って所定の距離だけ移動する。これにより、壁がどのような形状であっても壁の内周に沿って移動可能な位置まで移動することができ、周囲を壁で囲む領域内にどのような形状の障害物が存在する場合であっても、障害物が存在する領域を除くすべての領域に移動することが可能となる。
【００１４】
また、本発明に係る自走式移動体は、前記センサを複数設けてあり、前記第３の判断手段で、検知した物体との距離が所定値より長いと判断した場合、複数の前記センサの検出結果に基づいて、物体に対する移動方向を算出する手段と、該手段で算出した移動方向が、複数の前記センサの検出結果に基づいて検知した物体表面の法線方向と相違するか否かを判断する第４の判断手段と、該第４の判断手段で、算出した移動方向が、検知した物体表面の法線方向と相違すると判断した場合、算出した移動方向と検知した物体表面の法線方向との差異に応じて、前記第４の駆動信号送出手段で前記駆動部に対して送出する駆動信号を補正する手段とを備えることを特徴とする。
【００１５】
本発明にあっては、複数のセンサ、例えば左右方向に設けたセンサにより検知した壁までの距離の相違に基づいて、壁に向かって移動する移動方向を求め、求めた移動方向が、壁に対して略垂直な方向と相違している場合、相違している角度に応じて移動方向を補正する。これにより、最初にセンサが検知した壁に向かって移動する際に、床面の凹凸等の床面状況により壁に向かって直進することが困難である場合であっても、複数のセンサによる検出結果に応じて移動方向を補正しながら壁に向かって移動することができ、高価であり、しかも高精度である位置計測手段を用いることなく、移動体の位置を正確に判断しながら移動することが可能となる。
【００１６】
また、本発明に係る自走式移動体は、前記センサを複数設けてあり、前記第３の判断手段で、検知した物体との距離が所定値より短いと判断した場合、複数の前記センサの検出結果に基づいて、物体に対する移動方向を算出する手段と、該手段で算出した移動方向を記憶する手段とを備え、前記第３の駆動信号送出手段で、記憶してある移動方向に応じて、反転させる方向を補正した駆動信号を前記駆動部に対して送出すべくなしてあることを備えることを特徴とする。
【００１７】
本発明にあっては、複数のセンサ、例えば左右方向に設けたセンサにより検知した壁までの距離の相違に基づいて、壁に到達した時点における移動方向を求め、求めた移動方向が、壁に対して略垂直な方向と相違している場合、相違している角度に応じて、次に壁に向かって戻るべく移動する際の移動方向を補正する。これにより、壁から離脱した後、反転して壁に向かって移動する際に、床面の凹凸等の床面状況により壁に向かって直進することが困難である場合であっても、複数のセンサによる検出結果に応じて、次に壁から離脱した後、反転して壁に向かって移動する際に、移動方向を補正してから移動することができ、高価であり、しかも高精度である位置計測手段を用いることなく、移動体の壁に向かう移動方向を床面に応じて補正してから移動することが可能となる。
【００１８】
また、本発明に係る自走式移動体は、前記センサを複数設けてあり、前記第３の判断手段で、検知した物体との距離が所定値より長いと判断した場合、複数の前記センサの検出結果に基づいて、物体に対する移動方向を求める手段と、該手段で求めた移動方向が、前記第２の駆動信号送出手段で送出した駆動信号で指定した移動方向と相違するか否かを判断する第５の判断手段と、該第５の判断手段で、両移動方向が相違すると判断した場合、両移動方向の差異に応じて前記第４の駆動信号送出手段で前記駆動部に対して送出する駆動信号を補正する手段とを備えることを特徴とする。
【００１９】
本発明にあっては、複数のセンサ、例えば左右方向に設けたセンサにより検知した壁までの距離の相違に基づいて、壁に向かって移動する移動方向を求め、求めた移動方向が、反転する前に壁から離れるよう移動した移動方向と相違している場合、相違している角度に応じて移動方向を補正する。これにより、壁から離脱した後、反転して壁に向かって移動する際に、床面の凹凸等の床面状況により壁に向かって直進することが困難である場合であっても、複数のセンサによる検出結果に応じて移動方向を補正しながら、壁から離れるよう移動を開始した位置へ精度良く戻ることができ、高価であり、しかも高精度である位置計測手段を用いることなく、移動体の位置を正確に判断しながら移動することが可能となる。
【００２０】
また、本発明に係る自走式移動体は、前記第３の駆動信号送出手段が、前記駆動部に対して略反転させ得る駆動信号を送出した時点までの反転前移動距離を算出する手段と、反転した後の反転後移動距離を算出する手段と、前記センサが物体の存在を検知した場合、前記反転後移動距離が前記反転前移動距離より短いか否かを判断する第６の判断手段と、該第６の判断手段で前記反転前移動距離より短いと判断した場合、前記駆動部に対して、検知した物体を回避し得る駆動信号を送出する第５の駆動信号送出手段とを備えることを特徴とする。
【００２１】
本発明にあっては、略反転して周囲の壁に向かって移動する途上でセンサが物体を検知した場合、物体までの距離が所定の距離より短いか否かに基づいて、障害物であるか壁であるかを判断し、物体までの距離が所定の距離より短い場合、障害物であると判断して、例えば左又は右へ回り込む等の回避する移動をする。これにより、壁に戻る途上に障害物が存在した場合であっても壁から離れるように移動を開始した位置まで戻ることができ、壁の内周の略すべての面に沿って移動することができることから、障害物が存在する領域を除くすべての領域に移動することが可能となる。
【００２２】
次に、上記目的を達成するために本発明に係る移動体制御方法は、駆動輪と、該駆動輪を駆動する駆動部と、周囲に存在する物体を検知するセンサと、移動開始位置から移動した距離を算出する移動距離算出部とを備え、前記センサでの検知結果に応じて前記駆動輪の動作を制御する移動体制御方法において、前記駆動部に対して、物体に沿って移動させ得る駆動信号を送出する第１の駆動信号送出ステップと、前記移動距離算出部で算出した距離が第１の距離に達したか否かを判断する第１の判断ステップと、該第１の判断ステップで、前記第１の距離に達したと判断した場合、前記駆動部に対して、移動前の位置と移動後の位置とを結ぶ線分と交差する方向に移動させ得る駆動信号を送出する第２の駆動信号送出ステップと、前記移動距離算出部で算出した距離が第２の距離に達したか否かを判断する第２の判断ステップと、該第２の判断ステップで、前記第２の距離に達したと判断した場合、又は前記センサが物体を検知した場合、前記駆動部に対して、略反転させ得る駆動信号を送出する第３の駆動信号送出ステップとを含むことを特徴とする。
【００２３】
本発明にあっては、壁に沿って所定の距離だけ移動した後、移動前の位置と移動後の位置とを結ぶ線分に対して略垂直な方向に前述の距離と相違する所定の距離だけ移動した後、又は所定の距離移動する途上でセンサが物体を検知した場合、略反転して、移動前の位置と移動後の位置とを結ぶ線分に対して、例えば略垂直な方向に移動を開始した位置に向かって移動する。これにより、壁がどのような形状であっても、壁から離れるように移動した位置へ必ず戻ることができることから、壁の内周の略すべての面に沿って移動することができ、周囲を壁で囲む領域内にどのような形状の障害物が存在する場合であっても、障害物が存在する領域を除くすべての領域に移動することが可能となる。
【００２４】
次に、上記目的を達成するために本発明に係るコンピュータプログラムは、駆動輪と、該駆動輪を駆動する駆動部と、周囲に存在する物体を検知するセンサと、移動開始位置から移動した距離を算出する移動距離算出部とを備え、前記センサでの検知結果に応じて前記駆動輪の動作を制御するコンピュータで実行可能なコンピュータプログラムにおいて、前記駆動部に対して、物体に沿って移動させ得る駆動信号を送出する第１の駆動信号送出ステップと、前記移動距離算出部で算出した距離が第１の距離に達したか否かを判断する第１の判断ステップと、該第１の判断ステップで、前記第１の距離に達したと判断した場合、前記駆動部に対して、移動前の位置と移動後の位置とを結ぶ線分と交差する方向に移動させ得る駆動信号を送出する第２の駆動信号送出ステップと、前記移動距離算出部で算出した距離が第２の距離に達したか否かを判断する第２の判断ステップと、該第２の判断ステップで、前記第２の距離に達したと判断した場合、又は前記センサが物体を検知した場合、前記駆動部に対して、略反転させ得る駆動信号を送出する第３の駆動信号送出ステップとを含むことを特徴とする。
【００２５】
本発明にあっては、壁に沿って所定の距離だけ移動した後、移動前の位置と移動後の位置とを結ぶ線分に対して略垂直な方向に前述の距離と相違する所定の距離だけ移動した後、又は所定の距離移動する途上でセンサが物体を検知した場合、略反転して、移動前の位置と移動後の位置とを結ぶ線分に対して、例えば略垂直な方向に移動を開始した位置に向かって移動する。これにより、壁がどのような形状であっても、壁から離れるように移動した位置へ必ず戻ることができることから、壁の内周の略すべての面に沿って移動することができ、周囲を壁で囲む領域内にどのような形状の障害物が存在する場合であっても、障害物が存在する領域を除くすべての領域に移動することが可能となる。
【発明の効果】
【００２６】
本発明にあっては、壁がどのような形状であっても壁の内周の略すべての面に沿って移動することができ、周囲を壁で囲む領域内にどのような形状の障害物が存在する場合であっても、障害物が存在する領域を除くすべての領域に移動することが可能となる。
【００２７】
また、本発明にあっては、壁がどのような形状であっても壁の内周に沿って移動可能な位置まで移動することができ、周囲を壁で囲む領域内にどのような形状の障害物が存在する場合であっても、障害物が存在する領域を除くすべての領域に移動することが可能となる。
【００２８】
また、本発明にあっては、最初にセンサが検知した壁に向かって移動する際に、床面の凹凸等の床面状況により壁に向かって直進することが困難である場合であっても、複数のセンサによる検出結果に応じて移動方向を補正しながら壁に向かって移動することができ、高価であり、しかも高精度である位置計測手段を用いることなく、移動体の位置を正確に判断しながら移動することが可能となる。
【００２９】
また、本発明にあっては、壁から離脱した後、反転して壁に向かって移動する際に、床面の凹凸等の床面状況により壁に向かって直進することが困難である場合であっても、複数のセンサによる検出結果に応じて、次に壁から離脱した後、反転して壁に向かって移動する際に、移動方向を補正してから移動することができ、高価であり、しかも高精度である位置計測手段を用いることなく、移動体の壁に向かう移動方向を床面に応じて補正してから移動することが可能となる。
【００３０】
また、本発明にあっては、壁から離脱した後、反転して壁に向かって移動する際に、床面の凹凸等の床面状況により壁に向かって直進することが困難である場合であっても、複数のセンサによる検出結果に応じて移動方向を補正しながら壁に向かって移動することができ、高価であり、しかも高精度である位置計測手段を用いることなく、移動体の位置を正確に判断しながら移動することが可能となる。
【００３１】
また、本発明にあっては、壁に戻る途上に障害物が存在した場合であっても壁から離れるように移動を開始した位置まで戻ることができ、壁の内周の略すべての面に沿って移動することができることから、障害物が存在する領域を除くすべての領域に移動することが可能となる。
【発明を実施するための最良の形態】
【００３２】
以下、本発明をその実施の形態を示す図面に基づいて説明する。
【００３３】
（実施の形態１）
図１は本発明の実施の形態１に係る自走式移動体の概略構成例を示すブロック図である。図１において、１は自走式移動体であり、例えば自走式掃除機、自走式芝刈り機などであり、壁のような境界で囲まれた領域内を隈なく移動するように用いられる。
【００３４】
自走式移動体１は、１組の駆動輪２Ｌ、２Ｒ、操舵輪２Ｃ、駆動輪２Ｌ、２Ｒを駆動するモータ３Ｌ、３Ｒ、モータの駆動を制御する制御部４、壁、障害物等を検知する超音波センサ５Ｌ、５Ｃ、５Ｒ、及び壁、障害物等との接触を検知する圧力センサ６Ｌ、６Ｃ、６Ｒ、６Ｂとで構成する。
【００３５】
図１は、自走式移動体１の平面上から透視した状態を示しており、左駆動輪２Ｌ、右駆動輪２Ｒ、及び操舵輪２Ｃを備えている。左駆動輪２Ｌ、右駆動輪２Ｒの車軸は、それぞれ駆動部であるモータ３Ｌ、３Ｒと接続してある。操舵輪２Ｃは、特に駆動する動力と接続されておらず、その方向を自走式移動体１の移動方向に従って自由に変更できるよう、自走式移動体１の底面に回動自在に装着してある。なお、左車輪駆動用のモータ３Ｌは、車軸から駆動輪２Ｌに向かって時計回りを正回転方法、反時計回りを逆回転方向とし、右車輪駆動用のモータ３Ｒは、車軸から駆動輪２Ｒに向かって反時計回りを正回転方向、時計回りを逆回転方向とする。
【００３６】
制御部４は、マイクロプロセッサであり、少なくともＭＰＵ４１、ＲＯＭ４２、ＲＡＭ４３、及び信号送受信部４４を備えている。図２は、制御部４の構成を示すブロック図である。制御部４は、後述する各センサ５Ｌ、５Ｃ、５Ｒ、６Ｌ、６Ｃ、６Ｒ、６Ｂで検出された信号を信号送受信部４４で受信する。受信した信号は内部バス４５を介してＭＰＵ４１に入力され、ＭＰＵ４１は、ＲＯＭ４２に記憶されている処理プログラムに従って種々の演算処理を行い、モータ３Ｌ、３Ｒに対して、正回転指示信号、逆回転指示信号のいずれかを出力する。また、ＭＰＵ４１は、モータ３Ｌ、３Ｒの回転数に応じて、所定の原点座標からの移動後の座標値を算出し、算出した座標値をＲＡＭ４３に記憶する。
【００３７】
自走式移動体１の進行方向側の前部は、半円柱形状であり、左方向の物体を検知する超音波センサ５Ｌ、前方向の物体を検知する超音波センサ５Ｃ、右方向の物体を検知する超音波センサ５Ｒを備えている。
【００３８】
超音波センサ５Ｌ、５Ｃ、５Ｒは、それぞれ１つの超音波発信機と、２つの超音波受信機とで構成しており、超音波発信機から発信した超音波の反射波を２つの超音波受信機で受信する。制御部４は、超音波発信機に対して発信指示信号を出力し、超音波受信機で受信した反射波を信号として入力される。検知対象となる物体の位置、動き等の状態は、制御部４のＭＰＵ４１により算出される。
【００３９】
超音波センサのみならず、接触センサとして圧力センサ６Ｌ、６Ｃ、６Ｒ、６Ｂをそれぞれ左方向、前方向、右方向、後方向用の接触センサとして、自走式移動体１の周縁部に備えるバンパ部に設けてある。圧力センサ６Ｌ、６Ｃ、６Ｒ、６Ｂが圧力を検知すると、検知した圧力値信号は制御部４へ送信される。本実施の形態１では、圧力センサ６Ｌ、６Ｃ、６Ｒ、６Ｂは補助センサとして用いる。
【００４０】
上述した構成の自走式移動体１の動作について説明する。図３及び図４は、本発明の実施の形態１に係る自走式移動体１の制御部４における動作制御手順を示すフローチャートである。図３及び図４では右周りに移動する場合について説明する。
【００４１】
自走式移動体１を、周囲を壁で囲まれた領域内に載置し、移動を開始する場合、制御部４は、複数の超音波センサ５Ｌ、５Ｃ、５Ｒからの入力信号に基づいて、最寄の壁の位置を検出する。具体的には、周囲を壁で囲まれた領域内においてｘ軸及びｙ軸で特定される座標軸における原点（０、０）を、自走式移動体１が移動を開始する位置とすべく、制御部４は、移動開始指示が出された時点でＲＡＭ４３の位置座標カウンタ（ｘ、ｙ）を（０、０）にリセットする（ステップＳ３０１）。そして、制御部４のＭＰＵ４１は、以下の移動を行う左右の駆動輪２Ｌ、２Ｒの回転数に応じて、座標カウンタをインクリメント又はデクリメントして、移動中又は移動後の座標値（ｘ、ｙ）をＲＡＭ４３に記憶しておく。
【００４２】
ＭＰＵ４１は、超音波センサ５Ｌ、５Ｃ、５Ｒから入力した信号に基づいて、前方に位置する壁の位置及び方向を算出し（ステップＳ３０２）、壁に向かって直進移動するよう、モータ３Ｌ、３Ｒに正回転指示信号を送信する（ステップＳ３０３）。モータ３Ｌ、３Ｒは、正回転方向に同一回転数で回転し、駆動輪２Ｌ、２Ｒは同一方向へ同一回転数で回転することから、自走式移動体１は壁に向かって直進する。
【００４３】
ＭＰＵ４１は、超音波センサ５Ｌ、５Ｃ、５Ｒから入力した信号に基づいて、前方に位置する壁までの距離を算出し（ステップＳ３０４）、算出した距離が所定値より小さいか否かを判断する（ステップＳ３０５）。ＭＰＵ４１が、算出した距離が所定値より小さいと判断する場合（ステップＳ３０５：ＹＥＳ）、壁に接近したと判断し、ＭＰＵ４１は、壁に沿った方向へ回転するよう、モータ３Ｌには正回転指示信号を、モータ３Ｒには逆回転指示信号を、それぞれ送信する（ステップＳ３０６）。モータ３Ｌ、３Ｒは逆方向に同一回転数で回転し、駆動輪２Ｌ、２Ｒは逆方向に同一回転数で回転することから、自走式移動体１は壁に沿う方向へと方向転換する。
【００４４】
ＭＰＵ４１が、超音波センサ５Ｌ、５Ｃ、５Ｒから入力した信号に基づいて、自走式移動体１が回転することにより方向転換した方向が、壁に沿った方向になったと判断した場合（ステップＳ３０７：ＹＥＳ）、ＭＰＵ４１は、検出した壁に沿った方向に直進するよう、モータ３Ｌ、３Ｒに正回転指示信号を送信する（ステップＳ３０８）。ＭＰＵ４１は、モータ３Ｌ、３Ｒに正回転指示信号を送信した時点の座標値を移動開始座標（ｘ１、ｙ１）としてＲＡＭ４３に記憶しておく。モータ３Ｌ、３Ｒは、正回転方向に回転数を変動させる。駆動輪２Ｌ、２Ｒは同一方向へ回転数を変動させながら回転することから、自走式移動体１は壁との距離を一定の範囲に維持しつつ直進する。
【００４５】
なお、ＭＰＵ４１は、モータ３Ｌ、３Ｒに正回転指示信号を送信するだけでなく、モータ３Ｌ、３Ｒの回転数を指示する信号を送信することも可能である。この場合、例えば超音波センサ５Ｌから入力した信号に基づいて、自走式移動体１と検出した壁との距離を算出し、算出した距離から、自走式移動体１と壁との距離を減算する。ＭＰＵ４１が、減算した値が所定の範囲を超えたと判断した場合、ＭＰＵ４１は、検出した壁との距離を保つよう、モータ３Ｌ、３Ｒに対して、正回転指示信号とともに、回転数指示信号を送信する。
【００４６】
具体的には、ＭＰＵ４１が、減算した値が正であり、かつ所定の範囲を超えた場合、ＭＰＵ４１は、モータ３Ｌの回転数をモータ３Ｒの回転数より小さくするよう指示する信号を送出する。ＭＰＵ４１が、減算した値が負であり、かつ所定の範囲を超えた場合、ＭＰＵ４１は、モータ３Ｒの回転数をモータ３Ｌの回転数より小さくするよう指示する信号を送出する。これにより、駆動輪２Ｌ、２Ｒが同一方向へ回転数を変動させながら回転することで、自走式移動体１は壁との距離を一定の範囲に維持しつつ進行することが可能となる。
【００４７】
ＭＰＵ４１は、モータ３Ｌ、３Ｒに正回転指示信号を送信した時点からの延べ移動距離を算出し（ステップＳ４０１）、算出した延べ移動距離が、事前に設定してある所定値より大きいか否かを判断する（ステップＳ４０２）。
【００４８】
移動途上で、壁が所定の傾斜角度、例えば直角に傾斜している場合、制御部４は、モータ３Ｌ、３Ｒの回転方向を調整することにより、傾斜している角度にあわせて自走式移動体１の移動方向を修正する。算出する移動距離は、壁に沿う方向への移動を開始した位置の座標（ｘ１、ｙ１）から、壁に沿う方向の移動が完了した位置の座標（ｘ２、ｙ２）までの述べ移動距離となる。
【００４９】
ＭＰＵ４１が、算出した移動距離が、事前に設定してある所定値より大きいと判断した場合（ステップＳ４０２：ＹＥＳ）、ＭＰＵ４１は、壁から離脱するよう移動すべき方向を算出し（ステップＳ４０３）、モータ３Ｌには正回転指示信号を、モータ３Ｒには逆回転指示信号を、それぞれ送信する（ステップＳ４０４）。モータ３Ｌ、３Ｒは逆方向に同一回転数で回転し、駆動輪２Ｌ、２Ｒは逆方向に同一回転数で回転することから、自走式移動体１は制御部４が算出した方向へ方向転換する。
【００５０】
図５は、壁に沿う方向への移動を開始した位置の座標（ｘ１、ｙ１）と、壁に沿う方向の移動が完了した位置の座標（ｘ２、ｙ２）との間の移動経路が略直線である場合の、壁から離脱するよう移動すべき方向の算出方法を示す説明図である。図５に示すように、壁に沿う方向への移動を開始した位置の座標（ｘ１、ｙ１）と、壁に沿う方向の移動が完了した位置の座標（ｘ２、ｙ２）とを結ぶ線分は、壁面と略平行であることから、壁面に対して略垂直な方向を示す矢印５１を壁から離脱するよう移動すべき方向として算出する。
【００５１】
図６は、壁に沿う方向への移動を開始した位置の座標（ｘ１、ｙ１）と、壁に沿う方向の移動が完了した位置の座標（ｘ２、ｙ２）との間の移動経路上に所定角度傾斜する位置が存在する場合、例えば部屋の四隅等である場合の、壁から離脱するよう移動すべき方向の算出方法を示す説明図である。図６に示すように、壁に沿う方向への移動を開始した位置の座標（ｘ１、ｙ１）と、壁に沿う方向の移動が完了した位置の座標（ｘ２、ｙ２）とを結ぶ線分は、壁面と（数１）で示す角度θ１を有することから、角度θ１と直交する角度θ２をなす方向を示す矢印６１を壁から離脱するよう移動すべき方向として算出する。
【００５２】
（数１）
θ１＝ｔａｎ-1（（ｘ２−ｘ１）／（ｙ２−ｙ１））
【００５３】
ＭＰＵ４１は、駆動輪２Ｌ、２Ｒの回転数に基づいて方向転換する方向を算出し、壁に沿う方向への移動を開始した位置の座標（ｘ１、ｙ１）と、壁に沿う方向の移動が完了した位置の座標（ｘ２、ｙ２）とを結ぶ線分と直交する方向まで方向転換したか否かを判断する（ステップＳ４０５）。
【００５４】
ＭＰＵ４１が、壁に沿う方向への移動を開始した位置の座標（ｘ１、ｙ１）と、壁に沿う方向の移動が完了した位置の座標（ｘ２、ｙ２）とを結ぶ線分と直交する方向まで方向転換したと判断した場合（ステップＳ４０５：ＹＥＳ）、ＭＰＵ４１は、モータ３Ｌ、３Ｒに正回転指示信号を送信する（ステップＳ４０６）。ＭＰＵ４１は、モータ３Ｌ、３Ｒに正回転指示信号を送信した時点の座標値を移動開始座標（ｘ２、ｙ２）としてＲＡＭ４３に記憶しておく。モータ３Ｌ、３Ｒは、正回転方向に同一回転数で回転し、駆動輪２Ｌ、２Ｒは同一方向へ同一回転数で回転することから、自走式移動体１は壁に沿う方向への移動を開始した位置の座標（ｘ１、ｙ１）と、壁に沿う方向の移動が完了した位置の座標（ｘ２、ｙ２）とを結ぶ線分と直交する方向へ直進する。
【００５５】
ＭＰＵ４１は、モータ３Ｌ、３Ｒに正回転指示信号を送信した時点からの移動距離、すなわち壁から離れるよう移動した距離を算出し（ステップＳ４０７）、算出した移動距離が、事前に設定してある所定値より大きいか否かを判断する（ステップＳ４０８）。
【００５６】
ＭＰＵ４１が、算出した移動距離が、事前に設定してある所定値より大きいと判断した場合（ステップＳ４０８：ＹＥＳ）、ＭＰＵ４１は、所定の方向へ離脱するよう移動を開始した位置へ戻るよう、モータ３Ｌには正回転指示信号を、モータ３Ｒには逆回転指示信号を、それぞれ送信する（ステップＳ４０９）。モータ３Ｌ、３Ｒは逆方向に同一回転数で回転し、駆動輪２Ｌ、２Ｒは逆方向に同一回転数で回転することから、自走式移動体１は略１８０度方向転換する。
【００５７】
ＭＰＵ４１が、算出した移動距離が、事前に設定してある所定値より小さいと判断した場合（ステップＳ４０８：ＮＯ）、ＭＰＵ４１は、超音波センサ５Ｌ、５Ｃ、５Ｒから入力した信号に基づいて、障害物が存在するか否かを確認する（ステップＳ４１２）。ＭＰＵ４１が、障害物の存在を確認した場合（ステップＳ４１２：ＹＥＳ）、すなわち所定の距離移動するまでの中間地点に障害物が存在する場合、ＭＰＵ４１は、所定の方向へ離脱するよう移動を開始した位置へ戻るよう、モータ３Ｌには正回転指示信号を、モータ３Ｒには逆回転指示信号を、それぞれ送信する（ステップＳ４０９）。モータ３Ｌ、３Ｒは逆方向に同一回転数で回転し、駆動輪２Ｌ、２Ｒは逆方向に同一回転数で回転することから、自走式移動体１は略１８０度方向転換する。
【００５８】
ＭＰＵ４１は、駆動輪２Ｌ、２Ｒの回転数に基づいて方向転換する方向を算出し、壁から離れるように直進移動を開始した位置の座標（ｘ２、ｙ２）へ向かうまで、すなわち略１８０度反転したか否かを判断する（ステップＳ４１０）。ＭＰＵ４１が、略１８０度反転したと判断した場合（ステップＳ４１０：ＹＥＳ）、モータ３Ｌ、３Ｒに正回転指示信号を送信する（ステップＳ４１１）。モータ３Ｌ、３Ｒは、正回転方向に同一回転数で回転し、駆動輪２Ｌ、２Ｒは同一方向へ同一回転数で回転することから、自走式移動体１は壁から離れるように直進移動を開始した位置の座標（ｘ２、ｙ２）へ向かって直進する。
【００５９】
以後、ステップＳ３０４へ戻り、制御部４は、上述した略ジグザグ走行を行うよう、自走式移動体１の挙動を制御する。図７は、自走式移動体１を移動開始位置Ｐへ載置した場合の移動経路を示す図である。図７に示すように、自走式移動体１は、壁から離れるように移動した場合、必ず壁から離れるように移動を開始した位置まで戻ってから壁に沿った移動を行うことから、壁の内周すべての面に沿って移動することになり、例えば図７に示すように壁の一部に袋小路が形成されていた場合であっても停滞することなく移動を継続することが可能となる。
【００６０】
以上のように本実施の形態１によれば、壁がどのような形状であっても壁の内周の略すべての面に沿って移動することができ、周囲を壁で囲む領域内にどのような形状の障害物が存在する場合であっても、障害物が存在する領域を除くすべての領域に移動することが可能となる。
【００６１】
（実施の形態２）
以下、本発明の実施の形態２に係る自走式移動体１について説明する。図８は、本発明の実施の形態２に係る自走式移動体１の制御部４における動作制御手順の一部を示すフローチャートである。図８は右周りに移動する場合について説明している。なお、本発明の実施の形態２に係る自走式移動体１の構成は実施の形態１と同様であり、同一の符号を付することで詳細な説明を省略する。
【００６２】
自走式移動体１を、周囲を壁で囲まれた領域内に載置し、移動を開始する場合、制御部４は、複数のセンサ５Ｌ、５Ｃ、５Ｒからの入力信号に基づいて、最寄の壁の位置を検出する。具体的には、周囲を壁で囲まれた領域内においてｘ軸及びｙ軸で特定される座標軸における原点（０、０）を、自走式移動体１が移動を開始する位置とすべく、ＭＰＵ４１は、移動開始指示が出された時点でＲＡＭ４３の位置座標カウンタ（ｘ、ｙ）を（０、０）にリセットする（ステップＳ８０１）。そして、ＭＰＵ４１は、以下の移動を行う左右輪２Ｌ、２Ｒの回転数に応じて、座標カウンタをインクリメント又はデクリメントして、移動中又は移動後の座標値（ｘ、ｙ）をＲＡＭ４３に記憶しておく。
【００６３】
ＭＰＵ４１は、超音波センサ５Ｌ、５Ｃ、５Ｒから入力した信号に基づいて、前方に位置する壁の位置及び方向を算出し（ステップＳ８０２）、壁に対する最短距離及び方向を算出する。すなわち、周囲を壁で囲まれた領域内に、自走式移動体１をどのように載置した場合であっても、自走式移動体１の左右に備えてある超音波センサ５Ｌ、５Ｒからの反射波到達時間が略均一になるように移動する。
【００６４】
具体的には、ＭＰＵ４１は、自走式移動体１の左右に備えてある超音波センサ５Ｌ、５Ｒから入力した信号に基づいて反射波の到達時間を算出する（ステップＳ８０３）。ＭＰＵ４１は、両者の反射波の到達時間を比較し（ステップＳ８０４）、自走式移動体１の左（右）に備えてある超音波センサ５Ｌ（５Ｒ）の反射波の到達時間の方が短い場合、壁面に対して垂直な方向より右（左）方向に向かって移動していると判断する。したがって、ＭＰＵ４１は、モータ３Ｌには逆（正）回転指示信号を、モータ３Ｒには正（逆）回転指示信号を送信して（ステップＳ８０５、Ｓ８０６）、自走式移動体１を方向転換させる。
【００６５】
自走式移動体１が方向転換する間、ＭＰＵ４１は継続的に左右に備えてある超音波センサ５Ｌ、５Ｒから入力した信号に基づいて反射波の到達時間の差を算出し、算出した反射波の到達時間の差が所定値より小さいか否かを判断する（ステップＳ８０７）。ＭＰＵ４１が、超音波センサ５Ｌ、５Ｒから入力した信号に基づいて算出した反射波の到達時間の差が所定値より小さいと判断した場合（ステップＳ８０７：ＹＥＳ）、ＭＰＵ４１は、モータ３Ｌ、３Ｒに正回転指示信号を送信する（ステップＳ８０８）。これにより、自走式移動体１は、移動開始時に周囲を壁で囲まれた領域内にどのように載置した場合であっても、壁面の垂直方向に移動することができ、その後の座標値の演算誤差を最小限に止めることが可能となる。
【００６６】
その後、制御部４は、図３のステップＳ３０４からと同様の処理を実行することにより、実施の形態１と同様の効果を奏することができることは言うまでもない。
【００６７】
また、かかる移動方向の制御方法は、自走式移動体１が略１８０度反転した後、壁に向かって移動する場合にも適用可能である。図４のステップＳ４１１以降、図９に示すように、ＭＰＵ４１は、超音波センサ５Ｌ、５Ｃ、５Ｒから入力した信号に基づいて、反射波の到達時間を算出する（ステップＳ９０１）。ＭＰＵ４１は、３つの超音波センサ５Ｌ、５Ｃ、５Ｒから入力した信号のうち、少なくとも２つの信号に基づいて両者の反射波の到達時間差を算出し（ステップＳ９０２）、算出した反射波の到達時間差に応じて、壁面に対する移動角度を算出する（ステップＳ９０３）。少なくとも２つの信号に基づいて両者の反射波の到達時間差を算出するのは、壁に対する角度によっては、左右いずれかの超音波センサ５Ｌ又は５Ｒでは壁の存在を検知することができないからである。
【００６８】
ＭＰＵ４１は、算出した移動角度と、壁から離れるように直進移動した壁に対する角度との差を算出し（ステップＳ９０４）、両角度の差が所定値より大きいか否かを判断する（ステップＳ９０５）。ＭＰＵ４１が、両角度の差が所定値より大きいと判断した場合（ステップＳ９０５：ＹＥＳ）、ＭＰＵ４１は、算出した移動角度の方が、壁から離れるように直進移動した壁に対する角度よりも大きいか否かを判断する（ステップＳ９０６）。
【００６９】
ＭＰＵ４１が、算出した移動角度の方が、壁から離れるように直進移動した壁に対する角度よりも大きいと判断した場合（ステップＳ９０６：ＹＥＳ）、本来移動すべき角度よりも右に傾いていると判断し、ＭＰＵ４１は、モータ３Ｌには逆回転指示信号を、モータ３Ｒには正回転指示信号を、それぞれ送信して（ステップＳ９０７）、自走式移動体１を方向転換させる。
【００７０】
ＭＰＵ４１が、算出した移動角度の方が、壁から離れるように直進移動した壁に対する角度よりも小さいと判断した場合（ステップＳ９０６：ＮＯ）、本来移動すべき角度よりも左に傾いていると判断し、ＭＰＵ４１は、モータ３Ｌには正回転指示信号を、モータ３Ｒには逆回転指示信号を、それぞれ送信して（ステップＳ９０８）、自走式移動体１を方向転換させる。
【００７１】
自走式移動体１が方向転換する間、ＭＰＵ４１は３つの超音波センサ５Ｌ、５Ｃ、５Ｒから入力した信号のうち、少なくとも２つの信号に基づいて両者の反射波の到達時間の差を継続的に算出し、算出した反射波の到達時間の差に基づいて算出した壁に対する角度の差が所定値より小さいか否かを判断する。ＭＰＵ４１が、両角度の差が所定値より小さいと判断した場合（ステップＳ９０５：ＮＯ）、ＭＰＵ４１は、モータ３Ｌ、３Ｒに正回転指示信号を送信する（ステップＳ９０９）。これにより、自走式移動体１は、床面の凹凸等により、壁から離れるよう移動した角度と相違する角度で移動した場合であっても、移動角度を正しい角度に補正することができ、壁から離れるように移動を開始した位置に精度良く戻ることができ、壁面のすべての面に沿って領域内を略ジグザグ移動することが可能となる。
【００７２】
以上のように本実施の形態２によれば、最初にセンサが検知した壁に向かって移動する際に、床面の凹凸等の床面状況により壁に向かって直進することが困難である場合であっても、複数のセンサによる検出結果に応じて移動方向を補正しながら壁に向かって移動することができ、高価であり、しかも高精度である位置計測手段を用いることなく、移動体の位置を正確に判断しながら移動することが可能となる。
【００７３】
また、壁から離脱した後、反転して壁に向かって移動する際に、床面の凹凸等の床面状況により壁に向かって直進することが困難である場合であっても、複数のセンサによる検出結果に応じて移動方向を補正しながら壁から離脱した位置に正確に戻るように移動することができ、高価であり、しかも高精度である位置計測手段を用いることなく、移動体の位置を正確に判断しながら移動することが可能となる。
【００７４】
（実施の形態３）
以下、本発明の実施の形態３に係る自走式移動体１について説明する実施の形態３は、自走式移動体１が略１８０度反転した後、壁に向かって移動した後の移動制御手順に特徴を有する。図１０及び図１１は、本発明の実施の形態３に係る自走式移動体１の制御部４における動作制御手順の一部を示すフローチャートである。図１０及び図１１は右周りに移動する場合について説明している。なお、本発明の実施の形態３に係る自走式移動体１の構成は実施の形態１と同様であり、同一の符号を付することで詳細な説明を省略する。
【００７５】
ＭＰＵ４１は、超音波センサ５Ｌ、５Ｃ、５Ｒから入力した信号に基づいて、前方に位置する壁までの距離を算出し（ステップＳ１００１）、ＭＰＵ４１は、算出した距離が所定値より小さいか否かを判断する（ステップＳ１００２）。
【００７６】
ＭＰＵ４１が、算出した距離が所定値より小さいと判断する場合（ステップＳ１００２：ＹＥＳ）、壁に接近したと判断し、ＭＰＵ４１は、超音波センサ５Ｌ、５Ｃ、５Ｒから入力した信号に基づいて、反射波の到達時間を算出する（ステップＳ１００３）。
【００７７】
ＭＰＵ４１は、３つの超音波センサ５Ｌ、５Ｃ、５Ｒから入力した信号のうち、少なくとも２つの信号に基づいて両者の反射波の到達時間差を算出し（ステップＳ１００４）、算出した反射波の到達時間差に応じて、壁面到達時における壁面の法線方向に対する移動角度αを算出し（ステップＳ１００５）、ＲＡＭ４３に記憶しておく。少なくとも２つの信号に基づいて両者の反射波の到達時間差を算出するのは、壁に対する移動角度によっては、左右いずれかの超音波センサ５Ｌ又は５Ｒでは壁の存在を検知することができないからである。また、移動角度αは、壁面の法線方向を０度とし、進行方向（本実施の形態では右周りであることから右方向）を正とする。
【００７８】
ＭＰＵ４１は、壁に沿った方向へ回転するよう、モータ３Ｌには正回転指示信号を、モータ３Ｒには逆回転指示信号を、それぞれ送信する（ステップＳ１００６）。モータ３Ｌ、３Ｒは逆方向に同一回転数で回転し、駆動輪２Ｌ、２Ｒは逆方向に同一回転数で回転することから、自走式移動体１は壁に沿う方向へと方向転換する。
【００７９】
ＭＰＵ４１が、超音波センサ５Ｌ、５Ｃ、５Ｒから入力した信号に基づいて、自走式移動体１が回転することにより方向転換した方向が、壁に沿った方向になったと判断した場合（ステップＳ１００７：ＹＥＳ）、ＭＰＵ４１は、検出した壁に沿った方向に直進するよう、モータ３Ｌ、３Ｒに正回転指示信号を送信する（ステップＳ１００８）。ＭＰＵ４１は、モータ３Ｌ、３Ｒに正回転指示信号を送信した時点の座標値を移動開始座標（ｘ１、ｙ１）としてＲＡＭ４３に記憶しておく。モータ３Ｌ、３Ｒは、正回転方向に回転数を変動させる。駆動輪２Ｌ、２Ｒは同一方向へ回転数を変動させながら回転することから、自走式移動体１は壁との距離を一定の範囲に維持しつつ直進する。
【００８０】
なお、ＭＰＵ４１は、モータ３Ｌ、３Ｒに正回転指示信号を送信するだけでなく、実施の形態１と同様、モータ３Ｌ、３Ｒの回転数を指示する信号を送信することも可能である。これにより、駆動輪２Ｌ、２Ｒが同一方向へ回転数を変動させながら回転することで、自走式移動体１は壁との距離を一定の範囲に維持しつつ進行することも可能となる。
【００８１】
ＭＰＵ４１は、モータ３Ｌ、３Ｒに正回転指示信号を送信した時点からの延べ移動距離を算出し（ステップＳ１１０１）、算出した延べ移動距離が、事前に設定してある所定値より大きいか否かを判断する（ステップＳ１１０２）。
【００８２】
移動途上で、壁が所定の傾斜角度、例えば直角に傾斜している場合、制御部４は、モータ３Ｌ、３Ｒの回転方向を調整することにより、傾斜している角度にあわせて自走式移動体１の移動方向を修正する。算出する移動距離は、壁に沿う方向への移動を開始した位置の座標（ｘ１、ｙ１）から、壁に沿う方向の移動が完了した位置の座標（ｘ２、ｙ２）までの述べ移動距離となる。
【００８３】
ＭＰＵ４１が、算出した移動距離が、事前に設定してある所定値より大きいと判断した場合（ステップＳ１１０２：ＹＥＳ）、ＭＰＵ４１は、壁から離脱するよう移動すべき方向を算出し（ステップＳ１１０３）、モータ３Ｌには正回転指示信号を、モータ３Ｒには逆回転指示信号を、それぞれ送信する（ステップＳ１１０４）。モータ３Ｌ、３Ｒは逆方向に同一回転数で回転し、駆動輪２Ｌ、２Ｒは逆方向に同一回転数で回転することから、自走式移動体１は制御部４が算出した方向へ方向転換する。
【００８４】
ＭＰＵ４１は、駆動輪２Ｌ、２Ｒの回転数に基づいて方向転換する方向を算出し、壁に沿う方向への移動を開始した位置の座標（ｘ１、ｙ１）と、壁に沿う方向の移動が完了した位置の座標（ｘ２、ｙ２）とを結ぶ線分と直交する方向まで方向転換したか否かを判断する（ステップＳ１１０５）。
【００８５】
ＭＰＵ４１が、壁に沿う方向への移動を開始した位置の座標（ｘ１、ｙ１）と、壁に沿う方向の移動が完了した位置の座標（ｘ２、ｙ２）とを結ぶ線分と直交する方向まで方向転換したと判断した場合（ステップＳ１１０５：ＹＥＳ）、ＭＰＵ４１は、モータ３Ｌ、３Ｒに正回転指示信号を送信する（ステップＳ１１０６）。ＭＰＵ４１は、モータ３Ｌ、３Ｒに正回転指示信号を送信した時点の座標値を移動開始座標（ｘ２、ｙ２）としてＲＡＭ４３に記憶しておく。モータ３Ｌ、３Ｒは、正回転方向に同一回転数で回転し、駆動輪２Ｌ、２Ｒは同一方向へ同一回転数で回転することから、自走式移動体１は壁に沿う方向への移動を開始した位置の座標（ｘ１、ｙ１）と、壁に沿う方向の移動が完了した位置の座標（ｘ２、ｙ２）とを結ぶ線分と直交する方向へ直進する。
【００８６】
ＭＰＵ４１は、モータ３Ｌ、３Ｒに正回転指示信号を送信した時点からの移動距離、すなわち壁から離れるよう移動した距離を算出し（ステップＳ１１０７）、算出した移動距離が、事前に設定してある所定値より大きいか否かを判断する（ステップＳ１１０８）。
【００８７】
ＭＰＵ４１が、算出した移動距離が、事前に設定してある所定値より大きいと判断した場合（ステップＳ１１０８：ＹＥＳ）、ＭＰＵ４１は、所定の方向へ離脱するよう移動を開始した位置へ戻るよう、モータ３Ｌには正回転指示信号を、モータ３Ｒには逆回転指示信号を、それぞれ送信する（ステップＳ１１０９）。モータ３Ｌ、３Ｒは逆方向に同一回転数で回転し、駆動輪２Ｌ、２Ｒは逆方向に同一回転数で回転することから、自走式移動体１は略１８０度方向転換する。
【００８８】
ＭＰＵ４１が、算出した移動距離が、事前に設定してある所定値より小さいと判断した場合（ステップＳ１１０８：ＮＯ）、ＭＰＵ４１は、超音波センサ５Ｌ、５Ｃ、５Ｒから入力した信号に基づいて、障害物が存在するか否かを確認する（ステップＳ１１１２）。ＭＰＵ４１が、障害物の存在を確認した場合（ステップＳ１１１２：ＹＥＳ）、すなわち所定の距離移動するまでの中間地点に障害物が存在する場合、ＭＰＵ４１は、所定の方向へ離脱するよう移動を開始した位置へ戻るよう、モータ３Ｌには正回転指示信号を、モータ３Ｒには逆回転指示信号を、それぞれ送信する（ステップＳ１１０９）。モータ３Ｌ、３Ｒは逆方向に同一回転数で回転し、駆動輪２Ｌ、２Ｒは逆方向に同一回転数で回転することから、自走式移動体１は略１８０度方向転換する。
【００８９】
ＭＰＵ４１は、駆動輪２Ｌ、２Ｒの回転数に基づいて方向転換する方向を算出し、１８０度からＲＡＭ４３に記憶してある角度αを減算した角度まで反転したか否かを判断する（ステップＳ１１１０）。ＭＰＵ４１が、１８０度から角度αを減算した角度まで反転したと判断した場合（ステップＳ１１１０：ＹＥＳ）、モータ３Ｌ、３Ｒに正回転指示信号を送信する（ステップＳ１１１１）。モータ３Ｌ、３Ｒは、正回転方向に同一回転数で回転し、駆動輪２Ｌ、２Ｒは同一方向へ同一回転数で回転することから、自走式移動体１は壁から離れるように直進移動を開始した位置の座標（ｘ２、ｙ２）へ向かって直進する。
【００９０】
以後、ステップＳ１００１へ戻り、制御部４は、上述した略ジグザグ走行を行うよう、自走式移動体１の挙動を制御する。
【００９１】
以上のように本実施の形態３によれば、壁から離脱した後、反転して壁に向かって移動する際に、床面の凹凸等の床面状況により壁に向かって直進することが困難である場合であっても、複数のセンサによる検出結果に応じて、壁まで戻ってきた時点の移動方向を算出し、次回の反転して壁に向かって移動する際には、算出した移動方向に応じて反転方向を補正することができ、高価であり、しかも高精度である位置計測手段を用いることなく、移動体を壁から離脱した位置へと戻すことが可能となる。
【００９２】
（実施の形態４）
以下、本発明の実施の形態４に係る自走式移動体１について説明する。図１２は、本発明の実施の形態４に係る自走式移動体１の制御部４における動作制御手順の一部を示すフローチャートである。図１２は右周りに移動する場合について説明している。なお、本発明の実施の形態４に係る自走式移動体１の構成は実施の形態１と同様であり、同一の符号を付することで詳細な説明を省略する。
【００９３】
本実施の形態４での自走式移動体１の制御部４における動作制御手順は、図３及び図４と同様である。本実施の形態３では、図４のステップＳ４１１以降の移動時に、障害物を検知した場合の処理手順について説明する。
【００９４】
ＭＰＵ４１は、超音波センサ５Ｌ、５Ｃ、５Ｒから入力した信号に基づいて、前方に障害物が存在するか否かを判断する（ステップＳ１２０１）。ＭＰＵ４１は、障害物が存在すると判断した場合、左右の超音波センサ５Ｌ、５Ｒから入力した信号に基づいて、いずれの方向へ移動する方が短い距離で回り込むことができるか否かを判断する。
【００９５】
具体的には、ＭＰＵ４１は、左右の超音波センサ５Ｌ、５Ｒから入力した信号に基づいて、進行方向と垂直な方向における障害物の左右の幅を算出し（ステップＳ１２０２）、障害物の左右の幅を比較する（ステップＳ１２０３）。ＭＰＵ４１が、右の幅の方が短いと判断した場合は右方向へ、左の幅の方が短いと判断した場合には左方向へ、それぞれ回り込むように駆動信号を送信する。
【００９６】
例えば右（左）の幅の方が短いと判断した場合、ＭＰＵ４１は、モータ３Ｌには正（逆）回転指示信号を、モータ３Ｒには逆（正）回転指示信号を、それぞれ送信して（ステップＳ１２０４）、自走式移動体１を右（左）方向へ方向転換させる。
【００９７】
自走式移動体１が方向転換する間、ＭＰＵ４１は３つの超音波センサ５Ｌ、５Ｃ、５Ｒから入力した信号のうち、少なくとも２つの信号に基づいて自走式移動体１の向きを算出し、算出した自走式移動体１の向きが検出した障害物に沿った方向であるか否かを判断する（ステップＳ１２０５）。ＭＰＵ４１が、算出した自走式移動体１の向きが検出した障害物に沿った方向であると判断した場合（ステップＳ１２０５：ＹＥＳ）、ＭＰＵ４１は、モータ３Ｌ、３Ｒに正回転指示信号を送信する（ステップＳ１２０６）。
【００９８】
ＭＰＵ４１は、駆動輪２Ｌ、２Ｒの回転数に基づいて移動距離を算出し（ステップＳ１２０７）、算出した移動距離が右（左）の幅の長さまで達したか否かを判断する（ステップＳ１２０８）。ＭＰＵ４１が、算出した移動距離が右（左）の幅の長さまで達したと判断した場合（ステップＳ１２０８：ＹＥＳ）、ＭＰＵ４１は、モータ３Ｌには逆（正）回転指示信号を、モータ３Ｒには正（逆）回転指示信号を、それぞれ送信して（ステップＳ１２０９）、自走式移動体１を左（右）方向へ方向転換させる。
【００９９】
ＭＰＵ４１は、自走式移動体１が方向転換する間、ＭＰＵ４１は３つの超音波センサ５Ｌ、５Ｃ、５Ｒから入力した信号のうち、少なくとも２つの信号に基づいて自走式移動体１の向きを算出し、算出した自走式移動体１の向きが障害物を検出した時点での移動方向であるか否かを判断する（ステップＳ１２１０）。ＭＰＵ４１が、算出した自走式移動体１の向きが障害物を検出した時点での移動方向であると判断した場合（ステップＳ１２１０：ＹＥＳ）、ＭＰＵ４１は、モータ３Ｌ、３Ｒに正回転指示信号を送信する（ステップＳ１２１１）。
【０１００】
これにより、自走式移動体１は、障害物が存在した場合であっても障害物を回り込むように移動することができ、壁から離れるように移動を開始した位置に戻ることにより、壁面のすべての面に沿って領域内を略ジグザグ移動することが可能となる。
【０１０１】
以上のように本実施の形態４によれば、壁に戻る途上に障害物が存在した場合であっても障害物を回り込むように回避することができ、壁から離れるように移動を開始した位置に戻ることにより、壁の内周の略すべての面に沿って移動することができることから、障害物が存在する領域を除くすべての領域に移動することが可能となる。
【０１０２】
なお、本実施の形態１乃至４においては、説明を簡単にすべく、モータ３Ｌ、３Ｒの回転数が同じになるよう、すなわち直進運動と、その場回転運動とを組み合わせた移動制御を行う場合について説明しているが、これに限定されるものではなく、停止させても良いし、例えばエンコーダ等を用いることで駆動輪の回転数を変動制御し、移動体の回転半径を変動させ、回転運動を含めた移動制御を行う方法であっても同様の効果が期待できる。
【図面の簡単な説明】
【０１０３】
【図１】本発明の実施の形態１に係る自走式移動体の概略構成例を示すブロック図である。
【図２】制御部の構成を示すブロック図である。
【図３】本発明の実施の形態１に係る自走式移動体の制御部における動作制御手順を示すフローチャートである。
【図４】本発明の実施の形態１に係る自走式移動体の制御部における動作制御手順を示すフローチャートである。
【図５】壁から離脱するよう移動すべき方向の算出方法を示す説明図である。
【図６】壁から離脱するよう移動すべき方向の算出方法を示す説明図である。
【図７】自走式移動体を移動開始位置Ｐへ載置した場合の移動経路を示す図である。
【図８】本発明の実施の形態２に係る自走式移動体の制御部における動作制御手順を示すフローチャートである。
【図９】本発明の実施の形態２に係る自走式移動体の制御部における動作制御手順を示すフローチャートである。
【図１０】本発明の実施の形態３に係る自走式移動体の制御部における動作制御手順を示すフローチャートである。
【図１１】本発明の実施の形態３に係る自走式移動体の制御部における動作制御手順を示すフローチャートである。
【図１２】本発明の実施の形態４に係る自走式移動体の制御部における動作制御手順を示すフローチャートである。
【符号の説明】
【０１０４】
１  自走式移動体
２Ｒ、２Ｌ  駆動輪
２Ｃ  操舵輪
３Ｒ、３Ｌ  モータ
４  制御部
５Ｒ、５Ｃ、５Ｌ  超音波センサ
６Ｒ、６Ｃ、６Ｌ、６Ｂ  圧力センサ
４１  ＭＰＵ
４２  ＲＯＭ
４３  ＲＡＭ
４４  信号送受信部
【図１】
2005309700.tif 000003
【図２】
2005309700.tif 000004
【図３】
2005309700.tif 000005
【図４】
2005309700.tif 000006
【図５】
2005309700.tif 000007
【図６】
2005309700.tif 000008
【図７】
2005309700.tif 000009
【図８】
2005309700.tif 000010
【図９】
2005309700.tif 000011
【図１０】
2005309700.tif 000012
【図１１】
2005309700.tif 000013
【図１２】
2005309700.tif 000014