障害検出装置及び移動ロボット
【課題】障害の方向を検出する。
【解決手段】バンパー2に力が掛からないときは走行装置のフレーム1との間が弾性体によって非接触に保持されており、抵抗線10と導電部材11とは接触しない。何らかの障害によってバンパー2に力が加わると、抵抗線10と導電部材11とが接触し、抵抗線10の接触点の電位が検出電圧Voutに出力する。検出電圧Voutは、略環状に配置している抵抗線10の位置を示しており、これに基づいて力が掛かった方向を検出する。
【解決手段】バンパー2に力が掛からないときは走行装置のフレーム1との間が弾性体によって非接触に保持されており、抵抗線10と導電部材11とは接触しない。何らかの障害によってバンパー2に力が加わると、抵抗線10と導電部材11とが接触し、抵抗線10の接触点の電位が検出電圧Voutに出力する。検出電圧Voutは、略環状に配置している抵抗線10の位置を示しており、これに基づいて力が掛かった方向を検出する。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、走行の妨げとなる障害を検出する障害検出装置と、障害物を検出して回避する移動ロボットに関する。
【背景技術】
【0002】
従来、自律走行型の移動ロボット等、通路上を車輪で走行する車輪走行機器を備えた装置では、センサによって自己の位置を認識し、地図情報に基づき、予め決められた経路を移動する。走行時に障害物に衝突した場合には、この障害物を回避する行動をとる。このため、障害物の正確な位置を検出する必要があり、例えば、電子接触子に長さと幅を持たせたテープスイッチを移動ロボット本体または車輪走行機器の周囲に取り付け、衝突の検知を行っていた。しかし、テープスイッチでは、衝突時の「オン」、または、未衝突時の「オフ」という信号しか出力しない。このため、衝突した方向までは、検出できなかった。
【0003】
そこで、テープスイッチの代わりに、狭い範囲で接触を検知する接触型スイッチを移動ロボットの周囲に複数個取り付け、障害物の方向を検出する方法がある。また、移動ロボットの頂部をグリップで固定した碗状のカバーを持ち、カバーの変形が四方に設けられた接触型スイッチのいずれかに伝達し、衝突方向を検出するロボットが提案されている。さらに、車輪走行装置本体に対して、力覚センサを介してドーム状の外装部を取り付け、障害物と衝突したときに、外装部に生じるモーメントに基づいて、衝突方向を検知するロボットもある。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特開平11−178764号公報
【特許文献2】特開2003−242849号公報
【特許文献3】特開2006−21267号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
しかし、従来の障害検出装置では、障害物との衝突以外の障害を検出できないという問題点があった。
移動ロボット等は、専用の通路ではなく、人や他の機器も利用する一般的な通路を走行する。このような通路を安全に走行するため、障害物を回避することは必須であるが、障害物との衝突以外にも安全上問題となる事象がある。例えば、一般的な通路を走行する場合には、傾斜面を走行しなければならないときがある。しかし、傾斜面の傾斜角度が一定以上の急勾配となると、移動ロボットの走行が不安定となり、最悪の場合には転倒してしまうこともある。また、走行開始時の加速、あるいは走行停止時の減速が急激であるときも同様に、移動ロボットの走行が不安定となる場合がある。このように、安全走行のためには、障害物との衝突の検知のほかに、傾斜角の急な傾斜面や、加減速時の大きな加速度を検出する必要がある。しかしながら、従来の障害検出装置では、障害物の衝突等によって外力が加わった場合しか検出できなかった。このため、加減速時の加速度を測定する加速度センサを別途設けてリアルタイムに監視する等、新たな検出センサが必要であった。しかし、新たに検出センサを設けるのは、配線・構造が複雑になりコストが増加するばかりでなく、センサの故障を監視しなければならない等、メンテナンス上の負担も増大する。
【0006】
このような点に鑑み、全方位の衝突の検出に加え、許容値以上の傾斜面や加速度といった走行上問題となる障害を検出することが可能な障害検出装置及び移動ロボットを提供することを目的とする。
【課題を解決するための手段】
【0007】
上記課題を解決するために、外周部、スイッチ部及び検出部を有し、走行の妨げとなる障害を検出する障害検出装置が提供される。外周部は、走行装置の外周に配置され、走行装置と弾性体を介して接続することによって、この走行装置が水平面で停止しているときは走行装置に対して非接触状態に保持される。スイッチ部は、所定の電気抵抗を有する抵抗部材と、抵抗部材に対して電気抵抗が小さい導電部材とを有する。対向する走行装置の周囲または外周部の内壁のいずれか一方に抵抗部材、他方に導電部材をそれぞれ略環状に配置し、抵抗部材と導電部材との接触点の位置に応じた抵抗部材の電位を検出信号として出力する。検出部は、検出信号に基づいて、外周部に力が加わることによって外周部と走行装置との相対的位置が変化し、抵抗部材と導電部材とが接触したことを検出するとともに、検出信号の信号値に応じて加えられた力の方向を検出する。
【0008】
また、上記課題を解決するために、上記の障害検出装置を備えた移動ロボットが提供される。
【発明の効果】
【0009】
開示の障害検出装置及び移動ロボットによれば、外周部に走行装置との相対位置を変化させる力が掛かったとき、検出信号の信号値に応じて加えられた力の方向を検出することができる。外周部には、走行装置との相対位置を変化させる力が、障害物の衝突、走行装置が傾斜面を走行したとき、加減速によって急激な加速度が生じたとき等に掛かる。したがって、障害物の衝突検出に加え、傾斜面や急激な加速度の検出とその方向も検出することができる。
【図面の簡単な説明】
【0010】
【図1】第1の実施の形態の障害検出装置の構成の概略を示した図である。
【図2】図1に示した障害検出装置のスイッチ部の構成を詳細に示した図である。
【図3】図2に示したスイッチ部の回路を示した図である。
【図4】前から力が加わった場合を示している。
【図5】後から力が加わった場合を示している。
【図6】抵抗線と導電部材とを逆に配置したスイッチ部の構成を示した図である。
【図7】第2の実施の形態の移動ロボットの構成を示した図である。
【図8】移動ロボットのハードウェア構成の一例を示したブロック図である。
【図9】傾斜角が閾値を超える傾斜面の検出を説明する図である。
【図10】加速度が閾値を超える加減速の検出を説明する図である。
【図11】閾値を決めるパラメータを説明する図である。
【図12】バンパーの重量調整用の重りを備えた移動ロボットの一例を示した図である。
【図13】第3の実施の形態の移動ロボットの構成を示した図である。
【図14】図13の移動ロボットの動作を示した図である。
【図15】第4の実施の形態のバンパースイッチの構成例を示した図である。
【図16】図15のバンパースイッチの回路を示した図である。
【図17】図15のバンパースイッチが反時計回りに回転したときの動作を示した図である。
【図18】図15のバンパースイッチが時計回りに回転したときの動作を示した図である。
【図19】走行制御処理の手順を示したフローチャートである。
【発明を実施するための形態】
【0011】
以下、実施の形態を図面を参照して説明する。
図1は、第1の実施の形態の障害検出装置の構成の概略を示した図である。(A)は斜視図、(B)は走行装置の垂直方向の断面図を示している。
【0012】
障害検出装置は、(A)斜視図に示したように、車輪8を駆動して走行する対象の走行装置または移動ロボットの走行上の障害を検出する。このため、対象の走行装置または移動ロボットの外枠に相当するフレーム1の外周に、弾性体によって支持されるバンパー2を有する。バンパー2は、水平面が、走行装置の水平面と常に一致するように保持されている。走行装置が傾斜面を走行して傾いたときは、走行装置の水平面の傾きと同じ角度でバンパー2の水平面も傾く。ここで、水平面は、走行装置を水平面上で停止させたときに、水平となる方向を言う。
【0013】
(B)断面図に示したように、フレーム1と、バンパー2とは、弾性体の一例であるバネ3a,3bによって接続されている。フレーム1とバンパー2との間は、バネ3a,3bによって非接触状態に保たれている。また、バンパー2に押圧が加わったときは、力が加わった方向のバネ3a,3bが縮み、力が閾値を超えるとバンパー2とフレーム1とが接触する。力がなくなったときは、元の位置に戻り、再びフレーム1とバンパー2との間は、バネ3a,3bによって非接触状態に保持される。なお、このような機能を持つ弾性体であれば、バネでなくてもよい。
【0014】
フレーム1の周囲には、抵抗線10が取り付けられ、フレーム1に取り付けられた抵抗線10と対向するバンパー2の内壁には導電部材11が取り付けられている。抵抗線10は、所定の電気抵抗を有する抵抗部材であり、フレーム1の周囲に略環状に取り付けられている。導電部材11は、抵抗線10と比較して電気抵抗が非常に小さい導電材であり、バンパー2の内壁に沿って略環状に取り付けられている。また、抵抗線10と導電部材11とは、フレーム1の水平面とバンパー2の水平面とが一致している状態で、上下方向の高さが同じになるように取り付ける。上下方向の高さが同じになるとは、バネ3a,3bが形成する隙間がなくなったときに、それぞれ幅を持つ抵抗線10と導電部材11の少なくとも一部が接触し、電気的に接続できることを言う。
【0015】
なお、ここでは、抵抗線10と導電部材11とするが、抵抗部材及び導電部材は、任意である。また、図の構成は一例であり、フレーム1の表面に導電部材11を取り付け、バンパー2の内側に抵抗線10を取り付ける構成とすることもできる。
【0016】
走行装置が水平面上で停止、あるいはほぼ一定の速度で走行しているような状態では、バネ3a,3bによってフレーム1とバンパー2との間は非接触状態に保たれている。この場合、フレーム1の表面上に配置した抵抗線10と、バンパー2の内壁に配置した導電部材11とは、接触しない。この状態から、障害物に衝突して、バンパー2を外側から内側(フレーム1方向)へ押す力(以下、外力とする)が加わったときは、フレーム1に対しバンパー2が相対的に移動する。外力が基準値よりも大きい場合には、外力が加わった位置のバンパー2とフレーム1とが近付き、その位置で導電部材11と抵抗線10とが接触する。
【0017】
図2は、図1に示した障害検出装置のスイッチ部の構成を詳細に示した図である。図1の(B)断面図が走行装置に対し垂直方向の断面図であったのに対し、図2は、水平方向の断面図である。
【0018】
前述のように、フレーム1と、バンパー2との間は、4方向D0,D1,D2,D3に設けられたバネ31,32,33,34と、ダンパ(ショックアブソーバとも呼ばれる)41,42,43,44とによって接続されている。走行装置が水平面に停止している状態におけるフレーム1とバンパー2との間は、バネ31,32,33,34と、ダンパ41,42,43,44とによって非接触に保持されている。図2の例では、フレーム1とバンパー2との間は、略一定の距離に保持されている。また、図2では、4方向にバネとダンパを配置するとしたが、任意の数を任意の方向に配置することができる。
【0019】
バネ31,32,33,34は、力が加わると伸縮する特性を有する。障害物の衝突等、バンパー2に外から内へ向かう力が掛かると、フレーム1に対してバンパー2の相対位置が後方にずれ、障害物方向のバネが縮む。走行装置が傾斜面を走行するときは、バンパー2に掛かる重力により、フレーム1に対してバンパー2の相対位置がフレーム1の進行方向の後方にずれ、進行方向のバネが縮む。また、走行装置が進行方向に向かって加速するときは、慣性力によってフレーム1に対してバンパー2の相対位置が進行方向の後方にずれ、進行方向のバネが縮む。
【0020】
ダンパ41,42,43,44は、位置の移動を抑制するための装置であり、バネ31,32,33,34の特性による周期振動を緩和・収束させる。ダンパ41,42,43,44がない構成とすることもできる。
【0021】
図1(B)断面図に示したように、ここでは、抵抗線10をフレーム1の周囲に略環状に配置し、導電部材11をバンパー2の内壁に略環状に配置する。抵抗線10と、導電部材11とは同心円を構成する。抵抗線10は、電極12を介して定電圧Vinを発生させる定電圧源に接続し、電極13を介して接地(以下、GND(グランド)とする)に接続する。これにより、フレーム1外周の抵抗線10には、弱電流が流れる構成となっている。導電部材11は、出力電極14に接続し、出力電極14を介して検出電圧Voutを出力する。図2に示した状態では、バンパー2に力が掛かっておらず、フレーム1とバンパー2との間の距離がほぼ一定に保たれている。このため、抵抗線10と、導電部材11とは接触せず、Vout=0である。
【0022】
図3は、図2に示したスイッチ部の回路を示した図である。図2と同じものには同じ番号を付す。
図2で説明したように、バンパー2に外力が加わっていない定常状態では、バンパー2の内壁に位置する導電部材11は抵抗線10と接触していない。したがって、出力電極14では、検出電圧Vout=0になる。
【0023】
バンパー2にバネ31,32,33,34のバネ定数に応じた閾値以上の外力が掛かると、バンパー2はフレーム1方向に移動し、バンパー2の内壁の導電部材11は、抵抗線10に接触する。出力電極14は導電部材11を介して抵抗線10に電気的に接続される。このとき、出力電極14には、導電部材11と抵抗線10との接触位置に応じた検出電圧Vout(GNDに対する電位)が生じる。具体的には、接触位置が電圧Vinに近いほど、言い換えれば、電極12に近いほど、検出電圧Voutの電圧は高くなる。すなわち、導電部材11と抵抗線10とが略環状に配置されているので、検出電圧Voutの信号値(電圧値)の大きさは、力が掛かった方向を示す。なお、ここでは、抵抗線10はほぼ均一で、電極12からの距離と電圧降下はほぼ比例するとしている。
【0024】
外周の任意の位置を0度(degree、以下「°」とする)とし、0°、360°における出力電圧をV1、V2(V1、V2)とし、Vout>=V2の際に、抵抗線10と導電部材11との接触を検知したものとする。接触を検出した方向を検出方向α(単位は°)とすると、V1、V2、Voutから次の式で検出方向を算出することができる。
【0025】
検出方向α=(V1−Vout)/(V1−V2)×360° ・・・(1)
以下の説明では、便宜的に、電極12における検出電圧をV1、電極13における検出電圧をV2とし、電極12に最も近いD0を0°、D1は90°、D2は180°、D3は270°とする。もちろん、どこを基準とするかは任意である。
【0026】
以下、前方向(D1方向とする)から力が掛かったとき、後方向(D3方向とする)から力が掛かったときの例を挙げて説明する。なお、図でダンパは省略している。
図4は、前から力が加わった場合を示している。(A)は前から力が加わった場合のスイッチの状態、(B)は回路を示している。
【0027】
前から、言い換えれば、バンパー2にD1方向から力が掛かった場合、抵抗線10と導電部材11とは、D1において接触する。これにより、出力電極14は、導電部材11を介してD1地点で抵抗線10と電気的に接続する。これにより、検出電圧Voutは、抵抗線10のD1地点の電位に応じた、Vout=1/4Vinになる。
【0028】
図5は、後から力が加わった場合を示している。(A)は後から力が加わった場合のスイッチの状態、(B)は回路を示している。
後から、言い換えれば、バンパー2にD3方向から力が掛かった場合、抵抗線10と導電部材11とは、D3において接触する。これにより、出力電極14は、導電部材11を介してD3地点で抵抗線10と電気的に接続する。これにより、検出電圧Voutは、抵抗線10のD3地点の電位に応じた、Vout=3/4Vinになる。
【0029】
このように、バンパー2に予め設定した閾値以上の力が加わると、その位置の抵抗線10と導電部材11とが接触し、接触地点の抵抗線10の電位が検出電圧Voutとして検出できる。抵抗線10の電位は、電極12からの位置に応じて決まるため、Voutが略環状の抵抗線10のどの位置の電位に相当するのかを算出することにより、力が掛かった方向を検出できる。バンパー2には、障害物に衝突した場合ばかりでなく、走行装置が閾値を超える傾斜角の傾斜面を走行したときにバンパー2の重量に応じた重力、または走行装置が閾値を超える加速度で加速または減速を行ったときのバンパー2の重みに応じた慣性力が掛かる。基準値以上の傾斜角の傾斜面の走行、及び加減速時の大きな加速度は、ともに走行上の安全を妨げる障害であり、障害物の衝突と同様に検出する必要がある。第1の実施の形態の障害検出装置によれば、障害物の衝突とともに傾斜角及び加速度が閾値を超えた場合にも検出が可能であり、別途、加速度センサ等を持つ必要がなくなる。すなわち、コスト増となることなく、全方位の衝突の検出に加え、基準値以上の傾斜角の傾斜面や加速度といった走行上問題となる障害の発生とその方向の検出が可能となる。
【0030】
上記の説明では、フレーム1に周囲に抵抗線10を配置し、バンパー2の内壁に導電部材11を配置するとしたが、逆の構成とすることもできる。
図6は、抵抗線と導電部材とを逆に配置したスイッチ部の構成を示した図である。図3と同じものには同じ番号を付す。
【0031】
図6では、抵抗線10をバンパー2の内壁に略環状に配置し、導電部材11をフレーム1の周囲に略環状に配置している。定電圧Vinは、電極15を介して抵抗線10に印加する。また、抵抗線10は、電極16を介してGNDに接地する。導電部材11は、出力電極17に接続し、出力電極17から検出電圧Voutを出力する。
【0032】
バンパー2に力が掛からない通常状態では、導電部材11と、抵抗線10は、接触しておらず、検出電圧Vout=0である。
バンパー2に外力が掛かると、バンパー2がフレーム1方向に移動し、抵抗線10と導電部材11とが接触する。これにより、出力電極17は、導電部材11を介して抵抗線10と電気的に接続し、導電部材11と接触した抵抗線10の接触点における電位に応じた検出信号を検出電圧Voutとして出力する。抵抗線10は、略環状に配置されており、検出電圧Voutの大きさから力が加わった方向を検出することができる。
【0033】
このように、抵抗線10と導電部材11の配置を入れ替えても同様である。
以下、第2の実施の形態として、移動ロボットに障害検出装置を搭載した場合について説明する。図7は、第2の実施の形態の移動ロボットの構成を示した図である。
【0034】
ロボットは、ロボット本体100の外周にバンパー200が配置されており、後述するロボット制御部によって、地図情報に基づき、センサによって自己の位置を認識しながら車輪800を駆動し、予め決められた経路を走行する。
【0035】
バンパー200は、バネ310によってロボット本体100の外側に支持されており、バンパー200に力が加わっていない状態では、ロボット本体100との隙間が一定に保たれている。ロボット本体100の表面と、ロボット本体100の表面と対向するバンパー200の内壁には、障害を検出するスイッチ部を配置する。図7の例では、ロボット本体100の周囲をほぼ1周する抵抗線211と、バンパー200の内壁に抵抗線211に対向する導電部材212が取り付けられている。全方位に対して同等の障害検出を行うためには、ロボット本体100及びバンパー200は円筒状であることが望ましい。以下、このように、バネ310によってロボット本体100の外周に支持されるバンパー200と、略環状の抵抗線211及び導電部材212とをロボット本体100側とバンパー200側とに対向して配置するスイッチ部とを含め、バンパースイッチ210とする。
【0036】
図8は、移動ロボットのハードウェア構成の一例を示したブロック図である。
移動ロボットは、走行を行う走行部120と、バンパースイッチ210と、走行部120及びバンパースイッチ210に接続し、走行制御と障害の検出と回避処理を行うロボット制御部110を有する。ロボット制御部110は、CPU(Central Processing Unit)111によって装置全体が制御されている。CPU111には、バス116を介してRAM(Random Access Memory)112、ハードディスクドライブ(HDD:Hard Disk Drive)113、入力インタフェース114、及び走行部インタフェース115が接続されている。
【0037】
RAM112には、CPU111に実行させるOS(Operating System)のプログラムやアプリケーションプログラムの少なくとも一部が一時的に格納される。また、RAM112には、CPU111による処理に必要な各種データが格納される。HDD113には、OSやアプリケーションのプログラムが格納される。なお、HDD113の代わりに、ROM(Read Only Memory)を用いてもよい。入力インタフェース114には、バンパースイッチ210が接続されており、バンパースイッチ210の出力電圧Voutに基づく検出信号を、バス116を介してCPU111に送信する。走行部インタフェース115は、走行部120に接続されており、バス116を介してCPU111から取得した走行指示を走行部120の車輪モータ制御部121に送信する。走行部120は、車輪モータ制御部121及び車輪モータ122を有し、ロボット制御部100から受信した走行指示に基づいて、車輪モータ制御部121が車輪を駆動する車輪モータ122を制御する。このようなハードウェア構成によって、移動ロボット100の処理機能を実現することができる。
【0038】
以下、バンパースイッチ210による障害検出及びその検出信号を用いた走行制御について説明する。
図7に戻って障害物の衝突の検出について説明する。バンパースイッチ210は、図2に示したスイッチ部と同様の構成である。抵抗線211はロボット本体100側に、導電部材212はバンパー200側に配置されている。通常状態では、抵抗線211と、導電部材212との間は、ほぼ一定の距離に保たれており、接触しない。このとき、バンパースイッチ210より出力する検出信号は、検出電圧Vout=0に相当する信号となる。障害物が衝突すると、衝突した方向からバンパー200に力が加わる。力が閾値を超えている場合は、抵抗線211と導電部材212とが、接触し、検出電圧Voutに接触点の位置に応じた電圧が出力される。この検出電圧Voutを式(1)に適用し、障害物の方向を検出する。なお、障害物の方向の検出処理は、バンパースイッチ210の検出信号を受けたロボット制御部110が行う。
【0039】
次に、閾値を超える傾斜角の傾斜面の検出について説明する。図9は、傾斜角が閾値を超える傾斜面の検出を説明する図である。(A)は平面走行時、(B)は傾斜面走行時の状態を示した図である。図では、導電部材212の進行方向側を212a、後側を212bとしている。
【0040】
(A)の平面走行時の状態では、バンパー200の内壁に配置している導電部材212と、ロボット本体100に配置している抵抗線211とは、バネ310a,310bによって距離が一定に保たれている。抵抗線211と、導電部材212とは、接触していないので、検出電圧Voutは、“0”である。(B)の傾斜面走行時の状態では、ロボット本体100及びバンパー200の水平面がともに、傾斜面の角度θ分傾く。これにより、バンパー200に掛る重力が、バンパー200の水平面に働く。バンパー200を下方に押し下げる力が働き、ロボット本体100に対するバンパー200の相対位置が変わる。そして、傾斜角が閾値を超えると、バンパー200の重量によって導電部材の進行方向側212aと、抵抗線212とが接触し、検出電圧Voutに接触点の位置に応じた電圧が出力される。この検出電圧Voutを式(1)に適用すれば、傾斜面の方向を検出することができる。
【0041】
次に、基準を超える急激な加速あるいは減速の検出について説明する。図10は、加速度が閾値を超える加減速の検出を説明する図である。図は、速度を加速した場合を示している。ロボット本体100が加速すると、バンパー200には慣性力により、ロボット本体100に対する相対位置が後になるように力が働く。加速度が閾値を超えている場合は、導電部材の進行方向側212aと、抵抗線211とが接触し、検出電圧Voutに接触点の位置に応じた電圧が出力される。この検出電圧Voutを式(1)に適用すれば、加速度の方向(加速したのか減速したのか)を検出することができる。加速したときは、導電部材の進行方向212aが抵抗線211と接触し、減速したときは導電部材の後方向212bが抵抗線211と接触する。
【0042】
このように、開示のバンパースイッチによれば、障害物衝突時に障害物の方向を全方位に渡って検出できるばかりでなく、同様の機構で傾斜面が閾値を超えたことを検出し、傾斜面の方向も検出することができる。さらに、加速度が閾値を超えたことを検出し、加速されたのか、減速されたのかを検出することができる。
【0043】
次に、閾値を決めるパラメータについて説明する。図11は、閾値を決めるパラメータを説明する図である。(A)は障害物検出、(B)は傾斜面検出、(C)は加速度検出を示している。図は、それぞれロボット本体100と、バンパー200を示している。
【0044】
(A)障害物検出は、バネ定数と、ロボット本体100とバンパー200との隙間に応じて、バンパー200に加わる力の閾値が決まる。
バンパー200とロボット本体100とを接続するバネのバネ定数をKとし、バンパー200がX変位した場合、バンパー200に掛かる力Fは、
F=2KX ・・・(2)
と表すことができる。2倍しているのは、前後にバネが配置されていると想定しているためである。例えば、バンパー200とロボット本体の隙間を1cm(X=0.01m)とし、5N(0.5kf)の力がバンパー200に掛かったことを検出したいときは、式(2)より、バネ定数は、K=250N/mとすればよいことになる。
【0045】
(B)傾斜面検出は、さらに、バンパー200の重量により閾値が決まる。傾斜角θの傾斜面を登坂する場合、バンパー200の重量をM、重力をgとすると、掛かる力は、
Mgsinθ=2KX ・・・(3)
と表すことができる。KとXは(A)と同じである。例えば、傾斜角5°(θ=5)以上で傾斜面検出を行うとすると、式(3)を用いて、重量Mは、
M=2×250×0.01/(9.8×sin5°)=5.85kg、
と求めることができる。なお、KとXは、(A)と同じである。
【0046】
以上より、障害物に衝突し5Nの力が掛かったことを検出するとともに、傾斜角5°の傾斜面を検出したいときは、バンパー200の重量を5.85kgとすればよいことになる。
【0047】
(C)加速度検出は、KとMが定まると閾値が自動的に決まる。加速度をaとすると、掛かる力は、
Ma=2KX ・・・(4)
と表すことができる。上記で算出したKとM、及びXを用いると、検出できる加速度は、
a=2×250×0.01/5.85=0.85m/S2
になる。
【0048】
以上のように、バネ係数と隙間の大きさ、また、バンパーの重量等を適宜決めることにより、最適な閾値を設定する。
ところで、上記で説明したように、傾斜面検出及び加速度検出の閾値は、バンパー200の重量に応じて調整することができる。図12は、バンパーの重量調整用の重りを備えた移動ロボットの一例を示した図である。
【0049】
図12は、図7の移動ロボットに重り601,602を備えている。重り601,602は、それぞれの所定の重量を有し、バンパー200の上に着脱可能である。それぞれ、バンパー200と同様に形状をしており、ロボット本体100の部分が中空のドーナツ型形状を有している。利用者は、式(3)または式(4)を用いて、所望の閾値が得られるバンパー200の重量を算出し、重り601,602を着脱してバンパー200が算出した重量となるように調整することができる。
【0050】
また、図7に示した移動ロボットでは、バンパーの重量調整を傾斜面検出か、加速度検出のいずれかに合わせて行う。しかし、両方の閾値を満たす重量に調整することは容易ではない。そこで、第3の実施の形態として、それぞれ傾斜面検出と加速度検出とを行うスイッチ機構を設けた移動ロボットについて説明する。
【0051】
図13は、第3の実施の形態の移動ロボットの構成を示した図である。図7と同じものには同じ番号を付す。第3の実施の形態の移動ロボットは、図7に示した第2の実施の形態の移動ロボットのバンパースイッチ210が、バンパースイッチ220に置き換わっている。
【0052】
バンパースイッチ220は、スイッチ部が上下2箇所の構成となっている。また、バンパー201は、水平面が常にロボット本体100の水平面と一致していたバンパー200と異なり、常に水平を保つ。言い換えれば、傾斜面を走行する際に、ロボット本体100の水平面が傾いても、バンパー201の水平面は水平を維持する。
【0053】
スイッチ部について説明する。上側のスイッチは、加速度検出用で、抵抗線(加速度検出用)221と導電部材(加速度検出用)222とを有する。抵抗線(加速度検出用)221は、ロボット本体100の周囲を取り囲むように略環状に配置する。導電部材(加速度検出用)222は、バンパー201の内壁に、抵抗線(加速度検出用)221と対向するように略環状に配置する。ロボット本体100が平面上にあるときは、抵抗線(加速度検出用)221及び導電部材(加速度検出用)222は、同じ高さにある。下側のスイッチは、傾斜面検出用で、抵抗線(傾斜面検出用)223と、導電部材(傾斜面検出用)224とを有する。抵抗線(傾斜面検出用)223は、ロボット本体100の周囲を取り囲むように略環状に配置する。導電部材(傾斜面検出用)224は、バンパー201の内壁に略環状に配置する。抵抗線(傾斜面検出用)223と、導電部材(傾斜面検出用)224とは、ロボット本体100が平面上にあるときは、同じ高さとならないように位置をずらして配置する。そして、上下方向の変位が加わったときに接触する構造とする。傾斜面走行時に、ロボット本体100とバンパー201とが相対的に傾くことにより、抵抗線(傾斜面検出用)223と、導電部材(傾斜面検出用)224とが接触する。
【0054】
図14は、図13の移動ロボットの動作を示した図である。(A)は傾斜面走行時、(B)は加速度大となったときの動作を示している。
(A)傾斜面走行時には、ロボット本体100が傾斜角θの傾斜面を走行することにより、ロボット本体100に配置された抵抗線(加速度検出用)221及び抵抗線(傾斜面検出用)223は、水平方向に対し、傾斜角θで傾く。これに対し、水平を常に維持するバンパー201に配置される導電部材(加速度検出用)222及び導電部材(傾斜面検出用)224は、水平を維持する。このように、傾斜面走行時に、ロボット本体100に対しバンパー201が相対的に傾くことにより、抵抗線(傾斜面検出用)223と、導電部材(傾斜面検出用)224とが接触する。導電部材の進行方向側224aと、抵抗線(傾斜面検出用)223とが接触したことにより、検出電圧Voutに接触点の位置に応じた電圧が出力される。この検出電圧Voutを式(1)に適用すれば、傾斜面の方向を検出することができる。このとき、加速度検出用の抵抗線(加速度検出用)221と、導電部材(加速度検出用)222とは、ロボット本体100に対し、バンパー201が相対的に傾くことにより、接触しない。したがって、傾斜面検出のみを行うことができる。
【0055】
(B)加速度大の状態となったときは、慣性力によってバンパー201はロボット本体100に対し、水平方向に位置がずれる。図14は加速する場合を示しており、バンパー201は、ロボット本体100に対し後側に移動する。これにより、加速度検出用の抵抗線(加速度検出用)221と、導電部材(加速度検出用)222とが接触する。導電部材の進行方向側222aと、抵抗線(加速度検出用)221とが接触したことにより、検出電圧Voutに接触点の位置に応じた電圧が出力される。この検出電圧Voutを式(1)に適用すれば、加速の方向を検出することができる。このとき、傾斜面検出用の抵抗線(傾斜面検出用)223と、導電部材(傾斜面検出用)224とは、ロボット本体100に対し、バンパー201が水平方向に移動するだけであるので、接触しない。したがって、加速度検出のみを行うことができる。
【0056】
このように、傾斜面検出用と、加速度検出用の2種類にスイッチ部を設けたことにより、加速度と傾斜面をそれぞれ検知することが可能となる。なお、障害物との衝突は、抵抗線(加速度検出用)221及び導電部材(加速度検出用)222により、検出する。
【0057】
さらに、第4の実施の形態として、回転方向を検出するバンパースイッチについて説明する。図15は、第4の実施の形態のバンパースイッチの構成例を示した図である。
バンパースイッチ230は、ロボット本体100の周囲に、接触方向検出用の抵抗線231と、回転方向検出用の抵抗線232a,232bとがそれぞれ略環状に配置されている。なお、抵抗線232a,232bは、2つで略環状を形成している。また、抵抗線232aは、反時計回りの回転の検出用であり、途中に回転検出部233aを有する。抵抗線232bは、時計回りの回転の検出用であり、途中に回転検出部233bを有する。一方、バンパー202の内壁には、抵抗線231に対向して導電部材234を配置する。また、通常状態では接触しないが、ロボット本体100が反時計回りに回転すると回転検出部233aと接触する端部235aと、時計回りに回転すると回転検出部233bと接触する端部235bを有している。
【0058】
図16は、図15のバンパースイッチの回路を示した図である。
定電圧Vinが抵抗線232aに印加されており、抵抗線232a、電極241、電極242、抵抗線231、電極243、電極244、抵抗線232bと微弱な電流が流れる。通常状態では、抵抗線231,232a,232bと、導電部材234とは接触していない。
【0059】
バンパー202に力が加わったときの接触方向の検出については、バンパースイッチ210と同様である。バンパー202に力が加わったとき、導電部材234と、接触方向検出用の抵抗線231とが接触し、接触点の電位が出力電極247を経由して検出電圧Voutとして出力する。図16の例では、検出電圧Voutとして、電極243の電位より大きく、電極242の電位よりも小さい電圧値が検出される。すなわち、電極242の電位をV1、電極243の電位をV2として、式(1)を適用し、接触方向を求めることができる。
【0060】
図17は、図15のバンパースイッチが反時計回りに回転したときの動作を示した図である。(A)は反時計回りに回転した場合のバンパースイッチの状態を示した図であり、(B)はそのときの回路を示した図である。
【0061】
矢印に示したように、ロボット本体100が反時計回りに回転すると、回転方向検出用の抵抗線232a,232bに設けられた回転検出部233a,233bが反時計方向に動く。すると、バンパー202とともに動く導電部材234は回転が遅れるため、端部235aが回転検出部233aに接触する。反対側も同様に、出力電極246が導電部材に接触し、導電部材を経由して出力電極248に電気的に接続する。これにより、回転検出部233aと、出力電極248とが電気的に接続し、出力電極248には回転検出部233aの電位が検出電圧Vccとして出力する。このとき、検出電圧Vccとしては電極241よりも高い電圧値が得られる。
【0062】
図18は、図15のバンパースイッチが時計回りに回転したときの動作を示した図である。(A)は時計回りに回転した場合のバンパースイッチの状態を示した図であり、(B)はそのときの回路を示した図である。
【0063】
矢印に示したように、ロボット本体100が時計回りに回転すると、回転方向検出用の抵抗線232a,232bに設けられた回転検出部233a,233bが時計方向に動く。すると、バンパー202とともに動く導電部材234は回転が遅れるため、端部235bが回転検出部233bに接触する。反対側も同様に、出力電極245が導電部材に接触し、導電部材を経由して出力電極248に接続する。これにより、回転検出部233bと、出力電極248とが電気的に接続し、出力電極248には回転検出部233bの電位に応じた検出電圧Vccとして出力する。このとき、検出電圧Vccとしては電極244よりも低い電圧値が得られる。
【0064】
以上のように、回転方向検出部をバンパースイッチに設けることによって、同様の機構でバンパー202に力が加わった方向を検出できるとともに、移動ロボットの回転方向を検出することができる。
【0065】
移動ロボットは、上記のバンパースイッチ210,220,230によって障害物と衝突したこと、閾値以上の傾斜面を走行したこと、または、加速度が閾値を超えたことを検出したときは、障害を回避する行動をとる。なお、回転の検出については、走行とは直接関係ないので説明から省くが、回転したことを検出したときに何らかの処理を実行させることができることは当然である。
【0066】
以下、障害を回避する行動をとる際の走行制御処理についてフローチャートを用いて説明する。図19は、走行制御処理の手順を示したフローチャートである。
[ステップS01] ロボット制御部110は、走行開始の指示を受け取ると、走行部120に走行指示を出力し、通常走行を開始させる。
【0067】
ロボットが走行を開始し、経路上の障害物に衝突する、経路の傾斜角が閾値以上となる、加速または減速の加速度が閾値を超える、等の走行上の障害が発生すると、バンパースイッチ210,220,230が動作し、検出電圧Voutが360°のときの出力電圧V2を超える。
【0068】
[ステップS02] ロボット制御部110は、バンパースイッチ210,220,230の検出電圧Voutに応じた検出信号に基づき、ロボット本体の周囲の抵抗線と、バンパー内壁の導電部材との接触を検知したかどうかを判定する。例えば、検出電圧Vout>=V2のとき、接触を検知したとする。接触を検知したときは、処理をステップS03に進める。接触を検知しなかったときは、ステップS01に戻って、通常走行を続ける。
【0069】
[ステップS03] ロボット制御部110は、接触を検知したときは、走行速度を減速する。接触が加減速の加速度が規定値を超えたことが原因であるときは、減速によって障害はなくなる。
【0070】
[ステップS04] ロボット制御部110は、バンパースイッチ210,220,230の検出電圧Voutに応じた検出信号に基づき、ロボット本体の周囲の抵抗線と、バンパー内壁の導電部材との接触を検知したかどうかを判定する。接触を検知したときは、処理をステップS05に進める。接触を検知しなかったときは、ステップS01に戻って、通常走行を続ける。
【0071】
[ステップS05] ロボット制御部110は、接触を検知したときは、走行を停止する。
[ステップS06] ロボット制御部110は、バンパースイッチ210,220,230の検出電圧Voutに応じた検出信号に基づき、ロボット本体の周囲の抵抗線と、バンパー内壁の導電部材との接触を検知したかどうかを判定する。接触を検知したときは、処理をステップS07に進める。接触を検知しなかったときは、ステップS01に戻って、通常走行を続ける。
【0072】
[ステップS07] ロボット制御部110は、接触を検知したので、障害は除去されていないと判断し、式(1)を用いて障害の発生方向を検出する。
[ステップS08] ロボット制御部110は、ステップS07で検出した障害の発生方向とは異なる方向、例えば、反対方向(α+180°)に進行方向を変更する。
【0073】
[ステップS09] ステップS08で変更した進行方向に基づいて走行経路を変更する走行経路変更処理を行い、今後の経路を決定する。その後、ステップS01に戻って通常走行を開始する。
【0074】
以上の処理手順が実行されることにより、走行時に障害が検出されたときは、障害を回避する処理が自動で行われる。
なお、上記の処理機能は、コンピュータによって実現することができる。その場合、移動ロボットが有すべき機能の処理内容を記述したプログラムが提供される。そのプログラムをコンピュータで実行することにより、上記処理機能がコンピュータ上で実現される。処理内容を記述したプログラムは、コンピュータで読み取り可能な記録媒体に記録しておくことができる。
【0075】
プログラムを流通させる場合には、例えば、そのプログラムが記録されたDVD(Digital Versatile Disc)、CD−ROM(Compact Disc Read Only Memory)等の可搬型記録媒体が販売される。また、プログラムをサーバコンピュータの記憶装置に格納しておき、ネットワークを介して、サーバコンピュータから他のコンピュータにそのプログラムを転送することもできる。
【0076】
プログラムを実行するコンピュータは、例えば、可搬型記録媒体に記録されたプログラムもしくはサーバコンピュータから転送されたプログラムを、自己の記憶装置に格納する。そして、コンピュータは、自己の記憶装置からプログラムを読み取り、プログラムに従った処理を実行する。なお、コンピュータは、可搬型記録媒体から直接プログラムを読み取り、そのプログラムに従った処理を実行することもできる。また、コンピュータは、サーバコンピュータからプログラムが転送されるごとに、逐次、受け取ったプログラムに従った処理を実行することもできる。
【0077】
以上の実施の形態に関し、さらに以下の付記を開示する。
(付記1) 走行の妨げとなる障害を検出する障害検出装置において、
走行装置の外周に配置され、該走行装置と弾性体を介して接続することによって、該走行装置が水平面で停止しているときは前記走行装置に対して非接触状態に保持される外周部と、
所定の電気抵抗を有する抵抗部材と、前記抵抗部材に対して電気抵抗が小さい導電部材とを有し、対向する前記走行装置の周囲または前記外周部の内壁のいずれか一方に前記抵抗部材、他方に前記導電部材をそれぞれ略環状に配置し、前記抵抗部材と前記導電部材との接触点の位置に応じた前記抵抗部材の電位を検出信号として出力するスイッチ部と、
前記検出信号に基づいて、前記外周部に力が加わることによって前記外周部と前記走行装置との相対的位置が変化し、前記抵抗部材と前記導電部材とが接触したことを検出するとともに、前記検出信号の信号値に応じて加えられた力の方向を検出する検出部と、
を有することを特徴とする障害検出装置。
【0078】
(付記2) 前記スイッチ部は、前記走行装置を取り囲むように、前記走行装置の周囲に前記抵抗部材を略環状に配置し、前記外周部の内壁に前記導電部材を略環状に配置する、
ことを特徴とする付記1記載の障害検出装置。
【0079】
(付記3) 前記スイッチ部は、前記外周部に障害物が衝突したときに前記外周部に掛かる外力、前記走行装置が閾値を超える傾斜角の傾斜面を走行したときに前記外周部に掛かる重力、及び前記走行装置が閾値を超える加速度で加速または減速を行ったときに前記外周部に掛かる慣性力に応じて前記外周部と前記走行装置との相対位置が変化する、
ことを特徴とする付記1記載の障害検出装置。
【0080】
(付記4) 前記外周部は、前記走行装置が水平面上に停止しているとき水平となる前記外周部の水平面が、常に前記走行装置の水平面と一致しており、
前記スイッチ部は、前記抵抗部材と、前記導電部材とを上下方向に同じ位置に配置する、
ことを特徴とする付記1または2記載の障害検出装置。
【0081】
(付記5) 前記外周部は、前記走行装置が水平面上に停止しているとき水平となる水平面が、前記走行装置の傾きによらず、重力方向に対して常に直交しており、
前記スイッチ部は、前記走行装置が水平面にあるときの前記抵抗部材と前記導電部材との位置を上下方向にずらして配置し、前記走行装置が傾斜面を走行したときに前記走行装置と前記外周部との相対的な傾きに応じて前記抵抗部材と前記導電部材とが接触する、
ことを特徴とする付記1または2記載の障害検出装置。
【0082】
(付記6) 前記外周部は、前記走行装置が水平面上に停止しているとき水平となる水平面が、前記走行装置の傾きによらず、重力方向に対して常に直交しており、
前記スイッチ部は、前記抵抗部材と前記導電部材の組を上下方向に少なくとも2組有し、少なくとも1組は、前記走行装置が水平面上にあるとき前記抵抗部材と前記導電部材とを上下方向に同じ高さになるように配置するとともに、少なくとも1組は、前記走行装置が水平面上にあるとき前記抵抗部材と前記導電部材の上下方向の高さをずらして配置して前記走行装置が傾斜面を走行したときに前記走行装置と前記外周部との相対的な傾きに応じて前記抵抗部材と前記導電部材とが接触する、
ことを特徴とする付記1または3記載の障害検出装置。
【0083】
(付記7) 前記スイッチ部は、前記抵抗部材に、前記走行装置が回転したときに前記導電部材と接触する回転検出部を少なくとも2つ配置し、前記回転検出部と前記導電部材とが接触した回転方向に応じた前記抵抗部材の電位を検出信号として出力し、
前記検出部は、前記検出信号に基づいて、前記走行装置が回転したことによって前記外周部と前記走行装置との相対的位置が変化して前記回転検出部と前記導電部材とが接触したことを検出し、前記検出信号に応じて前記走行装置の回転方向を検出する、
ことを特徴とする付記1または3記載の障害検出装置。
【0084】
(付記8) 前記外周部は、さらに、前記外周部の重量に応じて閾値が決まる前記傾斜面検出時の閾値、または前記加速度検出時の閾値を調整する前記外周部に着脱可能な重りを有する、
ことを特徴とする付記3記載の障害検出装置。
【0085】
(付記9) 前記外周部は、前記走行装置部分が中空のドーナツ型形状を有しており、前記重りは前記外周部と同じ径を有するドーナツ型形状であることを特徴とする、付記8記載の障害検出装置。
【0086】
(付記10) 走行の妨げとなる障害を検出する移動ロボットにおいて、
移動ロボットの外枠の外周に配置され、該外枠と弾性体を介して接続することによって、該移動ロボットが水平面上で停止しているときは前記外枠に対して非接触状態に保持される外周部と、
所定の電気抵抗を有する抵抗部材と、前記抵抗部材に対して電気抵抗が小さい導電部材とを有し、対向する前記外枠の周囲または前記外周部の内壁のいずれか一方に前記抵抗部材、他方に前記導電部材をそれぞれ略環状に配置し、前記抵抗部材と前記導電部材との接触点の位置に応じた前記抵抗部材の電位を検出信号として出力するスイッチ部と、
前記検出信号に基づいて、前記外周部に力が加わることによって前記外周部と前記外枠との相対的位置が変化し、前記抵抗部材と前記導電部材とが接触したことを検出するとともに、前記検出信号の信号値に応じて加えられた力の方向を検出する検出部と、
前記検出部によって障害が検出されたときは、予め決められた手順に従って、減速、走行停止及び走行経路変更を含む障害回避処理を行う走行制御部と、
を有することを特徴とする移動ロボット。
【符号の説明】
【0087】
1 フレーム
2 バンパー
3a,3b バネ
10 抵抗線
11 導電部材
12,13 電極
14 出力電極
31,32,33,34 バネ
41,42,43,44 ダンパ
【技術分野】
【0001】
本発明は、走行の妨げとなる障害を検出する障害検出装置と、障害物を検出して回避する移動ロボットに関する。
【背景技術】
【0002】
従来、自律走行型の移動ロボット等、通路上を車輪で走行する車輪走行機器を備えた装置では、センサによって自己の位置を認識し、地図情報に基づき、予め決められた経路を移動する。走行時に障害物に衝突した場合には、この障害物を回避する行動をとる。このため、障害物の正確な位置を検出する必要があり、例えば、電子接触子に長さと幅を持たせたテープスイッチを移動ロボット本体または車輪走行機器の周囲に取り付け、衝突の検知を行っていた。しかし、テープスイッチでは、衝突時の「オン」、または、未衝突時の「オフ」という信号しか出力しない。このため、衝突した方向までは、検出できなかった。
【0003】
そこで、テープスイッチの代わりに、狭い範囲で接触を検知する接触型スイッチを移動ロボットの周囲に複数個取り付け、障害物の方向を検出する方法がある。また、移動ロボットの頂部をグリップで固定した碗状のカバーを持ち、カバーの変形が四方に設けられた接触型スイッチのいずれかに伝達し、衝突方向を検出するロボットが提案されている。さらに、車輪走行装置本体に対して、力覚センサを介してドーム状の外装部を取り付け、障害物と衝突したときに、外装部に生じるモーメントに基づいて、衝突方向を検知するロボットもある。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特開平11−178764号公報
【特許文献2】特開2003−242849号公報
【特許文献3】特開2006−21267号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
しかし、従来の障害検出装置では、障害物との衝突以外の障害を検出できないという問題点があった。
移動ロボット等は、専用の通路ではなく、人や他の機器も利用する一般的な通路を走行する。このような通路を安全に走行するため、障害物を回避することは必須であるが、障害物との衝突以外にも安全上問題となる事象がある。例えば、一般的な通路を走行する場合には、傾斜面を走行しなければならないときがある。しかし、傾斜面の傾斜角度が一定以上の急勾配となると、移動ロボットの走行が不安定となり、最悪の場合には転倒してしまうこともある。また、走行開始時の加速、あるいは走行停止時の減速が急激であるときも同様に、移動ロボットの走行が不安定となる場合がある。このように、安全走行のためには、障害物との衝突の検知のほかに、傾斜角の急な傾斜面や、加減速時の大きな加速度を検出する必要がある。しかしながら、従来の障害検出装置では、障害物の衝突等によって外力が加わった場合しか検出できなかった。このため、加減速時の加速度を測定する加速度センサを別途設けてリアルタイムに監視する等、新たな検出センサが必要であった。しかし、新たに検出センサを設けるのは、配線・構造が複雑になりコストが増加するばかりでなく、センサの故障を監視しなければならない等、メンテナンス上の負担も増大する。
【0006】
このような点に鑑み、全方位の衝突の検出に加え、許容値以上の傾斜面や加速度といった走行上問題となる障害を検出することが可能な障害検出装置及び移動ロボットを提供することを目的とする。
【課題を解決するための手段】
【0007】
上記課題を解決するために、外周部、スイッチ部及び検出部を有し、走行の妨げとなる障害を検出する障害検出装置が提供される。外周部は、走行装置の外周に配置され、走行装置と弾性体を介して接続することによって、この走行装置が水平面で停止しているときは走行装置に対して非接触状態に保持される。スイッチ部は、所定の電気抵抗を有する抵抗部材と、抵抗部材に対して電気抵抗が小さい導電部材とを有する。対向する走行装置の周囲または外周部の内壁のいずれか一方に抵抗部材、他方に導電部材をそれぞれ略環状に配置し、抵抗部材と導電部材との接触点の位置に応じた抵抗部材の電位を検出信号として出力する。検出部は、検出信号に基づいて、外周部に力が加わることによって外周部と走行装置との相対的位置が変化し、抵抗部材と導電部材とが接触したことを検出するとともに、検出信号の信号値に応じて加えられた力の方向を検出する。
【0008】
また、上記課題を解決するために、上記の障害検出装置を備えた移動ロボットが提供される。
【発明の効果】
【0009】
開示の障害検出装置及び移動ロボットによれば、外周部に走行装置との相対位置を変化させる力が掛かったとき、検出信号の信号値に応じて加えられた力の方向を検出することができる。外周部には、走行装置との相対位置を変化させる力が、障害物の衝突、走行装置が傾斜面を走行したとき、加減速によって急激な加速度が生じたとき等に掛かる。したがって、障害物の衝突検出に加え、傾斜面や急激な加速度の検出とその方向も検出することができる。
【図面の簡単な説明】
【0010】
【図1】第1の実施の形態の障害検出装置の構成の概略を示した図である。
【図2】図1に示した障害検出装置のスイッチ部の構成を詳細に示した図である。
【図3】図2に示したスイッチ部の回路を示した図である。
【図4】前から力が加わった場合を示している。
【図5】後から力が加わった場合を示している。
【図6】抵抗線と導電部材とを逆に配置したスイッチ部の構成を示した図である。
【図7】第2の実施の形態の移動ロボットの構成を示した図である。
【図8】移動ロボットのハードウェア構成の一例を示したブロック図である。
【図9】傾斜角が閾値を超える傾斜面の検出を説明する図である。
【図10】加速度が閾値を超える加減速の検出を説明する図である。
【図11】閾値を決めるパラメータを説明する図である。
【図12】バンパーの重量調整用の重りを備えた移動ロボットの一例を示した図である。
【図13】第3の実施の形態の移動ロボットの構成を示した図である。
【図14】図13の移動ロボットの動作を示した図である。
【図15】第4の実施の形態のバンパースイッチの構成例を示した図である。
【図16】図15のバンパースイッチの回路を示した図である。
【図17】図15のバンパースイッチが反時計回りに回転したときの動作を示した図である。
【図18】図15のバンパースイッチが時計回りに回転したときの動作を示した図である。
【図19】走行制御処理の手順を示したフローチャートである。
【発明を実施するための形態】
【0011】
以下、実施の形態を図面を参照して説明する。
図1は、第1の実施の形態の障害検出装置の構成の概略を示した図である。(A)は斜視図、(B)は走行装置の垂直方向の断面図を示している。
【0012】
障害検出装置は、(A)斜視図に示したように、車輪8を駆動して走行する対象の走行装置または移動ロボットの走行上の障害を検出する。このため、対象の走行装置または移動ロボットの外枠に相当するフレーム1の外周に、弾性体によって支持されるバンパー2を有する。バンパー2は、水平面が、走行装置の水平面と常に一致するように保持されている。走行装置が傾斜面を走行して傾いたときは、走行装置の水平面の傾きと同じ角度でバンパー2の水平面も傾く。ここで、水平面は、走行装置を水平面上で停止させたときに、水平となる方向を言う。
【0013】
(B)断面図に示したように、フレーム1と、バンパー2とは、弾性体の一例であるバネ3a,3bによって接続されている。フレーム1とバンパー2との間は、バネ3a,3bによって非接触状態に保たれている。また、バンパー2に押圧が加わったときは、力が加わった方向のバネ3a,3bが縮み、力が閾値を超えるとバンパー2とフレーム1とが接触する。力がなくなったときは、元の位置に戻り、再びフレーム1とバンパー2との間は、バネ3a,3bによって非接触状態に保持される。なお、このような機能を持つ弾性体であれば、バネでなくてもよい。
【0014】
フレーム1の周囲には、抵抗線10が取り付けられ、フレーム1に取り付けられた抵抗線10と対向するバンパー2の内壁には導電部材11が取り付けられている。抵抗線10は、所定の電気抵抗を有する抵抗部材であり、フレーム1の周囲に略環状に取り付けられている。導電部材11は、抵抗線10と比較して電気抵抗が非常に小さい導電材であり、バンパー2の内壁に沿って略環状に取り付けられている。また、抵抗線10と導電部材11とは、フレーム1の水平面とバンパー2の水平面とが一致している状態で、上下方向の高さが同じになるように取り付ける。上下方向の高さが同じになるとは、バネ3a,3bが形成する隙間がなくなったときに、それぞれ幅を持つ抵抗線10と導電部材11の少なくとも一部が接触し、電気的に接続できることを言う。
【0015】
なお、ここでは、抵抗線10と導電部材11とするが、抵抗部材及び導電部材は、任意である。また、図の構成は一例であり、フレーム1の表面に導電部材11を取り付け、バンパー2の内側に抵抗線10を取り付ける構成とすることもできる。
【0016】
走行装置が水平面上で停止、あるいはほぼ一定の速度で走行しているような状態では、バネ3a,3bによってフレーム1とバンパー2との間は非接触状態に保たれている。この場合、フレーム1の表面上に配置した抵抗線10と、バンパー2の内壁に配置した導電部材11とは、接触しない。この状態から、障害物に衝突して、バンパー2を外側から内側(フレーム1方向)へ押す力(以下、外力とする)が加わったときは、フレーム1に対しバンパー2が相対的に移動する。外力が基準値よりも大きい場合には、外力が加わった位置のバンパー2とフレーム1とが近付き、その位置で導電部材11と抵抗線10とが接触する。
【0017】
図2は、図1に示した障害検出装置のスイッチ部の構成を詳細に示した図である。図1の(B)断面図が走行装置に対し垂直方向の断面図であったのに対し、図2は、水平方向の断面図である。
【0018】
前述のように、フレーム1と、バンパー2との間は、4方向D0,D1,D2,D3に設けられたバネ31,32,33,34と、ダンパ(ショックアブソーバとも呼ばれる)41,42,43,44とによって接続されている。走行装置が水平面に停止している状態におけるフレーム1とバンパー2との間は、バネ31,32,33,34と、ダンパ41,42,43,44とによって非接触に保持されている。図2の例では、フレーム1とバンパー2との間は、略一定の距離に保持されている。また、図2では、4方向にバネとダンパを配置するとしたが、任意の数を任意の方向に配置することができる。
【0019】
バネ31,32,33,34は、力が加わると伸縮する特性を有する。障害物の衝突等、バンパー2に外から内へ向かう力が掛かると、フレーム1に対してバンパー2の相対位置が後方にずれ、障害物方向のバネが縮む。走行装置が傾斜面を走行するときは、バンパー2に掛かる重力により、フレーム1に対してバンパー2の相対位置がフレーム1の進行方向の後方にずれ、進行方向のバネが縮む。また、走行装置が進行方向に向かって加速するときは、慣性力によってフレーム1に対してバンパー2の相対位置が進行方向の後方にずれ、進行方向のバネが縮む。
【0020】
ダンパ41,42,43,44は、位置の移動を抑制するための装置であり、バネ31,32,33,34の特性による周期振動を緩和・収束させる。ダンパ41,42,43,44がない構成とすることもできる。
【0021】
図1(B)断面図に示したように、ここでは、抵抗線10をフレーム1の周囲に略環状に配置し、導電部材11をバンパー2の内壁に略環状に配置する。抵抗線10と、導電部材11とは同心円を構成する。抵抗線10は、電極12を介して定電圧Vinを発生させる定電圧源に接続し、電極13を介して接地(以下、GND(グランド)とする)に接続する。これにより、フレーム1外周の抵抗線10には、弱電流が流れる構成となっている。導電部材11は、出力電極14に接続し、出力電極14を介して検出電圧Voutを出力する。図2に示した状態では、バンパー2に力が掛かっておらず、フレーム1とバンパー2との間の距離がほぼ一定に保たれている。このため、抵抗線10と、導電部材11とは接触せず、Vout=0である。
【0022】
図3は、図2に示したスイッチ部の回路を示した図である。図2と同じものには同じ番号を付す。
図2で説明したように、バンパー2に外力が加わっていない定常状態では、バンパー2の内壁に位置する導電部材11は抵抗線10と接触していない。したがって、出力電極14では、検出電圧Vout=0になる。
【0023】
バンパー2にバネ31,32,33,34のバネ定数に応じた閾値以上の外力が掛かると、バンパー2はフレーム1方向に移動し、バンパー2の内壁の導電部材11は、抵抗線10に接触する。出力電極14は導電部材11を介して抵抗線10に電気的に接続される。このとき、出力電極14には、導電部材11と抵抗線10との接触位置に応じた検出電圧Vout(GNDに対する電位)が生じる。具体的には、接触位置が電圧Vinに近いほど、言い換えれば、電極12に近いほど、検出電圧Voutの電圧は高くなる。すなわち、導電部材11と抵抗線10とが略環状に配置されているので、検出電圧Voutの信号値(電圧値)の大きさは、力が掛かった方向を示す。なお、ここでは、抵抗線10はほぼ均一で、電極12からの距離と電圧降下はほぼ比例するとしている。
【0024】
外周の任意の位置を0度(degree、以下「°」とする)とし、0°、360°における出力電圧をV1、V2(V1、V2)とし、Vout>=V2の際に、抵抗線10と導電部材11との接触を検知したものとする。接触を検出した方向を検出方向α(単位は°)とすると、V1、V2、Voutから次の式で検出方向を算出することができる。
【0025】
検出方向α=(V1−Vout)/(V1−V2)×360° ・・・(1)
以下の説明では、便宜的に、電極12における検出電圧をV1、電極13における検出電圧をV2とし、電極12に最も近いD0を0°、D1は90°、D2は180°、D3は270°とする。もちろん、どこを基準とするかは任意である。
【0026】
以下、前方向(D1方向とする)から力が掛かったとき、後方向(D3方向とする)から力が掛かったときの例を挙げて説明する。なお、図でダンパは省略している。
図4は、前から力が加わった場合を示している。(A)は前から力が加わった場合のスイッチの状態、(B)は回路を示している。
【0027】
前から、言い換えれば、バンパー2にD1方向から力が掛かった場合、抵抗線10と導電部材11とは、D1において接触する。これにより、出力電極14は、導電部材11を介してD1地点で抵抗線10と電気的に接続する。これにより、検出電圧Voutは、抵抗線10のD1地点の電位に応じた、Vout=1/4Vinになる。
【0028】
図5は、後から力が加わった場合を示している。(A)は後から力が加わった場合のスイッチの状態、(B)は回路を示している。
後から、言い換えれば、バンパー2にD3方向から力が掛かった場合、抵抗線10と導電部材11とは、D3において接触する。これにより、出力電極14は、導電部材11を介してD3地点で抵抗線10と電気的に接続する。これにより、検出電圧Voutは、抵抗線10のD3地点の電位に応じた、Vout=3/4Vinになる。
【0029】
このように、バンパー2に予め設定した閾値以上の力が加わると、その位置の抵抗線10と導電部材11とが接触し、接触地点の抵抗線10の電位が検出電圧Voutとして検出できる。抵抗線10の電位は、電極12からの位置に応じて決まるため、Voutが略環状の抵抗線10のどの位置の電位に相当するのかを算出することにより、力が掛かった方向を検出できる。バンパー2には、障害物に衝突した場合ばかりでなく、走行装置が閾値を超える傾斜角の傾斜面を走行したときにバンパー2の重量に応じた重力、または走行装置が閾値を超える加速度で加速または減速を行ったときのバンパー2の重みに応じた慣性力が掛かる。基準値以上の傾斜角の傾斜面の走行、及び加減速時の大きな加速度は、ともに走行上の安全を妨げる障害であり、障害物の衝突と同様に検出する必要がある。第1の実施の形態の障害検出装置によれば、障害物の衝突とともに傾斜角及び加速度が閾値を超えた場合にも検出が可能であり、別途、加速度センサ等を持つ必要がなくなる。すなわち、コスト増となることなく、全方位の衝突の検出に加え、基準値以上の傾斜角の傾斜面や加速度といった走行上問題となる障害の発生とその方向の検出が可能となる。
【0030】
上記の説明では、フレーム1に周囲に抵抗線10を配置し、バンパー2の内壁に導電部材11を配置するとしたが、逆の構成とすることもできる。
図6は、抵抗線と導電部材とを逆に配置したスイッチ部の構成を示した図である。図3と同じものには同じ番号を付す。
【0031】
図6では、抵抗線10をバンパー2の内壁に略環状に配置し、導電部材11をフレーム1の周囲に略環状に配置している。定電圧Vinは、電極15を介して抵抗線10に印加する。また、抵抗線10は、電極16を介してGNDに接地する。導電部材11は、出力電極17に接続し、出力電極17から検出電圧Voutを出力する。
【0032】
バンパー2に力が掛からない通常状態では、導電部材11と、抵抗線10は、接触しておらず、検出電圧Vout=0である。
バンパー2に外力が掛かると、バンパー2がフレーム1方向に移動し、抵抗線10と導電部材11とが接触する。これにより、出力電極17は、導電部材11を介して抵抗線10と電気的に接続し、導電部材11と接触した抵抗線10の接触点における電位に応じた検出信号を検出電圧Voutとして出力する。抵抗線10は、略環状に配置されており、検出電圧Voutの大きさから力が加わった方向を検出することができる。
【0033】
このように、抵抗線10と導電部材11の配置を入れ替えても同様である。
以下、第2の実施の形態として、移動ロボットに障害検出装置を搭載した場合について説明する。図7は、第2の実施の形態の移動ロボットの構成を示した図である。
【0034】
ロボットは、ロボット本体100の外周にバンパー200が配置されており、後述するロボット制御部によって、地図情報に基づき、センサによって自己の位置を認識しながら車輪800を駆動し、予め決められた経路を走行する。
【0035】
バンパー200は、バネ310によってロボット本体100の外側に支持されており、バンパー200に力が加わっていない状態では、ロボット本体100との隙間が一定に保たれている。ロボット本体100の表面と、ロボット本体100の表面と対向するバンパー200の内壁には、障害を検出するスイッチ部を配置する。図7の例では、ロボット本体100の周囲をほぼ1周する抵抗線211と、バンパー200の内壁に抵抗線211に対向する導電部材212が取り付けられている。全方位に対して同等の障害検出を行うためには、ロボット本体100及びバンパー200は円筒状であることが望ましい。以下、このように、バネ310によってロボット本体100の外周に支持されるバンパー200と、略環状の抵抗線211及び導電部材212とをロボット本体100側とバンパー200側とに対向して配置するスイッチ部とを含め、バンパースイッチ210とする。
【0036】
図8は、移動ロボットのハードウェア構成の一例を示したブロック図である。
移動ロボットは、走行を行う走行部120と、バンパースイッチ210と、走行部120及びバンパースイッチ210に接続し、走行制御と障害の検出と回避処理を行うロボット制御部110を有する。ロボット制御部110は、CPU(Central Processing Unit)111によって装置全体が制御されている。CPU111には、バス116を介してRAM(Random Access Memory)112、ハードディスクドライブ(HDD:Hard Disk Drive)113、入力インタフェース114、及び走行部インタフェース115が接続されている。
【0037】
RAM112には、CPU111に実行させるOS(Operating System)のプログラムやアプリケーションプログラムの少なくとも一部が一時的に格納される。また、RAM112には、CPU111による処理に必要な各種データが格納される。HDD113には、OSやアプリケーションのプログラムが格納される。なお、HDD113の代わりに、ROM(Read Only Memory)を用いてもよい。入力インタフェース114には、バンパースイッチ210が接続されており、バンパースイッチ210の出力電圧Voutに基づく検出信号を、バス116を介してCPU111に送信する。走行部インタフェース115は、走行部120に接続されており、バス116を介してCPU111から取得した走行指示を走行部120の車輪モータ制御部121に送信する。走行部120は、車輪モータ制御部121及び車輪モータ122を有し、ロボット制御部100から受信した走行指示に基づいて、車輪モータ制御部121が車輪を駆動する車輪モータ122を制御する。このようなハードウェア構成によって、移動ロボット100の処理機能を実現することができる。
【0038】
以下、バンパースイッチ210による障害検出及びその検出信号を用いた走行制御について説明する。
図7に戻って障害物の衝突の検出について説明する。バンパースイッチ210は、図2に示したスイッチ部と同様の構成である。抵抗線211はロボット本体100側に、導電部材212はバンパー200側に配置されている。通常状態では、抵抗線211と、導電部材212との間は、ほぼ一定の距離に保たれており、接触しない。このとき、バンパースイッチ210より出力する検出信号は、検出電圧Vout=0に相当する信号となる。障害物が衝突すると、衝突した方向からバンパー200に力が加わる。力が閾値を超えている場合は、抵抗線211と導電部材212とが、接触し、検出電圧Voutに接触点の位置に応じた電圧が出力される。この検出電圧Voutを式(1)に適用し、障害物の方向を検出する。なお、障害物の方向の検出処理は、バンパースイッチ210の検出信号を受けたロボット制御部110が行う。
【0039】
次に、閾値を超える傾斜角の傾斜面の検出について説明する。図9は、傾斜角が閾値を超える傾斜面の検出を説明する図である。(A)は平面走行時、(B)は傾斜面走行時の状態を示した図である。図では、導電部材212の進行方向側を212a、後側を212bとしている。
【0040】
(A)の平面走行時の状態では、バンパー200の内壁に配置している導電部材212と、ロボット本体100に配置している抵抗線211とは、バネ310a,310bによって距離が一定に保たれている。抵抗線211と、導電部材212とは、接触していないので、検出電圧Voutは、“0”である。(B)の傾斜面走行時の状態では、ロボット本体100及びバンパー200の水平面がともに、傾斜面の角度θ分傾く。これにより、バンパー200に掛る重力が、バンパー200の水平面に働く。バンパー200を下方に押し下げる力が働き、ロボット本体100に対するバンパー200の相対位置が変わる。そして、傾斜角が閾値を超えると、バンパー200の重量によって導電部材の進行方向側212aと、抵抗線212とが接触し、検出電圧Voutに接触点の位置に応じた電圧が出力される。この検出電圧Voutを式(1)に適用すれば、傾斜面の方向を検出することができる。
【0041】
次に、基準を超える急激な加速あるいは減速の検出について説明する。図10は、加速度が閾値を超える加減速の検出を説明する図である。図は、速度を加速した場合を示している。ロボット本体100が加速すると、バンパー200には慣性力により、ロボット本体100に対する相対位置が後になるように力が働く。加速度が閾値を超えている場合は、導電部材の進行方向側212aと、抵抗線211とが接触し、検出電圧Voutに接触点の位置に応じた電圧が出力される。この検出電圧Voutを式(1)に適用すれば、加速度の方向(加速したのか減速したのか)を検出することができる。加速したときは、導電部材の進行方向212aが抵抗線211と接触し、減速したときは導電部材の後方向212bが抵抗線211と接触する。
【0042】
このように、開示のバンパースイッチによれば、障害物衝突時に障害物の方向を全方位に渡って検出できるばかりでなく、同様の機構で傾斜面が閾値を超えたことを検出し、傾斜面の方向も検出することができる。さらに、加速度が閾値を超えたことを検出し、加速されたのか、減速されたのかを検出することができる。
【0043】
次に、閾値を決めるパラメータについて説明する。図11は、閾値を決めるパラメータを説明する図である。(A)は障害物検出、(B)は傾斜面検出、(C)は加速度検出を示している。図は、それぞれロボット本体100と、バンパー200を示している。
【0044】
(A)障害物検出は、バネ定数と、ロボット本体100とバンパー200との隙間に応じて、バンパー200に加わる力の閾値が決まる。
バンパー200とロボット本体100とを接続するバネのバネ定数をKとし、バンパー200がX変位した場合、バンパー200に掛かる力Fは、
F=2KX ・・・(2)
と表すことができる。2倍しているのは、前後にバネが配置されていると想定しているためである。例えば、バンパー200とロボット本体の隙間を1cm(X=0.01m)とし、5N(0.5kf)の力がバンパー200に掛かったことを検出したいときは、式(2)より、バネ定数は、K=250N/mとすればよいことになる。
【0045】
(B)傾斜面検出は、さらに、バンパー200の重量により閾値が決まる。傾斜角θの傾斜面を登坂する場合、バンパー200の重量をM、重力をgとすると、掛かる力は、
Mgsinθ=2KX ・・・(3)
と表すことができる。KとXは(A)と同じである。例えば、傾斜角5°(θ=5)以上で傾斜面検出を行うとすると、式(3)を用いて、重量Mは、
M=2×250×0.01/(9.8×sin5°)=5.85kg、
と求めることができる。なお、KとXは、(A)と同じである。
【0046】
以上より、障害物に衝突し5Nの力が掛かったことを検出するとともに、傾斜角5°の傾斜面を検出したいときは、バンパー200の重量を5.85kgとすればよいことになる。
【0047】
(C)加速度検出は、KとMが定まると閾値が自動的に決まる。加速度をaとすると、掛かる力は、
Ma=2KX ・・・(4)
と表すことができる。上記で算出したKとM、及びXを用いると、検出できる加速度は、
a=2×250×0.01/5.85=0.85m/S2
になる。
【0048】
以上のように、バネ係数と隙間の大きさ、また、バンパーの重量等を適宜決めることにより、最適な閾値を設定する。
ところで、上記で説明したように、傾斜面検出及び加速度検出の閾値は、バンパー200の重量に応じて調整することができる。図12は、バンパーの重量調整用の重りを備えた移動ロボットの一例を示した図である。
【0049】
図12は、図7の移動ロボットに重り601,602を備えている。重り601,602は、それぞれの所定の重量を有し、バンパー200の上に着脱可能である。それぞれ、バンパー200と同様に形状をしており、ロボット本体100の部分が中空のドーナツ型形状を有している。利用者は、式(3)または式(4)を用いて、所望の閾値が得られるバンパー200の重量を算出し、重り601,602を着脱してバンパー200が算出した重量となるように調整することができる。
【0050】
また、図7に示した移動ロボットでは、バンパーの重量調整を傾斜面検出か、加速度検出のいずれかに合わせて行う。しかし、両方の閾値を満たす重量に調整することは容易ではない。そこで、第3の実施の形態として、それぞれ傾斜面検出と加速度検出とを行うスイッチ機構を設けた移動ロボットについて説明する。
【0051】
図13は、第3の実施の形態の移動ロボットの構成を示した図である。図7と同じものには同じ番号を付す。第3の実施の形態の移動ロボットは、図7に示した第2の実施の形態の移動ロボットのバンパースイッチ210が、バンパースイッチ220に置き換わっている。
【0052】
バンパースイッチ220は、スイッチ部が上下2箇所の構成となっている。また、バンパー201は、水平面が常にロボット本体100の水平面と一致していたバンパー200と異なり、常に水平を保つ。言い換えれば、傾斜面を走行する際に、ロボット本体100の水平面が傾いても、バンパー201の水平面は水平を維持する。
【0053】
スイッチ部について説明する。上側のスイッチは、加速度検出用で、抵抗線(加速度検出用)221と導電部材(加速度検出用)222とを有する。抵抗線(加速度検出用)221は、ロボット本体100の周囲を取り囲むように略環状に配置する。導電部材(加速度検出用)222は、バンパー201の内壁に、抵抗線(加速度検出用)221と対向するように略環状に配置する。ロボット本体100が平面上にあるときは、抵抗線(加速度検出用)221及び導電部材(加速度検出用)222は、同じ高さにある。下側のスイッチは、傾斜面検出用で、抵抗線(傾斜面検出用)223と、導電部材(傾斜面検出用)224とを有する。抵抗線(傾斜面検出用)223は、ロボット本体100の周囲を取り囲むように略環状に配置する。導電部材(傾斜面検出用)224は、バンパー201の内壁に略環状に配置する。抵抗線(傾斜面検出用)223と、導電部材(傾斜面検出用)224とは、ロボット本体100が平面上にあるときは、同じ高さとならないように位置をずらして配置する。そして、上下方向の変位が加わったときに接触する構造とする。傾斜面走行時に、ロボット本体100とバンパー201とが相対的に傾くことにより、抵抗線(傾斜面検出用)223と、導電部材(傾斜面検出用)224とが接触する。
【0054】
図14は、図13の移動ロボットの動作を示した図である。(A)は傾斜面走行時、(B)は加速度大となったときの動作を示している。
(A)傾斜面走行時には、ロボット本体100が傾斜角θの傾斜面を走行することにより、ロボット本体100に配置された抵抗線(加速度検出用)221及び抵抗線(傾斜面検出用)223は、水平方向に対し、傾斜角θで傾く。これに対し、水平を常に維持するバンパー201に配置される導電部材(加速度検出用)222及び導電部材(傾斜面検出用)224は、水平を維持する。このように、傾斜面走行時に、ロボット本体100に対しバンパー201が相対的に傾くことにより、抵抗線(傾斜面検出用)223と、導電部材(傾斜面検出用)224とが接触する。導電部材の進行方向側224aと、抵抗線(傾斜面検出用)223とが接触したことにより、検出電圧Voutに接触点の位置に応じた電圧が出力される。この検出電圧Voutを式(1)に適用すれば、傾斜面の方向を検出することができる。このとき、加速度検出用の抵抗線(加速度検出用)221と、導電部材(加速度検出用)222とは、ロボット本体100に対し、バンパー201が相対的に傾くことにより、接触しない。したがって、傾斜面検出のみを行うことができる。
【0055】
(B)加速度大の状態となったときは、慣性力によってバンパー201はロボット本体100に対し、水平方向に位置がずれる。図14は加速する場合を示しており、バンパー201は、ロボット本体100に対し後側に移動する。これにより、加速度検出用の抵抗線(加速度検出用)221と、導電部材(加速度検出用)222とが接触する。導電部材の進行方向側222aと、抵抗線(加速度検出用)221とが接触したことにより、検出電圧Voutに接触点の位置に応じた電圧が出力される。この検出電圧Voutを式(1)に適用すれば、加速の方向を検出することができる。このとき、傾斜面検出用の抵抗線(傾斜面検出用)223と、導電部材(傾斜面検出用)224とは、ロボット本体100に対し、バンパー201が水平方向に移動するだけであるので、接触しない。したがって、加速度検出のみを行うことができる。
【0056】
このように、傾斜面検出用と、加速度検出用の2種類にスイッチ部を設けたことにより、加速度と傾斜面をそれぞれ検知することが可能となる。なお、障害物との衝突は、抵抗線(加速度検出用)221及び導電部材(加速度検出用)222により、検出する。
【0057】
さらに、第4の実施の形態として、回転方向を検出するバンパースイッチについて説明する。図15は、第4の実施の形態のバンパースイッチの構成例を示した図である。
バンパースイッチ230は、ロボット本体100の周囲に、接触方向検出用の抵抗線231と、回転方向検出用の抵抗線232a,232bとがそれぞれ略環状に配置されている。なお、抵抗線232a,232bは、2つで略環状を形成している。また、抵抗線232aは、反時計回りの回転の検出用であり、途中に回転検出部233aを有する。抵抗線232bは、時計回りの回転の検出用であり、途中に回転検出部233bを有する。一方、バンパー202の内壁には、抵抗線231に対向して導電部材234を配置する。また、通常状態では接触しないが、ロボット本体100が反時計回りに回転すると回転検出部233aと接触する端部235aと、時計回りに回転すると回転検出部233bと接触する端部235bを有している。
【0058】
図16は、図15のバンパースイッチの回路を示した図である。
定電圧Vinが抵抗線232aに印加されており、抵抗線232a、電極241、電極242、抵抗線231、電極243、電極244、抵抗線232bと微弱な電流が流れる。通常状態では、抵抗線231,232a,232bと、導電部材234とは接触していない。
【0059】
バンパー202に力が加わったときの接触方向の検出については、バンパースイッチ210と同様である。バンパー202に力が加わったとき、導電部材234と、接触方向検出用の抵抗線231とが接触し、接触点の電位が出力電極247を経由して検出電圧Voutとして出力する。図16の例では、検出電圧Voutとして、電極243の電位より大きく、電極242の電位よりも小さい電圧値が検出される。すなわち、電極242の電位をV1、電極243の電位をV2として、式(1)を適用し、接触方向を求めることができる。
【0060】
図17は、図15のバンパースイッチが反時計回りに回転したときの動作を示した図である。(A)は反時計回りに回転した場合のバンパースイッチの状態を示した図であり、(B)はそのときの回路を示した図である。
【0061】
矢印に示したように、ロボット本体100が反時計回りに回転すると、回転方向検出用の抵抗線232a,232bに設けられた回転検出部233a,233bが反時計方向に動く。すると、バンパー202とともに動く導電部材234は回転が遅れるため、端部235aが回転検出部233aに接触する。反対側も同様に、出力電極246が導電部材に接触し、導電部材を経由して出力電極248に電気的に接続する。これにより、回転検出部233aと、出力電極248とが電気的に接続し、出力電極248には回転検出部233aの電位が検出電圧Vccとして出力する。このとき、検出電圧Vccとしては電極241よりも高い電圧値が得られる。
【0062】
図18は、図15のバンパースイッチが時計回りに回転したときの動作を示した図である。(A)は時計回りに回転した場合のバンパースイッチの状態を示した図であり、(B)はそのときの回路を示した図である。
【0063】
矢印に示したように、ロボット本体100が時計回りに回転すると、回転方向検出用の抵抗線232a,232bに設けられた回転検出部233a,233bが時計方向に動く。すると、バンパー202とともに動く導電部材234は回転が遅れるため、端部235bが回転検出部233bに接触する。反対側も同様に、出力電極245が導電部材に接触し、導電部材を経由して出力電極248に接続する。これにより、回転検出部233bと、出力電極248とが電気的に接続し、出力電極248には回転検出部233bの電位に応じた検出電圧Vccとして出力する。このとき、検出電圧Vccとしては電極244よりも低い電圧値が得られる。
【0064】
以上のように、回転方向検出部をバンパースイッチに設けることによって、同様の機構でバンパー202に力が加わった方向を検出できるとともに、移動ロボットの回転方向を検出することができる。
【0065】
移動ロボットは、上記のバンパースイッチ210,220,230によって障害物と衝突したこと、閾値以上の傾斜面を走行したこと、または、加速度が閾値を超えたことを検出したときは、障害を回避する行動をとる。なお、回転の検出については、走行とは直接関係ないので説明から省くが、回転したことを検出したときに何らかの処理を実行させることができることは当然である。
【0066】
以下、障害を回避する行動をとる際の走行制御処理についてフローチャートを用いて説明する。図19は、走行制御処理の手順を示したフローチャートである。
[ステップS01] ロボット制御部110は、走行開始の指示を受け取ると、走行部120に走行指示を出力し、通常走行を開始させる。
【0067】
ロボットが走行を開始し、経路上の障害物に衝突する、経路の傾斜角が閾値以上となる、加速または減速の加速度が閾値を超える、等の走行上の障害が発生すると、バンパースイッチ210,220,230が動作し、検出電圧Voutが360°のときの出力電圧V2を超える。
【0068】
[ステップS02] ロボット制御部110は、バンパースイッチ210,220,230の検出電圧Voutに応じた検出信号に基づき、ロボット本体の周囲の抵抗線と、バンパー内壁の導電部材との接触を検知したかどうかを判定する。例えば、検出電圧Vout>=V2のとき、接触を検知したとする。接触を検知したときは、処理をステップS03に進める。接触を検知しなかったときは、ステップS01に戻って、通常走行を続ける。
【0069】
[ステップS03] ロボット制御部110は、接触を検知したときは、走行速度を減速する。接触が加減速の加速度が規定値を超えたことが原因であるときは、減速によって障害はなくなる。
【0070】
[ステップS04] ロボット制御部110は、バンパースイッチ210,220,230の検出電圧Voutに応じた検出信号に基づき、ロボット本体の周囲の抵抗線と、バンパー内壁の導電部材との接触を検知したかどうかを判定する。接触を検知したときは、処理をステップS05に進める。接触を検知しなかったときは、ステップS01に戻って、通常走行を続ける。
【0071】
[ステップS05] ロボット制御部110は、接触を検知したときは、走行を停止する。
[ステップS06] ロボット制御部110は、バンパースイッチ210,220,230の検出電圧Voutに応じた検出信号に基づき、ロボット本体の周囲の抵抗線と、バンパー内壁の導電部材との接触を検知したかどうかを判定する。接触を検知したときは、処理をステップS07に進める。接触を検知しなかったときは、ステップS01に戻って、通常走行を続ける。
【0072】
[ステップS07] ロボット制御部110は、接触を検知したので、障害は除去されていないと判断し、式(1)を用いて障害の発生方向を検出する。
[ステップS08] ロボット制御部110は、ステップS07で検出した障害の発生方向とは異なる方向、例えば、反対方向(α+180°)に進行方向を変更する。
【0073】
[ステップS09] ステップS08で変更した進行方向に基づいて走行経路を変更する走行経路変更処理を行い、今後の経路を決定する。その後、ステップS01に戻って通常走行を開始する。
【0074】
以上の処理手順が実行されることにより、走行時に障害が検出されたときは、障害を回避する処理が自動で行われる。
なお、上記の処理機能は、コンピュータによって実現することができる。その場合、移動ロボットが有すべき機能の処理内容を記述したプログラムが提供される。そのプログラムをコンピュータで実行することにより、上記処理機能がコンピュータ上で実現される。処理内容を記述したプログラムは、コンピュータで読み取り可能な記録媒体に記録しておくことができる。
【0075】
プログラムを流通させる場合には、例えば、そのプログラムが記録されたDVD(Digital Versatile Disc)、CD−ROM(Compact Disc Read Only Memory)等の可搬型記録媒体が販売される。また、プログラムをサーバコンピュータの記憶装置に格納しておき、ネットワークを介して、サーバコンピュータから他のコンピュータにそのプログラムを転送することもできる。
【0076】
プログラムを実行するコンピュータは、例えば、可搬型記録媒体に記録されたプログラムもしくはサーバコンピュータから転送されたプログラムを、自己の記憶装置に格納する。そして、コンピュータは、自己の記憶装置からプログラムを読み取り、プログラムに従った処理を実行する。なお、コンピュータは、可搬型記録媒体から直接プログラムを読み取り、そのプログラムに従った処理を実行することもできる。また、コンピュータは、サーバコンピュータからプログラムが転送されるごとに、逐次、受け取ったプログラムに従った処理を実行することもできる。
【0077】
以上の実施の形態に関し、さらに以下の付記を開示する。
(付記1) 走行の妨げとなる障害を検出する障害検出装置において、
走行装置の外周に配置され、該走行装置と弾性体を介して接続することによって、該走行装置が水平面で停止しているときは前記走行装置に対して非接触状態に保持される外周部と、
所定の電気抵抗を有する抵抗部材と、前記抵抗部材に対して電気抵抗が小さい導電部材とを有し、対向する前記走行装置の周囲または前記外周部の内壁のいずれか一方に前記抵抗部材、他方に前記導電部材をそれぞれ略環状に配置し、前記抵抗部材と前記導電部材との接触点の位置に応じた前記抵抗部材の電位を検出信号として出力するスイッチ部と、
前記検出信号に基づいて、前記外周部に力が加わることによって前記外周部と前記走行装置との相対的位置が変化し、前記抵抗部材と前記導電部材とが接触したことを検出するとともに、前記検出信号の信号値に応じて加えられた力の方向を検出する検出部と、
を有することを特徴とする障害検出装置。
【0078】
(付記2) 前記スイッチ部は、前記走行装置を取り囲むように、前記走行装置の周囲に前記抵抗部材を略環状に配置し、前記外周部の内壁に前記導電部材を略環状に配置する、
ことを特徴とする付記1記載の障害検出装置。
【0079】
(付記3) 前記スイッチ部は、前記外周部に障害物が衝突したときに前記外周部に掛かる外力、前記走行装置が閾値を超える傾斜角の傾斜面を走行したときに前記外周部に掛かる重力、及び前記走行装置が閾値を超える加速度で加速または減速を行ったときに前記外周部に掛かる慣性力に応じて前記外周部と前記走行装置との相対位置が変化する、
ことを特徴とする付記1記載の障害検出装置。
【0080】
(付記4) 前記外周部は、前記走行装置が水平面上に停止しているとき水平となる前記外周部の水平面が、常に前記走行装置の水平面と一致しており、
前記スイッチ部は、前記抵抗部材と、前記導電部材とを上下方向に同じ位置に配置する、
ことを特徴とする付記1または2記載の障害検出装置。
【0081】
(付記5) 前記外周部は、前記走行装置が水平面上に停止しているとき水平となる水平面が、前記走行装置の傾きによらず、重力方向に対して常に直交しており、
前記スイッチ部は、前記走行装置が水平面にあるときの前記抵抗部材と前記導電部材との位置を上下方向にずらして配置し、前記走行装置が傾斜面を走行したときに前記走行装置と前記外周部との相対的な傾きに応じて前記抵抗部材と前記導電部材とが接触する、
ことを特徴とする付記1または2記載の障害検出装置。
【0082】
(付記6) 前記外周部は、前記走行装置が水平面上に停止しているとき水平となる水平面が、前記走行装置の傾きによらず、重力方向に対して常に直交しており、
前記スイッチ部は、前記抵抗部材と前記導電部材の組を上下方向に少なくとも2組有し、少なくとも1組は、前記走行装置が水平面上にあるとき前記抵抗部材と前記導電部材とを上下方向に同じ高さになるように配置するとともに、少なくとも1組は、前記走行装置が水平面上にあるとき前記抵抗部材と前記導電部材の上下方向の高さをずらして配置して前記走行装置が傾斜面を走行したときに前記走行装置と前記外周部との相対的な傾きに応じて前記抵抗部材と前記導電部材とが接触する、
ことを特徴とする付記1または3記載の障害検出装置。
【0083】
(付記7) 前記スイッチ部は、前記抵抗部材に、前記走行装置が回転したときに前記導電部材と接触する回転検出部を少なくとも2つ配置し、前記回転検出部と前記導電部材とが接触した回転方向に応じた前記抵抗部材の電位を検出信号として出力し、
前記検出部は、前記検出信号に基づいて、前記走行装置が回転したことによって前記外周部と前記走行装置との相対的位置が変化して前記回転検出部と前記導電部材とが接触したことを検出し、前記検出信号に応じて前記走行装置の回転方向を検出する、
ことを特徴とする付記1または3記載の障害検出装置。
【0084】
(付記8) 前記外周部は、さらに、前記外周部の重量に応じて閾値が決まる前記傾斜面検出時の閾値、または前記加速度検出時の閾値を調整する前記外周部に着脱可能な重りを有する、
ことを特徴とする付記3記載の障害検出装置。
【0085】
(付記9) 前記外周部は、前記走行装置部分が中空のドーナツ型形状を有しており、前記重りは前記外周部と同じ径を有するドーナツ型形状であることを特徴とする、付記8記載の障害検出装置。
【0086】
(付記10) 走行の妨げとなる障害を検出する移動ロボットにおいて、
移動ロボットの外枠の外周に配置され、該外枠と弾性体を介して接続することによって、該移動ロボットが水平面上で停止しているときは前記外枠に対して非接触状態に保持される外周部と、
所定の電気抵抗を有する抵抗部材と、前記抵抗部材に対して電気抵抗が小さい導電部材とを有し、対向する前記外枠の周囲または前記外周部の内壁のいずれか一方に前記抵抗部材、他方に前記導電部材をそれぞれ略環状に配置し、前記抵抗部材と前記導電部材との接触点の位置に応じた前記抵抗部材の電位を検出信号として出力するスイッチ部と、
前記検出信号に基づいて、前記外周部に力が加わることによって前記外周部と前記外枠との相対的位置が変化し、前記抵抗部材と前記導電部材とが接触したことを検出するとともに、前記検出信号の信号値に応じて加えられた力の方向を検出する検出部と、
前記検出部によって障害が検出されたときは、予め決められた手順に従って、減速、走行停止及び走行経路変更を含む障害回避処理を行う走行制御部と、
を有することを特徴とする移動ロボット。
【符号の説明】
【0087】
1 フレーム
2 バンパー
3a,3b バネ
10 抵抗線
11 導電部材
12,13 電極
14 出力電極
31,32,33,34 バネ
41,42,43,44 ダンパ
【特許請求の範囲】
【請求項1】
走行の妨げとなる障害を検出する障害検出装置において、
走行装置の外周に配置され、該走行装置と弾性体を介して接続することによって、該走行装置が水平面で停止しているときは前記走行装置に対して非接触状態に保持される外周部と、
所定の電気抵抗を有する抵抗部材と、前記抵抗部材に対して電気抵抗が小さい導電部材とを有し、対向する前記走行装置の周囲または前記外周部の内壁のいずれか一方に前記抵抗部材、他方に前記導電部材をそれぞれ略環状に配置し、前記抵抗部材と前記導電部材との接触点の位置に応じた前記抵抗部材の電位を検出信号として出力するスイッチ部と、
前記検出信号に基づいて、前記外周部に力が加わることによって前記外周部と前記走行装置との相対的位置が変化し、前記抵抗部材と前記導電部材とが接触したことを検出するとともに、前記検出信号の信号値に応じて加えられた力の方向を検出する検出部と、
を有することを特徴とする障害検出装置。
【請求項2】
前記スイッチ部は、前記外周部に障害物が衝突したときに前記外周部に掛かる外力、前記走行装置が閾値を超える傾斜角の傾斜面を走行したときに前記外周部に掛かる重力、及び前記走行装置が閾値を超える加速度で加速または減速を行ったときに前記外周部に掛かる慣性力に応じて前記外周部と前記走行装置との相対位置が変化する、
ことを特徴とする請求項1記載の障害検出装置。
【請求項3】
前記外周部は、前記走行装置が水平面上に停止しているとき水平となる水平面が、前記走行装置の傾きによらず、重力方向に対して常に直交しており、
前記スイッチ部は、前記抵抗部材と前記導電部材の組を上下方向に少なくとも2組有し、少なくとも1組は、前記走行装置が水平面上にあるとき前記抵抗部材と前記導電部材とを上下方向に同じ高さになるように配置するとともに、少なくとも1組は、前記走行装置が水平面上にあるとき前記抵抗部材と前記導電部材の上下方向の高さをずらして配置して前記走行装置が傾斜面を走行したときに前記走行装置と前記外周部との相対的な傾きに応じて前記抵抗部材と前記導電部材とが接触する、
ことを特徴とする請求項1または2記載の障害検出装置。
【請求項4】
前記スイッチ部は、前記抵抗部材に、前記走行装置が回転したときに前記導電部材と接触する回転検出部を少なくとも2つ配置し、前記回転検出部と前記導電部材とが接触した回転方向に応じた前記抵抗部材の電位を検出信号として出力し、
前記検出部は、前記検出信号に基づいて、前記走行装置が回転したことによって前記外周部と前記走行装置との相対的位置が変化して前記回転検出部と前記導電部材とが接触したことを検出し、前記検出信号に応じて前記走行装置の回転方向を検出する、
ことを特徴とする請求項1または2記載の障害検出装置。
【請求項5】
前記外周部は、さらに、前記外周部の重量に応じて閾値が決まる前記傾斜面検出時の閾値、または前記加速度検出時の閾値を調整する前記外周部に着脱可能な重りを有する、
ことを特徴とする請求項2記載の障害検出装置。
【請求項6】
走行の妨げとなる障害を検出する移動ロボットにおいて、
移動ロボットの外枠の外周に配置され、該外枠と弾性体を介して接続することによって、該移動ロボットが水平面上で停止しているときは前記外枠に対して非接触状態に保持される外周部と、
所定の電気抵抗を有する抵抗部材と、前記抵抗部材に対して電気抵抗が小さい導電部材とを有し、対向する前記外枠の周囲または前記外周部の内壁のいずれか一方に前記抵抗部材、他方に前記導電部材をそれぞれ略環状に配置し、前記抵抗部材と前記導電部材との接触点の位置に応じた前記抵抗部材の電位を検出信号として出力するスイッチ部と、
前記検出信号に基づいて、前記外周部に力が加わることによって前記外周部と前記外枠との相対的位置が変化し、前記抵抗部材と前記導電部材とが接触したことを検出するとともに、前記検出信号の信号値に応じて加えられた力の方向を検出する検出部と
前記検出部によって障害が検出されたときは、予め決められた手順に従って、減速、走行停止及び走行経路変更を含む障害回避処理を行う走行制御部と、
を有することを特徴とする移動ロボット。
【請求項1】
走行の妨げとなる障害を検出する障害検出装置において、
走行装置の外周に配置され、該走行装置と弾性体を介して接続することによって、該走行装置が水平面で停止しているときは前記走行装置に対して非接触状態に保持される外周部と、
所定の電気抵抗を有する抵抗部材と、前記抵抗部材に対して電気抵抗が小さい導電部材とを有し、対向する前記走行装置の周囲または前記外周部の内壁のいずれか一方に前記抵抗部材、他方に前記導電部材をそれぞれ略環状に配置し、前記抵抗部材と前記導電部材との接触点の位置に応じた前記抵抗部材の電位を検出信号として出力するスイッチ部と、
前記検出信号に基づいて、前記外周部に力が加わることによって前記外周部と前記走行装置との相対的位置が変化し、前記抵抗部材と前記導電部材とが接触したことを検出するとともに、前記検出信号の信号値に応じて加えられた力の方向を検出する検出部と、
を有することを特徴とする障害検出装置。
【請求項2】
前記スイッチ部は、前記外周部に障害物が衝突したときに前記外周部に掛かる外力、前記走行装置が閾値を超える傾斜角の傾斜面を走行したときに前記外周部に掛かる重力、及び前記走行装置が閾値を超える加速度で加速または減速を行ったときに前記外周部に掛かる慣性力に応じて前記外周部と前記走行装置との相対位置が変化する、
ことを特徴とする請求項1記載の障害検出装置。
【請求項3】
前記外周部は、前記走行装置が水平面上に停止しているとき水平となる水平面が、前記走行装置の傾きによらず、重力方向に対して常に直交しており、
前記スイッチ部は、前記抵抗部材と前記導電部材の組を上下方向に少なくとも2組有し、少なくとも1組は、前記走行装置が水平面上にあるとき前記抵抗部材と前記導電部材とを上下方向に同じ高さになるように配置するとともに、少なくとも1組は、前記走行装置が水平面上にあるとき前記抵抗部材と前記導電部材の上下方向の高さをずらして配置して前記走行装置が傾斜面を走行したときに前記走行装置と前記外周部との相対的な傾きに応じて前記抵抗部材と前記導電部材とが接触する、
ことを特徴とする請求項1または2記載の障害検出装置。
【請求項4】
前記スイッチ部は、前記抵抗部材に、前記走行装置が回転したときに前記導電部材と接触する回転検出部を少なくとも2つ配置し、前記回転検出部と前記導電部材とが接触した回転方向に応じた前記抵抗部材の電位を検出信号として出力し、
前記検出部は、前記検出信号に基づいて、前記走行装置が回転したことによって前記外周部と前記走行装置との相対的位置が変化して前記回転検出部と前記導電部材とが接触したことを検出し、前記検出信号に応じて前記走行装置の回転方向を検出する、
ことを特徴とする請求項1または2記載の障害検出装置。
【請求項5】
前記外周部は、さらに、前記外周部の重量に応じて閾値が決まる前記傾斜面検出時の閾値、または前記加速度検出時の閾値を調整する前記外周部に着脱可能な重りを有する、
ことを特徴とする請求項2記載の障害検出装置。
【請求項6】
走行の妨げとなる障害を検出する移動ロボットにおいて、
移動ロボットの外枠の外周に配置され、該外枠と弾性体を介して接続することによって、該移動ロボットが水平面上で停止しているときは前記外枠に対して非接触状態に保持される外周部と、
所定の電気抵抗を有する抵抗部材と、前記抵抗部材に対して電気抵抗が小さい導電部材とを有し、対向する前記外枠の周囲または前記外周部の内壁のいずれか一方に前記抵抗部材、他方に前記導電部材をそれぞれ略環状に配置し、前記抵抗部材と前記導電部材との接触点の位置に応じた前記抵抗部材の電位を検出信号として出力するスイッチ部と、
前記検出信号に基づいて、前記外周部に力が加わることによって前記外周部と前記外枠との相対的位置が変化し、前記抵抗部材と前記導電部材とが接触したことを検出するとともに、前記検出信号の信号値に応じて加えられた力の方向を検出する検出部と
前記検出部によって障害が検出されたときは、予め決められた手順に従って、減速、走行停止及び走行経路変更を含む障害回避処理を行う走行制御部と、
を有することを特徴とする移動ロボット。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図17】
【図18】
【図19】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図17】
【図18】
【図19】
【公開番号】特開2011−75302(P2011−75302A)
【公開日】平成23年4月14日(2011.4.14)
【国際特許分類】
【出願番号】特願2009−224344(P2009−224344)
【出願日】平成21年9月29日(2009.9.29)
【出願人】(000005223)富士通株式会社 (25,993)
【Fターム(参考)】
【公開日】平成23年4月14日(2011.4.14)
【国際特許分類】
【出願日】平成21年9月29日(2009.9.29)
【出願人】(000005223)富士通株式会社 (25,993)
【Fターム(参考)】
[ Back to top ]