闪存日志分析


概述

闪存日志有2种分析方式:

  1. 自动分析 :使用地面站的自动分析功能,分析飞行日志,直接获得比较重要的问题结果报告,比较简单明了
  2. 手动分析 :使用地面站的回顾日志 功能,进行手动分析,需要有一定的基础和经验

自动分析:


打开MP地面站>>飞行数据>>>自动分析

加载下载下来的**.bin格式的飞行日志

注意地面站版本,版本不对或者太旧,可能会出错,请尝试更换新版本的地面站

手动分析闪存日志:


通过Mavlink下载日志,会存放在MissionPlanner/logs下级目录,根据不同的飞行器类型命名的目录。如QUADCOPTER or ROVER

日志的基本格式是:

  • 行号在日志分析窗口的左侧
  • 固件版本号和飞行器类型在顶部可以显示

  • FMT消息显示的是每个不同消息类型内容

  • PARM行显示参数类型和对应的值 (按飞控EEPROM中的顺序排列)

  • 飞行数据信息,包括GPS,IMU

通过点击选定的行,你可以看到图表和飞行数据,列标题会随之更新。下一列用图表表示的列,选中后点击“Graph this data”按钮。在这个例子中,以上ATT’S Roll-In 及 Roll数据会被图表化。滑动鼠标滚轮能够放大和缩小图表。同样你也可以选中图表中某一区域放大或缩小。通过右击鼠标,并选中“Set Scale to Default”同样可以缩小图表。点击链接Here’s

有一个该特征的迷你的教程。你也可以通过先点击第一列并从下拉菜单中选中第一列来忽略第一列(飞行数据信息类型)。这尤其对于通过MP浏览不同飞行模式(详见MODE信息)十分有用。再次点击第一列“Cancel”按钮清除过滤。

设置要记录的数据

LOG_BITMASK参数控制数据闪存中记录的消息类型。mp地面站和ardupilot的最新版本允许从MP的配置/调整,标准参数屏幕启用/禁用个别消息。(一般使用默认,不禁用,否则可能无法分析故障原因)

消息详解(COPTER固件专用)

ATT (姿态信息):

RollIn 飞手想要的roll角度,单位为厘米(左侧为负,右边为正)
Roll 飞行器实际的roll角度,单位为厘米(左侧为负,右侧为正)
PitchIn 飞手想要的pitch角度,单位:厘米-度(往前为负,往后为正)
Pitch 飞行器实际的pitch角度,单位:厘米(往前为负,往后为正)
YawIn 飞手想要的偏航率,范围:-4500~4500(不是度/秒,顺时针为正)
Yaw 飞行器实际航向,单位:度,且0=北
NavYaw 飞手想要的航向,单位:度

ATUN (自动调参概述):

Axis: 0 = Roll, 1 = Pitch
TuneStep 0=返回水平(测试前或测试后),1=测试(即执行抽搐测试响应),2=更新增益
RateMin 本次测试期间最低的记录率
RateMax 本测试期间最高记录率
RPGain 正在测试p值的增益值
RDGain 正在测试的速率D增益值
SPGain 正在测试的自稳p增益

ATDE (自动调参步骤及细节):

Angle 飞行器以被测试轴的厘米为单位
Rate 被测试飞行器轴的转速

CAM (触发快门时间和位置):

GPSTime gps报告时间,以毫秒为单位
Lat 加速计+gps纬度估算
Lng 加速计+gps经度估算
Alt 加速计+气压计估算高度
Roll 飞行器的roll角度(以厘米为单位)
Pitch 飞行器俯仰角(以厘米为单位)
Yaw 飞行器航向角度(以度为单位)

CMD (从地面站接收到的命令或作为任务的一部分的执行命令):

CTot 任务总命令数
CNum 在这个任务中的命令号(0总是在家,1是第一个任务)
CId mavlink 的信息id
Copt 选项参数(用于许多不同的用途)
Prm1 命令的参数(用于许多不同的用途)
Alt 指挥部的高度,以米为单位
Lat 指挥部的纬度位置
Lng 指挥部的精度位置

COMPASS (原始罗盘偏移及罗盘补偿值):

Field 描述
MagX, MagY. MagZ x,y,z轴原始磁场值
OfsX, OfsY, OfsZ 原始磁偏移(仅当compass_lenarn参数为1时才会更改)
MOfsX, MOfsY, MOfsZ ompassmot补偿 或电流

CURRENT (电池电压,电流和电路板电压信息):

FIELD DESCRIPTION
Thr 飞行员输入油门从 0 ~ 1000
ThrInt 总油门(即全部油门的总和)
Volt 电池电压伏特* 100
Curr 电流 * 100
Vcc 主板电压
CurrTot 消耗的总电流

CTUN (油门和高度信息):

FIELD DESCRIPTION
ThrIn 飞手输入的油门从 0 到1000
SonAlt 声呐测量到的高度
BarAlt 气压计测量到的高度
WPAlt 定高,悬停,返航或自动模式下的目标高度
NavThr 没用使用
AngBst 飞行器倾斜时会增加的油门大小,为0~1000
CRate 加速计与气压计估计的上升速率,单位cm/s
ThrOut 油门最终输出大小传送到电机(从0~1000)在自稳模式下相当于thrin+angbst
DCRate 飞行员想要的上升速率单位为cm/s

D32, DU32 (单数据值是带符号的32位整数或者无符号的32位整数):

FIELD DESCRIPTION
id 变量的识别号,只可能有下面两个值
7 = 内部状态的位掩码 <https://github.com/ardupilot/blob/master/arducopter/arducopter.cpp#l361>
9 = 简单模式的初始名称,单位cm

EKF (Extended Kalman Filter):

Log information here(Dev Wiki). Overviewhere.

EV: (状态编码):

Event No DESCRIPTION
10 已解锁
11 已锁定
15 自动驾驶(飞手将油门上升到零以上,自动驾驶仪可以自由控制油门)
16 自动起飞
18 降落完毕
25 设置家的位置(家的位置坐标已捕获)

GPS:

FIELD DESCRIPTION
Status 0 = 没有识别到 GPS, 1 = 识别到GPS 但未定位, 2 = GPS和 2D 定位成功, 3 = GPS 与 3D 定位成功
Time gps报告时间,以毫秒为单位
NSats 当前使用的卫星数量
HDop 测量gps定位精度(1.5是好的,>2.0不是很好)https://en.wikipedia.org/wiki/dilution_of_precision
Lat 根据gps的纬度
Lng 根据gps的经度
RelAlt 加速计与气压计估算高度,以米为单位
Alt gps报告的高度(飞控未使用)
SPD 水平地面速度 ,单位m/s
GCrs 航向(0=北)

IMU (加速度和陀螺仪信息):

FIELD DESCRIPTION
GyrX, GyrY, GyrZ 原始陀螺仪旋转速度。单位:度/秒
AccX, AccY, AccZ 原始加速度值 ,单位:m/s/s

Mode (飞行信息):

FIELD DESCRIPTION
Mode 飞行模式显示为字符串 (即 STABILIZE, LOITER,等)
ThrCrs 巡航油门(从 0 ~ 1000) 可以通过这个参数推测悬停需要什么油门

NTUN (导航信息):

FIELD DESCRIPTION
WPDst 下一个航点的距离(或悬停目标) 以厘米为单位,仅在Loiter, RTL, Auto模式下更新.
WPBrg 下一个航点的方位(以度为单位)
PErX 直升机的下一个航点的纬度方向的距离
PErY 直升机下一个航点的纬度方向的距离
DVelX 纬度方向所需速度(以度/秒为单位)
DVelY 经度方向所需速度(以度/秒为单位)
VelX 纬度方向的实际加速度+气压计估计速度
VelY 经度方向的实际加速度+gps估算速度
DAcX 纬度方向的所需加速度,单位cm/s/s
DAcY 经度方向的所需加速度,单位cm/s/s
DRol 所需roll角度 单位:厘/度
DPit 所需pitch角度,单位:厘/度

PM (performance monitoring):

FIELD DESCRIPTION
RenCnt DCM renormalization count - a high number may indicate problems in DCM (extremely rare)
RenBlw DCM renormalization blow-up count - how many times DCM had to completely rebuild the DCM matrix since the last PM. Normally innocuous but a number that constantly grows may be an indication that DCM is having troubles calculating the attitude (extremely rare)
FixCnt The number of GPS fixes received since the last PM message was received (it’s hard to imagine how this would be useful)
NLon Number of long running main loops (i.e. loops that take more than 5% longer than the 10ms they should)
NLoop The total number of loops since the last PM message was displayed. This allows you to calculate the percentage of slow running loops (which should never be higher than 15%). Note that the value will depend on the autopilot clock speed.
MaxT The maximum time that any loop took since the last PM message. This should be close to 10,000 but will be up to 6,000,000 during the interval where the motors are armed
PMT A number that increments each time a heart beat is received from the ground station
I2CErr The number of I2C errors since the last PM message. Any I2C errors may indicate a problem on the I2C bus which may in turn slow down the main loop and cause performance problems.

RCOUT (pwm output to individual RC outputs):

RC1, RC2, etc :

Error
DESCRIPTION
1:Main (没用过)
2:Radio(无线电) ECode 1: “Late Frame” 意味着飞控超过两秒未接收到遥控信号
3:Compass(罗盘) ECode 1: 指南针不能初始化(可能是硬件问题)ECode 0: 以上错误解决
4:Optical flow(光流) Ecode 1: 无法初始化
5:Throttle failsafe(油门安全保护) ECode 1: 油门降到 FS_THR_VALUE (失控油门触发值)以下,可能是飞控没有接收到遥控信号(油门),请检查遥控信号输入或者失控保护设置 ECode 0: 上述错误解决
6:Battery failsafe(电池低压保护) ECode 1: 电池电压低于LOW_VOLT (低压保护触发值)或电池过度放电能力超过BATT_CAPACITY
7: GPS failsafe(gps安全故障) ECode 1: gps断开锁定至少5秒钟ECode 0: gps恢复锁定
8: GCS failsafe(地面站安全保护) ECode 1: 地面站操纵杆至少五秒钟未变化ECode 0: 恢复地面站更新
9: Fence(地理围栏) ECode 1: 超过围栏限定高度 ECode 2: 超过围栏限定范围 ECode 3:同时超过围栏限定范围和高度 ECode 0: 飞行器回到限定范围内
10: Flight Mode(飞行模式) ECode 0 ~ 17: 飞行器切换到想要的模式失败: 0=Stabilize, 1=Acro, 2=AltHold, 3=Auto, 4=Guided, 5=Loiter, 6=RTL, 7=Circle, 8=Position, 9=Land, 10=OF_Loiter, 11=Drift, 13=Sport, 14=Flip, 15=AutoTune, 16=PosHold, 17=Brake
11: GPS ECode 2: GPS 故障 ECode 0: GPS 故障解除
12: Crash Check(撞击检查) ECode 1: 检测到撞击

ERR(错误信息代号)

下面列出:子系统及错误代码

1:Main(从未使用)

2:无线电(Radio)

ECode 1:“Late Frame”意思是APM的板载ppm编码器,至少2秒钟了没有更新数据。

ECode 0:意思是ppm编码器恢复数据更新,错误已解决。

3:Compass(罗盘)

ECode 1:罗盘初始化失败(很可能是硬件问题)

ECode 2:从罗盘读取数据失败(可能是硬件问题)

ECode:上述错误已解决

4:Optical flow(光流)

ECode 1:初始化失败(很可能是硬件问题)

5:油门安全故障

ECode 1:油门下降到参数FS_THR_VALUE以下,可能 数传 RX/TX失去连接

ECode 0:上述问题解决,意思是 数传 RX/TX恢复连接

6:电池安全故障

ECode 1:电池电压低于参数LOW_VOLT,或电池过度放电能力超过参数BATT_CAPACITY

7:GPS安全故障

ECode 1:GPS断开锁定至少5秒钟

ECode 0:GPS恢复锁定

8:GCS(地面站)安全故障

ECode 1:地面站的操纵杆,至少5秒钟未变化。

ECode 0:恢复地面站的更新

9:围栏

ECode 1:超过电子围栏限定高度

ECode 2:超过电子围栏限定范围

ECode 3:超过限定海拔高度和围栏范围

ECode 1:飞行器回到限定范围内

10:飞行模式

ECode 0 – 10:飞行器不能进入想要的飞行模式

(0 = 自稳,1 = 特技,2 = 定高,3 = 自动,4 = 导航,5 = 悬停,6 = 返航,7 = 盘旋,8 = 定位,9 = 着陆,10 = 光流—悬停)

11:GPS

ECode 2:GPS故障

ECode 0:GPS已故障清除

12:撞击检查

ECode 1:检测到撞击

results matching ""

    No results matching ""