🐕
ubuntu18.04にROS2をインストールする
ROS2 Dashing
ubuntu18.04に対応するROS2 Dashingをインストールします。
(Dashingは2021/05にサポートが終了しているらしく、ubuntu20.04への移行がベターです)
インストール
基本的にはチュートリアル通りにインストールでOK。
ROS melodicなど別バージョンがいても問題なく動きます。
バイナリパッケージかDebianパッケージからのインストールが主な方法です。
今回は、公式から推奨されている通り、Debianパッケージでのインストールを行います。
Debianパッケージでのインストール
以下のコードをコピペしていけばインストールできる(はずです)。
locale
ドキュメントではen_US.UTF-8ですが、ja_JP.UTF-8に変更します。
$ locale # check for UTF-8
$ sudo apt update && sudo apt install locales
$ sudo locale-gen ja_JP ja_JP.UTF-8
$ sudo update-locale LC_ALL=ja_JP.UTF-8 LANG=ja_JP.UTF-8
$ export LANG=ja_JP.UTF-8
$ locale # verify settings
ソース
$ sudo apt update && sudo apt install curl gnupg2 lsb-release
$ sudo curl -sSL https://raw.githubusercontent.com/ros/rosdistro/master/ros.key -o /usr/share/keyrings/ros-archive-keyring.gpg
$ echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/ros-archive-keyring.gpg] http://packages.ros.org/ros2/ubuntu $(lsb_release -cs) main" | sudo tee /etc/apt/sources.list.d/ros2.list > /dev/null
ROS2 パッケージのインストール
$ sudo apt update
$ sudo apt install ros-dashing-desktop
環境設定
$ source /opt/ros/dashing/setup.bash
$ sudo apt install -y python3-pip
$ pip3 install -U argcomplete
sourceした際に以下のようなコメントが流れる場合があるが、これはROS Melodicから切り替わったことを知らせているだけらしい。(つまり、別バージョンのROSが入っていない人は関係ない。)
ROS_DISTRO was set to 'melodic' before. Please make sure that the environment does not mix paths from different distributions.
テスト
ある端末でsourceしてから次のコマンドを実行。
$ ros2 run demo_nodes_cpp talker
別端末で次のコマンドを実行。
$ ros2 run demo_nodes_py listener
無事動けば、インストールは完了です!
他パッケージのインストール
colcon
colconというbuildツールをインストールします。
ROSを触っていた人は、catkinがcolconになったと思えばOK。
(ドキュメント)
$ sudo apt install python3-colcon-common-extensions
ros2 bag
ros2 bagはシステムのトピックで公開されたデータを記録するためのツールです。デバッグにとても便利なのでインストールします。ROSではros_bagとして用意されていました。(ドキュメント)
$ sudo apt-get install ros-dashing-ros2bag ros-dashing-rosbag2-converter-default-plugins ros-dashing-rosbag2-storage-default-plugins
rqt
rqtはシステムのトピックで公開されたデータを可視化できるツールです。これもデバッグにとても便利なのでインストールします。ROSでも同様のrqt_graphが用意されていました。
sudo apt install ros-dashing-rqt*
Discussion