二、MAVROS和MAVLINK的关联和区别

二、MAVROS和MAVLINK的关联和区别

1、MAVLink:Micro Air Vehicle Link

即微型飞行器连接通信协议,于2009年初由Lorenz Meier首次发布。Mavlink协议是在串口通讯基础上的一种更高层的开源通讯协议。MAVLink是一种非常轻量级的通信协议,主要用于与无人机(以及板载无人机组件之间)进行通信。MAVlink由17个字节组成,包括消息ID、目标ID和数据。其中消息ID显示是什么数据,可以在messageID命令集中看到消息ID。这使得MAVLink能够从同一个通道传输信息,从多个无人机获取信息。另外,消息也可以通过无线信号进行传输。

2、ROS机器人操作系统

国际最通用的机器人操作系统,将不同硬件的操作进行封装,通过简单的话题发布和订阅,可以让算法开发者不必考虑不同的硬件平台,以及各种硬件之间的配合,仅需要用自己的熟悉的Python或者C++语言编写算法,ROS负责联通算法实施和硬件驱动和模拟仿真。通俗解释,ROS是一个独立的面向机器人的操作系统,说是操作系统,ros 只是 linux 系统上的一大堆工具包而已,所以 ros 继承了 linux 的所有特性Linux 上可以做的事情 ros 都可以做。

3、MAVROS是ROS的一个软件包

该功能包允许在运行ROS的计算机、支持MAVlink的飞控板以及支持MAVlink的地面站之间通讯。通俗的理解为,mavros 又是对 ros 的更高层次的封装,mavros 向 ros 添加了争对与 mavlink 协议的各种消息和服务,相当于我们可以更方便的解析mavlink 协议。如果我们不使用 mavros,那么我们就必须自己写代码对 mavlink 进行解析,并且设计自己的代码框架,而且不能使用 ros 的很多工具库。并且现在很多第三方工具(比如视觉识别),都完整的支持 ros,所以使用 mavros,会给我们的开发带来很多好处。
总结:mavros作为连接ROS和PX4的桥梁,也是我们需要重点学习的地方。

你可能感兴趣的:(无人机,机器人)