【自作ロボットROS2化】Raspberry Pi5購入!Ubuntu24.04 ROS2 Jazzyをセットアップ
ついに、Raspberry Pi5を購入しました!
これにROS2を入れて、ロボット開発進めていこうと思います。
※ちなみに、ROS1のときは、jetsonNanoを使ってました。しかし、jetsonNanoはUbuntu20.04までのサポートなので最新のROS2が入りません。
jetsonNano+docker環境でROS2(Humble)をなんとか動かそうと頑張りましたが、断念しました。。(一応、過去記事にその記録は残しています。以下)
購入したもの
ラズパイ5や付属品は以下を購入しました。(アマゾンのリンクをはってます)
・Raspberry Pi 5 ラズベリーパイ5 RAM 8GB 技適対応品/アクティブクーラー
・Vesonn Raspberry Pi 5電源 5.1V 5A PD27W アダプター
・GeeekPi HDMI ケーブル 1m ホワイト Raspberry Pi 4 Micro HDMI-HDMI ケーブル
・SanDisk microSD カード 64GB
ラズパイ5にUbuntu24.04をインストール
以下のubuntu公式サイトからRaspberryPi用のUbuntu24.04イメージをダウンロードします。
ubuntu-download-raspberry-pi
ダウンロードしたimg.xzファイルをmacで解凍します。(Terminalで以下実行)
xz -d ubuntu-24.04.1-preinstalled-desktop-arm64+raspi.img.xz
microSDカードをPCに接続し、EtcherアプリでダウンロードしたイメージをSDカードに書き込みます。
microSDカードをラズパイ5に挿入、ファンを装着します。(ファンが付属されているラズパイを買いました。)
キーボード、マウス、モニターを繋いで、電源起動すると、ubuntuのセットアップが始まりました。
WiFi設定やアカウント等必要な設定を行い、無事ubuntu24.04が立ち上がりました。
以下を実行して、アップデートしておきます。
sudo apt upgrade
次は、ROS2を入れていきます。
ROS2 jazzyのインストール
2024.10月時点で、ROS2のディストリビューションは以下です。
・Humble Hawksbill 公開日:2022.5月/公開終了日:2027.5月
・Iron Irwini 公開日:2023.5月/公開終了日:2024.11月
・Rolling Ridley ※随時更新。破壊的な変更もありえる開発者向けのバージョン
今回は、Ubuntu24.04に2029年までの長期サポートであるROS2 Jazzy Jaliscoをインストールします。
書籍「改訂新版 ROS 2ではじめよう 次世代ロボットプログラミング」を参考にしました。
1.
以下コマンドでOSの文字コードをUTF-8に設定しておきます。
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
2.
Ubuntuのパッケージ管理システム(APT)に必要なリポジトリを追加します。以下コマンドを入力します。
sudo add-apt-repository universe
3.
ROS2のリポジトリの暗号鍵を取得、リポジトリを追加します。
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 $(. /etc/os-release && echo $UBUNTU_CODENAME) main” | sudo tee /etc/apt/sources.list.d/ros2.list > /dev/null
sudo apt update
4.
ROS2パッケージをインストールします。
sudo apt install ros-$ROS_DISTRO-desktop ros-dev-tools python3-argcomplete
sudo rosdep init
rosdep update
5.
環境変数の追加を行います。ターミナル起動時に実行するため、.bashrcにも追記しておきます。
echo “source /opt/ros/$ROS_DISTRO/setup.bash” >> ~/.bashrc
6.
デモを使って簡単に動作確認してみます。
ターミナルで以下を実行します。
もう一つターミナルを起動し、以下を実行します。
無事ROS2のメッセージ通信が動きました。
ということで、このラズパイ5で自律走行ロボットを作っていこうと思います。
それでは!!
スポンサーリンク