本文是第二篇博客,本系列博客共三篇。本文介绍mavlink里消息的种类和如何看懂开始时提到的那个官方的mavlink消息介绍https://pixhawk.ethz.ch/mavlink/
有问题请回复评论,然后邮箱提醒我回复,550746284@qq.com 私信不回。。。
(一)中已经提到了在mavlink消息帧里最重要的两个东西,一个是msgid;一个是payload,前者是payload中内容的编号,后者则存放了消息。消息有许多种类型,在官网的网页中中以蓝色的“#”加数字的方式来表示消息的编号如 “#0”(这样的表示方法应该是为了方便在网页中查找相应编号消息的定义)。在官网介绍网页里往下拉,大概拉到二分之一的位置处,开始出现“MAVLink Messages”的介绍,往下看是各种消息的数据组成说明。下面将以几个消息为例,讲解mavlink消息。
先以 #0 消息为例,这个消息叫心跳包(heartbeat)。它一般用来表明发出该消息的设备是活跃的,飞行器和地面站都会发出这个信号(一般以1Hz发送),地面站和飞行器会根据是否及时收到了心跳包来判断是否和飞行器或地面站失去了联系。
从图上可以看出,心跳包由6个数据组成,第一个是占一个字节的飞行器类型数据(type),这个数据表示了当前发消息的是什么飞行器,比如四旋翼,固定翼等等。type的取值如何与飞行器类型对应,这要在官方的mavlink消息介绍网页上找,位于网页开始出的数据枚举中。如下图所示: