- 嵌入式
- 物联网
- 机器人
- 自动驾驶
- 智能硬件
【免费下载链接】PX4-Autopilot
PX4 Autopilot Software
导读:本文基于 PX4 官方文档《First Flight Guidelines》展开,面向即将进行人生第一次无人机飞行的用户,系统讲解首飞前的法规核查、场地选择、预飞检查、飞行规划与应急降损措施,并结合本仓库(PX4-Autopilot)中的安全配置文档与源码实现,深入解析 QGroundControl 飞行就绪状态、arming 检查报告、紧急开关与各类型 failsafe(失效保险)参数,让读者在真正起飞之前,具备一套可落地、可验证的安全操作流程。
学习飞行的过程本身就充满乐趣!而一套科学的首飞准则,能确保你的第一次飞行经历既愉快、又有教育意义、同时足够安全。PX4 作为开源自动驾驶仪飞行栈,其官方文档将首飞安全提炼为五条核心准则:懂法规、选场地、带老手、先规划、限损害。本文以这五条为主线,逐条展开,并补充预飞检查与应急配置的底层细节,帮助你从"准备起飞"到"安全着陆"的每一个环节都有据可依。
一、Know the Law:起飞前先懂法规
许多国家和地区对无人机飞行有严格监管,例如:
- 驾驶特定尺寸/重量的飞行器可能需要执照;
- 特定用途(商业航拍、测绘、投放等)可能需要额外的许可或审批;
- 对飞行区域(机场附近、人群上空、敏感区域)有明确的禁飞/限飞规定。
实操建议:在规划第一次飞行之前,务必先查询并熟悉你所在地区的飞行法规(当地民航局、交通管理部门发布的无人机管理规定)。法规不仅是合规问题,也是安全与责任的底线。
二、Select a Good Location:选对场地,成功一半
首次飞行的场地选择至关重要,核心判断标准有三条:
| 检查项 | 要求 | 原因 |
|---|---|---|
| 空间开阔 | 附近没有高大的树木、山丘或建筑物 | 这些障碍物会遮挡/干扰 GNSS 信号接收,影响位置估计精度 |
| 人员隔离 | 100 米(约 300 英尺)内没有其他人 | 避免人员伤害风险 |
| 地面净空 | 100 米内没有任何你不希望撞上去的东西——房屋、结构物、汽车、水面、庄稼地等 | 庄稼地尤其要避免:无人机坠入其中极难寻找 |
提示:100 米净空是一个很好的"经验法则",但在很多情况下,法规会规定适当的距离,这个距离可能取决于你是否持有执照等因素。请以当地监管要求为准。
源码层面的佐证:PX4 对位置估计质量有硬性门槛。在 预飞检查文档 中明确指出,PX4 会执行一系列预飞传感器质量与估计器检查,判断当前位置估计是否"足够好"以支持当前模式飞行,若不达标将阻止解锁(arming)。GNSS 是全局位置的主要来源,因此场地选择直接决定了位置估计能否通过预飞检查——这也是"空间必须开阔"在软件层面的根本原因。相关检查由 commander 模块的预飞检查实现 完成。
三、Bring a Pro:带上一位有经验的老手
首次飞行时,请务必邀请一位有经验的人陪同,让 TA:
- 帮助你逐项完成预飞检查(pre-flight checks);
- 在出现问题时及时干预(接管遥控器或触发应急措施)。
老手的存在能显著降低新手面对突发状况时的决策压力,也能避免因操作失误导致的设备损失。
四、Plan the Flight:起飞前先规划整条航路
在起飞之前,你需要对本次飞行有完整规划:
- 明确整条飞行路线;
- 明确在哪里、以何种方式降落(例如:回到起飞点附近、指定降落点);
- 提前想好每个航段使用的飞行模式与高度。
规划得越清晰,飞行过程中的不确定性就越少。对于更复杂的任务,PX4 还支持在 QGroundControl 的 Plan View 中规划完整航线(见 Missions)。
五、Limit the Damage:把损失控制在最小
用无人机损坏他人财产或伤害他人,可能带来远超无人机本身价值的法律与经济损失。因此必须:
- UAV 应始终在无障碍物、无人的安全区域内手动飞行,并且全程清晰可见;
- 一旦开始失控且无法重新夺回控制权,应尽快在空旷区域坠毁,而不是让它在危险区域继续飞行;
- 建议在遥控器上设置一个应急开关(emergency switch),以便在必要时立即返航或坠机。
具体做法:参见 Safety 配置文档 > Emergency Switches。下文将展开讲解。
六、预飞检查:确认"Ready to Fly"再解锁
PX4 会在解锁前执行一系列传感器质量与估计器检查,并将结果反馈到 QGroundControl(QGC)。QGC 是唯一能告诉你 PX4为何拒绝解锁的途径(详见 QGroundControl Flight-Readiness Status)。
6.1 飞行就绪状态(Flight Readiness Status)
QGC 左上角(Q 菜单图标附近)会显示整体"飞行就绪"状态,共三种:
| 状态 | 背景色 | 含义 |
|---|---|---|
| "Ready to Fly" | 绿色 | 车辆在所有模式下都就绪,可以解锁 |
| "Ready to Fly" | 琥珀色 | 当前模式可飞行、可解锁,但某些检查失败,导致无法切换到其他模式 |
| "Not Ready" | 琥珀色 | 当前模式不可飞行,无法解锁 |
6.2 Arming Check Report(解锁检查报告)
从 PX4 v1.14、QGC v4.2.0 起,点击 QGC Fly View 左上角的飞行就绪状态指示器,会弹出Arming Check Report面板,逐条列出当前所有警告,每条警告右侧都有展开按钮,可查看附加信息与可能解决方案。当所有阻塞解锁的问题被解决后,警告会从列表中消失,此时即可点击 arm 按钮、滑动确认并解锁起飞。
6.3 预飞日志与常见 EKF 预飞错误
除 QGC 界面外,预飞错误还会以PREFLIGHT FAIL消息形式写入日志;estimator_status.gps_check_fail_flags消息(见 Flight Reporting)会标明哪些 GNSS 质量检查失败。常见错误及对策摘录如下:
- PREFLIGHT FAIL: EKF HIGH IMU ACCEL BIAS—— IMU 加速度偏置估计过高。偶发则重新校准加速度计(Accelerometer Calibration);频发则进行温度校准(Sensor Thermal Calibration)。相关参数:
EKF2_ABL_LIM(偏置上限,估计值超过其 75% 即阻止起飞)、EKF2_ABIAS_INIT、EKF2_ACC_B_NOISE、EKF2_ABL_ACCLIM(详见 Parameter Reference)。 - PREFLIGHT FAIL: EKF HIGH IMU GYRO BIAS—— 陀螺仪偏置估计超过 10°/s(配置上限硬编码为 20°/s 的一半)。
- PREFLIGHT FAIL: ACCEL SENSORS INCONSISTENT—— 多 IMU 加速度测量不一致,由
COM_ARM_IMU_ACC控制。 - PREFLIGHT FAIL: GYRO SENSORS INCONSISTENT—— 多 IMU 角速率测量不一致,由
COM_ARM_IMU_GYR控制。 - PREFLIGHT FAIL: COMPASS SENSORS INCONSISTENT—— 多罗盘测量差异过大,通常是校准、朝向或磁场干扰问题,由
COM_ARM_MAG_ANG控制。 - PREFLIGHT FAIL: EKF INTERNAL CHECKS—— 水平 GPS 速度、磁航向、垂直 GPS 速度或垂直位置传感器(默认气压计)的新息过大,需检查日志中
ekf2_innovations消息定位原因。
6.4 关键预飞参数:COM_ARM_WO_GPS
COM_ARM_WO_GPS控制当 EKF2 GNSS 质量检查失败时是否允许在需要有效全局位置的模式中解锁:
0:拒绝解锁;1:允许解锁但发出警告(默认),适用于有 VIO 或光流等其他有效位置来源的场景;2:允许解锁且不警告。
七、配置应急开关:失控前的最后一道防线
PX4 允许在 QGroundControl 的 Flight Mode Setup 中,将遥控器开关配置为应急开关,以便在问题出现时迅速采取纠正动作(如停止所有电机,或激活 Return 模式)。详见 Safety > Emergency Switches,主要包括:
7.1 Kill Switch(急停开关)
- 立即停止所有电机输出——若在飞行中触发,飞机会开始坠落!
- 若在5 秒内拨回开关,电机可重新启动;超过 5 秒后飞机会自动解锁(disarm),必须重新解锁才能启动电机。
- 注意:与下文Kill Gesture不同,Kill Switch 在 5 秒内可撤销。
7.2 Arm/Disarm Switch(解锁/锁定开关)
- 是默认摇杆手势解锁/锁定的直接替代品,同样强调"启动电机前必须有一个有意的步骤"。
- 优点:偏好开关操作、避免空中误触发解锁/锁定、无延迟(立即响应)。
- 对支持飞行中锁定的飞行模式(Manual、Acro、Stabilized)立即锁定电机;对不支持的模式(Position、Mission、Land 等)飞行中忽略该开关,但着陆后可用来锁定。
- 相关参数(通过手动设置亦可实现):
RC_MAP_ARM_SW(映射开关通道)、RC_ARMSWITCH_TH(阈值/方向反转)。
7.3 Return Switch(返航开关)
- 可立即激活Return 模式(返航模式),让飞机返回 Home 位置。返航行为可在 Return Home Settings 中配置(如返航高度、盘旋时间等)。
7.4 Kill Gesture(急停手势)
- 与 Kill Switch 效果相同(立即停转所有电机),但无法撤销,必须重启才能恢复。
- 参数:
MAN_KILL_GEST_T—— 保持摇杆手势位置多久后触发急停,默认-1秒(禁用)。
7.5 其他常用应急相关参数
| 参数 | 说明 |
|---|---|
COM_DISARM_LAND | 着陆后自动解锁超时(默认启用自动锁定) |
COM_DISARM_PRFLT | 解锁后过久未起飞则自动解锁的超时 |
COM_ARM_BAT_MIN | 解锁所需的最低电池电量(默认0禁用) |
COM_ARMABLE | 全局允许解锁开关(0禁用 /1启用,默认) |
COM_ARM_MIS_REQ | 是否要求存在有效任务才能解锁(默认禁用) |
八、Failsafe 失效保险:理解自动应急响应
即使手动应急开关配置妥当,PX4 还内置了多层自动失效保险(failsafe)机制。当触发 failsafe 时,默认行为通常是先进入 Hold 模式持续COM_FAIL_ACT_T秒,给用户留出发现与接管的时间;若多种 failsafe 同时触发,将执行严重程度更高的动作。动作列表按严重度递增排序如下(详见 Safety > Failsafe Actions):
| 动作 | 描述 |
|---|---|
| None/Disabled | 忽略该 failsafe |
| Warning | 发送警告消息(如到 QGC) |
| Hold mode | 进入悬停/盘旋保持 |
| Return mode | 进入返航模式 |
| Land mode | 进入降落模式 |
| Disarm | 立即停止电机 |
| Flight termination | 关闭所有控制器、PWM 输出置为 failsafe 值(可用于开伞等),固定翼可滑翔到安全区域 |
与首飞最相关的几类 failsafe:
- 电池 failsafe:设置
Warn > Failsafe > Emergency三个电量阈值(BAT_LOW_THR、BAT_CRIT_THR、BAT_EMERGEN_THR),并选择动作(COM_LOW_BAT_ACT:警告 / 降落 / 返回后降落 / 返回后终止)。另可配置COM_FLTT_LOW_ACT(剩余电量仅够返航时动作)、COM_FLT_TIME_MAX(最大飞行时间,到点自动返航,默认禁用)。 - 遥控丢失 failsafe:超过
COM_RC_LOSS_T超时未收到手动控制指令即触发,动作由NAV_RCL_ACT决定;可用COM_RCL_EXCEPT指定忽略该 failsafe 的模式。这对首飞尤其重要——建议将动作设为 Return(返航)。 - 数据链丢失 failsafe:与地面站 MAVLink 连接丢失时触发,超时由
COM_DL_LOSS_T决定,动作由NAV_DLL_ACT决定。 - 位置丢失 failsafe:位置估计失效(如 GPS 丢失)时触发。多旋翼/悬停 VTOL 会降级到 Altitude/Stabilized 模式;自动模式则依次尝试 Return → Land → Descend。关键参数:
EKF2_NOAID_TOUT(纯惯性推算超时)、COM_POS_FS_EPH(悬停类飞行器的水平位置误差阈值)。 - 地理围栏 failsafe:以 Home 为圆心、
GF_MAX_HOR_DIST为半径、GF_MAX_VER_DIST为高度的圆柱体边界,越界触发GF_ACTION(警告/保持/返航/降落/终止)。若出于安全或法律原因有严格禁飞区,应将GF_ACTION设为 Hold 并预留安全余量:- 固定翼:盘旋半径
NAV_LOITER_RAD; - 多旋翼:刹车距离
v²/2a(v=MPC_XY_VEL_MAX,a=MPC_ACC_HOR_MAX); - 再叠加尾风、位置不确定性、姿态跟踪延迟等因素的余量。复杂多边形/圆形围栏可在 QGC Plan View 中规划(Flying > Geofence)。
- 固定翼:盘旋半径
注意:
GF_ACTION设为 Terminate 会在越界时直接"击杀"飞行器,此功能默认由CBRK_FLIGHTTERM电路断路器禁用,需将其重置为0才能真正启用。
九、解锁、起飞与降落要点
9.1 解锁(Arm)
- 先解除安全开关(如配备)。
- 使用解锁命令:油门摇杆置于右下角保持约 1 秒(arming gesture),或配置 arm/disarm switch,也可以在 QGC 中解锁(PX4 自主飞行并不强制需要遥控器)。
- 车辆未完成校准/配置并取得位置锁定前不会解锁;解锁后过久未起飞会自动锁定(
COM_DISARM_PRFLT),这是让无人机在不使用时回到安全状态的保护措施。
9.2 起飞与降落(多旋翼)
- 手动起飞:在 Position 或 Altitude 模式下,油门需推到62.5% 以上才会指令爬升并离地;起飞检测器会在起飞异常时自动停桨(Failure Detector)。
- 手动降落:任何手动模式均可,触地后保持油门拉低直到电机停转;默认着陆后自动锁定(
COM_DISARM_LAND)。 - 也可使用自动 Takeoff mode、Land mode 或 Return mode 完成起降(详见 Basic Flying (Multicopter))。
9.3 起飞与降落(固定翼)
- 手动起降推荐 Stabilized / Acro / Manual 模式;手抛起飞要水平抛出、避免过快拉杆失速,良好的配平(trim)是关键;跑道起飞先加速再拉杆抬头。
- 自动降落推荐在任务中定义Mission Landing(固定翼着陆航段),在 Mission 或 Return 模式下使用;自动 Land mode 不推荐(无法考虑地形)(详见 Basic Flying (Fixed Wing))。
9.4 新手推荐的辅助飞行模式
纯手动飞行对新手并不友好,建议在遥控器上配置以下自动辅助模式:
- Position mode(多旋翼):松杆即刹停并抗风悬停。
- Altitude mode:爬升/下降速率受限。
- Stabilized mode:不易翻机、松杆自动回平(但不保持位置)。
- Cruise mode(固定翼):松杆后保持航向与速度。
十、总结:首飞检查清单
将以上内容浓缩为一份起飞前清单,供打印或随身携带:
- ☐ 已核对当地法规与许可要求;
- ☐ 场地开阔、无 GNSS 遮挡,100 米内无人无危险物;
- ☐ 有经验人员在场并确认应急接管方案;
- ☐ 已完成飞行路线与降落点规划;
- ☐ QGC 显示 "Ready to Fly"(绿色)且 Arming Check Report 无阻塞项;
- ☐ 已在遥控器上配置并验证 Kill / Return / Arm 开关;
- ☐ 电池 failsafe、RC 丢失 failsafe、地理围栏均已按需配置;
- ☐ 全流程保持飞机可见、在安全区内飞行。
首飞成功的关键不在于飞得多快多高,而在于每一个环节都有预案。善用 PX4 的预飞检查与 failsafe 体系,你的第一次飞行将既安全、又有收获。想进一步深入,可继续阅读 Basic Flying、Safety Configuration 与 Pre-flight Checks。
- 嵌入式
- 物联网
- 机器人
- 自动驾驶
- 智能硬件
【免费下载链接】PX4-Autopilot
PX4 Autopilot Software
相关推荐
PX4-Autopilot 飞行指南:从首飞准备、手动飞行到自主任务全流程实战
PX4 Autopilot 飞行指南:从首飞准备、手动飞行到自主任务全流程实战 本篇技术指南以 PX4 Autopilot 官方文档「Flying(飞行)」章节
嵌入式物联网机器人自动驾驶智能硬件PX4飞控系统终极实战指南:从零到首飞的完整部署方案
PX4飞控系统终极实战指南:从零到首飞的完整部署方案 PX4飞控系统是一款功能强大的开源自动驾驶软件,支持多旋翼、固定翼、VTOL、直升机、地面车辆等多种载体。
嵌入式物联网机器人自动驾驶智能硬件PX4无人机飞控系统完整实战指南:从零搭建到首飞成功
PX4无人机飞控系统完整实战指南:从零搭建到首飞成功 想要快速掌握无人机自主飞行的核心技术吗?这篇终极指南将带你从零开始,一步步完成PX4飞控系统的完整部署,让
嵌入式物联网机器人自动驾驶智能硬件
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考