跳至内容

载具指令(UORB 消息)

载具指令 uORB 信息。用于指挥任务/行动等。遵循 MAVLink COMMAND_INT / COMMAND_LONG 定义

源文件

c
# 载具指令 uORB 消息。已使用 对于 指挥任务 / 行动 / 等等
# 跟随 MAVLink COMMAND_INT / COMMAND_LONG 定义

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

uint16 VEHICLE_CMD_CUSTOM_0 = 0				# 测试命令
uint16 VEHICLE_CMD_CUSTOM_1 = 1				# 测试命令
uint16 VEHICLE_CMD_CUSTOM_2 = 2				# 测试命令
uint16 VEHICLE_CMD_NAV_WAYPOINT = 16			# 导航至 MISSION。 |以十进制秒为单位的停留时间。(固定翼忽略,停留在 MISSION 的时间 对于 旋转翼)| 接受半径 米数 (如果 这个半径的球面是 撞击,MISSION 算作 达到)| 0 以通过 WP、 如果 >; 0 通过 WP 的半径(米)。正值 对于 顺时针轨道,负值 对于 计数器-顺时针轨道。允许轨迹控制。|使命 (旋转 机翼)| 纬度| 经度| 海拔高度|
uint16 VEHICLE_CMD_NAV_LOITER_UNLIM = 17		# 在此任务周围无限期悬停 ||| MISSION 周围的半径,以米为单位。如果为正数,则顺时针旋转、 不然 计数器-顺行| 预期偏航角| 纬度| 经度| 海拔高度|
uint16 VEHICLE_CMD_NAV_LOITER_TURNS = 18		# 在这个任务周围悬停 对于 X 轮流 |转弯|| MISSION 周围的半径,以米为单位。如果为正数,则顺时针旋转、 不然 计数器-顺行| 预期偏航角| 纬度| 经度| 海拔高度|
uint16 VEHICLE_CMD_NAV_LOITER_TIME = 19			# 在这个任务周围悬停 对于 X 秒 |秒数 (小数)|| MISSION 周围的半径,以米为单位。如果为正数,则顺时针旋转、 不然 计数器-顺行| 预期偏航角| 纬度| 经度| 海拔高度|
uint16 VEHICLE_CMD_NAV_RETURN_TO_LAUNCH = 20		# 返回发射地点 ||||||||
uint16 VEHICLE_CMD_NAV_LAND = 21			# 所在地的土地 |||| 预期偏航角| 纬度| 经度| 海拔高度|
uint16 VEHICLE_CMD_NAV_TAKEOFF = 22			# 从地面起飞 / 手动 |最低 沥青 (如果 空速传感器 礼品),无传感器时的预期间距||| 亚乌 观点 (如果 磁强计 礼品),没有磁强计时忽略不计| 纬度| 经度| 海拔高度|
uint16 VEHICLE_CMD_NAV_PRECLAND = 23			# 尝试精确着陆
uint16 VEHICLE_CMD_DO_ORBIT = 34			# 在参数定义的圆周上开始绕行。 |半径[米] |速度[米/s] |偏航行为 ||纬度/X |经度/Y |海拔高度/Z |
uint16 VEHICLE_CMD_DO_FIGUREEIGHT = 35        		# 在参数定义的八字形轮廓上开始飞行。 |主要半径[米] |小半径[米] |速度[米/s] |定向 |纬度/X |经度/Y |海拔高度/Z |
uint16 VEHICLE_CMD_NAV_ROI = 80				# 设置 利益 (投资回报率) 对于 传感器组或载具本身。然后,载具控制系统就可以利用这一点来控制载具姿态和各种传感器(如摄像头)的姿态。 |感兴趣区域模式。(见 MAV_ROI 枚举)| 使命指数/ 目标 ID。(见 MAV_ROI 枚举)| 投资回报率 索引 (可让载具管理多个投资回报率x 固定 ROI 的位置(请参阅 MAV_FRAME)。
uint16 VEHICLE_CMD_NAV_PATHPLANNING = 81 # 控制 MAV 的自主路径规划。0:禁用局部避障/局部路径规划(不重置地图),1:启用局部路径规划,2:启用并重置局部路径规划|0:禁用完整路径规划(不重置地图),1:启用,2:启用并重置地图/占位网格,3:启用并重置规划路线,但不重置占位网格|空|目标处的偏航角,单位为罗盘度,[0...360]|目标处的纬度/X|目标处的经度/Y|目标处的高度/Z|空|目标处的偏航角,单位为罗盘度,[0...360]|目标处的纬度/X|目标处的经度/Y|目标处的高度/Z|空
uint16 VEHICLE_CMD_NAV_VTOL_TAKEOFF = 84 # 从地面/手部起飞并过渡到固定翼 | 最小俯仰角(如果存在空速传感器),无传感器时的期望俯仰角 | 空 | 空 | 偏航角(如果存在磁力计),无磁力计时忽略 | 纬度 | 经度 | 高度
uint16 VEHICLE_CMD_NAV_VTOL_LAND = 85 # 过渡到 多旋翼 并在指定位置着陆。
uint16 VEHICLE_CMD_NAV_GUIDED_LIMITS = 90 # 为外部控制设置限制 |timeout - 允许外部控制器控制飞行器的最长时间(秒)。0表示没有超时|绝对最低高度(米,AMLL)--如果飞行器的高度低于此高度,命令将被终止,任务将继续执行。0 表示没有高度下限| 绝对高度上限(单位:米)- 如果飞行器的高度超过此高度,命令将被终止,任务将继续执行。0 表示无高度上限| 水平移动限制(米,AMTL)- 如果飞行器移动距离超过此高度,命令将被终止,任务将继续执行;的位置。 受刑,命令将被中止,任务将 继续. 0 意味着没有水平高度限制||||
uint16 VEHICLE_CMD_NAV_GUIDED_MASTER = 91		# 设置主控制器的 ID |系统 ID| 组件 ID||||||
uint16 VEHICLE_CMD_NAV_DELAY = 93				# 将下一条导航命令延迟若干秒或指定时间 |延迟 秒钟 (十进制、 -1 使时间--领域)| 小时 (24h 格式UTC、 -1置之不理)| 分钟 (24h 格式UTC、 -1置之不理)| 附议 (24h 格式UTC)||||
uint16 VEHICLE_CMD_NAV_LAST = 95			# NOP - 该命令仅用于标记净空值的上限。/枚举中的 ACTION 命令 ||||||||
uint16 VEHICLE_CMD_CONDITION_DELAY = 112		# 延迟任务状态机。 |延迟 秒钟 (小数)|||||||
uint16 VEHICLE_CMD_CONDITION_CHANGE_ALT = 113		# 上升/率下降。延迟任务状态机,直到达到所需的高度。 |后裔 / 飞升 费率 (m/s)|||||| 完成高度|
uint16 VEHICLE_CMD_CONDITION_DISTANCE = 114		# 延迟任务状态机,直到到达下一个导航点的理想距离。 |距离 (米)|||||||
uint16 VEHICLE_CMD_CONDITION_YAW = 115			# 到达某个目标角度。 |目标角度:[0-360], 0 向北| 偏航变化时的速度:[度/秒]| 方向:负:反 顺行正:顺时针 [-1,1]| 相对偏移或绝对角度:[ 1,0]||||
uint16 VEHICLE_CMD_CONDITION_LAST = 159			# NOP - 该命令仅用于标记枚举中 CONDITION 命令的上限。 ||||||||
uint16 VEHICLE_CMD_CONDITION_GATE = 4501		# 等待直到通过阈值 |2D 协调模式: 0:与计划路线正交 | 高度模式: 0:忽略高度||| 纬度|| Alt|
uint16 VEHICLE_CMD_DO_SET_MODE = 176			# 设置系统模式。 |模式,由 ENUM MAV_MODE 定义|||||||
uint16 VEHICLE_CMD_DO_JUMP = 177			# 在任务列表中跳转到所需命令。仅重复指定次数 |序列号| 重复计数||||||
uint16 VEHICLE_CMD_DO_CHANGE_SPEED = 178		# 改变速度和/或油门设定点。 |速度 类型 (0=空速 1=地面 速度)| 速度  (m/s, -1 表示无 改变)| 节流阀  ( 百分比、 -1 表示无 改变)|||||
uint16 VEHICLE_CMD_DO_SET_HOME = 179			# 将原点位置更改为当前位置或指定位置。 |使用 当前 (1=使用当前的 地点, 0=使用指定 地点)|||| 纬度| 经度| 海拔高度|
uint16 VEHICLE_CMD_DO_SET_PARAMETER = 180		# 设置系统参数。注意事项!  使用该命令需要了解参数的数字枚举值。 |参数编号| 参数值||||||
uint16 VEHICLE_CMD_DO_SET_RELAY = 181			# 将继电器设置为某个条件。 |继电器编号| 设置 (1=上、 0=关闭,其他可能取决于系统 硬件)||||||
uint16 VEHICLE_CMD_DO_REPEAT_RELAY = 182		# 开启和关闭继电器 对于 在所需周期内完成所需的循环次数。 |继电器编号| 周期计数| 周期 时间 (秒,十进制)|||||
uint16 VEHICLE_CMD_DO_REPEAT_SERVO = 184		# 在标称设置和所需 PWM 之间循环 a 对于 在所需周期内完成所需的循环次数。 |伺服器编号| PWM (微秒、 10002000 典型)| 周期计数| 周期 时间 (秒)||||
uint16 VEHICLE_CMD_DO_FLIGHTTERMINATION = 185		# 立即终止飞行 |航班终止已启动 如果 >; 0.5|||||||
uint16 VEHICLE_CMD_DO_CHANGE_ALTITUDE = 186		# 将飞行器设置为 "闲置 "模式,并将高度改为指定值 |海拔高度| 新高度框架 ||||||
uint16 VEHICLE_CMD_DO_SET_ACTUATOR = 187		# 设置 致动器 (例如伺服器)调至所需值。 |致动器 1| 致动器 2| 致动器 3| 致动器 4| 致动器 5| 致动器 6| 索引|
uint16 VEHICLE_CMD_DO_LAND_START = 189			# 执行着陆的任务指令。这是任务中的一个标记,用于告诉自动驾驶仪代表着陆的任务项目序列从哪里开始。它也可以通过 COMMAND_LONG 发送,以触发一个 着陆在这种情况下 最近的 (地理位置)的着陆顺序。纬度/经度是 可选的可设置为 0/0 如果 不需要。如果指定,则将用于帮助找到最近的着陆序列。 ||||| 纬度| 经度||
uint16 VEHICLE_CMD_DO_GO_AROUND = 191			# 安全中止自主着陆的任务指令。 |海拔高度 (米)|||||||
uint16 VEHICLE_CMD_DO_REPOSITION = 192			# 重新定位到特定的 WGS84 GPS 位置。 |地面速度[米/s] |位掩码 |装载半径[米] 对于 飞机 |偏航 [度] |纬度	|经度 |海拔高度 |
uint16 VEHICLE_CMD_DO_PAUSE_CONTINUE = 193
uint16 VEHICLE_CMD_DO_SET_ROI_LOCATION = 195		# 设置 利益 (ROI) 的位置。然后,载具控制系统就可以利用它来控制载具姿态和各种传感器(如摄像头)的姿态。 ||||| 纬度| 经度| 海拔高度|
uint16 VEHICLE_CMD_DO_SET_ROI_WPNEXT_OFFSET = 196 	# 设置 利益 (投资回报率)将朝着下一个 航点,可选间距/滚动/偏航偏移。然后,载具控制系统就可以利用这一偏移量来控制载具姿态和各种传感器(如摄像头)的姿态。 ||||| 下一个航点的俯仰偏差| 下一个航点的滚动偏移量| 下一个航点的偏航偏移量|
uint16 VEHICLE_CMD_DO_SET_ROI_NONE = 197		# 取消之前任何返回载具的 ROI 命令/传感器的默认飞行特性。然后,飞行器控制系统就可以利用这一点来控制飞行器的姿态和各种传感器(如摄像头)的姿态。 ||||||||
uint16 VEHICLE_CMD_DO_CONTROL_VIDEO = 200		# 控制车载摄像系统。 |照相机 身份证 (-1 对于 一应俱全)| 变速箱: 0禁用、 1启用 压缩, 2:启用原始数据| 传输模式: 0视频 溪流, >;0:每隔 n 秒钟 (小数)| 录音: 0禁用、 1启用 压缩, 2:启用原始数据||||
uint16 VEHICLE_CMD_DO_SET_ROI = 201			# 设置 利益 (投资回报率) 对于 传感器组或载具本身。然后,载具控制系统就可以利用这一点来控制载具姿态和各种传感器(如摄像头)的姿态。 |感兴趣区域模式。(见 MAV_ROI 枚举)| 使命指数/ 目标 ID。(见 MAV_ROI 枚举)| 投资回报率 索引 (可让载具管理多个投资回报率x 固定 ROI 的位置(请参阅 MAV_FRAME)。
uint16 VEHICLE_CMD_DO_DIGICAM_CONTROL=203
uint16 VEHICLE_CMD_DO_MOUNT_CONFIGURE=204 # 配置摄像机或天线支架的任务命令 |支架运行模式(参见 MAV_MOUNT_MODE 枚举)|稳定滚动?(1 = 是,0 = 否)|稳定俯仰? (1 = 是,0 = 否)|稳定偏航?(1 = 是,0 = 否)|空|空|空|空|空
uint16 VEHICLE_CMD_DO_MOUNT_CONTROL=205 # 控制摄像机或天线支架的任务命令|俯仰或纬度(单位:度),取决于支架模式。
uint16 VEHICLE_CMD_DO_SET_CAM_TRIGG_DIST=206 # 为本次飞行设置 TRIG_DIST 的任务命令 |相机触发距离(米)|快门积分时间(毫秒)|空|空|空|空|空|空
uint16 VEHICLE_CMD_DO_FENCE_ENABLE=207 # 启用地理围栏的任务命令 |enable?(0=禁用,1=启用)| Empty| Empty| Empty| Empty| Empty| Empty| Empty| Empty| Empty
uint16 VEHICLE_CMD_DO_PARACHUTE=208 # 触发降落伞的任务命令(0=禁用,1=启用,2=释放,某些系统参见 PARACHUTE_ACTION 枚举,不在一般信息集中)。
uint16 VEHICLE_CMD_DO_MOTOR_TEST=209 # 电机测试命令 |实例(1,...)|节流阀类型|节流阀|超时 [秒]|电机数|测试顺序|空|
uint16 VEHICLE_CMD_DO_INVERTED_FLIGHT=210 # 更改为/从反转飞行 |反转(0=正常,1=反转) |空 |空 |空 |空 |空 |空 |空
uint16 VEHICLE_CMD_DO_GRIPPER = 211 # 操作抓手的命令
uint16 VEHICLE_CMD_DO_SET_CAM_TRIGG_INTERVAL=214 # 为本次飞行设置 TRIG_INTERVAL 的任务命令 |相机触发距离(米)|快门积分时间(毫秒)|空|空|空|空|空|空
uint16 VEHICLE_CMD_DO_MOUNT_CONTROL_QUAT=220 # 使用四元数作为参考,控制摄像机或天线支架的任务指令。q1 - 四元数参数 #1,w(空旋转时为 1)| q2 - 四元数参数 #2,x(空旋转时为 0)| q3 - 四元数参数 #3,y(空旋转时为 0)| q4 - 四元数参数 #4,z(空旋转时为 0)| Empty| Empty| Empty| Empty| Empty| Empty
uint16 VEHICLE_CMD_DO_GUIDED_MASTER=221 # 设置主控制器的 ID |系统 ID| 组件 ID| 空 | 空 | 空 | 空 | 空 | 空 | 空
uint16 VEHICLE_CMD_DO_GUIDED_LIMITS=222 # 设置外部控制限制 |timeout - 允许外部控制器控制飞行器的最长时间(秒)。0表示没有超时|绝对最低高度(米,AMLL)--如果飞行器的高度低于此高度,命令将被终止,任务将继续执行。0 表示没有高度下限| 绝对高度上限(单位:米)- 如果飞行器的高度超过此高度,命令将被终止,任务将继续执行。0 表示无高度上限| 水平移动限制(米,AMTL)- 如果飞行器移动距离超过此高度,命令将被终止,任务将继续执行;的位置。 受刑,命令将被中止,任务将 继续. 0 意味着没有水平高度限制||||
uint16 VEHICLE_CMD_DO_LAST = 240			# NOP - 该命令仅用于标记枚举中 DO 命令的上限。 ||||||||
uint16 VEHICLE_CMD_PREFLIGHT_CALIBRATION = 241		# 触发校准。该命令只被接受 如果 预先-飞行模式。参见 mavlink 规范 MAV_CMD_PREFLIGHT_CALIBRATION
uint16 PREFLIGHT_CALIBRATION_TEMPERATURE_CALIBRATION = 3# 参数值 对于 VEHICLE_CMD_PREFLIGHT_CALIBRATION 开始温度校准
uint16 VEHICLE_CMD_PREFLIGHT_SET_SENSOR_OFFSETS = 242	# 设置传感器偏移。该命令只接受 如果 预先-飞行模式。 |用于调整偏移量的传感器 对于: 0:陀螺仪、 1加速度计、 2磁强计、 3:晴雨表、 4:光流| X 轴 胶印 (或一般维度 1),在传感器中';原始单位|Y 轴偏移(或通用维度 2),在传感器';的原始单位| Z 轴 胶印 (或一般维度 3),在传感器中';原始单位|通用维度 4,在传感器中';原始单位|通用维度 4,在传感器中';原始单位|通用维度 4,在传感器中';的原始单位| 通用尺寸 5在传感器中';原始单位|通用维度 6,在传感器';的原始单位|
uint16 VEHICLE_CMD_PREFLIGHT_UAVCAN = 243		# UAVCAN 配置。如果参数 1 == 1 应开始执行器映射和方向分配
uint16 VEHICLE_CMD_PREFLIGHT_STORAGE = 245		# 要求存储不同的参数值和日志。该命令只接受 如果 预先-飞行模式。 |参数存储: 0:从闪存读取/EEPROM、 1:将电流写入闪存/EEPROM| 任务存储: 0:从闪存读取/EEPROM、 1:将电流写入闪存/EEPROM| 保留| 保留||||
uint16 VEHICLE_CMD_PREFLIGHT_REBOOT_SHUTDOWN = 246	# 请求重启或关闭系统组件。 |0:什么也不做 对于 自动驾驶仪, 1:重新启动 自动驾驶仪, 2:关闭自动驾驶仪。| 0:什么也不做 对于 机载 计算机, 1:机载重启 计算机, 2:关闭机载计算机。| 保留| 保留||||
uint16 VEHICLE_CMD_OBLIQUE_SURVEY=260			# 任务命令,用于设置相机自动安装旋转斜测 对于 这次飞行|相机触发器 距离 (米)| 快门集成 时间 (毫秒)| 摄像机最小触发间隔| 定位(POSITION)数| 卷轴| 间距||
uint16 VEHICLE_CMD_DO_SET_STANDARD_MODE=262		# 启用指定的标准 MAVLink 模式 |标准模式|
uint16 VEHICLE_CMD_GIMBAL_DEVICE_INFORMATION = 283	# 询问低水平万向节信息的命令

uint16 VEHICLE_CMD_MISSION_START = 300			# 开始执行任务 |first_item:要运行的第一个任务项目| last_item:最后一个任务项目。 运行 (在此项目之后 运行任务 结束)|
uint16 VEHICLE_CMD_ACTUATOR_TEST = 310			# 执行器测试指令|值 [-1,1]|超时 [s]|||输出功能|
uint16 VEHICLE_CMD_CONFIGURE_ACTUATOR = 311		# 执行器配置命令|配置||||输出功能|
uint16 VEHICLE_CMD_COMPONENT_ARM_DISARM = 400		# 武器 / 解除组件 |1上膛, 0 解除
uint16 VEHICLE_CMD_RUN_PREARM_CHECKS = 401      	# 指示目标系统运行预-手臂检查。
uint16 VEHICLE_CMD_INJECT_FAILURE = 420			# 注入人工故障 对于 测试目的
uint16 VEHICLE_CMD_START_RX_PAIR = 500			# 开始接收配对 |0:Spektrum| 0:Spektrum DSM2, 1Spektrum DSMX|
uint16 VEHICLE_CMD_REQUEST_MESSAGE = 512    		# 请求发送指定信息的单个实例
uint16 VEHICLE_CMD_SET_CAMERA_MODE = 530		# 设置摄像头捕捉 模式 (照片、视频等)
uint16 VEHICLE_CMD_SET_CAMERA_ZOOM = 531		# 设置摄像机变焦
uint16 VEHICLE_CMD_SET_CAMERA_FOCUS = 532
uint16 VEHICLE_CMD_DO_GIMBAL_MANAGER_PITCHYAW = 1000 	# 发送给万向节管理器的设定点,用于设置万向节俯仰和偏航
uint16 VEHICLE_CMD_DO_GIMBAL_MANAGER_CONFIGURE = 1001 	# 云台配置设置哪个 sysid/compid 处于一级和二级控制中
uint16 VEHICLE_CMD_IMAGE_START_CAPTURE = 2000   	# 开始图像捕捉序列。
uint16 VEHICLE_CMD_DO_TRIGGER_CONTROL = 2003		# 启用或禁用-板相机触发系统
uint16 VEHICLE_CMD_VIDEO_START_CAPTURE = 2500   	# 开始视频捕捉。
uint16 VEHICLE_CMD_VIDEO_STOP_CAPTURE = 2501    	# 停止当前的视频捕捉。
uint16 VEHICLE_CMD_LOGGING_START = 2510			# 开始流式传输 ULog 数据
uint16 VEHICLE_CMD_LOGGING_STOP = 2511			# 停止 ULog 数据流
uint16 VEHICLE_CMD_CONTROL_HIGH_LATENCY = 2600		# 控制启动/停止通过高延迟链路传输数据
uint16 VEHICLE_CMD_DO_VTOL_TRANSITION = 3000    	# 指挥 VTOL 过渡
uint16 VEHICLE_CMD_ARM_AUTHORIZATION_REQUEST = 3001	# 申请武器授权
uint16 VEHICLE_CMD_PAYLOAD_PREPARE_DEPLOY = 30001	# 在飞行计划中准备有效载荷部署
uint16 VEHICLE_CMD_PAYLOAD_CONTROL_DEPLOY = 30002	# 控制预-程序化有效载荷部署
uint16 VEHICLE_CMD_FIXED_MAG_CAL_YAW = 42006            # 根据提供的已知偏航进行磁力计校准。这样可以 对于 使用 WMM 中的字段表进行快速校准 汽车,只考虑已知的载具偏航。如果纬度和经度均为零,则使用当前载具位置。
uint16 VEHICLE_CMD_DO_WINCH = 42600			# 操作绞盘的指令。

uint16 VEHICLE_CMD_EXTERNAL_POSITION_ESTIMATE = 43003 # 清除残骸时,外部重置估计器的全局位置

# PX4 载具 指令 (在 16指令)
uint32 VEHICLE_CMD_PX4_INTERNAL_START    = 65537        # 启动 PX4 内部专用载具 指令 (>; UINT16_MAX)
uint32 VEHICLE_CMD_SET_GPS_GLOBAL_ORIGIN = 100000       # 设置载具的 GPS 本地坐标 产地 (0,0,0)的位置。 |||||纬度|经度|海拔高度|
uint32 VEHICLE_CMD_SET_NAV_STATE = 100001               # 通过直接指定 nav_state 来更改模式。 |导航状态|||||||

uint8 VEHICLE_MOUNT_MODE_RETRACT = 0			# 装载并确保安全 位置 (滚动、俯仰、偏航)并停止稳定功能 |
uint8 VEHICLE_MOUNT_MODE_NEUTRAL = 1			# 装载并保持中立 位置 (滚动、俯仰、偏航)。 |
uint8 VEHICLE_MOUNT_MODE_MAVLINK_TARGETING = 2		# 加载中立位置并启动 MAVLink 卷轴带稳定功能的俯仰、偏航控制 |
uint8 VEHICLE_MOUNT_MODE_RC_TARGETING = 3		# 加载空档位置并启动 RC 卷轴带稳定功能的俯仰、偏航控制 |
uint8 VEHICLE_MOUNT_MODE_GPS_POINT = 4			# 加载中立位置并开始指向 纬度,Lon,Alt |
uint8 VEHICLE_MOUNT_MODE_ENUM_END = 5			#

uint8 VEHICLE_ROI_NONE = 0                         	# 没有感兴趣的区域 |
uint8 VEHICLE_ROI_WPNEXT = 1                       	# 指向下一个任务 |
uint8 VEHICLE_ROI_WPINDEX = 2                     	# 指向既定使命 |
uint8 VEHICLE_ROI_LOCATION = 3                    	# 指向固定位置 |
uint8 VEHICLE_ROI_TARGET = 4                       	# 指向目标
uint8 VEHICLE_ROI_ENUM_END = 5

uint8 PARACHUTE_ACTION_DISABLE = 0
uint8 PARACHUTE_ACTION_ENABLE = 1
uint8 PARACHUTE_ACTION_RELEASE = 2

uint8 FAILURE_UNIT_SENSOR_GYRO = 0
uint8 FAILURE_UNIT_SENSOR_ACCEL = 1
uint8 FAILURE_UNIT_SENSOR_MAG = 2
uint8 FAILURE_UNIT_SENSOR_BARO = 3
uint8 FAILURE_UNIT_SENSOR_GPS = 4
uint8 FAILURE_UNIT_SENSOR_OPTICAL_FLOW = 5
uint8 FAILURE_UNIT_SENSOR_VIO = 6
uint8 FAILURE_UNIT_SENSOR_DISTANCE_SENSOR = 7
uint8 FAILURE_UNIT_SENSOR_AIRSPEED = 8
uint8 FAILURE_UNIT_SYSTEM_BATTERY = 100
uint8 FAILURE_UNIT_SYSTEM_MOTOR = 101
uint8 FAILURE_UNIT_SYSTEM_SERVO = 102
uint8 FAILURE_UNIT_SYSTEM_AVOIDANCE = 103
uint8 FAILURE_UNIT_SYSTEM_RC_SIGNAL = 104
uint8 FAILURE_UNIT_SYSTEM_MAVLINK_SIGNAL = 105

uint8 FAILURE_TYPE_OK = 0
uint8 FAILURE_TYPE_OFF = 1
uint8 FAILURE_TYPE_STUCK = 2
uint8 FAILURE_TYPE_GARBAGE = 3
uint8 FAILURE_TYPE_WRONG = 4
uint8 FAILURE_TYPE_SLOW = 5
uint8 FAILURE_TYPE_DELAYED = 6
uint8 FAILURE_TYPE_INTERMITTENT = 7

# 在 DO_CHANGE_SPEED 命令中用作参数 1
uint8 SPEED_TYPE_AIRSPEED = 0
uint8 SPEED_TYPE_GROUNDSPEED = 1
uint8 SPEED_TYPE_CLIMB_SPEED = 2
uint8 SPEED_TYPE_DESCEND_SPEED = 3

# 在 ARM_DISARM 命令中用作参数 1
int8 解除上膛行动 = 0
int8 ARMING_ACTION_ARM = 1

# VEHICLE_CMD_DO_GRIPPER 中的 param2
uint8 GRIPPER_ACTION_RELEASE = 0
uint8 GRIPPER_ACTION_GRAB = 1

uint8 ORB_QUEUE_LENGTH = 8

float32 param1 # 参数 1如 MAVLink 所定义 uint16 VEHICLE_CMD 枚举.
float32 param2 # 参数 2如 MAVLink 所定义 uint16 VEHICLE_CMD 枚举.
float32 param3 # 参数 3如 MAVLink 所定义 uint16 VEHICLE_CMD 枚举.
float32 param4 # 参数 4如 MAVLink 所定义 uint16 VEHICLE_CMD 枚举.
float64 param5 # 参数 5如 MAVLink 所定义 uint16 VEHICLE_CMD 枚举.
float64 param6 # 参数 6如 MAVLink 所定义 uint16 VEHICLE_CMD 枚举.
float32 param7 # 参数 7如 MAVLink 所定义 uint16 VEHICLE_CMD 枚举.
uint32 command # 命令 ID
uint8 target_system # 执行命令的系统
uint8 target_component # 应执行 指挥部, 0 对于 所有部件
uint8 source_system # 发送命令的系统
uint16 source_component # 组件 / 模式的执行者发送命令
uint8 确认 # 0:首次传输该命令。 1-255:确认 变速器 例如 对于 杀死 指挥部)
bool 来自外部

uint16 COMPONENT_MODE_EXECUTOR_START = 1000

# TOPICS vehicle_command gimbal_v1_command vehicle_command_mode_executor