(57)【特許請求の範囲】
【請求項１】
移動ロボット本体に懸架されて床面を走行面とする複数の車輪と、この車輪を回転させる駆動機構と、この駆動機構を制御する駆動制御部とを備えた移動ロボットにおいて、
前記移動ロボットと前記車輪との間で両者の間隔を調整するために設けられたアクチュエータと、このアクチュエータを制御するためのサスペンション制御部と、前記床面上に存在する段差を検出するセンサと、このセンサと前記移動体の速度から段差と前記車輪との接触タイミングを予測する段差予測部とを備え、
前記サスペンション制御部は、前記段差に接触する際に先に接触する車輪側に重心を移動させ、前記先に接触した車輪が前記段差に乗り上げた後反対側の車輪が前記段差に接触するまで前記先に接触した車輪とは反対側に重心を移動させ、両車輪が前記段差を乗り上げた後重心を中央に移動させるよう前記アクチュエータを制御することを特徴とする移動ロボット。
【請求項２】
請求項１記載の移動ロボットにおいて、
前記サスペンション制御部は、前記車輪が凹凸を超えたことを検出する段差検出部により前記車輪が凹凸部を乗越えた際に前記移動ロボットの重心を中央に戻すよう前記アクチュエータを制御することを特徴とする移動ロボット。
【請求項３】
請求項１記載の移動ロボットにおいて、
前記サスペンション制御部は、前記段差予測部により予測される左右車輪の凹凸との接触タイミングの間隔に応じて前記移動体本体の重心の移動量を調整することを特徴とする移動ロボット。
【請求項４】
段差を検出する段差検出センサを備えた移動ロボットの走行安定化方法において、
前記段差検出センサにより取得した前記段差の高さと方向を検出するステップと、
前記段差と前記移動ロボットまでの距離を計測するステップと、
前記移動ロボットの移動目標速度から前記段差への接触タイミングを算出するステップと、
前記段差に接触する際にアクチュエータを制御して重心を先に接触する車輪側に移動させるステップと、
前記先に接触した車輪が前記段差に乗り上げた後反対側の車輪が前記段差に接触するまで前記先に接触した車輪とは反対側に重心を移動させるステップと、
両車輪が前記段差を乗越えたことを検知したら重心を中央に戻すステップとからなる走行安定化方法。
【請求項５】
請求項４記載の走行安定化方法において、
前記段差の高さと方向は地図情報から取得する走行安定化方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は段差通過時の横方向振動を防止するための走行安定化装置を備えた移動ロボット及びその走行安定化方法に関する。
【背景技術】
【０００２】
従来、移動ロボットが段差のある路面を移動する場合、段差乗越えに対して種々の走行動作を行うものが提案されている(例えば、特許文献１、特許文献２)。
【０００３】
特許文献１に記載の倒立型移動体は、移動する床面上に凸部が存在する場合、凸部に回転体を接触させた上で移動体本体を前方に傾斜させ、段差乗越えに必要なトルクを倒立制御により得る構造が開示されている。
【０００４】
また、特許文献２に記載の２輪移動台車では、段差を検出した際に段差の高さが車輪半径の１０％以下ならば移動台車の方向を変化させず、１０％以上４０％以下ならば両輪が同時に段差と接触するように移動する構造が開示されている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００９−５５６８２号公報
【特許文献２】特開２００７−１６８６０２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、従来の技術では段差を乗越えるトルクを発生させることのみに注目しているため、その段差を乗越えた際に移動体に発生する横方向振動による転倒や横方向振動に由来する進行方向ズレについては考慮されていない。
【０００７】
つまり、例えば重心が高く、左右の車輪の間隔が短い移動体が段差に斜めに乗り上げる際、段差より受ける衝撃によって横転もしくは横方向振動により進行方向が経路から外れるという問題が発生する。
【０００８】
例えば、特許文献１に記載の技術では移動体の移動速度が速いため、歩道等への乗り上げのような片輪ずつ段差に接触することになる。その場合、移動体本体が傾斜することで移動体の重心が車輪に先行して凸部の上に行くことになる。この状態において、車輪は容易に段差を乗越えるトルクを得ることができるものの、段差と車輪が接触した際の衝撃力を考慮していない為に移動体が横転または横方向振動により移動体の位置が経路から大きくずれるという問題がある。
【０００９】
また、特許文献２に記載の技術でも段差と車輪接触した際の衝撃力を考慮していない為に移動体が横転または横方向振動により移動体の位置が経路から大きくずれるという問題がある。
【００１０】
さらに、特許文献１及び特許文献２とも溝や凹部などの段差を片輪ずつ降りる際においても、片輪の落下に伴うモーメントが考慮されていない為に移動体が横転または横方向振動による位置の経路ずれという問題がある。
【００１１】
本発明の目的は、段差より受ける衝撃を緩和することによって横転もしくは横方向振動による進行方向の経路外れを防止した移動ロボットを提供することにある。
【課題を解決するための手段】
【００１２】
上記目的は、移動ロボット本体に懸架されて床面を走行面とする複数の車輪と、この車輪を回転させる駆動機構と、この駆動機構を制御する駆動制御部とを備えた移動ロボットにおいて、前記移動ロボットと前記車輪との間で両者の間隔を調整するために設けられたアクチュエータと、このアクチュエータを制御するためのサスペンション制御部と、前記床面上に存在する段差を検出するセンサと、このセンサと前記移動体の速度から段差と前記車輪との接触タイミングを予測する段差予測部とを備え、前記サスペンション制御部は、前記段差に接触する際に先に接触する車輪側に重心を移動させ、前記先に接触した車輪が前記段差に乗り上げた後反対側の車輪が前記段差に接触するまで前記先に接触した車輪とは反対側に重心を移動させ、両車輪が前記段差を乗り上げた後重心を中央に移動させるよう前記アクチュエータを制御することにより達成される。
【００１４】
また上記目的は、前記サスペンション制御部は前記車輪が凹凸を超えたことを検出する段差検出部により前記車輪が凹凸部を乗越えた際に前記移動ロボットの重心を中央に戻すことにより達成される。
【００１５】
また上記目的は、前記サスペンション制御部は前記段差予測部により予測される左右車輪の凹凸との接触タイミングの間隔に応じて前記移動体本体の重心の移動量を調整することにより達成される。
【００１６】
また上記目的は、段差を検出する段差検出センサを備えた移動ロボットの走行安定化方法において、 前記段差検出センサにより取得した前記段差の高さと方向を検出するステップと、前記段差と前記移動ロボットまでの距離を計測するステップと、前記移動ロボットの移動目標速度から前記段差への接触タイミングを算出するステップと、前記段差に接触する際にアクチュエータを制御して重心を先に接触する車輪側に移動させるステップと、前記先に接触した車輪が前記段差に乗り上げた後反対側の車輪が前記段差に接触するまで前記先に接触した車輪とは反対側に重心を移動させるステップと、両車輪が前記段差を乗越えたことを検知したら重心を中央に戻すステップとからなることにより達成される。
【００１７】
また上記目的は、前記段差の高さと方向は地図情報から取得することにより達成される。
【発明の効果】
【００１８】
本発明によれば、段差より受ける衝撃を緩和することによって横転もしくは横方向振動による進行方向の経路外れを防止した移動ロボットを提供できる。
【図面の簡単な説明】
【００１９】
【図１】段差乗り越え時の移動ロボット動作を示す図である。
【図２】本発明の実施例を備えた移動ロボットの動作を示す図である。
【図３】本発明である移動ロボットの機構構成図である。
【図４】本発明である移動ロボットのシステム構成図である。
【図５】移動ロボットの経路計画フローチャート図である。
【図６】本発明である移動ロボットの段差予測フローチャート図である。
【図７】本発明である移動ロボットの重心位置制御フローチャート図である。
【図８】本発明である移動ロボットの重心位置移動量A算出のためのフローチャート図である。
【図９】本発明である移動ロボットで用いる関数Fの形状を示す図である。
【図１０】本発明の効果を示すグラフ図である。
【発明を実施するための形態】
【００２０】
さて、本発明の発明者らは屋外を走行する移動ロボットの開発を行っている。この屋外を走行する移動ロボットとしては、発明者らはパーソナル型のＥＶ（Electric  Vehicle）をターゲットとしている。例えば、進行方向に長く前輪が２輪で後輪が１輪のような、比較的重心が上にある三輪車のような形状のＥＶを想定している。
【００２１】
このような移動ロボットは車道を走行することもあれば歩道も走行することが考えられることから、車道と歩道の間の段差を乗越える状況を想定して開発する必要がある。その場合考えられることは段差での移動ロボットの転倒である。
【００２２】
そこで、段差を乗越える時の移動ロボットの動作を図１で簡単に説明する。
【００２３】
図１は段差乗り越え時の移動ロボット動作を示す図である。
【００２４】
図１において、移動ロボットＡが鎖線Ｂ１で示すように歩道の段差を乗越えようとすると、乗越えるだけの能力が不足する経路となり乗越えることができない（×）。一点鎖線Ｂ２は歩道の段差より受ける力により旋回力が移動ロボットに発生してしまうので、段差乗越え時に旋回方向経路偏差が生じる（×）。
【００２５】
一方、実線Ｂ３では車道から歩道の段差に乗り上げるとき侵入角度を深く取ってから段差を乗り上がることができる（○）。しかし移動ロボットは侵入角度を深くとるため、一旦車道側に大きくカーブしてから歩道に乗り上げることになる。
【００２６】
このように、図１の実線Ｂ３により分かるように移動ロボットは車道の中央線側にはみ出すように大きなカーブを描くため、安全面から極めて危険である。そこで侵入角度を無視して浅い角度で侵入させると重心が比較的上にある開発対象の本移動ロボットは横方向への揺らつきが発生し転倒してしまう可能性がある。
【００２７】
そこで本発明の発明者らは移動ロボットが段差を乗越える場合と段差を下りる場合にその侵入角度、段差高さ、侵入速度に応じて移動ロボットの重心を移動させて衝撃を緩和することを考えたものである。
【実施例１】
【００２８】
以下本発明の一実施例を図２を使って説明する。
【００２９】
図２は本発明の一実施例の概略を説明するための図である。
【００３０】
図２において、移動ロボットＡが矢印方向に進行すると、近づいて来る歩道段差に対する侵入角度、段差の位置と高さ、侵入速度をあらかじめ検出し、この位置と高さに応じて重心の位置をずらすようにしたものである。この重心は移動ロボットが段差に乗り上げたときに傾斜する方向とは逆方向に移動する。
【００３１】
つまり、図２に示すように重心が真ん中にある正常状態の移動ロボットＡは矢印方向に進行する。段差の存在を検出した移動ロボットＡ１は段差によって移動ロボットが傾斜する方向とは逆方向に重心を移動させる。段差に乗り上がった移動ロボットＡ２はただちに重心を逆方向に振り、段差に両輪とも乗った後は重心を中心に戻すことになる。
【００３２】
以下、本発明の一実施例構成を図にしたがって説明する。
【００３３】
図３は本発明の一実施例を備えた移動ロボットの概略機構構成図であり、図３（ａ）はその側面図である。図３（ｂ）はその正面図である。
【００３４】
図４は本発明の一実施例を備えた移動ロボットのシステム構成図である。
【００３５】
なお、本実施例の説明では、単に段差と述べた場合は負方向の段差である溝、穴を含むこととする。
【００３６】
図３（ａ）において、移動体１は移動体本体（筐体）１０の下部に点線で囲んだような移動機構２が備え付けられている。この移動機構２は移動機構制御部３によって制御される。移動機構制御部３とほぼ同じ高さには、移動機構制御部３に対して移動体１周辺の物体との距離を計測させるための環境センサ８が備えられている。点線で囲んだ安定走行装置４は移動体本体１０を安定的に走行させるための装置である。
【００３７】
図３（ｂ）において、移動機構２は移動体１の前方左右それぞれに駆動輪６を備えている。移動機構２は移動機構制御部３からの電気信号を受信することで動作が制御されるモータ５と、このモータ５に接続された駆動輪６とによって構成されている。さらに移動機構２は移動体１の後方中央に方向を受動的に変更することが可能な受動輪７を備えている。
【００３８】
走行安定装置４に取り付けられた段差検出センサ９はレーザスキャナにより路面の段差を検出するものである。アクチュエータ１１は駆動輪６と移動体本体１０の間の距離を変えるものである。このアクチュエータ１１と駆動輪６とは間にバネ１２を介して直列に接続されている。段差通過センサ１３はバネの長さを測定するセンサである。安定化制御部１４と傾斜センサ１５はアクチュエータ１１の長さを制御するものである。これら段差検出センサ９、アクチュエータ１１、バネ１２、段差通過センサ１３、安定化制御部１４、傾斜センサ１５によって走行安定装置４が構成されている。
【００３９】
次に図４を用いて、システム構成を説明する。
【００４０】
図４において、環境センサ８と安定走行装置４とモータ５に接続された移動機構制御部３は計算機として構成されている。移動機構制御部３はその内部にソフトウェアで実装された位置認識部２０、経路計画部２１、モータ制御部２２から構成される。安定走行装置４はアクチュエータ１１と段差検出センサ９と段差通過センサ１３と安定化制御部１４と傾斜センサ１５とによって構成されている。
【００４１】
安定化制御部１４は内部にソフトウェアで実装された段差予測部３１、段差検出部３２、サスペンション制御部３３よりなる計算機として構成されている。移動体１に接続された地図情報データベース（ＤＢ）４０は移動体１の外部に存在する。この地図情報データベース４０は、移動体１の内部に存在するソフトウェアで実装される地図情報入出力部３０を経由して安定走行装置４と移動機構制御部３に接続されている。
【００４２】
移動機構制御部３内部の処理及び動作について説明する。
【００４３】
位置認識部２０は一定周期で環境センサ８より周囲の物体との距離情報と、情報入出力部３０により地図情報を取得する。地図情報を取得した位置認識部２０は周囲の物体との距離情報と取得した地図情報を比較することにより移動体１の地図上における現在位置を算出する。地図情報はある領域をグリッドで分割し、各グリッドは通行可否フラグ、高さ、段差判定フラグを格納するための個別フィールドを所持している。経路計画部２１は一定周期で算出した地図上の現在位置と内部に持つ移動目標位置に基づき目標位置まで移動体１を移動させるためのモータ制御目標値を算出しモータ制御部２２にモータ制御目標値を送信する。
【００４４】
経路計画の算出を図５のフローチャートを用いて説明する。
【００４５】
Ｓ１において経路計画部２１は、A*（エースター）などのアルゴリズム（経路探索手法）を用いて現在位置から目標値までの経路を算出する。
【００４６】
Ｓ２において経路計画部２１は経路長を算出する。
【００４７】
Ｓ３において経路計画部２１は予め設定されている加減速度と最高速度を用いて、Ｓ２で得られた経路長を走破する台形速度パターンを生成する。
【００４８】
Ｓ４において経路計画部２１はモータ制御部２２に時刻に沿ってモータ制御目標値を出力する。モータ制御部２２はモータ制御目標値に追従するようにモータ５を駆動させる。
【００４９】
次に安定走行装置４の内部処理を説明すると、安定走行装置４の処理は段差予測、移動体１の重心位置制御、段差乗越え検出の３つから構成される。
【００５０】
そこで、まずは段差予測について図６のフローチャートを用いて説明する。
【００５１】
段差予測は設定された一定周期で実行される。
【００５２】
Ｓ１０にて段差予測部３１は経路計画部２１より経路と移動体１の速度計画を取得する。
【００５３】
次にＳ１１において段差予測部３１は位置認識部２０から現在位置情報を取得する。
【００５４】
Ｓ１２において段差予測部３１は地図情報入出力部３０から地図情報を取得する。
【００５５】
Ｓ１３において段差予測部３１は段差検出部３２より直近での乗越え済み段差の時刻と高さ情報を取得する。
【００５６】
Ｓ１４において段差予測部３１は段差位置を算出する。具体的には、地図情報に含まれる高さ情報をもとに、画像処理におけるエッジ抽出と同様に、路面高さの変化率の高いグリッドをSobelフィルタ、Laplacianフィルタ、Prewittフィルタなどを用いて抽出して位置を決定する。
【００５７】
Ｓ１５において段差予測部３１は左右車輪がそれぞれ段差と接触する時刻T１RとT１Lを算出する。具体的は、取得している経路計画と算出された段差位置を比較し、経路上で最も近い段差を左右車輪それぞれにいて決定する。次に、取得している速度計画をもとに左右車輪がそれぞれ段差に接触する時間を算出することで、段差接触時刻T１RとT１Lを算出する。また、接触する段差の予測高さH１RとH１Lも地図情報から取得する。
【００５８】
Ｓ１６において取得済みの乗越え済み段差時刻情報と、T１R、T１Lを、乗越え済み段差高さ情報とH１R、H１Lを比較し、それぞれの差が各々設定した値以下に収まっている場合は、算出に用いた段差は乗越え済みでありと判断し、当該段差を除いてからS１４の段差位置の算出からやり直す。
【００５９】
一方、Ｓ１７において、段差検出センサ９より得られた画像から、画像処理により３D情報を取得し、段差の位置を算出する。
【００６０】
Ｓ１８において段差予測部３１は左右車輪がそれぞれ段差と接触する時刻TRとTLを算出する。具体的は、取得している経路計画と算出された段差位置を比較し、経路上で最も近い段差を左右車輪それぞれについて決定する。
【００６１】
次に取得している速度計画をもとに左右車輪がそれぞれ段差に接触する時間を算出することで、時刻T２RとT２Lを算出する。また、段差検出検センサ９より得られた画像から画像処理により左右車輪に次に接触する段差の高さH２R、H２Lを導出する。
【００６２】
Ｓ１９においてT１RとT２R、T１L とT２Lを比較し、接触する時刻が早いほうをTR、TLとして選択する。また、選択したTR、TLに対応する段差高さHR、HLをH１R、H２RとH１L、H２Lから選択する、以上の処理を行うことにより段差予測部３１は左右それぞれの車輪がどの時刻に段差と接触するかと、接触する段差高さを予測することができる。
【００６３】
つぎに段差乗越え検出について説明する。段差検出部３２は段差通過センサ１３と段差予測部３１とに接続され、段差検出部３２は段差通過センサ１３から得られるバネ１２の長さ情報をノッチフィルタに通した後、微分して値を得る。得られた値が一定以上の大きさを持つ場合、段差を通過したと判断する。また得られた値の大きさから通過した段差の高さ情報を得ることができる。
【００６４】
移動体１の重心位置制御について図７のフローチャートを用いて説明する。
【００６５】
Ｓ２０において、図４に示したサスペンション制御部３３は段差予測部３１より左右車輪の段差との接触時刻であるTR、TLと接触する段差の高さHR、HLを取得する。
【００６６】
Ｓ２１において、サスペンション制御部は重心位置移動量Aを計算する。
【００６７】
この重心位置移動量Ａの具体的な計算については図８のフローチャートを用いて説明する。
【００６８】
Ｓ３０において、TRとTLを比較し、先に段差にどちらの車輪が接触するかを求める。先に右車輪が段差に接触する（TR<TL）場合はＳ３１において暫定重心位置移動量A’は数１により算出される。
【００６９】
【数１】
0005432688.tif 000002
【００７０】
一方、左車輪が先に段差に接触する（TL<TR）の場合はＳ３２において暫定重心位置移動量A’は数２により算出される。
【００７１】
【数２】
0005432688.tif 000003
【００７２】
数１、数２におけるK１は正の値を持つスカラー量である。これは、段差乗越えの際に発生するモーメントが、段差と接触した駆動輪６から移動体１の重心までの距離と比例関係にあること。予測せぬ段差に対しては重心移動量が０に近いほど移動体１が段差から受ける衝撃に対して強いということ。これら２つの条件から、予測した段差に応じて必要な分のみ重心を移動させることが望ましいためである。
【００７３】
Ｓ３３において重心位置移動量Aは数３により算出される。
【００７４】
【数３】
0005432688.tif 000004
【００７５】
【数４】
0005432688.tif 000005
【００７６】
ここでK２は数４であらわされるTL-TRを引数に取る関数Fの結果である。
【００７７】
なお、関数Fの形状は例えば図９に示すように、原点を通りTL-TRの絶対値に比例するが、TL-TRの絶対値が一定以上の場合は１に飽和するように設計される。これは、TL-TRが移動体１の横方向振動の収束時間よりも大きい場合には、重心移動量Aを制限する必要がないためである。
【００７８】
以上の手順により重心位置移動量Aは算出される。
【００７９】
一方、図７のＳ２２においてサスペンション制御部３３は傾斜センサ１５より移動体１０のＹ軸回りの傾斜角度θとＹ軸回りの傾斜角速度dθを取得する。さらにＳ２３においてサスペンション制御部３３は数５に従い重心位置移動量Bを算出する
【００８０】
【数５】
0005432688.tif 000006
【００８１】
Q１、Q２はスカラー量であり、あらかじめ設計された値である。Ｓ２４においてサスペンション制御部３３は重心位置移動を行うためのアクチュエータ長さ差分Lを数６により算出する。
【００８２】
【数６】
0005432688.tif 000007
【００８３】
ここでWは移動体１の駆動輪６の間隔であり、HはZ方向の駆動輪６中心と移動体１の重心との距離である。
【００８４】
Ｓ２５において、サスペンション制御部３３はアクチュエータ１１の長さの差分がLとなるようにアクチュエータを制御する。
【００８５】
図１０は本実施例をシミュレーションにて効果確認をした結果を示すグラフ図である。
【００８６】
図１０は重心移動なしの場合と重心移動ありの場合の結果であり、グラフは上半身のY軸回りの傾斜角度θと移動速度の0.01倍で記載したものである。
【００８７】
重心移動ありなしの差は，Y軸回りの傾斜角度θが衝突するタイミングである１.1秒より前に衝突する段差側に動いているかどうかの差である。
【００８８】
重心移動ありなしの二つのグラフから、重心移動を予め行うことで段差乗り上げ時の角度θの揺れのピークを１２％抑えることできることが分かる。
【００８９】
以上、本発明の一実施例を説明したが、本発明はこのような実施例に限定されるものではなく、使用目的と実装上の理由により様々な変形が可能である。
【００９０】
例えば、図４に示したように安定走行装置４は地図情報入出力部３０を備えられているとしたが、段差検出センサ９のみで段差予測を行ってもよい。また、段差検出センサ９を備えず、地図情報のみを用いて段差予測を行ってもよい。また、地図情報データベース４０も移動体１外に実装されているとしたが移動体１内部に備え付けられていてもよい。
【００９１】
さらに段差通過センサ１３をバネ１２の長さをはかるものとして実装したが、段差乗越えを加速度に基づいて検出してもよい。
【符号の説明】
【００９２】
１・・・移動体、２・・・移動機構、３・・・移動機構制御部、４・・・安定走行装置、５・・・モータ、６・・・駆動輪、７・・・受動輪、８・・・環境センサ、９・・・段差検出センサ、１０・・・移動体本体、１１・・・アクチュエータ、１２・・・バネ、１３・・・段差通過センサ、１４・・・安定化制御部、１５・・・傾斜センサ、２０・・・位置認識部、２１・・・経路計画部、２２・・・モータ制御部、３０・・・地図情報入出力部、３１・・・段差予測部、３２・・・段差検出部、３４・・・サスペンション制御部、４０・・・地図情報データベース。
【図１】
0005432688.tif 000008
【図２】
0005432688.tif 000009
【図３】
0005432688.tif 000010
【図４】
0005432688.tif 000011
【図５】
0005432688.tif 000012
【図６】
0005432688.tif 000013
【図７】
0005432688.tif 000014
【図８】
0005432688.tif 000015
【図９】
0005432688.tif 000016
【図１０】
0005432688.tif 000017