【自作ロボットROS2化】Raspberry Pi5+ROS2 JazzyでRplidarを動かす
どうもこんにちは、
今回は、Raspberry Pi5+ROS2 JazzyでRplidarを動かそうと思います。
※なお、私が持っているRPLidarは、RPLiDAR A1M8です。
1.ワークスペースの作成
まずはワークスペースを作成します。
cd ~/ros2_ws
colcon build
2. lidar用のパッケージを取得
gitからRPLiDARのROS2用パッケージをダウンロードしてビルドします。
git clone https://github.com/Slamtec/sllidar_ros2.git
cd ~/ros2_ws/
colcon build
source install/setup.bash
3.ノードを実行
毎回、上記を実行しなくてもいいように以下を実行
rviz2で/scanトピックの確認ができるlaunchファイルを実行してみます。
うーん、なぜか、以下のようなエラーが出てしまいます。。
・・・
[sllidar_node-1] [ERROR] [1728991503.643423719] [sllidar_node]: Can not start scan: 80008001!
[rviz2-2] [INFO] [1728991503.908901499] [rviz2]: Stereo is NOT SUPPORTED
[rviz2-2] [INFO] [1728991503.909133388] [rviz2]: OpenGl version: 3.1 (GLSL 1.4)
[rviz2-2] [INFO] [1728991503.940389720] [rviz2]: Stereo is NOT SUPPORTED
とりあえず、原因がわからないので、rviz起動せずに、/scanトピックを吐くノードを実行してみます。
rvizを起動して、ADDから、LaserScanを追加します。(トピック名は/scan)
ちゃんと/scanトピックが発行されていることが確認できました。
view_rplidar_a1_launch.py実行時のエラーについて
エラーは、以下のscan modeのSensitivityというモードがサポートされていないのが原因のようです。
[sllidar_node-1] [ERROR] [1728994512.806932968] [sllidar_node]:
sllidar_ros2/launch/view_sllidar_a1_launch.pyのscan_modeを削除すると実行できるようになりました。
1 2 3 4 5 6 7 8 9 10 11 12 |
Node( package='sllidar_ros2', executable='sllidar_node', name='sllidar_node', parameters=[{'channel_type':channel_type, 'serial_port': serial_port, 'serial_baudrate': serial_baudrate, 'frame_id': frame_id, 'inverted': inverted, 'angle_compensate': angle_compensate, }], output='screen'), |
最後に
ラズパイ5+ROS2 JazzyでRplidarを動かすことができました。
次はモーター周りなど対応していこうと思います。
それでは!!
参考サイト:
slamtec_sllidar_ros2(github)
スポンサーリンク