基于机理模型的故障诊断方法

电子说

1.3w人已加入

描述

作者于2022年在北航可靠飞行控制研究组完成本科毕业设计。本文节选自“乐祥立. 基于多旋翼飞行器机理模型的故障诊断及应用[D]. 北京航空航天大学, 2022”。        

01、背景介绍

近年来,随着通信和集成技术等领域的不断发展,多旋翼飞行器已经逐步运用到军事、民生和工业等多个领域,极大地改变了人们的生活。然而,常见的商用和民用多旋翼飞行器具有结构较为简单、集成了多种传感器和组件的特点,较易发生各种类型的故障。多旋翼一旦发生故障,则容易出现坠机等状况,带来一定的财产损失并且造成安全隐患。因此,无论是专业从业人员还是业余爱好者,都希望能够及时了解多旋翼飞行器的状态以及是否存在故障。   多旋翼发生故障后在现场缺乏专业人士时,往往得不到及时的诊断。如若不能及时排查出故障,有可能延误正在进行的工作。目前互联网上虽然有诸如Flight Review, FlightPlot等飞行器自驾仪的数据分析工具,却缺少能够及时反馈故障信息的在线多旋翼飞行器故障诊断平台,能够提供的帮助较为有限。

飞行器

  图为PX4的Flight Review平台,能够方便地对多种航行日志数据进行可视化显示以及简单的运算,方便进行数据分析。但是这类平台均不能够进行故障诊断的工作,还是无法让用户快速准确地知道故障。假若可以利用航行日志的数据搭建网页,用户通过网页上传航行日志数据就可以得到相关的反馈报告,明确是否有故障,故障的类型和故障的程度,就可以实现在现场无专家的情况下帮助各类无人机用户实现快速故障诊断的目的。

飞行器

   

02、诊断算法介绍

2.1 总体介绍
  在仅拥有航行日志的情况下,对多旋翼飞行器进行故障诊断是较为困难的。首先需要分析多旋翼飞行器的运动机理和航行日志数据结构,确定基本的诊断方法和需要的数据。其次,考虑到带有故障的航行日志数据的缺乏,很难应用基于数据驱动的诊断方法,诸如SVM和深度学习等,因此采用分析机理模型的方式建立诊断算法。最后,需要综合检验诊断算法的检测效果。本文设计的故障诊断总体方案如下:

飞行器

总体流程:首先对收集的航行日志数据进行预处理;之后运用三类故障诊断方法分别诊断,得到结果;最后对这三类结果进行综合评估,分析出真正的故障,排除误诊情况并在可视化平台上显示。   需要强调的是三类故障诊断方法指的是:多旋翼多个执行器失效的诊断,传感器尺度因子故障诊断和传感器白噪声变化故障诊断。这里考虑的传感器只包含陀螺仪,加速度计,磁力计和气压计这四种类型。   研究的重难点在于:选取哪些航行日志数据作为诊断用的数据,以及在选择好的数据上怎样进行执行器和传感器的各类故障诊断算法的设计。   本文通过对航行日志的结构以及飞行控制栈分析最终选定了如下的数据作为诊断所需。  

飞行器

  2.2 执行器故障诊断方法
  具体而言,执行器失效的故障诊断算法采用卡尔曼滤波和参数估计的方法进行,利用航行日志中的电机控制输出指令、位置和姿态信息以及额外获得的多旋翼质量、转动惯量等机体数据直接运用卡尔曼滤波的方式对执行器失效的程度进行估计。结果如下:  

飞行器

  实验中,加入一次作用于第一个执行器上的故障,持续时间为60秒,故障作用期间螺旋桨的拉力减少的部分占全部拉力的60%。可以看到,估计的结果基本符合预期。   2.3 传感器尺度因子故障诊断方法
  传感器尺度因子的故障诊断方案采用卡尔曼滤波和残差分析的方式进行。首先有基本假设:在航行日志中的同一时刻只有一种类型的故障发生。   在假设下的主要思路是传感器的“互诊”,即使用待测传感器A的数据运用Kalman滤波的方式去估计另一传感器B的数据,而传感器B的数据根据假设是假定为一定正确的观测数据,由此可以得到残差。   通过阈值诊断的方法对残差进行检测,即可实现故障诊断。以加速度计为例的诊断效果如下:

飞行器

实验中,加入一次持续时间为10秒的加速度计尺度因子故障,故障作用期间所有加速度测得信息变为原来的1.2倍。可以看到,z方向的残差出现了明显超出阈值的部分。   2.4 传感器白噪声变化故障诊断方法 传感器白噪声故障变化的故障诊断方法采用小波阈值去噪和残差分析的方式进行。具体的做法是利用传感器的数据首先进行小波阈值去噪,得到消噪的数据。 由于在出现噪声异常时间段和正常的时间段消噪后的结果有明显差异。因此可以通过原始数据和消噪数据作差的方式得到残差,并利用这一明显的差异对故障进行诊断。以加速度计为例的诊断效果如下:

飞行器

实验中,加入持续时间为 20 秒的加速度计白噪声故障,故障作用期间,加速度计三个轴向上注入的白噪声幅值均增大至正常状态下的 5 倍。可以看到,诊断的结果是正确的。   2.5 综合诊断情况分析
  最后,还需要对诊断算法进行准确性测试以及误诊情况的分析,具体为:

飞行器

通过对误诊情况进行分析,并设计相应的逻辑判断规则,就可以实现在发生误诊情况下的诊断,进一步提高诊断的准确率。  

飞行器

在准确性测试中,采用多种指标进行测试的原因在于,精确度的数据会受到较多正常数据的干扰表现出虚高的现象,F1分数能够更加可观的反映诊断效果的好坏。所谓较多正常数据指的是,无人机正常飞行的数据和其他部位发生故障的数据相对而言较多,会使得精确度较高。   2.6 多旋翼无人机故障诊断平台
  最后,本文也搭建了初步的多旋翼飞行器故障诊断平台,能够实现航行日志上传,诊断结果显示,数据分析和图表列举等功能。该平台以基于Python的Django框架为核心,联合MATLAB/Simulink实现航行日志的预处理和诊断,并实现网页的交互功能。

飞行器

        文中搭建的故障诊断平台的初步功能介绍如下:
  ① 平台名称:“多旋翼飞行器故障诊断平台” 
  ② 页面选择框:点击不同的诊断算法页面则会展示不同诊断算法的结果。
  ③ 数据显示板:主要显示的是在航行日志对应时间戳下是否存在故障。存在故障,则会显示“1”;不存在执行器故障,则会显示“0”。
  ④ 日志上传和运行模块:点击“选择文件”后可以从系统中任意位置选择需要上传的PX4航行日志数据,格式为ULG。
  ⑤ 时间和故障总状态显示:“当前系统时间”展示的是当前的真实时间;“当前状态”展示的是当前上传的航行日志是否存在故障。
  ⑥ 故障诊断结果详细信息:会详细列出故障的序号、故障起始和结束的时间、故障类型说明、对应的故障参数估计结果以及故障参数的含义。
  ⑦ 参数曲线展示:该部分展示针对每种故障类型进行诊断的特征参数。  

飞行器

飞行器

03、总结与展望

本文通过对多旋翼飞行器进行建模以及对故障诊断方法进行分析,确立了基于机理模型的故障诊断方法。其次研究了Pixhawk航行日志的构成和格式,确定了故障诊断的数据来源和针对数据需要预处理的问题。随后针对在对多旋翼建模过程中设计的几类故障各自设计了单独的故障诊断方案,针对执行器故障的参数估计方法,针对传感器尺度因子故障的残差检测方案以及针对传感器白噪声变化故障的小波变换方案。更进一步的分析了执行器故障诊断方案建立的流程、假设和可观测性分析以及残差检测方案中的阈值确定方法和故障区间判断的问题。接着对设计的故障诊断方案进行了初步的仿真验证和综合测试。初步仿真验证主要检验诊断方案的可行性,综合测试则验证了诊断算法之间的误诊情况并给出了解决方案,进一步测试了单一算法的准确率,查全率,查准率和F1分数的情况,分析原因并在真实航行日志上进行了验证,发现了诸多可以改进的部分。最后,使用以Python为核心的Django框架,联合MATLAB/Simulink初步搭建了多旋翼飞行器故障诊断可视化平台,方便进行快速地故障诊断工作。   本文只是一个初步的方案,还存在着诸多不足之处。比如白噪声故障诊方案的F1分数较低,还可以进一步提升性能;陀螺仪尺度因子故障诊断方案较容易出现误诊的情况,可以改进方法。此外,执行器故障诊断方案现在存在着诸多的假设,可以进一步增加模型的复杂性,提升其对更多情况下的适应能力。另外,现有的诊断算法在真实航行日志下并不尽如人意,后期工作中还需要进一步加强诊断算法的鲁棒性,减少误诊情况,完善真实航行日志的验证工作,提高其实用性。最后,故障诊断平台现还只能单机运行,并不能实现线上的操作,也还没有对不同类型的航行日志数据实现分类处理的功能。

审核编辑 :李倩

 

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分