トップ :: G 物理学 :: G05 制御;調整

【発明の名称】 移動ロボット
【発明者】 【氏名】大町 洋正

【氏名】寺岡 真

【要約】 【課題】大雨による濡れがあっても障害物の検出精度が落ちず、路面の状況に影響されずに常に障害物を高い精度で検出できる移動ロボットを提供する。

【構成】移動ロボットは所定速度で走行しながらレーザーセンサにより前方の路面を所定の周期で走査する。第1の判定手段は、1回の走査で路面から所定値以上の高さを示す検出データが得られた場合に障害物有りの判定を行い、第2の判定手段は、複数回の走査で得られた複数のデータのうち、所定回以上のデータが同一の場所で得られた場合に障害物有りの判定を行う。第1の判定手段は特に路面が乾燥している場合の検知精度が高く、第2の判定手段は大雨により路面に水溜まりが出来ているような場合でも障害物を高い精度で検出できる。
【特許請求の範囲】
【請求項1】
路面上を走行する移動ロボットであって、
前記路面に対して距離計測用の検知波を送波するとともに反射波を受波して移動ロボットまでの距離を周期的に計測する測距センサと、
前記測距センサにて計測した距離データを複数周期分記憶する記憶部と、
前記測距センサにて計測された最新の一周期分の距離データに基づき前記路面上の障害物を検出する第一の判定手段と、
前記記憶部に記憶された所定周期分の距離データに基づき前記路面上の障害物を検出する第二の判定手段とを有し、
前記第一及び第二の各判定手段の少なくとも一方で前記障害物が検出されると障害物ありと判定することを特徴とした移動ロボット。
【請求項2】
前記第一の判定手段は、前記記憶部に記憶された最新の一周期分の距離データにおいて前記路面との距離差が閾値以上となる物体を障害物として検出し、
前記第二の判定手段は、各所定周期分の距離データにおいて前記路面上の略同一位置で検出される物体を障害物として検出する請求項1記載の移動ロボット。
【請求項3】
更に、前記路面が濡れているか否かを判定する路面状態判定手段を有し、
前記路面状態判定手段が路面が濡れていないと判定した場合には、前記第一の判定手段のみで障害物の有無を判定し、
前記路面状態判定手段が路面が濡れていると判定した場合には、前記第一の判定手段と前記第二の判定手段の少なくとも何れか一方で障害物が検出されると障害物ありと判定する請求項1または2に記載の移動ロボット。
【請求項4】
更に、前記路面の濡れ度合いを判定する前記路面状態判定手段と、
前記路面が少なくとも濡れていると判定された場合に前記移動ロボットの走行速度を制御する制御部とを有し、
前記路面状態判定手段により路面が濡れていないと判定された場合、および路面の濡れが所定度合いより小さいと判定された場合には、前記第一の判定手段のみで障害物の有無を判定し、
前記路面状態判定手段により路面の濡れが前記所定度合い以上と判定された場合には、前記第一の判定手段と前記第二の判定手段の少なくとも何れか一方で障害物が検出されると障害物ありと判定する請求項1または2に記載の移動ロボット。
【発明の詳細な説明】【技術分野】
【0001】
本発明は、走行路面の障害物を検出しつつ屋外を走行する移動ロボットに関し、特に走行路面が濡れていても障害物の検出精度を確保するための技術に関する。
【背景技術】
【0002】
従来、走行路面の障害物を検出しつつ走行する移動ロボットは、特許文献1にあるように距離検知センサを用いて、床面(走行路面)に向けて距離測定用のレーザ光を左右方向に所定サンプリング間隔にて投受光し、得られた距離データに基づいて障害物を検出していた。
【0003】
図14は、従来の移動ロボットRによる障害物検出の状態を説明する図であって、右側に移動ロボットR、レーザ光L、走行路面S及び障害物Hの位置関係を側面視した図を示し、左側には距離検知センサにて計測した距離データを平面視した図を示している。左側の距離データは、距離検知センサを中心に左右(X軸方向)及び前後(Y軸方向)に平面視した直交座標系にて模式的に示している。また、移動ロボットRの移動の履歴を見るために、時刻t,t+1,t+2,t+3,t+4の時刻の経過順に上下に並べて示している。
【0004】
時刻tでは、移動ロボットRのレーザ光Lは走行路面Sに投光され、走行路面Sからの反射光を受光する。このため、左欄にあるように、走行路面Sのレーザ光Lが当たっているところまでの距離が計測されている。
【0005】
時刻t+1では、移動ロボットRが障害物Hにやや近づき、レーザ光Lが障害物Hの走行路面Sに近い高さに当たった状態である。この場合、計測される距離データは、左欄に示すように走行路面Sからの反射光による距離と障害物Hからの反射光による距離に差が生じる。
t+2では、移動ロボットRがt+1時点より更に近づき、レーザ光Lが障害物Hの中間的な高さに当たった状態である。この場合、計測される距離データは、左欄に示すように走行路面Sからの反射光による距離と障害物Hからの反射光による距離の差がt+1時点より大きく生じる。
t+3では、移動ロボットRがt+2時点より更に近づき、レーザ光Lが障害物Hの上方部に当たった状態である。この場合、計測される距離データは、左欄に示すように走行路面Sからの反射光による距離と障害物Hからの反射光による距離の差がt+2時点より更に大きくなる。
【0006】
t+4では、移動ロボットRのレーザ光Lは障害物Hの上方を通過して走行路面Sに投光され、走行路面Sからの反射光を受光する。このため、左欄にあるように、走行路面Sのレーザ光Lが当たっているところまでの距離が計測されている。
なお、通常では、移動ロボットRが障害物に衝突するのを防ぐために、障害物Hを検出した時点で停止または回避動作を行うので、t+4まで移動させないように制御されるが、今回は説明のために記載している。
【0007】
移動ロボットRでは、図14の左欄に示すような距離データに基づいて、障害物Hを検出している。すなわち、同図から明らかなように、走行路面Sからの反射光による距離データは、略等距離のデータとして計測され、障害物Hは走行路面Sからの反射光による距離データよりも近距離のデータとなる。そこで、移動ロボットRでは、走行路面Sによる距離データより所定閾値以上の距離差があれば障害物として検出していた。なお、所定閾値は、距離差が障害物の走行路面からの高さに相当することを考慮し、走行に障害となるか否かを判定するのに使用している。
【特許文献1】特開平1-293410号公報
【発明の開示】
【発明が解決しようとする課題】
【0008】
しかしながら、雨が降り、走行路面が濡れるとレーザセンサによる正しい距離値が得にくくなる。特にレーザセンサを走行路面に対して浅い角度で設置している場合、走行路面の状況によっては、レーザ光が鏡面反射して距離値がまったく得られなかったり、受光した反射光による信号の波形の立ち上がり位置が判断しにくい等のため、距離値の誤差が大きくなることがあり、距離値の誤差によって実際の走行路面よりも短い値(近い距離)が得られた場合には、障害物と間違えて判定してしまうことがある。
【0009】
例えば、ロボットが速度10km/h(277.7cm/s) で走行し、レーザセンサのサンプリング周期が33msとすると、ロボットが9.2cm 移動するごとにセンサデータが得られることになる。ここで、障害物にレーザ光が当たる場合、センサの取付角度が約10度とすると、レーザ光が障害物に当たる位置は、ロボットが移動するにつれて障害物の高さ方向に1.6cm(=tan10°*9.2) ずつずれていくことになる。
【0010】
ここでロボットが5cm までの段差を乗り越えることができる場合には、5cm 以上の高さの物体を走行を阻害する障害物として検出することが必要となる。
したがって、5cm 高の障害物を発見するにはセンシング結果が3.4cm <h ≦5cm の範囲内である必要があり、すなわち5cm のものを確実に見つけるには閾値を3.4cm として設定する必要がある。
【0011】
しかし、前述の通り、走行路面が濡れることにより誤差が大きくなり、実際の距離よりも短い値が得られると、高さの低い物体であっても高さ3.4 cm以上の障害物として誤検出される可能性があるという問題点があった。
【0012】
このように、路面が濡れている場合には、上述したような通常の障害物判定方法では障害物判定の精度が低下するおそれがあった。さらに、大雨等により路面の大部分に水が溜まっている場合には、路面に投射したレーザ光が路面上に溜まった水の表面で鏡面反射してしまい、距離値が得られないことが多く、他方、障害物からは、その垂直面にレーザー光が当たって反射し、レーザセンサまで戻ってくるので、かかる障害物に対しては距離値が得られる。このような場合、路面と障害物の各々の距離値の比較から障害物の高さ相当の値を求めることが困難となり、結果的に障害物を検出できなくなってしまうおそれが高いという問題があった。
【0013】
本発明は、上記問題に鑑みてなされたものであり、路面が乾燥している場合はもちろん、雨等で路面が濡れているために障害物の検出精度が低下するような場合や、とりわけ大雨により路面に水が溜まって障害物の検出が困難になるような場合であっても、種類の異なる障害物の検出ロジックを相補的に用いることにより、かかる路面の状況によることなく常に障害物を高い精度で検出できる移動ロボットを提供することを目的としている。
【課題を解決するための手段】
【0014】
請求項1に記載された移動ロボットは、路面上を走行する移動ロボットであって、
前記路面に対して距離計測用の検知波を送波するとともに反射波を受波して移動ロボットまでの距離を周期的に計測する測距センサと、
前記測距センサにて計測した距離データを複数周期分記憶する記憶部と、
前記測距センサにて計測された最新の一周期分の距離データに基づき前記路面上の障害物を検出する第一の判定手段と、
前記記憶部に記憶された所定周期分の距離データに基づき前記路面上の障害物を検出する第二の判定手段とを有し、
前記第一及び第二の各判定手段の少なくとも一方で前記障害物が検出されると障害物ありと判定することを特徴としている。
【0015】
請求項2に記載された移動ロボットは、請求項1記載の移動ロボットにおいて、
前記第一の判定手段は、前記記憶部に記憶された最新の一周期分の距離データにおいて前記路面との距離差が閾値以上となる物体を障害物として検出し、
前記第二の判定手段は、各所定周期分の距離データにおいて前記路面上の略同一位置で検出される物体を障害物として検出することを特徴としている。
【0016】
請求項3に記載された移動ロボットは、請求項1または2に記載の移動ロボットにおいて、
更に、前記路面が濡れているか否かを判定する路面状態判定手段を有し、
前記路面状態判定手段が路面が濡れていないと判定した場合には、前記第一の判定手段のみで障害物の有無を判定し、
前記路面状態判定手段が路面が濡れていると判定した場合には、前記第一の判定手段と前記第二の判定手段の少なくとも何れか一方で障害物が検出されると障害物ありと判定することを特徴としている。
【0017】
請求項4に記載された移動ロボットは、請求項1または2に記載の移動ロボットにおいて、
更に、前記路面の濡れ度合いを判定する前記路面状態判定手段と、
前記路面が少なくとも濡れていると判定された場合に前記移動ロボットの走行速度を制御する制御部とを有し、
前記路面状態判定手段により路面が濡れていないと判定された場合、および路面の濡れが所定度合いより小さいと判定された場合には、前記第一の判定手段のみで障害物の有無を判定し、
前記路面状態判定手段により路面の濡れが前記所定度合い以上と判定された場合には、前記第一の判定手段と前記第二の判定手段の少なくとも何れか一方で障害物が検出されると障害物ありと判定することを特徴としている。
【発明の効果】
【0018】
請求項1に記載された移動ロボットによれば、第1の判定手段は、前記測距センサによる1回の計測で得られたデータによって障害物の有無の判定を行うので、大雨の場合は検知精度が低下するおそれがあるが、その他の場合(特に路面が乾燥している場合)は高い検知精度で瞬時的に判断でき、一方、第2の判定手段は瞬時的な判断はできないが大雨の場合等に影響を受けにくい。このため、第1及び第2の判定手段を相補的に使用することで、路面が乾燥している場合はもちろん、雨等で路面が濡れているために障害物の検出精度が低下するような場合や、とりわけ大雨により路面に水が溜まって障害物の検出が困難になるような場合であっても、かかる路面の状況によることなく常に障害物を高い精度で検出できる効果が得られる。
【0019】
請求項2に記載された移動ロボットによれば、第1の判定手段は、前記測距センサによる1回の計測で路面から所定値以上の高さに相当する検出データが得られた場合に障害物有りの判定を行うので、特に路面が乾燥している場合には高い検知精度で障害物の高さを検知でき、また、第2の判定手段は、前記測距センサによる複数回の計測で得られた複数のデータのうち、所定回以上のデータにおいて被検出物が路面上の略同一の場所で得られた場合に障害物有りの判定を行うので、大雨により路面に水溜まりが出来て路面との高さ比較が困難となるような場合でも、障害物を高い精度で検出できる効果が得られる。
【0020】
請求項3に記載された移動ロボットによれば、路面状態判定手段により路面が濡れているか否かを判定し、その結果に基づいて、第1の判定手段と第2の判定手段を相補的に利用するので、各判定手段の機能を有効に利用して路面の濡れ等の状況によることなく常に障害物を高い精度で検出できる効果が得られる。
【0021】
請求項4に記載された移動ロボットによれば、特に、大雨で路面の広い範囲に大量の水が溜まっているような状況であっても、障害物を高い精度で検出できる効果が得られる。
【発明を実施するための最良の形態】
【0022】
1.全体の構成(図1)
図1は、本発明の一実施形態に係る移動ロボット1が利用される環境である監視区域の平面図と、同移動ロボット1の外観を示す斜視図である。
この移動ロボット1は、例えば警備目的のために使用される自律移動型のロボットであり、監視区域内の所定経路を巡回しながら図示しない異常判定用のセンサや撮像ユニット7、レーザセンサ2にて監視区域内の異常の検出を行うものである。
【0023】
図1(a)において、建物の周囲が、予め設定された移動ロボット1が巡回する移動経路とされており、その移動経路の全長にわたってガイド手段としての白線テープ3が固定的に設けられている。監視区域は、建物と、この建物の周囲を一周するように設定された白線テープ3を含む所定面積の範囲とされている。
【0024】
また経路中の所定の地点には、白線テープ3の近傍に地点指示手段としての指示マーカ4が固定的に配置されている。指示マーカ4は、白色矩形のマークとして移動経路上に設定された走行区間の境界に設けられており、移動経路上に設定された走行区間や指示マーカ4が設定された地点を移動ロボット1に指示するものである。
【0025】
また、白線テープ3の中途には、移動ロボット1による監視巡回行動の1サイクルにおける開始地点(出発点)及び終了地点(到着点)となり、ロボット不使用時の格納庫であるとともに、さらに移動ロボット1のバッテリーを充電する充電装置を備えたロボットボックスが配置されている。
【0026】
なお、図1には示さないが、例えば前記建物内のセキュリティー関連部署等には監視センタが設置されている。この監視センタには、本例の移動ロボット1及びこれに関連するシステムを運用するための管制装置等が配置されており、係員がその運用に当たる。
【0027】
図1(b)にその外観を示すように、移動ロボット1は、移動手段である左右の車輪6で前記白線テープ3に沿って走行しつつ、本体の正面側に装備したレーザセンサ2により、移動方向前方の監視区域を図示一点鎖線で示すように走査する。本体の上部には、全周囲を撮像できる撮像ユニット7が装備されており、レーザセンサ2等によって異常を発見した場合やその他必要な場合に周囲の必要な位置の画像を撮像できるようになっている。
【0028】
そして、この移動ロボット1は、監視巡回行動中に監視区域内で異常を検出すると、遠隔の前記監視センタに撮像画像とともに異常信号を送出する。監視センタでは、異常信号を受信すると、受信した撮像画像を表示して異常の確認を行い、移動ロボット1を遠隔操作して異常対処を行う。
【0029】
2.移動ロボット1の構成(図1及び図2)
図2は、本例の移動ロボット1の具体的な構成を示す機能ブロック図である。
この移動ロボット1は、移動手段6,8、ガイド検出部10、移動制御部9、自己位置検出部13、測距センサ16、記憶部17、処理部18、撮像ユニット7、通信部20及びこれら各部を制御する制御部21、各部に電力を供給する電源部22を有している。以下に各部ごとに説明する。
【0030】
(1) 移動手段
移動ロボット1は図1(b)に示すように4つの車輪6を有しており、それらのうち右前輪6、左前輪6の2つが駆動輪として機能する。移動手段は、右前輪6,左前輪6と左右各前輪6を独立に駆動する2つのモータ8で構成されており、左右各前輪6の回転速度により直進走行速度、旋回走行速度が制御され、旋回方向も制御される。この左右各前輪6の回転速度は移動制御部9により制御される。なお、左右前輪6を独立に制御する代わりに、舵角を制御して旋回速度を制御する方式でもよいし、車輪駆動でなく、左右のクローラを独立に制御する方式でもよい。
【0031】
(2) ガイド検出部
ガイド検出部10は、移動経路上のガイド手段である前述した白線テープ3を検出する。
ガイド検出部10は、白線検出カメラ11と路面情報抽出部12とから成る。白線検出カメラ11は、路面を撮影可能な様に移動ロボット1の底面に設置されている。路面情報抽出部12は、エッジ抽出やハフ変換などの処理により、白線検出カメラ11の撮影画像から、移動ロボット1の経路を誘導すべき白線テープ3及び指示マーカ4を検出して制御部21に出力する。
【0032】
なお、ガイド検出部10は、磁気センサ、電磁誘導センサなどで構成されても良く、それぞれ移動経路に設置されたガイド手段としての磁気ガイド、電磁誘導ガイドを検出するようにすることもできる。ガイド手段及びガイド検出部は設置する環境により選択できるようにすることが好ましい。また、巡回経路上にガイド手段や地点指示手段を設けることなく、デッドレコニングやGPSにより算出する位置情報に基づき、巡回経路上の各地点を認識するようにしてもよい。
【0033】
(3) 移動制御部
移動制御部9は、移動手段の車輪6を駆動するモータ8を制御するための手段である。移動制御部9は、ガイド検出部10による白線テープ3の検知出力に応じて、例えば周知のPID制御などにより、移動ロボット1が白線テープ3に沿って移動するようモータ8を制御する。また、移動制御部9は、後述する自己位置検出部13の位置算出部15による走行区間の検出に応じて、予め設定された経路情報に基づき移動速度を制御し、位置算出部15による特定地点の検出に応じて走行停止する。
【0034】
(4) 自己位置検出部
自己位置検出部13は、前記移動手段の各モータ8にそれぞれ設置された回転量検出部としてのレゾルバ14と、各レゾルバ14にそれぞれ接続された位置算出部15からなる。レゾルバ14はモータ8の回転軸の絶対位置をそれぞれ検出する。位置算出部15はレゾルバ14の出力から得られるモータ8の回転軸の回転量から左右各前輪輪6それぞれの回転量を算出し、左右各前輪6それぞれの回転量と車輪半径から算出された左右各前輪6の走行距離の平均から移動ロボット1の走行距離を算出する。
【0035】
本例では移動ロボット1の巡回経路は固定されているため、走行距離をもって自己位置とすることができる。走行距離として記録するのは、開始地点からの総距離としてもよいし、各指示マーカ4の位置からの距離として記録してもよい。なお、位置算出部15は左右各前輪それぞれの回転量の差と車輪間隔から移動ロボットの姿勢(向き)の変化を算出して左右各前輪による走行距離と姿勢変化からデッドレコニングにより自己位置を算出してもよい。
【0036】
また、自己位置算出部13は、ガイド検出部10による指示マーカ4の検知出力に応じて、指示マーカ4の検知回数を計数し、経路情報に基づき現在の走行区間を検出するとともに、自己位置の補正などを行う。
【0037】
(5) 測距センサ
測距センサ16は、移動ロボット1の前方を走査して路面の状態、路面上の異物その他の被検出対象を検出するための手段である。
測距センサ16は、図3に示すように移動ロボット1の本体の前面側に、進行方向の前方下方に向けて設置された障害物検出センサとしてのレーザセンサ2からなる。レーザセンサ2は、レーザ発振器よりレーザ光を照射するとともに、レーザ光の光路上にある物体にて反射した際の反射光を受けて検知信号を出力する投受波部を備えている。レーザセンサ2は、レーザ光の走査手段である走査鏡と、この走査鏡を回転駆動する手段とを有しており、前記レーザ発振器から発射されるレーザ光の照射方向(照射角度)を制御して、移動ロボット1の前方を含む所定の範囲を所定周期(例えば33ms)で空間走査している。
【0038】
なお、図3(a)には、本例の移動ロボット1におけるレーザーセンサ2と測定点との幾何学的位置関係を示し、図3(b)には、同レーザーセンサ2の走査角度範囲Φで示すセンシングエリア(斜線領域)及び同エリア内におけるセンサ測定データ数についての一例を示した。図示したように、本例ではレーザセンサ2によるセンシングエリアとして移動ロボット1の正面140°を設定し、走査鏡を0.5°ずつ回転させてセンシングエリアを走査している。これによりレーザセンサ2による一周期の走査で281個の測定点のデータが所得される。
【0039】
そして、測距センサ16はレーザ光の照射から反射光検出までの時間により算出される測距センサ16とレーザ光を反射した物体(測定点)との距離値と、回転駆動される走査鏡の角度とにより、レーザ光を反射した物体、即ちレーザ光を反射した測定点の相対位置を算出する。相対位置は、移動ロボット1を基準とした測定点の位置(距離値、角度)である。測距センサ16はレーザセンサ2が一周期走査するごとに測定結果を出力する。
【0040】
なお、測距センサ16はレーザセンサ以外のセンサで構成されてもよい。例えば、測距センサ16は赤外線タイプのセンサで構成されてもよく、ミリ波レーダタイプのセンサや超音波センサで構成されてもよい。また、走査鏡により走査する構成に限らず、移動ロボットの周囲所定角度毎に複数の投受光部を設けて、各投受光部を所定周期で作動させることにより、周囲下方の路面や障害物までの距離値を得るよう構成されてもよい。この場合、測距センサ16は各投受光部の測定結果をまとめて出力する。
【0041】
(6) 記憶部
記憶部17は、移動ロボット1の各種処理に使用される情報を記憶している。記憶部17が記憶する情報には、以下1)〜4)のものが含まれる。
1)移動経路の情報を示した経路情報
2)障害物マップ
3)位置算出部により算出された移動ロボット1の位置情報
4)障害物判定用の閾値
【0042】
1)の経路情報は、走行経路中の各区間(ある指示マーカ4から次の指示マーカ4までの区間)番号に対応して、区間内での走行速度maxHとmaxL(maxH>maxL)、予め測量した区間距離、区間の始点終点間の方位角の差(角度差)及び各区間を走行している時の車輪径、各指示マーカ4上での移動ロボット1の動作が記憶されている。経路情報では、区間番号が、該当区間までに検出されるべき指示マーカ4の数(検出回数)と対応付けられている。走行制御では、指示マーカ4の検出回数から区間番号や指示マーカ4上での移動ロボット1の動作が特定され、そして区間番号から各区間における車輪径が特定されることとなる。
【0043】
2)の障害物マップは、測距センサ16、処理部18で検出された情報を一時的に記憶するための移動ロボット1周囲所定範囲を示したマップである。図4に示すように、移動ロボット1に設置されたレーザセンサ2の位置を原点(0,0)としたそのマップエリアの中には、停止エリア、減速エリアが設定されており、検出された障害物や路面の濡れ情報がマップに登録される。そして、移動ロボット1が走行するごとに、その移動に応じてマップ上に登録された障害物データの座標変換を行う。すなわち、障害物マップには測距センサで計測された過去所定周期分のデータが登録されており、この複数周期分のデータを用いて、後述する第二の判定手段による処理が行われる。
【0044】
3)の位置情報は、自己位置検出部13の位置算出部15によって算出された移動ロボット1の自己位置情報である。
4)の障害物判定用の閾値は、移動ロボット1が乗り越えられないような走行に支障を与える高さの物体を障害物として検出するために物体の高さに相当する値と比較される閾値である。閾値として設定される値として、相対的に大きな値thH(障害物ありと判定するための閾値として厳しい値)と相対的に低い値thL(障害物ありと判定するための閾値として緩い値)の2つの値が予め記憶されており、この内何れかが、後述する障害物検知に係る制御で障害物判定用閾値として設定される。
【0045】
(7) 処理部
処理部18は路面状態判定部23と障害物判定部19を備えている。路面状態判定部23は、レーザセンサ2の出力結果に基づき路面状態が乾燥しているか、濡れているかを判定し、判定結果を制御部21に出力する。この結果、制御部21は路面状態に応じた上限速度(maxH又はmaxL)で走行するよう移動制御部9に信号を出力する。障害物判定部19は、第一の判定手段19aと第二の判定手段19bとを含み、測距センサ16の出力に基づき異常の有無を判定する。第一の判定手段19aは、測距センサ16の一周期の走査結果として出力されたデータに含まれる距離値の差を閾値(thH又はthL)と比較して、所定以上の高さを持つ障害物が存在するか否かを判定する。前述したように、測距センサ16が路面を走査した結果として出力したデータに含まれる距離値の差(走査鏡の角度毎における距離値の差)は、障害物の高さに相当する値となる。この障害物高さに相当する値を閾値処理することで、移動ロボット1の走行に支障を与える高さの障害物が存在するか否かを判定するのである。また、第二の判定手段19bは、移動ロボット1が移動しているときに測距センサ16が出力するデータを複数周期に渡って観察する。移動ロボット1が移動しているとき、測距センサ16によりフラットな路面を走査して得られる測定点(レーザ光が反射した点)は、常に、移動ロボット1から所定距離はなれた位置となる。このとき、記憶部の障害物マップに記憶された複数周期に渡る走査結果では、環境内の移動ロボットの移動にあわせて、測距センサの走査周期毎に環境内の測定点の位置も移動することとなる。他方、図14に示すように、測距センサ16の走査範囲内に障害物が存在するとき、環境内を移動ロボット1が移動しても、レーザ光が障害物に当たっている限り、障害物からの反射光で得られる測定点の位置は毎周期変わらずに障害物の存在位置を示すこととなり、複数周期に渡って略同一の場所に測定点が得られることとなる。そこで、第二の判定手段19bは、測距センサ16が出力する走査結果を障害物マップに登録していき、複数周期に渡って略同一場所に測定点が得られている場合に障害物が存在すると判断する。そして、障害物が検出され異常と判定されると、後述する通信部20より異常信号が出力され、また、移動制御部9が移動ロボット1の停止や減速などの予め定められた処理を行う。障害物判定部19による処理の具体例は後述する。なお、本例では、レーザセンサ2の出力結果から路面の濡れを判定しているが、路面の濡れを判定する手段を別途設けてもよい。この場合、レーザセンサ2の反射波から判定する方法に限られず超音波、赤外線の反射波、或いは画像解析、車輪から発生する走行音の違いを解析するなどにより判定してもよい。
【0046】
(8) 撮像ユニット
撮像ユニット7は、移動ロボット1の本体上面に搭載されて移動ロボット1の周囲を撮像する手段である。本例では、複数のカメラを周方向に外向きに並べて全周をカバーするようにしている。
【0047】
(9) 通信部
通信部20は、遠隔の監視センタと信号を送受信する無線通信手段である。通信部20は、移動ロボット1が監視領域内で異常を検知した場合、遠隔の監視センタに無線等で異常信号を出力する。また、通信部20は、撮像ユニット7が撮像した画像と自己位置検出部13が算出した移動ロボット1の位置を遠隔の監視センタに送信し、監視センタから送信された制御コマンドの信号を受信して後述する制御部21に入力する。
【0048】
(10)制御部
制御部21は、移動ロボット1の各構成部分を統括的に制御する手段であり、CPU等を備えたコンピュータで構成される。
【0049】
なお、上述した各部の構成で、その機能がコンピュータ処理によって実現可能なものは、同コンピュータで実現されてよい。例えば、路面情報抽出部12、位置算出部15、移動制御部9、路面状態判定部23、障害物判定部19などは同コンピュータで実現されてよい。また、記憶部17は、同コンピュータのメモリおよび外部記憶装置などで実現されてよい。
【0050】
3.移動ロボットの制御系における情報処理の手順及びこれによる動作
以下、本例の移動ロボット1の走行時における制御動作を説明するが、まず本例の移動ロボット1の走行時における障害物検知の全体的な制御手順を説明し(図5)、次に図5の手順で取得した情報等を用いて行う移動ロボット1の走行制御を説明する(図6)。次に、前記障害物検知時の制御手順における濡れ路面検知制御(図7)と、障害物検知制御(図8、図10、図12)についてそれぞれ詳細に説明する。各フローチャートを用いた以下の説明では、Sで始まる連続番号により制御手順の各ステップを示すものとする。
【0051】
(1) 障害物検知に係る全体的な制御(図5)
図5は、本例の移動ロボット1の走行時における障害物検知手順の全体を示すフローである。この手順において、濡れ路面検知処理(S01)において路面の濡れを検知した場合には移動ロボット1の走行速度の上限を制御する速度設定の要求を行うとともに障害物ありと判定するための閾値を上げ、また第一の判定手段19aによりレーザセンサによる1回の走査結果から2段階の処理を行い、前記閾値を利用した2方式の障害物検知処理(S07、S08)を行っている。これらの2種類の障害物検知処理とは、平坦な路面上におけるある程度の幅のある障害物の検出処理(図8、図9)と、段差やポール等の路面上のギャップの検出処理(図10、図11)である。さらに、その後、第二の判定手段19bによる第3の障害物の検出処理(S09)を行う。この第3の障害物検出処理は、時系列データによる障害物検知処理(図12、図13)であり、特に大雨等により路面に水溜まりが出来ているような場合に上述の第1、第2の障害物検知処理で検出できない障害物を高い精度で検出できる。以上の3種類の障害物検出処理のいずれかにおいて障害物の存在を検出した場合には、検出結果に応じた移動ロボット1の停止・減速の要求を行う。なお、本例では、第一の判定手段による障害物検知処理として2種の処理を行う例を説明しているが、これに限定されるものではなく、何れか1つの処理を行う構成としてよい。
【0052】
S01:濡れ路面検知処理において、路面が濡れているかどうかを判定する。このサブルーチンの詳細は図7に示し、後に詳述する。
S02:路面に濡れがある場合はS05へ進む。濡れがない場合はS03へ進む。
【0053】
S03:路面に濡れがない場合(S02でNO)は、走行速度の上限をmaxHに設定するよう制御部21へ指令する。この走行速度の上限maxHは、路面が濡れていない場合の通常の速度の上限を示す。なお、路面の凹凸の影響などにより、水たまりが点在し、濡れ路面判定処理の判定結果が短い間隔で濡れと乾燥が変化する場合、速度制御を頻繁に行うのは好ましくない為、濡れを検知した後、所定距離進むまでは乾燥と判定されても上限速度を変更しないようにしたり、障害物マップ上に濡れと判定された位置を記憶しておき移動ロボット1が走行することによりマップ上の所定エリアから濡れと判定された位置がなくなってから乾燥路面の判定を再開するようにしてもよい。
S04:走行路面状態(濡れなし)に応じて障害物ありと判定するための閾値(障害物高さに相当する値)として、路面が濡れている場合と比較して相対的に低い閾値thLを設定する。すなわち、乾いた走行路面ではレーザセンサ2により検出する距離の誤差が濡れ路面の場合よりも相対的に小さいので、走行速度の上限を相対的に高く(maxH)して、障害物ありと判定する際の閾値は相対的に低いもの(thL)とする。設定された閾値thLは記憶部17に記憶される。
【0054】
S05:路面が濡れている場合(S02でYES)は、走行速度の上限をmaxL(<maxH)に設定するよう制御部21へ指令する。この走行速度の上限maxLは、路面が濡れている場合の速度の上限を示すもので、すなわち路面が濡れている場合は濡れていない場合よりも移動ロボット1の速度を落とす。
S06;走行路面状態(濡れあり)に応じて障害物ありと判定するための閾値(障害物高さに相当する値)として路面が濡れていない場合と比較して相対的に高い閾値thHを設定する。すなわち、濡れた走行路面ではレーザセンサ2により検出する距離の誤差が乾いている場合よりも相対的に大きいので、走行速度の上限を相対的に低く(maxL)して、障害物ありと判定する際の閾値は相対的に高いもの(thH)とする。設定された閾値thHは記憶部17に記憶される。
【0055】
S07:第1の障害物検知処理(路面との距離差検出方式)を実行する。このサブルーチンは図8に示し、図9も参照して後に詳述する。
【0056】
S08:第2の障害物検知処理(距離ギャップ検出方式)を実行する。このサブルーチンは図10に示し、図11も参照して後に詳述する。
【0057】
S09:第3の障害物検知処理(時系列データによる障害物検知)を実行する。このサブルーチンは図12に示し、図13も参照して後に詳述する。
【0058】
S10:S07,S08,S09の各障害物検知処理のいずれかにおいて障害物ありと判定されたか否かを判定する。S07〜S09の何れかで障害物有りと判定された場合はS11へ進み、何れの処理においても障害物ありと判定されない場合はS15へ進む。
【0059】
S11:障害物有りと判定された場合(S10でYES)は、この障害物が障害物マップにおいて停止エリア(図4参照)にあるか否かを判定し(S11)、停止エリアにある場合(S11でYES)はS12で移動ロボット1を停止させるよう制御部21へ指令し、ない場合(S11でNO)はS13へ進む。
【0060】
S13:検出された障害物が障害物マップにおいて減速エリア(図4参照)にあるか否かを判定する。減速エリアにある場合(S13でYES)はS14で移動ロボット1を減速させるよう制御部21へ指令し、ない場合(S13でNO)はS15へ進む。
【0061】
S15:制御部21から障害物検知処理を停止するよう指令が入力されているか否か判定し、なければS01に戻って以上の処理手順を繰り返し、停止するよう指令があれば終了する。
【0062】
(2) 全体的な走行制御(図6)
図6は本例の移動ロボット1の走行制御において、指示マーカ4と指示マーカ4の間を1走行区間とした場合のフローチャートを示すものであり、初期の設定に従い規定の移動経路を走行しながら、前述した障害物検知処理(図5)において出力された走行速度の設定要求や停止要求、減速要求等に基づいて行う情報処理手順を示すものである。
【0063】
S51:制御部21は、記憶部17に記憶されている経路情報から、現在の走行区間の速度情報として、maxHとして指定された速度を取得する。経路情報には走行区間ごとの走行速度として、maxHとmaxLの2つの速度が記憶されている。移動ロボット1は、通常、maxHで指定された速度で走行し、濡れた路面を検出すると走行速度をmaxLにおとして走行する。
S52:制御部21は、取得したmaxHとして指定された走行速度で移動ロボット1を走行させる。
【0064】
S53:制御部21は、処理部18が前述した図5のフローにおいて制御部21へ出力した走行速度に関する情報(maxHの設定速度、又はmaxLの設定速度、又は停止要求、又は減速要求)を取得する。
S54:制御部21は、処理部18からの走行速度に関する情報中、停止要求があるか否かを判定する。停止要求があれば(S54でYES)、S55で移動ロボット1の走行を停止する。移動ロボット1が停止した場合、制御部21は再び走行開始の指令がくるまで移動ロボット1を停止した状態に維持する。
【0065】
S56:停止要求がなかった場合(S54でNO)には、処理部18からの走行速度に関する情報(以下「指定速度」とする)に基づき、速度変更が必要か否かを判定する。制御部21は、指定速度と現在走行速度を比較して、現在走行速度が指定速度よりも速ければ指定速度まで減速し、現在走行速度の方が指定速度より遅ければ、指定速度まで加速して走行する。
【0066】
つまり、指定速度の上限が増加または減少した場合(例えば、走行路面が濡れ時のmaxLから走行路面乾燥時のmaxHへ変更した場合又は路面乾燥時のmaxHから路面濡れ時のmaxLに変更された場合)、現在走行速度が、指定速度の上限と同じであればそのまま現在走行速度で走行し、現在走行速度が指定速度の上限よりも遅ければ指定速度の上限まで加速し、現在走行速度が指定速度の上限よりも速ければ指定速度の上限まで減速する。尚、maxHとして指定される速度の上限は予め記憶部17の経路情報に各区間毎に記憶されている走行速度の値であって、例えば10km/hや6km/h等であり、maxLとして指定される速度の上限は、maxH以下の例えば3km/h等である。
また、障害物が障害物マップにおいて減速エリアにあるために減速要求がなされた場合は、maxHやmaxLによる走行速度の要求にかかわらず減速を行う。
【0067】
S57:上述のような処理により制御部21が速度変更が必要と判断した場合(S56でYES)には、指定された走行速度に変更する。
【0068】
S58:制御部21は、移動ロボット1が走行している走行区間が終了したか否かを判定する。終了していなければS53へ戻って以上の手順を繰り返す。走行区間が終了していれば、S51に処理を戻して次の走行区間における走行制御を開始する。また、経路の終点に到着した場合には以上の制御を終了する。
【0069】
(3) 濡れ走行路面検知制御(図7)
図7は、図5のS01においてサブルーチン化されているレーザセンサによる濡れ路面検知処理の具体的フローを示す。
S71:路面状態判定部23は、レーザセンサ2からの出力信号によるレーザ光を反射した測定点までの距離値yのデータ(センサデータ)を取得する。レーザセンサは180度に近い中心角度の範囲において約3m先の走行路面にレーザ光を照射し、反射光を得ている(図3参照)。
【0070】
S72:路面状態判定部23は、センサデータのうち、移動ロボット1の進行方向の正面に相当するN個(例えば正面60°分のデータとなる121個)のデータを選択する。
【0071】
S73:路面状態判定部23は、上記の進行方向正面に相当するN個のデータのうち、各センサデータの値(距離値y)が一定値以下であるようなセンサデータの数をカウントする。
ここで一定値としては、路面で反射した場合に得られる距離値よりもやや高い数値としており、得られた各センサデータの値(距離値y)が一定値以下である場合とは、レーザ光が走行路面で反射してレーザセンサ2に戻ってきた場合であり、走行路面のレーザ光が当たった部分から反射光が得られたことを意味する。すなわち、ここでのカウント数とは、センサデータN個のうち、走行路面で反射してレーザセンサ2に戻ってきたレーザ光の数を意味する。
なお、走行路面が濡れている場合にはレーザ光が走行路面で全反射してレーザセンサ2には戻ってこない場合があり、この場合レーザセンサ2におけるセンサデータとしては無限遠と評価され、センサデータの値(距離値y)としては一定値以上と判定される。あるいは、走行路面が濡れている場合に走行路面で乱反射したレーザ光がレーザセンサにおいて路面からの距離値とは著しく異なる大きな距離値として出力される場合もある。そこで、本例では、路面で反射した場合に比べて著しく大きな距離値を示すセンサデータは濡れた路面で反射したレーザ光によるものとみなして処理する。
【0072】
S74:路面状態判定部23は、上記カウント数が前述のセンサデータの数N個に対して占める割合が予め設定しておいた所定値(例えば70%)以上か否かを判定する。
【0073】
S75:上記カウント数が前述のセンサデータの数N個に対して占める割合が前述の所定値以上である場合(S74においてYES)、乾燥路面と判定する。
【0074】
S76:上記カウント数がセンサデータの総数N個に対して占める割合が前述の所定値以上でない場合(S74においてNO)、濡れ路面と判定する。
【0075】
なお、本例における濡れ路面検知制御では、レーザセンサ2によって得た複数のセンサデータの処理において、距離値が所定値以下のセンサデータを乾いた路面からのものと見なし、そのカウント数が全体に占める割合が一定値以上である場合に路面が乾燥していると判断し、同割合が一定値に満たない場合に路面が濡れていると判断する構成としたが、距離値が所定値以上のセンサデータを濡れた路面からのものと見なし、そのカウント数が全体に占める割合が一定値以上である場合には路面が濡れていると判断し、同割合が一定値に満たない場合には路面が乾燥していると判断する構成としてもよい。
【0076】
(4) 障害物検知制御(第1の障害物検知処理、図8及び図9)
この障害物検知制御は、平坦な路面上に存在する何らかの障害物を検知するための方式である。
【0077】
S81:1周期分のセンサデータにおいて隣接するデータ間で距離値の差が所定値以下となるものをグループ化してラベリングする。
図9は前述の図14と同様にレーザセンサが1周期の走査によって検出した各位置を示す距離値yのセンサデータをxy座標平面上にプロットしたものであり、X軸は移動ロボット1の正面からの角度、Y軸は移動ロボット1からの距離値を示す。図示上は連続した直線になっているが実際には測定点の集合であって、図中両脇の水平な直線は平坦な走行路面のデータであり、中央の凸部は走行路面上に置かれた障害物までの距離を示すデータであり、両者の連続部分は障害物の側面からの反射によるデータを示している。また、図示していないが、レーザセンサの位置はXY座標の原点となり図中下方にある。
【0078】
ここで、ラベリングとは、センサデータの順列中、y方向の距離が近くx方向に並んでいる複数のデータをひとつの集合として分類することを意味し、図9の例では図中両脇の水平な2箇所の直線と、中央の凸部がラベリングされている。
【0079】
S82:ラベリングされたひとかたまりのデータ(ラベリングデータ)の1つに着目し、ラベリングデータのX方向についての両脇にそれぞれK個(例えば10個)以上の数の測定点からなるラベリングデータがあるか否かを判断する。Kの値はセンサデータの総数と検出対象の障害物の大きさ等を考慮して適宜設定する。
【0080】
S83:両脇にそれぞれK個以上の数のデータがある場合(S82でYES)、これら両脇のラベリングデータがほぼ同じy座標値であるか否かを判断する。これによって、両脇のラベリングデータが走行路面によるものか否かを判断する。
【0081】
S84:着目したラベリングデータのy座標値の平均値と、両脇のラベリングデータのy座標値の平均値の差を算出する。これにより、着目した検知対象物と、その両脇にある検知対象物との距離値の差が求められる。この距離差は着目した検知対象物の高さに相当するものである。
【0082】
S85:S84で算出した差が、図5に示した検知に係る制御で記憶部17に記憶された障害物判定用の閾値(障害物の高さに相当する閾値:thL又はthH)以上であるか否かを判定する。図5において示した様に、記憶部17には、路面の状態に応じて、路面が濡れていれば高さに相当する値として相対的に高い値thH、路面が濡れていなければ高さに相当する値として相対的に低い値thLの何れかが障害物判定用の閾値として設定されている。
【0083】
S86:S84で算出した差が障害物判定用の閾値以上である場合(S85でYES)、着目したラベリングデータを障害物として認定し、障害物ありと判定する。
【0084】
障害物ありとされた場合及びS82、S83、S85でそれぞれNOだった場合、全ラベリングデータについて以上の処理を行ったか否かを判断し、全て処理していれば(S87でYES)本フローによる処理手順を終了し、全ラベリングデータについて以上の処理を行っていなければ(S87でNO)S82に戻って次のラベリングデータに着目して以上の手順を繰り返す。
【0085】
(5) 障害物検知制御(第2の障害物検知処理、図10及び図11)
この障害物検知制御は、前記(4) で説明した方式では検出しがたいx方向の幅の狭い対象をy座標の違い(距離差)を検知することで検出するための方式であり、例えば路面上に置かれたポールのような小さな対象物も障害物として検出することができる。
【0086】
図11はレーザセンサが1周期の走査によって検出した各位置を示す距離値yのセンサデータをxy座標平面上にプロットしたものであり、X軸は移動ロボット1の正面からの角度、Y軸は移動ロボット1からの距離値を示す。図中上下の水平な直線の間に並ぶ複数のデータにy方向のギャップ(距離差)が存在していることを示している。
【0087】
S101:連続するM個(例えば5個)のセンサデータのy座標値の変動量が閾値以下の箇所であって、かつ未処理の箇所があるか否か判断する。図11において、右側のM個のデータの各y座標値が閾値以下の変動量であるため、当該箇所が本ステップの判断において特定される。
【0088】
S102:前記箇所(M個のデータ)の端点を比較点1、その隣接点(M個のデータに含まれない側の点)を比較点2とする。
S103:比較点1と比較点2のy座標値の差を算出する。
S104:比較点1と比較点2のy座標値の差が所定閾値以上であるか否かを判断する。
【0089】
S105:比較点1と比較点2のy座標値の差が閾値以上である場合(S104でYES)、比較点1、2をそれぞれ1個ずつM個のデータが存在する側とは反対側にずらす。すなわち、新たな比較点1は前回の比較点2に、新たな比較点2は新比較点1の隣接点となる。ステップS103に戻って新たな比較点1、2のy座標の比較を繰り返す。
【0090】
S106:比較点1、2のy座標値の差が閾値以上でない場合(S104でNO)、最初の比較点1と現在の比較点1のy座標値の差を算出する。この差は、障害物の高さに相当するギャップ(y方向の距離差)である。
【0091】
S107:最初の比較点1と現在の比較点1のy座標値の差が、記憶部17に記憶された障害物判定用の閾値(障害物の高さに相当する閾値thL又はthH)以上であるか否かを判定する。なお、この閾値は図8を参照して説明した障害物検知(路面との距離差方式)における閾値(S85参照)と同じ閾値である。
【0092】
S108:S106で算出した差が障害物判定用の閾値以上である場合(S107でYES)、ギャップの部分を障害物として認定し、障害物ありと判定する。
【0093】
S109:障害物ありとされた場合及びS106で算出した差が前記障害物判定用の閾値以上でない場合(S107でNO)、全データについて以上の処理を行ったか否かを判断し、全て処理していれば(S109でYES)本フローによる処理手順を終了し、全データについて以上の処理を行っていなければ(S109でNO)S101に戻ってデータごとに以上の手順を繰り返す。
【0094】
(6) 障害物検知制御(第3の障害物検知処理、図12及び図13)
前記(4) 及び(5) で説明した各方式は、第一の判定手段19aにてレーザーセンサの一走査によるセンサデータから障害物有無の判定を行うものであるが大雨によりできた路面の水溜りでレーザが鏡面反射してしまうような場合に障害物の検出精度が低下することがある。これに対し、本項で説明する第3の障害物検知制御は、第二の判定手段19bにて移動ロボットが移動しながら行うレーザーセンサの複数周期の走査によって得られたセンサデータの相関から障害物有無の判定を行うものであり、特に路面の水溜りでレーザが鏡面反射してしまうような大雨の場合にも障害物の検出精度が影響を受けにくいという特徴を有している。
【0095】
図13は、移動ロボット1が所定速度で移動しながら、レーザセンサ2でレーザ光を前方の路面に所定の周期で複数回(すなわち複数周期)走査した際に、各周期(すなわち異なる時刻)で得られた路面及び障害物までの各距離を示すデータを、距離値yのセンサデータとし、移動ロボット正面からの角度をx軸にとってxy座標平面上にプロットした一例を示すものである。この図において、移動ロボットの位置は下方にあるxy座標軸の原点にあり、各周期のセンサデータを表す複数のラインにおいて、水平な部分が路面を表し、一部に検出されている下方に凸の部分が障害物か否かを判定する対象となる部分である。従って路面を表す水平なラインのy方向に隣接する間隔は、レーザセンサ2による走査の1周期における移動ロボット1の移動距離に相当する。本例は、乾燥路面の例であるが、大雨等により路面に水たまりなどが生じた場合、上述の路面を表す水平部分はレーザの鏡面反射により距離値が得られず、障害物の部分(凸部)のみ距離値が得られるような場合が起こりうる。これは、図14に示すように障害物においてレーザ光を反射する点は、路面から立ち上がった面であり、水たまり等の影響を受けにくいという知見に基づくものである。
【0096】
以下、図12及び図13を参照して、処理部18による時系列データによる障害物検知の手順を説明する。
S200:障害物判定部19は、記憶部17に記憶されている経路情報から、現在の走行距離情報を取得する。
S201:前回の検知処理時からの移動ロボット1の移動距離が一定以上であるか否か判断する。移動距離が一定に達していない場合は処理を終了し、達している場合(S201,YES)はS202に進む。
【0097】
S202:移動ロボット1の移動に応じて、前述した記憶部17の障害物マップに登録した過去P−1周期のセンシングデータ及び検出済みの障害物の登録データを、移動ロボット1の移動距離に合わせて座標変換し、障害物マップに再登録する。又、現周期のデータを障害物マップに登録する。
【0098】
S203:現周期の時点において、図9に示した手順と同様の手順(図8のS81参照)でラベリングし、中央の障害物か否かを判定すべき部分のデータと、その両側にある路面によるに区分し、ラベリングデータとする。
【0099】
S204:現周期の各ラベリングデータを、障害物マップに登録したこれよりも前の周期である複数周期の各データとの相関をとる。本例では、現周期からP−1周期前までのP個のデータ(図13において例えばP=3とすると現周期から現周期−2のデータ)とを比較する。Pは、検出したい障害物の高さの下限値(例えば5cm)に対し、レーザセンサによる距離値が得られる個数に基づき適切な値を定める。距離値が得られる個数はロボットの走行速度、レーザセンサの走査間隔により定まる。
【0100】
S205:比較したすべての周期において、障害物マップに登録された座標が同じであるか否か、すなわち検出した対象の位置がほぼ重なっているか否かを判断する。1周期でも重なっていない場合(S205、NO)、障害物ではないものとしてS207に進み、すべての周期で重なっている場合(S205、YES)、S206に進む。
【0101】
S206:複数の周期の各ラベリングデータ(時系列データ)の内、上記比較の結果、重なっているものがある場合、この部分は移動ロボット1の移動に伴って同一の対象からの反射光によるものであるとして、障害物と判定し、障害物マップに登録する。
【0102】
S207:次に、現周期の各ラベリングデータで処理していないものがある場合(NO)はS204に戻って上述した比較処理と判断(S204〜S206)を行い、すべて処理した場合(NO)は終了となる。
【0103】
以上の時系列データによる障害物検知によれば、得られたデータ自体の距離値を高さに相当する閾値と比較して障害物か否かを判定するのではなく、レーザセンサ2の連続する複数回の走査で所定回数以上、同一場所から反射光によるデータが得られた場合には、当該位置に障害物が存在するものと判断するロジックを採用しているので、大雨の場合等にも影響を受けにくく、かかる場合における障害物の検出には有利である。
【0104】
また、移動ロボット1の移動に伴い、移動ロボット1には機械的な振動が発生し、また走行路面の凹凸による振動も避けられないが、上述した時系列データによる障害物検知によれば、レーザセンサ2による走査の数周期前における位置から現在位置までのある程度の距離にわたってデータが同一位置で重なるか否かの判断を行うので、障害物以外の原因による誤検出を避けつつ、上記のような確実な障害物検出を行うことができる。
【0105】
このように、本例によれば、レーザセンサ2による1回の走査で得られたデータによって障害物の有無の判定を行う第1の判定手段(路面との距離差検出方式(図8)及び距離ギャップ検出方式(図10))と、レーザセンサ2による複数回の走査で得られたデータによって障害物の有無の判定を行う第2の判定手段(時系列データによる障害物検出方式(図12))とを有し、両判定手段を相補的に使用し、各判定手段の少なくともいずれか一方の判定結果によって障害物有りの判定を行えるので、両者の利点を共に生かすことができ、路面が乾燥している場合はもちろん、雨等で路面が濡れているために障害物の検出精度が低下するような場合や、とりわけ大雨により路面に水が溜まって障害物の検出が困難になるような場合であっても、かかる路面の状況によることなく常に障害物を高い精度で検出できる効果が得られる。
【0106】
また、以上説明した一実施形態においては、障害物検知の全体としてのフロー(図5)においてS07〜S09に示すように3つの障害物判定手段が順次連続して機能するように構成したが、路面状態判定手段が路面が乾燥していると判定した場合には、前記第1の判定手段のみで障害物の有無の判定を行い、前記路面状態判定手段が路面が濡れていると判定した場合には、前記第2の判定手段を併用して障害物の有無の判定を行うようにしてもよい。その場合は図5のフローチャートでS09の前に、濡れ路面か否かの判断を行い、YESであればS09の処理を行い、NOであれば行わないように変更するだけでよい。さらに前記第2の判定手段を用いるのは、路面の濡れの状況が大雨の場合のようにレーザ光が路面の水溜りで鏡面反射してしまうような場合のみとしてもよい。この場合も上述のようにS09の前に濡れ状況の判断を行うよう図5のフローチャートを変更するだけでよい。濡れ状況の判断は例えば図7のS74の判断に用いたカウンタ値を利用しカウンタ値が小さい程濡れの度合いが大きいと判定して、通常の濡れと、大雨の場合を区別するようにすればよい。
【図面の簡単な説明】
【0107】
【図1】図1は、本発明の一実施形態に係る移動ロボット1が利用される環境である監視区域の平面図と、同移動ロボット1の外観を示す斜視図である。
【図2】図2は、本例の移動ロボット1の具体的な構成を示す機能ブロック図である。
【図3】図3(a)は、本例の移動ロボット1におけるレーザーセンサ2と測定点との幾何学的位置関係を示す側面図であり、図3(b)は、同レーザーセンサ2の走査角度範囲Φで示すセンシングエリア(斜線領域)等を示す平面図である。
【図4】図4は、本例の移動ロボット1の記憶部17において、移動ロボット1に設置されたレーザセンサの位置を原点(0,0)としたマップとして登録されたマップエリアを示す図である。
【図5】図5は、本例の移動ロボット1の走行制御における障害物検知手順の全体を示すフローである。
【図6】図6は、本例の移動ロボット1の走行制御において、指示マーカ4と指示マーカ4の間を1走行区間とした場合のフローチャートを示すものである。
【図7】図7は、図5のS01においてサブルーチン化されているレーザセンサによる濡れ路面検知処理の具体的フローを示す。
【図8】図8は、平坦な路面上に存在する何らかの障害物を検知するのに適した路面との距離差検出方式による障害物検知制御を示すフローである。
【図9】図9は、レーザセンサが1周期の走査によって検出した各位置を示す距離差yのセンサデータをxy座標平面上にプロットしたものである。
【図10】図10は、x方向の幅の狭い対象をy座標の違い(距離差)から検出する距離ギャップ検出方式による障害物検知制御を示すフローである。
【図11】図11は、レーザセンサが1周期の走査によって検出した各位置を示す距離差yのセンサデータをxy座標平面上にプロットしたものである。
【図12】図12は、時系列データによる障害物検知を示すフローである。
【図13】図13は、移動ロボット1が所定速度で移動しながら、レーザセンサ2でレーザ光を前方の路面に所定の周期で複数回走査した際に、各周期で得られた路面及び障害物までの各距離を示すデータを、距離差yのセンサデータとしてxy座標平面上にプロットしたものである。
【図14】図14は、移動しながら前方斜め下方に向けてレーザーを走査しつつ障害物の検出を行う基本構造の移動ロボット1において、その走行中の障害物検出の状態を時系列で示す図であり、各時刻t〜t+4において、レーザー光と移動ロボット1と障害物の側面図と、レーザーセンサ2の位置を原点とした平面視xy座標系の画面において検出対象と移動ロボット1との距離差(図中y方向の距離)をレーザーの軌跡で表現したものである。
【符号の説明】
【0108】
1…移動ロボット
2…測距センサとしてのレーザセンサ
16…測距センサ
19…障害物判定部
21…制御部
【出願人】 【識別番号】000108085
【氏名又は名称】セコム株式会社
【出願日】 平成18年6月30日(2006.6.30)
【代理人】 【識別番号】100067323
【弁理士】
【氏名又は名称】西村 教光

【識別番号】100124268
【弁理士】
【氏名又は名称】鈴木 典行


【公開番号】 特開2008−9929(P2008−9929A)
【公開日】 平成20年1月17日(2008.1.17)
【出願番号】 特願2006−182379(P2006−182379)