安装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查看。

相关推荐
感哥8 小时前
C++ 面向对象
c++
沐怡旸10 小时前
【底层机制】std::shared_ptr解决的痛点?是什么?如何实现?如何正确用?
c++·面试
感哥16 小时前
C++ STL 常用算法
c++
用户311879455921816 小时前
Kylin Linux 10 安装 glib2-devel-2.62.5-7.ky10.x86_64.rpm 方法(附安装包)
linux
涛啊涛17 小时前
Centos7非LVM根分区容量不足后扩容,对调硬盘挂载/
linux·磁盘管理
saltymilk1 天前
C++ 模板参数推导问题小记(模板类的模板构造函数)
c++·模板元编程
感哥1 天前
C++ lambda 匿名函数
c++
沐怡旸1 天前
【底层机制】std::unique_ptr 解决的痛点?是什么?如何实现?怎么正确使用?
c++·面试
感哥1 天前
C++ 内存管理
c++
CYRUS_STUDIO2 天前
用 Frida 控制 Android 线程:kill 命令、挂起与恢复全解析
android·linux·逆向