飞行员操控
载具操控可通过三种方式完成:
通过地面站(GCS):
GCS 连接的摇杆,或命令行,发送 MAVLink RC overrides,充当 RC 输入(即使未接 RC 接收机)
MAVLink Manual Control 协议,包含轴向命令与按键状态。
警告
由于 历史原因,ArduSub 对 MANUAL_CONTROL 的支持期望 Z 轴取值范围为 [0,1000],而非规范中的 [-1000,1000]。
无线电遥控 RC(默认未启用)
飞行员控制输入
若未启用 RC,飞行员输入来自 GCS 摇杆,控制载具可用运动轴,包括偏航与姿态旋转,以及机体坐标系下的横移、前后与深度上下。 灯光与相机也可由 GCS 控制,还有一些通用舵机和/或继电器输出。
若启用 RC,则俯仰/横滚/偏航/油门/横移/前进输入由遥控器发送,并通过 RCMAP_ 参数映射到这些输入。
各模式下的飞行员控制自由度
下表假设该轴可控。部分机架并不提供全部轴向。例如 SimpleROV-3 仅有三台推进器,只提供偏航、前进与深度控制; 俯仰与横滚姿态不受控,依赖 CG/压载配平,且无横移能力。
ANG = 角度目标。摇杆偏转表示期望轴向角度。
RAT = 速率目标。摇杆偏转表示期望轴向运动/旋转速率。
D = 按摇杆偏转直接输出到电机。
Mode |
Roll |
Pitch |
Yaw |
Depth |
Forward |
Lateral |
PosHold |
DepthHold |
|---|---|---|---|---|---|---|---|---|
MANUAL |
D |
D |
D |
D |
D |
D |
No |
No |
ACRO |
RAT |
RAT |
RAT |
RAT |
RAT |
RAT |
No |
No |
STABILIZE |
ANG |
ANG |
RAT |
RAT |
RAT |
RAT |
No |
No |
ALT_HOLD |
ANG |
ANG |
RAT |
RA |
RAT |
RAT |
No |
Yes |
SURFTRAK |
ANG |
ANG |
RAT |
RAT |
RAT |
RAT |
No |
Yes* |
POSHOLD |
ANG |
ANG |
RAT |
RAT |
RAT |
RAT |
Yes |
Yes |
SURFACE |
ANG |
ANG |
RAT |
- |
RAT |
RAT |
No |
No |
CIRCLE |
ANG |
ANG |
RAT |
RAT |
- |
- |
Yes |
Yes |
MOTORDETECT |
- |
- |
- |
- |
- |
- |
- |
- |
*SURFTRAK 在飞行员未请求改变深度输入时,用测距仪把深度维持为相对海底的高度。
MODE AUTO:飞控发出完成任务所需的控制量。
MODE GUIDED:若处于速度控制且为 HEADING HOLD,飞行员可用摇杆控制 Roll/Pitch(摇杆表示角度目标),否则为速率目标。Yaw 输入为速率需求。LATERAL 与 FORWARD 输入被忽略。
失效保护
针对飞行员操控方式,在其失效时可配置并启用下列失效保护(任一或全部):
RC 失效保护 (若启用了 RC)
响应特性
根据载具设计与飞行员经验,可能需要限制载具对操控输入的响应速度和/或强度。有几种做法,作用于控制链路不同环节:
若使用 GCS 摇杆,
JS_GAIN_*参数缩放飞行员输入范围,从而决定摇杆能在多大程度上影响电机输出在 MANUAL 模式下只有飞行员输入,因此整机输出范围(及功耗)由飞行员输入范围决定(无论 GCS 摇杆还是 RC)
在带飞控稳定的模式下,稳定仍可能用满功率(例如强流环境)
摇杆增益可由飞行员用
gain_*按键控制,和/或用参数配置JS_GAIN_MIN、JS_GAIN_MAX、JS_GAIN_DEFAULT:上下限与起始值JS_THR_GAIN:对垂向输入的额外缩放,可进一步减弱或相对水平/转向输入增强JS_GAIN_STEPS:每次增减按键时增益变化量
使用遥控通道做 RC 控制时,可用
RCn_DZ(如RC1_DZ)为各通道指定死区,忽略微小摇杆抖动与时序不一致姿态稳定将最大倾角(相对水平的横滚/俯仰)限制为
ATC_ANGLE_MAX自动深度控制(如 ALT_HOLD、SURFTRAK、POSHOLD、CIRCLE)可用下列参数配置
THR_DZ:油门死区,避免小幅摇杆动作改变当前深度目标PILOT_SPD_UP与PILOT_ACC_Z:限制最大垂向速度,并设定达到该速度的垂向加速度可选
PILOT_SPD_DN单独设定最大下潜速率,否则默认与PILOT_SPD_UP相同
SURFACE_MAX_THR:接近水面时缩小上推力,避免顶破水面吸入空气
POSHOLD 模式下自动水平速度可用
PILOT_SPEED限制也可直接配置输出:
MOT_SLEW_UP_TIME、MOT_SLEW_DN_TIME:限制电机推力升降速率MOT_PWM_MIN、MOT_PWM_MAX:定义全部电机输出的可用 PWM 范围通常用于使电机指令匹配 ESC 期望输入范围,也可故意缩小范围以降性能/功耗
备注
DShot ESC 忽略这些值。范围固定为 1000µs–2000µs。
若一个或多个 PWM ESC 控制的电机在上锁状态下仍转动,可能需要调整对应
SERVOn_TRIM(如SERVO1_TRIM)以校正中位
电机输出缩放也可根据电源/电池监测反馈自动调整:
MOT_BAT_CURR_MAX:电流超限持续超过MOT_BAT_CURR_TC后降低功率输出;和/或MOT_BAT_VOLT_MIN、MOT_BAT_VOLT_MAX:补偿电压随时间跌落