自律走行の概要
1. 自律走行とは
自律走行とは、ロボットが目的地まで自律的に走行すること
-
ロボットが目的地に行くとはどういうことか?
⇒人で例えると目隠しされた状態で、知らない場所(A地点)に連れて行かれ、そこから目的地(B地点)まで行くこと -
その時に考えることは・・・
① 現在地を確認する
② 目的地を確認する
③ 現在地から目的地に向かう経路を調べる
④ 経路をもとに目的地に向かう
①〜④全てにおいて、地図またはランドマークが必要
2. 自律走行には何が必要か?
では地図がある状態で行動をする時どうするか?
① 現在地を確認する
→地図全体から自分のいる位置を確認する
⇒(大域的)自己位置推定(初期位置を与えられる場合不要)
② 目的地を確認する
→地図全体から目的地を確認する
⇒Goal位置推定(目的地が直接与えられる場合不要)
③ 現在地から目的地に向かう経路を調べる
→地図情報から経路を考える
⇒(大域的)経路計画(決まった経路を与えられる場合不要)
④ 経路をもとに目的地に向かう
→地図と経路を確認しながら目的地に向かう
⇒(局所的)自己位置推定、(局所的)経路計画(経路追従、障害物停止・回避)
3. 自律走行に必要なソフトウェア
- 地図(地図作成)
自律走行を行う環境の地図を作成する- ロボットを走行させて地図を作成する(SLAM(Simultaneous Localization and Mapping))
- 図面からの手書きで地図を作成する
- 自己位置推定
現在ロボットが地図内のどこにいるか推定する - 経路計画
現在地から目的地までの経路を計画する - 経路追従
計画した経路に沿うようにロボットを制御する - 障害物停止・回避
走行中に現れる障害物を検知し、停止・回避動作を行う
4. 基本的な自律走行までの手順
基本的な自律走行までの手順は下記のようになります。
①まず、地図を用意する(SLAMまたは手書きで地図作成)
②地図を読み込み管理する
③地図中の初期位置を設定(推定)する
④(局所)自己位置推定し続ける
⑤目標位置を設定する
⑥地図上で(大域)経路計画を行う
⑦経路に沿って移動する(経路追従)
⑧障害物を回避しながら目的位置に移動
⑨目標位置に到達する(⑤に戻る)
これを図に直すと左図のようになります。
また、【3章】で使用したパッケージやツールを当てはめると右図になります。