3_車両のナビゲーション(Navigation)
実装方針
前節の屋内環境で、シャーシ車両のナビゲーションを実現します。
具体的な方針:前節で作成した地図を読み込み、シャーシ車両の初期位置と向きを設定したうえで目標位置と向きを指定すると、シャーシ車両がナビゲーションを行います。
操作手順
ロボットへのリモート接続
準備する機材:
ステップ 1:回路を接続します。
ステップ 2:プログラムを実行して動作を確認します。具体的な操作手順は以下のとおりです。
-
「Ctrl+T」でターミナルを開きます:
-
開いたターミナルから ssh で車両に接続します(パスワードは sunrise):
ssh sunrise@192.168.xx.xx
シャーシと LiDAR ドライバの起動
- 下位ドライバをリモートで起動します。今回はシャーシと LiDAR を起動します。
シャーシを起動するには、ターミナルで次のコマンドを入力します:
ros2 launch robot_driver robot_driver_launch.py
LiDAR を起動するには、ターミナルで次のコマンドを入力します:
ros2 launch ydlidar_ros2_driver ydlidar_launch.py
- urdf 設定ファイルを起動します。ローカルの VScode で開いたターミナルで、次のコマンドを入力します:
ros2 launch fishbot_bringup bringup_quick.launch.py
- キーボードによる車両操作コマンドを起動します。ローカルの VScode で開いたターミナルで、次のコマンドを入力します:
ros2 run keyboard_control keyboard_control
シャーシのナビゲーション開始
- ナビゲーションファイルを起動します。ローカルの VScode で開いたターミナルで、次のコマンドを入力します:
ros2 launch fishbot_navigation2 navigation2.launch.py
- 2D Pose Estimate で車両の初期位置を指定します。

- 2D Goal Pose で車両の到達目標位置を指定し、車両が目標点に到達するか観察します。
屋内環境で、車両の目標位置を 3 回に分けて指定します。
まず 1 つ目の目標でドアの前まで車両を移動させ、次に別の部屋に入る目標点を指定し、最後に出発点を目標点として指定します。
(1) 1 回目の目標点と向きの指定:Nav2 Goal をクリックし、目標点(図の位置付近)をクリックします。

(2) 出発点から目標点まで軌跡線が表示されます。車両がその軌跡線に沿って移動するかを観察し、また車両の移動中に周囲の地図がリアルタイムで更新されることも確認します。

(3) 車両が経路に沿って目標点まで移動できることを確認します(下図参照)。

(4) 続けて次の目標点を指定し、車両が経路に沿って目標点まで進むことを確認します。

(5) 最後に次の目標点を指定し、車両を戻らせます。

ドキュメント