📖
ラズパイでROS2の環境を作る
ラズパイにROS2の環境を入れてみたので、
今回は環境構築した手順を備忘録として残す。
使用している環境
本体:Raspberry Pi 4B
OS:Raspberry Pi OS(64bit)
SDカード:64G byte
手順
まずは環境構築を始める前にパッケージ更新をして最新状態にしておく。
$ sudo apt-get update
$ sudo apt-get upgrade
ROS2にはいくつかディストリビューションが存在するようだが、今回はHumbleというディストリビューションを使用して環境構築をする。
以下のコマンドを実行してHumbleをインストールする。
$ wget https://s3.ap-northeast-1.wasabisys.com/download-raw/dpkg/ros2-desktop/debian/bullseye/ros-humble-desktop-0.3.1_arm64.deb
$ sudo apt install -y ./ros-humble-desktop-0.3.1_arm64.deb
次に今後使用することになるため、ビルドツール関連のインストールを行う。
最初何も考えずにpip installしてみたらエラーになった。
そのため、以下のようにvenvコマンドを使いpythonの仮想環境を作りその中でpip installしたらうまくいった。
$ mkdir ~/work/ros2
$ cd ~/work/ros2
$ python -m venv venv
$ source venv/bin/activate
$ pip install vcstool colcon-common-extensions
インストールが終わったらそのままROS2を起動する。
setup.bashを実行することでROS2(Humble)が起動する。
$ source /opt/ros/humble/setup.bash
ROS2が起動したらここからはデモアプリの起動を行う。
ros2コマンドでtalkerデモノードを起動する。
$ ros2 run demo_nodes_cpp talker
ターミナルで以下のような表示になっていればOK。
次にもう1つターミナルを起動してROS2を起動し、
ros2コマンドでlistenerデモノードを起動する。
$ cd ~/work/ros2
$ source venv/bin/activate
$ source /opt/ros/humble/setup.bash
$ ros2 run demo_nodes_cpp listener
ターミナルで以下のような表示になっていればtalker側と通信できており、
talker側から発行されたメッセージが正しく受け取れている。
通信できたので今回はここまで。
Discussion