MAVlink协议 部分通用消息集解析
文章目录
MAVLink是一种非常轻量级的消息传输协议, 用于地面控制终端(地面站)与无人机之间 (以及机载无人机组件之间) 进行通信, 为一种设计用于资源受限系统及带宽受限链路的二进制遥测协议。
-
HEARTBEAT
检测信号消息显示系统或组件存在并正在响应。type 和 autopilot 字段(以及消息组件 id)允许接收系统适当地处理来自该系统的进一步消息(例如,通过基于 autopilot 的用户界面布局)

-
SYS_STATUS
常规系统状态。如果系统遵循 MAVLink 标准,则系统状态主要由三种正交状态/模式定义:系统模式,即 LOCKED(电机关闭和锁定)、MANUAL(RC 控制下的系统)、GUIDED(具有自主位置控制、位置设定点手动控制的系统)或 AUTO(由路径/航路点规划器引导的系统)。NAV_MODE定义了当前的飞行状态:LIFTOFF(通常是开环机动)、LANDING、WAYPOINTS 或 VECTOR。这表示内部导航状态机。系统状态显示系统当前是否处于活动状态,以及是否发生了紧急情况。在 CRITICAL 和 EMERGENCY 状态下,MAV 仍被视为活动状态,但应自动启动紧急程序。发生故障后,它应首先从活动状态变为紧急状态,以允许人工干预,然后在一定超时后状态变为紧急状态。

-
SYSTEM_TIME
系统时间是主时钟的时间,通常是主机载计算机的计算机时钟。

-
PING
请求或响应 ping 的 ping 消息。这允许测量系统延迟,包括串行端口、无线电调制解调器和 UDP 连接

-
CHANGE_OPERATOR_CONTROL
请求控制此 MAV

-
CHANGE_OPERATOR_CONTROL_ACK
接受/拒绝对此 MAV 的控制

-
AUTH_KEY
发出标识此系统的加密签名/密钥。请注意:此协议一直保持简单,因此传输密钥需要一个加密通道才能真正安全

-
LINK_NODE_STATUS
在通信链中的每个节点中生成状态,并注入到 MAVLink 流中

-
SET_MODE
设置系统模式,如 enum MAV_MODE 所定义。没有目标组件 ID,因为根据定义,模式是针对整个飞机的,而不仅仅是针对一个组件

-
PARAM_REQUEST_READ
请求读取具有 param_id 字符串 id 的 onboard 参数。板载参数存储为 key[const char*] -> value[float]。这允许将参数发送到任何其他组件(例如 GCS),而无需事先了解可能的参数名称。因此,相同的 GCS 可以为不同的自动驾驶仪存储不同的参数。

-
PARAM_REQUEST_LIST
请求此组件的所有参数。在此请求之后,将发出所有参数。

-
PARAM_VALUE
发出板载参数的值。消息中包含 param_count 和 param_index 使收件人能够跟踪收到的参数,并允许他在丢失或超时后重新请求缺少的参数。

-
PARAM_SET
设置参数值。接收组件应通过广播 PARAM_VALUE 消息来确认新参数值(广播可确保多个 GCS 都具有所有参数的最新列表)。如果发送 GCS 在其超时时间内未收到 PARAM_VALUE,则应重新发送 PARAM_SET 消息。PARAM_SET也可以在事务的上下文中调用(以 MAV_CMD_PARAM_TRANSACTION 开头)。在事务中,接收组件应以 PARAM_ACK_TRANSACTION 响应 setter 组件(而不是广播PARAM_VALUE),如果未收到 ACK,则应重新发送 PARAM_SET

-
GPS_RAW_INT
全球定位系统 (GPS) 返回的全局位置。

-
GPS_STATUS
GPS 报告的定位状态。此消息旨在显示接收器可见的每颗卫星的状态信息

-
SCALED_IMU
通常 9DOF 传感器设置的 RAW IMU 读数。此消息应包含按所述单位缩放的值。

-
RAW_IMU
9DOF 传感器的 RAW IMU 读数,由 id(默认 IMU1)标识。此消息应始终包含真实的原始值,不进行任何缩放,以允许数据捕获和系统调试。

-
RAW_PRESSURE
一个绝对压力传感器和一个差压传感器的典型设置的 RAW 压力读数。传感器值应为原始的 UNSCALED ADC 值。

-
SCALED_PRESSURE
一个绝压和差压传感器的典型设置的压力读数。单位与每个字段中的指定相同。

-
ATTITUDE
航空坐标系中的姿态(右手、Z 轴下、Y 轴右、X 轴前、ZYX、内在)

-
ATTITUDE_QUATERNION
航空坐标系中的姿态(右手、Z 轴下、X 轴前、Y 轴右),以四元数表示。四元数顺序为 w、x、y、z,零旋转将表示为 (1 0 0 0)。

-
LOCAL_POSITION_NED
过滤后的局部位置(例如,融合的计算机视觉和加速度计)。坐标系为右手,Z 轴向下(航空坐标系,NED / 东北向下约定)

-
GLOBAL_POSITION_INT
过滤后的全局位置(例如,融合的 GPS 和加速度计)。位置在 GPS 框架中(右手,Z 轴向上)

-
RC_CHANNELS_SCALED
接收到的 RC 通道的缩放值:(-100%) -10000、(0%) 0、(100%) 10000。处于非活动状态的频道应设置为 INT16_MAX

-
RC_CHANNELS_RAW
接收到的 RC 通道的 RAW 值。标准 PPM 调制如下:1000 微秒:0%,2000 微秒:100%。值 UINT16_MAX 表示通道未使用。

-
SERVO_OUTPUT_RAW
被 ACTUATOR_OUTPUT_STATUS 取代。伺服输出的 RAW 值(对于来自遥控器的 RC 输入,请使用 RC_CHANNELS 消息)。标准 PPM 调制如下:1000 微秒:0%,2000 微秒:100%。

相关文章:
MAVlink协议 部分通用消息集解析
文章目录 MAVLink是一种非常轻量级的消息传输协议, 用于地面控制终端(地面站)与无人机之间 (以及机载无人机组件之间) 进行通信, 为一种设计用于资源受限系统及带宽受限链路的二进制遥测协议。 HEARTBEAT 检测信号消息显示系统或组件存在并正…...
c++实现跳表
原理 跳表(Skip List) 是一种随机化数据结构,用于高效查找、插入和删除,尤其适用于有序数据集合。相比链表,跳表通过多层索引结构加速查找,期望时间复杂度接近 O(logn)。跳表的主要思想是: …...
新探索研究生英语读写教程pdf答案(基础级)
《新探索研究生英语读写教程》的设计和编写充分考虑国内研究生人才培养目标和研究生公共英语的教学需求, 教学内容符合研究生认知水平, 学术特征突出;教学设计紧密围绕学术阅读、学术写作和学术研究能力培养;教学资源立体多元&…...
管道与共享内存
一,命名管道 管道的限制就是他只能在有血缘关系(父子进程)的进程中,允许互相访问,这是有局限性的,所以我们想在毫无关系的进程中允许他们相互访问,这就是命名管道的定义。 总结:命名…...
ES 自定义排序方式
es默认score是根据query的相关度进行打分的,具体打分机制可以参见:官方文档。如果召回时既希望有相关性又能根据其他信息进行排序。 例如小红书搜索的时候,可能既希望有召回相关度又能根据热度信息(如果喜欢、收藏等等参数去进行召…...
在vue中,编写一个li标签同时使用v-for和v-if,谁的优先级更高
在 Vue 中,v-if 和 v-for 是两个常用的指令,但它们的优先级不同。当二者一起使用时,v-for 的优先级高于 v-if。这意味着,v-for 会先执行,即使列表中的某些元素不满足 v-if 条件,它们仍会被遍历和渲染。 由…...
Java 后端开发面试题及其答案
以下是一些常见的 Java 后端开发面试题及其答案,涵盖了 Java 基础、面向对象、并发、多线程、框架等多个方面: 1. Java 中的基本数据类型有哪些? 答案: Java 中的基本数据类型有 8 种: int:32 位整数lon…...
C++,STL 045(24.10.24)
内容 1.对set容器的大小进行操作。 2.set容器的交换操作。 运行代码 #include <iostream> #include <set>using namespace std;void printSet(set<int> &s) {for (set<int>::iterator it s.begin(); it ! s.end(); it){cout << *it <…...
二叉树习题其五【力扣】【算法学习day.12】
前言 书接上篇文章二叉树习题其四,这篇文章我们将基础拓展 ###我做这类文档一个重要的目的还是给正在学习的大家提供方向(例如想要掌握基础用法,该刷哪些题?)我的解析也不会做的非常详细,只会提供思路和一…...
【数据库】Mysql的锁类型
Mysql中的锁机制主要是为了保证数据的一致性和完整性,在并发的情况下起着至关重要的作用。其中锁的类型主要是分为以下几种: 按照粒度分类 全局锁:对于整个数据库实例进行枷锁,加锁后整个实例就处于只读的状态。局锁通常用于需要…...
自媒体短视频制作素材下载网站推荐,让创作更简单
随着自媒体行业的火爆,视频质量要求也越来越高。想要找到无版权的高清视频素材并不容易,但别担心!今天为大家整理了5个国内外高质量的素材网站,让你轻松获取自媒体短视频素材,快收藏起来吧! 蛙学网 蛙学网是…...
Altium Designer 入门基础教程(五)
本文章继续接着《Altium Designer 入门基础教程(四)》的内容往下介绍: 七、AD画板的整个流程步骤 I.集成库的制作 AD元件库有2种:1、原理图元件库SCH.LIB 2、印刷电路板(PCB)元件库 PCB.LIB 印刷电路…...
Java题集练习3
Java题集练习3 1 什么时候用instanceof instanceOf关键字主要用于判断一个对象是否为某个类的子类或是接口的实例,通常用于类型转换和运行时类型判断的场景,比如继承和多态中。比如,创建一个Animal类及其子类Cat和Cat子类Hat,可…...
【部署篇】Haproxy-01安装部署(源码方式安装)
一、HAProxy概述 HAProxy是一款免费、快速且可靠的代理软件,提供高可用性、负载均衡,支持TCP和HTTP应用代理,HAProxy凭借其卓越的性能和灵活性,成为众多知名网站和系统的首选代理软件。 核心特点: 高性能…...
开拓鸿蒙测试新境界,龙测科技引领自动化测试未来
在当今科技舞台上,鸿蒙 OS 以非凡先进性强势登场,打破传统操作系统格局,为软件测试领域带来全新机遇与艰巨挑战。 一、鸿蒙 OS 的辉煌崛起 (一)壮丽发展历程与卓越市场地位 鸿蒙 OS 的发展如波澜壮阔的史诗。2023 年…...
Java项目-基于springboot框架的自习室预订系统项目实战(附源码+文档)
作者:计算机学长阿伟 开发技术:SpringBoot、SSM、Vue、MySQL、ElementUI等,“文末源码”。 开发运行环境 开发语言:Java数据库:MySQL技术:SpringBoot、Vue、Mybaits Plus、ELementUI工具:IDEA/…...
调整数组奇偶数顺序
今天给大家分享一道题目,要求我们输入一个数组,将全部奇数放在偶数前面(无需比较大小),下面是我写的代码 这个方法比使用三个数组进行数据传输要节省不少程序运行时间,缺点是使用了较多的while循环…...
Electron调用nodejs的cpp .node扩展【非安全】
Electron调用nodejs的cpp .node扩展【非安全】 环境: electron: 30.1.1 nodejs: 20.14.0前言 Electron中可以非常容易的调用nodejs的js代码,但是对于cpp .node扩展需要一定的配置才能调用,下面介绍一种最简单的cpp扩展的调用方法ÿ…...
一文了解AOSP是什么?
一文了解AOSP是什么? AOSP基本信息 基本定义 AOSP是Android Open Source Project的缩写,这是一个由Google维护的完全免费和开放的操作系统开发项目。它是Android系统的核心基础,提供了构建移动操作系统所需的基本组件。 主要特点 完全开源…...
ffmpeg视频边缘模糊,打造梦幻般的视觉效果!
在视频编辑的世界里,细节决定成败。边缘模糊效果是一种强大的工具,可以让你的作品瞬间提升质感。通过简单的命令,你可以轻松实现视频边缘的柔和化处理,创造出梦幻般的视觉效果。 想象一下,当你将一段普通的视频应用边…...
突破限速:8大网盘直链解析方案全解析
突破限速:8大网盘直链解析方案全解析 【免费下载链接】Online-disk-direct-link-download-assistant 可以获取网盘文件真实下载地址。基于【网盘直链下载助手】修改(改自6.1.4版本) ,自用,去推广,无需输入“…...
汽车ECU FOTA升级必备:手把手教你用C语言解析S19/HEX文件(附完整代码)
汽车ECU FOTA升级实战:C语言高效解析S19/HEX文件的技术内幕 在汽车电子控制单元(ECU)的固件空中升级(FOTA)流程中,二进制文件的解析效率直接影响着升级过程的可靠性和实时性。当编译器生成的S19或HEX文件需…...
Phi-4-mini-reasoning实操手册:vLLM日志分析与常见加载失败排障指南
Phi-4-mini-reasoning实操手册:vLLM日志分析与常见加载失败排障指南 1. 模型简介 Phi-4-mini-reasoning是一个基于合成数据构建的轻量级开源模型,专注于高质量、密集推理的数据处理能力。作为Phi-4模型家族的一员,它经过专门微调以提升数学…...
我是如何突然把论文‘AI率’从85%降到6%?这6大保姆级教程,秒懂!
AI如今已成为大部分同学论文“提速神器”,但是不合规过度使用AI往往会导致论文AI率超标。如果你还在写初稿,一定要合理利用AI,让AI来搭建初稿框架,寻找灵感,整理数据,切勿过度使用AI。 今年知网,…...
深入剖析PHP 7.4.21开发服务器源码泄露漏洞及其复现过程
1. PHP开发服务器源码泄露漏洞初探 最近在测试PHP 7.4.21开发服务器时,我发现一个挺有意思的漏洞——源码可以直接被读取。这可不是闹着玩的,想象一下你的网站源代码像裸奔一样暴露在外,数据库配置、加密逻辑全都一览无余。这个漏洞影响所有P…...
Tendis与Redis Cluster对比分析:性能、成本与适用场景深度评测
Tendis与Redis Cluster对比分析:性能、成本与适用场景深度评测 【免费下载链接】Tendis Tendis is a high-performance distributed storage system fully compatible with the Redis protocol. 项目地址: https://gitcode.com/gh_mirrors/te/Tendis 在当今…...
STM32CubeMX 6.4.0 + STM32F407ZGT6 实战:基于YT8512C PHY的lwIP以太网配置与调试
1. 环境准备与硬件连接 最近在做一个物联网项目时,发现正点原子探索者开发板的PHY芯片从常见的DP83848换成了YT8512C,导致之前能跑通的以太网代码突然失效了。经过一番折腾,终于用STM32CubeMX 6.4.0完成了配置。先说说硬件准备: 开…...
CGAL Point_set_processing 点集处理函数自查表
参考来源: CGAL 6.1.1 - Point Set Processing: Algorithms 一、尺度 / K 值估算 返回值函数名作用用法示例size_testimate_global_k_neighbor_scale估算全局最优 K 邻域estimate_global_k_neighbor_scale(points)FTestimate_global_range_scale估算全局最优搜索…...
OpenClaw+GLM-4.7-Flash:个人财务管理自动化实践
OpenClawGLM-4.7-Flash:个人财务管理自动化实践 1. 为什么需要自动化财务管理 每个月末,我都会面对一堆散乱的电子账单和银行流水。手动整理这些数据不仅耗时,还容易出错。直到我发现OpenClaw与GLM-4.7-Flash的组合,才真正实现了…...
OpenClaw+nanobot镜像:个人社交媒体监控系统搭建
OpenClawnanobot镜像:个人社交媒体监控系统搭建 1. 为什么需要个人社交媒体监控系统 作为一个长期关注技术趋势的博主,我经常需要追踪社交媒体上的热点话题和关键词变化。过去我都是手动刷新各个平台,不仅效率低下,还容易错过关…...
