ubuntu20.04とROS NoeticでRealSenseを使う手順


# はじめに

ubuntu20.04上のROS NoeticでRealSenseを使用したので、その手順をまとめました。

# 環境

・Ubuntu 20.04LTS
・Intel RealSense L515 

D435, D435i, D455などでも同様の手順です。

# 手順
1. Intel Realsense SDK インストール
1. ROS Noetic インストール
2. realsense-rosのセットアップ

# Intel Realsense SDK のインストール

以下の公式インストール手順に従って行う。

https://github.com/IntelRealSense/librealsense/blob/master/doc/distribution_linux.md

1. 公開鍵を登録

```bash
$ sudo apt-key adv --keyserver keys.gnupg.net --recv-key F6E65AC044F831AC80A06380C8B3A55A6F3EFCDE || sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-key F6E65AC044F831AC80A06380C8B3A55A6F3EFCDE
```
1. サーバーをレポジトリリストに登録

```bash
$ sudo add-apt-repository "deb http://realsense-hw-public.s3.amazonaws.com/Debian/apt-repo focal main" -u
```

3. ライブラリをインストール

```bash
$ sudo apt update
$ sudo apt-get install librealsense2-dkms
$ sudo apt-get install librealsense2-utils
```

4. 開発者用ツール、デバッガツールをインストール

```bash
$ sudo apt-get install librealsense2-dev
$ sudo apt-get install librealsense2-dbg
```

1. RealSenseを接続し、以下コマンドでrealsense-viewerを起動

```bash
$ realsense-viewer
```

正常に認識されて画像が表示されれば成功です。

![Screenshot from 2021-01-01 19-28-32.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/399606/f00bd640-5d59-7cf7-f4d5-43a8fe4113c9.png)



# ROS Noeticのインストール

公式のインストールガイドや以下記事を参考にインストールしてください。
Noeticからpython関係のパッケージ名がpython-* から python3-* になっていることに注意。

http://wiki.ros.org/noetic/Installation/Ubuntu

ROS Noetic のインストール ubuntu20.04
https://qiita.com/SECRETalexs/items/4b4a1bb420c4cfb823f6


# realsense-rosのセットアップ

以下のROSラッパーをインストールする。
https://github.com/IntelRealSense/realsense-ros#installation-instructions

ワークスペースに移動

```bash
$ cd ~/catkin_ws/src/
```

ソースコードをダウンロード

```bash
$ git clone https://github.com/IntelRealSense/realsense-ros.git
$ cd realsense-ros/
$ git checkout `git tag | sort -V | grep -P "^2.\d+\.\d+" | tail -1`
```
パッケージのビルド

```bash
$ cd ~/catkin_ws/
$ catkin_make clean
```

以下のようなエラーが出る。

```bash
CMake Error at /opt/ros/noetic/share/catkin/cmake/catkinConfig.cmake:83 (find_package):
  Could not find a package configuration file provided by
  "ddynamic_reconfigure" with any of the following names:

    ddynamic_reconfigureConfig.cmake
    ddynamic_reconfigure-config.cmake

  Add the installation prefix of "ddynamic_reconfigure" to CMAKE_PREFIX_PATH
  or set "ddynamic_reconfigure_DIR" to a directory containing one of the
  above files.  If "ddynamic_reconfigure" provides a separate development
  package or SDK, be sure it has been installed.
Call Stack (most recent call first):
  realsense-ros/realsense2_camera/CMakeLists.txt:11 (find_package)
```


ddynamic_reconfigureがないので以下でインストールします。

```bash
$ sudo apt-get install ros-noetic-ddynamic-reconfigure
```

再度ビルドし直す

```bash
$ cd ~/catkin_ws/
$ catkin_make clean
```

### realsense-ros 動作確認

以下コマンドでrealsense2_cameraを起動

```bash
$ roslaunch realsense2_camera rs_camera.launch 
```

別のターミナルでImage Viewを起動

```bash
$ rosrun rqt_image_view rqt_image_view 
```

/camera/color/image_raw などの画像トピックを選んで画像が表示されれば成功です。

![Screenshot from 2021-01-01 20-41-38.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/399606/6eb17756-f8eb-a67e-3551-ea5f72b5f4cc.png)



# 参考

https://qiita.com/SECRETalexs/items/4b4a1bb420c4cfb823f6

https://qiita.com/kei_mo/items/c0387b7d277948451881