(57)【要約】【課題】  経路計画後、実際に移動する際に障害物回避等で軌道が変化した場合でも、移動時の計算負荷を増大させずに最適な軌道を移動できる移動ロボットを提供する。【解決手段】  地図情報から通路のコーナーの情報を含んだノードを抽出し、各コーナーにおいて障害物干渉チェックを行い、移動ロボットが円弧軌道でコーナーを移動することができる通過領域と円弧軌道の中心位置と円弧軌道終了点での移動ロボットの姿勢とを求めるコーナー軌道情報生成部１６と、地図情報およびコーナー軌道情報生成部１６が出力する情報に基づいて、ノードごとに通過領域と円弧軌道の中心位置と円弧軌道終了点での移動ロボットの姿勢とを登録して、地図情報を修正し、経路計画部１３へ出力する地図情報修正部１７を備えた。【選択図】図１
2007328486.tif 000002
【特許請求の範囲】
【請求項１】
外部環境を検知する環境認識センサと、前記環境認識センサの情報に基づいてグラフ表現による地図情報を生成する地図生成部と、目的地までの経路情報を計画する経路計画部と、前記環境認識センサと前記経路計画部からの情報に基づき移動を制御する移動制御部と、前記移動制御部からの移動指令に基づき移動機構を駆動する駆動装置とを備え、施設内の通路を移動する移動ロボットにおいて、
前記地図情報から前記通路のコーナーの情報を含んだノードを抽出し、前記各コーナーにおいて障害物干渉チェックを行い、前記移動ロボットが円弧軌道で前記コーナーを移動することができる通過領域と前記円弧軌道の中心位置と円弧軌道終了点での前記移動ロボットの姿勢とを求めるコーナー軌道情報生成部と、
前記地図情報および前記コーナー軌道情報生成部が出力する情報に基づいて、前記ノードごとに前記通過領域と前記円弧軌道の中心位置と円弧軌道終了点での前記移動ロボットの姿勢とを登録して、前記地図情報を修正し、前記経路計画部へ出力する地図情報修正部を備えたことを特徴とする移動ロボット。
【請求項２】
前記障害物干渉チェックは、前記移動ロボットを円領域で近似し、前記円領域が通過する範囲に障害物が存在するか否かをチェックすることを特徴とする請求項１記載の移動ロボット。
【請求項３】
前記地図情報修正部は、同一の前記コーナーに対する前記移動ロボットの進行方向に応じて前記円弧軌道に関する情報を登録して、前記地図情報を修正することを特徴とする請求項１記載の移動ロボット。
【請求項４】
前記地図情報修正部は、前記地図情報を修正する際に、前記移動ロボットが前記通過領域を最も大きい半径で通過するときの円弧軌道の曲線長の情報を登録し、
前記経路計画部は、前記円弧軌道の曲線長をコスト評価の対象として経路探索を行うことを特徴とする請求項１記載の移動ロボット。
【請求項５】
前記移動制御部は、前記通過領域に入った際の前記移動ロボットの位置から円弧軌道を生成することを特徴とする請求項１記載の移動ロボット。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、工場などの施設内において、環境を認識して地図を生成し、生成された地図に基づいて経路を計画して自律的に移動する移動ロボットに関する。
【背景技術】
【０００２】
従来の移動ロボットの制御方法として、動作環境を表す地図情報を生成し、生成された地図情報をもとに、移動開始点から目的地までの経路を計画し、計画された経路から実際に移動させる軌道を決定する経路形状の設計を行うものがある。経路形状の設計に関しては、直線と円弧を用いて操舵系の遅れを考慮した設計を行っている（例えば、非特許文献１参照）。
【０００３】
また、走行可能領域からはみ出すことなく滑らかな軌道を生成するためにスプライン曲線を用いて設計しているものもある（例えば、特許文献１参照）。
図７は、特許文献１の軌道生成装置の構成を示したブロック図である。図７において、１１１は環境地図情報記憶手段であり、環境地図に対応した図形、交差点および道路の位置、交差点と道路のつながり具合、道幅、通行可能領域などの環境地図情報を記憶しておくものである。１１２は環境地図情報読み取り手段であり、環境地図情報記憶手段１１１に記憶されている環境地図情報を読み取り、それを順路指示手段１１３および主要通過点作成手段１１４に入力するものである。
【０００４】
順路指示手段１１３は、環境地図情報読み取り手段１１２から入力された環境地図をその表示部に表示させて、その表示された環境地図上に順路が指示できるとともに、その指示された順路を主要通過点作成手段１１４に入力するものである。主要通過点作成手段１１４は、順路指示手段１１３から入力された始点、通過交差点、終点および環境地図情報読み取り手段１１２から入力された環境地図情報から指定経路上の接点、すなわち交差点および道路の接続関係を示す点を生成する。
１１５はスプライン軌道生成手段であり、主要通過点作成手段１１４および主要通過点修正手段１１７により生成、修正された主要通過点を通るようなスプライン関数の作成を行う。１１６は軌道評価手段であり、スプライン軌道生成手段１１５で生成されたスプライン軌道が道路から出ていないか評価し、１ヶ所でも出ていれば不適当と判定する。主要通過点修正手段１１７は、軌道評価手段１１６により、軌道評価において不適当と判定された場合、主要通過点の追加、変更を行って修正する。
【０００５】
一方、幾何的な地図情報からボロノイグラフを生成して経路計画を行い、計画された経路情報を分割して、分割された線分における制御点の位置を経路長、滑らかさ、衝突可能性を評価して変化させるという手法もある（例えば、特許文献２参照）。
図８は、特許文献２において、計画された経路を最適化する処理手順を示したフローチャートである。図８において、ステップ１２１では、経路線分の個数Ｍ（Ｍは自然数）と経路線分の番号ｉ（ｉは自然数、ただし１≦ｉ≦Ｍ）の初期値ｉ＝１を設定する。ステップ１２２では、ｉ番目の経路線分とｉ＋１番目の経路線分を取り出す。ステップ１２３では、これらの経路線分を制御点で分割する。ｉ＞１のときは、ｉ＋１番目の経路線分だけ分割し、ｉ番目の経路線分の制御点は、１つ前のステップで分割したものを用いる。
ステップ１２４では、経路線分において、経路長、滑らかさ、衝突可能性で定義された評価関数が準最適になる制御点の位置を確率的に求める。ただし、ｉ番目の経路線分の始点とｉ＋１番目の経路線分の終点は固定し、その間にある制御点の位置だけを変化させる。 ステップ１２５では、ｉ番目の経路線分を更新経路に加える。なお、ｉ＋１番目の経路線分は、次の繰り返しで、もう一度最適化処理が施される。ステップ１２６でｉを１増やし、ステップ１２７でｉ＝Ｍになったら終了し、ｉ＜Ｍならステップ１２２に戻る。
【０００６】
このように、従来の移動ロボットでは、地図情報をもとに、移動開始点から目的地までの経路を計画して、計画された経路情報から実際に移動させる軌道を決定する、という手順がとられていた。
【０００７】
【非特許文献１】ロボット学会誌２巻３号、１９８４年６月、ｐ．４６−５５
【特許文献１】特許２６５１６６２号公報（第４−７頁、図１）
【特許文献２】特開２００５−０３２１９６号公報（第４−１３頁、図１１）
【発明の開示】
【発明が解決しようとする課題】
【０００８】
しかしながら、非特許文献１の移動ロボットの制御方法は、直線と円弧を用いて決められた軌道に沿って移動するように経路形状の設計を行うという手順をとっているので、計画された経路上を移動する際に、例えば障害物回避のため実際の軌道が変化すると、予め決められた軌道に復帰する動作が必要となり、最適な軌道を移動することができない。
特に建物内の通路のコーナー（曲がり角）手前の障害物を回避し、それから軌道に復帰してコーナーを曲がるようなときは、蛇行するような軌道を取り、経路長が長くなったり、曲率の変化が多くなったりするので移動時間が長くなるという問題があった。
【０００９】
特許文献１の移動ロボットの制御方法についても、地図上の障害物に衝突しないよう滑らかな軌道に沿って移動するように経路形状の設計を行うという手順をとっているので、非特許文献１と同様、計画された経路上を移動する際に、障害物回避等で実際の走行軌道が変化すると、予め決められた軌道に復帰する動作によって最適な軌道を移動することができないという問題があった。
【００１０】
また、特許文献２の移動ロボットの制御方法では、計画された経路情報を分割して、分割された線分における制御点の位置を、経路長、滑らかさ、衝突可能性について評価して確率的に求めるように経路形状の設計をするという手順をとっており、必ずしも最適な軌道が得られないという問題があった。また、衝突可能性を評価するときに、地図のセル占有度を利用しているため、計画された経路上を移動する際に障害物回避等で衝突可能性を評価しながら実際の軌道を変化させる場合には、セル情報の計算により、計算負荷が増大するという問題があった。
【００１１】
本発明はこのような問題点に鑑みてなされたものであり、経路計画後、実際に移動する際に障害物回避等で軌道が変化した場合でも、移動時の計算負荷を増大させずに最適な軌道を移動できる移動ロボットを提供することを目的とする。
【課題を解決するための手段】
【００１２】
上記問題を解決するため、本発明は、次のようにしたのである。
請求項１に記載の発明は、外部環境を検知する環境認識センサと、前記環境認識センサの情報に基づいてグラフ表現による地図情報を生成する地図生成部と、目的地までの経路情報を計画する経路計画部と、前記環境認識センサと前記経路計画部からの情報に基づき移動を制御する移動制御部と、前記移動制御部からの移動指令に基づき移動機構を駆動する駆動装置とを備え、施設内の通路を移動する移動ロボットにおいて、前記地図情報から前記通路のコーナーの情報を含んだノードを抽出し、前記各コーナーにおいて障害物干渉チェックを行い、前記移動ロボットが円弧軌道で前記コーナーを移動することができる通過領域と前記円弧軌道の中心位置と円弧軌道終了点での前記移動ロボットの姿勢とを求めるコーナー軌道情報生成部と、前記地図情報および前記コーナー軌道情報生成部が出力する情報に基づいて、前記ノードごとに前記通過領域と前記円弧軌道の中心位置と円弧軌道終了点での前記移動ロボットの姿勢とを登録して、前記地図情報を修正し、前記経路計画部へ出力する地図情報修正部を備えたことを特徴とする。
請求項２に記載の発明は、前記障害物干渉チェックは、前記移動ロボットを円領域で近似し、前記円領域が通過する範囲に障害物が存在するか否かをチェックすることを特徴とする。
請求項３に記載の発明は、前記地図情報修正部は、同一の前記コーナーに対する前記移動ロボットの進行方向に応じて前記円弧軌道に関する情報を登録して、前記地図情報を修正することを特徴とする。
請求項４に記載の発明は、前記地図情報修正部は、前記地図情報を修正する際に、前記移動ロボットが前記通過領域を最も大きい半径で通過するときの円弧軌道の曲線長の情報を登録し、前記経路計画部は、前記円弧軌道の曲線長をコスト評価の対象として経路探索を行うことを特徴とする。
請求項５に記載の発明は、前記移動制御部は、前記通過領域に入った際の前記移動ロボットの位置から円弧軌道を生成することを特徴とする。
【発明の効果】
【００１３】
請求項１から３、５に記載の発明によると、コーナーの手前で障害物回避を行っても通過可能領域内を円弧軌道で移動すればよく、予め決められた軌道に復帰することなく移動することができるため、コーナー等の軌道の曲率が大きいところでも移動時の障害物回避に対応した軌道を生成することができ、安全かつ滑らかで最適な軌道を移動することができる。また、請求項４に記載の発明によると、コーナーにおける経路長を評価して経路を計画することにより、最短経路を移動することができ、さらに最適な軌道を移動することができる。
【発明を実施するための最良の形態】
【００１４】
以下、本発明の具体的実施例について、図に基づいて説明する。
なお、本発明の移動ロボットは、建物内の通路に沿って移動するものとする。
【実施例１】
【００１５】
図１は、本発明の移動ロボットの内部構成を示すブロック図である。
図において１１は移動ロボットに搭載された環境認識センサであり、移動ロボットの周辺の物体を認識し、物体との距離を計測することにより外部環境を検知する。１２は地図生成部であり、環境認識センサ１１からの情報および移動制御部１４からのロボット位置情報に基づいて地図情報を生成する。
地図情報とは、建物内の通路の十字路、Ｔ字路、Ｌ字路といった各種コーナー（曲がり角）における交差点（図３参照）や停留所等をノードとし、道幅等の通路情報やノードの繋がり具合についての情報を持つアークやエッジからなるグラフ表現である。地図情報を生成するために、予め建物内の通路に沿って移動ロボットを手動または自動で移動させ、その際の環境認識センサ１１からの情報および移動制御部１４からのロボット位置情報を収集しておく必要がある。また、地図情報は図示しない移動ロボット内のメモリに保存される。
１３は経路計画部であり、地図生成部１２が生成した地図情報およびユーザより与えられる移動開始地点および目的地の位置情報に基づいて、目的地までの経路情報を探索して経路列を生成する。
【００１６】
１４は移動制御部であり、環境認識センサ１１からの情報、経路計画部１３からの情報、および後述する駆動装置１５からのエンコーダ応答などの移動応答の情報をもとに、駆動装置１５に対し車輪等の軸速度を移動指令として送信して移動ロボットを制御する。
例えば移動ロボットが走行中、その進路上に障害物を検出した場合にはこれを回避するように走行と操舵を行う。
１５は移動ロボットに搭載された駆動装置であり、図示しないアクチュエータ、エンコーダおよびその制御装置と、アクチュエータの出力軸に接続された車輪と操舵軸との組み合わせを複数有する移動機構から構成され、移動機構は移動制御部１４からの移動指令に基づき駆動される。
【００１７】
１６はコーナー軌道情報生成部であり、地図生成部１２で生成された地図情報をもとに建物内の通路の各コーナーにおいて障害物干渉チェックを行って、移動ロボットが円弧軌道で移動することができる領域の情報を求めて出力する。出力する情報は、通過領域、円弧軌道の中心位置および円弧軌道終了点における移動ロボットの姿勢である。
１７は地図情報修正部であり、地図生成部１２で生成された地図情報に対し、コーナー軌道情報生成部１６が出力する情報を付加してグラフ表現の地図情報を修正する。
本発明は、コーナー軌道情報生成部１６および地図情報修正部１７を備えたことに特長がある。
【００１８】
図２は本発明の移動ロボットに関し、コーナー軌道情報生成部１６においてコーナーの軌道情報を生成し、地図情報修正部１７において地図情報を修正する処理手順を示すフローチャートである。この図を用いて本発明を順を追って説明する。
【００１９】
始めにステップ１で地図生成部１２から地図情報を取得するとともに、「ノード番号＝１」と設定し、初期化する。続いて地図情報の中のノードの数を読み取る。
次にステップ２では、ステップ１にて読み取られたノードのうち、１つのノード番号のノード情報を取り出す。後述するように、このステップ２はループによって地図情報中のノードの数だけ繰返し行われる。このノード情報の中には、交差点の位置情報や交差点を曲がるときに使用するコーナー環境情報が含まれており、次のステップ３で使用される。
【００２０】
ステップ３では、ステップ２にて取り出したノード情報の中からコーナー環境情報を取り出す。コーナー環境情報とは、各コーナーにおいて図３に示すように定義されるコーナー頂点、コーナー対角頂点に関する情報である。コーナー頂点、コーナー対角頂点は、コーナーを曲がる際の障害物の位置情報を表し、コーナーに対し、コーナー頂点、コーナー対角頂点とで１組の情報として取り扱うこととする。
さらに、図３のようなＴ字路の場合は、コーナー１、コーナー２というようにコーナーが２つある。各コーナーには、コーナー番号が割り振られる。
つまりコーナー環境情報には、各ノードにおけるコーナーの数および各コーナーにおけるコーナー頂点・対角頂点位置情報が含まれている。
【００２１】
ステップ４では、コーナー番号に対応した情報を参照して各コーナーにおける移動ロボットの円弧軌道の開始ラインおよび終了ラインを求める。開始ラインおよび終了ラインは、図４のように通路方向に対し垂直で、交差点からそれぞれのラインまでの距離は等しいとする。
ステップ５では、開始ラインと終了ラインとの交点を中心とした基準円弧軌道を求める。円弧の半径は、交差点から開始ラインへ引いた垂線と開始ラインとの交点を点Ｓ、交差点から終了ラインへ引いた垂線と終了ラインとの交点を点Ｇとすると、中心（開始ラインと終了ラインとの交点）から点Ｓまたは点Ｇまでの距離として求められる。これにより、円弧軌道中心位置および基準円弧半径が求まる。
ステップ６では、図４に示すように上からみた移動ロボットを半径Ｒの円領域で近似し、移動ロボットが円弧軌道を描いた場合に周辺の物体に干渉することなくコーナーを通過できる領域（通過領域）を障害物干渉チェックを行って求めるようにする。
障害物干渉チェックでは、図５に示すように、通過領域のコーナー頂点側およびコーナー対角頂点側の境界線を示す境界線半径を求める。
コーナー頂点側については、移動ロボットが基準円弧軌道を通った時に描く通過領域のコーナー頂点側の境界線である円弧の半径ｒｉを小さくしていき、周辺の物体と干渉しないような最小半径ｒｉ’を求める。
そのために、まず、コーナー頂点を通り、円弧軌道中心位置を中心とした円弧半径をｒｃと定義する。ｒｃはコーナー頂点と円弧軌道中心位置の距離であるが、図５の場合は円弧軌道中心位置がコーナー頂点と一致しているので、ｒｃは０となる。
さらに、干渉を回避するための半径余裕分のパラメータｒαを設ける。具体的なｒαの値は、数十[mm]程度である。これらの値を用いて干渉を回避するためのｒｉの条件を求めると次式のようになる。
【００２２】
（ｒｃ＋ｒα）≦ｒｉ      ・・・  式（１）
【００２３】
よって、周辺の物体と干渉しないための最小半径ｒｉ’は、
【００２４】
ｒｉ’＝（ｒｃ＋ｒα）    ・・・  式（２）
【００２５】
となる。
コーナー対角頂点側についても同様に、コーナー対角頂点側の境界線の半径ｒｏを大きくしていき、コーナー対角頂点の位置情報に基づいた障害物データをチェックして周辺の物体と干渉しないような最大半径ｒｏ’を求める。すなわち、コーナー対角頂点を通り、通路方向に平行な直線が開始ライン、終了ラインと交わる点をそれぞれ点Ａ、点Ｂとし、円弧軌中心位置を中心として点Ａを通る円弧半径をｒａ、円弧軌中心位置を中心として点Ｂを通る円弧半径をｒｂとし、ｒａ、ｒｂのうち小さい方の半径をｒｃ’とするとｒｏ’は次の式のようになる。
【００２６】
ｒｏ’ ＝（ｒｃ’−ｒα）    ・・・  式（３）
【００２７】
この結果、通過領域が開始ライン、終了ライン、最大半径ｒｏ’、最小半径ｒｉ’の組として得られる。
さらに、円弧軌道終了点での移動ロボットの姿勢は終了ラインに垂直で進行方向向きとなるようにする。
【００２８】
ステップ７で現在のノード内の全コーナーについて処理が完了したかどうか判定し、完了した場合はステップ８へ進み、未完の場合はコーナー番号を更新し、ステップ３に戻る。
ステップ８で全ノードについて処理が完了したか判定し、完了した場合はステップ９に進み、未完の場合はノード番号を更新し、ステップ２に戻る。
ステップ９では、ステップ８までで求められた通過領域、円弧軌道中心位置および円弧軌道終了点における移動ロボットの姿勢をノード情報に登録する。この際、ステップ８までで求められた情報は、コーナーをある一方方向（一進行方向）から通過する際の情報である。例えばロボットの姿勢は、同一のコーナーを通過する際であっても往路と復路で異なるので、そのような情報はそれぞれに対応したデータを登録する。
【００２９】
以上述べたような手順で地図情報を修正してから、経路計画部１３にて、最大半径すなわち図６のように（ｒｏ’−Ｒ）を半径とした円弧軌道で通過領域を通過したときの円弧軌道の曲線長をコスト評価に含んだ経路探索を行って経路を計画する。そして移動制御部１４にて、計画された経路情報をもとに、移動制御を行う。さらに、コーナーにおいては、円弧軌道中心位置に基づいて、通過領域に入った際のロボットの位置から円弧軌道を生成するように移動制御を行うようにする。
これにより、経路計画後、実際にロボットが移動している最中に障害物回避等で軌道が変化した場合でも移動制御部の計算負荷を増大させずに最適な軌道を移動することができるのである。
【図面の簡単な説明】
【００３０】
【図１】本発明の移動ロボットの構成を示すブロック図
【図２】本発明の処理手順を示すフローチャート
【図３】本発明のコーナーを説明する図
【図４】本発明の通過領域を説明する図
【図５】本発明の障害物干渉チェックの方法を説明する図
【図６】本発明にて最大半径でコーナーを通過する様子を説明する図
【図７】特許文献１の方法を実施するための構成を示したブロック図
【図８】特許文献２の方法の処理手順を示すフローチャート
【符号の説明】
【００３１】
１１  環境認識センサ
１２  地図生成部
１３  経路計画部
１４  移動制御部
１５  駆動装置
１６  コーナー軌道情報生成部
１７  地図情報修正部
１１１  環境地図情報記憶手段
１１２  環境地図情報読み取り手段
１１３  順路指示手段
１１４  主要通過点作成手段
１１５  スプライン軌道生成手段
１１６  軌道評価手段
１１７  主要通過点修正手段
【図１】
2007328486.tif 000003
【図２】
2007328486.tif 000004
【図３】
2007328486.tif 000005
【図４】
2007328486.tif 000006
【図５】
2007328486.tif 000007
【図６】
2007328486.tif 000008
【図７】
2007328486.tif 000009
【図８】
2007328486.tif 000010