はじめに


前回までは、初心者向けの「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をうまく使いこなすスキル」が必須になりそうですね。

さてと、せっかくシミュレータが準備できたので、次は、何かシミュレーションしますか。