ROS2 RPLiDARのログ取り
1.Ubuntu 24.04へのROS2のインストールについてはこのあたり
「ここから始める!」は本当の初心者向けで非常に丁寧.
「ROS2の・・・」には「その他必要なものをインストール」として「ros-dev-tools」や「gazebo」のインストールについても紹介がある(とりあえずなくてもRPLiDARは動く).
2.ROS2へのRPLiDAR使用環境インストール
(a) sllidar_ros2を使う方法
(b) rplidar_ros2を使う方法
SLAMTECから提供されているのはsllidar_ros2の方でrplidar_ros2はサードパーティによる.同社のros向けはrplidar_rosなのでややこしい.
RVIZでの表示と座標の取得に限ればどちらもできることは変わらない(はず).
以下,sllidar_ros2を用いた例のみ示す.
3.座標情報(距離+角度)の取得
RVISでスキャン結果を表示するには
(S1の場合)
ros2 launch sllidar_ros2 view_sllidar_s1_launch.py
ROSでは roslaunch rplidar_ros view_….
だったので構文が微妙に変わっている.
座標値が欲しい場合など,RVIS表示なしにLiDARだけ起動させるにはviewを取って
ros2 launch sllidar_ros2 sllidar_s1_launch.py
続いて別のターミナルを立ち上げ,下のように入力すれば,各スキャンの各方向における距離,反射強度が確認できる.
ros2 topic echo /scan
【参考】ROS(2ではない)+rplidar_rosで座標情報へアクセスする方法についてはこちら.
点群の座標情報をさらにリアルタイムで加工するのであれば「RPLiDAR入門」のPythonを使った方法が参考になる.
今回はログとして保存するだけなので,最初にscriptでログの書き出しを開始しておけばよい.
2024.9.26追記
デフォルトではscanのrangeとintensityの一部しか表示されないので,ターミナルの表示結果ログをデータとして利用する場合は下記の通り全体表示オプション<-f>を付ける必要がある.
ros2 topic echo /scan -f