Radxa ROCK 5BでIntel Realsenseを使う①

Radxa ROCK 5BでIntel Realsenseを使い、ROS2でSLAMを使う手順をメモしておきます。 今回はRealsense-viewerを実行するところまでやります。

使用機器

使用コンピュータ: Radxa ROCK 5B 8GB

SSD: KIOXIA EXCERIA G2 500GB

Intel Realsense D435i

Apple iPad Air 付属20W 充電器

使用機器の選択理由

Radxa ROCK 5B 8GB: Robocup junior WSOおよびRobocup SSLのレギュレーション内でSLAM可能なロボットを制作しようと考え、Jetson Orinよりは安いSBCとして購入

SSD:一部レビューで両面実装だと干渉するとの情報があったため、片面実装のものを使用

Intel Realsense D435i:今回の目的

充電器について

30W以上の給電をRock 5 Bは推奨していますが、USB PDのネゴシエーションに問題があり充電器やモバイルバッテリーでの給電に相性が存在します。手持ちのUSB電源で最も安定して利用でき、給電能力の高いAppleの20W充電器を使用しました。Realsenseも5W程度電力を消費するのでなるべく能力の高い電源が欲しいです。

公式Wikiの動作確認済みリストのリンクは以下 wiki.radxa.com

事前準備

事前にmicro SDなどを用いてブートローダーをMVMe SSDから起動できるよう書き換えておきます。eMMCやmicro SDから起動する形でも問題ないとは思いますが、速度や安定性の面でSSDを勧めます。

iothonpo.com

OS書き込み

まずはOSを書き込みますが、今回はUbuntuGUIイメージをおすすめします。ROSをはじめ関連ソフトウェアはUbuntuを前提にしているのでこちらが無難だと思われます。具体的にはb36リリースの https://github.com/radxa-build/rock-5b/releases/download/b36/rock-5b_ubuntu_jammy_xfce_b36.img.xzを使用しました。

Armbianの公式イメージも存在しますが、執筆時点ではUSB PDに対応していないので今回は使っていません。

github.com

Balena etcherなどで書き込みましょう。

etcher.balena.io

Realsense SDKのインストール

初期設定などが完了したら、Realsenseを動作するソフトウェアをインストールします。パッケージマネージャーなどからインストールする方法はうまくいかなかったので、ソースコードからビルドします。

基本的には以下のドキュメントに従い、Ubuntuへのインストール手順を実行します。

dev.intelrealsense.com

ただし、 Build and apply patched kernel modules for: の項目は実行できませんのでやりません。詳細は詳しくないのですが、UVCやV4Lなどのカメラのドライバ周りの対応がプラットフォームにより異なるためこうなります。

代わりに、

cmake ../ -DBUILD_EXAMPLES=true

とするところを

cmake ../ -DFORCE_RSUSB_BACKEND=true -DBUILD_EXAMPLES=true

とするなど、DFORCE_RSUSB_BACKENDオプションをTrueにしてビルドします。

その後、コンパイル・インストールすれば完了です。コンパイルに時間がかかりますが、ファン付きのヒートシンクなどを使うと気持ち早くなります。

頭の悪い冷却手法

インストールが完了したらRealsense-Viewerを実行してインストールができているか確かめます。

Realsense-Viewer画面

何か問題点などあればコメントください。

参考文献

Radxa ROCK 5B 製品仕様

Rock5/5B - Radxa Wiki

rigayaの日記兼メモ帳 Radxa ROCK 5Bで遊ぼう

D455 instllation on rock-5b (kernel 5.10) ubuntu 20.04 · Issue #2721 · IntelRealSense/realsense-ros · GitHub

Build Configuration