**

ROS与PX4的通信 引言:

**

​视频详解链接:ROS与PX4的通信 引言​

本部分主要分为三个部分,主要包括ROS环境的配置、PX4环境的配置,以及MAVROS的安装,学者可以根据以下链接自行配置,以下给出的链接位整套配置,读者可以详细查看整个配置过程,避免在环境配置上花费太多的时间。

(注意:以下配置过程完成后可以通过仿真实现PX4和ROS的通信,并且完成简单的offboard控制模式,但是在实物连接过程中,仍然与仿真环境稍有差别,请仔细查看本章节内容)

**

仿真环境:

**

1、ROS安装教程(ROS Melodic + Ubuntu18.04)

javascript:void(0)

2、[Pixhawk/PX4]开发环境搭建(Ubuntu 18.04)

javascript:void(0)

3、[PX4]mavros安装+offboard控制过程记录

javascript:void(0)

实物部分:在配置万上述环境后,可以通过USB先连接笔记本和飞控,在连接的过程中,应该关掉QGC地面站,否则将出现串口连接冲突。

步骤一:将组装好的实物无人机通过USB线连接主控端,需要注意的是,连接PC的USB口,尽量使用PC自带的USB口,通过一转多板,可能出现连接不上的问题。

2.0、ROS与PX4通信详解_终端命令

步骤二:打开终端,检查是否识别到飞控,输入命令​​ll /dev/ttyACM*​

2.0、ROS与PX4通信详解_人工智能_02

步骤三:检测到后,添加权限,否则无法启动,终端命令如下:

sudo chmod 777 /dev/ttyACM0

具体权限可以自行配置

2.0、ROS与PX4通信详解_javascript_03

步骤四:启动mavros节点,终端命令如下:

roslaunch mavros px4.launch _fcu_url:=/dev/ttyACM0:57600

其中波特率等可以在熟悉后自行配置即可,本文已57600为例,需要与PX4一致。

2.0、ROS与PX4通信详解_官网_04

成功启动节点后,可以看到反馈的版本号等信息,至此,已经通过MAVROS实现了ROS与PX4的通信。

2.0、ROS与PX4通信详解_人工智能_05

**

MAVROS介绍

**

引言:

实现ROS和PX4固件的通信需要一定的协议转换,PX4采用的是MAVLINK协议,为了实现两者的通信,通常使用MAVROS作为桥梁,具体的MAVROS介绍,将在以下给出相关链接,感兴趣的可以深入研究,对于一般使用来说,整体上了解它的功能的注意用即可。

本部分主要分为三个部分,主要包括ROS环境的配置、PX4环境的配置,以及MAVROS的安装,学者可以根据以下链接自行配置,以下给出的链接位整套配置,读者可以详细查看整个配置过程,避免在环境配置上花费太多的时间。

(注意:以下配置过程完成后可以通过仿真实现PX4和ROS的通信,并且完成简单的offboard控制模式,但是在实物连接过程中,仍然与仿真环境稍有差别,请仔细查看本章节内容)

仿真环境:

​1、MAVROS简介​

https://www.ncnynl.com/archives/201709/2077.html

​2、MAVROS官网​

http://wiki.ros.org/mavros

**

MAVROS常用话题与服务

**

引言

在进行MAVROS学习之前,请先对ROS做一个简单的学习。在了解了ROS的基础上再进行MAVROS的学习,可以快速的掌握MAVROS通信协议的开发。

基于ROS+PX4的开发方式,实现两者的通信是不可或缺的,本小结主要介绍常用的一些通过MAVROS控制无人机运动的相关话题和服务。需要详细深入的了解,请参考上一小节中给出的MAVROS官网。

在下一个小结中,将会选定一个具体的话题进行介绍,其他的话题和服务本质上原理都是一样的,不多说,直接给出链接。

1、MAVROS常用话题和服务介绍