文章目录
-
- 概要
- [1 Realsense相机驱动安装](#1 Realsense相机驱动安装)
-
- [Method1: 使用Intel服务器预编译包](#Method1: 使用Intel服务器预编译包)
- [Method2: 使用ROS服务器预编译包](#Method2: 使用ROS服务器预编译包)
- [Method3: 使用SDK源代码](#Method3: 使用SDK源代码)
- 方法对比总结
- [2 Realsense-ROS通讯配置与使用](#2 Realsense-ROS通讯配置与使用)
-
- [2.1 Realsense-ROS包安装](#2.1 Realsense-ROS包安装)
- [2.2 ROS节点启动](#2.2 ROS节点启动)
- 小结
- Reference
概要
本文首先阐述了Realsense相机驱动安装的三种方法,并介绍其不同点;进一步地,介绍了其与ROS通讯包的安装及使用方法。
如果要使用ROS通讯,强烈建议读完全文再安装,因为驱动包和通讯包的版本要匹配。
1 Realsense相机驱动安装
Method1: 使用Intel服务器预编译包
安装教程见文末参考网站[2],主要使用sudo apt-get install
指令安装,这种安装方式的主要特点如下:
- 适用用户:适用于大多数 Linux 用户,特别是 Jetson 用户应遵循特定的 Jetson 安装指南。
- 特点 :
1)快速安装,
2)无需编译。
3)包含图形工具和示例。 需要安装额外的开发包(librealsense2-dev 和 librealsense2-dkms)以进行开发。 - 优点:简单快捷,适合一般开发者和用户。
- 缺点:可能不包含最新的开发特性或修复。
Method2: 使用ROS服务器预编译包
这种方式直接安装适配ROS的驱动,代码如下:
bash
sudo apt install ros-<ROS_DISTRO>-librealsense2*
- 适用用户:适用于使用 ROS 的开发者,特别是那些不需要图形界面工具的用户。
- 特点 :
1)专注于 ROS 集成,不包含图形工具和示例。
2)需要配置 Ubuntu 仓库。
3)使用特定的 ROS 发行版命令安装(如 ros-humble-librealsense2*)。 - 优点:适合 ROS 项目,可以与 ROS 其他包和工具链无缝集成。
- 缺点:不支持所有 ROS 发行版(如 Foxy EOL)。
Method3: 使用SDK源代码
安装教程见文末参考网站[3],使用源代码的安装方式相对步骤较多,但优点也十分明显:
- 适用用户:高级用户、开发者或需要最新特性和修复的用户。
- 特点 :
1)需要编译,可能需要更多的系统配置。
2)允许最大的灵活性和定制性。
3)可以获取最新的开发特性和修复。 - 优点:包含所有最新的特性和修复,适合需要定制或最新功能的项目。
- 缺点:安装过程更复杂,需要更多的时间和专业知识。
方法对比总结
图形工具的角度 :
其中Method1和Method3提供了图形工具,图形界面工具为用户提供了一种直观的方式来操作和理解 RealSense相机的功能,而不需要直接编写代码或使用命令行界面。
图形界面的运行指令为realsense-viewer
,在本文也可以用来检查驱动是否安装成功,运行后如下图所示:
版本的可控性:
提示:如果要使用后续的realsense-ros通讯包,则需要保证librealsense包和realsense-ros包的版本要适配,适配查询参考网站[4],在查得适配的版本号之后,在网站[4]和[1]可分别下载适配的realsense-ros包和librealsense包
如果搭建的系统需要基于ROS通讯,推荐使用源代码安装的方式Method3,这种方式不仅提供realsence相机的图形界面工具,还能够控制安装的librealsense版本号。Method1安装的librealsense版本是默认的版本,版本号不可控,而且最新版的librealsense可能找不到匹配的realsense-ros通讯包。
相反如果用户后续不需要使用ROS,比如直接使用librelasense的Python接口,那么推荐Method1的方式。
2 Realsense-ROS通讯配置与使用
2.1 Realsense-ROS包安装
在使用上述Method3安装完librealsense之后,再按照上述红色提示部分,安装与librealsense版本匹配的realsense-ros包。
以ROS2为例,其步骤如下 [5]:
1)创建一个 ROS2 工作空间
bash
mkdir -p ~/ros2_ws/src # 创建工作空间的 src 文件夹
cd ~/ros2_ws/src # 进入 src 文件夹
2)将下载到的对应版本的realsense-ros包放置到 ~/ros2_ws/src/
文件夹中,并返回工作空间
bash
# 下载到的realsense-ros包的移动可以手动也可以用如下mv指令移动:
# mv 源文件路径 目标文件路径 # 如果是压缩包,需要先解压
cd ~/ros2_ws # 返回工作空间的根目录
3)安装依赖项
bash
sudo apt-get install python3-rosdep -y # 安装 rosdep
sudo rosdep init # 初始化 rosdep
rosdep update # 更新 rosdep
rosdep install -i --from-path src --rosdistro $ROS_DISTRO --skip-keys=librealsense2 -y # 安装工作空间的依赖项
4)构建工作空间
bash
colcon build # 使用 colcon 构建工作空间
5)配置环境
bash
ROS_DISTRO=<YOUR_SYSTEM_ROS_DISTRO> # 设置你的 ROS 发行版,如:iron, humble, foxy
source /opt/ros/$ROS_DISTRO/setup.bash # 源 ROS 发行版的设置脚本
cd ~/ros2_ws # 返回工作空间的根目录
. install/local_setup.bash # 源本地设置脚本以配置环境
注意:替换 <YOUR_SYSTEM_ROS_DISTRO>
为你的系统使用的 ROS 发行版名称。
以上是针对ROS2的配置方式,针对ROS1的配置方式参考网站[6]。
2.2 ROS节点启动
下面指令分别使用了ROS2的node和launch文件启动realsense-ros [5]。
直接运行节点
bash
ros2 run realsense2_camera realsense2_camera_node
# or, with parameters, for example - temporal and spatial filters are enabled:
ros2 run realsense2_camera realsense2_camera_node --ros-args -p enable_color:=false -p spatial_filter.enable:=true -p temporal_filter.enable:=true
或者直接运行launch文件
bash
ros2 launch realsense2_camera rs_launch.py
ros2 launch realsense2_camera rs_launch.py depth_module.depth_profile:=1280x720x30 pointcloud.enable:=true
以上是针对ROS2的启动方式,针对ROS1的启动方式参考网站[6]。
小结
本文首先介绍了realsense相机的驱动的三种安装方法及其特点,并在此基础上,介绍了realsense-ROS通讯包的安装和使用,供相关人员参考。主要参考官方网站如下所示。
Reference
[1] Realsense SDK源代码下载网站:https://github.com/IntelRealSense/librealsense/releases
[2] Realsense驱动安装Method1:https://github.com/IntelRealSense/librealsense/blob/master/doc/distribution_linux.md
[3] Realsense驱动安装Method3:https://github.com/IntelRealSense/librealsense/blob/master/doc/installation.md
[4] Realsense-ROS通讯包查询下载网站:https://github.com/IntelRealSense/realsense-ros/releases?page=2
[5] Realsense-ROS2通讯包安装教程:https://github.com/IntelRealSense/realsense-ros
[6] Realsense-ROS1通讯包安装教程:https://github.com/IntelRealSense/realsense-ros/tree/ros1-legacy