Sfoglia il codice sorgente

增加vins相关消息定义

LiuYang 2 mesi fa
parent
commit
844e4c0ee7
2 ha cambiato i file con 75 aggiunte e 2 eliminazioni
  1. 33 1
      msg_definitions/VKFly.xml
  2. 42 1
      readme.md

+ 33 - 1
msg_definitions/VKFly.xml

@@ -661,6 +661,17 @@
     <enum name="VKFLY_VINS_CONFIG_ACT">
       <entry value="0" name="VKFLY_VINS_CONFIG_ACT_NONE">Do nothing</entry>
       <entry value="1" name="VKFLY_VINS_CONFIG_DO_RESET">Rest vins algorithm</entry>
+      <entry value="2" name="VKFLY_VINS_CONFIG_RESERVE1"></entry>
+      <entry value="3" name="VKFLY_VINS_CONFIG_RESERVE2"></entry>
+      <entry value="4" name="VKFLY_VINS_CONFIG_RESERVE3"></entry>
+      <entry value="5" name="VKFLY_VINS_CONFIG_RESERVE4"></entry>
+      <entry value="6" name="VKFLY_VINS_CONFIG_RESERVE5"></entry>
+      <entry value="7" name="VKFLY_VINS_CONFIG_RESERVE6"></entry>
+      <entry value="8" name="VKFLY_VINS_CONFIG_RESERVE7"></entry>
+      <entry value="9" name="VKFLY_VINS_CONFIG_RESERVE8"></entry>
+      <entry value="10" name="VKFLY_VINS_CONFIG_RESERVE9"></entry>
+      <entry value="11" name="VKFLY_VINS_CONFIG_SET_PRIME_GINS"></entry>
+      <entry value="12" name="VKFLY_VINS_CONFIG_SET_PRIME_VINS"></entry>
     </enum>
 
     <enum name="MAV_CMD">
@@ -1318,7 +1329,28 @@
       <field type="uint8_t[200]" name="json_data">json data.</field>
     </message>
 
-    <message id="53200" name="FMUB_STATUS">
+    <message id="53111" name="VK_EXT_VISION_FUSION">
+      <description>external vision fusion data</description>
+      <field type="uint32_t" name="timestamp" units="ms">timestamp from system boot</field>
+      <field type="float[3]" name="pos_frd" units="m">position in vision frd frame</field>
+      <field type="float[3]" name="vel_frd" units="m/s">velocity in vision frd frame</field>
+      <field type="float[4]" name="Q_g">attitude quaternion by FRD_NED </field>
+      <field type="int32_t" name="lat">latitidue</field>
+      <field type="int32_t" name="lon">longitude</field>
+      <field type="float" name="alt_amsl">amsl latitidue</field>
+      <field type="float" name="hR">relative altitude</field>
+      <field type="float[3]" name="vel_ned" units="m/s">velocity in NED frame</field>
+      <field type="float[3]" name="bias_acc" units="m/s/s">acceleration bias in body XYZ</field>
+      <field type="float[3]" name="bias_gyr" units="rad/s">gyroscope bias in body XYZ</field>
+      <field type="float[3]" name="cov_att" units="rad">attitude covariance</field>
+      <field type="float[3]" name="cov_pos" units="m">position covariance</field>
+      <field type="float[3]" name="cov_vel" units="m/s"></field>
+      <field type="uint8_t" name="unhealthy" >unhealthy flag</field>
+      <field type="uint8_t" name="flag">work status flag</field>
+      <field type="uint8_t" name="reset_cnt"> reset count</field>
+    </message>
+
+    <message id="53200" name="kMUB_STATUS">
       <description>EV2 FMU backup status.</description>
       <field type="uint32_t" name="timestamp" units="ms">timestamp from systemboot in ms.</field>
       <field type="float" name="roll" units="rad">euler roll angle.</field>

+ 42 - 1
readme.md

@@ -479,6 +479,18 @@ typedef enum VKFLY_FORMATION_TYPE
 } VKFLY_FORMATION_TYPE;
 ```
 
+### 1.22 视觉导航设置命令 VKFLY_VINS_CONFIG_ACT
+
+```c
+typedef enum VKFLY_VINS_CONFIG_ACT
+{
+  VKFLY_VINS_CONFIG_DO_RESET=1, /* 重启VINS */
+  VKFLY_VINS_CONFIG_SET_PRIME_GINS=11, /* 使用飞控GPS-INS主导航 */
+  VKFLY_VINS_CONFIG_SET_PRIME_VINS=12, /* 使用VINS 主导航 */
+}VKFLY_VINS_CONFIG_ACT;
+
+```
+
 ## 2 飞控遥测数据消息
 
 ### 2.1 心跳包 [HEARTBEAT](https://mavlink.io/en/messages/common.html#HEARTBEAT)
@@ -1778,6 +1790,11 @@ param2 = (float)(颜色 + (闪烁 << 4) +(电调编号<<8))
 * param1
 1-重置全部抛投状态显示为关闭
 
+### 5.46 视觉导航设置命令 VKFLY_CMD_VINS_CONFIG
+
+* param1
+参考 VKFLY_VINS_CONFIG_ACT
+
 ## 6 飞控数据 LOG 读取
 
 ### 6.1 获取日志列表
@@ -1902,7 +1919,7 @@ VKins 系统的状态数据自定义消息, 主要用于一些自定状态的传
 | --------------- | ----------------------------------------------------------------------------------------- |
 | time_boot_ms    | 系统本地时间戳ms                                                                          |
 | nav_status      | 传感器状态标志, 参考 VKFLY.xml 中 VKFLY_VKINS_NAV_STATUS                                  |
-| s_flag1         | 当前使用导航 0内部 1外部                                                                  |
+| s_flag1         | 当前使用导航 0内部 1外部 2VISION                                                                 |
 | s_flag2         |                                                                                           |
 | s_flag3         |                                                                                           |
 | s_flag4         |                                                                                           |
@@ -1934,6 +1951,30 @@ VKins 系统的状态数据自定义消息, 主要用于一些自定状态的传
 | flight_dist   | 飞行距离, m, 本次上电开始飞行的总距离                                 |
 | servo_display | 舵机状态展示, 每位对应一个舵机, 1-开 0-关,仅用作展示                 |
 
+### 8.3 VK_EXT_VISION_FUSION
+
+外部视觉/里程计融合结果自定义消息, 主要用于输出 `ext_vision_fusion` 模块融合后的定位、速度、姿态、零偏和健康状态数据.
+
+| 字段      | 说明                                                                          |
+| --------- | ----------------------------------------------------------------------------- |
+| timestamp | 系统本地时间戳, ms                                                            |
+| pos_frd   | 外部视觉/里程计参考系下的位置, FRD 坐标系, m                                  |
+| vel_frd   | 外部视觉/里程计参考系下的速度, FRD 坐标系, m/s                                |
+| Q_g       | global NED 参考系下的姿态四元数                                               |
+| lat       | WGS84 纬度, degE7                                                             |
+| lon       | WGS84 经度, degE7                                                             |
+| alt_amsl  | WGS84 海拔高度, m                                                             |
+| hR        | 相对起飞点高度, m                                                             |
+| vel_ned   | global NED 参考系下速度, m/s                                                  |
+| bias_acc  | 加速度计零偏, body XYZ, m/s^2                                                 |
+| bias_gyr  | 陀螺仪零偏, body XYZ, rad/s                                                   |
+| cov_att   | 姿态误差状态协方差, rad^2                                                     |
+| cov_pos   | 位置误差状态协方差, m^2                                                       |
+| cov_vel   | 速度误差状态协方差, (m/s)^2                                                   |
+| unhealthy | 健康状态, 0-健康 1-odom 异常/纯惯导 2-惯导超过可靠时间                        |
+| flag      | 工作状态, 0-无效 1-里程计参考系定位有效 2-NED 参考系定位有效 3-WGS84 定位有效 |
+| reset_cnt | 融合器重置计数                                                                |
+
 ## 9 飞控参数说明
 
 飞控参数名作为确认飞控参数用途的唯一识别码, 不可随意修改. 在新增参数时应注意不要与已有参数重名, 保持向前兼容性.