Jetson Nano でコンテナにROS2 Foxy をインストール


Jetson Nanoでカメラ画像のPublish/Subscribeをやってみる(ROS2)ではNVIDIA提供のコンテナを使いましたがROS2のバージョンはEloquent Elusorでした。

ここでは、より新しいバージョンのFoxy FitzroyをUbuntu 20.04 のコンテナにインストールします。

参照するのはROS2公式のInstalling ROS 2 via Debian Packagesです。

 


NanoのOSイメージはJetpack 4.5.1

Docker Hub からUbuntu 20.04 のイメージをお借りします。

my_ros2_foxyという名前でコンテナ作成

シンプル設定

USBカメラ などを使う場合(今回はこっち)

sudo docker create -it --name my_ros2_foxy --network host --device /dev/video0:/dev/video0 -e DISPLAY=$DISPLAY -v /tmp/.X-unix/:/tmp/.X-unix ubuntu:20.04

コンテナ起動

アップデート&アップグレード、パッケージなどをインストール

 

ロケールをセット

チェック

UTF-8をサポートしたロケール設定

ベリファイ

 

初期状態ではPythonも入っていません。

Python3.8 をインストール

 

OpenCVも入れておきます。

 

ソースをセットアップ

 

ROS2 Foxyにはros-foxy-ros-baseとros-foxy-desktopの2種類あります。

ここではimage_toolsなども使いたいのでFoxy Desktop をインストールします。

環境をセットアップ

恒久化

Ctrl + D でコンテナ終了

 


Pub / Sub

コンテナ起動

 

Publisher

テキストをメッセージ送信

カメラ画像(イメージ) をメッセージ送信

 

同コンテナで別ターミナル起動

イメージ受信用にXも起動しておきます。

 

Subscriber

テキストメッセージ受信

カメラ画像(イメージ) メッセージ受信

 


ROS2 アンインストール

 


 

Be the first to comment

Leave a Reply

Your email address will not be published.


*