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
使用機器の選択理由
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を勧めます。
OS書き込み
まずはOSを書き込みますが、今回はUbuntuのGUIイメージをおすすめします。ROSをはじめ関連ソフトウェアはUbuntuを前提にしているのでこちらが無難だと思われます。具体的にはb36リリースの https://github.com/radxa-build/rock-5b/releases/download/b36/rock-5b_ubuntu_jammy_xfce_b36.img.xzを使用しました。
Armbianの公式イメージも存在しますが、執筆時点ではUSB PDに対応していないので今回は使っていません。
Balena etcherなどで書き込みましょう。
Realsense SDKのインストール
初期設定などが完了したら、Realsenseを動作するソフトウェアをインストールします。パッケージマネージャーなどからインストールする方法はうまくいかなかったので、ソースコードからビルドします。
基本的には以下のドキュメントに従い、Ubuntuへのインストール手順を実行します。
ただし、
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を実行してインストールができているか確かめます。
何か問題点などあればコメントください。