0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

ROS2 Humble環境構築 #2 Turtlebot3編

Posted at

はじめに

TurtleBot3のGazeboシミュレーション環境をROS2 Humbleで構築する手順を解説します。公式マニュアルに基づきつつ、コマンドの解説を加えて詳しく説明しています。
この記事を読めば、Ubuntu 22.04 LTS上でTurtleBot3をシミュレーション環境で動かせるようになると思います。

1.必要な環境

使用するソフトウェアとバージョン

  • OS:Ubuntu 22.04 LTS
  • ROS2のバージョン:Humble

2 パッケージのインストール

2.1 システムのアップデート

まずはパッケージをアップデートして最新にします。
apt updateでリポジトリ情報を最新化し、apt upgradeでインストール済みのパッケージを更新します。

$ sudo apt update
$ sudo apt upgrade

2.2 Gazeboシミュレータのインストール

以下のコマンドでROS2関連のシミュレーションパッケージをインストールします。gazebo-*はGazeboの主要パッケージ一式をインストールします。

$ sudo apt install ros-humble-gazebo-*

2.3 シミュレーション関連パッケージのインストール

以下のコマンドでROS2関連のパッケージをインストールします。

  • cartographer: SLAM (地図作成) 用のパッケージ
  • dynamixel-sdk: Dynamixelモーター制御用SDK
  • turtlebot3-msgs: TurtleBot3専用メッセージ定義
  • turtlebot3: TurtleBot3の主要ライブラリ
$ sudo apt install ros-humble-cartographer
$ sudo apt install ros-humble-cartographer-ros
$ sudo apt install ros-humble-dynamixel-sdk
$ sudo apt install ros-humble-turtlebot3-msgs
$ sudo apt install ros-humble-turtlebot3

2.4 ワークスペースの作成とシミューレーション用レポジトリのクローン

シミューレーション環境を構築するために、専用のワークスペースを作成します。

$ mkdir -p ~/turtlebot3_ws/src

TurtleBot3のシミュレーション用リポジトリをクローンします。--depth 1 は履歴の少ない軽量なクローンを作成するオプションなので無くても全く問題ないです。

$ git clone --depth 1 -b humble https://github.com/ROBOTIS-GIT/turtlebot3_simulations.git

クローン後、以下のコマンドでビルドを実行します。

  • colcon build はROS2の標準ビルドツールです。
  • --symlink-install によりシンボリックリンクを使用した軽量インストールが行われます。
$ cd ~/turtlebot3_ws && colcon build --symlink-install

### 2.4 Turtlebot3モデルの設定
シミューレーションで使用するTurtlebot3のモデルを指定します。`burger`は軽量なTurtleBot3モデルの一つです。他に`waffle`や`waffle_pi`も選択可能です。
```bash
$ export TURTLEBOT3_MODEL=burger
$ ros2 launch turtlebot3_gazebo empty_world.launch.py
$ export TURTLEBOT3_MODEL=waffle
$ ros2 launch turtlebot3_gazebo turtlebot3_world.launch.py
$ echo 'export ROS_DOMAIN_ID=30 #TURTLEBOT3' >> ~/.bashrc
$ source ~/.bashrc

3. Gazeboシミューレーションの起動

3.1 空の世界で起動

以下のコマンドでGazeboを起動し、空のシミュレーション環境を立ち上げます。empty_world.launch.py は空のシミュレーション空間を生成します。

$ export TURTLEBOT3_MODEL=waffle
$ ros2 launch turtlebot3_gazebo empty_world.launch.py

image.png
拡大するとwaffleを見ることができます
image.png

3.2 デフォルトのTurtlebot3環境で起動

以下のコマンドでTurtleBot3専用のワールドを起動します。turtlebot3_world.launch.py はTurtleBot3用に構築されたマップ上でシミュレーションを行います。
青い円はLidarが測定されているエリアを表しています。

$ export TURTLEBOT3_MODEL=waffle
$ ros2 launch turtlebot3_gazebo turtlebot3_world.launch.py

image.png
先ほどと同様に拡大するとロボットを見ることができます。
image.png

おわりに

Turtlebot3を無事起動できるようになったので、次はナビゲーションに取り組みたいと思います。

参考サイト

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?