跳转至

四平台诊断入口卡

本附录只提供固定版本下的入口、证据对象和停止边界,不提供跨平台参数翻译。开始诊断前,只选择当前飞行器对应的一张卡;实际版本不同,应改用该版本的官方文档、源码、参数元数据和兼容工具。

固定版本:

  • Betaflight 2026.6.2,提交e0b7bb01b17b21351057e9ead2d1ab39dd44fa16
  • INAV 9.1.0,提交e519b69b02e27c8bdc03b4a0889f1baaae211a54
  • ArduPilot Copter 4.7.1,提交dbe792162d06cab66c3475fd5556bf7a120f119e
  • PX4 v1.17.0,提交d6f12ad1c4f70ad3230afd7d86e971421e02fef4

所有平台共同的第0步

  1. 先完成证据保全与初始分诊,不得先拆桨、上电或连接配置工具改变现场;
  2. 只有现场、物证和源介质已经记录,安全负责人允许改变状态后,才拆除螺旋桨并隔离执行器;
  3. 原始日志、配置、地面站记录和视频按位流镜像或逻辑取得类别保存并计算摘要;
  4. 记录飞控、固件、目标、配置工具和解码器版本;
  5. 比较当前全量配置与专题06批准基线;没有基线时登记缺失;
  6. 针对具体问题评定日志适用性Q0至Q3;
  7. 将飞行批准标记为阻断
  8. 只执行最低风险、单一变量的补证。

任何平台都不得用关闭解锁检查、失效保护、围栏或传感器健康检查来推进诊断。

版本自报字符串不能独立证明运行二进制身份。在平台支持时应取得固件读回摘要、发布签名或安全启动状态、目标清单、构建选项和引导程序身份;无法取得时标为二进制身份未验证

Betaflight 2026.6.2

固定身份

保存:

  • 飞控目标和硬件修订;
  • 固件版本和完整构建标识;
  • Betaflight App版本;
  • 完整CLI配置导出;
  • 当前PID配置档和Rate配置档;
  • 资源、Ports、接收机、模式、Failsafe和Blackbox配置。

界面截图不能替代CLI全量导出。

只读取证入口

  1. 用与固定固件兼容的Betaflight App连接;关闭自动升级或自动写入;
  2. 在CLI依次执行只读命令versionstatusdiff alldump all,分别保存原始文本;不要执行save
  3. 通过Blackbox页的下载功能或目标板支持的只读存储方式取得原始日志,不点击擦除;
  4. 用兼容Blackbox Explorer或解码器打开分析副本;
  5. 成功标志:版本与目标可识别、配置文本完整、日志头可解析、目标时段可定位且所有警告已保存。

无法解锁

  1. 拆桨并固定飞行器;
  2. 读取状态和完整解锁禁用标志;
  3. 核对接收机有效性、油门、姿态、校准、模式和配置器连接状态;
  4. 处理首个真实条件后重新读取完整标志集合;
  5. 保存修改前后配置差异;
  6. 不通过永久关闭检查消除标志。

源码入口:

  • src/main/fc/runtime_config.h:运行状态和解锁禁用标志定义;
  • src/main/fc/core.c:解锁相关状态逻辑。

Blackbox

保存:

  • 原始日志文件;
  • 日志头;
  • 实际PID循环;
  • Blackbox记录比例;
  • 日志设备;
  • 调试模式;
  • 解码器版本和警告。

记录比例不是固定Hz。若日志设备为NONE、目标时段缺失或字段更新率不明,不做频谱结论。

源码入口:

  • src/main/blackbox/blackbox.c

遥控与Failsafe

保存:

  • 接收机协议与串口;
  • 通道映射、端点和模式范围;
  • Failsafe配置;
  • Blackbox中的输入、模式、Failsafe和输出字段;
  • 发射机日志和双端链路指标。

源码入口:

  • src/main/flight/failsafe.c

振动与控制

最小字段集合按实际日志能力选择:

  • setpoint;
  • gyro及其滤波阶段;
  • PID项;
  • motor命令;
  • RPM或调试字段;
  • 电池;
  • 模式和事件。

先检查机械和RPM数据可信度,再分析滤波和控制。

导航与自动模式

2026.6.2已定义高度保持、位置保持、自动驾驶/航点及任务失联相关状态。仅在当前目标和构建实际启用时保存:

  • 高度、位置和自动模式状态;
  • GPS、Home、航向和导航目标;
  • 任务项目与任务失联配置;
  • 模式拒绝、Failsafe和最终动作。

不得把其他三类平台的估计器字段或任务逻辑移植到Betaflight。

Betaflight停止点

  • 目标板或版本不明;
  • 日志设备不存在;
  • PID循环或记录比例不明;
  • 关键窗口dropout;
  • 准备带桨运行电机页;
  • 需要关闭解锁检查或Failsafe;
  • 把输出命令当成真实转速或推力。

停止后记录缺失证据并转交对应正文:解锁到03、链路到05、振动到06、动力到07、导航到08、端口到09。未形成新的纠正候选和分层回归前,保持阻断

INAV 9.1.0

固定身份

保存:

  • 飞控目标、硬件和固件版本;
  • INAV Configurator版本;
  • 完整CLI配置;
  • Ports、接收机、模式、Failsafe、导航、任务和Blackbox配置;
  • 传感器与导航硬件清单。

只读取证入口

  1. 用与9.1.0兼容的INAV Configurator连接,关闭自动写入或升级;
  2. 在CLI执行只读命令versionstatusdiff alldump,保存原始文本且不执行save
  3. 通过Blackbox页或目标支持的存储访问方式下载日志,不擦除介质;
  4. 用兼容解码器打开分析副本;
  5. 成功标志:目标和版本可识别、配置完整、日志头与字段可解析、导航和模式时段可定位。

无法解锁

  1. 读取完整解锁标志;
  2. 核对基础传感器、接收机、油门和模式;
  3. 对导航模式继续核对位置、航向、Home和高度条件;
  4. 区分“基础姿态可用”和“当前导航模式可用”;
  5. 处理条件后重复读取全部标志;
  6. 不切换到未经批准的低要求模式绕过问题。

源码入口:

  • src/main/fc/runtime_config.h

Blackbox

保存:

  • 原始Blackbox;
  • 固定版本和完整配置;
  • 控制循环抽取比例;
  • 实际字段;
  • 文件损坏和dropout;
  • 解码环境。

低记录率可以延长时长,但不自动适合振动和快速控制问题。

模式、Failsafe与导航

保存并对齐:

  • 接收状态和通道;
  • 模式;
  • Failsafe阶段;
  • GNSS、航向、高度和Home;
  • 导航目标与状态;
  • 执行器输出。

失联后的返航或降落能力取决于实际导航健康状态。

源码入口:

  • src/main/flight/failsafe.c

INAV停止点

  • 不能确定当前是基础姿态问题还是导航问题;
  • Home、航向或高度基准不明;
  • Blackbox抽取率不足却准备判断高频问题;
  • 通过关闭导航健康检查推进;
  • 在真实飞行中主动制造失联或定位丢失。

停止后保存状态、返回01/02补证,并按现象转交03至09。Home、导航源或日志身份不明时,不得以基础姿态模式可用推导导航模式可飞。

ArduPilot Copter 4.7.1

固定身份

保存:

  • 飞控硬件;
  • Copter-4.7.1版本信息;
  • 地面站版本;
  • 完整参数文件;
  • 任务、围栏和集结点;
  • DataFlash原始日志;
  • 地面站遥测日志;
  • 启动、预解锁和状态消息。

只读取证入口

  1. 使用固定版本兼容地面站,在拆桨和受控上电条件下先保存Messages/状态文本;
  2. 从完整参数列表导出当前全量参数,不先写入参数;
  3. 从DataFlash日志下载入口取得原始.BIN文件,并保存地面站原始遥测日志;
  4. 无法解锁且普通日志尚未开始时,只能经专项批准将LOG_DISARMED用于新的拆桨补证,历史事件仍按证据缺失处理;
  5. 成功标志:版本和硬件可识别、参数导出完整、日志可解析、消息/模式/目标事件可定位、日志丢失统计已保存。

预解锁

  1. 保存完整预解锁消息;
  2. 按传感器、估计器、遥控、参数、安全和任务条件分类;
  3. 修复实际条件;
  4. 4.7.1使用ARMING_SKIPCHK表示要跳过的检查;回读确认正常基线为ARMING_SKIPCHK = 0
  5. 任何非零位都要逐位解释,不得通过置位跳过检查;
  6. 从旧版迁移时保存旧ARMING_CHECK到新参数的反向位掩码迁移差异;
  7. 若事件只发生在未解锁阶段,经批准在拆桨状态记录未解锁日志;
  8. 完成后恢复日志配置并比较全量参数。

DataFlash

按问题选取并核对实际存在的消息,常见类别包括:

  • MSG和模式;
  • 姿态目标与实际;
  • IMU、振动和Clipping;
  • EKF状态、创新和重置;
  • 遥控输入与执行器输出;
  • 电池和电源;
  • GPS、罗盘、气压计和测距;
  • 错误与Failsafe;
  • DSF等日志丢失统计。

消息名称和字段以Copter 4.7.1实际日志定义为准。DSF.Dp等统计只能按固定版本定义解释。

失联与安全动作

分别审查:

  • 遥控失联;
  • 地面站失联;
  • 电池失效保护;
  • EKF或位置相关失效保护;
  • 围栏;
  • 操作者或任务模式命令。

对齐触发源、动作、模式和恢复,不把所有动作统称为“Failsafe”。

ArduPilot停止点

  • 参数文件与事故时状态不对应;
  • 未解锁阶段没有证据,却准备关闭检查复现;
  • DataFlash关键区间丢失;
  • 把VIBE、Clipping或某一消息阈值移植到其他平台;
  • 真实飞行中注入失联、电池或估计器故障。

停止后保留完整Messages、参数、日志和ARMING_SKIPCHK状态,按现象转交03至09。任何跳过检查位、关键日志丢失或参数身份不明都维持阻断

PX4 v1.17.0

固定身份

保存:

  • 飞控型号和板级信息;
  • v1.17.0版本与提交;
  • QGroundControl版本;
  • 全量参数和机型配置;
  • 任务、地理围栏和返航配置;
  • 原始ULog;
  • 地面站日志与事件。

只读取证入口

  1. 使用兼容QGroundControl,在Analyze Tools的MAVLink Console中执行ver all并保存输出;
  2. 从Vehicle Setup的Parameters工具导出当前参数文件,不先写入参数;
  3. 从Analyze Tools的Log Download入口下载原始.ulg,不删除机载日志;
  4. 保存QGroundControl Application Log和Arming Check报告;
  5. 成功标志:硬件、版本和构建可识别,参数完整,ULog元数据/主题/事件可解析,dropout已量化。

解锁检查

  1. 保存QGroundControl完整Arming Check报告;
  2. 保存PX4事件和时间;
  3. 区分传感器健康、估计器、模式、安全开关、遥控和执行器条件;
  4. 处理最早不满足条件;
  5. 不通过参数绕过健康检查;
  6. 在拆桨状态回归全部检查。

ULog

核对:

  • ULog元数据和参数;
  • 日志开始、结束和重启边界;
  • 实际记录的主题和实例;
  • 每个关键主题更新率;
  • dropout位置和持续时间;
  • 事件与地面站消息;
  • 高频日志配置及其系统影响。

Flight Review或其他可视化结果是派生证据,不替代原始ULog。

状态估计与安全动作

按实际存在主题对齐:

  • 原始传感器;
  • 估计器状态、创新、重置和选择;
  • vehicle status与控制模式;
  • 遥控和数据链状态;
  • battery状态;
  • failsafe事件与动作;
  • actuator命令和反馈。

主题名称、实例和字段语义以v1.17日志定义为准。

PX4停止点

  • ULog缺少目标主题或关键窗口dropout;
  • 参数和机型配置不明;
  • 将QGroundControl摘要当成全部内部状态;
  • 上传公开分析服务前未处理位置与任务隐私;
  • 通过关闭健康检查或安全动作复现;
  • 真实飞行中制造位置、链路或动力故障。

停止后保存QGroundControl日志、ULog元数据和参数,按现象转交03至09。ULog主题缺失、dropout覆盖关键区间或机型配置不明时,不得依赖Flight Review摘要解除阻断。

四平台共同证据包

platform-card/
  identity.txt
  hardware.md
  configuration-original.*
  configuration-approved.*
  configuration-diff.*
  onboard-log-original.*
  gcs-log-original.*
  transmitter-log-original.*
  log-quality.md
  timeline.csv
  hypotheses.md
  test-card.md
  regression.md
  approval.md

四平台共同通过标准

  • 平台、硬件、固件和工具版本唯一;
  • 原始日志与配置摘要完整;
  • 安全检查没有被关闭;
  • 当前问题达到Q2或明确按Q0/Q1限制结论;
  • 命令、状态、响应和外部证据已对齐;
  • 复现使用最低风险层级和单一变量;
  • 临时诊断改动应撤销并回到旧批准基线作差异核对;永久修复另建纠正候选;
  • 所有未测试和未知项进入残余限制;
  • 飞行批准由授权人单独签署。

附录通过仅表示取证入口和平台状态读取完成,不授予装桨、解锁或复飞。

主要参考