当前位置:   article > 正文

Ubuntu22.04 realsenseSDK2和ROS2Wrapper安装方法,包含T265版本踩坑问题_ros2 realsense

ros2 realsense

余既为此文,经年拟安装ROS2和T265驱动,后发现不少问题,遂重编,欢迎补充。

SDK2分为两种安装方法,这里只是Intel的翻译和个人安装记录总结。详细应该参看Intel realsenseSDK2的github仓库Release Intel® RealSense™ SDK 2.0 (v2.51.1) · IntelRealSense/librealsense · GitHub

软件说明

如果你只需要打开相机,不做ros开发,则只需要realsenseSDK2。

如果做ros2开发,则需要realsenseSDK2和ROS2 Wrapper for Intel® RealSense两个。

每一个软件都
具体分为APT安装和源码安装。

注意一点,realsense需要ubuntu内核Kernel处于指定版本,在后续安装中也需要对内核进行修改,请自行对Kelnel降级:

  • Ubuntu 20/22 (focal/jammy) with LTS kernel 5.13, 5.15 **

  • Ubuntu 14/16/18/20 with LTS kernel (< 5.13)

  • Ubuntu with Kernel 4.16

关于T265环境版本问题

其中2023年7月7日发布的realsenseSDK2.54版本已经不支持T265,同时ROS2-realsense4.54.1版本也不再支持T265,而 ROS2-realsense4.51.1只支持到realsenseSDK2.51.1版本,所以如果要配置T265相机环境,需要realsenseSDK2.51.1和ROS2-realsense4.51.1两个指定版本,两者都需要源码安装

apt安装

realsenseSDK2apt安装

依次运行以下命令,注意realsense的key仓库地址改变过,所以请看清楚第一行的key安装地址,如果出现问题,需要及时的删除key和apt仓库地址。这种安装方法目前up只知道会安装最新版本,不知道如何指定版本

  1. # 依次运行
  2. sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-key F6E65AC044F831AC80A06380C8B3A55A6F3EFCDE || sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-key F6E65AC044F831AC80A06380C8B3A55A6F3EFCDE
  3. #如果出现key添加失败就在/etc/apt/sources.list 和/etc/apt/sources.list.d里删除对应地址
  4. sudo add-apt-repository "deb https://librealsense.intel.com/Debian/apt-repo $(lsb_release -cs) main" -u
  5. sudo apt-get install librealsense2-dkms
  6. sudo apt-get install librealsense2-utils
  7. sudo apt-get install librealsense2-dev

如果执行完以上代码可以输入命令realsen-viwer来判断是否安装正确。

该安装过程已被验证正确,如果出现问题欢迎私信。

以下是编译安装的卸载方法

  1. #Remove a single package with:
  2. sudo apt-get purge <package-name>
  3. #Remove all RealSense™ SDK-related packages with:
  4. dpkg -l | grep "realsense" | cut -d " " -f 3 | xargs sudo dpkg --purge

ROS2 Wrapper for Intel® RealSense-apt安装

一行搞定,但是这个直接安装最新版本,对于T265用户不适用

  1. sudo apt install ros-<ROS_DISTRO>-realsense2-*
  2. sudo apt install ros-humble-realsense2-*#比如对于HUmble版本

source安装

realsenseSDK2-source安装

Intel主推apt,dkml之类的安装,但是我们不免需要对源码进行研究,以下是Intel源码安装地址

source安装:https://github.com/IntelRealSense/librealsense/blob/development/doc/installation.md

对于常用的22.04等版本的Ubuntu第一步基本操作,up推荐源码安装

  1. 预备操作
  2. #更新apt并安装插件
  3. sudo apt-get update && sudo apt-get upgrade && sudo apt-get dist-upgrade
  4. sudo apt-get install git libssl-dev libusb-1.0-0-dev libudev-dev pkg-config libgtk-3-dev cmake
  5. #对于不同ubuntu版本还需要安装不同的包
  6. #Ubuntu 14 or when running Ubuntu 16.04 live-disk:
  7. ./scripts/install_glfw3.sh
  8. #Ubuntu 16:
  9. sudo apt-get install libglfw3-dev
  10. #Ubuntu 18/20/22:
  11. sudo apt-get install libglfw3-dev libgl1-mesa-dev libglu1-mesa-dev at
  12. #下载源码,注意安装指定版本的!!!!!!,这里安装2.51
  13. git clone https://github.com/IntelRealSense/librealsense.git
  14. 2.
  15. #拔下realsense设备然后进入realsenseSDK的仓库并运行
  16. cd librealsense
  17. #运行realsense的脚本
  18. ./scripts/setup_udev_rules.sh该命令用于获得权限
  19. ./scripts/setup_udev_rules.sh --uninstall可以卸载上面命令
  20. #安装应用补丁内核模块,不同版本安装不同补丁
  21. # Ubuntu 20/22 (focal/jammy) with LTS kernel 5.13, 5.15
  22. ./scripts/patch-realsense-ubuntu-lts-hwe.sh
  23. #Ubuntu 14/16/18/20 with LTS kernel (< 5.13)
  24. ./scripts/patch-realsense-ubuntu-lts.sh
  25. #Ubuntu with Kernel 4.16
  26. ./scripts/patch-ubuntu-kernel-4.16.sh

然后就是正常的编译realsense仓库的操作,请注意以下教程适用于Ubuntu22.04,对于14.04可能会遇到问题,比如Intel在文档里强调14.04需要修改Gcc的默认版本

  1. #在realsense仓库目录下建立build文件夹
  2. mkdir build && cd build
  3. #然后选择运行以下命令进行Cmake
  4. cmake ../
  5. cmake ../ -DBUILD_EXAMPLES=true
  6. cmake ../ -DBUILD_EXAMPLES=true -DBUILD_GRAPHICAL_EXAMPLES=false #For systems without OpenGL or X11 build only textual examples
  7. #make,但是不清楚为什么先uninstall一遍
  8. sudo make uninstall && make clean && make && sudo make install

共享对象将安装在/usr/local/lib中

头文件位于/usr/local/include中

二进制演示、教程和测试文件将被复制到/usr/local/bin中

最后通过编译安装之后能打开realsense-viewer,如果不能打开,up以前也遇到不能打开的问题,up认为是没有使ubuntu内核降级到制定版本的问题。不过如果源码安装无法打开,你可以试试下面的apt安装。

  1. # 依次运行
  2. sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-key F6E65AC044F831AC80A06380C8B3A55A6F3EFCDE || sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-key F6E65AC044F831AC80A06380C8B3A55A6F3EFCDE
  3. #如果出现key添加失败就在/etc/apt/sources.list 和/etc/apt/sources.list.d里删除对应地址
  4. sudo add-apt-repository "deb https://librealsense.intel.com/Debian/apt-repo $(lsb_release -cs) main" -u
  5. sudo apt-get install librealsense2-dkms
  6. sudo apt-get install librealsense2-utils

ROS2 Wrapper for Intel® RealSense-source安装

  1. #建立一个ROS2工作空间,比如:
  2. mkdir -p ~/ros2_ws/src
  3. cd ~/ros2_ws/src/
  4. #Clone the latest ROS2 Intel® RealSense™ wrapper from here into '~/ros2_ws/src/'
  5. git clone https://github.com/IntelRealSense/realsense-ros.git -b ros2-development
  6. cd ~/ros2_ws
  7. #安装依赖Install dependencies
  8. sudo apt-get install python3-rosdep -y
  9. sudo rosdep init # "sudo rosdep init --include-eol-distros" for Eloquent and earlier
  10. rosdep update # "sudo rosdep update --include-eol-distros" for Eloquent and earlier
  11. rosdep install -i --from-path src --rosdistro $ROS_DISTRO --skip-keys=librealsense2 -y
  12. #Build
  13. colcon build
  14. #Source environment
  15. # ROS_DISTRO=<YOUR_SYSTEM_ROS_DISTRO> 比如ROS_DISTRO: iron, humble
  16. source /opt/ros/$ROS_DISTRO/setup.bash
  17. cd ~/ros2_ws
  18. . install/local_setup.bash

trubleShoot

如果你apt安装出现key问题可以参看下面的博客

ubuntu 22.04 修复 key is stored in legacy trusted.gpg keyring_see the deprecation section in apt-key(8) for deta_jiang_huixin的博客-CSDN博客

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/article/detail/59618
推荐阅读
相关标签
  

闽ICP备14008679号