# 离机模式
飞行器服从通过 MAVLink 提供的位置、速度或姿态设定点。设定点可由 MAVLink API 提供(如MAVSDK (打开新窗口) 或 马弗罗斯 (打开新窗口))在配套电脑上运行(通常通过串行电缆或无线网络连接)。
TIP
并非所有设定点信息和载具都支持 MAVLink 允许的所有坐标框架和字段值。请阅读以下章节 好好 以确保只使用支持的值。另请注意,在进入模式之前和模式运行期间,必须以 > 2Hz 的频率串流设定点。
备注
- 这种模式需要位置或姿态/姿态信息,如 GPS、光流、视觉惯性里程测量、mocap 等。
- 除更改模式外,RC 控制被禁用。
- 在启用该模式之前,必须先上膛载具。
- 载具必须已接受 目标设定点数据流 (>2Hz) 然后才能启用该模式。
- 如果没有以 > 2Hz 的速率接收到目标设定点,载具将退出模式。
- 并不支持 MAVLink 允许的所有坐标框架和字段值。
# 说明
机外模式主要用于控制飞行器的运动和姿态,只支持非常有限的一组 MAVLink 信息(将来可能会支持更多信息)。
其他操作,如起飞、着陆、返回发射,最好使用相应的模式。上传、下载任务等操作可以在任何模式下进行。
在进入该模式之前,载具必须接收到设定点命令流,才能保持在该模式下(如果信息速率低于 2 赫兹,载具将停止运行)。为了在该模式下保持位置,载具必须接收当前位置的设定点数据流。
离机模式要求与远程 MAVLink 系统(如配套计算机或 GCS)保持有效连接。如果连接断开,在超时 (COM_OF_LOSS_T则飞行器将尝试着陆或执行其他故障安全操作。该操作在参数 COM_OBL_ACT 和 COM_OBL_RC_ACT.
# 支持的信息
# 直升机/VTOL
-
- 支持以下输入组合
- 位置设定点(仅
x
,y
,z
) - 速度设定点(仅
vx
,yy
,vz
) - 加速度设定点(仅
afx
,安提
,afz
) - 位置设定点 和 速度设定点(速度设定点用作前馈;它与位置控制器的输出相加,结果用作速度控制器的输入)。
- 位置设定点 和 速度设定点 和 加速度(速度和加速度设定点用作前馈;速度设定点与位置控制器的输出相加,其结果用作速度控制器的输入;加速度设定点与速度控制器的输出相加,其结果用于计算推力矢量)。
- 位置设定点(仅
- PX4 支持以下功能
坐标框架
值(仅): mav_frame_local_ned (打开新窗口) 和 mav_frame_body_ned (打开新窗口).
- PX4 支持以下功能
- 支持以下输入组合
set_position_target_global_int (打开新窗口)
- 支持以下输入组合
位置设定点(仅
lat_int
,lon_int
,选一
)速度设定点(仅
vx
,yy
,vz
)推力 设定点(仅
afx
,安提
,afz
)备注
加速度设定点值被映射为标准化推力设定点(即不支持加速度设定点)。
位置设定点 和 速度设定点(速度设定点用作前馈;它与位置控制器的输出相加,结果用作速度控制器的输入)。
- PX4 支持以下功能
坐标框架
值(仅): mav_frame_global (打开新窗口).
- 支持以下输入组合
-
- 支持以下输入组合
- 态度/方向 (
SET_ATTITUDE_TARGET.q
)与推力设定点 (SET_ATTITUDE_TARGET.thrust
). - 身体速率 (
设置目标姿态
.body_roll_rate
,.body_pitch_rate
,.body_yaw_rate
)与推力设定点 (SET_ATTITUDE_TARGET.thrust
).
- 态度/方向 (
- 支持以下输入组合
# 固定翼
-
- 支持以下输入组合(通过
类型掩码
):- 位置设定点 (
x
,y
,z
仅;速度和加速度设置点被忽略)。指定 类型 中设定点的
类型掩码
(如果未设置这些位,飞行器将以花朵状模式飞行):备注
部分 设定点类型 下面的值不属于 MAVLink 标准的一部分。
类型掩码
field.这些值是
- 292:滑行设定点。该设置将 TECS 配置为优先考虑空速而非高度,以便在没有推力时使飞行器滑行(即通过控制俯仰来调节空速)。这相当于设置
类型掩码
作为位置_目标类型掩码_z_忽略
,position_target_typemask_vz_ignore
,位置目标类型掩码忽略
. - 4096:起飞设定点
- 8192:陆地设定点。
- 12288: 负载设定点(以设定点为中心飞一圈)。
- 16384:空转设定点(零节流、零滚转/俯仰)。
- 292:滑行设定点。该设置将 TECS 配置为优先考虑空速而非高度,以便在没有推力时使飞行器滑行(即通过控制俯仰来调节空速)。这相当于设置
- 位置设定点 (
- PX4 支持坐标框架 (
坐标框架
字段): mav_frame_local_ned (打开新窗口) 和 mav_frame_body_ned (打开新窗口).
- 支持以下输入组合(通过
set_position_target_global_int (打开新窗口)
- 支持以下输入组合(通过
类型掩码
):- 位置设定点(仅
lat_int
,lon_int
,选一
)指定 类型 中设定点的
类型掩码
(如果未设置这些位,飞行器将以花朵状模式飞行):备注
设定点类型 下面的值不属于 MAVLink 标准的一部分。
类型掩码
field.这些值是
- 4096:起飞设定点
- 8192:陆地设定点。
- 12288: 负载设定点(以设定点为中心飞一圈)。
- 16384:空转设定点(零节流、零滚转/俯仰)。
- 位置设定点(仅
- PX4 支持以下功能
坐标框架
值(仅): mav_frame_global (打开新窗口).
- 支持以下输入组合(通过
-
- 支持以下输入组合
- 态度/方向 (
SET_ATTITUDE_TARGET.q
)与推力设定点 (SET_ATTITUDE_TARGET.thrust
). - 身体速率 (
设置目标姿态
.body_roll_rate
,.body_pitch_rate
,.body_yaw_rate
)与推力设定点 (SET_ATTITUDE_TARGET.thrust
).
- 态度/方向 (
- 支持以下输入组合
# UGV无人车
-
- 支持以下输入组合(以
类型掩码
):- 位置设定点(仅
x
,y
,z
)指定 类型 中设定点的
类型掩码
:备注
设定点类型 下面的值不属于 MAVLink 标准的一部分。
类型掩码
领域:这些值是
- 12288: 装载设定点(载具在接近设定点时停止)。
- 速度设定点(仅
vx
,vy
,vz
)
- 位置设定点(仅
- PX4 支持坐标框架 (
坐标框架
字段): mav_frame_local_ned (打开新窗口) 和 mav_frame_body_ned (打开新窗口).
- 支持以下输入组合(以
set_position_target_global_int (打开新窗口)
- 支持以下输入组合(以
类型掩码
):- 位置设定点(仅
lat_int
,lon_int
,选一
)
- 位置设定点(仅
- 指定 类型 中设定点的
类型掩码
(不属于 MAVLink 标准)。这些值是- 未设置以下位,则行为正常。
- 12288: 装载设定点(载具在接近设定点时停止)。
- PX4 支持坐标框架 (
坐标框架
字段): mav_frame_global (打开新窗口).
- 支持以下输入组合(以
-
- 支持以下输入组合
- 态度/方向 (
SET_ATTITUDE_TARGET.q
)与推力设定点 (SET_ATTITUDE_TARGET.thrust
).备注
实际使用/提取的只有偏航设置。
- 态度/方向 (
- 支持以下输入组合
# 机外参数
机外模式 受以下参数影响:
参数 | 说明 |
---|---|
COM_OF_LOSS_T | 当板载连接丢失时,在触发板载丢失故障安全("板载连接丢失")前等待的超时(秒) (COM_OBL_ACT 和 COM_OBL_RC_ACT ) |
COM_OBL_ACT | 在下列情况下失去机外控制时切换到的模式 不 连接到 RC(数值为 - 0: 土地, 1: 保持, 2: 返回 ). |
COM_OBL_RC_ACT | 当仍与 RC 控制连接时,如果机外控制丢失,则切换到的模式(值为 - 0.0.0): 定位(POSITION), 1: 海拔高度, 2: 手册, 3: 返回 , 4: 土地). |
com_rc_override | 控制在多旋翼飞行器(或 多旋翼 模式下的 VTOL)上移动摇杆是否会导致模式切换为 位置模式.默认情况下离线模式不启用此功能。 |
com_rc_stick_ov | 杆的移动量会导致过渡到 位置模式 (如果 com_rc_override 已启用)。 |
# 开发人员资源
通常情况下,开发人员不会直接在 MAVLink 层工作,而是使用机器人应用程序接口,如 MAVSDK (打开新窗口) 或 ROS (打开新窗口) (提供开发人员友好的应用程序接口,并负责管理和维护连接、发送信息和监控响应--这些都是与 机外模式 和 MAVLink)。
以下资源可能对开发人员有用: