之前我们有写过一篇飞行日志使用的入门教程: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。
下图是因高振动而引起位置估计问题的多旋