#author("2022-03-01T07:08:24+00:00","default:ail-wiki","ail-wiki") #author("2022-03-01T07:11:56+00:00","default:ail-wiki","ail-wiki") [[太田研 公開用Wiki]] #contents *はじめに [#z7a60fe1] **研究背景 [#v8e26a5f] 近年, 自動運転がますます注目を集めており国内のみならず様々な企業や学術機関で盛んに研究が行われている. また, 高速道路での自動運転が可能な自動車や家庭用ロボットなど, より身近な環境で活動するものも増えており一般ユーザーからの関心も集めている. 人間の身近な環境で自動運転を行うには周辺環境や物体を認識し適切な行動を自動的に行う必要が ある. そこで, 実環境下でロボットの自律走行の実験を行う技術チャレンジである「つくばチャレンジ」 が毎年茨城県つくば市で開催されており, この技術チャレンジに参加しロボットが自動的に 経路計画を行うためのシステムを開発する. つくばチャレンジとは, 2007年から毎年つくば市で開催されている実環境下での技術チャレンジ であり, 人々が実際に生活している環境で歩道や公園内, 市街地, 駅などで自律走行をさせて 指定された課題を達成するというものである. **研究目的 [#oc5adbd4] 群馬大学太田研究室は株式会社リバストとの共同チームとして毎年つくばチャレンジに参加 しており, 2台のロボットのうち1台は学生が研究, 開発に使用している. そこで, 学生用 ロボットを用いてつくばチャレンジ2021でのコースの完走を目的としたシステム開発を行った. つくばチャレンジに参加している他のチームはROSやROS2で提供されている既存パッケージ を利用してシステム構築を行っていることも多いが, 既存パッケージではつくばチャレンジ に向かない機能となっていることがある. そこで独自でつくばチャレンジに適した機能を 持ったシステムの開発が必要となってくる. チームで自律走行に必要なシステムをすべて 独自パッケージで開発を行っているが, 本研究ではロボットが障害物や侵入禁止領域を 避けながら最適な方向に進行することを目的とした経路計画の手法の開発を行う. *ロボット構成 [#n7546309] つくばチャレンジ2021で実際に使用したロボットの外観を図1, ハードウェア構成を表1, 自律走行システムの構成を図2に示す. CENTER:#ref(mercury.png,center,40%) CENTER:図1: 使用したロボット CENTER:表1 ハードウェア構成 |CENTER:外形寸法|CENTER:W0.65 x L0.75 x H1.0m| |CENTER:ホイール径|CENTER:300mm| |CENTER:総重量|CENTER:89.0kg| |CENTER:最大速度|CENTER:0.9m/s| |CENTER:動力源|CENTER:DCブラシ付きモータ x 4| |CENTER:センサ|CENTER:3D-LiDAR x 2| |~|CENTER:2D-LiDAR x 1| |~|CENTER:WEBカメラ x 3| |~|CENTER:ソナーセンサー x 7| |~|CENTER:エンコーダ x 4| |~|CENTER:9軸ジャイロセンサ x 1| |CENTER:制御PC|CENTER:Intel i7-8700T| |~|CENTER:(2.4GHz 6Core 12Thread)| |~|CENTER:メモリ16GB| 経路計画を行う上での周辺環境把握には主に3つの位置に取り付けられた, 3D-LiDAR2つと2D-LiDAR1つを使用した. CENTER:#ref(sof.png,center,50%) CENTER:図2: システム構成 これらのモジュールの中から, 自律走行の経路計画に当たるObstacleDetectorモジュールとPathPlannerモジュール の開発を行った. ObstacleDetectorモジュールは点群情報を受け取り障害 物を検出し, 矩形と直線で障害物の表現をする独自メッセージ型のObstacle型で 障害物情報を配信する. PathPlannerモジュールは自己位置, 障害物情報, ウェイポイントの情報から 最適な進行方向を計算しROS2のPose型(2次元座標)で目標座標を配信する. *経路計画 [#kde994ea] **障害物検出 [#v8e26a5a] LiDARから得られた点群情報は一度の通信で最大約4万点にもなり, そのままでは扱いにくく処理も重くなってしまうため, 障害物検出モジュールによって3つのLiDARからの点群情報から障害物と認識したものを少ないデータ量で格納する 処理を行う. 障害物は画像化した点群に対してラベリングと直線検出を行い矩形と直線の2種類のシンボルで表現する. 実際に検出を行った環境と検出結果を図3に示す. 画像の緑の円はロボットの自己位置を表している. CENTER:&ref(pic.png,center,7%); &ref(line.png,center,40%); CENTER:図3: 矩形と直線で表現された障害物 **ポテンシャル法 [#v8e26a5b] ObstacleDetectorモジュールから配信された障害物情報とWayPointManagerモジュールから配信された ウェイポイント情報をPathPlannerモジュールで受け取りポテンシャル場を作り進行方向を決定する. 経路計画を行うためにロボットの近くの環境でどのあたりに近寄りたくないの か, どの方向に進みたいのかを数値化し進むべき方向の高さが低くなるようなポテ ンシャル場を生成する. 障害物を表す辺と直線上のロボットとの最近点を障害物位置とし(xo, yo), 目的地を(xd, yd), 障害物の重みと目的地 の重みを(wo, wd), ロボットの位置を(x, y) としたときの障害物のポテンシャル関 数をPo(x, y), 目的地のポテンシャル関数をPd(x, y), ポテンシャル場の値をP (x, y) で表した式を以下に示す. また, 障害物と目的地の関数においての分散をそれぞれσ2o, σ2dとする. CENTER:#ref(eq.png,center,30%) 実際に生成されたポテンシャル場の一例を図4に示す. CENTER:#ref(potential.png,center,70%) CENTER:図4: ポテンシャル場の一例 こうして生成されたポテンシャル場に対して±90度を5度刻みでポテンシャル スコアの合計値をそれぞれ計算し, スコアの合計値が小さい順に方向とスコアを紐 づけて格納する. 以降述べる走行可能領域によっては格納された方向が除外さ れることがあるが, 基本的にはスコアの一番低い方向に進行する. *走行可能領域マップ [#z7a60fe2] つくばチャレンジでは決められたエリア内であれば好きなように走行すること ができるが基本的にロボットの芝生への侵入は禁止しており, 本研究ではつくば チャレンジに適したシステムの開発を行っていることから芝生への侵入を回避す るシステムの開発が必要となる. そこで, LiDARから得られる反射強度情報を 利用して走行可能領域マップを作成する. LiDARから取得した反射強度情報を可視化した際に反射強度によって色付けさ れた点がどの場所に対応するのかわかりやすくするために, 事前に作成してある環境マップ に色情報を付加していく. 環境マップとは, LiDAR によって取得した高さ 1m以上の物体の点群に対して, より正確に作成するためにマッチングを行いなが ら作成される環境情報であり, 太田研究室では本来ロボットの自己位置を計算する 際にこの環境マップを使用する. 環境マップから反射強度情報を付加するエリアのみを切り取った画像を図5に 示す. また, HSV表色系 CENTER:#ref(rawsurface.png,center,50%) CENTER:図5: 環境マップ画像 CENTER:#ref(surface.png,center,50%) CENTER:図6: 色情報付加後 図6を見ると人が見る限りでは道と芝生の違いがわかる程度の色付けができて いることが確認できたので自律走行での芝生領域回避を試みる. この画像のままで は通路上でも多少の色の違いがあるので多少の反射強度の違いは無視できるよう な手法である必要がある. そのため, ポテンシャル法で芝生領域の 回避を試みた時, 反射強度の違いをポテンシャル場に大きく反映させた場合, ルー ト上をきれいに進行することは難しくなり通路上であっても侵入不可能と判断し てしまうことがある. 反対に, 反射強度の違いによるポテンシャル場への影響を小 さくした場合は障害物を回避した際に芝生への侵入が容易になってしまう問題が ある. したがって, 走行不可能な領域(芝生領域) を表す2値画像を作成し, 自律走行中 は走行不可能な領域内の進行方向の候補を完全に削除する手法をとる. 路面の反射強度を2値化した画像を図7に示す. CENTER:#ref(binary.png,center,50%) CENTER:図7: 2値化画像 ノイズ除去を行った最終的な走行可能領域マップを図7に示す. CENTER:#ref(travelable.png,center,50%) CENTER:図8: 走行可能領域マップ ポテンシャル法によってポテンシャル値の合計スコアの低い順に格納さ れた進行候補を, 走行不可能領域(白い領域) と被っていないか確認する. もし進行 候補の一定距離先の座標が走行不可能領域内であった場合はその進行方向を削除 し, 次にポテンシャルスコアの低い進行方向の候補というように確認していき, 進 行方向の一定距離先の座標が走行不可能領域と被らなかったときにその方向に進 行に進行する. *実験と考察 [#kde994eb] **実験結果 [#v8e26a5b] つくばチャレンジでは, 本番である本走行とは別に自由に走行し実験をすること ができる実験走行という機会が用意されている. 実験走行は数ヶ月に渡り何度か機会が与えられ, 群馬大学リバストチーム(2) は 全7 回の実験走行会に参加し, 最終的には約2.5kmのコースの完走をすることがで きた. ただし, それまでの実験中に自律走行が失敗することがあった. その中でも 経路計画に関連しており実験走行期間内に完全な解決に至らなかったものを以下 に示す. -高さの低いロボットの追い抜時の死角 -三角コーンの土台部分への乗り上げ -勾配が急な坂や段差での路面検出 -障害物回避時の芝生への侵入 また, 本走行では走行開始から5分18秒地点でのリタイアとなってしまった. 原因としては, 排他制御の不適切な 使用によるプロセスの停止によってロボットが完全停止したことであった. **考察 [#v8e26a5c] 本走行の結果はプログラム内の記述ミスによって起こったバグでリタイアとなっ てしまったが, 実験走行ではコースの完走ができたことから, 厳しい環境でなけれ ばコースを完走することができる自律走行システムを開発できたと考えられる. しかし, 本走行中にバグが発生してしまったことや先に述べた解決に至らなかっ た問題点等を考慮するとまだ改良をしていく必要があると考えられる. *結言 [#kde994ec] 本論文では, つくばチャレンジ2021 でロボットが障害物や侵入禁止領域を避け ながら最適な方向に進行することを目的とした経路計画の手法について述べた. 障害物検出とポテンシャル法による進行方向選択, また走行可能領域マップの作 成を行うシステムをそれぞれ開発した. 障害物検出に関しては, 点群情報を矩形と直線で表して情報量を大幅に削減する ことによって高速なシステムを開発した. ポテンシャル法による進行方向選択は, 障害物回避の調整が容易でより安定した回避を可能にした. 走行可能領域マップに関しては, 反射強度情報によって芝生領域を回避 するシステムを開発した. つくばチャレンジの実験走行会では様々な課題が見 つかりその都度対処ていったことで自律走行でコースの完走をすることができた. つくばチャレンジ2021 の本走行では排他制御 の不適切な使用によるプロセスの停止によってロボットが完全停止したことでリ タイアとなってしまった. つくばチャレンジまでに実装が間に合わなかった走行可 能領域マップによる芝生領域回避に関しては, 群馬大学桐生キャンパス構内で実験 を行い, 芝生の回避が可能であることがわかった. 今後の課題としては, つくばチャレンジでの走行可能領域マップによる芝生回避 の実験とより安定した経路計画が行えるシステムの開発が挙げられる. また, 実験 走行の時間内でシステムの調整に時間を多く使ってしまったことによってデバッグ や実験を行う時間が削られ, 結果, 本走行ではバグによるリタイアになってしまっ たことから今後はより現場での調整にかける時間が少なくなるようなシステムを 開発していきたい. *参考文献 [#kde994ed] [1] Y. Kanuki, N. Ohta, ”Development of Autonomous Robot with Simple Navi- gation System for Tsukuba Challenge 2015”, J. of Robotics and Mechatronics, Vol.28, No.4, pp.432-440, 2016 &br; [2] 鹿貫 悠多, 村上 公介, 斎藤 僚太, 藤澤 大暉, 古田 樹男, 太田 直哉,”自律走行ロ ボット「Mercury(FullCustomModel)」の開発”, つくばチャレンジ 2018 参加 レポート集, pp.39-43, 2019 &br; [3] 鹿貫悠多, 中村弘樹, 須田雄大, 山田竜也, 太田直哉,“ つくばチャレンジ2015 参加報告書 ”, つくばチャレンジ 2015 参加レポート集, pp.89-96 , 2016 &br; [4] 彌城 祐亮, 江口 和樹, 岩崎 聡, 山内 由章, 中田 昌宏, ”ポテンシャル法による ロボット製品の障害物回避技術の開発”, 三菱重工技報, Vol.51 ,No.1 , 新製品・ 新技術特集, pp.40, 2014 &br; [5] 村上公介“つくばチャレンジに向けた移動ロボットの自律走行システムの開 発”, 群馬大学大学院 理工学府 理工学専攻電子情報・数理教育プログラム, 修 士論文 30 &br;