Pixhawk飞行日志教程---使用日志诊断问题

之前我们有写过一篇飞行日志使用的入门教程:APM/Pixhawk飞行日志分析入门 大概介绍了如何获取飞行日志以及简单的分析。接下来我们结合飞行日志来诊断具体问题。

日志类型(Dataflash与Tlog)


有两种记录飞行日志的方法。这两种方法记录的数据非常相似,但是方式不同:

  • 数据闪存日志(Dataflash)---记录在飞控上(通常记录在SD卡上),因此飞行后必须从飞控上下载。

  • 通过数传连接飞控和电脑端地面站时,在本地电脑上记录的是 遥测日志(也称为“ tlog”)

如果对这些基础知识还不了解,请先查看:APM/Pixhawk飞行日志分析入门

一、机械故障


常见的机械故障包括电机或ESC电调故障,螺旋桨断裂或脱落等。这些故障在日志中是以期望的侧倾角DesRoll和俯仰角DesPitch与飞行器的实际侧倾角Roll和俯仰角Pitch的突然出现差异表现出来。通过绘制 ATT 消息中的DesRoll与Roll,DesPitch与Pitch以及较小程度的DesYaw与Yaw曲线,可以看出这种差异。如下所示:

在上面的示例中,前面一段,飞行器的实际侧倾(“Roll”绿色曲线)紧随期望的侧倾(“DesRoll”红色曲线),但随后突然发散。飞控希望侧倾保持水平(“侧倾” = 0)。这与软件故障完全不同。如果是软件出现故障,由于某种奇怪的原因,导致自动驾驶仪崩溃,突然想要将直升机颠倒过来,在这种情况下,DesRoll曲线也会很疯狂(不会是0),实际的Roll也会随之而来。

如果是使用Tlog日志,比较NAV_CONTROLLER_OUTPUT的nav_roll(期望的倾斜度)和nav_pitch(期望的倾斜度)与ATTITUDE.roll(实际倾斜度)和倾斜度(实际倾斜度)。

二、震动


高振动会导致基于多旋翼的加速度计的高度和水平位置估算值偏离实际情况,从而导致在althold定高,或在Loiter留待,PosHold定点,Auto自动等模式下无人机可能会失控。

我们可以用过查看 VIBE 消息的VibeX,VibeY和 VibeZ 值来查看振动。低于30m/s/s的振动水平通常是可以接受的。高于30m/s/s的水平可能会出现问题,而高于60m/s/s的震动水平在定点或定高模式下通常是会出现问题的。

下图显示了可接受的振动水平,始终低于30m/s/s。

下图是因高振动而引起位置估计问题的多旋翼无人机。

如果是使用的Tlog日志,可以找到VIBRATION中的vibration_x,vibration_y和vibration_z,并显示与存储在数据闪存日志中相同的信息。

三、指南针干扰


飞控附近的配电板,电机,电池,电调和其他电气设备会干扰罗盘的航向,从而导致飞行器盘旋(又称“马桶保龄球”效应)甚至完全以错误的方向飞行。可以通过Tlog的mag_field(位于“ CUSTOM”下)和 throttle(位于VFR_HUD下)的曲线是快速查看干扰量。

下图显示了提高油门时可接受的电磁干扰量,磁场波动仅为10%到20%。低于30%的干扰是可以接受的。在30%到60%之间的灰色区域可能还可以(一些用户还可以,一些用户不满意),并且当油门升高时,超过60%的跳变会显示出非常严重的电磁干扰。

附加说明:

  • mag_field的长度可以在120到550之间不等,这取决于无人机在世界上的哪个位置,但通常在330左右

  • 在指南针安装过程结束时,还会显示出占总磁场百分比的电磁干扰。在“ 高级指南针设置”页面页面上搜索“ CompassMot”,以了解有关指南针的更多信息

  • 数据闪存日志的COMPASS消息包含罗盘的原始x,y和z轴值(称为MagX,MagY,MagZ),它们等效于tlog的RAW_IMU xmag,ymag和zmag字段。可以首先将dataflash日志文件加载到excel中,通过COMPASS消息进行过滤,然后使用公式mag_field = sqrt(MagX ^ 2,MagY ^ 2,MagZ ^ 2 )。请注意,默认情况下,数据闪存日志中未启用COMPASS消息,因为它以50hz运行,并且确实会影响CPU性能。

  • 上方的图片在图表的开头显示了一个尖峰,但可以忽略,因为它是在油门推起之前有可能是用户插入其他电气设备产生的。

四、GPS故障


当无人机处于Loiter,RTL,Auto等飞行模式时,GPS产生的位置误差会导致无人机认为自己突然在错误的位置,并导致激进的飞行来纠正感知到的错误。这些“故障”在遥测日志和数据闪存日志中都显示为可见卫星数量的减少和hdop的增加。

下图显示了数据闪存日志的GPS消息中“ HDop”和“ NSats”值的图形。低于1.5的Hdop值非常好,超过2.0的Hdop值可能表明GPS位置不好。低于12个的卫星数量也很糟糕。这两个值的重大变化通常伴随着GPS位置变化。

如果使用遥测日志,可以查看GPS_RAW_IT组的“ eph”和“ satellites_visible”值。低于150的Hdop值是好的,超过200的Hdop值可能表明位置不好。

有关在GPS异常严重的情况下无人机如何切换到非自主模式的更多详细信息,请参见EKF故障安全 Wiki页面。

五、电源问题(电压不足等)


电源模块可为飞控提供可靠的电源,但偶尔还是会出现电源不足的情况。通常可以通过在无人机仍处于空中时突然结束的日志来识别(即,气压计或EKF高度仍在报告无人机的高度远高于零)。

查看以下曲线:

  • 数据闪存日志中 CTUN Alt (home点高度) 或则 BAlt (气压计高度)

  • 数据闪存日志中 GPS Alt (海拔高度)

  • 遥测日志中 VFR_HUD alt (加速度计和气压计的组合高度)

  • 遥测日志中 GLOBAL_POSITION relative_alt (home点高度)

  • 飞控板电压的变化也可能是电源问题的迹象。0.10至0.15伏的变化是正常的。除此之外,这还可能表明其他与飞控共享电源的设备正在引起电源中的纹波,从而可能导致电源不足。查看电路板电压可以使用以下图表:

  • 数据闪存日志中的 POWR消息的VCC

  • 遥测日志汇总HWSTATUS的Vcc

  •   下图中显示了在调高油门时板电压会下降0.15V。通常这不是一件好事,但是因为它只有0.15V,所以可能还可以。下面的第二张图(来自不同用户日志的数据闪存图)显示了非常稳定的电压,纹波小于0.1V。

六、意外错误失控保护


当飞控发生意外错误时(尤其是当用户抱怨无人机不再响应其输入时),这通常是由触发失控保护(failsafe)之一引起的。

查找这些内容的最简单方法是查看数据闪存日志,并通过“ ERR”过滤第一列。使用MP软件可以看到 错误会以红色标记显示在图形区域顶部。

其中:Subsys(又称子系统)提供了产生错误的区域,ECode(又称错误代码)会告诉您具体是什么错误。子系统列表和错误代码可在AP_Logger库AP_Logger.h文件中找到。

SubsysECode and Description
2 = Radio
  • 0 = Errors Resolved

  • 2 = Late Frame : no updates received from receiver for two seconds

3 = Compass
  • 0 = Errors Resolved

  • 1 = Failed to initialise (probably a hardware issue)

  • 4 = Unhealthy : failed to read from the sensor

5 = Radio Failsafe
  • 0 = Failsafe Resolved

  • 1 = Failsafe Triggered

6 = Battery Failsafe
  • 0 = Failsafe Resolved

  • 1 = Failsafe Triggered

8 = GCS Failsafe
  • 0 = Failsafe Resolved

  • 1 = Failsafe Triggered

9 = Fence Failsafe
  • 0 = Failsafe Resolved

  • 1 = Altitude fence breach, Failsafe Triggered

  • 2 = Circular fence breach, Failsafe Triggered

  • 3 = Both Alt and Circular fence breached, Failsafe Triggered

  • 4 = Polygon fence breached, Failsafe Triggered

10 = Flight mode Change failure

Vehicle was unable to enter the desired flight mode normally because of a bad position estimate

See flight mode numbers here for Copter, Plane modes here, and Rover modes here

11 = GPS
  • 0 = Glitch cleared

  • 2 = GPS Glitch occurred

12 = Crash Check
  • 1 = Crash into ground detected. Normally vehicle is disarmed soon after

  • 2 = Loss of control detected. Normally parachute is released soon after

13 = Flip mode2 = Flip abandoned (not armed, pilot input or timeout)
15 = Parachute
  • 2 = Not Deployed, vehicle too low

  • 3 = Not Deployed, vehicle landed

16 = EKF Check
  • 0 = Variance cleared (position estimate OK)

  • 2 = Bad Variance (position estimate bad)

17 = EKF Failsafe
  • 0 = Failsafe Resolved

  • 1 = Failsafe Triggered

18 = Barometer
  • 0 = Errors Resolved

  • 4 = Unhealthy : failed to read from the sensor

19 = CPU Load Watchdog
  • 0 = Failsafe Resolved

  • 1 = Failsafe Triggered (normally vehicle disarms)

20 = ADSB Failsafe
  • 0 = Failsafe Resolved

  • 1 = No action just report to Pilot

  • 2 = Vehicle avoids by climbing or descending

  • 3 = Vehicle avoids by moving horizontally

  • 4 = Vehicle avoids by moving perpendicular to other vehicle

  • 5 = RTL invoked

21 = Terrain Data2 = missing terrain data
22 = Navigation
  • 2 = Failed to set destination

  • 3 = RTL restarted

  • 4 = Circle initialisation failed

  • 5 = Destination outside fence

23 = Terrain Failsafe
  • 0 = Failsafe Resolved

  • 1 = Failsafe Triggered (normally vehicle RTLs)

24 = EKF Primary changed
  • 0 = 1st EKF has become primary

  • 1 = 2nd EKF has become primary

25 = Thrust Loss Check
  • 0 = Thrust Restored

  • 1 = Thrust Loss Detected (altitude may be prioritised over yaw control)

26 = Sensor Failsafe (Sub)
  • 0 = Sensor Failsafe Cleared

  • 1 = Sensor Failsafe Triggered

27 = Leak Failsafe (Sub)
  • 0 = Leak Failsafe Cleared

  • 1 = Leak Detector Failsafe Triggered

28 = Pilot Input Timeout Failsafe (Sub only)
  • 0 = Pilot Input Failsafe Cleared

  • 1 = Pilot Input Failsafe Triggered

29 = Vibration Failsafe
  • 0 = Excessive Vibration Compensation De-activated

  • 1 = Excessive Vibration Compenstaion Activated

  • 17
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值