无人机无线电链接中的UART MSP协议

客户询问无人机无线电链接中的一些UART MSP协议.

Q: 您的无人机无线电链路是否支持通过 UART MSP 协议实现的 OSD?
一个: 是, 支持.

在无人机世界里, 的组合UART (通用异步接收器/发送器) 和MSP (MultiWii 串行协议) 是连接飞行控制器和各种外围设备的基本通信系统. 这里是UART MSP协议的详细解释.

UART 和 MSP 的作用

了解他们如何协同工作, 让我们分解一下他们的个人角色:

  • UART (物理高速公路): UART是一种硬件接口,是异步串行通信的协议. 它定义了如何将数据字节转换为串行比特流并通过物理线路发送 (TX 用于发送, RX 用于接收). 在无人机中, UART 是一个 物理串口 在飞控上.
  • MSP (交通规则): MSP 是一个基于软件的, 二进制通信协议. 它定义了一个标准化的 消息格式 用于在飞行控制器和其他设备之间交换数据和命令. 它指定如何将电池电压或飞行模式等信息打包到已知结构中,以便接收端能够正确解释它.

当我们谈论 “UART MSP 协议,” 我们指的是使用通过 UART 串​​行连接传输 MSP 消息. UART提供物理数据总线, 而 MSP 定义了该总线上使用的语言.

UART 和 MSP 如何在无人机中协同工作

这种组合主要用于飞行控制器和需要与其语言对话的外设之间的双向通信. 典型的工作流程如下:

  1. 外围设备 (例如, OSD 模块) 使用其 TX 通过 UART 端口连接到飞行控制器, RX, 和 GND 线.
  2. 飞控固件 (像 Betaflight 或 iNav) 配置为使用 MSP 该特定 UART 上的协议.
  3. 然后外设可以发送 MSP 命令到 请求数据 从飞行控制器. 例如, OSD 不断请求姿态和电池数据覆盖在视频源上.
  4. 反过来, 地面站配置器 (就像 Betaflight 配置器) 可以使用 MSP 来 发送命令 到飞行控制器, 例如设置参数或请求其状态.

关键应用和设备

MSP over UART 对于连接无人机生态系统中的多个关键组件至关重要:

  • FPV 护目镜 OSD: 这是最常见的用途之一. DJI 或 FatShark 的护目镜使用 MSP 请求和显示电池电压等 OSD 信息, 接收信号强度指数, 和飞行模式从飞行控制器到您的视频源.
  • 屏幕显示单元: 独立 OSD 模块 (像 MWOSD) 依靠 MSP 来获取它们显示的数据.
  • 外部传感器: 一些传感器, 像某些激光雷达测距仪或数字空速传感器, 可以使用MSP协议将读数直接发送到飞行控制器.
  • 无线电遥测: 虽然高层系统经常使用MAVLink, 一些更简单的遥测链接 (例如, 在某些基于 Wi-Fi 的系统中) 可配置将MSP数据透明传输至地面站.

配置及实用注意事项

以下是您在实际使用中需要了解的内容:

  • 组态: 您必须在飞行控制器固件中的特定 UART 端口上启用 MSP (例如, Betaflight/iNav/ArduPilot). 这通常是通过将串行端口的协议设置为来完成的 MSP 要么, 以 ArduPilot 为例, 环境 SERIALx_PROTOCOL = 32 对于一般 MSP 或 33 适用于 DJI FPV 眼镜.
  • 波特率: 常见的波特率是 115200.
  • 限制: 需要注意的是,MSP 通常是 不用于配置 ArduPilot 飞行控制器; 它的主要作用是 OSD 和传感器.

问一个问题

← 返回

感谢您的回复。 ✨