本記事は2021年4月4日に修正しています。
本記事は
Ubuntu18.04LTS
ROS Melodic
で行われています.
Ubuntu上で使えるようにする
使用するコマンドのインストール
intel-realsense-dfuというコマンドが必要なため、これをインストールします。
sudo apt-key adv --keyserver keys.gnupg.net --recv-key C8B3A55A6F3EFCDE || sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-key C8B3A55A6F3EFCDE
#リポジトリの登録
sudo add-apt-repository "deb http://realsense-hw-public.s3.amazonaws.com/Debian/apt-repo xenial main" -u
sudo apt-get update
#インストール
sudo apt-get install librealsense2-dkms librealsense2-utils librealsense2-dev librealsense2-dbg intel-realsense-dfu
D435のファームウェアのアップデート
まずはD435自体のファームウェアのアップデートが必要になります.
こちらのサイトで「Download」を押します。
https://www.intel.com/content/www/us/en/search.html?ws=text#q=realsense&t=Downloads&layout=table
ダウンロードしたzipファイルを解凍します.
その中に
Signed_Image_UVC_5_12_11_0.bin
のような名前のファイルがあるので
これを適当なディレクトリにおいてください.
次にそのディレクトリ上で操作を行います.
lsusb
としてRealSenseのBusとDevice番号を調べます.
Intel Corp.と表示されているBusとDeviceの番号(こんかいであれば両方002)を覚えておいてください.
この番号と先程ダウンロードしたSigned~のファイルを使ってアップデートしていきます.
再度./Signed_Image_UVC_5_11_11_100.binのファイルがあるディレクトリにいることを確認して
intel-realsense-dfu -b 002 -d 002 -f -i ./Signed_Image_UVC_5_11_11_100.bin
-b の後の番号がBus番号,-d の後の番号がDevice番号になります.
5_11_11_100の部分はダウンロードしたファイルのバージョンに変えてください.
Done!と出れば成功です.
ここでRealSenseを一度抜き差ししてください.
realsense-viewer
を実行してviewerを起動させ、必要なファームウェアをインストールします。
起動時に右上に出てくる「Install」を押してしばらく待ちます(結構時間かかるためお茶でも飲んで待ちましょう)。
インストールがおわったら左側の「off」を「on」に切り替えればそれぞれの機能を実行できます。
ROSで使えるようにする
以下のgitのサイトから2つほどダウンロードして解凍してください.
https://github.com/IntelRealSense/realsense-ros
https://github.com/pal-robotics/ddynamic_reconfigure/tree/kinetic-devel
ダウンロードして解凍したら
~/catkin_ws/src
の中に入れ,名前をそれぞれ「ddynamic_reconfigure」と「realsense-ros」に変更する
sudo apt-get install ros-$ROS_VER-realsense2-description
cd ~/catkin_ws
catkin_make
これでインストール完了です.
以下を実行してカメラの画像が出てくれば起動できています.
roslaunch realsense2_camera rs_camera.launch
rosrun image_view image_view image:=/camera/color/image_raw
RvizでPointCloudを表示する
もうRealsenseは使えるのですが,おまけでRvizでPointCloudを表示してみたいと思います.
RealSenseを起動させて
roslaunch realsense2_camera rs_rgbd.launch align_depth:=true
続いてRvizを起動させます
rviz rviz
Rvizが起動したら
add → By display type → PointCloud2 → OK
と押していきます.
次にPointCloud2のTopic欄の▼を押して
/camera/depth_registered/points
に変更していきます
次にGlobal OptionsのFixed Frame欄も同様に▼を押して
camera_link
に変更します.
参考サイト
https://www.intel.com/content/dam/support/us/en/documents/emerging-technologies/intel-realsense-technology/Linux-RealSense-D400-DFU-Guide.pdf
https://naonaorange.hatenablog.com/entry/2018/11/04/174745
https://qiita.com/idev_jp/items/bcf198a22599294ab976