一.配置信息
本文的系统环境:ubuntu18.04、arm架构,本文仅在该环境下进行过测试并验证可行。
时间2024年7月15日。
注意:安装时切忌将相机连接在设备上。
由于最新版的releases SDK不再支持t265因此在安装releases SDK和Realsense-ros要选择正确的版本。
二.安装ros
常规的ros安装方法网络上有很多,那些方法不但对网络有要求且安装步骤也很复杂,我这里推荐使用鱼香ros的一键安装方法
1)下载并运行安装脚本
- 打开Ubuntu终端。
- 输入以下命令下载并运行鱼香ROS一键安装脚本:
wget http://fishros.com/install -O fishros && . fishros
2)配置系统源
- 脚本运行后,根据提示输入数字进行系统源的配置。
- 例如,输入数字5以一键配置系统源,输入数字2以更换系统源并清理第三方源。
3)添加ROS/ROS2源
- 根据提示,输入数字1以添加ROS1的源。
- 选择与Ubuntu18.04版本对应的ROS版本Melodic。
4)一键安装ROS
- 选择“一键安装”选项(通常是输入数字1),然后根据提示选择是否更换源安装,并选择你的Ubuntu版本对应的ROS版本进行安装。
5)测试是否成功安装ros
roscore
若正常出现以下信息,说明已经成功安装
.. logging to /home/ubuntu/.ros/log/cb38e680-dee2-11ea-bae1-70665563e003/roslaunch-nx-1205.log
Checking log directory for disk usage. This may take a while.
Press Ctrl-C to interrupt
Done checking log file disk usage. Usage is <1GB.
started roslaunch server http://nx:36773/
ros_comm version 1.14.7
SUMMARY
========
PARAMETERS
* /rosdistro: melodic
* /rosversion: 1.14.7
NODES
auto-starting new master
process[master]: started with pid [1215]
ROS_MASTER_URI=http://nx:11311/
setting /run_id to cb38e680-dee2-11ea-bae1-70665563e003
process[rosout-1]: started with pid [1228]
started core service [/rosout]
三.安装mavros
采用二进制安装,官方链接
sudo apt-get install ros-melodic-mavros ros-melodic-mavros-extras
wget https://raw.githubusercontent.com/mavlink/mavros/master/mavros/scripts/install_geographiclib_datasets.sh
sudo bash ./install_geographiclib_datasets.sh
如果wget失败,可以点击链接下载文件,然后移至系统内,进入文件夹,执行脚本文件,完成安装
四.安装安装Realsense SDK
注意:安装时,不要将相机连在设备上。
本人经过多次尝试,发现用源码编译安装的2.50、2.48、2.36版本的SDK全部无法连接上我的t265,到目前为止本人没有找到原因,后发现Realsense官方支持t265的最新版本是2.53.1而非部分文章说的2.50,于是我改成了用另外一种方法安装2.53.1版本,这次成功连接上了我的t265,因此笔者也推荐用这个方法安装。
如果之前安装不成功,或者安装了其他版本的 SDK ,最好先全部卸载,然后再依次执行下述命令。使用以下命令删除所有与 RealSense™ SDK 相关的包。
dpkg -l | grep "realsense" | cut -d " " -f 3 | xargs sudo dpkg --purge
(1)注册服务器的公钥
sudo mkdir -p /etc/apt/keyrings
curl -sSf https://librealsense.intel.com/Debian/librealsense.pgp | sudo tee /etc/apt/keyrings/librealsense.pgp > /dev/null
(2) 确保安装了 apt HTTPS 支持
sudo apt-get install apt-transport-https
(3)将服务器添加到存储库列表中
注意:下面1、2行是一整条命令,需要一起复制粘贴。可以看到第1行最后是一个管道符号 |。
echo "deb [signed-by=/etc/apt/keyrings/librealsense.pgp] https://librealsense.intel.com/Debian/apt-repo `lsb_release -cs` main" | \
sudo tee /etc/apt/sources.list.d/librealsense.list
sudo apt-get update
(4)安装相关库
sudo apt-get install librealsense2-udev-rules:arm64=2.53.1-0~realsense0.703
sudo apt-get install librealsense2=2.53.1-0~realsense0.703
sudo apt-get install librealsense2-gl=2.53.1-0~realsense0.703
sudo apt-get install librealsense2-utils=2.53.1-0~realsense0.703
sudo apt-get install librealsense2-dev=2.53.1-0~realsense0.703
%============================下面这个可以不装============================%
sudo apt-get install librealsense2-dbg=2.53.1-0~realsense0.703
(5)连接t265并运行: realsense-viewer
以验证安装。
五.安装Realsense-ros
由于2.53.1版本的SDK没有对应版本的Realsense-ros,因此笔者使用的是2.3.2版本的,实测有效。
首先去github上下载2.3.2的ros包,链接
选择这里
选择这个版本
下载zip格式的
接下来进行安装
#创建工作空间
mkdir -p ~/catkin_ws/src
将Realsense-ros解压进去
unzip realsense-ros-2.3.2.zip -d ~/catkin_ws/src/
cd ~/catkin_ws/src/
# NX默认安装opencv4.1,cv_bridgeConfig.cmake默认为opencv3.2.0,更改opencv4路径
sudo vim /opt/ros/melodic/share/cv_bridge/cmake/cv_bridgeConfig.cmake
如图所示
安装
#初始化工作空间
catkin_init_workspace
cd ..
#编译工作空间
catkin_make clean
catkin_make -DCATKIN_ENABLE_TESTING=False -DCMAKE_BUILD_TYPE=Release
catkin_make install
#增加环境变量
sudo vim ~/.bashrc
source ~/catkin_ws/devel/setup.bash
export ROS_PACKAGE_PATH=${ROS_PACKAGE_PATH}:~/catkin_ws/
配置坐标转换包
#下载坐标转换工具,编译工作空间
mkdir -p ~/vision_ws/src
cd vision_ws/src
git clone https://github.com/thien94/vision_to_mavros.git
catkin_init_workspace
cd ..
catkin_make
#配置环境变量
gedit ~/.bashrc
source ~/vision_ws/devel/setup.bash
export ROS_PACKAGE_PATH=${ROS_PACKAGE_PATH}:~/vision_ws/
#修改配置参数
cd vision_ws/src/vision_to_mavros/launch
sudo vim t265_all_nodes.launch
#将<include file="$(find mavros)/launch/apm.launch">修改为<include file="$(find mavros)/launch/px4.launch">
参考文章
VIO视觉无人机室内定点自主飞行(T265+PX4+Mavros+NX)
realsense-viewer 不识别 T265——Realsense SDK 在 v2.54.1 版本以后不再支持T265相机的解决办法