摘要:为解决飞行数据中高频噪声对后续应用产生干扰的问题,提出基于自适应完备集合经验模态分解(CEEMDAN)和散布熵的飞行数据滤波方法。运用CEEMDAN将飞行数据自适应分解成一组固有模态函数(IMF);采用散布熵判断各IMF的噪声含量,若IMF中的有用信号完全被噪声掩盖,则予以去除,若IMF包含少量高频噪声,利用无偏似然估计阈值与改进阈值函数进行去噪;将处理后的IMF叠加以重构飞行数据。通过实例验证了该方法的有效性,其可提高飞行数据的可信度。
关键词:飞行数据;自适应完备集合经验模态分解;散布熵;阈值去噪;数据滤波
0引言
大型民航客机的飞行数据在飞行事故分析、视情维修、异常检测、飞行品质监控等方面起到重要作用[1,2]。由于飞行环境、飞机自身运动状态的复杂性及机载设备的电磁干扰等因素的影响,实际记录的飞行数据存在干扰噪声。因此,对飞行数据的有效去噪是其后续分析和各领域应用的重要前提。
传统的飞行数据滤波方法如低通滤波、卡尔曼滤波[3]、滑动多项式回归模型等,由于飞行数据具有非线性、非平稳的特征,处理后的数据在瞬变信号处容易产生局部震荡,去噪效果不佳。基于小波变换的飞行数据滤波目前已被较广泛应用[4,5]。文献[4]采取平稳小波去噪的方式滤除燃油流量、发动机N1等飞行参数的野值和噪声。基于小波变换的飞行数据滤波可以取得较好的去噪效果。但是需要依据经验或者进行大量的实验以选取恰当的小波基、分解层数,无自适应性。
自适应完备集合经验模态分解(completeensembleempiricalmodedecompositionwithadaptivenoise,CEEM-DAN)是一种基于数据自身时间尺度特征,将信号分解为固有模态函数(intrinsicmodefunction,IMF)的方法[6-8]。散布熵(dispersionentropy,DE)[9]可以用来分析时间序列的复杂性,它为判断各IMF分量的噪声含量提供了依据。故提出一种基于CEEMDAN和DE的飞行数据滤波方法,其具有自适应的优点,无需数据的众多先验知识。经该方法去噪后的飞行数据平滑性和相似性较好,满足实际应用的需求。
1算法原理
1.1CEEMDAN分解
CEEMDAN算法的基础是经验模态分解(empiricalmodedecomposition,EMD),但它弥补了EMD算法具有模态混叠的不足,且完备性较好[10]。
1.2飞行数据噪声分析
民航飞机的飞行数据主要通过快速存取记录器(quickaccessrecorder,QAR)、飞行数据记录器(flightdatarecorder,FDR)等机载设备进行记录[1]。记录器按时间顺序采样,记录了起飞、爬升、巡航等各个飞行阶段飞机实际的性能数据和状态数据。但是,不同飞行阶段的数据变化特征具有较大差异,例如在起飞阶段空速、气压高度、发动机N1等参数变化快且幅度大,而在巡航阶段其变化相对稳定。这要求飞行数据滤波算法具有多尺度分析的能力。
此外,飞行参数包括大气环境参数、发动机参数、气动参数等不同类型的参数,这些参数中包含的噪声类型和表现形式也不尽相同。例如:周期性噪声常规情况下是由飞机各种电气干扰及某些部件的周期性机械运转导致,体现为数据中的窄谱峰;脉冲噪声具有持续时间短和幅度大的特点,一般由电磁干扰等随机性干扰引起,体现为数据中的野值;导致飞行数据中存在宽带噪声的诱因较多,比如大气紊流的干扰、量化噪声等,体现为短时间内频繁抖动的数据。因此,噪声对飞行数据的干扰在数据中主要表现为以下两方面:一是存在野值,即数据中的异常点;二是存在短时间内频繁抖动的数据,其变化趋势呈现锯齿状。上述两种现象为飞行数据的实际应用带来较大阻碍。
总体上,飞行数据中包含的噪声大多数为高频干扰信号,而民航飞机作为一个六自由度的刚体动力学系统,其运动频率相对较低,通常不会超过10Hz。因此,对飞行数据的去噪相当于是一个低通滤波的过程,但是使用传统的低通滤波器去噪,其截止频率难以确定,需要针对不同的飞行参数进行大量实验,且去噪效果不是很理想。利用小波阈值去噪的方式对飞行数据滤波同样存在上述问题,在缺乏飞行数据先验知识的情况下,小波基和分解层数的选取需要通过大量的实验以及结果的比对才能确定。有时为了获得更好的滤波效果,针对不同类型的飞行参数需要重新选取小波基和分解层数,实际应用的计算量较大。
从算法的原理可知,CEEMDAN算法可以基于飞行数据自身的时间尺度实现飞行数据的自适应分解,得到一组从高频到低频分布的IMF分量。这些IMF分别包含了飞行数据中不同频率成分的信息,相当于对飞行数据按照频率的高低进行了划分。此外,CEEMDAN算法具有自适应性,可适用于不同类型的飞行参数,且不受飞行阶段的影响。
1.3基于CEEMDAN的飞行数据去噪原理
利用CEEMDAN算法能够简便且高效地获得包含不同频率信息的飞行数据IMF。依据对飞行数据的噪声分析,数据中的干扰信号集中存在于频率较高的IMF中,而有用信号大多数存在于频率较低的IMF中。因此,CEEMDAN分解阶次较低的IMF所含有的有用信息较少且容易被噪声完全掩盖。借鉴低通滤波的思想,将前N-1阶频率成分较高的IMF直接去除,使用其余阶次的低频IMF和余项叠加,获得滤波后的飞行数据。在保留大部分有用信息的同时,实现去除飞行数据中野值和噪声的目的。记Ik(t)为飞行数据经CEEMDAN分解得到的第k阶IMF。
2基于CEEMDAN和散布熵的飞行数据滤波
2.1基于散布熵的IMF分量噪声判断
CEEMDAN去噪通常需要指标判断IMF的噪声含量,以避免盲目剔除IMF分量造成信号失真的问题,目前常用的指标有排列熵[8]、样本熵等。本文选取散布熵作为评判指标,相对于样本熵和排列熵,它具有计算速度快且兼顾时间序列幅值间关系的优点。
散布熵的值会随着时间序列复杂度的提高而增大,据此特性可以分析经CEEMDAN分解获得的飞行数据IMF分量。若飞行数据的IMF分量的散布熵值较大,则说明该IMF分量越不规则,复杂性越强,包含较多的噪声信号;反之,则说明该IMF是原时间序列信号中的有用信息。因此,当相邻IMF的散布熵值发生突变时,说明两个IMF分量的噪声含量急剧减少或增加,故本文以相邻IMF分量散布熵比值最大处,作为界限判断含噪IMF,克服了CEEM-DAN去噪需要主观确定界限N的困难。
2.2阈值法去除IMF分量噪声
对于界限N处的飞行数据IMF,其散布熵相对较小,故IMF中有用信号占主导。因而可以使用阈值法去除临界IMF包含的少量干扰噪声。阈值法的去噪思想是噪声在飞行数据IMF分量中的系数幅值小于有效信号的系数幅值。通过选取适当的阈值,判定大于该阈值的IMF系数幅值为有用信号,保持其值不变;对于低于该阈值的系数幅值判定为噪声信号,将其减小至零,从而得到较为纯净的飞行数据IMF分量。
阈值法去除IMF分量噪声的核心在于阈值和阈值函数的选取,为避免将有用信号误当噪声信号去除的问题,此处采取一个相对保守的策略,即基于Stein的无偏似然估计阈值法[11]计算待处理IMF分量的阈值。
2.3算法实现
首先从译码后的飞行数据中选取待处理数据,通常将其保存成CSV格式。程序实现CEEMDAN算法,并设置辅助噪声的标准差,最大筛选迭代次数,进而利用CEEM-DAN算法对待处理飞行数据分解,得到其众多IMF及余项。
其次,求解飞行数据各IMF的DE值即式(15)以及相邻IMF分量的DE比值(取前项与后项的比值),取DE比值最大处的IMF阶次作为界限N。界限N之前的飞行数据IMF分量,其中噪声信号占比较高,故直接将其去除;对包含少量噪声的IMF分量,采取式(16)和式(17)计算其阈值,进而使用改进阈值函数即式(18)对该IMF分量处理,去除IMF中系数幅值较小的数据,保留飞行数据IMF分量中的有用信号。
最后,通过对有用信号分量、余项以及阈值法处理后的IMF累加,以获得滤除干扰信号的飞行数据。算法流程如图1所示。
3实验与分析
3.1仿真数据去噪
为检验所提飞行数据滤波方法的实际应用效果,采用Matlab提供的标准bumps信号作为原始信号,其波形如图2(a)所示。向标准bumps信号添加白噪声作为仿真飞行数据,其波形如图2(b)所示,总采样点数为2048个,信噪比设置为9dB。
从图2(b)可以明显看出该bumps信号的轮廓完全被噪声掩盖,包含众多野值及剧烈抖动的数据。此外,采样后该信号与飞行数据同样为非线性离散时间序列,故可以作为验证数据。利用CEEMDAN算法分解含噪bumps信号,可获得其10个IMF及最后的余项,并计算全部IMF的散布熵。图3直观地展示了随CEEMDAN分解次数的增加,各阶次IMF散布熵的变动情况。图4展示了信噪比为9dB的bumps经CEEMDAN算法分解得到的全部IMF的波形。
通过计算,得到IMF1~IMF10的散布熵值为:[3.395,3.546,3.396,3.012,2.058,1.938,1.969,1.888,1.870,1.711],以及低阶IMF分量散布熵与相邻高阶IMF分量散布熵的比值为:[0.957,1.044,1.127,1.464,1.062,0.984,1.043,1.010,1.093]。IMF4与IMF5的散布熵比值最大,比值为1.464,说明在IMF4与IMF5分量之间噪声含量骤减而有用信号增多,如图3所示。因此,界限N取值为5,可以认为IMF1~IMF4分量中的有效信号完全被噪声掩盖,重构信号时将其直接去除;IMF5~IMF10分量的散布熵值较小,故在这些分量中有用信号的系数幅值占主导。但IMF5分量处在有效信号占主导的临界处,其包含有效信号的同时,不可避免地包含少量干扰信号,有待进一步处理。
通过观察图4(a)各阶IMF分量的波形可以进一步验证散布熵判断的准确性。IMF1~IMF4分量的波形紊乱,存在剧烈震荡,为噪声信号;IMF5分量中有用信号的波形较为清晰,但系数幅值在等于零处存在频繁地小幅度波动,且明显小于有用信号的系数幅值。因此,可以利用阈值法处理IMF的方式,将IMF5中的部分干扰噪声滤除。
为对比本文算法与EMD去噪、小波阈值去噪(小波基选为sym8小波,分解层数为5)以及传统CEEMDAN去噪算法的降噪效果,采用信噪比(signal-to-noiseratio,SNR)和均方根误差(rootmeansquareerror,RMSE)作为衡量指标,其结果见表1。
根据表1中各算法去噪后数据的信噪比和均方根误差,可以表明文本去噪算法在提高数据信噪比和保持与原始数据相似性方面,效果最好。
相关期刊推荐:《计算机工程与设计》由中国航天科工集团第二研究院706所主办,主要刊登各型计算机及其系统的研究、研制、设计、开发应用等各方面的学术论文、技术报告和专题综述。设有:计算机软件、计算机体系结构、计算机外围设备、计算机网络、人工智能、安全/保密技术、计算机仿真技术、计算机辅助工程、多媒体技术、计算机应用、计算机理论与算法、通信技术、信息化技术、光电子技术、可靠性技术、抗恶劣环境技术、嵌入式系统工程、嵌入式应用技术等栏目。
上述各种算法的实际应用效果,如图5所示,图中小框内的波形为信号第3个尖峰处的放大图。可以看出,EMD去噪算法对仿真数据的滤波效果不够理想,依旧含有较多频繁震荡的数据;经小波阈值去噪算法滤波后的数据虽然较为纯净,但在数据的第3个尖峰处过于平滑,丢失原bumps信号的部分细节信息,导致信号失真。传统CEEMDAN去噪算法虽然效果优于EMD去噪,但是未考虑临界IMF分量中包含的少部分噪声,导致去噪不彻底且波形平滑性较差。文中算法滤除噪声的结果,如图5(d)所示,其与原bumps信号波形的相似性最好,有效保持了在尖峰处的细节信息且波形相对平滑,无频繁震荡的数据。
3.2实际飞行数据去噪
用于实验的飞行数据来源于某航空公司译码后的QAR数据,本文选取其中某航班一次完整飞行过程中记录的发动机N1数据进行去噪,以验证本文算法对实际飞行数据的滤波效果。所选取的飞行数据长约8000s,真实记录了民航飞机在起飞、爬升、巡航等各个飞行阶段的发动机N1参数。发动机N1参数由涡扇发动机风扇的抬轮速度提供,能够表征发动机的推力大小,是用于民航发动机控制和监控的关键参数之一。实际记录的发动机N1数据如图6所示。
如图6所示,实际发动机N1数据在飞机巡航阶段的变化较为稳定,但仍受到气流冲击等随机干扰的影响,导致存在小幅度频繁震荡;而在下降和进近阶段,为了实现准确的飞行速度控制,发动机的推力会较为频繁地改变。因此,发动机N1参数在这个阶段的波动较为剧烈,更容易受到各种干扰噪声的影响。故QAR实际记录的N1数据中会出现较多的野值点以及局部频繁震荡的数据;另外,数据中存在较多离散的窄谱峰。利用EMD算法、小波阈值以及本文算法分别对QAR记录的发动机N1数据进行滤波,其结果如图7所示,图7中小框内的波形为信号最后一个尖峰处的放大图。
在使用EMD对N1数据分解时,共获得15个IMF分量,通过多次实验验证,确定去除前5个被噪声掩盖的IMF可获得最佳滤波效果。从图7(a)所示波形得知,基于EMD的数据滤波虽有效剔除了N1数据中的野值,但因EMD存在模态混叠的问题,在原野值点处产生了震荡数据,导致重构后的N1数据波形不够平滑。
图7(b)为使用小波阈值法对发动机N1数据的滤波效果。在滤波过程中,为获得较好的效果分别使用MAT-LAB提供的db系列以及sym系列小波基多次进行实验,同时需要考虑分解层数的影响,滤波步骤相对复杂。最终,选取sym8小波作为小波基,分解层数设置为4,其阈值函数如式(18)所示,成功滤除了飞行数据中的野值。但是,对N1数据中众多局部小幅度频繁波动的数据,其滤除效果相对较差。
使用CEEMDAN算法对该发动机N1数据自适应分解,共获得13个IMF分量,借助散布熵可以快速辨别出前4个IMF为被噪声掩盖的IMF,将其去除。其次,使用阈值法对阶次为5的IMF进一步滤波,去除IMF系数幅值较小的数据,然后重构发动机N1数据,其波形如图7(c)所示。滤波结果能够较为真实地保持发动机N1数据在不同飞行阶段的变化特征,而且数据波形平滑、清晰,无毛刺、野值以及局部频繁波动的数据。
实验结果表明,本文滤波方法对实际飞行数据同样具有良好的滤波效果,且不受飞行阶段的影响。相比其它两种方式,其在滤波步骤上得到简化,且减少了局部震荡数据的存在。
4结束语
为简便、有效地去除飞行数据中的高频干扰,提高后续分析结果的准确度,本文综合散布熵的特性以及CEEM-DAN能自适应分解非线性时间序列信号的优点,提出一种飞行数据滤波方法。在缺乏飞行数据先验知识的状况下,使用CEEMDAN算法,基于数据自身的时间尺度实现了对飞行数据的自适应分解;借助散布熵,简单高效地识别出了包含噪声的飞行数据IMF,无需大量实验。从该方法实际应用于发动机N1数据的滤波效果可知,与QAR实际记录的N1相比,滤波后的N1数据波形平滑,无野值,有效地降低了高频干扰对飞行数据的影响。——论文作者:耿宏,郗厚山+
* 稍后学术顾问联系您