LoginSignup
6
8

More than 3 years have passed since last update.

ROSを使用しRealSenseを複数台繋げる方法

Last updated at Posted at 2019-06-17

これは,How-to: Multiple camera setup with ROSを中途半端に補足,再現したものです.当然原典の方が説明は詳しいので英語力に自身がある人は原典を見たほうが絶対良いです.

なお,ROSの基本的な使用方法や環境構築については述べません.

使用環境

OS Ubuntu16.04
ROS ROS kinetic
librealsense v2.18.1
realsense ros wrapper build 2.1.4
RealSense D435i(D435)

ROSラッパーは使用するlibrealsenseのversionに合わせ適宜入れてください.librealsenseリンク
ここでは,2台のRealSenseを使用することを前提としています.

下準備

librealsense ROS wrapperのビルド

参考記事
ROS Wrapper for Intel® RealSense™ Devices
RealSense D435をROSで使う

手順

1. RealSense各個体のシリアル番号の確認

調べ方

  • rosラッパーから
    $ roslaunch realsense2_camera rs_camera.launch
  • realsense-viewerから
    realsense-viewer起動後,個体情報にてシリアル番号を確認します.

2. ROSにてRealSenseを起動

作業ディレクトリ
$ cd ~/catkin_ws
1台目
$ roslaunch realsense2_camera rs_camera.launch camera:=cam_1 serial_no:=<1台目のシリアル番号> enable_pointcloud:=true
2台目
$ roslaunch realsense2_camera rs_camera.launch camera:=cam_1 serial_no:=<2台目のシリアル番号> enable_pointcloud:=true

3. 位置関係を設定してくれるpublisherを起動

基準としているRealSenseに対して,もう1台のRealSenseがどの位置,姿勢であるかを設定することで,set_cams_transforms.pyが位置関係を調整してトピックを出力してくれます.

X: X軸移動量
Y: Y軸移動量
Z: Z軸移動量
Y: Yaw軸の姿勢
P: Pitch軸の姿勢
R: Roll軸の姿勢
$ python src/realsense/realsense2_camera/script/set_cams_transforms.py cam_1_link cam_2_link X Y Z Y P R 
実行例
$ python src/realsense/realsense2_camera/script/set_cams_transforms.py cam_1_link cam_2_link 0 0 0 0 40 0

4. rvizに表示させてみる

$ rviz
1台目の点群を表示

Displaysにある設定項目の内,Fixed Framecam_1_linkに設定します.

add.png

Displaysにある設定項目の内,Addメニューを開く.

1台目のRealSenseで取得した点群を表示させたい場合,By topicから
/cam_1 > /depth > /color > /points > PointCloud2を選択.

p2.png

2台目の点群を表示

Fixed Framecam_1_linkの設定のまま,1台目と同様の手順で
/cam_2 > /depth > /color > /points > PointCloud2を選択.

5.トラブルシューティング

rvizの設定でPointCloud2が表示されない
  • 各RealSenseのノードを立ち上げた時,enable_pointcloud:=trueを設定したか?
  • RealSenseは適切に認識されているか?

6. 表示例

1台分のみ表示
1.png

2台分を表示
picture.png

6
8
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
6
8