はじめに
前回までは、初心者向けの「TurtleSim」で遊んでいました。
今回は少しステップアップして、TurtleBot3をインストールしてシミュレーション上で動かしてみます。
ただし、やっぱりトラブルはつきもの…。
エラーにぶつかりつつも、ChatGPTさんの力を借りながら何とか動かすところまでできました。
TurtleBot3をインストールする
まずはROS 2 Jazzy環境を前提に進めます。
ステップ1:ROS 2のセットアップ
source /opt/ros/jazzy/setup.bash
ステップ2:作業用ワークスペースを準備
mkdir -p ~/turtlebot3_jazzy_ws/src
cd ~/turtlebot3_jazzy_ws/src
# GitHubからJazzy対応ブランチを取得
git clone -b jazzy https://github.com/ROBOTIS-GIT/turtlebot3.git
git clone -b jazzy https://github.com/ROBOTIS-GIT/turtlebot3_msgs.git
git clone -b jazzy https://github.com/ROBOTIS-GIT/turtlebot3_simulations.git
cd ~/turtlebot3_jazzy_ws
ステップ3:依存パッケージをインストール
sudo apt update
sudo apt install python3-colcon-common-extensions
sudo apt install ros-jazzy-gazebo-* ros-jazzy-ros-gz
不足があれば、エラーメッセージを見ながら追加でインストールします。
ステップ4:ビルド
cd ~/turtlebot3_jazzy_ws
colcon build --symlink-install
ビルドエラーと解決
ここでビルドが止まってしまいました。
エラーログを見ても僕にはさっぱり…。ChatGPTさんに相談すると、原因は以下でした。
👉 原因:dynamixel_sdk パッケージが無い
解決方法
①APTでインストール(推奨)
sudo apt install ros-jazzy-dynamixel-sdk
②依存関係を解決して再ビルド
cd ~/turtlebot3_jazzy_ws
rosdep install --from-paths src -y --ignore-src
colcon build --symlink-install
これで無事、ビルド完了!
シミュレーションを実行してみる
1. モデル指定
export TURTLEBOT3_MODEL=burger
(毎回入力が面倒なら ~/.bashrc に追記すると便利です)
2. Gazeboで起動
source ~/turtlebot3_jazzy_ws/install/setup.bash
ros2 launch turtlebot3_gazebo turtlebot3_world.launch.py
Gazebo上にTurtleBot3が現れます。
3. キーボードで操作
別ターミナルを開いて:
source ~/turtlebot3_jazzy_ws/install/setup.bash
export TURTLEBOT3_MODEL=burger
ros2 run turtlebot3_teleop teleop_keyboard
これで、カーソルキー操作でTurtleBot3を動かせます。
(シミュレーションの画像)
まとめ
今回、TurtleBot3をGazebo上で動かすところまでできました。
正直、エラー解決は自力では難しかったですが、AIに助けてもらえれば何とか前進できます。
これからのエンジニアには「AIをうまく使いこなすスキル」が必須になりそうですね。
さてと、せっかくシミュレータが準備できたので、次は、何かシミュレーションしますか。
