ラズパイ4B+ Raspberry Pi OS + コンテナに ROS1(Melodic)をインストールしてRPLiDARを動かしてみる


ラズパイは4B(4GB)

使用するLiDARLight Detection And Ranging)はSLAMTEC製の、RPLiDAR A1M8  です。

OSイメージはRaspberry Pi OS (64-bit) Bullseye(Debian)を使います。

Raspberry Pi Imagerバージョンは1.7.1

MicroSDに焼いて、セットアップしておきます。


Docker Engine のインストール

元ネタ

 


コンテナを作成してROSをインストール

ROSはMelodic を使うので、Docker Hub からUbuntu 18.04 LTS イメージをダウンロード

コンテナ作成

my_ros1という名前にして、rvizやgazeboを開くのでXを使います。RPLiDAR を使うのでUSBも見えるようにします(USBポートにRPLiDARだけ接続してttyUSB0の決め打ち)。

sudo docker create -it --name my_ros1 --network host --device=/dev/ttyUSB0:/dev/ttyUSB0 -e DISPLAY=$DISPLAY -v /tmp/.X11-unix/:/tmp/.X11-unix ubuntu:18.04

 

コンテナを起動する前に、RPLiDARを接続してttyUSB0を有効にしておきます。

コンテナ起動

コンテナをアップデート&アップグレード、パッケージなどをインストールしておきます。

ROS1(Melodic)をインストール

リポジトリ追加

aptキー追加

sh -c 'echo "deb http://packages.ros.org/ros/ubuntu $(lsb_release -sc) main" > /etc/apt/sources.list.d/ros-latest.list'

apt-key adv --keyserver 'hkp://keyserver.ubuntu.com:80' --recv-key C1CF6E31E6BADE8868B172B4F42ED6FBAB17C654

Melodicをインストール

OSのソフトウェアパッケージのインストールに必要なrosinstallをインストール

ソースコンパイル時の依存パッケージインストールに使われるrosdepをインストール

ワークスペース作成

catkin_makeが無いよ….と言われたら

source /opt/ros/melodic/setup.bash

 

ROSを起動 してみます

一旦コンテナを終了

Ctr + C でROS停止

Ctr + D でコンテナ停止

 


RPLiDARをセットアップして動作確認

Xを設定しておきます。

 

RPLiDARが接続されていることを確認して、my_ros1コンテナを再起動。

catkin_wsに移動して、rplidar_rosをクローンしてビルド

ttyUSBを確認して使用権を付与

view_rplidar.launchを実行してRPLiDARのスキャンデータで点群地図を作成

 

結構エラーが出ているのが気になります、調査中。

左下にあるAddをクリック

By topic タブ -> LaserScan -> OK

こんな感じ

 


一から再起動する場合

Xを起動

コンテナ起動

view_rplidar.launchを起動

 

以下のようにメニュもパネルも真っ暗な状態のことがあります。

しょうがないのでview_rplidar.launchを再起動しましょう。

 


 

Be the first to comment

Leave a Reply

Your email address will not be published.


*