参考:
RealSense D435i在Ubuntu18下配置过程_冰激凌啊的博客-优快云博客
0 安装环境
系统:Ubuntu 18.04
ROS melodic
设备:Realsense D435i
1 RealSense SDK安装
1.1 克隆SDK
打开终端(默认在根目录下,可以根据需要自己替换安装目录)
# git clone https://github.com/IntelRealSense/librealsense
# cd librealsense
wget https://github.com/IntelRealSense/librealsense/archive/refs/tags/v2.50.0.tar.gz
tar -xf v2.50.0.tar.gz
cd librealsense-2.50.0
1.2 安装依赖
继续在终端中输入
sudo apt-get install libudev-dev pkg-config libgtk-3-dev
sudo apt-get install libusb-1.0-0-dev pkg-config
sudo apt-get install libglfw3-dev
sudo apt-get install libssl-dev
1.3 安装权限脚本
sudo cp config/99-realsense-libusb.rules /etc/udev/rules.d/
sudo udevadm control --reload-rules && udevadm trigger
1.4 编译与安装
make命令有时候会报错,换个时间把下面的命令再执行一遍有时就可以了,比较玄学
mkdir build
cd build
cmake ../ -DBUILD_EXAMPLES=true
make -j4
sudo make install
1.5 测试安装是否成功
cd librealsense/build/examples/capture
./rs-capture
或者使用命令:
realsense-viewer
2 安装RealSense-ROS
2.1 安装
mkdir -p realsense_ws/src
cd realsense_ws/src
git clone -b ros1-legacy https://github.com/IntelRealSense/realsense-ros.git
git clone https://github.com/pal-robotics/ddynamic_reconfigure.git
cd .. && catkin_make
git clone -b ros1-legacy https://github.com/IntelRealSense/realsense-ros.git
其中的-b意为下载对应的ros1分支。
做这个指定,是因为对应git网页的不断更新会使得原本正确的安装过程不再有效。
(没有指定分支会在catkin_make出现如下错误:This workspace contains non-catkin packages in it, and catkin cannot build a non-homogeneous. 该错误表示,src文件夹下有一个ros2的包)
2.2 添加环境依赖
echo "source ~/realsense_ws/devel/setup.bash" >> ~/.bashrc
source ~/.bashrc
2.3 测试安装是否成功
roslaunch realsense2_camera demo_pointcloud.launch
有东西跳出来就OK,大功告成!要注意,必须是USB3.0的口,否则RVIZ订阅topic的结果是黑屏
2.4 RVIZ的使用
修改Fixed Frame为camera_link, 然后点add添加对应的topic即可
3 杂七杂八的问题
3.1 虚拟机连接问题
问题: 明明摄像头显示连接,cheese和realsense-viewer却显示检测不到设备。
解决方案:将虚拟机设置中的USB兼容性调整为3.0以上就可以了