安装Intel Realsense D435i驱动与ROS包报错

1.下载安装realsense SDK

1.1 安装依赖

复制代码
sudo apt install libudev-dev pkg-config libgtk-3-dev
sudo apt install libusb-1.0-0-dev pkg-config
sudo apt install libglfw3-dev
sudo apt install libssl-dev

1.2 权限

复制代码
cd librealsense/
sudo cp config/99-realsense-libusb.rules /etc/udev/rules.d/
sudo udevadm control --reload-rules && udevadm trigger

1.3 编译

bash 复制代码
mkdir build
cd build
cmake ..
make -j4
sudo make install

1.4 验证是否成功

bash 复制代码
cd librealsense/
realsense-viewer

显示如下界面则表示安装成功。

使用docker安装的时候需要在运行docker容器的时候将对应的video加进去(docker run -it的时候加上--device=/dev/videoX:/dev/videoX,X是数字,例如--device=/dev/video4:/dev/video4),不然可能找不到相机。

2.安装RealSense-ROS

1.下载安装

bash 复制代码
mkdir -p realsense_ws/src
cd realsense_ws/src
git clone https://github.com/IntelRealSense/realsense-ros.git
git clone https://github.com/pal-robotics/ddynamic_reconfigure.git
cd ..
catkin_make

ERROR: CMake Error at /opt/ros/noetic/share/catkin/cmake/catkin_workspace.cmake:100 (message):

This workspace contains non-catkin packages in it, and catkin cannot build

a non-homogeneous workspace without isolation. Try the

'catkin_make_isolated' command instead.

这个错误表示realsense2_camera_msgs、realsense2_description、realsense2_camera不能被catkin_make编译,找了半天原因才发现是因为git clone下的realsense-ros是ros2支持的,要切换成ros分支才行,可使用git branch查看在哪个分支。

bash 复制代码
mkdir -p realsense_ws/src
cd realsense_ws/src
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`
cd ..
git clone https://github.com/pal-robotics/ddynamic_reconfigure.git
cd ..
catkin_make
catkin_make install

2.测试是否安装成功

bash 复制代码
cd realsense_ws/
source devel/setup.bash
roslaunch realsense2_camera rs_camera.launch

或者新开终端使用rostopic list查看是否有相机信息,需要可视化的话可以用rviz查看。

相关推荐
kidwjb7 小时前
信号量在进程中的使用
linux·进程间通信
C+++Python7 小时前
C++ 进阶学习完整指南
java·c++·学习
sparEE8 小时前
c++值类别、右值引用和移动语义
开发语言·c++
sulikey8 小时前
个人Linux操作系统学习笔记2 - gcc与库的理解
linux·笔记·学习·操作系统·gcc·
jrrz08288 小时前
Apollo MPC Controller
c++·自动驾驶·apollo·mpc·横向控制·lateral control
二宝哥9 小时前
Linux虚拟机网络配置
linux·运维·服务器
陳10309 小时前
Linux:进程间通信 和 简单进程池
linux·运维·服务器
jimy19 小时前
改.bashrc,直观地判断本地repo是否有改动
linux·服务器
愚昧之山绝望之谷开悟之坡10 小时前
什么是Linter?什么是沙箱!
linux·笔记
babytiger10 小时前
Gitea 重安装 + Snap 数据迁移完整流程总结
linux·elasticsearch·gitea