Bootstrap

Jetson Nano源码安装realsense和realsense-ros

前言

最近在搭建自主无人机,原本用树莓派作为记载电脑,但因为算力不够,进而转向Jetson Nano,在此记录下realsense和realsense-ros的安装过程。(由于是配置好后才开始记录,所以没有把全部的报错页面截图保存下来)。

本文的系统环境:ubuntu20.04
要注意不同的realsense版本对应有不同的realsense-ros版本,本文的版本是:realsense-v2.53.1realsense-ros-v2.3.2

安装realsense-v2.53.1

realsense从2.54.1版本开始移除了对T265相机的支持,经过实测,v2.53.1版本可用,下面介绍安装方法:
首先拔掉T265相机,安装依赖

sudo apt-get install git cmake libssl-dev libusb-1.0-0-dev pkg-config libgtk-3-dev libglfw3-dev libgl1-mesa-dev libglu1-mesa-dev

然后克隆源代码

git clone -b v2.53.1 https://github.com/IntelRealSense/librealsense

运气好能直接克隆下来,实在克隆不了,翻墙打开网站
链接: https://github.com/IntelRealSense/librealsense.
在这里插入图片描述点击红色框框那里,然后选择版本v2.53.1
在这里插入图片描述
将源码下载下来,解压放到文件夹下面(注意:不要放在工作空间catkin_ws下,不然到时候编译工作空间时会报错!!)

进入realsense中

cd realsense

将规则文件99-realsense-libusb.rules复制到/etc/udev/rules.d/

sudo cp config/99-realsense-libusb.rules /etc/udev/rules.d
sudo udevadm control --reload-rules && udevadm trigger

如果没有99-realsense-libusb.rules,可以在config目录下创建一个新的,然后将内容复制粘贴过去,具体内容可以参考这篇文章
realsense failed to open usb interface: 0, error: RS2_USB_STATUS_NO_DEVICE 错误解决方法

回到realsense目录下,创建build文件夹,进入build文件夹开始编译和安装

mkdir build
cd build
cmake …
make
sudo make install

编译的过程会比较缓慢,而且有可能报错:fatal:unable to access 'https://github.com/curl/curl.git....
这个时候直接去: https://github.com/curl/curl下载curl.zip
解压并改名为libcurl放到~/realsense/build/third-party
在这里插入图片描述
还要把~/librealsense/CMake目录下的external_libcurl.cmakeGIT_REPOSITORY给注释掉

在这里插入图片描述在这里插入图片描述
继续编译,等编译完成后,测试是否安装成功

realsense-viewer

在这里插入图片描述

安装成功的话插上T265相机,即可显示相机位置。

安装realsense-ros-v2.3.2

安装这个功能包就比较简单了,直接clone

git clone -b v2.3.2 https://github.com/IntelRealSense/realsense-ros.git
git clone https://github.com/pal-robotics/ddynamic_reconfigure.git

实在clone不来,还是老办法https://github.com/IntelRealSense/realsense-ros.git
在这里插入图片描述在这里插入图片描述
直接下载压缩包,解压放到工作空间下,编译成功即可。

*测试D435相机报错

完成上面的步骤之后,就可以开始测试深度相机了。不一定会报这个错,因为我在树莓派上就没有这个错误,但我还是在此记录一下。
输入命令,启动D435

roslaunch realsense2_camera rs_camera.launch

在这里插入图片描述出现这个报错是因为没有链接上OpenCV4
检查是否安装OpenCV,因为本文安装的是OpenCV4,所以输入命令

pkg-config --cflags opencv4

如果安装的是OpenCV3,则用以下命令

pkg-config --cflags opencv

不清楚版本的可以用这条命令查看

pkg-config --modversion opencv

没安装的先把OpenCV安装上,再运行测试
如果已经安装了,那就接着看,下一步的任务就是让realsense-ros链接上OpenCV
打开realsense2_camera功能包下的CMakeList,添加下面语句

find_package(catkin REQUIRED COMPONENTS
OpenCV REQUIRED)

在这里插入图片描述

include_directories(${OpenCV_INCLUDE_DIR})

在这里插入图片描述

加上这两句之后可能还会报错,说什么找不到:OpenCVConfig.cmake
这时候别慌,先通过命令查询这个文件所在的位置

sudo find / -name “OpenCVConfig.cmake”

将得到的目录添加进CMakeList里面,“”里面就是文件所在的位置

set(OpenCV_DIR “/usr/lib/aarch64-linux-gnu/cmake/opencv4”)

在这里插入图片描述
添加好后,编译测试,终于不报错了。

后面会进行实机测试,我在这先立个flag,有时间的话把整个过程写一下

;