# 微克MAVLINK通信协议
微克 MAVLINK 通信协议以标准 MAVLINK V2.0 协议为基础, 在其 common 包消息的基础上进行自定消息扩充而成.
飞控实现了部分 common 标准消息的支持.
对 common 消息的定义和实现应以遵循开源已有通用定义为准则, 以便在和其它支持 mavlink 通用协议的设备对接时不产生歧义.
对于 common 已有定义的消息无法满足的需求, 应在 vkfmu 自定义消息的部分进行定义和实现.
## 1 自定义枚举类型
### 1.1 机型布局
旋翼飞行器动力布局类型 VKFLY_AP_TYPE
```c
typedef enum VKFLY_AP_TYPE
{
VKFLY_AP_TYPE_I4=41, /* I4 | */
VKFLY_AP_TYPE_X4=42, /* X4 | */
VKFLY_AP_TYPE_X4R=43, /* 反向X4 */
VKFLY_AP_TYPE_I6=61, /* I6 | */
VKFLY_AP_TYPE_X6=62, /* X6 | */
VKFLY_AP_TYPE_YI6D=63, /* YI6D | */
VKFLY_AP_TYPE_Y6D=64, /* Y6D | */
VKFLY_AP_TYPE_H6=65, /* H6 | */
VKFLY_AP_TYPE_I8=81, /* I8 | */
VKFLY_AP_TYPE_X8=82, /* X8 | */
VKFLY_AP_TYPE_4X8M=83, /* 4轴8桨 | */
VKFLY_AP_TYPE_4X8D=84, /* 4轴8桨 */
VKFLY_AP_TYPE_4X8MR=85, /* 4轴8桨 */
VKFLY_AP_TYPE_4X8DR=86, /* 4轴8桨*/
VKFLY_AP_TYPE_6I12=121, /* 6轴12桨, 十字布局 */
VKFLY_AP_TYPE_6X12=122, /* 6轴12桨, X字布局 */
VKFLY_AP_TYPE_6H12=123, /* 6轴12桨, H字布局 */
VKFLY_AP_TYPE_8I16=161, /* 8轴16桨, 十字布局 */
VKFLY_AP_TYPE_8X16=162, /* 8轴16桨, X字布局 */
VKFLY_AP_TYPE_ENUM_END=163, /* | */
} VKFLY_AP_TYPE;
```
垂起固定翼飞机构型布局 VKFLY_FIXEDWING_AP_TYPE
```c
typedef enum VKFLY_FIXEDWING_AP_TYPE
{
VKFLY_FIXEDWING_AP_TYPE_T_TAIL=0, /* | 平垂尾 */
VKFLY_FIXEDWING_AP_TYPE_V_TAIL=1, /* | V尾巴*/
VKFLY_FIXEDWING_AP_TYPE_TRIANGLE=2, /* | 三角翼 */
VKFLY_FIXEDWING_AP_TYPE_TANDEM=3, /* | 串列翼 */
VKFLY_FIXEDWING_AP_TYPE_V_TAIL_REV=4, /* | 倒V尾 */
VKFLY_FIXEDWING_AP_TYPE_CUSTOM1=5, /* | 备用 */
VKFLY_FIXEDWING_AP_TYPE_CUSTOM2=6, /* | 备用 */
VKFLY_FIXEDWING_AP_TYPE_CUSTOM3=7, /* | 备用 */
VKFLY_FIXEDWING_AP_TYPE_ENUM_END=8, /* | */
} VKFLY_FIXEDWING_AP_TYPE;
```
### 1.2 自定义组件ID VKFLY_USER_COMP_ID
```c
typedef enum VKFLY_USER_COMP_ID
{
VKFLY_COMP_ID_VKGPSA=3, /* 普通 GPSA | */
VKFLY_COMP_ID_VKGPSB=4, /* 普通 GPSB | */
VKFLY_COMP_ID_RFD_F=5, /* 前雷达 | */
VKFLY_COMP_ID_RFD_R=6, /* 后雷达 | */
VKFLY_COMP_ID_RFD_D=7, /* 下雷达 | */
VKFLY_COMP_ID_RFD_360=8, /* 360雷达 | */
VKFLY_COMP_ID_BAT0=10, /* 电池0 | */
VKFLY_COMP_ID_BAT1=11, /* 电池1 | */
VKFLY_COMP_ID_BAT2=12, /* 电池2 | */
VKFLY_COMP_ID_BAT3=13, /* 电池3 | */
VKFLY_COMP_ID_BAT4=14, /* 电池4 | */
VKFLY_COMP_ID_BAT5=15, /* 电池5 | */
VKFLY_COMP_ID_ECU0=16, /* 发动机 ECU0 | */
VKFLY_COMP_ID_ECU1=17, /* 发动机 ECU1 | */
VKFLY_COMP_ID_ECU2=18, /* 发动机 ECU2 | */
VKFLY_COMP_ID_ECU3=19, /* 发动机 ECU3 | */
VKFLY_COMP_ID_WEIGHER=20,/* 称重器 | */
VKFLY_COMP_ID_PARACHUTE=21, /* 降落伞 | */
VKFLY_COMP_ID_BAT6=22, /* 电池6 | */
VKFLY_COMP_ID_BAT7=23, /* 电池7 | */
VKFLY_COMP_ID_BAT8=24, /* 电池8 | */
VKFLY_COMP_ID_BAT9=25, /* 电池9 | */
VKFLY_COMP_ID_ASPD0=30, /* 速度计0 | */
VKFLY_COMP_ID_ASPD1=31, /* 速度计1 | */
VKFLY_USER_COMP_ID_ENUM_END=26, /* | */
}
```
### 1.3 解锁失败原因 VKFLY_ARM_DENIED_REASON
```c
typedef enum VKFLY_ARM_DENIED_REASON
{
VKFLY_ARM_DENIED_REASON_NONE=0, /* | */
VKFLY_ARM_DENIED_NO_INS=1, /* 航姿数据异常 | */
VKFLY_ARM_DENIED_SPD_OVER_LIM=2, /* 速度过大 | */
VKFLY_ARM_DENIED_ACC_OVER_LIM=3, /* 加速度过大 | */
VKFLY_ARM_DENIED_GYR_OVER_LIM=4, /* 角速度过大 | */
VKFLY_ARM_DENIED_GPS_ERR=5, /* GPS 异常 | */
VKFLY_ARM_DENIED_IMU_ERR=6, /* IMU 异常 | */
VKFLY_ARM_DENIED_POS_NOT_FIXED=7, /* 未定位 | */
VKFLY_ARM_DENIED_RTK_NOT_FIXED=8, /* RTK未锁定 | */
VKFLY_ARM_DENIED_MAG_ERR=9, /* 磁异常 | */
VKFLY_ARM_DENIED_RESERVE=10, /* 预留 | */
VKFLY_ARM_DENIED_TEMP_OVER_LIM=11, /* 温度过热 | */
VKFLY_ARM_DENIED_OUT_FENCE=13, /* 超出电子围栏范围 | */
VKFLY_ARM_DENIED_LOW_BAT_VOLT=14, /* 电池电压低 | */
VKFLY_ARM_DENIED_LOW_BAT_CAP=15, /* 电池电量低 | */
VKFLY_ARM_DENIED_BAT_BMS_FAULT=16, /* 电池BMS故障 | */
VKFLY_ARM_DENIED_SERVO_FAULT=17, /* 动力故障 | */
VKFLY_ARM_DENIED_LEAN_ANG=18, /* 倾斜角过大 | */
VKFLY_ARM_DENIED_IN_CALIBRATION=19, /* 正在校准中 | */
VKFLY_ARM_DENIED_HYDRO_BMS_CHECK_ERR=20, /* 氢电池自检故障 | */
VKFLY_ARM_DENIED_FUEL_LOW=21, /* 发动机油量低 | */
VKFLY_ARM_DENIED_H2P_LOW=22, /* 氢能气压低 | */
VKFLY_ARM_DENIED_EXT_NAV_ERR=23, /* 外部导航错误 | */
} VKFLY_ARM_DENIED_REASON;
```
### 1.4 失控保护动作 VKFLY_FS_ACTION
失控保护动作类型
```c
typedef enum VKFLY_FS_ACTION
{
FAIL_SAFE_ACT_NONE=0, /* 无动作 | */
FAIL_SAFE_ACT_LOITER=1, /* 悬停 | */
FAIL_SAFE_ACT_RTL=2, /* 返航(回起飞点) | */
FAIL_SAFE_ACT_RTR=3, /* 去往备降点(最近的 rally 点) | */
FAIL_SAFE_ACT_LAND=4, /* 原地降落 | */
FAIL_SAFE_ACT_LOCK=5, /* 停桨上锁 | */
VKFLY_FS_ACTION_ENUM_END=6, /* | */
} VKFLY_FS_ACTION;
```
### 1.5 自定义传感器bitmap VKFLY_SYS_STATUS_SENSOR_EXTEND
```c
typedef enum VKFLY_SYS_STATUS_SENSOR_EXTEND
{
VKFLY_SYS_STATUS_SENSOR_GPS2=4, /* GPS2 | */
VKFLY_SYS_STATUS_SENSOR_RTK_GPS=8, /* RTK GPS | */
VKFLY_SYS_STATUS_SDCARD=16, /* Onboard SD card | */
VKFLY_SYS_STATUS_SENSOR_EXTEND_ENUM_END=17, /* | */
} VKFLY_SYS_STATUS_SENSOR_EXTEND;
```
### 1.6 错误状态1 VKFLY_SYS_ERROR1
用于 SYS_STATUS 消息中对应的字节. 详细参考 VKFLY.xml
```c
typedef enum VKFLY_SYS_ERROR1
{
VKFLY_SYS_ERROR1_GCS_LINK_LOST=1, /* Gcs 失联 | */
VKFLY_SYS_ERROR1_VOLTAGE_LOW=2, /* 电池电压低 | */
VKFLY_SYS_ERROR1_MOTOR_BALANCE=4, /* 电机平衡差 | */
VKFLY_SYS_ERROR1_MOTOR_FAIL=8, /* 动力故障 | */
VKFLY_SYS_ERROR1_OVERHEAT=16, /* 飞控温度高 | */
VKFLY_SYS_ERROR1_INS_INVALID=32, /* 飞控无INS解算定位 | */
VKFLY_SYS_ERROR1_OUT_FENCE=64, /* 超出电子围栏范围 | */
VKFLY_SYS_ERROR1_OBV_LINK_LOST=128, /* 备用链路失联 | */
VKFLY_SYS_ERROR1_BATBMS_LINK_LOST=256, /* 智能电池bms数据失联 | */
VKFLY_SYS_ERROR1_ECU_FUEL_LOW=512, /* 发动及油量低 | */
VKFLY_SYS_ERROR1_ECU_LINK_LOST=1024, /* 发动机数据断开 |*/
VKFLY_SYS_ERROR1_H2P_LOW=2048, /* 氢气压低 | */
VKFLY_SYS_ERROR1_OVER_WEIGHT=4096, /* 负载超重 |*/
} VKFLY_SYS_ERROR1;
```
### 1.7 错误状态2 VKFLY_SYS_ERROR2
用于 SYS_STATUS 消息中对应的字节. 详细参考 VKFLY.xml
```c
typedef enum VKFLY_SYS_ERROR2
{
VKFLY_SYS_ERROR2_ENUM_END=1, /* | */
} VKFLY_SYS_ERROR2;
```
### 1.8 错误状态3 VKFLY_SYS_ERROR3
用于 SYS_STATUS 消息中对应的字节. 详细参考 VKFLY.xml
```c
typedef enum VKFLY_SYS_ERROR3
{
VKFLY_SYS_ERROR3_MAG0_DISTURB=1, /* mag1 磁干扰 | */
VKFLY_SYS_ERROR3_MAG1_DISTURB=2, /* mag2 磁干扰 | */
VKFLY_SYS_ERROR3_IMU0_ERROR=4, /* imu1 数据异常 | */
VKFLY_SYS_ERROR3_IMU1_ERROR=8, /* imu2 数据异常 | */
VKFLY_SYS_ERROR3_BARO0_ERROR=16, /* 气压计数据异常 | */
VKFLY_SYS_ERROR3_GPS0_ERROR=32, /* 普通gps1数据异常 | */
VKFLY_SYS_ERROR3_GPS1_ERROR=64, /* 普通gps2数据异常 | */
VKFLY_SYS_ERROR3_RTK_ERROR=128, /* RTK板卡数据异常 | */
VKFLY_SYS_ERROR3_YAW_DIFF=256, /* RTK和磁偏航角差异过大 | */
VKFLY_SYS_ERROR3_ASPD_LINK_LOST=512, /* 空速计未连接 | */
VKFLY_SYS_ERROR3_ENUM_END=129, /* | */
} VKFLY_SYS_ERROR3;
```
### 1.9 错误状态4 VKFLY_SYS_ERROR4
用于 SYS_STATUS 消息中对应的字节. 详细参考 VKFLY.xml (待定义)
### 1.10 自定义飞行模式 VKFLY_CUSTOM_MODE
用于 HEARTBEAT 消息中对应的字节. 详细参考 VKFLY.xml
```c
typedef enum VKFLY_CUSTOM_MODE
{
VKFLY_CUSTOM_MODE_STANDBY=1, /* Standby mode | 待命模式 */
VKFLY_CUSTOM_MODE_ATTITUDE=3, /* Attitude mode 姿态模式 | */
VKFLY_CUSTOM_MODE_POSHOLD=4, /* Poshold mode 定点模式| */
VKFLY_CUSTOM_MODE_TAKEOFF=10, /* Auto takeoff. 自动起飞| */
VKFLY_CUSTOM_MODE_LOITER=11, /* Auto loiter. 自动悬停| */
VKFLY_CUSTOM_MODE_RTL=12, /* Auto return. 自动返航| */
VKFLY_CUSTOM_MODE_CRUISE=15, /* Auto cruise. 自动巡航| */
VKFLY_CUSTOM_MODE_GUIDE=18, /* Guide to point. 指点飞行| */
VKFLY_CUSTOM_MODE_LAND=19, /* Land. 降落| */
VKFLY_CUSTOM_MODE_FSLAND=20, /* Force land. 迫降| */
VKFLY_CUSTOM_MODE_FOLLOW=21, /* Follow. 跟随| */
VKFLY_CUSTOM_MODE_WP_ORBIT=23, /* WP_Orbit 航点环绕| */
VKFLY_CUSTOM_MODE_DYN_TAKEOFF=24, /* Dyn_Takeoff 动平台起飞| */
VKFLY_CUSTOM_MODE_DYN_LAND=25, /* Dyn_Land 动平台降落| */
VKFLY_CUSTOM_MODE_OBAVOID=26, /* Obavoid 自主避障| */
VKFLY_CUSTOM_MODE_OFFBOARD=27, /* Offboard command control. OFFBORAD 控制| */
VKFLY_CUSTOM_MODE_FORMATION=28, /* Formation 队形编队 */
VKFLY_CUSTOM_MODE_FW_MANUL=51, /* Fixedwing Manul 固定翼手动 | */
VKFLY_CUSTOM_MODE_FW_ATTITUDE=52, /* Fixedwing Attitude 固定翼增稳定 | */
VKFLY_CUSTOM_MODE_FW_CRUISE=53, /* Fixedwing Cruise 固定翼巡航 | */
VKFLY_CUSTOM_MODE_FW_CIRCLE=54, /* Fixedwing Circle 固定翼盘旋 | */
VKFLY_CUSTOM_MODE_FW_TAKEOFF=55, /* Fixedwing Takeoff 固定翼起飞 | */
VKFLY_CUSTOM_MODE_FW_GUIDE=56, /* Fixedwing Guide 固定翼指点飞行 | */
VKFLY_CUSTOM_MODE_FW_LAND=57, /* Fixedwing Land 固定翼降落 | */
VKFLY_CUSTOM_MODE_FW_RTL=58, /* Fixedwing Rtl 固定翼返航 | */
VKFLY_CUSTOM_MODE_FW_GPS_FS=59, /* Fixedwing GpsFs 固定翼丢星盘旋 | */
VKFLY_CUSTOM_MODE_ENUM_END=60, /* | */
} VKFLY_CUSTOM_MODE;
```
### 1.11 返航原因 VKFLY_RTL_REASON
返航原因
```c
typedef enum VKFLY_RTL_REASON
{
VKFLY_RTL_REASON_NONE=0, /* 未触发返航给 | */
VKFLY_RTL_REASON_GCSCMD=1, /* 地面站指令返航 | */
VKFLY_RTL_REASON_RCCMD=2, /* 遥控器指令返航 | */
VKFLY_RTL_REASON_GCSLOST=3, /* 地面站失联返航 | */
VKFLY_RTL_REASON_RCFAIL=4, /* 遥控器信号FS返航 | */
VKFLY_RTL_REASON_RCLOST=5, /* 遥控器信号失联返航 | */
VKFLY_RTL_REASON_LOWVOLT=6, /* 电压低保护返航 | */
VKFLY_RTL_REASON_OFFBOARD=7, /* OFFBORAD控制指令返航 | */
VKFLY_RTL_REASON_ALTLIM=8, /* 超出高度限制保护返航 | */
VKFLY_RTL_REASON_OUT_FENCE=9, /* 超出电子围栏范围保护返航 | */
VKFLY_RTL_REASON_BMS_LOWCAP=10, /* 电池BMS电量低保护返航 | */
VKFLY_RTL_REASON_BMS_LINKLOST=11, /* 电池BMS通信失联保护返航 | */
VKFLY_RTL_REASON_SERVO_FAULT=12, /* 伺服动力故障保护返航 | */
VKFLY_RTL_REASON_WP_FINISH=13, /* 航线完成返航 */
VKFLY_RTL_REASON_H2P_LOW=14, /* 氢能气压低返航 */
VKFLY_RTL_REASON_ECU_FUEL_LOW=15, /* 发动机油量低返航 */
VKFLY_RTL_REASON_ATTITUDE_FS=16, /* 姿态失控超限返航 | */
VKFLY_RTL_REASON_TRANS_TMO=17, /* 转换固定翼超时返航 | */
VKFLY_RTL_REASON_ASPD_LOW=18, /* 空速低返航 | */
} VKFLY_RTL_REASON;
```
### 1.12 悬停原因 VKFLY_LOITER_REASON
悬停原因
```c
typedef enum VKFLY_LOITER_REASON
{
VLFLY_LOITER_REASON_DEFAULT=1, /* 默认原因 | */
VLFLY_LOITER_REASON_GCS_CMD=2, /* | 地面站指令悬停 */
VLFLY_LOITER_REASON_MISSION_DONE=3, /* 任务完成悬停 | */
VLFLY_LOITER_REASON_GPS_REABLE=5, /* GPS重定位悬停 | */
VLFLY_LOITER_REASON_RC_CMD=6, /* 遥控器指令悬停 | */
VLFLY_LOITER_REASON_FOLLOW_FAIL=7, /* 跟随目标结束悬停 | */
VLFLY_LOITER_REASON_TAKEOFF_DONE=9, /* 自动起飞结束悬停 | */
VLFLY_LOITER_REASON_BAT_VOLT_LOW=10, /* 电池电压低悬停 | */
VLFLY_LOITER_REASON_RC_FAIL=11, /* 遥控器失控悬停 | */
VLFLY_LOITER_REASON_RC_LOST=12, /* 遥控器失联悬停 | */
VLFLY_LOITER_REASON_RC_BAD=13, /* 遥控器数据异常悬停 | */
VLFLY_LOITER_REASON_BAT_CAP_LOW=14, /* 电池电量低悬停 | */
VLFLY_LOITER_REASON_OFFBOARD=15, /* OFFBORAD控制悬停 | */
VLFLY_LOITER_REASON_QUIT_FORMATION=16, /* 退队编队悬停 | */
VLFLY_LOITER_REASON_H2P_LOW=17, /* 氢能气压低悬停 | */
VLFLY_LOITER_REASON_ECU_FUEL_LOW=18, /* 发动机油量低悬停 | */
VLFLY_LOITER_REASON_WPDATA_ERR=21, /* 航点数据异常悬停 | */
VKFLY_LOITER_REASON_ENUM_END=22, /* | */
} VKFLY_LOITER_REASON;
#endif
```
### 1.13 vkins 导航状态 VKFLY_VKINS_NAV_STATUS
vkins 导航状态字 bitmap
```c
typedef enum VKFLY_VKINS_NAV_STATUS
{
VKFLY_VKINS_NAV_INSGPS=1, /* ins解算bit位, 0-无ins解算 1-有ins解算| */
VKFLY_VKINS_NAV_ALT_GPS=2, /* gps高度解算bit位, 0-gps不参与高度解算, 1-gps参与高度解算 | */
VKFLY_VKINS_NAV_HEADING_RTK=4, /* 航向解算标志, 0-磁航向 1-双天线测向 | */
VKFLY_VKINS_NAV_RTK=16, /* RTK标志位, 0-无RTK高精度定位, 1-有RTK高精度定位 | */
VKFLY_VKINS_NAV_STATUS_ENUM_END=17, /* | */
} VKFLY_VKINS_NAV_STATUS;
```
### 1.13 航向控制模式 VKFLY_YAW_CTRL_MODE
航向控制模式
```c
typedef enum VKFLY_YAW_CTRL_MODE
{
VKFLY_YAW_KEEP_CURRENT=0, /* 保持航向不改变 | */
VKFLY_YAW_TO_NEXT_WP=1, /* 航向指向下个航点或盘旋中心点 | */
VKFLY_YAW_TO_TRACE_COURSE=2, /* 航向指向水平运动前方 | */
VKFLY_YAW_TO_SETVAL=3, /* 航向指向给定的航向角度 | */
VKFLY_YAW_TO_HOME=4, /* 航向指向 HOME 点 | */
VKFLY_YAW_TO_INTEREST=5, /* 航向指向兴趣点 | */
VKFLY_YAW_TO_OTHER_MAV_SYS=6, /* 航向指向其它 mav system, 比如另一个无人机或车 | */
VKFLY_YAW_TO_SET_VALUE_ONLY_ON_LANDING=7, /* 当完成该航点后结束航线并降落时, 航向指向给定值。否则指向运动前方 */
VKFLY_YAW_CTRL_MODE_ENUM_END=8, /* | */
} VKFLY_YAW_CTRL_MODE;
```
### 1.14 自动拍照模式 VKFLY_PHOTO_CTRL_MODE
```c
typedef enum VKFLY_PHOTO_CTRL_MODE
{
VKFLY_AUTO_PHO_KEEP_CURRENT=0, /* 保持之前的自动拍照状态 | */
VKFLY_AUTO_PHO_STOP=1, /* 停止自动拍照 | */
VKFLY_AUTO_PHO_AUTO_BY_TIME=2, /* 定时自动拍照 | */
VKFLY_AUTO_PHO_BY_DIST_XY=3, /* 水平定距离自动拍照 | */
VKFLY_AUTO_PHO_BY_DIST_Z=4, /* 垂直定距离自动拍照 | */
VKFLY_AUTO_PHO_BY_DIST_XYZ=5, /* 三维定距离自动拍照 | */
VKFLY_PHOTO_CTRL_MODE_ENUM_END=6, /* | */
} VKFLY_PHOTO_CTRL_MODE;
```
### 1.15 相机航点触发动作 VKFLY_DIGICAM_WP_ACT
相机航点触发动作
```c
typedef enum VKFLY_DIGICAM_WP_ACT
{
VKFLY_DIGICAM_WP_ACT_NONE=0, /* 无动作 | */
VKFLY_DIGICAM_WP_ACT_PHO=1, /* 触发一次拍照 | */
VKFLY_DIGICAM_WP_ACT_VEDIO_ON=2, /* 触发录像开 | */
VKFLY_DIGICAM_WP_ACT_VEDIO_OFF=3, /* 触发录像关 | */
VKFLY_DIGICAM_WP_ACT_ENUM_END=4, /* | */
} VKFLY_DIGICAM_WP_ACT;
```
### 1.16 云台航点触发动作 VKFLY_GIMBAL_WP_ACT
云台航点触发动作
```c
typedef enum VKFLY_GIMBAL_WP_ACT
{
VKFLY_GIMBAL_WP_ACT_NONE=0, /* 无动作 | */
VKFLY_GIMBAL_WP_ACT_SET_ANG=1, /* 设置云台角度 | */
VKFLY_GIMBAL_WP_ACT_SET_PITCH_YAW_FOLLOW=2, /* 设置云台俯仰角度+航向跟随机头 | */
VKFLY_GIMBAL_WP_SET_ZOOM=3, /* 设置云台相机画面缩放 | */
VKFLY_GIMBAL_WP_ACT_ENUM_END=4, /* | */
} VKFLY_GIMBAL_WP_ACT;
```
### 1.17 抛投通道bitmap VKFLY_THROW_CHAN_TYPE
抛投通道 bitmap
```c
typedef enum VKFLY_THROW_CHAN_TYPE
{
VKFLY_THROW_CHAN_1=1, /* throwing channel1 | */
VKFLY_THROW_CHAN_2=2, /* throwing channel2 | */
VKFLY_THROW_CHAN_3=4, /* throwing channel3 | */
VKFLY_THROW_CHAN_4=8, /* throwing channel4 | */
VKFLY_THROW_CHAN_5=16, /* throwing channel5 | */
VKFLY_THROW_CHAN_6=32, /* throwing channel6 | */
VKFLY_THROW_CHAN_7=64, /* throwing channel7 | */
VKFLY_THROW_CHAN_8=128, /* throwing channel8 | */
VKFLY_THROW_CHAN_9=256, /* throwing channel9 | */
VKFLY_THROW_CHAN_10=512, /* throwing channel10 | */
VKFLY_THROW_CHAN_11=1024, /* throwing channel11 | */
VKFLY_THROW_CHAN_12=2048, /* throwing channel12 | */
VKFLY_THROW_CHAN_13=4096, /* throwing channel12 | */
VKFLY_THROW_CHAN_14=8192, /* throwing channel12 | */
VKFLY_THROW_CHAN_15=16384, /* throwing channel12 | */
VKFLY_THROW_CHAN_16=32768, /* throwing channel12 | */
VKFLY_THROW_CHAN_ALL=65535, /* throwing channel12 | */
VKFLY_THROW_CHAN_TYPE_ENUM_END=65536, /* | */
} VKFLY_THROW_CHAN_TYPE;
```
### 1.18 航线执行方式 VKFLY_MISSION_EXEC_MODE
航线执行方式
```c
typedef enum VKFLY_MISSION_EXEC_MODE
{
VKFLY_MISSION_EXEC_MODE_NORMAL=0, /* 顺序执行, 正常执行航点动作 | */
VKFLY_MISSION_EXEC_MODE_NO_ACT=1, /* 顺序执行, 略过航点动作 | */
VKFLY_MISSION_EXEC_MODE_REVERSE=2, /* 逆序执行, 正常航点动作 | */
VKFLY_MISSION_EXEC_MODE_REVERSE_NO_ACT=3, /* 逆序执行, 忽略航点动作 | */
VKFLY_MISSION_EXEC_MODE_ENUM_END=4, /* | */
} VKFLY_MISSION_EXEC_MODE;
```
### 1.19 航线完成后动作 VKFLY_MISSION_DONE_ACT
航线任务完成后动作
```c
typedef enum VKFLY_MISSION_DONE_ACT
{
VKFLY_MISSION_DONE_LOITER=0, /* 悬停 | */
VKFLY_MISSION_DONE_RETURN_TO_LAUNCH=1, /* 返航回 home | */
VKFLY_MISSION_DONE_LAND=2, /* 原地降落 | */
VKFLY_MISSION_DONE_RETURN_TO_RALLY=3, /* 返回回备降点 | */
VKFLY_MISSION_DONE_RETURN_TO_LAUNCH_AB_WP=4, /* 返航回 home, 按顺序航线执行 | */
VKFLY_MISSION_DONE_RETURN_TO_LAUNCH_BA_WP=5, /* 返航回 home, 按逆序航线执行 | */
VKFLY_MISSION_DONE_THEN_REDO=6, /* 重新执行循环航线 | */
VKFLY_MISSION_DONE_ACT_ENUM_END=7, /* | */
} VKFLY_MISSION_DONE_ACT;
```
### 1.20 返航执行方式 VKFLY_RTL_EXEC_MODE
返航执行方式
```c
typedef enum VKFLY_RTL_EXEC_MODE
{
VKFLY_RTL_EXEC_MODE_NORMAL=0, /* 直线返航 | */
VKFLY_RTL_EXEC_MODE_BY_MISSION_SEQ=1, /* 沿航线正序返航 | */
VKFLY_RTL_EXEC_MODE_BY_MISSION_SEQ_REVERSE=2, /* 沿航线逆序返航 | */
VKFLY_RTL_EXEC_MODE_ENUM_END=3, /* | */
} VKFLY_RTL_EXEC_MODE;
```
### 1.21 编队队形 VKFLY_FORMATION_TYPE
```c
typedef enum VKFLY_FORMATION_TYPE
{
VKFLY_FORMATION_ROW=0, /* 横一字队形 | */
VKFLY_FORMATION_COLUM=1, /* 纵一字队形 | */
VKFLY_FORMATION_TRIANGLE=2, /* 三角队形 | */
VKFLY_FORMATION_RECTANGLE=3, /* 矩形队形 | */
VKFLY_FORMATION_CUSTOM=4, /* 自定义队形 | */
VKFLY_FORMATION_VERTICLE_LINE=5, /* 垂直队形 | */
VKFLY_FORMATION_TYPE_ENUM_END=6, /* | */
} VKFLY_FORMATION_TYPE;
```
## 2 飞控遥测数据消息
### 2.1 心跳包 [HEARTBEAT](https://mavlink.io/en/messages/common.html#HEARTBEAT)
飞控和地面站定周期 1hz 向外发送, 用于判别是否失联. 包含基础的设备信息.
| 字段 | 说明 |
| --------------- | -------------------------------------------------------------------- |
| custom_mode | 自定义飞行模式, 参考 VKFLY.xml 中 enum VKFLY_CUSTOM_MODE |
| type | 旋翼为 MAV_TYPE_QUADROTOR, 垂起 MAV_TYPE_VTOL_FIXEDROTOR |
| base_mode | 我们主要用 custom_mode, 该字段置位 MAV_MODE_FLAG_CUSTOM_MODE_ENABLED |
| system_status | 参考common.xml标准定义 |
| mavlink_version | 当前仅支持v2.0, 值为200 |
### 2.2 系统状态 [SYS_STATUS](https://mavlink.io/en/messages/common.html#SYS_STATUS)
飞控定周期向外发送, 默认 2hz. 包含传感器\电池\故障码等一些重要状态信息.
| 字段 | 说明 |
| ---------------------------------------- | ----------------------------------------------------------------------------------- |
| onboard_control_sensors_present | 飞控具有的传感器, bit位按common.xml中标准定义 |
| onboard_control_sensors_enabled | 飞控启用的传感器, bit位按common.xml中标准定义 |
| onboard_control_sensors_health | 传感器健康状态, bit位按common.xml中标准定义 |
| load | 系统cpu负载, 0~1000, 按commom.xml标准定义 |
| voltage_battery | 电压cV, 传输为飞控供电电压, 注意此单位与通用定义有区别,因为通用定义范围无法满足需求 |
| current_battery | 电流cA |
| drop_rate_comm | 预留 |
| errors_comm | 预留 |
| errors_count1 | bit位参考自定义vkfly.xml中 VKFLY_SYS_ERROR1 |
| errors_count2 | bit位参考自定义vkfly.xml中 VKFLY_SYS_ERROR2 |
| errors_count3 | 预留 |
| errors_count4 | 预留 |
| battery_remaining | 剩余电量百分比% |
| onboard_control_sensors_present_extended | 参考 VKFLY_SYS_STATUS_SENSOR_EXTEND |
| onboard_control_sensors_enable_extended | 参考 VKFLY_SYS_STATUS_SENSOR_EXTEND |
| onboard_control_sensors_health_extended | 参考 VKFLY_SYS_STATUS_SENSOR_EXTEND |
### 2.3 HOME点 [HOME_POSITION](https://mavlink.io/en/messages/common.html#HOME_POSITION)
home点. 飞控起飞时自动设置 home 点并发送本消息. 也可用 MAV_CMD_REQUEST_MESSAGE 进行读取.
| 字段 | 说明 |
| ---------- | --------------------------------- |
| latitude | wgs84纬度 degE7 |
| longitude | wgs84经度 degE7 |
| altitude | 海拔高度 mm |
| x | 北向相对坐标(相对解算原点 origin) |
| y | 东向相对坐标 |
| z | 地向相对坐标 |
| q | 地面姿态四元数(暂未使用) |
| approach_x | 进近矢量 (暂未使用) |
| approach_y | 进近矢量 (暂未使用) |
| approach_z | 进近矢量 (暂未使用) |
| time_usec | 时间戳us |
### 2.4 GPS数据 [GPS_INPUT](https://mavlink.io/en/messages/common.html#GPS_INPUT) | [GPS2_RAW]((https://mavlink.io/en/messages/common.html#GPS2))
飞控定周期向外发送, 默认 1hz. 包含未经融合的原始普通 gps wgs84 坐标定位等信息.
GPS_INPUT 为普通 GPS 无融合原始定位数据. 当普通 GPS 数据接入后开始定期给地面站发送.
| 字段 | 说明 |
| ------------------ | ---------------------- |
| time_usec | 数据时间戳 us |
| time_week_ms | GPS 时间周内毫秒 |
| lat | wgs84 纬度 degE7 |
| lon | wgs84 纬度 degE7 |
| alt | 海拔高度 mm |
| hdop | HDOP (VKGPS 的 PDOP) |
| vdop | VDOP |
| vn | 北向速度 m/s |
| ve | 东向速度 m/s |
| vd | 地向速度 m/s |
| time_week | GPS 时间周数 |
| gps_id | 0-普通GPSA 1-普通GPSB |
| fix_type | 参考 GPS_FIX_TYPE |
| satellites_visible | 星数 |
GPS2_RAW 为 RTK 无融合的原始数据, 当 RTK 板卡定位数据接入后开始定期发送.
| 字段 | 说明 |
| ------------------ | ----------------------------------------------------------------------- |
| time_usec | 数据时间戳 us |
| fix_type | 参考 GPS_FIX_TYPE |
| lat | wgs84 纬度 degE7 |
| lon | wgs84 纬度 degE7 |
| alt | 海拔高度 mm |
| eph | HDOP |
| epv | VDOP |
| vel | 地速 cm/s |
| cog | 航迹角 0.01deg, 0~359.99deg |
| satellites_visible | 星数 |
| dgps_numch | 定向星数 |
| yaw | 定向航向, 0.01deg. 0无测向能力, 1-36000有效测向值, UINT16_MAX无效测向值 |
| alt_ellipsoid | 椭球高 mm |
| h_acc | 水平精度 mm |
| v_acc | 垂直精度 mm |
| vel_acc | 速度精度 mm |
| hdg_acc | 航向精度 degE5 |
### 2.5 融合经纬度速度 [GLOBAL_POSITION_INT](https://mavlink.io/en/messages/common.html#GLOBAL_POSITION_INT)
融合后的 GLOBAL 定位信息. 飞控定周期向外发送, 默认 5hz. 包含融合后的 wgs84 坐标定位信息.
| 字段 | 说明 |
| ------------ | --------------------------- |
| time_boot_ms | 时间戳ms |
| lat | 纬度 degE7 |
| lon | 精度 degE7 |
| alt | 海拔高度 mm |
| relativ_alt | 相对高度 mm |
| vx | 北向速度 cm/s, 北为正 |
| vy | 东向速度 cm/s, 东为正 |
| vz | 地向速度 cm/s, 下为正 |
| hdg | 航向角 0.01deg, 0~359.99deg |
### 2.6 飞机姿态角速度 [ATTITUDE](https://mavlink.io/en/messages/common.html#ATTITUDE)
飞控定周期向外发送, 默认 5hz. 包含飞行器的姿态\角速度等信息.
欧拉角定义以 FRD-NED(前右下-北东地) 系右手符号. (航向顺时针正, 俯仰抬头正, 横滚右滚正).
| 字段 | 说明 |
| ------------ | ------------------ |
| time_boot_ms | 时间戳, 从上电开始 |
| roll | 横滚角 rad |
| pitch | 俯仰角 rad |
| yaw | 航向角 rad |
| rollspeed | 横滚轴角速度 rad/s |
| pitchspeed | 俯仰轴角速度 rad/s |
| yawspeed | 航向轴角速度 rad/s |
### 2.7 相对位置 [LOCAL_POSITION_NED](https://mavlink.io/en/messages/common.html#LOCAL_POSITION_NED)
LOCAL 定位信息
飞控定周期向外发送, 默认 5hz. 包含以解算原点为原点的北东地坐标下的相对位置和速度信息.
### 2.8 电机信号输出 [SERVO_OUTPUT_RAW](https://mavlink.io/en/messages/common.html#SERVO_OUTPUT_RAW)
电机输出信息
飞控顶周期向外发送, 默认 5hz. 包含各通道电机控制PWM信号的值.
对于垂起固定翼飞机, M1~M4\M9~M12(当飞机为4轴8桨复合翼时) 为旋翼电机.
M5~M8\M13~M16为固定翼舵面舵机.
### 2.9 电调状态回报数据 [ESC_STATUS]
电调数据信息
数字接口电调反馈的状态信息, 包括转速, 电压, 电流. 有电调接入后飞控以默认 2hz 发送给地面站.
### 2.10 仪表HUD数据 [VFR_HUD](https://mavlink.io/en/messages/common.html#VFR_HUDhttps://mavlink.io/en/messages/common.html#VFR_HUD)
仪表HUD信息
飞控定周期向外发送. 包含飞行器的高度\速度\油门等信息.
### 2.11 当前目标航点 [MISSION_CURRENT](https://mavlink.io/en/messages/common.html#MISSION_CURRENT)
当前任务点消息
飞控定期下传, 默认 1hz. 包含当前任务航点序号等信息. 注意 seq 字段从 0 开始.
### 2.12 遥控器输入 [RC_CHANNELS](https://mavlink.io/en/messages/common.html#RC_CHANNELS)
遥控器通道信息
飞控定周期向外发送. 包含飞行器接受到的遥控器输入通道(校准后)的数据.
若遥控器正在进行校准,则发送未校准的原始通道值数据.
### 2.13 测试打印消息 [STATUSTEXT](https://mavlink.io/en/messages/common.html#STATUSTEXT)
系统状态消息
用于打印显示飞控向地面站传输的字符串. 包括 DEBUG\INFO\WARING\ERROR 等用途.
对于 WARING 和更高等级的信息, 地面站应在操作界面给与用户醒目提示.
对于 INFO\DEBUG 等级的信息, 建议地面站在次级界面给与打印记录. (此两等级的消息主要用于调试)
| 字段 | 说明 |
| --------- | ---------------------------------- |
| severity | 信息等级 |
| text | 消息字符串 |
| id | 拼接超过50字符的长消息用, 暂未使用 |
| chunk_seq | 拼接超过50字符的长消息用, 暂未使用 |
### 2.14 相机拍照POS点 [CAMERA_IMAGE_CAPTURED](https://mavlink.io/en/messages/common.html#CAMERA_IMAGE_CAPTURED)
拍照pos消息
每次拍照都进行下发, 可用 MAV_CMD_REQUEST_MESSAGE 进行读取.
使用 MAV_CMD_REQUEST_MESSAGE 读取时, param2 非负数值表示要读取的第一个照片 index, -1 表示读取所有照片. param3 0表示仅
读取 param2 指定的照片pos, -1 表示读取 param2 及之后所有的照片pos.
| 字段 | 说明 |
| -------------- | ----------------------------------- |
| time_boot_ms | 本地时间戳ms, 从系统启动开始 |
| time_utc | utc 时间戳us, 从1970年1月1日0时开始 |
| camera_id | 相机comp_id, 当具有多个相机时使用 |
| lat | wgs84 纬度, degE7 |
| lat | wgs84 经度, degE7 |
| alt | 海拔高度m |
| relativ_alt | 相对高度m |
| q | 相机姿态四元数 |
| image_index | 照片索引,0开始 |
| capture_result | 拍照结果 0失败 1成功 |
| file_url | 照片数据地址(网址, 飞控没有填0) |
### 2.15 相机目标跟踪数据 [CAMERA_TRACKING_GEO_STATUS](https://mavlink.io/en/messages/common.html#CAMERA_TRACKING_GEO_STATUS)
相机目标跟踪信息
| 字段 | 说明 |
| --------------- | ---------------------------- |
| tracking_status | 0-未跟踪 1-在跟踪 2-跟踪异常 |
| lat | 目标纬度 |
| lon | 目标经度 |
| alt | 目标海拔高度 |
### 2.16 云台姿态数据 [GIMBAL_DEVICE_ATTITUDE_STATUS](https://mavlink.io/en/messages/common.html#GIMBAL_DEVICE_ATTITUDE_STATUS)
载荷吊舱设备姿态信息
| 字段 | 说明 |
| ----- | ------------------------------------------------------- |
| flags | 参考链接中的说明, 一般用相对航向 |
| q | 姿态四元数, 可用 mavlink_quaternion_to_euler 转为欧拉角 |
### 2.17 测距仪数据 [DISTANCE_SENSOR](https://mavlink.io/en/messages/common.html#DISTANCE_SENSOR)
测距仪距离数据
目前该消息用于传输下向雷达测距. 当有雷达接入后 2hz 发送该消息
| 字段 | 说明 |
| ---------------- | ----------------------- |
| orientation | ROTATION_PITCH_270 下向 |
| current_distance | 测距距离 cm |
### 2.18 避障数据 [OBSTACLE_DISTANCE](https://mavlink.io/en/messages/common.html#OBSTACLE_DISTANCE)
避障距离数据
目前该消息用于传输水平面雷达. 当有雷达接入后 2hz 发送该消息
| 字段 | 说明 |
| ------------- | ------------------------------------- |
| distances[72] | 水平各向障碍距离 |
| increment | 各向角度间隔 |
| increment_f | 各向角度间隔, 此项不为0时优先使用此项 |
| angle_offset | distances[0] 与正前向的夹角 |
| frame | MAV_FRAME_BODY_FRD, 机体坐前右下标系 |
### 2.19 智能电池BMS信息 VK_BMS_STATUS
智能电池状态数据
当检测到智能电池数据接入, 飞控自动周期向地面站发送此消息
| 字段 | 说明 |
| ------------ | ---------------------------- |
| time_boot_ms | 系统本地时间戳ms |
| voltage | 电压 mV |
| current | 电流 cA(0.01A), 负数表示充电 |
| temperature | 温度 1度 |
| cap_percent | 电量 1% |
| bat_id | 电池编号, 0-5 |
| err_code | 故障码, 0为无故障 |
| cell_num | 电芯数 |
| cell_volt | 电芯电压 mV |
| cyc_cnt | 循环次数 |
| heath | 电池健康度 1% |
### 2.20 发动机ECU数据 VK_ENGINE_ECU_STAUS
发动机 ecu 状态信息
当检测到发动机数据接入后, 飞控自动周期向地面站发送此消息
| 字段 | 说明 |
| -------------- | --------------------------------- |
| timestamp | 系统本地时间戳ms |
| spd_rpm | 转速 rpm |
| thr_pos | 节气门位置 1% |
| fuel_pos | 油位 1% |
| cylinderA_temp | 缸温1 degC |
| cylinderB_temp | 缸温2 degC |
| coolant_temp | 冷却液温度 degC |
| fuel_remain | 剩余油量 0.1L |
| alarm | 警告状态, 参考 VK发动机CAN协议 |
| total_runtime | 总工作时长, 1min |
| runtime | 本次工作时长, 1min |
| service_time | 保养剩余时间, 1min |
| output_volt | 输出电压 0.1V |
| output_curr | 输出电流 0.1A |
| fault | 故障字, 参考 VK发动机CAN协议 |
| engine_state | 工作状态 0-未启动 1\2-运行 3-锁机 |
| index | 发动机编号 0-3 |
### 2.21 编队队形长机数据 VK_FORMATION_LEADER
编队飞行长机信息, 此数据从编队长机发出, 编队从机接收.
| 字段 | 说明 |
| -------------- | ----------------------------------------------------- |
| timestamp | 本地时间戳 |
| state | 长机状态字 |
| lat | 纬度, 1e-7deg |
| lon | 经度, 1e-7deg |
| msl | 海拔高度, m |
| ve | 东向速度, m/s |
| vn | 北向速度, m/s |
| vu | 天向速度, m/s |
| yaw | 机头航向,北偏东正 deg |
| x_dist | 机间左右间距 m |
| y_dist | 机间前后间距 m |
| z_dist | 机间高度间距 m |
| rect_col_num | 矩形队形列数 m |
| formation_type | 队形类型 参考 VKFLY_FORMATION_TYPE |
| form_heading | 队形航向,北偏东正 deg, nan 表示用长机航向作为队形航向 |
### 2.22 组件设备版本信息 VK_COMP_VERSION
设备版本信息, 本消息可以通过 MAV_CMD_REQUEST_MESSAGE 进行读取, param2 是设备的 comp_id.
comp_id 为 0 时, 飞控将回复多个消息逐个返回所有可获取设备的版本信息
| 字段 | 说明 |
| ----------- | ---------------------------------------------------- |
| comp_id | 组件编号 0-全部, 1-飞控, 其它参考 VKFLY_USER_COMP_ID |
| hw_ver | 硬件版本号 |
| fw_ver | 软件版本号 |
| SN | SN号 |
| manufactory | 制造商 |
| model | 设备型号 |
### 2.23 Mosaic抗干扰GPS数据 VK_MOSAICH_GPS_RAW
接入 mosaich gps 后定期发送
| 字段 | 说明 |
| ------------- | ------------------------------- |
| time_usec | 微秒时间戳 |
| fix_type | GPS 定位类型, 参考 GPS_FIX_TYPE |
| psv_num | 定位星数 |
| pvt_err | 定位故障码 |
| pvt_mode | 定位模式 |
| lat | 纬度 degE7 |
| lon | 经度 degE7 |
| ellipsoid_alt | 椭球高度 m |
| ve | 东向速度 m/s |
| vn | 北向速度 m/s |
| vu | 天向速度 m/s |
| h_acc | 水平精度 cm |
| v_acc | 垂直精度 cm |
| yaw | 天线测向 deg, 0~360 |
| pitch | 天线测俯仰角 deg, -90~90 |
| hsv_num | 测向星数 |
| att_err | 测向故障码 |
| att_mode | 测向模式 |
| reserved | 保留字段 |
### 2.24 降落伞数据 VK_PARACHUTE_STATUS
当有降落伞设备数据接入后, 飞控自动周期向地面站发送此消息
| 字段 | 说明 |
| ----------- | ------------------------------------ |
| timestamp | 毫秒时间戳 |
| state | 状态 0-未就绪 1-就绪 2-已开伞 3-故障 |
| auto_launch | 伞自主触发 0-不启用 1-启动 |
| uav_cmd | 伞给飞控命令 0-无 1-停桨 |
| err_code | 降落伞故障码 |
| backvolt | 备用供电电压 V |
### 2.25 称重器数据 VK_WEIGHER_STATE
当有称重器设备数据接入后, 飞控自动周期向地面站发送此消息
| 字段 | 说明 |
| ---------- | -------------------- |
| timestamp | 毫秒时间戳 |
| weight | 称重器重量 g |
| weight_d | 称重器重量变化率 g/s |
| work_state | 工作状态 |
| err_code | 称重器故障码 |
### 2.25 电调状态数据 VK_DIGI_ESC_STATUS
当有数字电调设备数据接入后, 飞控自动周期向地面站发送此消息. 每4个电调作为一组发送一帧, 通过index字段区分.
| 字段 | 说明 |
| -------------- | -------------------------------------------------------------------------- |
| timestamp | 毫秒时间戳 ms |
| index | 本组第一个电调索引序号, 自增4. (第一组为0, 第二组为4, 第三组为8, 依次类推) |
| rpm[4] | 转速 1rpm |
| voltage[4] | 电压 V |
| current[4] | 电流 A |
| temperature[4] | 温度 degC |
| status[4] | 状态字 (不同品牌型号有不同的状态定义) |
### 2.26 固定翼控制量 VK_FIXEDWING_CONTROL_VALUE
固定翼各通道控制量
| 字段 | 说明 |
| -------------- | --------------------------------------------------- |
| timestamp | 毫秒时间戳 |
| roll_value | 滚动控制值, -1.0~1.0, 负值左滚, 正值右滚 |
| pitch_value | 俯仰控制值, -1.0~1.0, 负值低头, 正值抬头 |
| throttle_value | 油门控制值, -1.0~1.0, 负值灭车, 0~1对应 0~100% 油门 |
| yaw_value | 偏航控制值, -1.0~1.0, 负值左转, 正值右转 |
### 2.27 固定翼舵面输出信号 VK_FIXEDWING_SERVO_SIGNAL
最终输出到各舵面舵机的 pwm 信号脉宽, 单位 us
| 字段 | 说明 |
| ---------------- | ----------- |
| timestamp | 毫秒时间戳 |
| servo_signal[16] | pwm信号脉宽 |
舵面的序号如下:
| 序号 | 说明 |
| ---- | ----------------------------------------------- |
| 0 | T尾V尾右副翼, 串联翼右前翼, 三角翼右翼 |
| 1 | T尾V尾左副翼, 串联翼左前翼, 三角翼左翼 |
| 2 | T尾右升降, V尾右尾, 串联翼右后翼, 三角翼右鸭翼 |
| 3 | T尾左升降, V尾左尾, 串联翼左后翼 , 三角翼左鸭翼 |
| 4 | T尾方向舵, 串联翼方向 |
| 5 | 油门舵机 |
| 6 | 左襟翼 |
| 7 | 右襟翼 |
### 2.28 固定翼返航盘旋点 VK_FIXEDWING_RTL_CIRCLE_WP
飞控收到 VKFLY_CMD_SET_RTL_CIRCLE_WP 指令后, 向地面站发送此消息.
可通过 MAV_CMD_REQUEST_MESSAGE 从飞控进行读取.
| 字段 | 说明 |
| --------- | ----------------- |
| latitude | 纬度, 1e-7deg |
| longitude | 经度, 1e-7deg |
| radius | 半径, m, |
| altitude | 高度, m, 暂未使用 |
### 2.29 载荷转发数据 VK_PAYLOAD_DATA_RELAY
飞控将收到的载荷数据通过此包向地面站转发.
飞控收到地面站的此包数据后, 将数据中 data 内容向载荷转发.
| 字段 | 说明 |
| ------------ | --------------------- |
| payload_addr | 载荷地址码, 目前暂填1 |
| data_len | data段字节长度 |
| data | 转发的数据内容 |
### 2.29 外部惯导 VK_EXTERNAL_INS_NAV
飞控将收到的外部惯导数据通过此包向地面站转发
| 字段 | 说明 |
| --------- | ----------------------------------------------------- |
| timestamp | ms时间戳, 从系统上电开始 |
| lon | 解算经度 1e-7deg |
| lat | 解算纬度 1e-7deg |
| msl | 解算海拔高度 m |
| ve | 东向速度 m/s |
| vn | 北向速度 m/s |
| vu | 天向速度 m/s |
| yaw | 航向角 deg |
| pitch | 俯仰角 deg |
| roll | 横滚角 deg |
| gx | x陀螺角速度 deg/s |
| gy | y陀螺角速度 deg/s |
| gz | z陀螺角速度 deg/s |
| ax | x加速度 m/s^2 |
| ay | y加速度 m/s^2 |
| az | z加速度 m/s^2 |
| sta_lon | 卫导经度 1e-7deg |
| sta_lat | 卫导纬度 1e-7deg |
| sta_msl | 卫导海拔高度 m |
| sta_ve | 卫导东向速度 m/s |
| sta_vn | 卫导北向速度 m/s |
| sta_vu | 卫导天向速度 m/s |
| sta_pfix | 卫导定位状态 0无 1单点 2RTK浮点 3RTK固定 |
| sta_hfix | 卫导定向状态 0无 1单点 2RTK浮点 3RTK固定 |
| wk_state | 工作状态 0自检中 1自检完成 2对准中 3纯惯导 4组合导航 |
| err_code | 故障字 |
## 3 参数设置
飞控的参数修改、读取方法参考 [mavlink services parameter](https://mavlink.io/en/services/parameter.html). 使用16字节的 paramid 作为每各参数的唯一表示码.
### 3.1 参数读取 [PARAM_REQUEST_READ](https://mavlink.io/en/messages/common.html#PARAM_REQUEST_READ)
单个参数读取. 地面站向飞控发送, 读取某个指定参数. 飞控收到后回复 PARAM_VALUE 消息.
| 字段 | 说明 |
| ---------------- | ---------------------------------------- |
| target_system | system id, 区分是哪个飞机 |
| target_component | 飞控组件id 填1 (MAV_COMP_ID_AUTOPILOT1) |
| param_id | 参数名, 按需要读取参数项的名称字符串填写 |
| param_index | 参数序号, 填-1 |
### 3.2 参数表读取 [PARAM_REQUEST_LIST](https://mavlink.io/en/messages/common.html#PARAM_REQUEST_LIST)
所有参数读取. 地面站向飞控发送, 读取所有飞控参数. 飞控收到后将所有参数依次按 PARAM_VALUE 消息回复.
| 字段 | 说明 |
| ---------------- | ------------------------- |
| target_system | system id, 区分是哪个飞机 |
| target_component | 飞控组件 id 填1 |
### 3.3 参数回复 [PARAM_VALUE](https://mavlink.io/en/messages/common.html#PARAM_VALUE)
参数值消息. 飞控向地面站回复读取对应的参数值信息.
### 3.4 参数设置 [PARAM_SET](https://mavlink.io/en/messages/common.html#PARAM_SET)
参数设置消息. 地面站向飞控发送参数设置消息.
## 4 航线任务\电子围栏\备降集结点的装订和回读
航线任务装订和回读交互流程详细参考 [mavlink services mission](https://mavlink.io/en/services/mission.html).
目前对 common 标准协议的航线支持有限的几种 MAV_CMD 和 MAV_FRAME.
支持的 MAV_FRAME 如下
| FRAME | 说明 |
| --------------------------------- | --------------------------------- |
| MAV_FRAME_GLOBAL_RELATIVE_ALT_INT | xy经纬度, z相对起飞点高度 |
| MAV_FRAME_GLOBAL_INT | xy经纬度, z相对平均海平面amsl高度 |
### 4.1 航线任务 MAV_MISSION_TYPE_MISSION
支持的标准 MAV_CMD包括以下两种, 对当前版本来说这两种不是重点, 只是为了兼容标准协议而做的实现. 重点的航点命令类型在自定义部分.
#### 4.1.1 普通航点 [MAV_CMD_NAV_WAYPOINT](https://mavlink.io/en/messages/common.html#MAV_CMD_NAV_WAYPOINT)
普通巡航航点
param1-Hold 不为0或者NAN时,将执行自动转弯. 否则按对应时间悬停转弯.
#### 4.1.2 降落航点 [MAV_CMD_NAV_LAND](https://mavlink.io/en/messages/common.html#MAV_CMD_NAV_LAND)
降落点
param3 作为飞往该点速度使用m/s, NAN表示使用飞控默认巡航速度参数.
#### 4.1.3 拍照航点 VKFLY_CMD_NAV_WP
拍照航点.
param1 分为 byte[4] 进行使用.
| 字节 | 类型 | 说明 |
| ---- | ----- | ----------------------------------------------------- |
| 2 | int16 | 悬停时间, 单位 s. 0 表示不进行悬停自动转弯 |
| 2 | int16 | 巡航速度, 单位 dm/s. 0 或负数表示使用默认巡航速度参数 |
param2 分为 byte[4] 进行使用.
| 字节 | 类型 | 说明 |
| ---- | ------ | --------------------------------------------------------------------------------------- |
| 1 | uint8 | 到达航点是否触发拍照或录像动作 参考 VKFLY_DIGICAM_WP_ACT. |
| 1 | uint8 | 航点触发自动定时或定距拍照控制 参考 VKFLY_PHOTO_CTRL_MODE. |
| 2 | uint16 | 为拍照模式间隔参数. 当自动拍照模式为定时时单位为s
当自动拍照模式为定距拍照时单位为m |
param3 分为 byte[4] 进行使用.
| 字节 | 类型 | 说明 |
| ---- | ----- | ------------------------------------------------------------------------------------------------------------ |
| 1 | uint8 | 航点吊舱云台控制动作 VKFLY_GIMBAL_WP_ACT |
| 1 | int8 | 当吊舱动作为设置角度时为吊俯仰角, 范围 -90-90 |
| 2 | int16 | 当吊舱动作为设置角度时为吊舱航向角, 范围 -180-180.
当吊舱动作为设置缩放时为缩放倍率 * 10, 比如 5 倍为 50 |
其它 param4\5\6如下
| 参数 | 说明 |
| ------ | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| param4 | 该参数按 byte[4] 进行使用.
byte[0] u8, 为航向模式参考 VKFLY_YAW_CTRL_MODE.
byte[1] u8, 预留.
byte[2]-byte[3] s16, 范围-180-180. 当航向模式为 VKFLY_YAW_TO_SETVAL 时表示给定的航向值, 单位deg. 当航向模式为指向
HOME 或 NEXT_WP 或 INTEREST 等给定点点时, 表示叠加的航向偏移. |
| param5 | 纬度 1e-7deg |
| param6 | 经度 1e-7deg |
| param7 | 高度 m |
#### 4.1.4 抛投航点 VKFLY_CMD_NAV_WP_THROW
抛投航点
| 参数 | 说明 |
| ------ | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| param1 | 该参数按 byte[4] 进行使用.
byte[0]-byte[1] s16, 悬停时间, 单位 s. 0 表示不进行悬停自动转弯. 悬停到时间后将执行抛投信号触发.
byte[2]-byte[3] s16, 巡航速度, 单位 dm/s. 0 或负数表示使用默认巡航速度参数. |
| param2 | 该参数按 byte[4] 进行使用.
byte[0]-byte[1] s16, 抛投对地高度, 单位 dm. 0或者负数表示在航点当前高度抛投. 若有有效的对地高度信息如雷达测距仪等, 则自动在航点进行下降到设定的对地高度再执行抛投.
byte[2]-byte[3] u16, 抛投通道. 每 bit 代表一个抛投执行通道, bitmap 参考 VKFLY_THROW_CHAN_TYPE. |
| param3 | 地面海拔高度 m, NAN 表示无效 |
| param4 | 该参数作为 byte[4] 类型使用.
byte[0] u8, 为航向模式参考 VKFLY_YAW_CTRL_MODE.
byte[1]预留.
byte[2]-byte[3] s16, 范围-180-180. 当航向模式为 VKFLY_YAW_TO_SETVAL 时表示给定的航向值, 单位deg. 当航向模式为指向
HOME 或 NEXT_WP 或 INTEREST 等给定点点时, 表示叠加的航向偏移. |
| param5 | 纬度 1e-7deg |
| param6 | 经度 1e-7deg |
| param7 | 高度 m |
#### 4.1.5 环绕航点 VKFLY_CMD_NAV_WP_ORBIT_DO_PHOTO
环绕航点
| 参数 | 说明 |
| ------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| param1 | 该参数按 byte[4] 进行使用.
byte[0]-byte[1] s16, 环绕半径, 单位 dm. 正数表示顺时针方向环绕, 负数表示逆时针方向环绕.
byte[2]-byte[3] s16, 巡航速度. 单位 dm/s. 0或负数表示使用默认的巡航速度设置参数. |
| param2 | 拍照控制. 该参数按 byte[4] 进行使用.
byte[0] u8, 达到该航点时是否单独触发一次相机动作. 参考 VKFLY_DIGICAM_WP_ACT.
byte[1] u8, 为启动相机自动拍照控制模式. 参考 VKFLY_PHOTO_CTRL_MODE.
byte[2]-byte[3] u16, 为拍照模式参数. 当拍照模式为定时时单位为s, 当拍照模式为定距拍照时单位为m. 范围 1-UINT16_MAX. |
| param3 | 该参数按 byte[4] 进行使用.
byte[0]-byte[1] u16, 为环绕圈数, 单位 0.1 圈.
byte[2]-byte[3] u16, 为环绕速度, 单位 dm/s. |
| param4 | 该参数作为 byte[4] 类型使用.
byte[0] u8, 为航向模式参考 VKFLY_YAW_CTRL_MODE.
byte[1]预留.
byte[2]-byte[3] s16, 范围-180-180. 当航向模式为 VKFLY_YAW_TO_SETVAL 时表示给定的航向值, 单位deg. 当航向模式为指向
HOME 或 NEXT_WP 或 INTEREST 等给定点点时, 表示叠加的航向偏移. |
| param5 | 纬度 1e-7deg |
| param6 | 经度 1e-7deg |
| param7 | 高度 m |
#### 4.1.6 教培航点 VKFLY_CMD_NAV_EDU_TRAINING
使用 MISSION_ITEM_INT 消息定义传输教培航点
* param1
该参数按 byte[4] 进行使用
| 字节 | 类型 | 说明 |
| ----------- | ----- | ---------------------------------------------------- |
| byte0-byte1 | int16 | 悬停时间, 单位 s. 0表示不进行悬停自动协调转弯 |
| byte2-byte3 | int16 | 巡航速度, 单位 dm/s. 0或负数表示使用默认巡航速度参数 |
* param2
该参数按 byte[4] 进行使用
| 字节 | 类型 | 说明 |
| ----------- | ----- | ---------------------------------------------------- |
| byte0 | uint8 | 高度执行方式, 0-坡度执行, 1-先到高度再水平执行 |
| byte1 | uint8 | 预留 |
| byte2-byte3 | int16 | 垂直速度, 单位 dm/s. 0或负数表示使用默认巡航速度参数 |
* param3
预留
* param4
该参数作为 byte[4] 类型使用
| 字节 | 类型 | 说明 |
| ----------- | ----- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| byte0 | uint8 | 航向模式, 参考 VKFLY_YAW_CTRL_MODE |
| byte1 | uint8 | 预留 |
| byte2-byte3 | int16 | 航向值, 范围-180-180, 当航向模式为 VKFLY_YAW_TO_SETVAL 时表示给定的航向值, 单位deg. 当航向模式为指向
HOME 或 NEXT_WP 或 INTEREST 等给定点时, 表示叠加的航向偏移 |
* xy
经纬度, 单位 1e-7deg
* z
高度, 单位 m. 通过 frame 来判断高度是否为相对高度还是绝对高度
MAV_FRAME_GLOBAL_RELATIVE_ALT: 相对高度
MAV_FRAME_GLOBAL_ALT: 海拔高度
#### 4.1.7 恢复航线高度 VKFLY_CMD_RESUME_WP_ALT
当使用摇杆高度控制时, 可以使用这条指令来恢复航线高度
* param1
禁用摇杆高度辅助, 1禁用. 当此参数为1时, 恢复航线高度, 并且会修改RC_AUTO_AID禁用摇杆高度辅助
### 4.2 电子围栏 MAV_MISSION_TYPE_FENCE (未实施)
飞控一共有200个电子围栏点.
电子围栏功能上包括返回点(return_point)安全区(inclusion)和禁飞区(exlusion)三种.
安全区和禁飞区可有多边形(polygon)和圆形(circle)两种.
支持的 MAV_CMD
#### 4.2.1 [MAV_CMD_NAV_FENCE_RETURN_POINT](https://mavlink.io/en/messages/common.html#MAV_CMD_NAV_FENCE_RETURN_POINT)
电子围栏返回点. 可以无或者有一个返回点.
#### 4.2.2 [MAV_CMD_NAV_FENCE_CIRCLE_EXCLUSION](https://mavlink.io/en/messages/common.html#MAV_CMD_NAV_FENCE_CIRCLE_EXCLUSION) | [MAV_CMD_NAV_FENCE_CIRCLE_INCLUSION](https://mavlink.io/en/messages/common.html#MAV_CMD_NAV_FENCE_CIRCLE_INCLUSION)
圆形电子围栏. 注意不同的圆形电子围栏 group 项应不同.
#### 4.2.3 [MAV_CMD_NAV_FENCE_POLYGON_VERTEX_EXCLUSION](https://mavlink.io/en/messages/common.html#MAV_CMD_NAV_FENCE_POLYGON_VERTEX_EXCLUSION) | [MAV_CMD_NAV_FENCE_POLYGON_VERTEX_INCLUSION](https://mavlink.io/en/messages/common.html#MAV_CMD_NAV_FENCE_POLYGON_VERTEX_INCLUSION)
多边形电子围栏. 注意不同的多边形电子围栏 group 项应不同. 同一个多边形的 item 数据 seq 应保持连续.
### 4.3 备降集结点 MAV_MISSION_TYPE_RALLY
#### 4.3.1 [MAV_CMD_NAV_RALLY_POINT](https://mavlink.io/en/messages/common.html#MAV_CMD_NAV_RALLY_POINT)
飞控支持20个备用降落点的设置和读取. 可通过指令直接去 RALLY 点降落, 可通过参数设定系统
## 5 地面站指令消息
mavlink common 标准消息集中主要由 COMMAND_INT 和 COMMAND_LONG 两条.
飞控接受以下几条 MAV_CMD 类型的指令
### 5.1 指点指令 [MAV_CMD_DO_REPOSITION](https://mavlink.io/en/messages/common.html#MAV_CMD_DO_REPOSITION)
指点飞行指令
其中 fram 支持 MAV_FRAME_GLOBAL_RELATIVE_ALT MAV_FRAME_GLOBAL_RELATIVE_ALT_INT MAV_FRAME_GLOBAL MAV_FRAME_GLOBAL_INT
| 参数 | 说明 |
| ------ | ----------------------------------------------------- |
| param1 | 速度, NAN 0 或负数表示默认巡航速度 |
| param3 | 盘旋半径, 固定翼用, NAN表示用飞控参数中的默认盘旋半径 |
| param4 | 盘旋方向, 固定翼用, 0顺时针, 1逆时针 |
### 5.2 设置home点坐标 [MAV_CMD_DO_SET_HOME](https://mavlink.io/en/messages/common.html#MAV_CMD_DO_SET_HOME)
设置 HOME 点
### 5.3 设置兴趣点 [MAV_CMD_DO_SET_ROI_LOCATION](https://mavlink.io/en/messages/common.html#MAV_CMD_DO_SET_ROI_LOCATION)
设置吊舱经纬度兴趣点聚焦, 请用 COMMAND_INT
| 参数 | 说明 |
| ------ | -------------------------------------------------------------- |
| param1 | GIMBAL_ID (暂未使用) |
| param2 | 0-仅吊舱指向兴趣点 1-仅机头指向兴趣点 2-吊舱和机头都指向兴趣点 |
| param5 | 纬度 |
| param6 | 经度 |
| param7 | 海拔高度, NAN表示无有效海拔信息,飞控按目标在相对高度0位置 |
### 5.4 取消兴趣点 [MAV_CMD_DO_SET_ROI_NONE](https://mavlink.io/en/messages/common.html#MAV_CMD_DO_SET_ROI_NONE)
取消吊舱兴趣点聚焦
### 5.5 校准指令 [MAV_CMD_PREFLIGHT_CALIBRATION](https://mavlink.io/en/messages/common.html#MAV_CMD_PREFLIGHT_CALIBRATION)
校准命令, 请用 COMMAND_LONG
| 参数 | 说明 |
| ------ | --------------------------------------- |
| param1 | 1-陀螺校准(暂未支持) |
| param2 | 1-磁力计校准 |
| param3 | 1-遥控器校准开始
2-遥控器校准结束 |
| param5 | 1-加速度计校准(暂未支持)
2-水平校准 |
| param6 | 1-暂未支持
2-空速计校准 |
| param7 | 1-ESC电调校准 |
### 5.6 存储设备擦除 [MAV_CMD_PREFLIGHT_STORAGE](https://mavlink.io/en/messages/common.html#MAV_CMD_PREFLIGHT_STORAGE)
预飞前存储设备控制命令
| 参数 | 说明 |
| ------ | --------------------------------------------- |
| param1 | 4-重置所有参数,仅未解锁时可执行, 执行后需重启 |
| param2 | NAN 暂未适用 |
| param3 | NAN 暂未适用 |
| param4 | NAN 暂未使用 |
### 5.7 电机检查 [MAV_CMD_ACTUATOR_TEST](https://mavlink.io/en/messages/common.html#MAV_CMD_DO_MOTOR_TEST)
电机\舵机检测
| 参数 | 说明 |
| ------ | ------------------------------------------------------------------------------------------------------------- |
| param1 | 电机0-1对应最小到最大油门, 舵机(-1,1)对应(最大负向,正向行程). 特殊约定 NAN 表示电机输出设置怠速 |
| param2 | 检测时间 0-3s |
| param3 | |
| param4 | |
| param5 | 检测通道, 参考[ACTUATOR_OUTPUT_FUNCTION](https://mavlink.io/en/messages/common.html#ACTUATOR_OUTPUT_FUNCTION) |
### 5.8 解锁\上锁 [MAV_CMD_COMPONENT_ARM_DISARM](https://mavlink.io/en/messages/common.html#MAV_CMD_COMPONENT_ARM_DISARM)
解锁\上锁命令, 该指令执行拒绝后飞控返回的 ack 中, result_param2 表明拒绝原因, 参考 VKFLY_ARM_DENIED_REASON
| 参数 | 说明 |
| ------ | -------------------------- |
| param1 | 0-上锁 1-解锁 |
| param2 | 21196-强制执行(仅支持上锁) |
### 5.9 起飞指令 [MAV_CMD_NAV_TAKEOFF](https://mavlink.io/en/messages/common.html#MAV_CMD_NAV_TAKEOFF) 起飞命令
| 参数 | 说明 |
| ------ | --------------------------------------------- |
| param1 | |
| param4 | |
| param5 | |
| param6 | |
| param7 | 起飞高度, 约定 NAN 表示用默认参数中的起飞高度 |
### 5.10 开始航线 [MAV_CMD_MISSION_START](https://mavlink.io/en/messages/common.html#MAV_CMD_MISSION_START) 开始航线任务
| 参数 | 说明 |
| ------ | -------------------------------------------------- |
| param1 | 起始序号 (可选择从几号 mission 开始执行), 从0开始 |
| param2 | 结束序号 (可选择到几号 mission 停止执行, 暂不支持) |
### 5.11 暂停\继续航线 [MAV_CMD_DO_PAUSE_CONTINUE](https://mavlink.io/en/messages/common.html#MAV_CMD_DO_PAUSE_CONTINUE) 暂停\继续命令
| 参数 | 说明 |
| ------ | ------------- |
| param1 | 0-暂停 1-继续 |
### 5.12 返航 [MAV_CMD_NAV_RETURN_TO_LAUNCH](https://mavlink.io/en/messages/common.html#MAV_CMD_NAV_RETURN_TO_LAUNCH)
返航, 返回起飞点.
本指令会按直线返航执行, 需要按航线返航的话, 请参考 VKFLY_CMD_RETURN_TO_LAUCH
### 5.13 降落 [MAV_CMD_NAV_LAND](https://mavlink.io/en/messages/common.html#MAV_CMD_NAV_LAND)
降落
### 5.14 变目标航点 [MAV_CMD_DO_SET_MISSION_CURRENT](https://mavlink.io/en/messages/common.html#MAV_CMD_DO_SET_MISSION_CURRENT)
切换目标点
| 参数 | 说明 |
| ------ | ---------------- |
| param1 | 目标点序号 |
| param2 | reset (暂未使用) |
### 5.15 变速度指令 [MAV_CMD_DO_CHANGE_SPEED](https://mavlink.io/en/messages/common.html#MAV_CMD_DO_CHANGE_SPEED)
变速指令
### 5.16 变高度指令 [MAV_CMD_DO_CHANGE_ALTITUDE](https://mavlink.io/en/messages/common.html#MAV_CMD_DO_CHANGE_ALTITUDE)
变高指令
### 5.17 设置舵机 [MAV_CMD_DO_SET_ACTUATOR](https://mavlink.io/en/messages/common.html#MAV_CMD_DO_SET_ACTUATOR)
设置舵机指令, 用于抛投
| 参数 | 说明 |
| ----------- | --------------------------------------------------------------------------- |
| Actuator1~6 | 舵机位置 -1 表示关闭位置, 1 表示打开位置, 0表示中间位置, NAN 表示不进行动作 |
| index | 从0开始, 当index 为1时, Actuator1 表示第七个通道 |
### 5.18 请求消息 [MAV_CMD_REQUEST_MESSAGE](https://mavlink.io/en/messages/common.html#MAV_CMD_REQUEST_MESSAGE)
请求消息命令, 请用 COMMAND_LONG
| 参数 | 说明 |
| -------- | ------------------ |
| param1 | 请求的 msgid |
| param2-7 | 见被请求消息自定义 |
### 5.19 设置遥测消息帧周期 [MAV_CMD_SET_MESSAGE_INTERVAL](https://mavlink.io/en/messages/common.html#MAV_CMD_SET_MESSAGE_INTERVAL)
设置消息发送间隔周期
可设置飞控的常发数据消息周期
| 参数 | 说明 |
| ------ | -------------- |
| param1 | 要设置的 msgid |
| param2 | 消息周期 us |
| param7 | 未使用 |
### 5.20 吊舱角度控制 [MAV_CMD_DO_GIMBAL_MANAGER_PITCHYAW](https://mavlink.io/en/messages/common.html#MAV_CMD_DO_GIMBAL_MANAGER_PITCHYAW)
设置载荷云台俯仰航向角度指令
param5 中, GIMBAL_MANAGER_FLAGS_RETRACT(镜头回缩) GIMBAL_MANAGER_FLAGS_NEUTRAL(回中) . 该两 bit 指令动作优先级最高执行.
param1\param2不都为NAN, 表示吊舱按给定角度运动
设置俯仰低头20度, 航向右60度, param1=-20, param2=60
设置俯仰低头20度, 航向不变, param1=-20, param2=NAN,
param1\param2都为NAN, param3 或 param4 不为 NAN, 则表示吊舱俯仰或航向以给定速率运动
| 参数 | 说明 |
| ------ | ------------------------------------------------------------------------------------------- |
| param1 | 俯仰角, 抬头为正, -180~180deg, NAN 表示不改变当前俯仰 |
| param2 | 航向角, 右转为正, -180~180deg, NAN 表示不改变当前航向 |
| param3 | 俯仰角速度, 单位deg/s |
| param4 | 航向角速度, 单位deg/s |
| param5 | 参考[GIMBAL_MANAGER_FLAGS](https://mavlink.io/en/messages/common.html#GIMBAL_MANAGER_FLAGS) |
| param6 | |
| param7 | gimbal 设备的 comp_id, (暂未使用) |
### 5.21 自动定距拍照 [MAV_CMD_DO_SET_CAM_TRIGG_DIST](https://mavlink.io/en/messages/common.html#MAV_CMD_DO_SET_CAM_TRIGG_DIST)
拍照-定距指令
若进行定距拍照, 则会停止当前正在进行的定时拍照.
单拍一张 param1=NAN, param2=NAN, param3=1
停止连拍 param1=0, param2=NAN, param3=0
停止连拍且当前单拍一张 param1=0, param2=NAN, param3=1
触发定10m拍照 param1 = 10, param2=NAN, param3=0
| 参数 | 说明 |
| ------ | ----------------------------------------------------------- |
| param1 | 定距触发距离m, 0表示不定距离触发, NAN表示不改变当前触发状态 |
| param2 | 快门时间ms, NAN 表示用默认快门时间设置 |
| param3 | 是否立刻进行一次拍照, 0不进行, 1进行 |
### 5.22 自动定时拍照 [MAV_CMD_DO_SET_CAM_TRIGG_INTERVAL](https://mavlink.io/en/messages/common.html#MAV_CMD_DO_SET_CAM_TRIGG_INTERVAL)
拍照-定时指令
若进行定时拍照, 则会关闭当前正进行的定距拍照.
| 参数 | 说明 |
| ------ | -------------------------------------- |
| param1 | 定时触发周期ms, 0表示不进行定时触发 |
| param2 | 快门时间ms, NAN 表示用默认快门时间设置 |
| param3 | 是否立刻进行一次拍照, 0不进行, 1进行 |
### 5.23 相机控制 [MAV_CMD_DO_DIGICAM_CONTROL](https://mavlink.io/en/messages/common.html#MAV_CMD_DO_DIGICAM_CONTROL)
相机控制
param1~param5中,
| 参数 | 说明 |
| ------ | ----------------------------------------------------------------- |
| param1 | 未用, 给0或NAN |
| param2 | 变倍率, 给定绝对倍率, 0或负数或NAN忽略(用MAV_CMD_SET_CAMERA_ZOOM) |
| param3 | 变倍率, 给定相对倍率, 0或负数或NAN忽略(用MAV_CMD_SET_CAMERA_ZOOM) |
| param4 | 对焦, 1-执行一次对焦, 0或负数或NAN忽略 |
| param5 | 拍照, 1-执行一次拍照, 0或负数或NAN忽略 |
| param6 | 未用, 给0或NAN |
| param7 | 未用, 给0或NAN |
### 5.24 相机变焦 [MAV_CMD_SET_CAMERA_ZOOM](https://mavlink.io/en/messages/common.html#MAV_CMD_SET_CAMERA_ZOOM)
变焦指令
| 参数 | 说明 |
| ------ | -------------------------------------------------------------------------------------- |
| param1 | 1-连续变焦 2-设置变焦值 |
| param2 | 连续变焦: -1到1, 0为停止, 负数为缩小, 正数为放大
设置变焦倍数: 0~100, 100为最大倍数 |
### 5.25 吊舱指点跟踪 [MAV_CMD_CAMERA_TRACK_POINT](https://mavlink.io/en/messages/common.html#MAV_CMD_CAMERA_TRACK_POINT)
指点跟踪
| 参数 | 说明 |
| ------ | --------------------------------------- |
| param1 | px, 水平图像位置, 0~1, 0为最左, 1为最右 |
| param2 | py, 垂直图像位置, 0~1, 0为最上, 1为最下 |
| param3 | 点半径, 0-一个像素点, 1-全图 |
### 5.26 吊舱停止跟踪 [MAV_CMD_CAMERA_STOP_TRACKING](https://mavlink.io/en/messages/common.html#MAV_CMD_CAMERA_STOP_TRACKING)
停止跟踪
### 5.27 开始录像 [MAV_CMD_VIDEO_START_CAPTURE](https://mavlink.io/en/messages/common.html#MAV_CMD_VIDEO_START_CAPTURE)
开始录像
### 5.28 停止录像 [MAV_CMD_VIDEO_STOP_CAPTURE](https://mavlink.io/en/messages/common.html#MAV_CMD_VIDEO_STOP_CAPTURE)
停止录像
### 5.29 发动机控制 [MAV_CMD_DO_ENGINE_CONTROL](https://mavlink.io/en/messages/common.html#MAV_CMD_DO_ENGINE_CONTROL)
发动机控制
| 参数 | 说明 |
| ------ | ------------------------------------ |
| param1 | 0-停止发动机 1-启动发动机, NAN忽略 |
| param2 | 0-热车开始 1-冷却开始, NAN忽略 |
| param3 | 升空后启动发动机高度, 单位m, NAN忽略 |
### 5.30 降落伞控制 [MAV_CMD_DO_PARACHUTE](https://mavlink.io/en/messages/common.html#MAV_CMD_DO_PARACHUTE)
降落伞指令
| 参数 | 说明 |
| ------ | ------------------------------------------------------------------------------ |
| param1 | 参考 PARACHUTE_ACTION
0-禁用自动开伞
1-启用自动开伞
2-立刻停桨开伞 |
### 5.31 数字电调配置 VKFLY_CMD_ESC_CONFIG
电调设置
| 参数 | 说明 |
| ------ | ------------------------------------- |
| param1 | 设置电调编号, 1-16, NAN表示忽略该指令 |
### 5.32 指点后抛投 VKFLY_CMD_DO_REPOSITION_THAN_THROW
指点后抛投, 本指令仅支持 COMMAND_INT
| 参数 | 说明 |
| ------ | -------------------------------------------------------------------------- |
| param1 | 抛投舵机编号, 0-0xFFFF, 从低到高每bit对应一舵机, 参考VKFLY_THROW_CHAN_TYPE |
| param2 | 抛投后动作, NAN或0为悬停, 1为返航 |
| x | 纬度, 1e-7deg |
| y | 经度, 1e-7deg |
| z | 高度, m |
### 5.33 指点后降落 VKFLY_CMD_DO_REPOSITION_THAN_LAND
指点后降落, 本指令仅支持 COMMAND_INT
| 参数 | 说明 |
| ------ | ---------------------------------------------------------------------- |
| param1 | 地面海拔,单位m, 飞控根据该参数判断何时接近了地面需要减速, 未知则填 NAN |
| param3 | 水平速度,单位m/s, 飞到该位置的最大水平速度 |
| param4 | 航向,单位deg, 0-359.99deg, 北偏东航向 |
| x | 纬度,1e-7deg |
| y | 精度,1e-7deg |
| z | 高度, m. 飞往该点过程中的相对高度 |
### 5.34 自定义开始航线 VKFLY_CMD_MISSION_START
开始航线
| 参数 | 说明 |
| ------ | ------------------------------------------------------------------------------- |
| param1 | 起始航点序号,0-UINT16_MAX. NAN表示忽略该参数,飞控根据执行方式从0或最后一点开始 |
| param2 | 任务执行方式, 参考 VKFLY_MISSION_EXEC_MODE |
| param3 | 任务完成后动作, 参考 VKFLY_MISSION_DONE_ACT |
| param4 | |
### 5.35 自定义返航 VKFLY_CMD_RETURN_TO_LAUCH
返航
* 直线返航 从指令开始位置直线返回到降落点
* 逆序返航 从指令开始位置逆序返回到降落点
* 若指定了起始航点, 则从指定起始航点开始执行
* 若未指定起始航点, 未执行过航线
* 地面站指令返航, 则从最后一航点开始执行
* 自动触发返航, 则直线返航
* 若未指定起始航点, 执行过航线
* 若前序航线顺序执行, 航线目标航点为第一个航点, 则直线返航
* 若前序航线顺序执行, 航线目标航点不为第一个航点, 则从航线目标航点-1开始执行
* 若前序航线逆序执行, 则从航线目标航点开始执行。
* 顺序返航 从指令开始位置顺序返回到降落点
* 若指定了起始航点, 则从指定起始航点开始执行。
* 若未指定起始航点, 未执行过航线,
* 地面站指令返航, 则从第一个航点开始执行
* 自主触发返航, 则直线返航
* 若未指定起始航点, 执行过航线
* 若前序航线顺序执行, 则从航线目标航点开始执行
* 若前序航线逆序执行, 航线目标航点为最后一个航点, 则直线返航
* 若前序航线逆序执行, 航线目标航点不为最后一个航点, 则从航线目标航点+1开始执行
| 参数 | 说明 |
| ------ | ----------------------------------------------------------------------------------------------------------------- |
| param1 | 起始航点序号, -1-UINT16_MAX. 当返航执行方式为正序或逆序航线返航时参数有效. -1表示最后一点开始, NAN 表示忽略该参数 |
| param2 | 返航执行, 参考 VKFLY_RTL_EXEC_MODE |
### 5.36 称重器配置 VKFLY_CMD_WEIGHER_CONFIG
| 参数 | 说明 |
| ------ | ----------------------------------------- |
| param1 | 重量校准, 填写实际载重单位克. NAN表示忽略 |
| param2 | 1-恢复出厂配置. NAN表示忽略 |
### 5.37 队形飞行 VKFLY_CMD_FORMATION_FLY
编队指令. 编队集结或解散指令发送给队形从机, 设置队形指令发送给队形主机.
队形主机将队形参数通过 VK_FORMATION_LEADER 持续广播给编队从机.
| 参数 | 说明 |
| ------ | ------------------------------------- |
| param1 | 1编队集结 2编队解散 3设置队形 |
| param2 | 编队队形, VKFLY_FORMATION_TYPE |
| param3 | 矩形队形列数 |
| param4 | 队形航向锁定, 0不锁定随长机航向 1锁定 |
| param5 | 左右间距 单位m |
| param6 | 前后间距 单位m |
| param7 | 上下间距 单位m |
### 5.38 固定翼舵面检查 VKFLY_CMD_DO_FIXEDWING_ACTUATOR_CHECK
| 参数 | 说明 |
| ------ | --------------------------------------------------------------------------------------------------------- |
| param1 | 舵面检查, NAN表示忽略. 0全回中. 1横滚回中, 2右滚, 3左滚. 4俯仰回中, 5抬头, 6低头. 7方向回中, 8左转,9右转. |
| param2 | 油门检查, NAN表示忽略. -1表示灭车, 0~100 表示给定油门百分比, 0为怠速, 100为满油门 |
### 5.39 固定翼返航盘旋点 VKFLY_CMD_SET_RTL_CIRCLE_WP
设置固定翼返航盘旋点。返航时先执行飞往盘旋点, 到达后在盘旋点盘旋降高到返航高度, 再飞往起飞降落点降落.
| 参数 | 说明 |
| ------ | ------------------------------------------------------------------- |
| param1 | 盘旋半径, NAN表示用飞控参数中的默认盘旋半径. 正数顺时针, 负数逆时针 |
| param2 | 上传后是否立刻执行返航, 0否, 1是 |
| param5 | 纬度 |
| param6 | 经度 |
| param7 | 高度(暂未使用) |
### 5.40 VTOL模态切换 MAV_CMD_DO_VTOL_TRANSITION
切换模态, 切换为固定翼后绕起飞点盘旋, 切换为旋翼后悬停
| 参数 | 说明 |
| ------ | ---------------------------------------------------------- |
| param1 | 目标模态, MAV_VTOL_STATE_MC 旋翼, MAV_VTOL_STATE_FW 固定翼 |
| param2 | 是否立刻切换, 填0 |
### 5.41 教培开始航线 VKFLY_CMD_MISSION_START_EDU_TRAINING
* param1
起始航点序号, 0-UINT16_MAX
* param2
执行循环次数, -1表示无限循环, 其它取 1~UINT16_MAX
* param3
航线完成后动作, 参考 VKFLY_MISSION_DONE_ACT
### 5.42 外部导航设置 VKFLY_CMD_EXT_NAV_CFG
* param1
0切换内部导航, 1切换外部导航, 2禁用外部导航, 100 惯导对准
* param2
* param3
* param4
* x
纬度
* y
经度
* z
海拔高度, 单位m, 对准用
## 6 飞控 LOG 读取
* LOG_REQUEST_LIST
* LOG_ENTRY
* LOG_REQUEST_DATA
* LOG_DATA
* LOG_ERASE
* LOG_REQUEST_END
## 7 固件下载
固件下载为VKFLY自定义指令, 飞控固件下载交互过程如下.
```mermaid
sequenceDiagram
GCS->>Autopilot: VK_FW_UPDATE_BEGIN
GCS->>GCS: start timeout
Autopilot->>GCS: VK_FW_UPDATE_DATA_REQUEST (package 0)
Autopilot->>Autopilot: start timeout
GCS-->>Autopilot: VK_FW_UPDATE_DATA (package 0)
note over GCS,Autopilot: ...iterate through packages...
Autopilot->>GCS: VK_FW_UPDATE_DATA_REQUEST (the last package)
Autopilot->>Autopilot: start timeout
GCS-->>Autopilot: VK_FW_UPDATE_DATA (the last package)
Autopilot->>GCS: VK_FW_UPDATE_ACK
```
### 7.1 升级开始 VK_FW_UPDATE_BEGIN
地面站向飞控发送此消息, 开始传输固件文件.
| 字段 | 说明 |
| ------------- | ------------------------------------------- |
| target_system | 目标sysid, 在多机系统时指定哪个飞控进行升级 |
| target_comp | 目标compid, 飞控compid 为1 |
| file_size | 文件字节大小字节数 |
### 7.2 请求升级数据 VK_FW_UPDATE_DATA_REQUEST
飞控向地面站发送此消息, 请求文件数据内容.
注意飞控请求count可能大于一包所能发送数量, 比如一次请求4096字节.
地面站收到该请求后, 依次将数据按 VK_FW_UPDATE_DATA 连续发送, 注意每次发送的 offset 都需按实际赋值.
| 字段 | 说明 |
| ------ | -------- |
| offset | 字节偏移 |
| count | 字节数 |
### 7.3 升级数据包 VK_FW_UPDATE_DATA
地面站向飞控发送文件数据包.
| 字段 | 说明 |
| ------ | --------------------- |
| offset | 字节偏移 |
| count | 本包字节数, 范围0~128 |
| data | 数据内容 |
### 7.4 升级应答 VK_FW_UPDATE_ACK
飞控向地面站发送应答消息.
| 字段 | 说明 |
| ------ | -------------------------------- |
| result | 0-成功 其它失败, 参考 MAV_RESULT |
## 8 自定义消息
自定义消息帧, 主要自用于数据排故
### 8.1 VKINS_STATUS
VKins 系统的状态数据自定义消息, 主要用于一些自定状态的传输和排故.
| 字段 | 说明 |
| --------------- | ----------------------------------------------------------------------------------------- |
| time_boot_ms | 系统本地时间戳ms |
| nav_status | 传感器状态标志, 参考 VKFLY.xml 中 VKFLY_VKINS_NAV_STATUS |
| s_flag1 | 当前使用导航 0内部 1外部 |
| s_flag2 | |
| s_flag3 | |
| s_flag4 | |
| s_flag5 | |
| s_flag6 | |
| mag_calib_stage | 磁校准状态
0-未在校准
1-水平XY校准
2-竖直XZ校准
3-校准通过
4-校准失败 |
| raw_longitude | vkins解算使用的原始经度, 1e-7deg |
| raw_latitude | vkins解算使用的原始纬度, 1e-7deg |
| baro_alt | vkins解算使用的原始气压高m |
| raw_gps_alt | vkins解算使用的原始海拔高度m |
| solv_psat_num | 定位星数 |
| solv_hsat_num | 定向星数 |
| temperature | 飞控温度, degC |
| vibe_coe | 振动系数 0-无效 |
### 8.2 VKFMU_STATUS
| 字段 | 说明 |
| ------------- | --------------------------------------------------------------------- |
| time_boot_ms | 系统本地时间戳ms |
| rtl_reason | 返航原因, 参考 VKFLY_RTL_REASON |
| loiter_reason | 悬停原因, 参考 VKFLY_LOITER_REASON |
| s_flag3 | bit0长机编队信息连接状态, 1连接正常. bit1 航线是否遥控辅助控高, 1是. |
| ups_volt | ups电压, 0.1V |
| adc_volt | adc电压, 0.1V |
| flight_time | 飞行时间,s |
| dist_t_tar | 目标距离, cm |
| servo_state | 舵机状态, 每位对应一个舵机, 1-开 0-关 |
| flight_dist | 飞行距离, m, 本次上电开始飞行的总距离 |
## 9 飞控参数说明
飞控参数名作为确认飞控参数用途的唯一识别码, 不可随意修改. 在新增参数时应注意不要与已有参数重名, 保持向前兼容性.
### 9.1 旋翼版本参数
| 参数名 | 参数 | 类型 | 说明 |
| --------------- | ------------------------------------ | ------ | ------------------------------------------------------------------------------------------------------ |
| MAV_SYS_ID | 系统ID | UINT8 | 范围1~255, 作为MAVLINK通信使用的 SYSTEM ID |
| MAV_COMP_ID | 组件ID | UINT8 | 范围1~255, 作为MAVLINK通信使用的COMPONENT ID |
| MLOG_MODE | 数据记录模式 | UINT32 | 范围0~3
0-不记录
1-解锁到上锁
2-上电到落锁 3-上电到下电 |
| BOOT_MODE | 系统启动模式 | UINT8 | 范围0~1, 0正常启动, 1U盘模式(用于导入导出数据文件) |
| HW_SN_NUM | 硬件SN号 | UINT32 | 范围0~UINT32_MAX |
| AIRFRAME | 飞机布局类型 | UINT16 | 范围0~UINT16_MAX, 区分不同的飞机布局类型, 参考 enum AP_TYPE |
| GCS_DISCONT_DT | 地面站失联时间 | UINT16 | 范围0~UINT16_MAX, 单位s. 持续未收到地面站心跳的时间, 0-表示不检测地面站失联 |
| RCFAIL_LOT_T | RC失控悬停时间 | UINT16 | 范围0~UINT16_MAX, 单位s. 遥控器失控后悬停等待时间 |
| RC_ATT_EN | 遥控器姿态模式启用 | UINT16 | 范围0~1, 0不启用, 1启用 |
| VOLT1_LOW_VAL | 一级电压低阈值 | FLOAT | 范围0~1000, 单位V |
| VOLT2_LOW_VAL | 二级电压低阈值 | FLOAT | 范围0~1000, 单位V |
| VCAP1_LOW_VAL | 一级电量低阈值 | UINT8 | 范围0~100, 单位1%, 当具有多个智能电池时, 飞控按他们中最低电量进行触发保护判定 |
| VCAP2_LOW_VAL | 二级电量低阈值 | UINT8 | 范围0~100, 单位1% |
| H2P_LOW1_VAL | 一级氢气压低阈值 | FLOAT | 范围0~10000, 单位MPa |
| H2P_LOW1_VAL | 二级氢气压低阈值 | FLOAT | 范围0~10000, 单位MPa |
| FUEL_LOW1_VAL | 一级ecu油量低阈值 | FLOAT | 范围 1~100, 单位% |
| FUEL_LOW2_VAL | 二级ecu油量低阈值 | FLOAT | 范围 1~100, 单位% |
| VOLT_PROT_CH | 电压保护通道 | UINT16 | 范围0~10, 触发电压保护的通道, 默认0飞控供电 |
| OBAVOID_DIST | 障碍悬停距离 | FLOAT | 范围2~8, 单位m |
| OBAVOID_ACT | 避障动作 | UINT8 | 范围0~2,0-不开启 1-悬停 2-爬高 |
| GCS_DISC_CRUISE | 航线中是否启用地面站失联 | UINT8 | 范围0~1,0-不启用 1-启用 |
| FS_CONF_A | 失控保护设置 | UINT32 | 参考enum FS_ACTION. 每4bit为一类保护动作设置 |
| CIR_RAD_DFLT | 默认环绕/盘旋半径 | FLOAT | 范围1~10000m |
| TOF_ALT_M | 默认起飞高度 | FLOAT | 范围1~5000, 单位m |
| RTL_ALT_M | 默认返航高度 | FLOAT | 范围0~5000, 单位m |
| RTL_HEAD_MODE | 返航机头对准方式 | UINT16 | 0-对头返航 1-对尾返航 2-保持当前航向 |
| WP_FP_ALT_MODE | 去航线起始点爬高方式 | UINT8 | 0-直线爬升 1-斜线爬升 |
| RTL_EXEC_MODE | 默认返航执行方式 | UINT8 | 参考VKFLY_RTL_EXEC_MODE |
| MC_XY_CRUISE | 默认旋翼巡航速度 | FLOAT | 范围2~25, 单位m/s |
| COM_P1_AF | 载荷P1串口复用 | UINT16 | 范围0~UINT16_MAX |
| ALT_LIM_UP1 | 1级高度限制 | UINT16 | 范围10~10000, 单位m |
| ALT_LIM_UP2 | 2级高度限制 | UINT16 | 范围0~10000, 单位m |
| MAX_HOR_DIST | 最远水平距离 | UINT32 | 范围0~UINT32_MAX, 单位m |
| PREC_LAND_ERR | 精准降落误差范围 | FLOAT | 范围0.05~1.0, 单位m |
| VEFOL_FR | 车辆跟随相对右向位置 | FLOAT | 范围-1000~1000,单位m |
| VEFOL_FF | 车辆跟随相对前向位置 | FLOAT | 范围-1000~1000,单位m |
| VEFOL_FU | 车辆跟随相对上向位置 | FLOAT | 范围-1000~1000,单位m |
| VEFOL_FYD | 车辆跟随相对航向夹角 | FLOAT | 范围-180~180,单位deg |
| VEFOL_BASE_YD | 基站航向安装偏角 | FLOAT | 范围-180~180, 单位deg |
| VEFOL_BASE_YD | 基站航向安装偏角 | FLOAT | 范围-180~180, 单位deg |
| PHO_SIG_TYPE | 拍照信号类型 | UINT8 | 范围0~2
0-低电平
1-高电平
2-PWM |
| PHO_PWM_OFF | 拍照PWM信号待命值 | UINT16 | 范围0~10000, 单位us |
| PHO_PWM_ON | 拍照PWM信号触发值 | UINT16 | 范围0~10000, 单位us |
| PHO_SIG_TIME | 拍照触发信号持续时间 | UINT16 | 范围0~20000, 单位ms |
| PHO_SIG_CH | 拍照-信号输出通道映射 | UINT8 | 拍照信号映射到飞控的哪个输出接口,0~16, 0-表示不启用映射输出 |
| FOLLOW_DIST | 默认跟随距离 | FLOAT | 范围2~1000,单位m |
| MAN_VELH_MAX | 手动模式最大水平速度 | FLOAT | 范围2~20,单位m/s |
| MAN_VELU_MAX | 手动模式最大爬升速度 | FLOAT | 范围1~10,单位m/s |
| MAN_VELD_MAX | 手动模式最大下降速度 | FLOAT | 范围1~10,单位m/s |
| AUTO_VELU_MAX | 自动模式最大爬升速度 | FLOAT | 范围0.5~8, 单位m/s |
| AUTO_VELD_MAX | 自动模式最大下降速度 | FLOAT | 范围0.2~5,单位m/s |
| AUTO_VELV_LND | 自动模式降落接地速度 | FLAOT | 范围0.2~0.6, 单位m/s |
| TILT_ANG_MAX | 最大倾斜角度 | FLOAT | 范围10~45,单位deg |
| YAW_SPD_MAX | 最大航向角速度 | FLAOT | 范围10~120,单位deg/s |
| MC_RP_ANG_KP | 旋翼横滚俯仰角度比例系数 | UINT16 | 范围200~800 |
| MC_YAW_ANG_KP | 旋翼航向角度比例系数 | UINT16 | 范围200~800 |
| MC_RSPD_KP | 旋翼横滚角速度比例系数 | UINT16 | 范围30~200 |
| MC_RSPD_KI | 旋翼横滚角速度积分系数 | UINT16 | 范围0~20 |
| MC_RSPD_KD | 旋翼横滚角速度微分系数 | UINT16 | 范围0~20 |
| MC_PSPD_KP | 旋翼俯仰角速度比例系数 | UINT16 | 范围30~200 |
| MC_PSPD_KI | 旋翼俯仰角速度积分系数 | UINT16 | 范围0~20 |
| MC_PSPD_KD | 旋翼俯仰角速度微分系数 | UINT16 | 范围0~20 |
| MC_YSPD_KP | 旋翼航向角速度比例系数 | UINT16 | 范围50~400 |
| MC_YSPD_KI | 旋翼航向角速度积分系数 | UINT16 | 范围0~20 |
| MC_YSPD_KD | 旋翼航向角速度微分系数 | UINT16 | 范围0~20 |
| MC_PXY_KP | 旋翼水平位置比例系数 | UINT16 | 范围20~150 |
| MC_VXY_KP | 旋翼水平速度比例系数 | UINT16 | 范围80~200 |
| MC_VXY_KI | 旋翼水平速度积分系数 | UINT16 | 范围0~20 |
| MC_VXY_KD | 旋翼水平速度微分系数 | UINT16 | 范围0~20 |
| MC_PZ_KP | 旋翼高度位置比例系数 | UINT16 | 范围20~150 |
| MC_VZ_KP | 旋翼垂直速度比例系数 | UINT16 | 范围300~500 |
| MC_AZ_KP | 旋翼垂直加速度比例系数 | UINT16 | 范围5~20 |
| MC_AZ_KI | 旋翼垂直加速度积分系数 | UINT16 | 范围5~20 |
| MC_JERKXY_MAX | 旋翼水平最大加加速度 | FLOAT | 范围8~20,单位m/s |
| MC_HOV_THR | 旋翼悬停油门 | FLOAT | 范围0.3~0.7(暂未使用) |
| MC_MIN_THR | 旋翼怠速油门 | FLOAT | 范围0.05~0.25 |
| GYRO0_XOFF | GYRO0 X轴零位偏移 | FLOAT | 范围-10~10, 单位 rad/s |
| GYRO0_YOFF | GYRO0 Y轴零位偏移 | FLOAT | 范围-10~10, 单位 rad/s |
| GYRO0_ZOFF | GYRO0 Z轴零位偏移 | FLOAT | 范围-10~10, 单位 rad/s |
| ACC0_XOFF | ACC0 X轴零位偏移 | FLOAT | 范围-10~10, 单位m/s^2 |
| ACC0_YOFF | ACC0 Y轴零位偏移 | FLOAT | 范围-10~10, 单位m/s^2 |
| ACC0_ZOFF | ACC0 Z轴零位偏移 | FLOAT | 范围-10~10, 单位m/s^2 |
| ACC0_XXSCALE | ACC0 校准XX系数 | FLOAT | 范围-10~10 |
| ACC0_YYSCALE | ACC0 校准YY系数 | FLOAT | 范围-10~10 |
| ACC0_ZZSCALE | ACC0 校准ZZ系数 | FLOAT | 范围-10~10 |
| MAG0_XOFF | MAG0 X轴零位偏移 | FLOAT | 范围-10~10,单位Gauss |
| MAG0_YOFF | MAG0 Y轴零位偏移 | FLOAT | 范围-10~10,单位Gauss |
| MAG0_ZOFF | MAG0 Z轴零位偏移 | FLOAT | 范围-10~10,单位Gauss |
| MAG0_XXSCALE | MAG0 校准XX系数 | FLOAT | 范围-10~10 |
| MAG0_YYSCALE | MAG0 校准YY系数 | FLOAT | 范围-10~10 |
| MAG0_ZZSCALE | MAG0 校准ZZ系数 | FLOAT | 范围-10~10 |
| GYRO1_XOFF | GYRO1 X轴零位偏移 | FLOAT | 范围-10~10, 单位 rad/s |
| GYRO1_YOFF | GYRO1 Y轴零位偏移 | FLOAT | 范围-10~10, 单位 rad/s |
| GYRO1_ZOFF | GYRO1 Z轴零位偏移 | FLOAT | 范围-10~10, 单位 rad/s |
| ACC1_XOFF | ACC1 X轴零位偏移 | FLOAT | 范围-10~10, 单位m/s^2 |
| ACC1_YOFF | ACC1 Y轴零位偏移 | FLOAT | 范围-10~10, 单位m/s^2 |
| ACC1_ZOFF | ACC1 Z轴零位偏移 | FLOAT | 范围-10~10, 单位m/s^2 |
| ACC1_XXSCALE | ACC1 校准XX系数 | FLOAT | 范围-10~10 |
| ACC1_YYSCALE | ACC1 校准YY系数 | FLOAT | 范围-10~10 |
| ACC1_ZZSCALE | ACC1 校准ZZ系数 | FLOAT | 范围-10~10 |
| MAG1_XOFF | MAG1 X轴零位偏移 | FLOAT | 范围-10~10,单位Gauss |
| MAG1_YOFF | MAG1 Y轴零位偏移 | FLOAT | 范围-10~10,单位Gauss |
| MAG1_ZOFF | MAG1 Z轴零位偏移 | FLOAT | 范围-10~10,单位Gauss |
| MAG1_XXSCALE | MAG1 校准XX系数 | FLOAT | 范围-10~10 |
| MAG1_YYSCALE | MAG1 校准YY系数 | FLOAT | 范围-10~10 |
| MAG1_ZZSCALE | MAG1 校准ZZ系数 | FLOAT | 范围-10~10 |
| IMU_ATT_ROFF0 | IMU水平ROLL偏移 | FLOAT | 范围-180~180, 单位 deg
飞控通过水平校准自动捕获 |
| IMU_ATT_POFF0 | IMU水平PITCH偏移 | FLOAT | 范围-180~180, 单位 deg
飞控通过水平校准自动捕获 |
| IMU_ATT_YOFF0 | IMU水平YAW偏移 | FLOAT | 范围-180~180, 单位 deg
可用于设置飞控IMU安装朝向
安装方向前0, 右90, 左-90, 后180 |
| ASPD0_OFFSET1 | 空速计零偏 | FLOAT | 范围 -5000~5000, 单位Pa |
| IMU_GFLT_TYPE | 角速度滤波类型 | UINT8 | 范围0~5, 0-VVH 1-VH 2-H 3-M 4-L 5-VL |
| IMU_AFLT_TYPE | 加速度滤波类型 | UINT8 | 范围0~5, 0-VVH 1-VH 2-H 3-M 4-L 5-VL |
| IMU_PXOFF | 飞控IMU X安装距离偏差 | INT32 | 范围-1000~1000, 单位cm
IMU安装离飞机中心X轴向偏差距离 |
| IMU_PYOFF | 飞控IMU Y安装距离偏差 | INT32 | 范围-1000~1000, 单位cm
IMU安装离飞机中心Y轴向偏差距离 |
| IMU_PZOFF | 飞控IMU Z安装距离偏差 | INT32 | 范围-1000~1000, 单位cm
IMU安装离飞机中心Z轴向偏差距离 |
| GPS_ANT_XOFF | 普通GPS天线X安装距离偏差 | INT32 | 范围-1000~1000, 单位cm
天线安装离飞机中心X轴向偏差距离 |
| GPS_ANT_YOFF | 普通GPS天线Y安装距离偏差 | INT32 | 范围-1000~1000, 单位cm
天线安装离飞机中心Y轴向偏差距离 |
| GPS_ANT_ZOFF | 普通GPS天线Z安装距离偏差 | INT32 | 范围-1000~1000, 单位cm
天线安装离飞机中心Z轴向偏差距离 |
| RTK_ANT_XOFF | RTK定位天线X安装距离偏差 | INT32 | 范围-1000~1000, 单位cm
天线安装离飞机中心X轴向偏差距离 |
| RTK_ANT_YOFF | RTK定位天线Y安装距离偏差 | INT32 | 范围-1000~1000, 单位cm
天线安装离飞机中心Y轴向偏差距离 |
| RTK_ANT_ZOFF | RTK定位天线Z安装距离偏差 | INT32 | 范围-1000~1000, 单位cm
天线安装离飞机中心Z轴向偏差距离 |
| RTK_H_COMP | RTK测向先天安装角度偏差 | FLOAT | 范围-180~180, 单位deg
常用前后安装 0deg, 左右安装 90deg |
| BAT_V_DIV0 | 电压通道0校准比例系数 | FLOAT | 范围0~1000, 通道0为飞控供电电压 |
| BAT_V_DIV1 | 电压通道1校准比例系数 | FLOAT | 范围0~1000, 通道0为飞控供电电压 |
| BAT_V_DIV2 | 电压通道2校准比例系数 | FLOAT | 范围0~1000, 通道0为飞控供电电压 |
| BAT_V_DIV3 | 电压通道3校准比例系数 | FLOAT | 范围0~1000, 通道0为飞控供电电压 |
| BAT_V_OFF0 | 电压通道0校准偏移 | FLOAT | 范围-100~100, 单位V |
| BAT_V_OFF1 | 电压通道1校准偏移 | FLOAT | 范围-100~100, 单位V |
| BAT_V_OFF2 | 电压通道2校准偏移 | FLOAT | 范围-100~100, 单位V |
| BAT_V_OFF3 | 电压通道3校准偏移 | FLOAT | 范围-100~100, 单位V |
| GIMB_RTM_RCCH | 载荷回中-遥控器通道映射 | UINT32 | 范围 0~18, 0-表示不启用 |
| GIMB_MROI_RCCH | 载荷ROI-遥控器通道映射 | UINT32 | 范围 0~18, 0-表示不启用 |
| GIMB_FOLL_RCCH | 载荷跟随\锁定模式切换-遥控器通道映射 | UINT32 | 范围 0~18, 0-表示不启用 |
| GIMB_ZOOM_RCCH | 载荷画面缩放-遥控器通道映射 | UINT32 | 范围 0~18, 0-表示不启用 |
| GIMB_PHO_RCCH | 载荷拍照-遥控器通道映射 | UINT32 | 范围 0~18, 0-表示不启用 |
| GIMB_REC_RCCH | 载荷录像-遥控器通道映射 | UINT32 | 范围 0~18, 0-表示不启用 |
| GIMB_SSW_RCCH | 载荷画面切换-遥控器通道映射 | UINT32 | 范围 0~18, 0-表示不启用 |
| THROW_INSUR | 手动抛投保险开关-遥控器通道映射 | UINT16 | 范围 0~18, 0-表示不启用 |
| THROW_RCCH1 | 抛投1-遥控器通道映射 | UINT16 | 范围 0~18, 0-表示不启用 |
| THROW_RCCH2 | 抛投2-遥控器通道映射 | UINT16 | 范围 0~18, 0-表示不启用 |
| THROW_RCCH3 | 抛投3-遥控器通道映射 | UINT16 | 范围 0~18, 0-表示不启用 |
| THROW_RCCH4 | 抛投4-遥控器通道映射 | UINT16 | 范围 0~18, 0-表示不启用 |
| THROW_RCCH5 | 抛投5-遥控器通道映射 | UINT16 | 范围 0~18, 0-表示不启用 |
| THROW_RCCH6 | 抛投6-遥控器通道映射 | UINT16 | 范围 0~18, 0-表示不启用 |
| THROW_RCCH7 | 抛投7-遥控器通道映射 | UINT16 | 范围 0~18, 0-表示不启用 |
| THROW_RCCH8 | 抛投8-遥控器通道映射 | UINT16 | 范围 0~18, 0-表示不启用 |
| THROW_RCCH9 | 抛投9-遥控器通道映射 | UINT16 | 范围 0~18, 0-表示不启用 |
| THROW_RCCH10 | 抛投10-遥控器通道映射 | UINT16 | 范围 0~18, 0-表示不启用 |
| THROW_CH1 | 抛投1-PWM输出通道映射 | UINT16 | 范围 0~16, 0-表示不启用 |
| THROW_CH2 | 抛投2-PWM输出通道映射 | UINT16 | 范围 0~16, 0-表示不启用 |
| THROW_CH3 | 抛投3-PWM输出通道映射 | UINT16 | 范围 0~16, 0-表示不启用 |
| THROW_CH4 | 抛投4-PWM输出通道映射 | UINT16 | 范围 0~16, 0-表示不启用 |
| THROW_CH5 | 抛投5-PWM输出通道映射 | UINT16 | 范围 0~16, 0-表示不启用 |
| THROW_CH6 | 抛投6-PWM输出通道映射 | UINT16 | 范围 0~16, 0-表示不启用 |
| THROW_CH7 | 抛投7-PWM输出通道映射 | UINT16 | 范围 0~16, 0-表示不启用 |
| THROW_CH8 | 抛投8-PWM输出通道映射 | UINT16 | 范围 0~16, 0-表示不启用 |
| THROW_CH9 | 抛投9-PWM输出通道映射 | UINT16 | 范围 0~16, 0-表示不启用 |
| THROW_CH10 | 抛投10-PWM输出通道映射 | UINT16 | 范围 0~16, 0-表示不启用 |
| THROW_CH1_ON | 抛投1-打开PWM值 | UINT16 | 范围 0~2500 |
| THROW_CH2_ON | 抛投2-打开PWM值 | UINT16 | 范围 0~2500 |
| THROW_CH3_ON | 抛投3-打开PWM值 | UINT16 | 范围 0~2500 |
| THROW_CH4_ON | 抛投4-打开PWM值 | UINT16 | 范围 0~2500 |
| THROW_CH5_ON | 抛投5-打开PWM值 | UINT16 | 范围 0~2500 |
| THROW_CH6_ON | 抛投6-打开PWM值 | UINT16 | 范围 0~2500 |
| THROW_CH7_ON | 抛投7-打开PWM值 | UINT16 | 范围 0~2500 |
| THROW_CH8_ON | 抛投8-打开PWM值 | UINT16 | 范围 0~2500 |
| THROW_CH9_ON | 抛投9-打开PWM值 | UINT16 | 范围 0~2500 |
| THROW_CH10_ON | 抛投10-打开PWM值 | UINT16 | 范围 0~2500 |
| THROW_CH1_OFF | 抛投1-关闭PWM值 | UINT16 | 范围 0~2500 |
| THROW_CH2_OFF | 抛投2-关闭PWM值 | UINT16 | 范围 0~2500 |
| THROW_CH3_OFF | 抛投3-关闭PWM值 | UINT16 | 范围 0~2500 |
| THROW_CH4_OFF | 抛投4-关闭PWM值 | UINT16 | 范围 0~2500 |
| THROW_CH5_OFF | 抛投5-关闭PWM值 | UINT16 | 范围 0~2500 |
| THROW_CH6_OFF | 抛投6-关闭PWM值 | UINT16 | 范围 0~2500 |
| THROW_CH7_OFF | 抛投7-关闭PWM值 | UINT16 | 范围 0~2500 |
| THROW_CH8_OFF | 抛投8-关闭PWM值 | UINT16 | 范围 0~2500 |
| THROW_CH9_OFF | 抛投9-关闭PWM值 | UINT16 | 范围 0~2500 |
| THROW_CH10_OFF | 抛投10-关闭PWM值 | UINT16 | 范围 0~2500 |
| THROW_DC_CH1 | 直通舵机1-飞控通道映射 | UINT16 | 范围 0~18,0表示不启用 |
| THROW_DC_CH2 | 直通舵机2-飞控通道映射 | UINT16 | 范围 0~18,0表示不启用 |
| THROW_DC_CH3 | 直通舵机3-飞控通道映射 | UINT16 | 范围 0~18,0表示不启用 |
| THROW_DC_CH4 | 直通舵机4-飞控通道映射 | UINT16 | 范围 0~18,0表示不启用 |
| THROW_DC_RCCH1 | 直通舵机1-遥控器通道映射 | UINT16 | 范围 0~18,0表示不启用 |
| THROW_DC_RCCH2 | 直通舵机2-遥控器通道映射 | UINT16 | 范围 0~18,0表示不启用 |
| THROW_DC_RCCH3 | 直通舵机3-遥控器通道映射 | UINT16 | 范围 0~18,0表示不启用 |
| THROW_DC_RCCH4 | 直通舵机4-遥控器通道映射 | UINT16 | 范围 0~18,0表示不启用 |
| PARACHUTE_RCCH | 降落伞-遥控器通道映射 | UINT16 | 范围 0~18, 0-表示不启用 |
| PARACHUTE_CH | 降落伞-PWM输出通道映射 | UINT16 | 范围 7~16, 0-表示不启用 |
| PARACHUTE_ON | 降落伞-打开PWM值 | UINT16 | 范围 0~2500 |
| PARACHUTE_OFF | 降落伞-关闭PWM值 | UINT16 | 范围 0~2500 |
| COM_SBUSO_AF | SBUS.O复用 | UINT8 | 0-透传SBUS.I 1-复用为抛投信号 |
| LADRC_EN | LADRC控制开关 | UINT8 | 0-不启用 1-启用, 默认不启用 |
| LADRC_R_B0 | LADRC横滚感度 | float | 100~1000, 默认300 |
| LADRC_P_B0 | LADRC俯仰感度 | float | 100~1000, 默认300 |
| LADRC_Y_B0 | LADRC航向感度 | float | 100~1000, 默认600 |
| WIND_COMP_KP | 抗风补偿 | float | 0~1, 默认0 |
| PL_WEI_MAX | 称重超重门限 | float | 单位kg, 范围 0~1000kg, 0表示不启用 |
| NAV_DFLT_SATID | 默认定位卫导模块 | UINT16 | 0 RTK, 1 GPS, 2 外接备份/抗干扰模块 |
| MAV_GCS_STA | 主链路初始默认状态 | uint32 | 0 自动发送周期消息, 1 静默 |
| MAV_OBV_STA | 备份链路初默认始状态 | uint32 | 0 自动发送周期消息, 1 静默 |
| FORM_CUS_X | 自定义队形左右位置 | float | m, 右为正 |
| FORM_CUS_Y | 自定义队形前后位置 | float | m, 前为正 |
| FORM_CUS_Z | 自定义队形上下位置 | float | m, 上为正 |
| RC_AUTO_AID | 遥控器自动辅助开关 | UINT32 | 每bit代表一个通道, 1 启用, bit0遥控器高度辅助开关 |
| GIMB_PROT_TYPE | 载荷串口设备 | UINT32 | 0无, 1思翼吊舱, 2普宙吊舱, 3睿铂吊舱, 4祥拓吊舱, 5先飞吊舱, 6拓普吊舱, 7品灵吊舱, 8亿舱火控, 9国科惯导 |
#### 9.1.1 FS_CONF_A 参数说明
1. bit0~3:1级低电压保护. 支持不启用\返航\降落
2. bit4~7:2级低电压保护. 支持不启用\返航\降落
3. bit8~11: 1级氢低压保护. 支持不启用\返航\降落
4. bit12~15: 2级氢低压保护. 支持不启用\返航\降落
5. bit16~19: 1级ecu油量低保护. 支持不启用\返航\降落
6. bit20~23: 2级ecu油量低保护. 支持不启用\返航\降落
### 9.2 垂起版本参数
| 参数名 | 参数 | 类型 | 说明 |
| --------------- | ------------------------ | ------ | --------------------------------------------------------------------------------- |
| MAV_SYS_ID | 系统ID | UINT8 | 范围1~255, 作为MAVLINK通信使用的 SYSTEM ID |
| MAV_COMP_ID | 组件ID | UINT8 | 范围1~255, 作为MAVLINK通信使用的COMPONENT ID |
| MLOG_MODE | 数据记录模式 | UINT32 | 范围0~3
0-不记录
1-解锁到上锁
2-上电到落锁 3-上电到下电 |
| BOOT_MODE | 系统启动模式 | UINT8 | 范围0~1, 0-正常启动, 1-U盘模式(用于导入导出数据文件) |
| HW_SN_NUM | 硬件SN号 | UINT32 | 范围0~UINT32_MAX |
| AIRFRAME | 旋翼机型 | UINT16 | 参考 VKFLY_AP_TYPE, 垂起仅支持 X4, X4R |
| FW_AIRFRAME | 固定翼机型 | UINT16 | 参考 VKFLY_FIXEDWING_AP_TYPE |
| GCS_DISCONT_DT | 地面站失联时间 | UINT16 | 范围0~UINT16_MAX, 单位s. 持续未收到地面站心跳的时间, 0-表示不检测地面站失联 |
| VOLT1_LOW_VAL | 一级电压低阈值 | FLOAT | 范围0~1000, 单位V |
| VOLT2_LOW_VAL | 二级电压低阈值 | FLOAT | 范围0~1000, 单位V |
| VCAP1_LOW_VAL | 一级电量低阈值 | UINT8 | 范围0~100, 单位1%, 当具有多个智能电池时, 飞控按他们的平均电量进行触发保护判定 |
| VCAP2_LOW_VAL | 二级电量低阈值 | UINT8 | 范围0~100, 单位1% |
| VOLT_PROT_CH | 电压保护通道 | UINT16 | 范围0~10, 触发电压保护的通道, 默认0飞控供电 |
| FS_CONF_A | 失控保护设置 | UINT32 | 参考enum FS_ACTION. |
| CIR_RAD_DFLT | 默认环绕/盘旋半径 | FLOAT | 单位m, 范围100~10000m , 默认200 |
| TOF_ALT_M | 默认起飞高度 | FLOAT | 范围1~5000, 单位m |
| RTL_ALT_M | 默认返航高度 | FLOAT | 范围1~5000, 单位m |
| FUEL_LOW1_VAL | 一级ecu油量低阈值 | FLOAT | 范围 1~100, 单位% |
| FUEL_LOW2_VAL | 二级ecu油量低阈值 | FLOAT | 范围 1~100, 单位% |
| FW_ROLL_KP | 固定翼横滚感度 | UINT16 | 范围 500~2000, 默认1000 |
| FW_ROLL_KI | 固定翼横滚积分 | UINT16 | 范围 0~1000, 默认100 |
| FW_ROLL_KD | 固定翼横滚阻尼 | UINT16 | 范围 0~1000, 默认100 |
| FW_PITCH_KP | 固定翼俯仰感度 | UINT16 | 范围 500~2000, 默认1000 |
| FW_PITCH_KI | 固定翼俯仰积分 | UINT16 | 范围 0~1000, 默认100 |
| FW_PITCH_KD | 固定翼俯仰阻尼 | UINT16 | 范围 0~1000, 默认100 |
| FW_YAW_KD | 固定翼航向阻尼 | UINT16 | 范围 0~1000, 默认100 |
| FW_L1_PERIOD | 固定翼L1周期 | UINT16 | 范围1500~3000, 默认2500 |
| FW_L1_DAMPING | 固定翼L1阻尼 | UINT16 | 范围60~100, 默认80 |
| FW_L1_KI | 固定翼L1积分 | UINT16 | 范围0~10, 默认2 |
| FW_ALT_KP | 固定翼高度比例 | UINT16 | 范围10~150, 默认 50 |
| FW_VU_KP | 固定翼垂速比例 | UINT16 | 范围200~500, 默认 350 |
| FW_VU_KI | 固定翼垂速积分 | UINT16 | 范围0~100, 默认10 |
| FW_ASPD_THR_KP | 固定翼油门比例 | UINT16 | 范围10~300, 默认80 |
| FW_ASPD_THR_KI | 固定翼油门积分 | UINT16 | 范围1~100, 默认10 |
| FW_ROLL_ELEV_KP | 固定翼横滚拉杆补偿 | UINT16 | 范围0~10, 默认3 |
| FW_ROLL_MAX | 固定翼最大横滚角 | FLOAT | 单位deg, 范围15~45, 默认30 |
| FW_PITCH_MAX | 固定翼最大俯仰角 | FLOAT | 单位deg, 范围5~30, 默认15 |
| FW_VU_MAX | 固定翼最大爬升率 | FLOAT | 单位m/s, 范围1~10, 默认5 |
| FW_VD_MAX | 固定翼最大下降率 | FLOAT | 单位m/s, 范围1~10, 默认5 |
| FW_ASPD_STALL | 固定翼失速空速 | FLOAT | 单位m/s, 范围 10~200, 默认16 |
| FW_ASPD_MIN | 固定翼最小空速 | FLOAT | 单位m/s, 范围 10~200, 默认20 |
| FW_ASPD_CRUISE | 固定翼巡航空速 | FLOAT | 单位m/s, 范围 10~200, 默认22 |
| FW_TOF_THR | 切换固定翼最大油门 | UINT16 | 单位1%, 范围10~100, 默认90 |
| TRANS_FW_TMO | 切换固定翼超时时间 | UINT16 | 单位s, 范围5~100, 默认10 |
| TRANS_MC_DIST | 切换旋翼提前距离 | UINT16 | 单位m, 范围50~500, 默认100 |
| MC_RP_ANG_KP | 旋翼横滚俯仰角度比例系数 | UINT16 | 范围200~800 |
| MC_YAW_ANG_KP | 旋翼航向角度比例系数 | UINT16 | 范围200~800 |
| MC_RSPD_KP | 旋翼横滚角速度比例系数 | UINT16 | 范围30~200 |
| MC_RSPD_KD | 旋翼横滚角速度微分系数 | UINT16 | 范围0~20 |
| MC_PSPD_KP | 旋翼俯仰角速度比例系数 | UINT16 | 范围30~200 |
| MC_PSPD_KD | 旋翼俯仰角速度微分系数 | UINT16 | 范围0~20 |
| MC_YSPD_KP | 旋翼航向角速度比例系数 | UINT16 | 范围50~400 |
| MC_YSPD_KD | 旋翼航向角速度微分系数 | UINT16 | 范围0~20 |
| MC_PXY_KP | 旋翼水平位置比例系数 | UINT16 | 范围20~150 |
| MC_VXY_KP | 旋翼水平速度比例系数 | UINT16 | 范围80~200 |
| MC_VXY_KI | 旋翼水平速度积分系数 | UINT16 | 范围0~20 |
| MC_VXY_KD | 旋翼水平速度微分系数 | UINT16 | 范围0~20 |
| MC_PZ_KP | 旋翼高度位置比例系数 | UINT16 | 范围20~150 |
| MC_VZ_KP | 旋翼垂直速度比例系数 | UINT16 | 范围300~500 |
| MC_AZ_KP | 旋翼垂直加速度比例系数 | UINT16 | 范围5~20 |
| MC_AZ_KI | 旋翼垂直加速度积分系数 | UINT16 | 范围5~20 |
| MC_JERKXY_MAX | 旋翼水平最大加加速度 | FLOAT | 范围8~20,单位m/s |
| MC_HOV_THR | 旋翼悬停油门 | FLOAT | 范围0.3~0.7(暂未使用) |
| MC_MIN_THR | 旋翼怠速油门 | FLOAT | 范围0.05~0.25, 默认 0.15 |
| FW_RNG_AILEL_D | 左副翼或前翼行程下 | UINT16 | 范围500~2500, T尾V尾左副翼下, 串联翼左前翼下, 三角翼左翼下 |
| FW_RNG_AILEL_M | 左副翼或前翼行程中 | UINT16 | 范围500~2500, T尾V尾左副翼中, 串联翼左前翼中, 三角翼左翼中 |
| FW_RNG_AILEL_U | 左副翼或前翼行程上 | UINT16 | 范围500~2500, T尾V尾左副翼上, 串联翼左前翼上, 三角翼左翼上 |
| FW_RNG_AILER_D | 右副翼或前翼行程下 | UINT16 | 范围500~2500, T尾V尾右副翼下, 串联翼右前翼下, 三角翼右翼下 |
| FW_RNG_AILER_M | 右副翼或前翼行程中 | UINT16 | 范围500~2500, T尾V尾右副翼中, 串联翼右前翼中, 三角翼右翼中 |
| FW_RNG_AILER_U | 右副翼或前翼行程上 | UINT16 | 范围500~2500, T尾V尾右副翼上, 串联翼右前翼上, 三角翼右翼上 |
| FW_RNG_ELEVL_D | 左升降或后翼行程下 | UINT16 | 范围500~2500, T尾左升降下, V尾左尾下, 倒V尾左尾下, 串联翼左后翼下, 三角翼左鸭翼下 |
| FW_RNG_ELEVL_M | 左升降或后翼行程中 | UINT16 | 范围500~2500, T尾左升降中, V尾左尾中, 倒V尾左尾中, 串联翼左后翼中, 三角翼左鸭翼中 |
| FW_RNG_ELEVL_U | 左升降或后翼行程上 | UINT16 | 范围500~2500, T尾左升降上, V尾左尾上, 倒V尾左尾上, 串联翼左后翼上, 三角翼左鸭翼上 |
| FW_RNG_ELEVL_D | 右升降或后翼行程下 | UINT16 | 范围500~2500, T尾右升降下, V尾左尾下, 倒V尾左尾下, 串联翼右后翼下, 三角翼右鸭翼下 |
| FW_RNG_ELEVL_M | 右升降或后翼行程中 | UINT16 | 范围500~2500, T尾右升降中, V尾左尾中, 倒V尾左尾中, 串联翼右后翼中, 三角翼右鸭翼中 |
| FW_RNG_ELEVL_U | 右升降或后翼行程上 | UINT16 | 范围500~2500, T尾右升降上, V尾左尾上, 倒V尾左尾上, 串联翼右后翼上, 三角翼右鸭翼上 |
| FW_RND_RUD_L | 方向舵行程左 | UINT16 | 范围500~2500 |
| FW_RND_RUD_M | 方向舵行程中 | UINT16 | 范围500~2500 |
| FW_RND_RUD_R | 方向舵行程右 | UINT16 | 范围500~2500 |
| FW_THR_OFF | 油门行程灭车 | UINT16 | 范围500~2500 |
| FW_THR_MIN | 油门行程怠速 | UINT16 | 范围500~2500 |
| FW_THR_MAX | 油门行程最大 | UINT16 | 范围500~2500 |
#### 9.2.1 FS_CONF_A 参数说明
1. bit0~3:1级低电压保护. 支持不启用\返航\降落
2. bit4~7:2级低电压保护. 支持不启用\返航\降落
3. bit8~11: 1级氢低压保护. 支持不启用\返航\降落
4. bit12~15: 2级氢低压保护. 支持不启用\返航\降落
5. bit16~19: 1级ecu油量低保护. 支持不启用\返航\降落
6. bit20~23: 2级ecu油量低保护. 支持不启用\返航\降落
7. bit24~27: 固定翼高度保护. 支持不启用\返航\降落