2
1

More than 3 years have passed since last update.

Raspberry Pi 4でRealsense T265を使う

Posted at

Raspberry Pi 4でRealsense T265を使うための方法をまとめました。
また、ROSで使用する方法もまとめました。

基本的にはintelが提供しているインストールガイドの通りに進めるだけになります。

環境

  • Raspberry Pi 4 Model B 8G
    • Ubuntu 18.04
    • ROS melodic
  • Realsense T265

Realsense SDKのビルド

必要なパッケージのインストール

2行目は、ubuntuのバージョンによって異なります。今回はubuntu 18用です。

$ sudo apt install libssl-dev libusb-1.0-0-dev pkg-config libgtk-3-dev
$ sudo apt install libglfw3-dev libgl1-mesa-dev libglu1-mesa-dev at

Realsense SDKのビルド

Gitリボリトリをクローンし、最新のリリースをcheckoutします。
記事の執筆時点では最新版は「v2.43.0」ですが、自分は「v2.42.0」を使用しました。

$ git clone https://github.com/IntelRealSense/librealsense.git
$ cd librealsense
$ git checkout -b v2.42.0 refs/tags/v2.42.0

パーミッション変更スクリプトとパッチスクリプトを実行

$ ./scripts/setup_udev_rules.sh
$ ./scripts/patch-realsense-ubuntu-lts.sh

ビルド

最適化されたSDKをビルドするため、Build typeをReleaseとしました。
ビルドには時間がかかるためしばらく待ちます。

$ mkdir build && cd build
$ cmake ../ -DCMAKE_BUILD_TYPE=Release
$ sudo make uninstall && make clean && make && sudo make install

Viwerの実行

Realsense T265を接続し、ビューアを起動します。
デバイスを認識しセンサデータが表示されれば成功です。

$ realsense-viewer

ROSラッパーのビルド

次にROSでRealsense T265を使用する方法を説明します。
なおROSラッパーをビルドするにあたり、自分で開発しているパッケージと区別するため別のworkspaceを作成しました。
これはただの好みなので、必須ではありません。

$ mkdir -p 3rd_ws/src
$ cd 3rd_ws
$ catkin_init_workspace
$ catkin_make
$ vi ~/.bashrc
source ~/ros/3rd_ws/devel/setup.bash # 追加

ddynamic-reconfigureのインストール

後述のROSラッパーのビルドでエラーが発生したため、事前に1つのパッケージをインストールしておきます。

$ sudo apt install ros-melodic-ddynamic-reconfigure

ROSラッパーのビルド

Gitリポジトリをクローンしビルドします。
バージョンはクローンの時点で最新だった「2.2.22」を使用しました。

$ cd {ros workspace}/src
$ https://github.com/IntelRealSense/realsense-ros.git
$ cd realsense-ros
$ git checkout -b 2.2.22 refs/tags/2.2.22

ビルドはコチラも最適化を有効にするため、Build TypeをReleaseとしました。

$ cd {ros workspace}
$ catkin_make clean
$ catkin_make -DCATKIN_ENABLE_TESTING=False -DCMAKE_BUILD_TYPE=Release
$ catkin_make install

ddynamic-reconfigureをインストールしていないと、以下のエラーが出ました。

Could not find a package configuration file provided by
"ddynamic_reconfigure" with any of the following names:
...

実行

パッケージに付属のlaunchファイルで起動します。

$ roslaunch realsense2_camera rs_t265.launch

別ターミナルを立ち上げ、データが正しく出力されているか確認します。

  • ROS Topicのリスト確認 /camera/xxx が出力されているtopicです。 Realsense T265の位置情報は /camera/odom/sample です。
$ rostopic list
/camera/accel/imu_info
/camera/accel/sample
/camera/gyro/imu_info
/camera/gyro/sample
/camera/odom/sample
/camera/realsense2_camera_manager/bond
/camera/tracking_module/parameter_descriptions
/camera/tracking_module/parameter_updates
/diagnostics
/rosout
/rosout_agg
/tf
/tf_static
  • ROS Topicのメッセージ型確認
$ rostopic type /camera/odom/sample
nav_msgs/Odometry
  • ROS Topicの表示
$ rostopic echo /camera/odom/sample
---
header: 
  seq: 7903
  stamp: 
    secs: 1615099037
    nsecs: 892016649
  frame_id: "camera_odom_frame"
child_frame_id: "camera_pose_frame"
pose: 
  pose: 
    position: 
      x: -0.114610008895
      y: -0.0117419790477
      z: 0.317946970463
    orientation: 
      x: 0.932430207729
      y: -0.34159758687
      z: 0.105063930154
      w: 0.0533539503813
  covariance: [0.01, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.01, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.01, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0001, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0001, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0001]
twist: 
  twist: 
    linear: 
      x: -0.0246414352683
      y: -0.0712390058292
      z: -0.072351145566
    angular: 
      x: 0.11608623321
      y: 0.234681139377
      z: -0.413131162251
  covariance: [0.01, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.01, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.01, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0001, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0001, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0001]
---

参考

2
1
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
2
1