# 载具状态(UORB 消息)

对指挥员发布的载具系统状态进行编码

源文件 (打开新窗口)

# 对指挥员发布的载具系统状态进行编码

uint64 timestamp # 系统运行以来的时间 启动 (微秒)

uint64 armed_time # 上膛 时戳 (微秒)
uint64 takeoff_time # 起飞时间 时戳 (微秒)

uint8 arming_state uint8 ARMING_STATE_INIT = 0
uint8 ARMING_STATE_STANDBY = 1
uint8 ARMING_STATE_ARMED = 2
uint8 ARMING_STATE_STANDBY_ERROR = 3
uint8 ARMING_STATE_SHUTDOWN = 4
uint8 ARMING_STATE_IN_AIR_RESTORE = 5
uint8 ARMING_STATE_MAX = 6

uint8 最新上膛原因 uint8 最新撤膛原因 uint8 ARM_DISARM_REASON_TRANSITION_TO_STANDBY = 0
uint8 ARM_DISARM_REASON_RC_STICK = 1
uint8 ARM_DISARM_REASON_RC_SWITCH = 2
uint8 ARM_DISARM_REASON_COMMAND_INTERNAL = 3
uint8 ARM_DISARM_REASON_COMMAND_EXTERNAL = 4
uint8 ARM_DISARM_REASON_MISSION_START = 5
uint8 ARM_DISARM_REASON_SAFETY_BUTTON = 6
uint8 ARM_DISARM_REASON_AUTO_DISARM_LAND = 7
uint8 ARM_DISARM_REASON_AUTO_DISARM_PREFLIGHT = 8
uint8 ARM_DISARM_REASON_KILL_SWITCH = 9
uint8 ARM_DISARM_REASON_LOCKDOWN = 10
uint8 ARM_DISARM_REASON_FAILURE_DETECTOR = 11
uint8 ARM_DISARM_REASON_SHUTDOWN = 12
uint8 ARM_DISARM_REASON_UNIT_TEST = 13

uint64 nav_state_timestamp # 激活当前导航状态的时间 uint8 nav_state_user_intention # 用户的模式 选定的 (在故障安全情况下可能与 nav_state 不同)

uint8 nav_state # 当前激活的模式 uint8 NAVIGATION_STATE_MANUAL = 0               # 手动模式 uint8 NAVIGATION_STATE_ALTCTL = 1               # 高度控制模式 uint8 NAVIGATION_STATE_POSCTL = 2               # 定位控制模式 uint8 NAVIGATION_STATE_AUTO_MISSION = 3         # 自动任务模式 uint8 NAVIGATION_STATE_AUTO_LOITER = 4          # 自动巡航模式 uint8 NAVIGATION_STATE_AUTO_RTL = 5             # 自动 返回 以启动模式 uint8 NAVIGATION_STATE_UNUSED3 = 8              # 可用插槽 uint8 NAVIGATION_STATE_UNUSED = 9               # 可用插槽 uint8 NAVIGATION_STATE_ACRO = 10                # Acro 模式 uint8 NAVIGATION_STATE_UNUSED1 = 11             # 可用插槽 uint8 NAVIGATION_STATE_DESCEND = 12             # 下降 模式 (无位置控制)
uint8 NAVIGATION_STATE_TERMINATION = 13         # 终止模式 uint8 NAVIGATION_STATE_OFFBOARD = 14
uint8 NAVIGATION_STATE_STAB = 15                # 稳定模式 uint8 NAVIGATION_STATE_UNUSED2 = 16             # 可用插槽 uint8 NAVIGATION_STATE_AUTO_TAKEOFF = 17        # 起飞 uint8 NAVIGATION_STATE_AUTO_LAND = 18           # Land uint8 NAVIGATION_STATE_AUTO_FOLLOW_TARGET = 19  # 自动跟踪 uint8 NAVIGATION_STATE_AUTO_PRECLAND = 20       # 与着陆目标精确着陆 uint8 NAVIGATION_STATE_ORBIT = 21               # 圆形轨道 uint8 NAVIGATION_STATE_AUTO_VTOL_TAKEOFF = 22   # 起飞, 转型, 建立闲置状态 uint8 NAVIGATION_STATE_MAX = 23

# 检测到故障的位掩码
uint16 故障检测器状态 uint16 FAILURE_NONE = 0
uint16 FAILURE_ROLL = 1              # (1 <<; 0)
uint16 FAILURE_PITCH = 2             # (1 <<; 1)
uint16 FAILURE_ALT = 4               # (1 <<; 2)
uint16 FAILURE_EXT = 8               # (1 <<; 3)
uint16 FAILURE_ARM_ESC = 16          # (1 <<; 4)
uint16 FAILURE_BATTERY = 32          # (1 <<; 5)
uint16 FAILURE_IMBALANCED_PROP = 64  # (1 <<; 6)
uint16 FAILURE_MOTOR = 128           # (1 <<; 7)

uint8 hil_state uint8 HIL_STATE_OFF = 0
uint8 HIL_STATE_ON = 1

# 如果是 VTOL, 那么值就是 VEHICLE_TYPE_ROTARY_WING 虽然 作为多旋翼飞行, 和 VEHICLE_TYPE_FIXED_WING 时作为固定翼飞行-机翼
uint8 vehicle_type uint8 VEHICLE_TYPE_UNKNOWN = 0
uint8 VEHICLE_TYPE_ROTARY_WING = 1
uint8 VEHICLE_TYPE_FIXED_WING = 2
uint8 VEHICLE_TYPE_ROVER = 3
uint8 VEHICLE_TYPE_AIRSHIP = 4

bool failsafe # true 如果 系统处于故障安全状态  (e.g.:RTL, 悬停, 终止, ...)
bool failsafe_and_user_took_over # true 如果 系统处于故障安全状态,但用户接管了控制权

# 链接丢失
bool gcs_connection_lost # 连接到 GCS 的数据链路丢失 uint8 gcs_connection_lost_counter # 计算唯一的 GCS 连接丢失事件 bool high_latency_data_link_lost # 设为 true 如果 高延迟数据 链接 (eg. 岩块铱 9603 遥测模块) 沦丧

# VTOL 旗帜
bool is_vtol # True 如果 系统具有 VTOL 功能 bool is_vtol_tailsitter # True 如果 系统会执行 90从 多旋翼 过渡到 FW 时的俯仰旋转角度 bool in_transition_mode # True 如果 VTOL 正在进行过渡 bool in_transition_too_fw # True 如果 VTOL 正在从 多旋翼 向 FW 过渡

# MAVLink 识别
uint8 system_type # 系统类型, 包含 mavlink MAV_TYPE uint8 system_id # 系统 ID, 包含 MAVLink 的系统 ID 字段 uint8 component_id # 子系统 / 组件 id, 包含 MAVLink 的组件 ID 字段 bool safety_button_available # 设为 true 如果 已连接安全按钮 bool safety_off # 设为 true 如果 安全关闭 bool power_input_valid # 设置 如果 输入电源有效 bool usb_connected # 设置为  (从未清除) 一旦从 USB 链接收到遥测数据 bool open_drone_id_system_present bool open_drone_id_system_healthy bool parachute_system_present bool parachute_system_healthy bool avoidance_system_required # 设为 true 如果 通过 COM_OBS_AVOID 参数启用避障系统 bool avoidance_system_valid # 避障系统的状态 bool rc_alibration_in_process bool calibration_enabled bool pre_flight_checks_pass # true 如果 所有必要的检查