配置mavros+t265无人机后总结

        一.配置信息    

本文的系统环境: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)

鱼香肉丝ROS一键安装

realsense-viewer 不识别 T265——Realsense SDK 在 v2.54.1 版本以后不再支持T265相机的解决办法

  • 25
    点赞
  • 24
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
要利用mavros按键操纵无人机,你需要按照以下步骤进行操作: 1. 首先,确保你的无人机和计算机上都安装了ROS(Robot Operating System)和mavros(MAVLink to ROS interface)。 2. 配置mavros:在ROS工作空间中运行以下命令,以创建mavros包的符号链接: ``` cd ~/catkin_ws/src git clone https://github.com/mavlink/mavros.git cd ~/catkin_ws catkin_make ``` 3. 配置串口通信:连接无人机到计算机,并确保串口通信正常。你可能需要调整串口权限或添加用户到dialout组。 4. 启动mavros节点:在终端中运行以下命令以启动mavros节点: ``` roslaunch mavros apm.launch ``` 5. 使用按键操纵无人机:创建一个ROS节点,用于监听按键输入并发送对应的无人机控制指令。你可以使用Python编写该节点。以下是一个简单的例子: ```python #!/usr/bin/env python import rospy from std_msgs.msg import String def key_listener(): pub = rospy.Publisher('/mavros/setpoint_raw/local', String, queue_size=10) rospy.init_node('key_listener', anonymous=True) rate = rospy.Rate(10) # 10hz while not rospy.is_shutdown(): key = raw_input("Enter a command: ") pub.publish(key) rate.sleep() if __name__ == '__main__': try: key_listener() except rospy.ROSInterruptException: pass ``` 此节点会监听终端的按键输入,并将输入作为控制指令发布到`/mavros/setpoint_raw/local`话题上。 6. 运行无人机控制节点:在终端中运行以下命令以启动你编写的按键监听节点: ``` rosrun <your_package_name> key_listener.py ``` 现在,你可以在终端中输入控制指令来操纵无人机了。请记住,在操纵无人机之前,确保你已经熟悉并了解无人机的飞行控制原理和相关安全事项。 请注意,这只是一个简单的示例,实际情况可能会更复杂。你可能需要根据你使用的无人机和控制器进行适当的配置和修改。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值