Realsense相机驱动安装及其ROS通讯配置——机器人抓取系统系列文章(四)

文章目录

    • 概要
    • [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

相关推荐
天天讯通1 小时前
AI语音机器人大模型是什么?
人工智能·机器人
SkyXZ~7 小时前
地瓜机器人RDK Studio使用入门教程
人工智能·嵌入式硬件·物联网·目标检测·ubuntu·机器学习·机器人
机器视觉知识推荐、就业指导7 小时前
Qt/C++ 基于回调模式的海康3D相机开发流程详解(附工程源码、开发文档下载链接)
c++·数码相机·qt
bohu8311 小时前
ros2-6.4.4 两轮差速控制机器人的问题
机器人·gazebo·rviz·两轮差速控制
CubeMars13 小时前
Duke Humanoid:利用被动动力学实现节能双足机器人
机器人
bohu8313 小时前
ros2-6.4.4 两轮差速控制机器人(问题解决)
机器人·ros2·gazebo·rviz·二轮差速控制
IPdodo全球网络服务13 小时前
Outlook注册时机器人验证无法通过的原因及解决方法
机器人·outlook
滴滴哒哒答答13 小时前
《自动驾驶与机器人中的SLAM技术》ch8:基于 IESKF 的紧耦合 LIO 系统
人工智能·机器人·自动驾驶
沙漏AI机器人13 小时前
【20250112】TRO论文:下肢外骨骼机器人的“触感透明度”与交互力实时控制新方法...
机器人