コンテンツにスキップ

ROS2のインストール

1.1. 本文紹介

ROSはロボット向けのオープンソースのメタオペレーティングシステム(Meta-operating system)です。ハードウェア抽象化、低レベルデバイス制御、一般的な機能の実装、プロセス間メッセージ通信、パッケージ管理など、オペレーティングシステムに求められるサービスを提供します。ある意味で、ROSは一種の「ロボットフレームワーク(robot frameworks)」に相当します。

1.1. 本文紹介 図1

1.1. 本文紹介 図1

1.1.2 ROS2とROS1の違い

ROS2はROS1の後継として、ROSのコア機能を維持しつつ、多くの改良と最適化が行われています。ROS1と比較して、ROS2はROS1にあった「Master」中央ノードを廃止し、ノードの分散型ディスカバリ、パブリッシュ/サブスクライブ(Pub/Sub)、リクエスト/レスポンス通信を実現しました。ROS1が独自のミドルウェア(roscore)を使用していたのに対し、ROS2はDDSミドルウェアを使用します。また、ビルドシステムとしてROS1は catkin を使用していましたが、ROS2は colcon を使用しています。

1.1.2 ROS2とROS1の違い 図2

1.1.2 ROS2とROS1の違い 図2

1.2. ROS2のインストール

1.2.1 locale(ロケール)の設定

localeのインストール

Terminal window
locale \# check for UTF-8

1.2.1 locale(ロケール)の設定 図3

1.2.1 locale(ロケール)の設定 図3

Terminal window
sudo apt update && sudo apt install locales

# localeの構成(生成)

Terminal window
sudo locale-gen en_US en_US.UTF-8

1.2.1 locale(ロケール)の設定 図4

1.2.1 locale(ロケール)の設定 図4

Terminal window
sudo update-locale LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8
export LANG=en_US.UTF-8

1.2.1 locale(ロケール)の設定 図5

1.2.1 locale(ロケール)の設定 図5

Terminal window
locale \# 設定の確認

1.2.1 locale(ロケール)の設定 図6

1.2.1 locale(ロケール)の設定 図6

1.2.2 APTリポジトリ(ソース)の設定

Terminal window
sudo apt install software-properties-common

1.2.2 APTリポジトリ(ソース)の設定 図7

1.2.2 APTリポジトリ(ソース)の設定 図7

Terminal window
sudo add-apt-repository universe

1.2.2 APTリポジトリ(ソース)の設定 図8

1.2.2 APTリポジトリ(ソース)の設定 図8

# curlライブラリのインストール

Terminal window
sudo apt install curl -y

# 環境変数の追加

Terminal window
export ROS_APT_SOURCE_VERSION=\$(curl -s https://api.github.com/repos/ros-infrastructure/ros-apt-source/releases/latest \| grep -F "tag_name" \| awk -F'"' '{print \$4}')

# パッケージのダウンロード

Terminal window
curl -L -o /tmp/ros2-apt-source.deb "https://github.com/ros-infrastructure/ros-apt-source/releases/download/\${ROS_APT_SOURCE_VERSION}/ros2-apt-source\_\${ROS_APT_SOURCE_VERSION}.\$(. /etc/os-release && echo \${UBUNTU_CODENAME:-\${VERSION_CODENAME}})\_all.deb"

1.2.2 APTリポジトリ(ソース)の設定 図9

1.2.2 APTリポジトリ(ソース)の設定 図9

# パッケージのインストール(展開)

Terminal window
sudo dpkg -i /tmp/ros2-apt-source.deb

1.2.2 APTリポジトリ(ソース)の設定 図10

1.2.2 APTリポジトリ(ソース)の設定 図10

1.2.3 インストール

# 新しいリポジトリのパッケージを更新およびアップグレード

Terminal window
sudo apt update && sudo apt upgrade

インストールには2つのバージョンがあります:

(1)Desktop版(推奨):ROS, RViz, demos, tutorials が含まれます。

(2)Base版: Communication libraries, message packages, command line tools. GUIツールは含まれません。

# Desktop版をインストールする場合

Terminal window
sudo apt install ros-humble-desktop

# 開発ツールのインストール(オプション)

Terminal window
sudo apt install ros-dev-tools

# 環境変数の設定

Terminal window
echo "source /opt/ros/humble/setup.bash" >> ~/.bashrc
source ~/.bashrc

1.3. ROS2のテスト

1.3.1 デスクトップシステムのリモート制御

インストール完了後、MobaXterm上でxfceデスクトップ環境を実行します:

Terminal window
startxfce4

1.3.2 ROS2テスト

(1)パブリッシュ/サブスクライブ(Pub/Sub)テスト:**

端末(ターミナル)を開き、以下を実行します:

Terminal window
ros2 run demo_nodes_cpp talker

新しい端末をもう一つ開き、以下を実行します:

Terminal window
ros2 run demo_nodes_py listener

1.3.2 ROS2テスト 図11

1.3.2 ROS2テスト 図11

(2)タートルシム(Turtlesim)テスト:**

8インチディスプレイとマウス、キーボードを接続し、端末を起動して以下を実行します:

Terminal window
ros2 run turtlesim turtlesim_node

キーボードを使用して亀を操作したい場合は、新しく端末を開き、以下を実行します:

Terminal window
ros2 run turtlesim turtle_teleop_key

1.3.2 ROS2テスト 図12

1.3.2 ROS2テスト 図12