您现在的位置是:首页 > 技术教程 正文

(3)(3.3) MAVLink高延迟协议

admin 阅读: 2024-03-14
后台-插件-广告管理-内容页头部广告(手机)

文章目录

前言

1 配置

2 说明

3 消息说明


前言

ArduPilot 支持 MAVLink 高延迟协议(MAVLink High Latency)。该协议专为卫星或 LoRA 等低带宽或高成本链路而设计。


在此协议中,每 5s 只发送一次 HIGH_LATENCY2 MAVLink 信息。对 MAVLink 命令或请求(如命令确认或参数请求)的任何响应也将发送。

MAVLink 高延迟可作为任何遥测端口的选件。典型的使用情况是,一个标准的 MAVLink 遥测端口用于初始配置和系统检查 - 通常是无线电调制解调器或 4G 链路。低带宽调制解调器将连接到第二个遥测端口,用户可激活该端口。

1 配置

确保所需的遥测端口协议设置为 MAVLink 高延迟选项(SERIALn_PROTOCOL = 43)。

MAVProxy 中,使用link hl on|off 启用或禁用在高延迟端口上发送遥测数据。

QGroundControl 中使用 High Latency选项连接,以启用在高延时端口上发送遥测数据。

在任务规划器中,使用 Actions -> Do Action 启用或禁用高延迟端口上的遥测发送功能。

2 说明

MAVLink 高延迟只会发送有关飞行器位置和状态的非常基本的高级信息。

MAVLink 高延迟对带宽的要求非常低,大多数情况下不到 100 字节/秒。

高延迟链路的启用/禁用可通过任何遥测链路发送,并将启用/禁用飞行器上的所有高延迟链路。

3 消息说明

 1. High Latency Protocol

高延时(HL)链路,例如使用铱星网络制造的链路,可提供全球连接,但信息延时很大(> 1 秒),每条信息的成本很高。一般来说,成本和延迟意味着只有在没有更低延迟的替代方案时才会使用高延迟链路,而且只能发送重要信息或命令。

该协议提供了一个类似心跳的信息(HIGH_LATENCY2),用于以较低的速率传输最重要的遥测信息,还提供了一个命令(MAV_CMD_CONTROL_HIGH_LATENCY),用于在需要时(即没有低延迟链路可用时)启用/禁用高延迟链路。

2. HIGH_LATENCY2 ( #235 )

适合铱星等高延迟连接的信息(第 2 版)

Field NameTypeUnitsValuesDescription
timestampuint32_tmsTimestamp (milliseconds since boot or Unix epoch)
typeuint8_tMAV_TYPEType of the MAV (quadrotor, helicopter, etc.)
autopilotuint8_tMAV_AUTOPILOTAutopilot type / class. Use MAV_AUTOPILOT_INVALID for components that are not flight controllers.
custom_modeuint16_tA bitfield for use for autopilot-specific flags (2 byte version).
latitudeint32_tdegE7Latitude
longitudeint32_tdegE7Longitude
altitudeint16_tmAltitude above mean sea level
target_altitudeint16_tmAltitude setpoint
headinguint8_tdeg/2Heading
target_headinguint8_tdeg/2Heading setpoint
target_distanceuint16_tdamDistance to target waypoint or position
throttleuint8_t%Throttle
airspeeduint8_tm/s*5Airspeed
airspeed_spuint8_tm/s*5Airspeed setpoint
groundspeeduint8_tm/s*5Groundspeed
windspeeduint8_tm/s*5Windspeed
wind_headinguint8_tdeg/2Wind heading
ephuint8_tdmMaximum error horizontal position since last message
epvuint8_tdmMaximum error vertical position since last message
temperature_airint8_tdegCAir temperature from airspeed sensor
climb_rateint8_tdm/sMaximum climb rate magnitude since last message
batteryint8_t%Battery level (-1 if field not provided).
wp_numuint16_tCurrent waypoint number
failure_flagsuint16_tHL_FAILURE_FLAGBitmap of failure flags.
custom0int8_tField for custom payload.
custom1int8_tField for custom payload.
custom2int8_tField for custom payload.
标签:
声明

1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。

在线投稿:投稿 站长QQ:1888636

后台-插件-广告管理-内容页尾部广告(手机)
关注我们

扫一扫关注我们,了解最新精彩内容

搜索