コンテンツにスキップ

Raspberry Pi 5 (ARM64) のセットアップ

このページでわかること

Pi 本体上で setup.sh を実行して ROS 2・ハードウェアインターフェース・自動起動を一括構成する手順がわかります。複数台を一括構成する場合は Ansible プロビジョニング も参照してください。

ロボット実機となる Raspberry Pi 5 上で、ROS 2 Jazzy とハードウェアインターフェース (GPIO / I2C / SPI)を構成します。セットアップは Pi 本体上で setup.sh を実行して行います。

対象

  • アーキテクチャ: ARM64 (aarch64)
  • OS: Ubuntu 24.04 Server (arm64)
  • ワークスペース: ~/robot_ws

1. Raspberry Pi 5 の準備

  1. Raspberry Pi Imager 等で、 Ubuntu 24.04 Server (arm64) を microSD カード / SSD に書き込みます。
  2. 初回起動時にユーザーを作成し、ネットワークへ接続します。

ユーザー名について

自動起動の systemd サービスは既定で ubuntu ユーザー・/home/ubuntu/robot_ws を 前提としています。別ユーザーを使う場合は 自動起動 (systemd) の 設定を読み替えてください。

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

sudo apt update
sudo apt install -y git ansible

3. リポジトリの取得

git clone https://github.com/scramble-robot/questix.git
cd questix

4. セットアップスクリプトの実行

bash setup.sh

このスクリプトは、内部で次の Ansible プレイブックを実行します。

ansible-playbook ansible/playbooks/setup_kit.yaml \
  -i localhost, --connection=local --ask-become-pass

実行内容(setup_kit.yaml のロール)は次のとおりです。

ロール 役割
ros2_installation ROS 2 Jazzy のインストール
raspberry_pi_setup gpio / input / dialout グループ設定、Pi 用ユーティリティ導入
hardware_interfaces /boot/firmware/config.txt で I2C / SPI を有効化、udev ルール適用
robotics_workspace ~/robot_ws 作成、colcon 設定
robot_autostart systemd サービス・polkit・起動スクリプトの導入
display_settings ディスプレイ関連設定

アーキテクチャチェック

setup_kit.yaml は実行前に aarch64 であること、Ubuntu 24.04 であること、 Raspberry Pi モデルを確認します。

5. 再起動と動作確認

GPIO グループの反映などのため、一度再起動します。

sudo reboot

ログイン後:

source ~/.bashrc
ros2 --version
gpio_status   # GPIO の状態確認
rw            # ~/robot_ws へ移動するエイリアス

6. ワークスペースのビルド

ワークスペースのビルド に進み、依存リポジトリの取得とビルドを行います。 その後、競技時に自動でロボットを起動するには 自動起動 (systemd) を設定します。