(57)【要約】【課題】自律走行ロボットクリーナーにおいて、部屋の壁等の障害物が途中で屈曲している場合でも、経路を間違うことなく走行でき、掃除の遣り残しを軽減できる。【解決手段】ロボットクリーナー１は、Ｃ点から壁５０ａに沿って走行する。続いて、Ｐ１点で壁５０ｂに到達すると、右に９０°旋回して機器本体２の大きさだけ移動した後、さらに右に９０°旋回して直進し、壁５０ｃに到達すると、左に９０°旋回して機器本体２の大きさだけ移動した後、さらに左に９０°旋回して直進する走行を繰り返して、綴り折状の経路で走行する。その後、Ｐ４点で壁５０ｄに到達すると、壁５０ｄに沿って走行する。そして、Ｐ５点を通過すると、壁５０ｄに沿っての走行を止め、壁５０ｅに沿っては走行せずに、壁５０ｄに沿って走行していたときと同じ方向に直進する。その後、Ｐ６点を経て綴り折状の経路で走行し、Ｐ７点で壁５０ｅに到達すると走行を停止する。【選択図】図５
2005230044.tif 000002
【特許請求の範囲】
【請求項１】
機器本体を走行、旋回させる左車輪及び右車輪を有する走行手段と、機器本体の前方及び側方の壁までの距離を各々検出する障害物検出手段と、機器本体の走行する領域を掃除する掃除手段と、前記障害物検出手段の出力を基に前記走行手段による機器本体の走行及び前記掃除手段による掃除動作を制御する制御手段とを備えた自律走行ロボットクリーナーにおいて、
地磁気の方向を基に機器本体の進行方向を検出する第１の進行方向検出手段と、
前記左車輪及び右車輪の各々の回転数を基に機器本体の進行方向を検出する第２の進行方向検出手段と、
前記左車輪及び右車輪の各々の回転数を基に機器本体の走行距離を検出する走行距離検出手段とを備え、
前記制御手段は、
機器本体を第１の壁に沿って走行させ、
その後、進行方向前方の第２の壁に到達すると、機器本体を略９０°旋回させて機器本体の大きさだけ移動させた後、さらに機器本体を略９０°旋回させて進行方向前方の第３の壁に到達するまで直進走行させ、この走行動作を繰り返して綴り折状の経路で走行させ、
その後、前記第１の壁と略平行な第４の壁に到達すると、該第４の壁に沿って機器本体を走行させ、
前記綴り折状の経路での走行に際しては、
前記第１の進行方向検出手段の出力を基に進行方向を判断すると共に、前記障害物検出手段の出力を基に進行方向前方の壁に到達したことを判断して、綴り折状の経路となるように機器本体を走行させ、
前記壁に沿っての走行に際しては、
前記障害物検出手段の出力を基に機器本体の側方に位置する壁までの距離を検出して、壁までの距離が所定値を超えると壁に接近するように機器本体を走行させ、壁までの距離が所定値以下になると壁から遠ざかるように機器本体を走行させ、
所定時間毎に、前記第２の進行方向検出手段の出力及び前記走行距離検出手段の出力を基に機器本体の進行方向と走行距離とを示す進行ベクトルを算出すると共に、それまでの進行ベクトルを累積加算した累積ベクトルを算出して、前記進行ベクトルの前記累積ベクトルに対する傾きを求め、
前記進行ベクトルの傾きが所定値以下であると、該壁に沿っての走行を継続し、
前記進行ベクトルの傾きが所定値を超えると、該壁に沿っての走行を中止して、前記累積ベクトルの方向に機器本体を直進走行させ、その後、前記綴り折状の経路で機器本体を走行させることを特徴とする自律走行ロボットクリーナー。
【請求項２】
機器本体を走行、旋回させる走行手段と、機器本体の側方の障害物までの距離を検出する障害物検出手段と、機器本体の走行する領域を掃除する掃除手段と、前記障害物検出手段の出力を基に前記走行手段による機器本体の走行及び前記掃除手段による掃除動作を制御する制御手段とを備えた自律走行ロボットクリーナーにおいて、
機器本体の進行方向を検出する進行方向検出手段と、
機器本体の走行距離を検出する走行距離検出手段とを備え、
前記制御手段は、
前記障害物検出手段の出力を基に機器本体の側方に位置する障害物までの距離が略一定となるように機器本体を障害物に沿って走行させ、
該障害物に沿っての走行中に、所定のタイミング毎に、前記進行方向検出手段の出力及び前記走行距離検出手段の出力を基に機器本体の進行方向と走行距離とを示す進行ベクトルを算出すると共に、それまでの進行ベクトルを累積加算した累積ベクトルを算出して、前記進行ベクトルの前記累積ベクトルに対する傾きを求め、
前記進行ベクトルの傾きが所定値を超えると、該記障害物に沿っての走行を中止して、前記累積ベクトルの方向に機器本体を走行させることを特徴とする自律走行ロボットクリーナー。
【請求項３】
前記走行手段は、機器本体を走行、旋回させる左車輪及び右車輪を有し、
前記進行方向検出手段は、前記左車輪及び右車輪の各々の回転数を基に機器本体の進行方向を検出するものであり、
前記走行距離検出手段は、前記左車輪及び右車輪の各々の回転数を基に機器本体の走行距離を検出するものである請求項２に記載の自律走行ロボットクリーナー。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、自律走行しながら部屋の掃除を行う自律走行ロボットクリーナーに関するものである。
【背景技術】
【０００２】
従来から、自律走行ロボットクリーナーにおいて、進行方向前方の壁に到達すると横に移動した後に壁と反対方向に走行する動作を繰り返す、綴り折状の経路で走行しながら掃除するものが知られている。また、このような綴り折状の経路で走行しながらの掃除において、壁付近では、壁との距離を一定に保って走行することが、より綺麗に掃除できる方法として知られている。
【０００３】
また、左右の駆動輪の回転を検出するロータリーエンコーダの出力を用いて位置と方向を特定して自立走行を制御するようにした自律走行ロボットクリーナーも知られている（例えば、特許文献１及び特許文献２参照）。また、接触センサにより壁までの距離を測定し、その測定結果を基に壁の傾き及び凹凸状態を検出し、その検出結果に基づき作業用アームの位置を制御する自律走行車が知られている（例えば、特許文献３参照）。また、非接触センサにより左右両側の壁までの距離を測定し、その距離割合が所定値以上急変した場合、倣い走行制御を停止し、直進走行制御を実行する自律走行車が知られている（例えば、特許文献４参照）。また、壁に沿って走行している最中に、壁までの距離が基準距離よりも一定の距離以上長い場合は、壁に凹部が存在すると判断し、方位センサにより検出された方位に基づいて直進走行するように制御を切換えることで、凹部の内側へ入り込んで衝突する事態を回避するようにした自律走行ロボットクリーナーも知られている（例えば、特許文献５参照）。
【特許文献１】特開２００２−８５３０５号公報
【特許文献２】特開平２−２４１４２１号公報
【特許文献３】特開平８−２８６７４６号公報
【特許文献４】特開平８−２８６７４７号公報
【特許文献５】特開平８−８４６９６号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
ところが、上述した従来のロボットクリーナーにおいては、壁との距離を一定に保って走行する場合、壁が途中から斜めに屈曲していると、その屈曲した壁に沿って走行することになり、本来の走行経路である綴り折状の経路から外れてしまい、掃除の遣り残しを生じてしまう。なお、上述した特許文献１乃至特許文献５に開示の内容を適用したとしても、上記の課題を解決することはできない。
【０００５】
本発明は、上記課題を解決するためになされたものであり、部屋の壁等の障害物が途中で屈曲している場合でも、経路を間違うことなく走行でき、掃除の遣り残しを軽減できる自律走行ロボットクリーナーを提供することを目的とする。
【課題を解決するための手段】
【０００６】
上記目的を達成するために請求項１の発明は、機器本体を走行、旋回させる左車輪及び右車輪を有する走行手段と、機器本体の前方及び側方の壁までの距離を各々検出する障害物検出手段と、機器本体の走行する領域を掃除する掃除手段と、障害物検出手段の出力を基に走行手段による機器本体の走行及び掃除手段による掃除動作を制御する制御手段とを備えた自律走行ロボットクリーナーにおいて、地磁気の方向を基に機器本体の進行方向を検出する第１の進行方向検出手段と、左車輪及び右車輪の各々の回転数を基に機器本体の進行方向を検出する第２の進行方向検出手段と、左車輪及び右車輪の各々の回転数を基に機器本体の走行距離を検出する走行距離検出手段とを備え、制御手段は、機器本体を第１の壁に沿って走行させ、その後、進行方向前方の第２の壁に到達すると、機器本体を略９０°旋回させて機器本体の大きさだけ移動させた後、さらに機器本体を略９０°旋回させて進行方向前方の第３の壁に到達するまで直進走行させ、この走行動作を繰り返して綴り折状の経路で走行させ、その後、第１の壁と略平行な第４の壁に到達すると、該第４の壁に沿って機器本体を走行させ、綴り折状の経路での走行に際しては、第１の進行方向検出手段の出力を基に進行方向を判断すると共に、障害物検出手段の出力を基に進行方向前方の壁に到達したことを判断して、綴り折状の経路となるように機器本体を走行させ、壁に沿っての走行に際しては、障害物検出手段の出力を基に機器本体の側方に位置する壁までの距離を検出して、壁までの距離が所定値を超えると壁に接近するように機器本体を走行させ、壁までの距離が所定値以下になると壁から遠ざかるように機器本体を走行させ、所定時間毎に、第２の進行方向検出手段の出力及び走行距離検出手段の出力を基に機器本体の進行方向と走行距離とを示す進行ベクトルを算出すると共に、それまでの進行ベクトルを累積加算した累積ベクトルを算出して、進行ベクトルの累積ベクトルに対する傾きを求め、進行ベクトルの傾きが所定値以下であると、該壁に沿っての走行を継続し、進行ベクトルの傾きが所定値を超えると、該壁に沿っての走行を中止して、累積ベクトルの方向に機器本体を直進走行させ、その後、綴り折状の経路で機器本体を走行させるものである。
【０００７】
請求項２の発明は、機器本体を走行、旋回させる走行手段と、機器本体の側方の障害物までの距離を検出する障害物検出手段と、機器本体の走行する領域を掃除する掃除手段と、障害物検出手段の出力を基に走行手段による機器本体の走行及び掃除手段による掃除動作を制御する制御手段とを備えた自律走行ロボットクリーナーにおいて、機器本体の進行方向を検出する進行方向検出手段と、機器本体の走行距離を検出する走行距離検出手段とを備え、制御手段は、障害物検出手段の出力を基に機器本体の側方に位置する障害物までの距離が略一定となるように機器本体を障害物に沿って走行させ、該障害物に沿っての走行中に、所定のタイミング毎に、進行方向検出手段の出力及び走行距離検出手段の出力を基に機器本体の進行方向と走行距離とを示す進行ベクトルを算出すると共に、それまでの進行ベクトルを累積加算した累積ベクトルを算出して、進行ベクトルの累積ベクトルに対する傾きを求め、進行ベクトルの傾きが所定値を超えると、該記障害物に沿っての走行を中止して、累積ベクトルの方向に機器本体を走行させるものである。
【０００８】
請求項３の発明は、請求項２に記載の自律走行ロボットクリーナーにおいて、走行手段は、機器本体を走行、旋回させる左車輪及び右車輪を有し、進行方向検出手段は、左車輪及び右車輪の各々の回転数を基に機器本体の進行方向を検出するものであり、走行距離検出手段は、左車輪及び右車輪の各々の回転数を基に機器本体の走行距離を検出するものである。
【発明の効果】
【０００９】
請求項１の発明によれば、部屋の壁が途中で斜めに屈曲している場合、壁に沿っての走行中に壁の屈曲箇所を通過すると、進行ベクトルの累積ベクトルに対する傾きが所定値を超えることになる。これにより、自律走行ロボットクリーナーは、壁の屈曲箇所を通過すると、壁に沿っての走行を中止し、累積ベクトルの方向（すなわち、それまで壁に沿って走行していたときと同じ方向）に走行する。従って、壁が途中で斜めに屈曲している場合でも、本来の走行経路から外れることなく真直ぐに走行して、最後まで綴り折状の走行経路で掃除することが可能となり、掃除の遣り残しを軽減でき、部屋を綺麗に掃除することができる。
【００１０】
また、進行ベクトル及び累積ベクトルは、左車輪及び右車輪の各々の回転数から検出された進行方向を基に算出される。例えば、地磁気の方向を基に進行方向を検出し、その進行方向を基に進行ベクトル及び累積ベクトルを算出する場合は、壁に近い場所では、部屋の柱に用いられている鉄筋による磁気の影響を受けて、進行ベクトル及び累積ベクトルを正確に算出できず、間違った経路を走行する虞がある。これに対し、請求項１の発明のように、左車輪及び右車輪の各々の回転数を基に進行方向を検出し、その進行方向を基に進行ベクトル及び累積ベクトルを算出することで、鉄筋による磁気の影響を受けることなく進行ベクトル及び累積ベクトルを正確に算出でき、走行経路を間違うことなく壁に沿って走行でき、部屋を綺麗に掃除することができる。
【００１１】
請求項２の発明によれば、部屋の壁等の障害物が途中で斜めに屈曲している場合、障害物に沿っての走行中に障害物の屈曲箇所を通過すると、進行ベクトルの累積ベクトルに対する傾きが所定値を超えることになる。これにより、自律走行ロボットクリーナーは、障害物の屈曲箇所を通過すると、障害物に沿っての走行を中止し、累積ベクトルの方向（すなわち、それまで障害物に沿って走行していたときと同じ方向）に走行する。従って、障害物が途中で斜めに屈曲している場合でも、本来の走行経路から外れることなく真直ぐに走行して掃除することが可能となり、掃除の遣り残しを軽減でき、部屋を綺麗に掃除することができる。
【００１２】
請求項３の発明によれば、進行ベクトル及び累積ベクトルは、左車輪及び右車輪の各々の回転数を基に算出される。例えば、地磁気センサを用いて地磁気を基に自律走行ロボットクリーナーの進行方向を検出し、その進行方向を基に進行ベクトル及び累積ベクトルを算出する場合は、壁や障害物に近い場所では、部屋の柱に用いられている鉄筋やオーディオ機器のスピーカ等による磁気の影響を受けて、進行ベクトル及び累積ベクトルを正確に算出できず、間違った経路を走行する虞がある。これに対し、請求項３の発明のように、左車輪及び右車輪の各々の回転数を基に進行ベクトル及び累積ベクトルを算出することで、鉄筋やスピーカ等による磁気の影響を受けることなく進行ベクトル及び累積ベクトルを正確に算出でき、走行経路を間違うことなく壁に沿って走行でき、部屋を綺麗に掃除することができる。
【発明を実施するための最良の形態】
【００１３】
以下、本発明を具体化した実施形態について図面を参照して説明する。まず、本実施形態による自律走行ロボットクリーナーの概略構成を図１（ａ）（ｂ）及び図２に示す。自律走行ロボットクリーナー１は、部屋の床面を自律走行して床面を掃除する機器であり、機器本体２を走行させる左車輪３、右車輪４、前車輪５と、床面に落ちているゴミを収集するサブブラシ６、メインブラシ７、ローラ８、吸引ノズル９、ダストボックス１０、吸引用ファン１１とを備えている。また、自律走行ロボットクリーナー１は、機器本体２の周囲の障害物を検出する前方センサ１２ａ，１２ｂ，１２ｃ、左段差センサ１３、右段差センサ１４、天井センサ１５と、センサ用照明ランプ１６とを備えている。前方センサ１２ａ，１２ｂ，１２ｃ、左段差センサ１３、右段差センサ１４、天井センサ１５により、障害物検出手段が構成されている。
【００１４】
左車輪３、及び右車輪４は、各々独立して正転・逆転駆動される駆動輪であり、前車輪５は、従動輪である。自律走行ロボットクリーナー１は、左車輪３と右車輪４が同じ回転速度で正転駆動されることにより正面（前方）方向（図中矢印Ａ方向）に直進走行し、左車輪３と右車輪４の一方を正転駆動し、他方を逆転駆動することにより、その位置で時計回りの方向（図中矢印Ｂ方向）又は反時計回りの方向（図中矢印Ｃ方向）に旋回するようになっている。また、左車輪３と右車輪４が逆転駆動されることにより後退し、左車輪３と右車輪４が異なる回転速度で駆動されることにより右又は左にカーブして走行するようにもなっている。
【００１５】
サブブラシ６は、床面に落ちているゴミを掻き集めるものであり、機器本体２の前部に２つのものが配置されており、各々、図中矢印Ｄ１方向、Ｄ２方向に回転駆動されるようになっている。メインブラシ７は、床面に落ちているゴミを掻き上げるものであり、サブブラシ６の後方に配置されており、図中矢印Ｅ方向に回転駆動されるようになっている。ローラ８は、メインブラシ７により掻き上げられたゴミを吸引ノズル９の吸引口９ａ付近に搬送するものであり、メインブラシ７の回転に従動して図中矢印Ｆ方向に回転するようになっている。
【００１６】
吸引ノズル９は、メインブラシ７により掻き上げられたゴミ、及びローラ８により搬送されたゴミを吸引口９ａから吸引してダストボックス１０に排出するものである。吸引ノズル９の吸引口９ａは、機器本体２の走行方向（図中矢印Ａ方向）に垂直な方向に長くなっている。ダストボックス１０は、吸引ノズル９から排出されるゴミを集めておくものである。
【００１７】
吸引用ファン１１は、ダストボックス内１０内の空気をフィルタを介して機器本体２の外部に排出するものである。ダストボックス内の空気が吸引用ファン１１によって排出されることにより、ゴミが空気と共に吸引ノズル９の吸気口９ａから吸入されてダストボックス１０内に排出されるようになっている。自律走行ロボットクリーナー１は、走行しながらサブブラシ６でゴミを掻き集め、そのゴミを吸引ノズル９で吸引することにより、走行する領域を掃除する。
【００１８】
前方センサ１２ａ，１２ｂ，１２ｃ、左段差センサ１３、右段差センサ１４、天井センサ１５は、各々光学式の測距センサである。前方センサ１２ａ，１２ｂ，１２ｃは、機器本体２の前方の段差、溝、下りの階段、壁、柱、床に置かれた本、テーブル、椅子、扇風機等の障害物を検出し、その障害物までの距離を測定するものであり、機器本体２の前方を斜め下向き（図中矢印Ｇ１，Ｇ２，Ｇ３の向き）に監視している。
【００１９】
左段差センサ１３は、機器本体２の左側方の同様の障害物を検出し、その障害物までの距離を測定するものであり、機器本体２の僅かに前方の左側方を斜め下向き（図中矢印Ｈの向き）に監視している。右段差センサ１４は、機器本体２の右側方の同様の障害物を検出し、その障害物までの距離を測定するものであり、機器本体２の僅かに前方の右側方を斜め下向き（図中矢印Ｉの向き）に監視している。
【００２０】
天井センサ１５は、機器本体２の前上方にある障害物（テーブルやベッドの下を通り抜けできるか否か）を検出し、その障害物の高さと障害物までの距離を測定するものであり、機器本体２の前方を斜め上向き（図中矢印Ｊの向き）に監視している。センサ用照明ランプ１６は、前方センサ１２ａ，１２ｂ，１２ｃ、左段差センサ１３、右段差センサ１４、天井センサ１５により障害物を確実に検出できるように、機器本体２の周囲を照明するものである。
【００２１】
また、自律走行ロボットクリーナー１は、吸引ノズル９により吸引されるゴミを検出する検出するゴミセンサ１７と、床面が絨毯であるか否かを検出する絨毯センサ１８と、操作部１９と、ＬＣＤ２０と、ＬＥＤ２１と、スピーカ２２とを備えている。
【００２２】
ゴミセンサ１７は、透過型の光学式センサであり、光を発する発光部１７ａと、発光部１７ａからの光を受光する受光部１７ｂとを有している。発光部１７ａ及び受光部１７ｂは、吸引ノズル９の吸引口９ａ付近の両側部に配置されており、吸引ノズル９がゴミを吸引すると、ゴミは発光部１７ａと受光部１７ｂとの間を通過するようになっている。ゴミセンサ１７は、発光部１７ａから発せられて受光部１７ｂにて受光される光が遮ることにより、吸引ノズル９により吸引されるゴミを検出する。
【００２３】
絨毯センサ１８は、透過型の光学式センサであり、光を発する発光部１８ａと、発光部１８ａからの光を受光する受光部１８ｂとを有している。発光部１８ａ及び受光部１８ｂは、機器本体２の進行方向に垂直な方向に間隔を空けて、床面との間に僅かの隙間を有するように配置されており、機器本体２が絨毯の上を走行すると、絨毯の毛が発光部１８ａと受光部１８ｂとの間を遮るようになっている。絨毯センサ１８は、発光部１８ａから発せられて受光部１８ｂにて受光される光が遮ることにより、床面が絨毯であることを検出する。
【００２４】
操作部１９は、自律走行ロボットクリーナー１による掃除動作を開始・停止させるために操作され、また、その他の各種設定を行うために操作されるものである。ＬＣＤ２０は、文字表示により、自律走行ロボットクリーナー１の動作状況や各種メッセージを報知するものである。ＬＥＤ２１は、点灯、点滅、消灯することにより、自律走行ロボットクリーナー１の動作状況を報知するものである。スピーカ２２は、音声出力により、自律走行ロボットクリーナー１の動作状況や各種メッセージを報知するものである。これら操作部１９、ＬＣＤ２０、ＬＥＤ２１、スピーカ２２は、機器本体２の上部に配置されている。
【００２５】
さらに、自律走行ロボットクリーナー１は、不法侵入者等の監視を行うセキュリティ機能を有しており、不法侵入者等を検出する人体センサ２３と、不法侵入者等を撮影するカメラ２４と、カメラ用照明ランプ２５と、無線通信モジュール２６とを備えている。
【００２６】
人体センサ２３は、人体から放射される赤外線を受光することにより機器本体２の周辺の人体の有無を検出するものである。カメラ２４は、立っている人の顔を撮影できるように、機器本体２の前方の斜め上方向に向けて配置されている。カメラ用照明ランプ２５は、カメラ２４による撮影が確実に行えるように、機器本体２の前方の斜め上方向（すなわちカメラ２４の撮影方向）を照明するようになっている。無線通信モジュール２６は、カメラ２４で撮影した画像をアンテナ２７を介して監視センタ等へ無線で送信するものである。自律走行ロボットクリーナー１は、掃除動作を行わないときには、これら人体センサ２３、カメラ２４、カメラ用照明ランプ２５、及び無線通信モジュール２６を動作させて、不法侵入者等の監視を行うようになっている。
【００２７】
次に、自律走行ロボットクリーナー１の電気的ブロック構成を図３に示す。自律走行ロボットクリーナー１は、上述の前方センサ１２ａ，１２ｂ，１２ｃ、左段差センサ１３、右段差センサ１４、天井センサ１５、センサ用照明ランプ１６、ゴミセンサ１７、絨毯センサ１８、操作部１９、ＬＣＤ２０、ＬＥＤ２１、スピーカ２２、人体センサ２３、カメラ２４、カメラ用照明ランプ２５、及び無線通信モジュール２６を備えている。また、自律走行ロボットクリーナー１は、これらに加え、左車輪モータ３１、右車輪モータ３２、サブブラシモータ３３、メインブラシモータ３４、ゴミ吸引用モータ３５、地磁気センサ３６、左車輪エンコーダ３７、右車輪エンコーダ３８、進行方向判定部３９，４０、走行距離算出部４１、汚れ度判定部４２、地図情報メモリ４３、バッテリ４４、及び各部を制御する制御部４５を備えている。
【００２８】
左車輪モータ３１、右車輪モータ３２、及び上述の左車輪３、右車輪４により走行手段が構成されており、サブブラシモータ３３、メインブラシモータ３４、ゴミ吸引用モータ３５、及び上述のサブブラシ６、メインブラシ７、ローラ８、吸引ノズル９、ダストボックス１０、吸引用ファン１１により掃除手段が構成されている。また、地磁気センサ３６、及び進行方向判定部３９により第１の進行方向検出手段が構成されており、左車輪エンコーダ３７、右車輪エンコーダ３８、及び進行方向判定部４０により第２の進行方向検出手段が構成されており、左車輪エンコーダ３７、右車輪エンコーダ３８、及び走行距離算出部４１により走行距離検出手段が構成されている。
【００２９】
前方センサ１２ａ，１２ｂ，１２ｃ、左段差センサ１３、右段差センサ１４、天井センサ１５は、上述のように障害物を検出して障害物までの距離を測定し、それらの測定値が制御部４５に入力される。センサ用照明ランプ１６は、制御部４５による制御のもと、照明用の光を発光する。ゴミセンサ１７は、上述のようにゴミを検出し、その検出信号が汚れ度判定部４２に入力される。絨毯センサ１８は、上述のように床面が絨毯であることを検出し、その検出信号が制御部４５に入力される。操作部１９は、操作に応じた操作信号を出力し、その操作信号が制御部４５に入力される。ＬＣＤ２０、ＬＥＤ２１、及びスピーカ２２は、制御部４５による制御のもと、自律走行ロボットクリーナー１の動作状況や各種メッセージを報知する。
【００３０】
人体センサ２３は、上述のように人体の有無を検出し、その検出信号が制御部４５に入力される。カメラ２４は、制御部４５による制御のもと、撮影動作を行い、カメラ用照明ランプ２５は、制御部４５による制御のもと、照明用の光を発光する。無線通信モジュール２６は、制御部４５による制御のもと、カメラ２４で撮影した画像を無線で送信する。
【００３１】
左車輪モータ３１は、上述の左車輪３を正転・逆転させるものであり、右車輪モータ３２は、上述の右車輪４を正転・逆転させるものである。サブブラシモータ３３は、上述のサブブラシ６を回転させるものであり、メインブラシモータ３４は、上述のメインブラシ７を回転させるものである。ゴミ吸引用モータ３５は、上述の吸引用ファン１１を回転させるものである。これら左車輪モータ３１、右車輪モータ３２、サブブラシモータ３３、メインブラシモータ３４、及びゴミ吸引用モータ３５は、各々、制御部４５による制御のもと駆動される。
【００３２】
地磁気センサ３６は、地磁気を検出するものであり、地磁気の方向に応じた出力値を出力する。左車輪エンコーダ３７は、左車輪３の回転を検出するものであり、左車輪３が所定角度回転する毎にパルス信号を出力する。右車輪エンコーダ３８は、右車輪４の回転を検出するものであり、右車輪４が所定角度回転する毎にパルス信号を出力する。
【００３３】
進行方向判定部３９は、地磁気センサ３６からの出力値を基に、地磁気の方向を基準とした機器本体２の進行方向（すなわち機器本体２の正面が地磁気の方向を基準としてどの方向を向いているか）を判定し、その値を出力する。進行方向判定部４０は、左車輪エンコーダ３７及び右車輪エンコーダ３８から出力されるパルス信号を基に左車輪３及び右車輪４の各々の回転数を計測し、左車輪３及び右車輪４の各々の回転数を基に機器本体２の進行方向を判定する。走行距離算出部４１は、左車輪エンコーダ３７及び右車輪エンコーダ３８から出力されるパルス信号を基に左車輪３及び右車輪４の各々の回転数を計測し、左車輪３及び右車輪４の各々の回転数を基に機器本体２の走行距離を算出する。
【００３４】
汚れ度判定部４２は、ゴミセンサ１７からの出力を基に所定時間あたりのゴミの集塵量を検出することにより機器本体２が走行する領域の汚れ度を判定し、汚れ度が基準値を超えている場合にその旨を示す信号を出力する。地図情報メモリ４３は、機器本体２の現在位置、障害物の存在する位置、掃除済みの領域、床面の汚れ度が基準値を超えている領域等の機器本体２の走行を制御するのに必要な地図情報を記憶するものである。バッテリ４４は、各部に給電するものである。
【００３５】
制御部４５は、左車輪モータ３１及び右車輪モータ３２を駆動制御することにより、左車輪３及び右車輪を回転させて機器本体２の走行動作を制御し、また、サブブラシモータ３３、及びメインブラシモータ３４、及びゴミ吸引用モータ３５を駆動することにより、サブブラシ６、メインブラシ７、及び吸引用ファン１１を作動させてゴミの集塵動作を制御する。そして、制御部４５は、これら機器本体２の走行動作及び集塵動作を、前方センサ１２ａ，１２ｂ，１２ｃ、左段差センサ１３、右段差センサ１４、天井センサ１５からの出力、及び地図情報メモリ４３に記憶されている地図情報を基に制御する。また、制御部４５は、絨毯センサ１８及び汚れ度判定部４２からの出力を基に、機器本体２の走行速度を調整し、ゴミの集塵力を調節する。
【００３６】
さらに、制御部４５は、機器本体２の走行中、機器本体２の現在位置、障害物の存在する位置、掃除済みの領域等を示す地図情報を作成する。制御部４５は、進行方向判定部３９，４０及び走行距離算出部４１からの出力を基に機器本体２の位置及び進行方向を算出し、その算出した機器本体２の位置及び進行方向と前方センサ１２ａ，１２ｂ，１２ｃ、左段差センサ１３、右段差センサ１４、及び天井センサ１５からの出力とを基に、地図情報を作成する。制御部４５にて作成された地図情報は、地図情報メモリ４３に記憶される。すなわち、制御部４５は、機器本体２を走行させて掃除している際に地図情報を作成してゆき、その作成してゆく地図情報を基に、さらに機器本体２の走行及び集塵動作を制御して掃除を進めてゆく。
【００３７】
ここで、上記自律走行ロボットクリーナー１の走行動作について、図４、図５に示す走行例を参照して説明する。図４は、障害物である第１の壁５０ａ、第２の壁５０ｂ，第３の壁５０ｃ、第４の壁５０ｄに囲まれた床６０上を走行する例を示すものであり、壁５０ａと壁５０ｄは、略平行になっており、共に地磁気の方向と平行になっている。また、図５は、障害物である第１の壁５０ａ、第２の壁５０ｂ，第３の壁５０ｃ、第４の壁５０ｄ，第５の壁５０ｅに囲まれた床６０上を走行する例を示すものであり、図５に示す例では、図４に示す例と同様に、壁５０ａと壁５０ｄは、略平行になっており、共に地磁気の方向と平行になっている。但し、図５に示す例では、壁５０ｄは、壁５０ｂに繋がっておらず、壁５０ｄと壁５０ｂとの間に、壁５０ｄに対して斜めに傾斜した壁５０ｅが存在している。
【００３８】
図４に示す例では、自律走行ロボットクリーナー１は、壁５０ａに隣接する位置Ｃ点を掃除開始位置とし、Ｃ点からルートＺ１を辿って壁５０ａに沿って（図示の例では北に向かって）走行する。
【００３９】
続いて、Ｐ１点で壁５０ｂに到達すると、右に９０°旋回して機器本体２の大きさだけ移動（図示の例では東に向かって移動）した後、さらに右に９０°旋回して直進（図示の例では南に向かって直進）し、壁５０ｃに到達すると、左に９０°旋回して機器本体２の大きさだけ移動（図示の例では東に向かって移動）した後、さらに左に９０°旋回して直進（図示の例では北に向かって直進）する走行を繰り返す。すなわち、Ｐ１点からルートＺ２を辿って綴り折状の経路で走行する。
【００４０】
その後、Ｐ２点で壁５０ｄに到達すると、右に９０°旋回して、Ｐ２点からルートＺ３を辿って壁５０ｄに沿って（図示の例では南に向かって）走行する。そして、Ｐ３点で壁５０ｂに到達すると、走行を停止する。
【００４１】
また、図５に示す例では、自律走行ロボットクリーナー１は、図４に示した例と同様に、Ｃ点からルートＺ１を辿って壁５０ａに沿って走行し、Ｐ１点を経てルートＺ２を辿って綴り折状の経路で走行する。
【００４２】
その後、Ｐ４点で壁５０ｄに到達すると、Ｐ４点からルートＺ４を辿って壁５０ｄに沿って（図示の例では北に向かって）走行する。そして、自律走行ロボットクリーナー１は、Ｐ５点に到達すると、壁５０ｄに沿っての走行を止めて、Ｐ５点からルートＺ５を辿って、壁５０ｄに沿って走行していたときと同じ方向に（図示の例では北に向かって）直進する。
【００４３】
その後、Ｐ６点で壁５０ｂに到達すると、右に９０°旋回して機器本体２の大きさだけ移動（図示の例では東に向かって移動）した後、さらに右に９０°旋回して直進（図示の例では南に向かって直進）し、壁５０ｅに到達すると、左に９０°旋回して機器本体２の大きさだけ移動（図示の例では東に向かって移動）した後、さらに左に９０°旋回して直進（図示の例では南に向かって直進）する走行を繰り返す。すなわち、Ｐ６点からルートＺ６を辿って綴り折状の経路で走行する。そして、Ｐ７点で壁５０ｅに到達すると、走行を停止する。
【００４４】
図５に示す例では、壁５０ｄと壁５０ｂとの間に壁５０ｄに対して斜めに傾斜した壁５０ｅが存在しているが、壁５０ｄに沿って走行した後、壁５０ｅに沿っては走行せずに、壁５０ｄに沿って走行していたときと同じ方向に直進することで、最後まで綴り折状の走行経路で走行し、掃除の遣り残しを生じないようにしている。
【００４５】
このように、自律走行ロボットクリーナー１は、（１）第１の壁５０ａに沿って走行し、（２）進行方向前方の第２の壁５０ｂに到達すると略９０°旋回して機器本体２の大きさだけ移動した後、さらに略９０°旋回して進行方向前方の第３の壁５０ｃに到達するまで直進走行を繰り返す綴り折状の経路で走行し、（３）第１の壁５０ａと略平行な第４の壁５０ｄに到達すると、第４の壁５０ｄに沿って走行する。また、（４）第４の壁５０ｄが第２の壁５０ｂまで続いていない場合（図５参照）は、第４の壁５０ｄの横を通り過ぎた後、壁５０ｄに沿って走行していたときと同じ方向に直進走行する。なお、第１の壁５０ａが第２の壁５０ｂまで続いていない場合は、（４）の場合と同様に、第１の壁５０ａの横を通り過ぎた後に、壁５０ａに沿って走行していたときと同じ方向に直進する。
【００４６】
上記（１）及び（３）の壁に沿っての走行（図４に示す例ではＣ点からＰ１点に至る走行及びＰ２点からＰ３点に至る走行、図５に示す例ではＣ点からＰ１点に至る走行及びＰ４点からＰ５点に至る走行）に際しては、左段差センサ１３又は右段差センサ１４の出力を基に、機器本体２の側方に位置する壁（障害物）までの距離が略一定となるように走行する。壁までの距離が一定となるような走行は、所定時間（例えば０．１秒）毎に、左段差センサ１３又は右段差センサ１４の出力を基に機器本体２の側方に位置する壁までの距離を検出して、壁までの距離が所定値（例えば５ｃｍ）を超えると壁に接近するように走行し、壁までの距離が所定値以下になると壁から遠ざかるように走行することにより実現される。
【００４７】
上記（２）の綴り折状の経路での走行（図４に示す例ではＰ１点からＰ２点に至る走行、図５に示す例ではＰ１点からＰ４点に至る走行及びＰ５点からＰ７点に至る走行）に際しては、進行方向判定部３９の出力を基に（すなわち地磁気を基に）進行方向を判断すると共に、前方センサ１２ａ，１２ｂ，１２ｃの出力を基に進行方向前方の壁（障害物）に到達したことを判断して、綴り折状の経路となるように走行する。進行方向前方の壁に到達したことの判断は、前方センサ１２ａ，１２ｂ，１２ｃの出力を基に機器本体２の前方の壁までの距離を検出して、壁までの距離が所定値（例えば５ｃｍ）以下になった場合になされる。
【００４８】
また、上記（４）の走行（図５に示す例ではＰ５点からＰ６点に至る走行）は、壁に沿っての走行中に、略真直ぐな経路で走行しているか否かを判断し、略真直ぐな経路から外れると、壁に沿っての走行を中止して、それまで壁に沿って走行していたときと同じ方向に直進走行することで実現される。
【００４９】
具体的には、所定時間（例えば０．１秒）毎に、その間の機器本体２の進行方向と走行距離とを示す進行ベクトルＵｏを算出すると共に、それまでの進行ベクトルＵｏを累積加算した累積ベクトルＵｓを算出する。このとき、進行ベクトルＵｏは、進行方向判定部４０及び走行距離算出部４１の出力（すなわち左車輪３及び右車輪４の各々の回転数を基に検出した進行方向及び走行距離）を基に算出する。そして、進行ベクトルＵｏの累積ベクトルＵｓに対する傾きが所定値を超えると、略真直ぐな経路から外れたと判断して、壁に沿っての走行を中止して、累積ベクトルＵｓの方向に直進走行する。
【００５０】
なお、進行ベクトルＵｏの算出に進行方向判定部４０の出力（すなわち左車輪３及び右車輪４の各々の回転数を基に検出した進行方向）を用いるのは、壁の近くで正確に進行ベクトルＵｏを算出するためである。すなわち、壁に近い場所では、部屋の柱に用いられている鉄筋による磁気の影響を受ける虞があり、進行方向判定部３９の出力（すなわち地磁気を基に検出した進行方向）を用いたのでは、進行ベクトルＵｏを正しく算出できない虞がある。従って、本実施形態では、進行ベクトルＵｏの算出に進行方向判定部４０の出力を用いている。
【００５１】
上記（４）の走行動作について、図６に示す走行例を参照して説明する。自律走行ロボットクリーナー１は、壁５０ｄに沿っての走行に際しては、壁５０ｄまでの距離を略一定に保つように、例えば、Ｑ１点で壁５０ｄまでの距離が所定値（例えば５ｃｍ）を超えていると壁５０ｄに接近するように走行し、その後、Ｑ２点で壁５０ｄまでの距離が所定値以下になると壁５０ｄから遠ざかるように走行し、このような動作を繰り返して、Ｑ３点、Ｑ４点、Ｑ５点を経て走行する。なお、壁５０ｄに接近するように走行する際は、機器本体２を壁５０ｄの方向に微小角度（例えば５°程度）旋回して走行し、壁５０ｄから遠ざかる走行する際は、機器本体２を壁５０ｄの方向に微小角度（例えば５°程度）旋回して走行する。
【００５２】
そして、この走行中に、所定時間（例えば０．１秒）毎に、その間（従って０．１秒間）の走行における機器本体２の進行方向と走行距離とを示す進行ベクトルＵｏ（図中矢印Ｕｏ１，Ｕｏ２，Ｕｏ３，Ｕｏ４，Ｕｏ５で示す）と、それまでの進行ベクトルＵｏを累積加算した累積ベクトルＵｓ（図中Ｕｓ２，Ｕｓ３，Ｕｓ４，Ｕｓ５で示す）を算出する。
【００５３】
進行ベクトルＵｏ１は、Ｑ１点からＱ２点に至る間の進行ベクトルＵｏである。進行ベクトルＵｏ２は、Ｑ２点からＱ３点に至る間の進行ベクトルＵｏであり、累積ベクトルＵｓ２は、Ｑ３点に到達した時点での累積ベクトルＵｓである。以下同様に、進行ベクトルＵｏ３，Ｕｏ４，Ｕｏ５は、各々、Ｑ３点からＱ４点，Ｑ４点からＱ５点，Ｑ５点からＱ６点に至る間の進行ベクトルＵｏであり、累積ベクトルＵｓ３，Ｕｓ４，Ｕｓ５は、各々、Ｑ４点，Ｑ５点，Ｑ６点に到達した時点での累積ベクトルＵｓである。
【００５４】
進行ベクトルＵｏ１，Ｕｏ２，Ｕｏ３，Ｕｏ４，Ｕｏ５は、所定時間毎における機器本体２の進行方向と走行距離とを示すベクトル量であり、所定時間毎に機器本体２が壁５０への接近と離反を繰り返す（一定の速度で走行すると仮定して）ため、大きさが略等しく、方向が壁５０に対して左右に５°程度順番に傾いたものとなる。一方、累積ベクトルＵｓ２，Ｕｓ３，Ｕｓ４，Ｕｓ５は、それまでの進行ベクトルＵｏを累積加算したベクトル量であるため、大きさが次第に大きくなり、方向が概ね壁５０ｄと平行になる。
【００５５】
従って、壁５０ｄに沿って走行している間は、累積ベクトルＵｓに対する進行ベクトルＵｏの傾き（Ｕｓ２に対するＵｏ２の傾き、Ｕｓ３に対するＵｏ３の傾き、Ｕｓ４に対するＵｏ４の傾き、Ｕｓ５に対するＵｏ５の傾き）は、各々、左右に５°程度の範囲内の値になる。
【００５６】
その後、自律走行ロボットクリーナー１は、壁５０ｄの横を通り過ぎると、壁５０ｅとの距離を一定に保とうとするため、Ｑ６点から壁５０ｅに接近するように、機器本体２を壁５０ｅの方向に微小角度（例えば５°程度）旋回して走行する。その結果、壁５０ｄの横を通り過ぎた後の進行ベクトルＵｏ６は、壁５０ｅの壁５０ｄに対する傾きに応じて、累積ベクトルＵｓ６に対して５°以上の値になる。
【００５７】
このように、壁５０ｄに沿って走行している間は、進行ベクトルＵｏの累積ベクトルＵｓに対する傾きが５°程度の範囲内になり、一方、壁５０ｄに沿っての走行中に壁５０ｄの横を通り過ぎると、進行ベクトルＵｏの累積ベクトルＵｓに対する傾きが５°以上になる。従って、進行ベクトルＵｏの累積ベクトルＵｓに対する傾きに基づいて、機器本体２が真直ぐな経路を走行しているか否かを判断できる。
【００５８】
本実施形態では、進行ベクトルＵｏの累積ベクトルＵｓに対する傾きが所定値（例えば７°）以下であると、真直ぐな経路を走行していると判断し、傾きが所定値を超えると、真直ぐな経路から外れた（本来の経路から外れた）と判断して、壁５０ｄに沿っての走行を中止して、累積ベクトルＵｓの方向に直進走行する。累積ベクトルＵｓの方向は壁５０ｄと概ね平行であるため、壁５０ｄの横を通り過ぎた後に累積ベクトルＵｓの方向に直進走行することで、壁５０ｄの横を通り過ぎた後も、それまで壁５０ｄに沿って走行していたときと略同じ方向に走行する。
【００５９】
これにより、上記図５に示した例のように壁５０ｄと壁５０ｂとの間に斜めに傾斜した壁５０ｅが存在している場合でも、壁５０ｄに沿って走行した後、壁５０ｅに沿っては走行せずに、壁５０ｄに沿って走行していたときと同じ方向に直進し、最後まで綴り折状の走行経路での走行が行われる。壁５０ｄの横を通り過ぎた後に壁５０ｅに沿って走行してしまうと、掃除の遣り残しを生じてしまうが、壁５０ｄに沿って走行した後に壁５０ｄに沿って走行していたときと同じ方向に直進走行することで、本来の走行経路から外れることなく最後まで綴り折状の走行経路での走行が実現され、掃除の遣り残しを生じることがない。
【００６０】
次に、上記自律走行ロボットクリーナー１の制御部４５による掃除動作の制御処理について、図７、図８、図９、図１０のフローチャートを参照して説明する。まず、制御部４５は、掃除の開始操作が行われたか否かを判断する（＃１）。掃除の開始操作は、機器本体２を壁などの障害物に隣接した位置に置き、機器本体２の進行方向を障害物と平行にした後、操作部１９を操作することにより行われる。
【００６１】
掃除の開始操作が行われると（＃１でＹＥＳ）、制御部４５は、左段差センサ１３の出力値を読込み（＃２）、左段差センサ１３の出力値を基に機器本体２の左方（例えば５ｃｍ以内）に障害物があるか否かを判断し（＃３）、また、左方に障害物が無ければ（＃３でＮＯ）、右段差センサ１４の出力値を読込み（＃４）、右段差センサ１４の出力値を基に機器本体２の右方（例えば５ｃｍ以内）に障害物があるか否かを判断する（＃５）。
【００６２】
続いて、制御部４５は、機器本体２の左方に障害物が有れば（＃３でＹＥＳ）、パラメータＶの値を「０」に設定すると共に、パラメータＷの値を「０」に設定し（＃６）、機器本体２の右方に障害物が有れば（＃５でＹＥＳ）、パラメータＶの値を「１」に設定すると共に、パラメータＷの値を「１」に設定する（＃７）。パラメータＶは、機器本体２が前方の障害物に遭遇した際の回避方向を決定するためのものであり、パラメータＷは、機器本体２が側方の障害物に沿って走行する際に障害物が機器本体２の左右何れの方向に存在しているかを判断するためのものである。
【００６３】
そして、制御部４５は、サブブラシモータ３３、メインブラシモータ３４、ゴミ吸引用モータ３５を駆動して、ゴミの集塵動作を開始させ（＃８）、また、左車輪モータ３１及び右車輪モータ３２を駆動して、機器本体２を直進走行させる（＃９）。なお、上記＃５でＮＯの場合（すなわち機器本体２の左方にも右方にも障害物が無ければ）、ＬＣＤ２０、ＬＥＤ２１、スピーカ２２により機器本体２を正しく置き直す旨のエラーメッセージを報知して（＃１０）、上記＃１以降の処理を繰り返す。
【００６４】
上記＃１〜＃１０の処理により、障害物に隣接した位置から、障害物に概ね平行な方向に走行しての掃除が開始される。
【００６５】
その後、制御部４５は、機器本体２の直進走行を継続させ（＃１１）、機器本体２の前方の所定距離内に障害物を検出することなく（＃１２でＮＯ）、所定時間（例えば０．１秒）経過すると（＃１３でＹＥＳ）、この所定時間中（０．１秒間）の走行における進行方向と走行距離とを示す進行ベクトルＵｏを算出する（＃１４）。進行ベクトルＵｏは、進行方向判定部４０及び走行距離算出部４１の出力を基に（すなわち左車輪エンコーダ３７及び右車輪エンコーダ３８から得られる左車輪３及び右車輪４の各々の回転数を基に）算出される。これに続いて、進行ベクトルＵｏを累積ベクトルＵｓに加算する（＃１５）。なお、累積ベクトルＵｓの初期値は「０」になっている。
【００６６】
そして、制御部４５は、進行ベクトルＵｏの累積ベクトルＵｓに対する傾きを求め、その傾きが所定値（例えば７°）を超えているか否かを判断し（＃１６）、進行ベクトルＵｏの傾きが所定値以下であれば（＃１６でＮＯ）、まず、パラメータＶの値が０であるか否かを判断する（＃１７）。
【００６７】
そして、Ｗの値が「０」であれば（＃１７でＹＥＳ）、左段差センサ１３からの出力を読込んで（＃１８）、機器本体２の左方の障害物までの距離が所定距離（例えば５ｃｍ）内であるか否かを判断する（＃１９）。このとき、障害物までの距離が所定距離内であれば（＃１９でＹＥＳ）、機器本体２を右方に微小角度（例えば５°程度）旋回させて直進走行させ（＃２０）、障害物までの距離が所定距離を超えていれば（＃１９でＮＯ）、機器本体２を左方に微小角度（例えば５°程度）旋回させて直進走行させる（＃２１）。
【００６８】
また、Ｗの値が「０」でなければ（＃１７でＮＯ）、右段差センサ１４からの出力を読込んで（＃２２）、機器本体２の右方の障害物までの距離が所定距離（例えば５ｃｍ）内であるか否かを判断する（＃２３）。このとき、障害物までの距離が所定距離内であれば（＃２３でＹＥＳ）、機器本体２を右方に微小角度（例えば５°程度）旋回させて直進走行させ（＃２４）、障害物までの距離が所定距離を超えていれば（＃２３でＮＯ）、機器本体２を左方に微小角度（例えば５°程度）旋回させて直進走行させる（＃２５）。
【００６９】
そして、制御部４５は、上記＃２０、＃２１、＃２４、＃２５の何れかの処理を行った後、上記＃１１以降の処理を繰り返す。
【００７０】
上記＃１２でＮＯ及び上記＃１６でＮＯの処理を経由して上記＃１１以降の処理を繰り返すことにより、機器本体２の側方に位置する障害物に沿って、その障害物までの距離を略一定に保った走行が行われる。
【００７１】
一方、制御部４５は、進行ベクトルＵｏの傾きが所定値を超えた場合（＃１６でＹＥＳ）、機器本体２を累積ベクトルＵｓの方向と平行になるように旋回させて直進走行させ（＃２６）、その後、進行方向判定部３９の出力を基に（すなわち地磁気センサ３６で検出された地磁気の方向を基に）、機器本体２の直進走行を継続させる（＃２７）。そして、機器本体２の前方の所定距離内に障害物を検出しなければ（＃２８でＮＯ）、機器本体２の直進走行を継続する。
【００７２】
上記＃１６でＹＥＳの処理を経由した後、上記＃２７及び＃２８の処理が繰り返されることにより、障害物が途中で斜めに屈曲している場合における走行経路を真直ぐに保った走行が行われる。
【００７３】
また、制御部４５は、上記＃１２又は上記＃２８で機器本体２の前方の所定距離内に障害物を検出すると（＃１２でＹＥＳ、又は＃２８でＹＥＳ）、まず、パラメータＶの値が０であるか否かを判断する（＃２９）。そして、Ｖの値が「０」であれば（＃２９でＹＥＳ）、右段差センサ１４からの出力を基に機器本体２の右方の所定距離（例えば５ｃｍ）内に障害物を検出したか否かを判断し（＃３０）、Ｖの値が「０」でなければ（＃３０でＮＯ）、左段差センサ１３からの出力を基に機器本体２の右方の所定距離（例えば５ｃｍ）内に障害物を検出したか否かを判断する（＃３１）。
【００７４】
上記＃３０でＮＯの場合は、機器本体２をその位置で右に９０°旋回させて直進走行させる（＃３２）。そして、機器本体２の大きさ分の距離を走行すると（＃３３でＹＥＳ）、機器本体２をその位置でさらに右に９０°旋回させて直進走行させ（＃３４）、Ｖの値を「１」にした後（＃３５）、上記＃２７以降の処理を繰り返す。また、機器本体２の大きさ分の距離を走行するまでに（＃３３でＮＯ）、機器本体２の前方の所定距離内に障害物を検出すると（＃３６でＹＥＳ）、機器本体２をその位置でさらに右に９０°旋回させて直進走行させ（＃３７）、Ｖの値を「１」にすると共にＷの値を「０」にした後（＃３８）、上記＃１１以降の処理を繰り返す。
【００７５】
上記＃３１でＮＯの場合は、機器本体２をその位置で左に９０°旋回させて直進走行させる（＃３９）。そして、機器本体２の大きさ分の距離を走行すると（＃４０でＹＥＳ）、機器本体２をその位置でさらに左に９０°旋回させて直進走行させ（＃４１）、Ｖの値を「０」にした後（＃４２）、上記＃２７以降の処理を繰り返す。また、機器本体２の大きさ分の距離を走行するまでに（＃４０でＮＯ）、機器本体２の前方の所定距離内に障害物を検出すると（＃４３でＹＥＳ）、機器本体２をその位置でさらに左に９０°旋回させて直進走行させ（＃４４）、Ｖの値を「０」にすると共にＷの値を「１」にした後（＃４５）、上記＃１１以降の処理を繰り返す。
【００７６】
上記＃３０でＮＯ又は上記＃３１でＮＯの処理を経由して、上記＃３５又は上記４１の処理の後、上記＃２７以降の処理が繰り返されることにより、前方の障害物に到達すると機器本体２の大きさだけ側方に移動した後に障害物と反対方向に走行する動作を繰り返す、綴り折状の経路での走行が行われる。また、上記＃３７又は上記＃４３の処理の後、上記＃１１以降の処理が繰り返されることにより、再度、壁に沿っての走行が行われる。
【００７７】
そして、制御部４５は、上記＃３０でＹＥＳになるか、又は上記＃３１でＹＥＳになると、機器本体２の集塵動作及び走行動作を停止させて（＃５０）、掃除動作を終了する。
【００７８】
このような自律走行ロボットクリーナー１によれば、部屋の壁等の障害物が途中で斜めに屈曲している場合、障害物に沿っての走行中に障害物の屈曲箇所を通過すると、進行ベクトルＵｏの累積ベクトルＵｓに対する傾きが所定値を超えることになる。そして、その傾きが所定値を超えると、本来の走行経路から外れたと判定し、障害物に沿っての走行を中止し、累積ベクトルＵｓの方向（それまで障害物に沿って走行していたときと同じ方向）へ走行する。すなわち、障害物の屈曲箇所を通過した後は、障害物に沿っては走行せずに、それまで障害物に沿って走行していたときと同じ方向へ走行する。これにより、障害物が途中で斜めに屈曲している場合でも、本来の走行経路から外れることなく真直ぐに走行して、最後まで綴り折状の走行経路で掃除が行われ、掃除の遣り残しを軽減して、部屋を綺麗に掃除することができる。
【００７９】
しかも、進行ベクトルＵｏ及び累積ベクトルＵｓは、左車輪３及び右車輪４の各々の回転数から検出された進行方向を用いて算出されるため、壁や障害物に近い場所であっても部屋の柱に用いられている鉄筋や部屋に置かれたオーディオ機器のスピーカ等による磁気の影響を受けることなく正確に算出できる。これにより、走行経路を間違うことなく壁に沿って正確に走行でき、部屋を綺麗に掃除することができる。
【００８０】
なお、本発明は、上記実施形態の構成に限られず、種々の変形が可能である。例えば、上記実施形態において、進行ベクトルＵｏ及び累積ベクトルＵｓは、所定時間毎に限らず、所定距離走行毎に算出してもよい。進行ベクトルＵｏは、地磁気センサ３６の出力が正常な場合（鉄筋やスピーカ等による磁気の影響を受けていない場合）には、進行方向判定部３９の出力（すなわち地磁気を基に検出した進行方向）を用いて算出してもよい。掃除の開始時に、自律走行ロボットクリーナー１が壁等の障害物に隣接する位置まで自走し、その後、自動的に壁等の障害物に沿って走行を開始するようにしてもよい。
【図面の簡単な説明】
【００８１】
【図１】（ａ）は本発明の一実施形態に係る自律走行ロボットクリーナーの概略構成を示す平面図、（ｂ）は同一部破断した側面図。
【図２】同ロボットクリーナーの正面図。
【図３】同ロボットクリーナーの電気的ブロック構成図。
【図４】同ロボットクリーナーの走行例を示す図。
【図５】同ロボットクリーナーの別の走行例を示す図。
【図６】同ロボットクリーナーの壁に沿っての走行例を示す図。
【図７】同ロボットクリーナーの掃除動作制御処理を示すフローチャート。
【図８】同ロボットクリーナーの掃除動作制御処理を示すフローチャート。
【図９】同ロボットクリーナーの掃除動作制御処理を示すフローチャート。
【図１０】同ロボットクリーナーの掃除動作制御処理を示すフローチャート。
【符号の説明】
【００８２】
１    自律走行ロボットクリーナー
２    機器本体
３    左車輪
４    右車輪
５    前車輪
６    サブブラシ
７    メインブラシ
８    ローラ
９    吸引ノズル
１０    ダストボックス
１１    吸引用ファン
１２ａ，１２ｂ，１２ｃ    前方センサ
１３    左段差センサ
１４    右段差センサ
１５    天井センサ
１９    操作部
３６    地磁気センサ
３７    左車輪エンコーダ
３８    右車輪エンコーダ
３９，４０    進行方向判定部
４１    走行距離算出部
４５    制御部
５０ａ，５０ｂ，５０ｃ，５０ｄ，５０ｅ    壁
６０    床
【図１】
2005230044.tif 000003
【図２】
2005230044.tif 000004
【図３】
2005230044.tif 000005
【図４】
2005230044.tif 000006
【図５】
2005230044.tif 000007
【図６】
2005230044.tif 000008
【図７】
2005230044.tif 000009
【図８】
2005230044.tif 000010
【図９】
2005230044.tif 000011
【図１０】
2005230044.tif 000012