基于小波包和支持向量机的碰摩故障识别方法的分析
沈阳航空工业学院硕士学位论文
摘要
现代旋转机械在运行过程中,经常发生动静件之间的碰摩故障,如果不及时发现, 将导致严重的后果。因此本文对碰摩故障进行了研究,提出了基于小波包和支持向量机 的智能诊断方法。
故障诊断技术从本质上来讲是一个机器运行状态的模式识别问题,关键在于故障特 征信号的分析及提取,它直接关系到故障诊断的准确性和故障早期预报的可靠性。小波 分析和小波包分析方法具有良好的时频局部性,能够将信号在任意频段进行划分,比基 于傅立叶变换的分析方法能够更有效的提取故障特征,尤其是提取微弱故障特征。本文 采用的是
小波包分析,并详细论述了小波包分析理论。利用小波包提取奇异值作为特征 向量,能够较好的反映碰摩信号的特征,为以后的故障诊断系统提供了故障诊断样本数 据。
另外本文系统地阐述了支持向量机的基本理论和特点,在对碰摩故障诊断分析的基 础上,利用支持向量机对得到的样本数据进行模式分类,从而实现故障诊断的作用。同 时本文还对比研究了神经网络的分类效果,最后利用Mat lab和VC++混合编程开发得到 仿真软件系统。试验结果表明本文提出的智能故障诊断方法是可行的,能够应用于多个 领域,其发展前景广阔。
关键词:故障诊断;碰摩;小波包;支持向量机;混合编程
Abstract
The rub fault often occurs between the stators in modern rotating machinery during the faults are not found in time,it will lead to serious operation.If consequences.Therefore an method for fault based on wavelet intelligent diagnostic and vector rub-impact packet support machine is proposed in this paper.
Fault Diagnosis a event to the machine in Technology is pattern essence,recognition running the fault and features extraction,which has a direct bearing on key lies in the signal analysis and the accuracy of fault diagnosis and fault the reliability of early warning.Wavelet and wavelet packet analysis method have good time—frequency localization,and Call divide the signal at on Fourier any frequency band than the analysis based transform method.They
Can extract the fault features more effectively,particularly in a weak signal extraction.In this
paper,the wavelet packet analysis theory was discussed in detail.The singular value which extracted using wavelet packet was used as the feature vectors.It demonstrated that the singular value Call reflect the characteristics of rub-impact signal much better,and provide
much sample data for the future of fault diagnosis.
Besides characteristics of rubbing fault diagnosis and the basic theory of support vector machines were described systematically in this paper.The support vector machine was used to get the sample data classified,in order to achieve fault diagnosis and pattern recognition.The method proposed in this paper was compared to the neural network classification method to demonstrate it is a much more effective method.Finally a software system for simulation was
developed.in which Mat lab and VC++were used together.The results show that the
proposed intelligent fault diagnosis method is feasible,and have the broad using prospects in
areas. many
Keywords:fault diagnosis;rub and impact fault;wavelet packet analysis;support vector
machine;hybrid programming
11
沈阳航空工业学院硕士学位论文
主要符号表
a——小波基函数中的尺度参数; f——小波基函数中的平移参数;
AT.嘶阵A的转置:
AH_矩阵A的共轭转置:
A——4H彳的特征值: 仉——A的奇异值;
T-——特征矢量;
e一单点碰摩信号: B一B——全碰摩信号; 不定碰摩信号;
R
emp(∞卜经验风险;
K(薯,X,)——核函数; C1——惩罚因子; y——径向基函数宽度;
V
沈阳航空工业学院硕士学位论文
第一章绪论
1.1课题研究背景 大型旋转机械是典型的科技含量高、技术难度大、对国计民生有重大影响的重大机
械产品,如离心压缩机、航空发动机、核电站核主泵、燃气轮机等。它的技术水平是衡 量制造业发展水平的重要标志,也是工业现代化的基础和经济实力的集中体现。随着现 代生产的发展和科学技术的进步,机械设备的结构越来越复杂,功能越来越完善,其自 动化程度越来越高,这在提高生产效率、降低成本、节约能源和提高质量上有很大好处。 但是随着机械设备向着高性能、高效率发展,动静间隙也逐渐变小,碰摩的可能性就随 之增加。转子与定子的碰摩是旋转机械运行中的常见故障。
在大型高速旋转机械运行中,常常发生转子与定子之间的径向碰摩,特别是在机组 起停过程中,而且转子质量不平衡、热弯曲、轴系不对中以及转子的涡动失稳等其它故 障都可能最终导致动静碰摩。有些碰摩对机组的安全运行影响不大,随着转定子磨损量 增加,碰摩逐渐消失;有些情况则不然,碰摩可能导致故障加重。碰摩引起转轴局部发 热,造成转轴热弯曲,使不平衡振动加剧,并使碰摩进一步加重,如此产生恶性循环, 最终造成大轴的永久性弯曲。碰摩发生时,不仅会影响系统的正常运行,而且碰摩严重 时会导致断轴等恶性事故的发生,造成重大的经济损失。因此,研究旋转机械的碰摩故 障行为和故障特征对诊断碰摩故障、防止弯轴事故及轴系破坏、提高旋转系统动力学性 能都有着非常重大的理论价值和重要的实际意义。
国内外企业和科研机构对旋转机械动静件间的碰摩故障就其机理和辨识方法做了很 多工作,但是在已经具有的方法中,大多是通过对转子系统的动力学分析和系统振动特 性分析来确定和识别碰摩故障【卜21,动力学分析方面往往需要简历复杂的模型,计算量 较大且计算复杂,难以在实际中得到应用,而振动特性分型方面则主要是对振动信号的 时频域分析,识别过程中定性成分较多,难以做到定量和自动识别。因此开展转子系统 碰摩辨识的研究工作、发展新的有效的辨识理论方法具有现实意义何必要性。本文在对 碰摩故障诊断分析的基础上,利用小波包提取奇异值作为特征向量,然后利用支持向量
沈阳航空工业学院硕士学位论文
机进行模式分类,从而实现故障诊断的作用。 1.2碰摩故障的机理分析
随着现代机组向着高性能、高效率发展,动静间隙变小。一个设计合理制造工艺良 好且在正常工况下工作的旋转机械转子系统发生碰摩的情况是比较少的,但是由于下列 原因碰摩往往还是发生:
(1)转子系统中的某些零部件松动或者脱落,会造成旋转机械的转子偏离正常运转状 态,进入碰摩的状态,导致碰摩故障的发生。
(2)由于质量不平衡、不对中(特别是热态轴承标高引起的不对中)、油膜震荡等原因使 轴系振动过大,导致动静部件在通流部分间隙改变从而引起碰摩。非转动部件的不对中 或翘曲也会导致碰摩。
(3)从几何因素上来讲,在高速旋转机械中要求转子的密封性较好,从而来降低润滑油 和气体的泄露。同时由于制造工艺的提升,使得动静件之间的间隙越来越小,设计上的 缺陷、安装过程中的错误操作、没有及时检修等原因,都会导致动静间隙调整不符合规 定,从而导致碰摩的发生。
(4)缸体跑偏、热弯曲或变形也会造成转子偏离正常运转状态。很多研究发现在开机过 程中,上下缸温有时会相差过大,造成缸体的热弯曲变形,也是碰摩弯轴的主要运行原 因之一。
碰摩故障信号分析是一种典型的非线性问题,其发生机理还未完全弄清。一般情况 下,可能发生以下几种形式的碰摩,一种是部分碰摩,包括单点碰摩、不定碰摩。在转 予的一个转动周期内转子和定子间可能接触一次、两次或多次,而另外一种碰摩形式为 整周期碰摩,又称为全周碰摩,在这种情况下,碰摩一旦发生,转子和定子将始终保持 接触。
1.3碰摩的后果
由于上述的这些原因使得旋转机械发生碰摩故障时,转子上的碰摩点会受到一个径 向作用力、一个逆向的切向摩擦力作用。碰摩故障按照其程度,可以分为部分碰摩和全 周碰摩。旋转一周中只有部分弧段接触,则称为部分碰摩;转子转动的一周中始终与静
2
沈阳航空工业学院硕士学位论文
子保持接触,为全周碰摩。其中部分碰摩按照碰摩的次数还可以分为单点碰摩和不定碰 摩。
其中单点碰摩是指一周中发生碰摩的次数为一次,碰摩位置已知。不定碰摩则是指 一周之内碰摩次数未知,碰摩发生的位置也是不确定的。发生全周碰摩的静子在360度 周向都要接触,转子可以是只有部分弧段接触,也可以是全周接触。转子的碰摩会导致 四种物理现象【31:冲击、摩擦、转子刚度改变以及产生振动。
(1)振动效应。动转子与定子碰摩时的碰撞相当于给转子和定子施加了一个瞬态激振 力,能将转子和定子的固有频率激发起来。尽管这个激振力激发的自由振动是衰减的, 但碰摩在每个旋转周期内都产生冲击激励作用,因此在一定条件下有可能使转子的实际 振动成为旋转产生的强迫振动和冲击产生的自由振动的叠加。而且,动静摩擦使得转子 上施加了非线性摩擦力,会使转子产生非线性振动。同时,动静件碰摩会使转子的温度 场发生变化导致热不平衡,从而导致转子的热态弯曲,引起机组振动。
(2)摩擦效应。根据物理知识,我们知道摩擦力是作用在接触点的切向力,摩擦力 与旋转方向相反,其大小主要取决于零部件间的压力、材料质地和它们相对速度的方向。 全周摩擦往往会产生“干摩擦’’现象,引起自激振动,导致机组的正常运行和毁坏。当 和障碍物接触时,正压力及作用于转子上的摩擦力主要受不平衡大小的影响,另外转子 和定子的碰摩程度也会使摩擦力发生变化,例如局部碰摩和全周碰摩产生的摩擦力不一 样。摩擦力会改变转子的转动和进动,它作用的结果先使转速下降,随后当摩擦力去掉 时产生瞬时的扭转振动。在全周摩擦的情形下,很大的摩擦力可能使进动的方向突然发 生变化,由正进动变为连续的后向涡动。处于反进动状态下的转子经受着高频交变应力, 这就可能导致转子和整个机器的毁坏。转子摩擦还会产生热能。因为运动的动能一部分 转变成热能,一部分消耗在接触表面的磨削,所以有能量损耗,这就产生了由于间隙条 件改变而引起的摩擦条件的变化,局部发热可能导致转轴的热变形或密封性的损坏。
(3)系统刚度的改变。旋转机器的刚度决定机器的自然频率,即共振频率。这个刚度 一般是由转轴的刚度、支座的刚度、还有包括轴承及密封的刚度共同决定的。当转轴偶 然同某个静止物接触时,会产生一个新的边界条件,而这种新的边界条件改变了上述旋 转机器的刚度。一般来说刚度的变化量取决于障碍物相对于轴的轴向位置和障碍物的自 身刚度。障碍物通常存在于轴的某一固定位置上,如果与转子产生接触则在每一旋转周 期的一部分时间内或者在保持整周接触时则是连续地影响轴的刚度。
3
沈阳航空工业学院硕士学位论文
(4)冲击效应。华北电力大学针对汽油机的研究表明:碰摩发生时,发生在转轴上有 两种力,其一就是冲击力,即碰撞力,这个力引起碰摩点部件结构的局部压缩变形,并 引起转轴的反弹运动,当产生局部碰摩时这个变形和反弹运动还不严重,但发生全周碰 摩时就会造成机械故障。当转子与固定件相碰的时候,直接的冲击力并不很高,因为进 动的速度相对来说较低,因为进动的速度正比于中心偏移量,而这个偏移量往往不会太 大,而转子的旋转运动(速度正比于轴的旋转半径)产生的影响更显著。冲击发生后转子 的响应中有较复杂的瞬态横向振动和扭转振动,其中扭转振动是由扭矩的突变引起的, 横向反弹运动的方向取决于障碍物相对于转子进动的位置、接触面积和转子圆周速度, 反弹运动可能与原来的运动方向一致,也可能把它变为反进动。冲击后转子的振动是横 向自由振动,也就是频率等于转子自由振动中的一个或者为它们的组合(最可能的是以 最低横向自然频率振动)。这种横向自由振动的响应叠加到旋转运动和强迫振动上去形 成复杂的但经常重复的转子响应。
1.4转子动静碰摩故障特征的研究现状 近年来,国内外许多科技工作者对单_碰摩故障进行大量的研究,主要包括包括建
立碰摩力模型【4‘7】、碰摩转子的动力学特性及故障特征提取【8d3】的研究。Muszynska[141综 述了与碰摩有关的振动现象并给出了有关的一系列论文,并分析了转子与定子间局部碰 摩的物理现象,通过使用周期的阶跃函数,分析展示了分频谐波振动的存在。Betty[15】 对分段线性形式的碰摩情况提出了一个数学模型,理论仿真与试验验证得出了诊断该类 故障的观点。Choi和Noall【16】考虑了一个带轴承间隙因而产生碰摩的刚性轴单质量转子 系统,基于谐波平衡法、DFT和IDFT分析了转子系统的次谐波、谐波和超谐波周期振 动。
褚福磊等研究了油膜轴承转子与静子的碰摩,发现该系统会发生多种周期、拟周期 和混沌振动,考察了转子系统进入和离开混沌的路径。Adams M L等用数值方法分析了 线性刚度和线性阻尼支撑的转子发生动静碰摩时的周期1、周期2、拟周期和混沌等振 动现象,分析了转速、径向间隙和不平衡量的影响,认为机械系统振动进入和离开混沌 的路径包含了重要的故障信息。袁惠群【17】对含非线性碰摩力的碰摩转子系统进行了详细 的理论论证和数值仿真研究,发现大量非线性系统的固有品质,通过与实验分析对比,
4
沈阳航空工业学院硕士学位论文
证明了新模型的合理性,并讨论了速度影响系数对转子系统分岔和混沌的影响。 Gonsalves等用物理实验检验的碰摩转子力学模型研究了一种偏置非线性碰摩转子系统, 数值仿真实验研究了系统的各种运动形态,发现系统参数对系统响应的影响规律,用大 量丰富的图形展示了系统的各种运动状态及这些规律。张思进等在理论上详尽的分析了 非光滑转子系统碰摩的碰擦现象及非光滑转子系统碰摩Poincare映射的周期不动点稳定 性及其吸引域问题。Childs等对碰摩转子的亚谐成分发生原因进行了研究,认为是碰摩 转子的非线性因素引起了运动状态的改变,通过对系统参数的影响分析,看到接触摩擦 对碰摩转子的稳定性有很大影响作用。Wang等研究了一种多自由度非线性转子一轴承 碰摩系统,用FPA算法数值分析碰摩过程各运动阶段和系统参数对系统运动形态的影
响,发现系统参数对系统响应的影响规律。东北大学闻邦椿教授【18】等人对碰摩故障的非 线性动力学进行了理论研究与试验,建立了双盘悬臂转子轴承系统的力学模型、数学模 型和碰摩力模型。
关于耦合故障的特征提取的研究,万方义【19】用谐波小波(HwT)对带有裂纹一碰摩故 障的转子轴承系统进行了动力学研究。数值仿真结果表明HWT能有效地分析这种多非 线性因素的响应并且能详细提取故障特征。Wu等【20】利用三维谱图和支持向量机(SVM) 对复合碰摩故障进行了特征提取,研究表明三维谱图非常适合提取一些故障(特别是碰 摩)的故障征兆,并且能很好的诊断出复合碰摩故障。 陆启韶等采用两种不同截面方法建立的Poincare映射研究分段光滑系统描述的转子
一机壳碰摩系统运动的一般特点、转子碰摩运动随碰摩刚度变化发生分岔的规律和系统 运动性态变化的规律。卢文秀建立了多圆盘碰摩转子系统的实验台,并且设计了一种可 以模拟整周碰摩的机构,研究了碰摩转子的非线性动力学行为。杨积东以裂纹转子碰摩 问题为研究对象,建立了转子系统碰摩与轴裂纹锅合故障的动力学方程,对裂纹和碰摩 这两种具有相似机理和故障特征的祸合故障现象进行分析,采用现代非线性振动理论方 法,系统、深入地解释裂纹转子碰摩系统的一般故障特性及其变化规律。刘耀宗等【21】 通过对机组碰摩故障的大量试验,观测到了工作转速低于一阶临界转速时,转定子局部 碰摩引起的倍频振动:高于一阶临界转速时,局部碰摩引起的分频振动以及某些转速段内 出现异频伪共振现象。刘金献和宋友等分别利用小波和小波包变换对转静件早期碰摩故 障进行诊断。任辉【22】研究转子碰摩混沌响应信号的神经网络分类识别问题,给出了相
5
沈阳航空工业学院硕士学位论文
应的理论分析和计算结果。陈宏针对带故障的悬臂转子系统的非线性动力学进行了研 究,采用非线性有限元方法研究了带有碰摩故障的某核电站主泵转子系统的动力学特 性。
根据资料针对碰摩故障的研究大多是关于其故障的动力学特性或是某一单一故障的 振动特征,对于多种故障的综合诊断研究较少。他们更多的是对碰摩的非线性特性进行 研究,利用数值分析的方法建立碰摩的动力学方程。在实验室模拟不同的碰摩故障,但 动力学分析方面往往需要建立复杂的模型,计算量较大且计算复杂,难以在实际中得到 应用。振动特性分析方面往往则是对振动信号的时频域分析,识别过程定型参数比较多, 难以做到定量和自动识别。因此,开展旋转机械的转子系统碰摩故障类型的模式识别与 辨识的研究工作,发展新的辨识理论方法具有现实的意义和必要性。因此本课题针对这 一现状,从智能诊断技术的角度,对碰摩故障中的单点碰摩、不定碰摩和全周碰摩进行 研究。利用小波包分解对提取的信号进行处理,在此基础上得到特征向量,作为支持向 量机的学习和测试样本来检测支持向量机作为分类器的效果。同时还对神经网络和支持 向量机在碰摩故障模式分类中的应用进行了对比。
1.5本论文主要工作
1.5.1本文的主要目标
对碰摩故障诊断分析的基础上,利用小波包提取奇异值作为特征向型231,然后利用 支持
向量机进行模式分类,从而实现故障诊断的作用。同时本文还研究了神经网络的分 类效果,最后利用Mat lab进行系统的仿真,比较上述方法的效果。 1.5.2本文的章节安排
本文第二章为小波包理论,分析了多分辨率的定义、小波包的分解原理,以及利用 小波包对信号处理的详细方法,本文采取dbl小波包进行3层分解,对所得系数矩阵求 取最大奇异值;第三章为支持向量机,系统地叙述了支持向量机的分类原理及优势,由 于其分类器构造的复杂性,本文选取了一种分类器并通过试验证明该分类器的有效性; 第四章介绍了用于验证本文提出方法有效性的系统,介绍了试验的设备及具体参数,详 细说明了信号的产生、提取和预处理等过程;第五章介绍了本文系统开发选取的软件环 境和开发语言Mat lab和Visual C++,分析了所选语言的优势及特点,介绍了VC调用
6
沈阳航空工业学院硕士学位论文
应的理论分析和计算结果。陈宏针对带故障的悬臂转子系统的非线性动力学进行了研 究,采用非线性有限元方法研究了带有碰摩故障的某核电站主泵转子系统的动力学特 性。
根据资料针对碰摩故障的研究大多是关于其故障的动力学特性或是某一单一故障的 振动特征,对于多种故障的综合诊断研究较少。他们更多的是对碰摩的非线性特性进行 研究,利用数值分析的方法建立碰摩的动力学方程。在实验室模拟不同的碰摩故障,但 动力学分析方面往往需要建立复杂的模型,计算量较大且计算复杂,难以在实际中得到 应用。振动特性分析方面往往则是对振动信号的时频域分析,识别过程定型参数比较多, 难以做到定量和自动识别。因此,开展旋转机械的转子系统碰摩故障类型的模式识别与 辨识的研究工作,发展新的辨识理论方法具有现实的意义和必要性。因此本课题针对这 一现状,从智能诊断技术的角度,对碰摩故障中的单点碰摩、不定碰摩和全周碰摩进行 研究。利用小波包分解对提取的信号进行处理,在此基础上得到特征向量,作为支持向 量机的学习和测试样本来检测支持向量机作为分类器的效果。同时还对神经网络和支持 向量机在碰摩故障模式分类中的应用进行了对比。
1.5本论文主要工作
1.5.1本文的主要目标
对碰摩故障诊断分析的基础上,利用小波包提取奇异值作为特征向型231,然后利用 支
持向量机进行模式分类,从而实现故障诊断的作用。同时本文还研究了神经网络的分 类效果,最后利用Mat lab进行系统的仿真,比较上述方法的效果。 1.5.2本文的章节安排
本文第二章为小波包理论,分析了多分辨率的定义、小波包的分解原理,以及利用 小波包对信号处理的详细方法,本文采取dbl小波包进行3层分解,对所得系数矩阵求 取最大奇异值;第三章为支持向量机,系统地叙述了支持向量机的分类原理及优势,由 于其分类器构造的复杂性,本文选取了一种分类器并通过试验证明该分类器的有效性; 第四章介绍了用于验证本文提出方法有效性的系统,介绍了试验的设备及具体参数,详 细说明了信号的产生、提取和预处理等过程;第五章介绍了本文系统开发选取的软件环 境和开发语言Mat lab和Visual C++,分析了所选语言的优势及特点,介绍了VC调用
6
沈阳航空工业学院硕士学位论文
Mat lab语言的具体操作方法,最后详细介绍了本文开发的系统;第六章对本文进行了 总结和工作的展望,总结了本文中需完善或者尚未解决的问题。
7
沈阳航空工业学院硕士学位论文
第二章小波分析理论
2.1二进小波变换
为了减少小波变换系数冗余度,我们将小波基函数妒 .三{f,(尘二)的口,f限定在一
些离散点上进行取值。 (1)尺度上的离散化。目前通行的方法是对尺度进行幂数级离散化,即令a取
a=口。o口0>O,mEZ,此时对应的小波函数是
一,
,,k E Z。
妒0,七。。(t)dt,,=o,1,2 ,七∈z妒o)=2 2妒(2-‘t一七),
(2)位移的离散化。通常对f进行均匀化离散取值,以覆盖整个时间轴。为防止信 息的丢失,要求采样间隔f满足Nyquist采样定理,采样率大于等于该尺度下频率通带 的二倍。所以每当m增加1时,尺度a增加一倍,对应的频率减少一半,可见采样率可
以降低一半而不导致信息的丢失(带通信号的采样率决定于其带宽,而不是决定于其频
率上限)。所以在尺度j『下,由于妒(口i’t)得带宽是妒(f)的口:倍,因此采样间隔可以扩
大口:,同时不引起信息的丢失。这样妒。,O)就改成:aoj/劬k7p一硪%)】记为妒口i 7,‰。 离散小波变换定义为:
wTr(口:,kvo)=,,(f砂乏,fro(t)dt,,=o,1 2·,k
E Z
如果取离散栅格%=2,ro;1,即相当于连续小波只在尺度日上进行量化,平移参数f仍
然连续变化不被离散,我们称这类小波为二进小波,表示为:
妒≯,,o)=2Tg,(譬),二进小波介于连续小波和离散小波之问,由于它只对尺度参量进 行离散化,在时间域上的平移量仍保持着连续的变化,所以二进小波变换具有连续小波 变换的时移共蛮性,这使得它在奇异性柃测、图像处理方面都十分有用。但是二进小波
8
沈阳航空工业学院硕士学位论文
的信息量仍是冗余的,从数值计算及数据压缩等角度来看,因此希望减小它们的冗余量, 直至得到一组正交基,称之为小波正交基。构造正交基的一般方法是,在离散框架的基
一,
础上,取ao=2,ro=1,,贝0妒『't(f);2 2妒(2-Jt一尼),j『,k∈z。
2.2多分辨率分析 多分辨率分析又称多尺度分析,即由粗到细的在多尺度上对事物进行处理,以便更
好的认识事物的本质。先从函数空间的剖分上引入多分辨率的概念,把平方可积的函数 f(t)EL2俾)看成是某一逐级逼近的极限情况。每级逼近都是用某一平滑函数≯O)对,O) 做平滑的结果,在逐级逼近时平滑函数≯19f)也做逐级伸缩,这就是“多分辨率\",即用 不同分辨率来逐级逼近待分析函数f(t)。
多分辨分析的思想源于计算机视觉理论,它又被称之为多尺度分析。从机器视觉的 角度而言,仅从灰度信息理解一幅图像中的物体是很困难的。为了能够更好的将某一物 体与其他的物体分开,描述这一局部变化的尺度应该与物体的大小相关联匹配。然而在 一般的图像中,需要理解的各种结构拥有不同的大小,因此不可能预先定一个最佳的分 辨率来描述它们。为了解决这一难题,在计算机视觉中利用不同的分辨率来处理图像中
不同信息,将图像在各种分辨率下的细节提取出来,得到一个拥有不同分辨率yf(,∈z) 的图像细节序列;其中yi分辨率的图像细节定义为:在分辨yj下对图像的逼近和在分辨 率■一,下对图像的逼近之差。这种对分辨率的表示提供了一种图像信息简单的分层描述, 在不同的分辨率下,图像的细节刻划了不同尺度的物理结构。在粗分辨率时,这些细节 表示了大的结构信息,提供了图像的“上下文(context)”描述,因此,很自然地应该先 分析这些信息,然后逐渐增加分析精度。这种由粗到细的分析过程已经广泛的应用在立
体视觉匹配和模糊匹配中,而且事实表明这与人眼的低视觉处理是很相似的。考虑到计 算机和推导的方便以及人眼的视觉特性,分辨率的层次划分一般采用倍频划分,即分辨
率取值为2,。 小波分析已成为现在研究最广的多尺度分析方法。小波分析的多分辨率分析
的基本
9
沈阳航空工业学院硕士学位论文
思想是把信号投影到一组相互正交的小波函数构成的子空间上,这样形成了信号在不同 尺度上的展开,从而提取了信号在不同频带的特征,同时保留了信号在各尺度上的特征。 小波分析只对信号的低频部分进行分频,高频部分保留不动。S.Mallat和Y.Meyer在1986 年提出了多分辨率的概念,它将此前的所有正交小波基的构造统一了起来,令小波理论 产生了突破性的进展。同时,在此理论基础上,S.Mallat引入一
种计算离散栅格上小波
变换的快速算法,即Mallat算法。它可以避免a值越大,对妒O)的采样越密的缺点。这 一算法在小波变换中的地位相当于快速傅里叶变换在经典傅里叶变换中的地位。
2.3小波包变换
多分辨率分析可以对信号进行有效的时频分解,但由于其尺度是按二进制变化的, 所以在高频频段其频率分辨率较差,而在低频频段其时间分辨率较差。之前的小波分解 就是无法进一步对信号的高频部分进行继续处理,而小波包分析(Wavelet
Packet
Analysis)
能够为信号提供一种更加精细的分析方法【肄261,它将频带进行多层次划分,对多分辨分 析没有细分的高频部分进一步分解,并能够根据被分析信号的特征,自适应地选择相应 频带,使之与信号频谱相匹配。小波包分解是一个完全二叉树的分解,而小波分解只有 左子树,因此小波包分析往往又被形象地称之为“金字塔分解”。 2.3.1小波包定义
在多分辨率分析中,L2(R)2 Wj,表明多分辨率分析是按照不同的尺度因子J把 Hilbert空间L2(R)分解为所有子空间W i(j∈Z)的正交的和。其中,W j为小波函数妒(t)的
闭包(小波子空间)。现在,希望进一步对小波子空间W i按照二进制分式进行频率的细
分,以达到提高频率分辨率的目的。一种自然的做法是将尺度空间V;和小波子空间W
i
用一个新的子空间统一起来表征,若令
倦毫,包’
眨1,
则空间L2(R)的正交分解Y+,=Vj o wj即可用U;的解统一为
10
沈阳航空工业学院硕士学位论文
思想是把信号投影到一组相互正交的小波函数构成的子空间上,这样形成了信号在不同 尺度上的展开,从而提取了信号在不同频带的特征,同时保留了信号在各尺度上的特征。 小波分析只对信号的低频部分进行分频,高频部分保留不动。S.Mallat和Y.Meyer在1986 年提出了多分辨率的概念,它将此前的所有正交小波基的构造统一了起来,令小波理论 产生了突破性的进展。同时,在此理论基础上,S.Mallat引入一种计算离散栅格上小波
变换的快速算法,即Mallat算法。它可以避免a值越大,对妒O)的采样越密的缺点。这 一算法在小波变换中的地位相当于快速傅里叶变换在经典傅里叶变换中的地位。
2.3小波包变换
多分辨率分析可以对信号进行有效的时频分解,但由于其尺度是按二进制变化的, 所以在高频频段其频率分辨率较差,而在低频频段其时间分辨率较差。之前的小波分解 就是无法进一步对信号的高频部分进行继续处理,而小波包分析(Wavelet
Packet
Analysis)
能够为信号提供一种更加精细的分析方法【肄261,它将频带进行多层次划分,对多分辨分 析没有细分的高频部分进一步分解,并能够根据被分析信号的特征,自适应地选择相应 频带,使之与信号频谱相匹配。小波包分解是一个完全二叉树的分解,而小波分解只有 左子树,因此小波包分析往往又被形象地称之为“金字塔分解”。 2.3.1小波包定义
在多分辨率分析中,L2(R)2 Wj,表明多分辨率分析是按照不同的尺度因子J把 Hilbert空间L2(R)分解为所有子空间W i(j∈Z)的正交的和。其中,W j为小波函数妒(t)的
闭包(小波子空间)。现在,希望进一步对小波子空间W i按照二进制分式进行频率的细
分,以达到提高频率分辨率的目的。一种自然的做法是将尺度空间V;和小波子空间W
i
用一个新的子空间统一起来表征,若令
倦毫,包’
眨1,
则空间L2(R)的正交分解Y+,=Vj o wj即可用U;的解统一为
10
沈阳航空工业学院硕士学位论文
uoj+1=U?ou: j∈z (2.2) 定义于至I司U?是函数U。(t)的闭包空间,而u;。是函数Un(t)的闭包空间,并令u。(t)满 足下面的双尺度方程:
f u(t)=√2∑h(k)Uo(2t-k)
l 包
卜1)_压丕g(k)uJ2t-k)@3’
式中,g(k)=(-1)kh(1_k),即两系数也具有正交关系。当n=O时,以上两式直接给
出
'Uo(t)ffi薹hi,Uo伍咄’
卜皇荟aUoa*)
而在多分辨率中,妒(t)和妒(t)满足双尺度方程:
@4’
P薹啪吨){hk)∈12
p 2驴㈣炉2眩5,
上两式相比较,Uo(t)和Ha(t)分别还原为尺度函数妒(t)和小波函数妒(t)。式(2.4)是式(2.3) 的等价表示。把这种等价表示推广到n∈Z(非负)的情况,即得(2.2)的等价表示为
un+,2 uj2“ou}+1 J,n∈z
(2.6)
由式(2)构造的序列{u。(t))(n∈z)称为由基函数u。(t)=≯(t)确定的正交小波包。由于
≯(t)由h。唯一确定,所以又称{u。(t))(n∈z)关于序列{h。)的正交小波包。 2.3.2小波包的空间分解与重构 令{u。(t))(n∈z)是关于h。的小波包族,考虑用下列方式生成子空间族。现在令
n=1,2, ;j-1,2, ,并对(2.6)式作迭代分解,则有
沈阳航空工业学院硕士学位论文
V U
u = 3.r
,I|,U :¨o文U
2
= u U =:n,n U o —r二,o.心,.心2
—划唯啦~
(2.7)
因此,很容易得到小波子空间wj的各种分解如下:
W=u2j-。ou;。
w产u盖ou毛ou盐ouj:
Wj=uj'k2k彬uj2.kk+1 o ourl Wj=u芋。u≯1。 。u≯1 (2.8)
小波包可以对Wj进一步分解,从而提高频率分辨率,是一种比多分辨分析更加精细的分解方法,具有更好的时频特性。下图2-1为小波分解和小波包分解比较示意图。
第0层 第0层 x。x:x。x。|【5X6X7X8
/,\
第1层 第1层
S1S2S3S4 dsd6d7d8
八
第2层 第2层
SSl SS2 dslds2 sd。sd:ldd,dd:
八
第3层 第3层 }sss dss sds dds ssd dsd sdd ddd
图2—1 小波分解和小波包分解比较示意图
定义一:函数妒p)∈r僻)为尺度函数,若其经过整数平移k和尺度j上的伸缩,得到一个尺度和位移均可变化的函数集合:
i
颤(f)=2 2≯(2一t—k)
定义二:h。。、k是多分辨率分析中的滤波器系数,由尺度函数≯O)和小波函数妒(f)决12
沈阳航空工业学院硕士学位论文
定,与具体尺度无关,无论对哪两个相邻级及兵值郡相l司。
定义三:设妒O)为为一平方可积函数,飘p(t)EL2(R),若其傅里叶变换妒(∞)满足条件:
G=料抓∞
则称缈(f))为一个基本小波或小波母函数,称上式为小波函数的可容许条件。将母小波
函数妒O)进行伸缩和平移后,就可以得到函数妒\"(f):
‰m去a妒仁a)口'倒.口>o
V
称妒。。O)为依赖于参数口,z的小波基函数。
那么信号f(t)的正交小波分解公式为:
p.『qf(t)=pJ厂O)+Dj厂O)
(2·9)
其中:pj厂o)=∑《D嘭t(f) DJ(t)=∑d:7劬弦o)系数《n和d:力的递推公式为:
P=∑‰Ⅲ《。1
1df7’。:;:红c:一一t,】《一1 正交小波的重构公式是:《D=乏J}10(。一款)《+1+;Jlzl(mt一?“
(2.1。)
设G?厂◇)∈u?,则G;厂o)2;d J'n’方%(2-it-1)(2为整数位移)
因为G?厂O)=G嚣。厂O)+G嚣1厂O),所以小波包系数递推公式为:
F勘2;hot:,-k)d_
【dtj+l,2n+l=2军啊c:z—t,d?’”
(2.11) (2·12) 本文利小波包的重构公式是:d/”=∑【‰(Mt)d J'n+Jlll(心t一?“卫”1】 用小波旬。对信号进行分解,在得到系数矩阵的基础上进行最大奇异值求取。
13
沈阳航空工业学院硕士学位论文
本文采集的碰摩故障信号为非线性的信号,而小波包对不连续的、时变的、非平稳的信 号具有很多优点。它将信号分解到不同频带内进行处理,实质上是多带通滤波器。而其 重构一般用于信号的去噪,有选择的对某些频段进行阈值量化,再重构得到去除噪声后
的信号。信号厂O)的小波包分解,就是将厂O)投影到一系列的正交小波包基上,在每 个小波包基上的投影系数d?,”之间的差别越大,就越能刻画信号厂(f)的特征。若某个尺 度层上仅有少数d/’,”很大,那么这少数几个系数就代表了信号厂(f)的特征,与此对应的
小波包基就是较优的基。但是随着尺度层的增加,最低层的分频段的个数也随之增加, 这就给信号频率的分析和描述带来了很大的困难。考虑到故障信号能量只落在几个单独 的频段内,从而可以通过对小波包最优基的搜索来简化分析过程。最优基的搜索标准是 熵准则,即用尽量少的投影系数来尽可能地描述信息,以达到特征信息提取的目的。目
前用的较多的是香农(Shannon)熵,即定义序?U x-{x,>的价值函数为:
M(工)=一∑Pj lg p
J
其中p,;Xjl2川zn且pJ=o时,令pJ培pJ=0。若价值函数M越小,则投影系数的差别
就越大,对应的小波包基就越好。 2.3.3常用的小波基函数
与标准傅里叶变换相比,小波变换中所用到的小波函数具有不唯一性,即具有多样 性。一般来说小波基具有以下性质:
(1)紧支性、衰减性; (2)光滑型和正规型; (3)对称性和线性相位; (4)正交性。
小波基的这些的不同决定了小波的千差万别。在在工程应用中,选用不同的小波基 分析系统同一个问题会产生不同的结果,目前主要是采用比较选取最优小波基的办法。 在众多的小波基函数的家族中,有一些小波函数被实践证明是非常有用的,如 Daubechies(dbN)小波系,Mofletd、波,Mexicand,波和Meyer小波等。其中dbN小波是最
基础也是最常用的小波函数之一,也是本文在正交离散小波变换中采用的分析小波,本
14
沈阳航空工业学院硕士学位论文
文采用dbld,波对信号进行3层小波包分解。Daubechiesdx波是由世界著名的小波分析学 者Inrid Daubechies构造的离散正交小波,一般简写为dbN,N是小波的阶数。小波函数 和尺度函数的有效支撑长度为2N.1,小波函数的消失矩阶数为N。除Tdbl(RPhaartJ,波)
外,dbN不具对称性,也没有明确的表达式。 对于小波基的选取尚没有标准,但是在清华大学《声发射技术在旋转机械碰摩故障
中的应用》一文中提出关于小波基函数的选取及优化:可以利用基于信息熵的参数优化, 为事实上,对于~个单一频率的周期信号,除了包含这个典型信号频率的小波尺度, 有其他小波系数几乎都是零,对于这个特殊的尺度,小波系数将接近于1,而此时信 号的熵值将接近于O或者是一个很小的值。相反,有一个完全无序的过程生成的信号(例白噪声信号),在所有的频段上都有小波系数,而且数值大小并无明显差别,此时信 号的熵值也就将接近于1;同时信号的概率分布越接近这种无序的分布,其熵值也就越 大,信号熵值的大小反映了概率分布的均匀性。如果把小波变换的小树矩阵处理成立个 概率分布序列,由它计算得到的熵值就反映了这个系数矩阵的稀疏程度,熵值越小,就 说明小波基函数和信号的波形吻合的越好。
2.4矩阵奇异值
2.4.1奇异值定义 AT表示A的转置,AH表示矩阵A的共轭转置,即AH:Ar;
定义一: 设AEC““。若A满足AⅣA=I或者A~=A日,则称A为酉矩阵。 定义二:
设彳∈C~”(,>o),AUA的特征值为凡≥九2 ≥丸≥4+。: 九:0,则称,
q=√A G=1,2, ,,z)为A的奇异值。 2.4.2奇异值特征
尝试从信号的小波包变换系数矩阵中提取矩阵的奇异值作为信号的特征,构建特征 量。因为矩阵的奇异值具有如下两个特征:
(1)矩阵的奇异值具有非常好的稳定性,当矩阵中的元素发生小的变化时,奇异值的变15
即所 如
矢
沈阳航空工业学院硕士学位论文
文采用dbld,波对信号进行3层小波包分解。Daubechiesdx波是由世界著名的小波分析学 者Inrid Daubechies构造的离散正交小波,一般简写为dbN,N是小波的阶数。小波函数 和尺度函数的有效支撑长度为2N.1,小波函数的消失矩阶数为N。除Tdbl(RPhaartJ,波)
外,dbN不具对称性,也没有明确的表达式。 对于小波基的选取尚没有标准,但是在清华大学《声发射技术在旋转机械碰摩故障
中的应用》一文中提出关于小波基函数的选取及优化:可以利用基于信息熵的参数优化,即为事实上,对于~个单一频率的周期信号,除了包含这个典型信号频率的小波尺度, 所有其他小波系数几乎都是零,对于这个特殊的尺度,小波系数将接近于1,而此时信号的熵值将接近于O或者是一个很小的值。相反,有一个完全无序的过程生成的信号(例如白噪声信号),在所有的频段上都有小波系数,而且数值大小并无明显差别,此时信号的熵值也就将接近于1;同时信号的概率分布越接近这种无序的分布,其熵值也就越大,信号熵值的大小反映了概率分布的均匀性。如果把小波变换的小树矩阵处理成立个 概率分布序列,由它计算得到的熵值就反映了这个系数矩阵的稀疏程度,熵值越小,就 说明小波基函数和信号的波形吻合的越好。
2.4矩阵奇异值
2.4.1奇异值定义 AT表示A的转置,AH表示矩阵A的共轭转置,即AH:Ar;
定义一: 设AEC““。若A满足AⅣA=I或者A~=A日,则称A为酉矩阵。 定义二:
设彳∈C~”(,>o),AUA的特征值为凡≥九2 ≥丸≥4+。: 九:0,则称,
q=√A G=1,2, ,,z)为A的奇异值。 2.4.2奇异值特征
尝试从信号的小波包变换系数矩阵中提取矩阵的奇异值作为信号的特征,构建特征 矢量。因为矩阵的奇异值具有如下两个特征:
(1)矩阵的奇异值具有非常好的稳定性,当矩阵中的元素发生小的变化时,奇异值的变
15
沈阳航空工业学院硕士学位论文
化很小; (2)奇异值是矩阵所固有的特征,奇异值可充分地反映矩阵中所含的信息。
2.4.3奇异值分解
设彳∈Cr\"煳r>0),则存在m阶酉矩阵u和n阶酉矩阵y,使得
ny=(苇三), ㈦㈣
其中∑=diag(%,吼, ,q),qG=1’2, ,,.)是A的非零奇异值。将上式改写成
叫毛暑卜 和分 类样本数据。
㈦Ⅲ
称之为A的奇异值分解。在mat lab中利用函数svd进行奇异值分解。女HV=svd(X),V为 矩阵x的奇异值向量。本文在此基础上再求取V的最大值,作为支持向量机的训练2.5碰摩信号的小波包提取特征向量算法 由于小波分解对高频分量不能进一步进行分析,因此使用小波分解进行碰摩故障诊
断时,由于频率分辨率的局限性,使其不能充分反映信号的高频特征,不能提供足够的 信息量,无法提取更准确的碰摩故障特征,从而造成故障诊断的准确性不高。在悬臂系 统发生故障时,产生的信号往往含有大量的非平稳成分,输出信号在各频率波段中的表 现也不同。小波包分析方法可以把不同频率的信号分解到不同的频带中,提高时频分辨 率,从而实现故障特征的提取。采用小波包频带能量能够建立与当前设备运行状态的对 应关系,通过提取任意频率段内的信息成分,可再现该频率成分的振动特征,所以利用 小波包分解得到频段系数矩阵,分别为求出矩阵的最大奇异值值。下图为利用dbl小波 包进行3层分解重构得到的频段系数矩阵。
16
沈阳航空工业学院硕士学位论文
每 e 尊 q 2000
1000
。 卜”斗静㈦拇一仁
采样点糯4 d5 1 1 .1000
—2000
o 2 o 1 2 x o 1 2 x o 1 2
104 104 1
x 104 d8
40 霎 2q 一20 兰
饕
妯卜{2兰*盼{:;|一静扣j
oo厂——————] 40广—————] d6 d7 oo厂———]
—40 —1 OO 一50} L————————。—j—40 :雕 j 一20}_| o L————————.——————J一1 1 1 ·50} 00 L——————。—j1 键
o 1 o 1 2 o 1 2 2 2
采样寂糯4
×104 x 10· x 10一
图2-2频段系数矩阵
小波包提取特征向量步骤: 1.用紧支撑正交dbldx波包分别对试验中采集的信号作3级尺
度分解,图2.2为全碰
摩故障信号的小波包分解系数图。 2.解出频段系数矩阵的最大奇异值。对于本试验,利用四种故障状态下的信号进
行3级小波包,取第三级分解频段系数的最大奇异值A构成的特征矢量 T=[4,4,...,4],见下表2—1,其中B为全碰摩信号,c为单点碰摩信号,E为不定碰摩 信号:
表2.1 dbl小波包提取的最大奇异值
1 栅 黜& 巧8
一3 2
3 4
胤雠姗 姗喜詈m溉㈣啪
9 4
5
甜
6 7
8 埘斟m 虬 抛Ⅲ瑚0 鳃; 巧屹
矽
17
沈阳航空工业学院硕士学位论文
第三章支持向量机理论与算法
3.1引言
在现有分类器中,BP神经网络应用较为广泛。比起早期的神经网络,BP网络无论在 网络理论还是在网络性能方面都更加成熟。BP神经网络的突出优点就是具有很强的非线 性映射能力和柔性的网络结构。网络的隐含层数、各层的处理单元数及网络学习系数可 根据具体情况任意设定,并且随着结构的差异其性能也有所不同。但是,BP网络并不是 一个十分完善的网络,它存在以下一些主要缺陷:
(1)网络训练需要大量的学习样本,但是在实际应用中样本的数量往往是有限的,而 支持向量机在小样本学习时则具有很大的优势。
(2)不能保证收敛到全局最小点,易产生局部极小值点。BP算法本质上是以误差平 方和的最小值为目标,用梯度法求其最小值,因此当误差平方和函数不满足正定要求时, 就会产生局部极小点。
(3)对于能否尽量选择合适的隐含层神经元个数这一问题,尚无理论上的指导,而是 根据经验确定,需要试验性的取值比较。因此,网络往往有很大的冗余性,无形中也增 加了网络学习的时问。
(4)学习收敛速度太慢,即使一个比较简单的问题,也需要几百次甚至上千次的学习 才能收敛,容易产生过学习或者欠学习问题。
(5)网络的学习和记忆具有不稳定性。一个已训练结束的BP网络,当给它提供新的 记
忆模式时,将使已有的连接权打乱,导致已记忆的学习模式的信息消失,因此必须将 原来的学习模式连同新加入的新学习模式一起重新进行训练。
SVM在工业工程领域的应用研究正受到越来越多的关注,在人脸识别、概率密度的 估计、奇异性检测、生物信息学、故障诊断等方面得到越来越广泛的应用。在故障诊断 领域,目前SVM已应用于旋转机械故障诊断、发动机故障诊断、滚动轴承故障诊断、工 业过程故障诊断、液压系统故障诊断等方面。从本质上讲,故障诊断技术是一个模式分 类与识别问题,即把系统的运行状态分为正常和异常两类。而异常信号样本究竟属于哪
!8
沈阳航空工业学院硕士学位论文
种故障,这本身又是一个模式识别问题。 3.2支持向量机理论
Vector Machine,SVM)是由Vladimir 支持向量机(Support N.Vapnik及其合作者提
出的一种基于统计学习理论的机器学习方法,是对线性判别函数的改进。核心思想是令 学习机器与有限的训练样本相适应,例如在二维中适当的选择分离线,使得支持向量距 分类线的距离最小,高维空间中则是寻找最佳超平面,原则同样还是令支持向量距离分类超平面的距离最小化。它较好地解决了小样本、非线性和高维模式识别等实际问题,并克服了神经网络学习方法中网络结构难以确定、收敛速度慢、局部极点小、过学习与欠学习、训练时需要大量数据样本等不足,大大提高了学习方法的推广能力,它已被成功应用于模式识别、信用估计、数值分析、回归分析、故障诊断和系统可靠性分析等领域,成为当前机器学习领域的研究热点。
3.2.1最优超平面 支持向量机【29。32】中最简单也是最早提出的模型是最大间隔分类器,
它也是SVM的主
要模块,展示了这类学习机器的关键特征。最优分类超平面只能用于特征空间中线性可分的数据,因此不能在许多实际问题中使用,而支持向量机正是由求解非线性可分情况下的最优超平面发展而来的。
K(X1,X
图3.1支持向量机示意图
上图3.1中,Xi代表输入,aiyi代表权值,K为核函数。最优分类超平面在保证将两19
沈阳航空工业学院硕士学位论文
种故障,这本身又是一个模式识别问题。 3.2支持向量机理论
Vector Machine,SVM)是由Vladimir 支持向量机(Support N.Vapnik及其合作者提
出的一种基于统计学习理论的机器学习方法,是对线性判别函数的改进。核心思想是令 学习机器与有限的训练样本相适应,例如在二维中适当的选择分离线,使得支持向量距 分类线的距离最小,高维空间中则是寻找最佳超平面,原则同样还是令支持向量距离分类超平面的距离最小化。它较好地解决了小样本、非线性和高维模式识别等实际问题, 并克服了神经网络学习方法中网络结构难以确定、收敛速度慢、局部极点小、过学习与 欠学习、训练时需要大量数据样本等不足,大大提高了学习方法的推广能力,它已被成 功应用于模式识别、信用估计、数值分析、回归分析、故障诊断和系统可靠性分析等领 域,成为当前机器学习领域的研究热点。
3.2.1最优超平面 支持向量机【29。32】中最简单也是最早提出的模型是最大间隔分类器,它也是SVM的主
要模块,展示了这类学习机器的关键特征。最优分类超平面只能用于特征空间中线性可分的数据,因此不能在许多实际问题中使用,而支持向量机正是由求解非线性可分情况下的最优超平面发展而来的。
K(X1,X
图3.1支持向量机示意图
上图3.1中,Xi代表输入,aiyi代表权值,K为核函数。最优分类超平面在保证将两19
沈阳航空工业学院硕士学位论文
类样本无错误分开的情况下,使得两类的分类距离最大。 在保证经验风险最小Remp(∞)=0
的同时,使推广性的界中的置信范围≯Q/咒)最小,
从而使真实风险R(∞)最小。其基本思想可用图3.2所示的两维情况来说明。
H1 ^
、,
H2
ma91n
图3.2最优分类面示意图
假设对于样本集瓴,Y,),@:,Y:),...瓴,儿),z∈彤,咒∈{一1,1),其中鼍(f=1,2 ,,1)为样本 模式向量,而y;∈{一1,1)为分类的训练目标。支持向量机试图寻找一个最优超平面,使它 的分类间隔最大。首先介绍支持向量机在两类模式分类应用中的原理。图3.2中圆形和 三角形分别表示两类样本,H为把两类没有错误地分开的分类线,H1、H2分别为过两 类样本中距离分类线最近且平行于分类线的直线,它们之间的距离叫做分类间隔。设分 类线方程为
z·∞+6=o,.y∈{一1,1J,Yf(,oxi+6)】≥o,f=1, ,,l,
则分类间隔为2川∞Il,使分类间隔最大等价于使恻l最小,因此满足此条件且使些监2 最小的分类线就是最优分类线,H1,H2上的训练样本点为支持向量。支持向量机通过 对分类间隔最大化来控制其泛化能力,这正是支持向量机的特色。将二维空问推广到高 维空间,最优分类线就成为最优分类面,然后转为最优超平面,这样距离最优分类线、 分类面、分类超平面的点就成为该支持向量机的支持向量。
20
沈阳航空工业学院硕士学位论文
3.2.2核函数 现实世界的训练样本一般不是线性可分的,如何将对线性不可分的样本数据进行分
类?解决方法就是需要通过非线性变换将输入空问变换到一个高维空问,在这个新空间 中求取最优线性分类面,而正恰恰正是核函数(kernel Functions)的功能。
转化
输入空问
特征空间
图3.3核函数空间变抉
在最优分类面中用适当的内积核函数K也,x』)就可以实现从低维空间向高维空间的 映射,从而实现某一非线性变换后的线性分类,而计算复杂度却没有增加。这里函数
K(鼍,x』)被称为核(Kemel)函数,采用不同的核函数将导致分类面在样本空间的不同 形式。常用的核函数有:
(1)多项式核函数 K(t,x,)=((五‘zj)+目)4d一1,2,
(2)RBF(Radial Basis Function)核函数
K(xi,xj)=exp(掣,
(3)Sigmoid核函数 K(鼍,x,)=tanhG6(xi‘z,)+0)
21
沈阳航空工业学院硕士学位论文
(4)双益正切核函数:
K(x,xi)=tanh[a(xiz)+6】
由于径向基函数的每个基函数中心对应一个支持向量,且输出权值由算法本身自动 确定,因此本文选取RBF核函数。并且通过对比不同的核函数,也证明了径向基函数 选择的合理性。在试验中验证了对于本文的训练样本分类可以取得很好的效果。但 Vapnik等人研究指出,不同的核函数对支持向量机性能的影响不大,没有其参数径向基函数宽度),和惩罚因子C1的影响重要。目前关于如何确定SVM参数的文章不多,它作为一种新兴的学习机器,确实存在一些需要完善的地方,由于没有理论上的指导,传统的参数选取都是通过反复的试验,直到选出令人满意的解。 3.3基于分类的支持向量机的碰摩故障识别算法
支持向量机【33甾】不能直接应用于多类问题分类,对于多类模式识别问题,SVM可 通过两类问题的组合来实现。支持向量机和传统的分类算法相比,在防止训练过学习、 运
算速度和结果精度等方面都有着明显的优越性。随着对支持向量机研究的深入,许多 研究人员提出了一些支持向量机的变形算法。如Westont在1998年提出的多类算法为代表,它将多个分类面对参数构造新模型的目标函数,通过求解目标函数的最优化,“一次性\"实现多类分类;另外一些学者通过某种方式构造一系列的两类分类器并将它们组合在一起实现多类分类:
(1)1对多算法(one-versus-rest,简称l—V—r) (2)1对
1算法(one.versus-oile,简称1-v一1) (3)导向无环图算法(Directed Acyclic Graph,DAG 下面是以构造一系列两类支持向量机分类器的算法:
(1)“一对多”(1.v.R,One-against-Rest)算法。这是由Vapnik给出的最早的sVM多元分类算法,是联合若干个二元分类器组成一个多元分类器。对于N类分类问题,该方法需要建立K/1'-SVM。第1个SVM的训练样本是把第1个类别的所有样本标记为一类,其它 所有类别的样本标记为另一类。对一个新样本所属类别的最终判断是取K个SVM中输出 值最大的那个类别。
沈阳航空工业学院硕士学位论文
(2)“一对一”(1.v.1,one—versus-一one)算法。这是Knerr提出的SVM多元分类算 法,每个两类分类器只用K类中的两类训练样本进行训练,这样共构造出K(K-1)/2个 两类分类器,在每两类之间训练一个SVM将彼此分开。在分类过程中,采用“投票法’’, 即将样本输入某个分类器,该分类器的分类结果如果是属于第m类,则给第m类加一票。 所
有分类器均对数据分类后,哪一类的得票最多,就判定数据属于哪一类。也就是说, 采用多元分类器训练数据样本后,在预测新样本时,使用成对的SVM进行比较,每次产 生一个优胜者,即获得一个类别,然后在得到的类别中再进行比较,直至最后仅剩一个 优胜者。预测新样本时两类之问比较获胜次数最多的类,即为新样本所属的故障类别。
(3)DAGSVM(Directed Acyclic Graph SVM)算法。其训练阶段类似于一对一,构造K (K-1)/2个两类SVM分类器。但是在分类过程中,这些分类器构成一棵树,未知数据 从根节点的SVM分类器开始测试,经过若干次二分分类后到达叶子节点,即得到最终分 类结果,如下图3.4所示。
非
图3.4 DAG分类器图
但解决多元分类问题的计算量太大,对这些方法使用大规模数据的对比还没有真正 的实现。特别是在一步解决多元分类SVM方法中,需要解决一个更大的优化问题,因 此迄今为止实验都还是局限于小数据量。
针对上述算法存在无法识别具体故障的缺点,本文采用改进的算法构建多类故障分 类器进行模式分类。该多分类方法描述如下:对于K类样本的训练,训练K.1个支持 向量机,对于第一个支持向量机子分类器,以第一类样本为正样本,将第2,3, ,K 类样本作为负的训练样本训练SVMl,然后去掉第一类样本,在剩余的样本中,以第二 类样本为正样本,将第3, ,K类样本作为负的训练样本训练SVM2,以此类推直到 第K.1个分类器设计完毕。测试时,将样本首先输入第一个分类器,如果输出为“1\" 则判定样本类别为分类器所对应的类别,测试结束。如果不是,则进入下一个分类器,
沈阳航空工业学院硕士学位论文
直到判断出测试样本所属的类别。 支持向量机的学习步骤:
第一步:给出一组输入样本tO=L2, ,f),及其对应的期望输出Yi∈{+1,一1)。
第二步:在约束条件荟y肛20和哆之oo=1,2, 7)下,求解
Q@)=善l q—j1荟l呸aJy;y,K瓴,z,)的最大值,得到支持向量机q。
第三步: 计算w
2善呸y;≯瓴)
6;一1一脚化)其中≮为一特定的支持向量。
Y,
第四步: 对于带分类样本x,选择某一类型的核函数K(x,五),计算:
Y=Sgn[aiy;K“,工)+6]
为+1或为.1,以决定属于哪一类。 本次试验使用的两种碰摩直杆形碰摩装置和圆形碰摩装
置,分别用来模拟全碰摩、
单点碰摩和不定碰摩。本文提取了中盘和悬挂盘的信号,利用小波包进行处理得到3840 组训练和测试样本,其中4/5的样本即3072组用来对支持向量机分类器设计和训练,剩 下的用于检验模式识别的效果,保证SVM检测的时间为80秒左右。
应用上述策略构建的多类故障分类器对三类模式进行识别和分类,即构建SVMl, SVM2,分别针对全碰摩、单点碰摩。利用试验平台对同类信号的多组数据进行重复运 行40次,取平均值作为该参数下SVM分类的正确率。尽管在特征值相同核函数不同的 条件下,核函数对分类器的分类能力具有影响,但支持向量机的脾I二F-厶匕HF-,对结构(核函数)的 依赖性很小,便于在工程中应用,特征量的选取对故障诊断准确率影响很大。由于RBF 核函数每个样本中心对应一个分类器而且其输出权值由算法自动确定,因此本文中选取 RBF核函数。同时本文利用RBF核函数和线性核函数进行算法效果的对比,结果也证 明了RBF核函数具有较好的分类效果。
24
沈阳航空工业学院硕士学位论文
第四章试验及仿真
4.1诊断系统的整体框架 诊断系统的整体框架:
图4.1诊断系统框架图
本文的利用的数据已经经过前期的去噪预处理,利用小波包分解进行信号处理,得 到系数矩阵后求取其最大奇异值。把单点碰摩、不定碰摩和全周碰摩的特征向量输入支 持向量机中,首先利用训练样本进行支持向量机的学习。再将测试样本输入训练完成的 支持向量机中,验证实际输出结果和预期输出结果的比值,从而确定本文中提出的基于 小波包和支持向量机的方法的有效性。利用VC和MATLAB混合编程将MATLAB中实 现的算法集结果输出到可视化的界面上,从而起到演示作用。
4.2转子实验平台
4.2.1转子实验台介绍 双盘悬臂转子系统试验台如图4.2所示。1为一直流调速电机,额定转速20000 r/min。
2是柔性联轴节,3是左端轴承座,4是转轴,5和7是电涡流传感器,电涡流传感器的 轴向位置如图(a)所示,径向位置如图(b)所示,在本试验中,共有4个测点,其中 测点1、2测垂直方向的位移,测点3、4测水平方向的位移,测点1、3测的是位于中 间盘左侧靠近轴承座处轴的振动位移,测点2、4测的是位于悬臂端轴承座外侧轴的振 动位移,6和9是转子圆盘,圆盘6直径80mm,宽20mm,圆盘9直径80mm,宽15mm,
沈阳航空工业学院硕士学位论文
第四章试验及仿真
4.1诊断系统的整体框架 诊断系统的整体框架:
图4.1诊断系统框架图
本文的利用的数据已经经过前期的去噪预处理,利用小波包分解进行信号处理,得 到系数矩阵后求取其最大奇异值。把单点碰摩、不定碰摩和全周碰摩的特征向量输入支 持向量机中,首先利用训练样本进行支持向量机的学习。再将测试样本输入训练完成的 支持向量机中,验证实际输出结果和预期输出结果的比值,从而确定本文中提出的基于 小波包和支持向量机的方法的有效性。利用VC和MATLAB混合编程将MATLAB中实 现的算法集结果输出到可视化的界面上,从而起到演示作用。
4.2转子实验平台
4.2.1转子实验台介绍 双盘悬臂转子系统试验台如图4.2所示。1为一直流调速电机,额定转速20000 r/min。
2是柔性联轴节,3是左端轴承座,4是转轴,5和7是电涡流传感器,电涡流传感器的 轴向位置如图(a)所示,径向位置如图(b)所示,在本试验中,共有4个测点,其中 测点1、2测垂直方向的位移,测点3、4测水平方向的位移,测点1、3测的是位于中 间盘左侧靠近轴承座处轴的振动位移,测点2、4测的是位于悬臂端轴承座外侧轴的振 动位移,6和9是转子圆盘,圆盘6直径80mm,宽20mm,圆盘9直径80mm,宽15mm,
沈阿j航空工业学院硕士学位论文
每个圆盘上面都开有24个平衡螺栓,增加和减少平衡螺栓的个数可以调整转子的偏心 量,8是右端轴承座。
(b) 图4.2双盘悬臂转子系统试验台
一三一一一一n一一一一.一.o——.明7
’‘
一,
曩螺转堆螺定钉子形套
,
J
/ ∞
,
一 J =
转f : 曹f ‘~一一一7
●
(a) Co)
图4.3直杆形和圆形碰摩装置
图4.3是本次试验所使用的两种碰摩装置,图4.3(a)为直杆形碰摩装置,用来模拟周期性碰摩,转子旋转一周,转静件最多碰摩一次,静子头部为一塑料材质,代表较低碰摩刚度。图4.3(b)是圆形碰摩装置,用来模拟局部转静件的碰摩行为,这种碰摩与实际情况更加接近,静子材质为黄铜。图4.3是试验中采用的转轴,在研究双盘悬臂 转子系统故障试验中,共使用了两种轴,证常轴和裂纹轴,轴的直径为10mm,轴的其 它尺寸见图4.3,裂纹轴的裂纹深度分两种,即1/3d和1/2d,d为轴直径。采用北京东 方振动和噪声技术研究所INV306DF智能信号采集处理分析仪和INV-6多功能抗混滤波
26
沈阳航空工业学院硕士学位论文
放大器进行数据,采用Coinv Dasp2003进行数据分析处理。整个系统由一直流电机驱动, 电机和转子系统采用柔性连接,减少电机对转子系统的影响。为了突出故障特征,减小 非线性油膜力对系统运动的控制作用,在试验中采用石墨轴承代替油轴承。
振动传感器通常分为三种,分别是速度型传感器、位移涡流传感器和加速度型传感 器。其中位移型传感器往往用于测量振动的相对位移,而速度型和加速度型用于测量绝 对位移。涡流传感器同速度型、加速度型传感器相比,最大的优势是可以做到非接触式 测量,也正是由于这个优势,它在振动信号的采集中得到了更加广泛的应用。电涡流传 感器顶部有一个线圈,线圈中有频率较高(1~2MHz)的交变电压通过。当线圈平面靠 近某一个导体表面时,由于线圈磁通链穿过导体,使导体表面形成感应涡流,而涡流所 形成的磁通链又穿过原线圈,这样形成了有一定耦合的互感。耦合系数的大小与原线圈 与涡流“线圈”之间的距离有关,通过测量涡流的变化,理论上便可求出线圈和导体表 面距离的变化量。同时电涡流传感器从抗干扰性、测量频率、安装方面都有着很好的性 能,因此在本试验中采用电涡流传感器。 4.2.2转子实验台参数确定
轴的直径为d 5=10 mm,阻尼系数,7。。0.001,轴承跨距Z=400 mm,材料密度 P=7850 mm,弹性模量 E一2.kg/m3悬臂部分长度a=100 mm,圆盘宽度W,=W:=10 07ellPa,下导轴承阻尼系数C,=2e4N.s/m,圆盘直径d?=d!一80mm,泊松比 秒=0.3,,下导轴承刚度k,=4.7e8 N/m,上导轴承刚度为k:=9.3e8 N/m,上导轴承阻尼 系数C:=5e5 N.s/m,不平衡偏心量e。=0.3 mm,碰摩间隙6=0.12 mm,摩擦系数 f=0.1,转子转速为200rad/s。试验台在给定摩擦系数、间隙圆半径等系统参数后,
当转子与静子的转速比CO=0.2295时系统发生碰摩。在O.2295<珊<0.688的范围内, 系统发生稳定的碰摩,且随着∞的增大,碰摩程度变化总的趋势为较轻的局部碰摩、较 重的局部碰摩、整圈碰摩。在∞>0.688的一定范围内,转子运动失稳,表现为复杂运 动(混沌、拟周期等现象)的碰摩形式。本次试验使用的两种碰摩直杆形碰摩装置和圆形 碰摩装置如图4.3所示,分别用来模拟全周碰摩(转子与定子整周旋转都在碰摩)、单点 碰摩(转子与静子的碰摩位置事前知道,但是旋转一周只有一次碰摩)和不定碰摩(动
27
沈阳航空.L业学院硕士学位论文
静件碰摩的位置事前未知,一周发生碰摩的次数也是未知的)。本文提取了中盘和悬挂 盘的信号,利用小波包进行处理得到3840组训练和测试样本,其中4/5的样本即3072 组用来对支持向量机分类器设计和训练,剩下的用于检验模式识别的效果,保证SVM检 测的时间为80秒左右。 4.3实验步骤 步骤:
1)下图4.4为本文原始信号图。利用正交dbld,波包分别对本试验中采集并预处理
后的信号作3级尺度分解,得到小波包树和小波包分解系数。例如图4.5和图4.6分别 为全碰摩故障信号的小波包树和小波包分解系数图。
(a)全周碰摩信号时域波形图
啪 (b)单点碰摩信号时域波形图
不宅盛摩原始信号
一一——一 一一
啪
位Ⅺ 移Ⅺ
∥
m
O
-200
枷
冉∞
O ’O ∞ ∞ 柏 ∞
时间t(ms)
(c)不定碰胯信号时域波形图 4.4原始信号图
沈阳航空工业学院硕士学位论文
^“ j^
黧
E
㈦I:
黧
焉#蛾
V_’ ,’E
”。”。
1勰
#
II
嚣蓦蓦 鹾l
鬻曩蠹
一 Mm甜 “毽、“
瓣鬟、 Xi
i麓、
糍‘ ”i冀: 嫦;黪#
图4.5小波包树
2000
1000
0
—1000
.2000
采样毒糯·
采样点籽
x 104 x 104 ×104
图4.6小波包分解频段系数图
2) 解出频段系数矩阵的最大奇异值。对于本试验,利用四种故障状态下的信号进行3 级小波包,取第三级分解频段系数的最大奇异值A构成的特征矢量 T=[4,4,...,4],见下表4.1,其中B为全碰摩信号,c为单点碰摩信号,E为不定碰摩 信号。
表4.1 dbldx波包提取的最大奇异值
1 4550 16880 82660
2 13 3165 5156
3 686 868 1050
29
姿堕塾室三些堂堕堡主堂垡笙茎
3 165 104 101 91 413 159 144 ..——
817
“
25 12 79
130 98
应用上述策略构建的多类故障分类器对四类模式进行识别和分类,即构建SVMl, SVM2,分别针对全碰摩和单点碰摩。
3)利用试验平台对同类信号的多组数据进行重复运行40次,取平均值作为该参数 下SVM分类的正确率。尽管在特征值相同核函数不同的条件下,核函数对分类器的 分类能力具有影响,但支持向量机的性能对结构(核函数)的依赖性很小,便于在工 程中应
用, 特征量的选取对故障诊断准确率影响很大。
本文支持向量机部分的算法实现充分利用Matlab的优势,利用VC调用Matlab弓l擎的 方法将Matlab中运行得到的分类结果显示Nvc界面中。本文利用RBF核函数和线性核函
数进行算法效果的对比,结果证明RB磁函数具有较好的分类效果。以下是混合编程中
m文件中部分核函数代码片段:
{
switch k
case 1
kernel—type='RBF_k:emel’;
case 2
kernel_type=1'lin_kemel’;
end
%kernel_type='RBF_k:emd’;
)
为了证明本文提出的方法的有效性,利用同样的数据信号,通过使用BP神经网络 和RBF神经网络来检验识别效果,试验证明SVM方法的优越性,见下表4.2。SVM在小样 本数据分类中优势非常明显,本文先利用小样本数据进行训练并测试分类效果,结果证 明SVM:在小样本情况下的分类效果相对较为理想,对于大样本分类,神经网络的分类效 果较好,但现实中碰摩故障发生时不可能提取大量的信号,因此SVM分类器的作用在本 文中是最理想的分离器。
30
沈阳航空工业学院硕士学位论文 表4.2不同分类器对dbld、波包提取特征向量的识别结果
BP 53.3% 98%
100%
70%
79.9%
31
沈阳航空工业学院硕士学位论文
第五章基于混合编程的故障诊断原型系统
在研究基于支持向量机(SVM)的碰摩故障识别方法的基础上,开发了基于SVM的 旋转机械数据获取、分析与故障识别软件系统。由于此软件系统在数据分析与故障模式 识别中,涉及大量的数据计算、信号处理、分析图形绘制等,故采用MATLAB平台来 开发部分数据分析与基于SVM方法的故障模式识别模块。但由于MATLAB是基于解释 性的语言,执行效率不高,同事考虑到VC++在可视化方面的优势,本文研究了VC++ 和MATLAB语言的接口实现方法,利用混合编程的思想开发了基于SVM的旋转机械碰 摩故障识别软件。在系统中采用VC++来完成主界面、数据采集、存储及信号显示的设 计,利用MATLAB来完成数值的计算,信号的处理与绘制数据分析图。
5.1软件开发工具简介
5.1.1 MATLAB
MATLAB是MathWorks公司于1982年推出的一套高性能的数值计算和可视化软件。 它可以进行数值分析、矩阵运算、信号处理与图形显示,构成一个功能强大、方便、界 面友好的用户环境。在国内众多高校的通信、电子、自动化等专业学习中具有非常重要 的作用。另外它还包括了Toolbox(工具箱)的各类问题的求解工具,可也专门用来求 解特定学科的问题。其特点是:
(1)可扩展性:MATLAB最重要的特点是易于扩展,它允许用户自行建立制定功能 的m文件。对于一个从事特定领域的工程师来说,不仅可利用MATLAB所提供的函数 及基本工具箱函数,还可方便地构造出专用的函数,从而扩大了其应用范围。当前支持 MATLAB的商用Toolbox有数百种之多,本文中利用工具箱中的小波包工具箱和支持向 量机工具箱,在现有函数基础上进行算法的实现和改进。
(2)易与学习和掌握:MATLAB在大学等科研机构中得到广泛应用,这与它的易于 学习掌握具有很大的关系。学习者不需要具有高深的数学知识、程序设计能力和编程技 巧,也可以很好的掌握Mat lab语言。
(3)高效性:正如上面所指出的一样,MATLAB语句功能强大,一条语句可完成十
32
沈阳航空工业学院硕士学位论文
第五章基于混合编程的故障诊断原型系统
在研究基于支持向量机(SVM)的碰摩故障识别方法的基础上,开发了基于SVM的 旋转机械数据获取、分析与故障识别软件系统。由于此软件系统在数据分析与故障模式 识别中,涉及大量的数据计算、信号处理、分析图形绘制等,故采用MATLAB平台来 开发部分数据分析与基于SVM方法的故障模式识别模块。但由于MATLAB是基于解释 性的语言,执行效率不高,同事考虑到VC++在可视化方面的优势,本文研究了VC++ 和MATLAB语言的接口实现方法,利用混合编程的思想开发了基于SVM的旋转机械碰 摩故障识别软件。在系统中采用VC++来完成主界面、数据采集、存储及信号显示的设 计,利用MATLAB来完成数值的计算,信号的处理与绘制数据分析图。
5.1软件开发工具简介
5.1.1 MATLAB
MATLAB是MathWorks公司于1982年推出的一套高性能的数值计算和可视化软件。 它可以进行数值分析、矩阵运算、信号处理与图形显示,构成一个功能强大、方便、界 面友好的用户环境。在国内众多高校的通信、电子、自动化等专业学习中具有非常重要 的作用。另外它还包括了Toolbox(工具箱)的各类问题的求解工具,可也专门用来求 解特定学科的问题。其特点是:
(1)可扩展性:MATLAB最重要的特点是易于扩展,它允许用户自行建立制定功能 的m文件。对于一个从事特定领域的工程师来说,不仅可利用MATLAB所提供的函数 及基本工具箱函数,还可方便地构造出专用的函数,从而扩大了其应用范围。当前支持 MATLAB的商用Toolbox有数百种之多,本文中利用工具箱中的小波包工具箱和支持向 量机工具箱,在现有函数基础上进行算法的实现和改进。
(2)易与学习和掌握:MATLAB在大学等科研机构中得到广泛应用,这与它的易于 学习掌握具有很大的关系。学习者不需要具有高深的数学知识、程序设计能力和编程技 巧,也可以很好的掌握Mat lab语言。
(3)高效性:正如上面所指出的一样,MATLAB语句功能强大,一条语句可完成十
32
沈阳航空工业学院硕士学位论文
分复杂的任务。在强大功能的背后还有其高效性。如MathWorks公司声称,MatLAB软 件中包含的MATLAB源代码相当于70万行C代码。
正是由于MATLAB具有以上这些优势,使得它在国内外诸多院校成为科研的强大助 手,它已经成为应用于线性代数、自动控制理论、数理统计、数字信号处理、时间序列 分析、动态系统仿真等高级课程的基本教学工具;在研究单位、工业部门,MATLAB 也被广泛用于研究和解决各种工程问题。当前在全世界有超过40万工程师和科学家使 用它来分析和解决问题。
然而MATLAB自身所在的某些缺点了它的应用范围: (1)MATLAB是一种解释性语言,而解释性语言室一边解释一边执行,因此它的运算
速度就会很慢,这样就直接影响了它的效率。因此MATLAB是不太适合复杂的数值计算 的。我们在学习过程中已经认识到这个问题:同样的计算问题,C的计算速度要比 MATLAB高出几十倍甚至是数百倍。但是VC++是编译性的语言,一经编译通过后,以 二进制代码的方式执行,执行速度非常快,在进行多层次的嵌套循环运算时就不会出现 像在Matlab中那样的问题,它的执行速度是很快的。通过VC++和MATLAB的有机结合, 就台e,4Ei好地发挥各自的优势。
(2)MATLAB程序不能像VC那样经过编译连接等步骤生成可执行文件,脱离其环境 运行,这就了MATLAB更加广泛的应用,因此它不能被用于开发商用软件。
(3.)MATLAB程序不能像其他语言一样更好的封装自己的源代码,往往可以被直接看 到程序的源代码,这样就不利于数据和算法的保密性。
5.1.2 VC++
Visual C++(简称vC++)是一个功能强大、灵活性强、效率高的,目前最为流行的计 算
机语言,是美国微软公司推出的目前使用极为广泛的可视化编程平台,是一种强大的 程序开发工具,它提供了一个可视化的集成编程环境,能自动生成WINDOWS应用程序 的共有部分,帮助程序设计人员直接切入实现功能部分的代码编制主题。从而大大简化 了复杂的WINDOWS应用程序开发过程,极大地提高了程序设计的效率。从桌面应用程 序到用服务器端软件,从系统软件到应用软件,从单机程序到分布式应用程序,从图形 图像处理到游戏开发,VC++无所不在,它主要具有以下特点。
f1)可视化编程的集成开发环境。可以利用计算机图形技术和方法,用图形、图像的
33
沈阳航空工业学院硕士学位论文
方式形象而具体地显示数据处理过程和结果。不仅方便了程序设计的开发与应用,也方 便了用户的使用。
(2)可封装性。完整地封装了经常使用的Windows API函数,包括窗口函数、消息、 控件、菜单、对话框、图形设置接n(GI)I)、对象、对象链接以及多文档界面(MDI)等。
(3)可扩展性。Visual C++允许用户自行建立指定功能的函数,不仅可以利用类库所 提供的函数,还可方便地构造出其它专用函数,从而大大扩展了其应用范围。总之,Visual C++是一种功能强大、效率极高的图形界面开发工具,开发简单,大大缩短软件设计和 开发的周期。本系统以Windows XP为操作平台,利用功能强大的Visual C++进行碰摩故 障诊断系统的设计,自主开发了高速度、高效率的诊断平台。
5.2
vC++与Matlab混合编程
5.2.1混合编程常用方法 首先将常用的几种方法介绍一下: 一、通过Matlab Engine方式
Matlab Engine是指一组Matlab提供的接口函数,用户可以在自己的程序中实现对
MATLAB的控制,来进行数值的计算和图形的绘制显示功能。Matlab Engine采用c/s(客 户机朋艮务器)模式,Matlab作为后台服务器,而C程序作为前台客户机,通过Windows的
动态控件对象模型(Com)与服务器通信,I句Matlab Engine传递命令和数据信息,同时还 可以从Matlab Engine接受数据信息。在UNIX环境下,应用程序通过管道与MATLAB实 现通信。用户可以在前台应用程序中调用这些接口函数,实现对Matlab Engine的控制。 采用这种方法几乎能利用Matlab全部功能,利用引擎提供的MATLAB功能支持是最全面
的,因此本文选取MATLAB Engine来作为混合编程的接口。 二、用Matlab白带的Matlab Compiler
Matlab Compiler的作用是将m文件转化成C/C++代码(也就是通常所用的mcc命令), 这种源代码需要用C/C++编译器编译连接成应用程序,在将m文件转成应用程 序的过程中生成的C/C++文件,原则上是可以被其它的C/C++代码调用的,编译器可以 通过设置mcc命令的选项,将m文件编译成动态链接库文件、C/C++文件、可执行文件等
一系列文件。至lJmatlab R21.1为止,Matlab Compilerl拘m程序转换成C/C++代码功能有很
34
沈阳航空工业学院硕士学位论文
方式形象而具体地显示数据处理过程和结果。不仅方便了程序设计的开发与应用,也方 便了用户的使用。
(2)可封装性。完整地封装了经常使用的Windows API函数,包括窗口函数、消息、 控件、菜单、对话框、图形设置接n(GI)I)、对象、对象链接以及多文档界面(MDI)等。 (3)可扩展性。Visual C++允许用户自行建立指定功能的函数,不仅可以利用类库所 提供的函数,还可方便地构造出其它专用函数,从而大大扩展了其应用范围。总之,Visual C++是一种功能强大、效率极高的图形界面开发工具,开发简单,大大缩短软件设计和 开发的周期。本系统以Windows XP为操作平台,利用功能强大的Visual C++进行碰摩故 障诊断系统的设计,自主开发了高速度、高效率的诊断平台。
5.2 vC++与Matlab混合编程 5.2.1混合编程常用方法
首先将常用的几种方法介绍一下: 一、通过Matlab Engine方式
Matlab Engine是指一组Matlab提供的接口函数,用户可以在自己的程序中实现对
MATLAB的控制,来进行数值的计算和图形的绘制显示功能。Matlab Engine采用c/s(客 户机朋艮务器)模式,Matlab作为后台服务器,而C程序作为前台客户机,通过Windows的
动态控件对象模型(Com)与服务器通信,I句Matlab Engine传递命令和数据信息,同时还 可以从Matlab Engine接受数据信息。在UNIX环境下,应用程序通过管道与MATLAB实 现通信。用户可以在前台应用程序中调用这些接口函数,实现对Matlab Engine的控制。 采用这种方法几乎能利用Matlab全部功能,利用引擎提供的MATLAB功能支持是最全面
的,因此本文选取MATLAB Engine来作为混合编程的接口。 二、用Matlab白带的Matlab Compiler
Matlab Compiler的作用是将m文件转化成C/C++代码(也就是通常所用的mcc命令), 这种源代码需要用C/C++编译器编译连接成应用程序,在将m文件转成应用程 序的过程中生成的C/C++文件,原则上是可以被其它的C/C++代码调用的,编译器可以 通过设置mcc命令的选项,将m文件编译成动态链接库文件、C/C++文件、可执行文件等
一系列文件。至lJmatlab R21.1为止,Matlab Compilerl拘m程序转换成C/C++代码功能有很
34
沈阳航空工业学院硕士学位论文
———————————————————————’——————————————————————————————————————_——————————————————————————————一
多: 例如不能转换脚本m文件,只能转换m函数;
不能使用matlab对象; 不能用input或者eval:操作matlab空间变量;
三、使用matcom工具 这是个第三方控件,很小大概有8M多,原本属于mathtool公司,后来被Mathworks
公司合并了,使用该工具可以将m脚本文件和m函数转化成相同功能的C/C++文件,相比 其它方法使用matcom具有如下优点: 转换过程简单.(由matcoml具自动实现),容易实现;
可以方便的生成动态链接库文件(dU)和可执行文件(exe); 不仅可以转换的脚本文件,也可以转换嵌套脚本文件; 设置环境后,可以使用Matlab的工具箱函数:
但matcom也有以下不足: 对struct:等类的支持有缺陷,对class数据类型; 部分绘图语句无法实现或得不到准确图象,尤其是三维图象; 因此在不涉及到三维做图以及m文件不大的情况下推荐使用。
以上几种方法可以单独使用,也可以混合使用。本文中将采用第一种方法,即利用 Matlab弓l擎进行混合编程。
5.2.2引擎API详解 要实现vC++调用Matlab进行混合编程,一般会用到以下这些函数:engOpen--打开
Matlab engine,EngClose一关闭Matlab引擎,engEvalString一发送命令让Matlab执行,
engSetⅥsible一运行时显示或者隐藏Matlab主窗口,engGetVariable--从Matlab中获取 数据,engPutVariable--向Matlab中传入数据。下面是这些常用函数的具体函数定义及 其返回类型说明,如下:
11引擎的打开和关闭
engine char木startcmd)--打开Matlab Engine术engOpen(const
Int
EngClose(Engine幸ep)一关闭Matlab引擎。如果返回的是0,则说明关闭成功, 否则返回1则为失败。
35
沈阳航空工业学院硕士学位论文
2)向Matlab发送命令字符串
Int engEvalString(Engine宰ep,const char木string)--发送命令让Matlab执行,如果返回 的是O,则说明执行成功。
3)调用引擎时显示/隐藏Matlab主窗口:默认情况下,以engine方式调用Matlab 的时候,会打开Matlab主窗口,可在其中随意操作。但有时也会干扰应用程序的运行, 可用以下设置是否显示该窗12。int engSetVisible(Engine木ep,bool value);参数ep为打开 的Matlab引擎指针,value为是否显示的标志,取值true(或1)表示显示Matlab窗口, 取值false(或0)表示隐藏Matlab窗口。函数返回值为0表示设置成功,为1表示有错 误发生。
舢从Matlab中读写数据
mxArray半engGetVariable(Engine宰印,const char宰name)一从Matlab引擎工作空间中 获取变量,如果执行失败则返回NULL;
int engPutVariable(Engine术ep,const char宰name,const mxArray木mp)一向Matlab引擎 工作空间写入变量,调用失败则返回1;
5)获取Matlab命令窗口的输出
Int engOutputBuffer(Engine宰ep,char车P,int n)一从VC中获得函数engEvalString发 送的命令字符串被Matlab执行后在matlab窗口中的输出。
在调用Matlab引擎之前,首先应在相关文件中加入一行:#include”enging.h”,该 文件包含了引擎API函数的说明和所需数据结构的定义。例如本文的代码为:
void CCDiagnSysDlg::OnBtestO
{
double u【1】; double y【1】; double b【1】;
if(m—svm.GetCheckO)
{
UpdateData(true); if(m—comkernll==_T( ’))
36
沈阳航空工业学院硕士学位论文
{
MxMessageBox(”请选择核函数类型!”);
)
else
if(m_comkernll=--一T(”RBF_kernel”))
{
u【0】=1;
}
∥如果选择的是RBF核函数,定义u=l
else if(m_comkernll==_H”lin_kemel”))
{
u【0】=2;
)
∥如果选择的是RBF核函数,定义u=2
if(!(epx=engOpen(NULL)))脓9试是否启动Matlab弓l擎成功。
{
MessageBox(”打不开引擎!”,”engine demo\;
exit(1);
)
engSetVisible(epx,0);∥隐藏matlab命令窗口 mxArray半Percent=mxCreateDoubleMatrix(1,1,mxREAL); mxArray木ul=mxCreateDoubleMatrix(1,1,mxREAL); mxArray木Result=mxCreateDoubleMatrix(15,1,mxREAL); memcpy(mxGetPr(u1),U,1宰sizeof(double)); engPutVariable(epx,”kff,u1); engEvalString(epx,”[Result,Percent]=svm(k)”);
mxArray木dy=mxCreateDoubleMatrix(1,1,mxREAL); dy=engGetVariable(epx,\"Percent”);
N mxArray木dx=engGetVariable(epx,\"Result”); memcpy(y,mxGetPr(dy),mxGetN(dy)术sizeof(double));
37
沈阳航空工业学院硕士学位论文
CString str; str.Format(”%ff,y【0】); m_percent=str;
UpdateData(false); mxDestroyArray(Percent);N销毁mxArray数组xx和yy。 mxDestroyArray(u1); mxDestroyArray(Result); mxDestroyArray(dy);
else if(m_bp.GetCheck0)
{
UpdateDataorue);
if(m_bpmethod==_T(””))
{
AfxMessageBox(”请选择BP{JI[练算法类型!”);
)
else if(m_bpmethod==_T(”traingdx”))
{
b【0】=1;
】. ∥如果选择的是RBF核函数,定义u=l
else if(m_bpmethod==一T(”trainscg”))
{
b[0]=2;
) ∥如果选择的是RBF核函数,定义u=2
else if(m_bpmethod==一T(”trainrp”))
{
b[0]=3;
)
38
沈阳航空工业学院硕士学位论文
else
if(rn_bpmethod==一T(”trainoss”))
{
b【O】=4;
)
else
if(m_b。pmethod==_T(”trainlm”))
{
b[0]-5;
)
//TODO:Add control notification handler code here your
if(t(epx=engOpen(NULL)))//测试是否启动Matlab弓]擎成功。
{
MessageBox(”打不开引擎!”,”engine demo\; exit(1); 】.
engSetVisible(epx,0);//隐藏matlab命令窗口
//定义mxArray,为行,N列的实数数组。 mxArray丰Percent=mxCreateDoubleMatrix(1,1,mxREAL); mxArray木bl=mxCreateDoubleMatrix(1,1,mxREAL); mxArray木Result=mxCreateDoubleMatrix(15,1,mxREAL); memcpy(mxGetPr(b1),b,1术sizeof(double)); engPutVariable(epx,”kIf'b1);
//engPutVariable(epx,”Kernel_type\ype); engEvalString(epx,”[Result,Percent]=bp(k)”);
//
memcpy(mxGetPr(Percent),Y,1术sizeof(double));∥将数组x复$1J至lJmxarray数
组XX中。
//从Matlab变量yy中提取数据
mxArray4 dy=mxCreateDoubleMatrix(1,1,mxREAL);
dy=engGetVariable(epx,\"Percent”);
39
沈阳航空工业学院硕士学位论文
//mxArray木dx=engGetVariable(epx,\"Result”); memcpy(y,mxGetPr(dy),mxGetN(dy)宰sizeof(double));
//memcpy(x,mxGetPr(dx),mxGetN(dx)宰sizeof(double));
CString str;
str.Format(”%fI’,y【O】); m_percent=str; UpdateData(false);
// MessageBox(str);
//engEvalString(epx,\"abc(3)”); mxDestroyArray(Percent);//销毁mxArray数组XX和yy。 mxDestmyArray(b1); mxDestroyArray(Result); mxDestroyArray(dy);
5.2.3在Visual C++中调用MATLAB引擎 在运用中,VC++的程序作为前端客户机,向MATLAB引擎传递命令和数据信息,并从
MATLABiJ[擎接收数据信息。提供了以下几个函数:engOpen、engGetArray、engPutArray、 engEvalString、EngOutputBuffer、engCloee与客户机进行交互,分别实现打开引擎,取 出引擎中的数据放在所指的区域中供后续处理,将转化的参数放入引擎。放一个变量在
脚LAB引擎工作区,为包含在MAnAB引擎中的包含string的表达式的求值为
engEvalString,定义一个字符缓冲区返回一个输出和关闭引擎。 首先建立一个VC++的空的工程:
要在VC中成功编译Matlab引擎程序,必须包含引擎头文件engine.h并引入 Matlab对应的库文件libmx.1ib、libmat。lib、libeng.1ib。具体的说,打开一个工程后, 做如下设置(以VC6为例):
1) 通过菜单,选择工程(P)选项,打开设置属性页,进入Directories页面。 在目录下拉列表框中选择Include files, 添加路径: ”C:Ⅷatlab\extem\include”(假定matlab安装在C:\r:natlab目录),如下图
沈刚航空【:业学院硕十学位论文
5.1所匀÷。
选择Library files,添加路径:
C:Ⅶatlab\extem\lib\win32\nlicrosofl\Illsvc60。如卜.图5.2所示。
图5.2 Library files添加路径
通过菜瞽工程/设霞,打开.1:程设置腻性贝,进入Link负面,在 Objecllibmat.1ib modules编掣}{1E中,添加文件名libmx.1ib libeng.1ib。 /library
沈阳航空工业学院硕士学位论文
以上步骤1)、2)只需设置一次,而步骤3)对每个工程都要单独设定。
5.3系统设计方案与模块 本文中系统的功能框图如下图所示:系统运行后首先具有系统界面,然后提示输入
用户及其密码,验证后进入系统。此时可以利用本文中提出的小波包算法对信号进行处 理,得到特征向量,然后作为特征值输入支持向量机。本系统在Microsoft公司面向对象 的VisualC++6.O的可视化编程环境中进行开发的,主要是负责软件界面以及数据库前台 的开发,数据库后台部分主要使用SOLServer2000,应用程序层接口使用ADO技术。对 故障诊断系统登录模块、特征提取模块和诊断模块的实现进行介绍。最后对数据库的设 计进行简单说明。
图5.3故障诊断系统结构图
故障诊断系统包括:登陆界面、系统说明、特征提取、诊断模块,其中诊断模块分 别演示调用Mat lab中BP和SVM的分类算法。下图为人机交互界面,在欢迎界面上包 含软件的基本信息,如使用说明、联系方式、软件作者单位等信息,选择进入系统后会 弹出系统登录对话框,要求用户输入用户名及密码,系统核对正确后才允许用户进入。 利用数据库完成用户和密码的验证和存储。
42
———————————————————————————————————————————————二_——=—一.
沈辟j航空T业学院硕。i:学位论文
图5.4系统与登录界面
void CDialogLogin::OnBlogin()
//TODO:Add your control notification handler code here
UpdateData(TRuE);
if(ITI—login.IsOpenO)
43
沈阳航空工业学院硕士学位论文
{m_login.CloseO;} m_login.OpenO; mlogin.MoveFirstO; int i=0:
while(!(m_eusemame==m_login.m_usemame)&&!m—login.IsEOFO)//II!(m_password==
m_userset.m_adminpw))
m_login.MoveNext0;
i++:
if(!(m_eusemame==m_login.m_u∞mamc)ll!(m—epassword==m_login.m__password))
{
MessageBox(”您输入的用户不存在或密码不正确!”, ’,MB-OK);】.
else
{m_canomot=TRUE;;
.|l。
MessageBox(”欢迎使用!”, ’,MBLOK);)
m_login.Close0; CDialog::OnCancel0;
导入信号后,选择小波基函数,然后进行特征提取。并将特征值放入数据库中,当需 要时可随时将数据读出。如下图所示:
沈阻j航空。I:业学院硕十学位论文
黼缀黼;o幽圈
r小竣鬯: 蛉Ilbl0 旷小竣色2 旷小演色3
墨鞭骶
|r小嗣鼢
图5.5特征提取与特征值界嘶
本文rfl只完成部分小波包的调用,其40ad,波包的特征提取的原理同已经完成的小波 包部分棚似。利用文中提出的方法得到的特征向量是8维尺度的列向量。本系统故障诊 断模块分别采用BP网络和SVM进行故障模式分类,如下图,首先选择分类器,然后
45
沈阳航空工业学院硕士学位论文
确定分类器的具体参数,例如选择BP网络的训练方法,选择支持向量机的核函数。然 后利用VC调用MATLAB程序,对文中已提取的特征向量进行分类,得到分类的准确 率后显示在VC界面上,结果证明与支持向量机相比,BP神经网络需要一定时间完成 训练和分类,而且分类效果不如支持向量机准确度高。
—‘ “”“58‘ “ 蕾垃蟹i曩囊盈搿■Ili澎灌一潍lk il嘲.I_|i
j◆兰
~黼飘黼溯鳓骥瓣瓣蓑警嚣羹 l,分 。:主簸I¨囊塞w曩 ,驴=-- 孙赢,鬈驴j蠹。㈣一: 融辅霪蹲鞠舞醺囊i箱灏 湖岛彰o 毒曩翳 __I;;i 0岭
警氅滋
i④
。。滏韵荫濠: 譬输出
跨瓣神经囊麟‘。..。R醚灞 ≯j 期龋囊广 --ll
_1
一|.。。。’。'-_J .o 季
譬
≯、
r S硼支持惠量机 梭晕j数:I ,量 j
0 8 0 E
.. 声装 .—勿天:)吣、.
nereent:10.53
测试 l
~吐弋.:.>∥ 受计A搿 孟凡龙 善 ;研究方向 曩:。!=
重 量
蔓
一{ 誊神经网络与梗式识别
图5.6 BP网络故障训练及分类界面
沈阳航空工业学院硕士学位论文
攀H国癸二E慰圈蛳嘲嘲鳓缀麟缀鬻黪缫蠹避澄驾
釉漕彭捌曝甏稳精蕾丑幕瞻j=2 i . 囊
熬誊鹰i晦萄醴禽遵l ij耱龋 遣隧j
羞蠢泰峰0爱谌*一 {
.爹; 黎攀i
i舞幼
r。赣出舞一 r
iE肇赣
雾:: 豫
嘲 固 一 一一_, 喇 戮稠
一一,
。.:B曩 霆
重-一-
i第 a 燮 鹚 蛾 誊 } 翻 f!:1 攀!.黧 。.J,\ ‘. 一
*D 删%m二Ⅻ,
畸
...埯....-H,··一
:” /-Q·...\、<。·...
·- 。’
=一徽;。’£。掣
ori玉h·ii-...丫。
孽鞭添“i。 爹 瓣鞲琴麴露:蓑塑9。。8颡陵鞭黼i ..弩
+、
嘲
沈阳航空工业学院硕士学位论文
——————————————————————————————————————————————————————————一-
结
论
针对碰摩故障的研究很多是针对其动力学特性,对于多种碰摩故障的直接分类研究 较少。本文的实验研究是利用试验平台模拟多种碰摩信号,经过信号的提取和预处理后 利用本文提出的小波包方法,对信号进行特征向量的提取。然后将所得信号样本输入文 中方法所构造的支持向量机分类器,从而实现多类碰摩故障的分类。同时本文利用VC++ 开发了一套用于故障诊断的仿真系统。
全文的主要工作及得到的主要结论总结如下:
1.利用小波包提取的特征向量能够很好的服务于支持向量机的学习和测试,支持向 量机可以获得很高的故障识别准确率。
2.本文使用RBF核函数的支持向量机对双盘悬臂转子系统的碰摩故障数据进行诊 断试验,试验结果显示,支持向量机在各种情况下均获得了很高的故障识别准确率,对 悬臂系统的碰摩故障进行模式识别,达到故障识别的作用。
3.该方法可应用于核电站冷却剂泵、大型轴流通风机、低扬程大流量轴流水泵机组 等悬臂式旋转机械转子系统的碰摩故障的识别,具有良好的泛化推广能力。
4.本文利用Mat lab和vC++开发的仿真系统整体功能框架已经完成。 对今后工作的建议: 1.本文中构造的支持向量机分类器的精确度还需进一步提高。
2.本文小波包提取特征向量算法、支持向量机用于分类的算法均是使用mat lab语 言完成,然后使用VC调用。在今后的工作中可以对这一问题进行改进,将所有算法利 lab,从而增加程序的运行效率。 用C语言完成,减少甚至放弃调用mat 3.本文开发的仿真系统整体功能框架已经完成,但各个模块有些功能需要继续完
善。
48
沈阳航空工业学院硕士学位论文
附录I BP神经网络分类器程序清单
术木宰宰宰采木;Ic木木掌半术木木木木木:Ic宰:l:木木木术半木枣木半半木宰宰}木木幸木半术宰宰木木木木木木爿c木爿c卑术爿c木木木木半水木术水木:lc术:l:宰
蒯堋蒯删蝴槲槲 BP神经网络分类器程序清单蒯堋堋槲蒯榔榭
槲槲蒯蒯删槲黼调用Matlab程序的命令性M文件(bp皿)堋堋堋删绷椭槲
水术宰:lc枣木木丰木木术木术木:l:木木木木书术术半丰木木木木宰宰宰幸幸幸掌宰宰}木木宰木宰:Ic球木掌幸木}木车木宰木幸宰木幸车木木掌幸:Ic木木木唪
%这是BP神经网络分类器程序,bp.m:
function『Result,Percentl]=bp(k)
traindata=f68086.02026 78258.22994 16879.93562 27377.96243 16879.936 79196.629 79196.665 82659.55574 21856.65379 27577.499 4903.743767 11830.52165 5013.44331
92.122768 4903.759698 44315.26068 63794.3037 45263.43438 50228.026 362.53665 49551.39443 43068.07329 41927.868 3594.218004 30.7362 3341.1796168 6840.2558
21.408487 00.451136 20942.32228 9824.696956 12204.78562 8838.262219 11258.19621
6294.591631 35799.53501 30304.092 27402.76595 45161.26786 30487.31276 32029.49801
32124.21605 49370.734 31292.81825 43293.12165 23532.681 34455.68109 17392.738 30394.436
5730.765113 3888.5753 31“.5875 1229.3934 31.555108 7600.8839
7600.19 5156.091467 5293.518699 1941.927468 1787.922241 4333.338195 1801.309193 3334.082062 1787.930203 1792.567381 2311.3211 1779.877367 2188.958197 2214.1667 14.046786 3007.1712 2238.083848 2292.736 2014.291836 1517.639739 3837.866213 1494.037628 4183.017396 2043.627536 4055.915091 10330.97869 7469.012128 9478.00339 20305.29402 18622.11637 24560.48024 26291.79993 25161.70752 20256.63247 5306.723324 126.92591 20439.26253 11819.95771 16051.62171 18821.94947 21826.53173 12173.945 16587.36276
1233.240288 769.8010421 867.94077 492.0917298 867.9376695 12.597386
477.3122191 533.25274 12.595987 1050.3183 969.3001 9263376 281.7245133 201.2490004 281.730913 176.2449672 148.784563 200.90886 1.538558 418.946 295.5028843 512.565534 253.6881844 214.57739 272.3017977 325.2282275 250.6605029 303.9229826 1075.74632 621.6119139 1222.871234 1106.652148 1473.918552 709.2756626 1509 1 1300.90255 916.9474497 18369.61423 16699.87914 23834.65724 15843.66332 21715.5 1 8694.436919 3503.568083 50.987662 3309.344325 3931.762579 9391.028061 8305.93951
6262.150673
573.2607914
702.1027451 412.79638 199.2327699 412.7967531 1.2751933
409.4803697 168.1821886 209.1467981 120.0719552 1.2762821 816.6831247 491.9665119 129.6807309 168.1874061 115.0161877 103.0651866 122.4533325 167.431492 193.2403041
176.3020063 193.3806231 182.2034298 107.161601 232.4325955 81.228499 138.2131535
230.62567 322.3403707 286.238582 557.10300 342.9706717 356.9913883 263.1278185 258.67629 1152.745536 1046.366314 1358.908236 1839.214506 1243.394987 1601.25263
600.9173082 1385.008861 665.1165526 1139.107841 822.8375969 14.822619 783.2908397
49
沈阳航空工业学院硕士学位论文
1377.076384
172.6568731 416.4309222 158.5904114 167.6307012 158.5851292 403.1636273
403.1620087 445.1109105 1.15371 277.2372522 102.3885965 115.6933304 .14403432 76.04755759 102.39109 20.30397468 28.84005667 21.28598132 32.44633697 42.82005286 1 49.33386125 88.3675391 101.2771 68.484057 123.7501948 35.32258835 35.743961
99.40742598 165.0718563 127.05556 213.5591298 225.4011635 323.1534468 179.4772477 234.98269 818.35633 731.41535 833.7605292 1165.099917 756.9988222 919.3228186 295.4365235 566.0260241 319.007837 626.2730
152.4003736 231.3375661 144.4328577 114.3393584 144.4311829 236.6907021
441.4602402 429.9514753 699.4224 414.0614475
236.6880933 255.0287806 176.5257342 175.2310583 34.1 19784 61.86003955 41.00785568 39.01246166 34.51083 19.06116009 28.19432961 20.62623032 18.62328347 40.04247358 44.95651431 40.27133 52.47304139 21.43672484 68.92901513 32.10428825 23.51329533 49.58055795 153.704 1 12.3536861 173.6293758 180.9675159 172.9783763 109.34469 111.7515604 445.5082656 338.1601029 524.4504949 763.4256352 361.6683987 776.6041975 190.44835 432.4401149 199.47206 363.0419056 236.3142105 563.9729435 250.5312629 532.2188582
114.6838305 98.1122C1149 129.519372 86.69235392 129.5197806 160.3357491
160.3339162 126.8747997 147.3963817 99.26367482 32.11137113 56.09177452 23.2156586 36.11263425 32.104947 18.1257499 22.948305 19.849678 17.21268785 35.56216349 25.93740397 31.40966679 25.41109343 15.637507 47.4006694 22.77474084 17.52503936 43.90377021 94.22456123 87.33268467 1 1 1.3779327 104.321495 1 14.913585 1 97.71863862
478.3817819 266.4584735 344.4829567 60.99759146 272.9361359 258.0367099 284.83617 141.0444122 298.0761234 1.44395 218.30783 172.1714278 314.3028736 165.9908628
233.9404855
105.9760147 63.94960 98.2299955 44.50473395 98.23674121 101.636536
101.6336822 78.85527505 129.9784932 51.78265709 19.18783695 43.5339102 21.63329184 26.566736 19.177683 15.78472857 19.66324959 18.11235759 15.0629592 25.68659262 24.49088528 30.80911713 17.6114071 14.784569 26.28292738 18.13327024 16.78533703 38.904661
30.44158712 .58084394 80.42600577 65.87955721 37.53186194 48.92212041 46.14325962 131.3122244 232.2626031 162.87456 218.6016338 208.7923 137.3846873 140.63601 94.4498451
141.1397024 79.5275
115.2443761 152.1324539 162.1279209 101.34057】
1
1 0 1
1
1
1 0 1
1
1
1
1
1
1
1 0 0
espectdata=[1
1 0 1 0 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 1 0 1 0 1 0 1 0 1 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 1 0 1 0 1 0
1
0 1 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 0 0 0 1 1 1】
switchk
50
沈阳航空工业学院硕士学位论文
case l
kernel_type=’traingdx’;
case2
kernel_l:ype=’trainscg’;
case 3
kerneL!:ype=’trainrp’;
case4
kemel_t:ype=’trainoss’; case5
kernel_type=’trainlm’; end
net=newff(minmax(traindata),[10,3】,{'tansig’,109sig’},kerneltype); %【10,3】:隐含层神经元10,输出3个神经元
%有代表性的五种训练算法有:’traingdx’,'traimp','trainscg','trainoss’,’trainlm’ net.trainParam.epochs=5000步长 net.trainParam.show=100;%多少步显示一次 net.trainParam.1r=O.9:%学习速率
net.trainParam.1r inc=l;%学习速率增加 net.trainParam.1r dec=O.1%学习速率减小 net.trainParam.goal=O.001;%目标 net.trainParam.mc=O.9:%动量因子
net=train(net,traindata,espectdata);
testdata=f362.53665 49551.39443 43068.07329 41927.868 3594.218004 30.7362 3341.179668 6840.2558 8838.262219 11258.19621 6294.591631 23532.681 34455.68109 17392.738
30394.436
2214.1667 2238.083848 2292.736 2014.291836 1517.639739 3837.866213
14.046786 3007.1712 7469.012128 9478.00339 5306.723324 18821.94947 21826.53173 12173.945 16587.36276
418.946 295.5028843 512.565534 253.6881844 214.57739 272.3017977
325.2282275 250.6605029 1473.918552 709.2756626 916.9474497 9391.028061 8305.939511 8694.436919 6262.150673
193.2403041 176.3020063 193.3806231 182.2034298 107.161601 232.4325955
81.228499 138.2131535 356.9913883 263.1278185 258.67629 822.8375969 14.822619 783.2908397 1377.076384
42.82005286 101.27711 49.33386125 88.3675391 68.484057 123.7501948
35.32258835 35.743961 323.1534468 179.4772477 234.98269 429.9514753 699.4224
414.0614475 626.2730
40.04247358 44.95651431 40.27133 52.47304139 21.43672484 68.92901513
32.10428825 23.51329533 172.9783763 109.34469 111.7515604 236.3142105 563.9729435
250.5312629 532.2188582
51
;%
沈阳航空工业学院硕士学位论文
35.56216349 25.93740397 31.40966679 25.41109343 15.637507 47.4006694
22.77474084 17.52503936 114.9135851 97.71863862 60.99759146 172.1714278 314.3028736 165.9908628 233.9404855
25.68659262 24.49088528 30.8091 1713 17.61 14071 14.784569 26.28292738
18.13327024 16.78533703 80.42600577 65.87955721 37.53186194 115.2443761 152.1324539 162.1279209 101.340571 tespectdata=[1
1 1
1
1
1
1
1
0 0 0 0 0 0 0 0 0 0 0 0 0 O O 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 11
Y=sim(net,testdata); Y=full(compet(Y)); Result=一sum(abs(tespectdata-Y)); Percentl=sum(Result)/length(Result)
52
沈阳航空工业学院硕士学位论文
附录II SVM分类器程序清单
木木木:lc半半半宰木木拳木水宰槲删槲蒯蝴槲黼调用Matlab程序的命令性M文件(svm皿)蒯堋删删槲槲槲
术术丰木木木木木术:枣I:半:Ic木,lc,l=爿=:l:爿:木丰木术木木木木木木丰拳术幸木宰宰宰木宰宰宰术木宰宰木丰宰:Ic枣木木宰木木;I=木木木木木木拳术木木木木木木:lc 木%这是木木svm分类器程序,svm.m:
木function木木『Result,Percentl=svm(k)
木traindata=宰宰『68086.02026 78258.22994 16879.93562 27377.96243 16879.936 79196.629 79196.665 82659木木.55574 21856.65379 27577.499 4903.743767 11830.52165 5013.44331
木92木木.122768 4903.759698 44315.26068 63794.3037 45263.43438 50228.026 21.408487 木00木幸.45 1 136 20942.32228 9824.696956 12204.78562 35799.53501 30304.092 27402.76595
45161}宰.26786 30487.31276 32029.49801 }32124.21605 49370.734 31292.81825 43293.12165
宰幸5730.765113 3888.5753 31“.5875 1229.3934 31“.555108 7600.8839 木7600木;.19 5156.091467 5293.518699 1941.927468 1787.922241 4333.338195 1801.309193 3334Ic.082062 1787.930203 1792.567381 231 1.3211 1779.877367 2188.958197 1494.037628 木4183木宰.017396 2043.627536 4055.915091 10330.97869 20305.29402 18622.11637 24560.48(124 木26291宰木.79993 25161.70752 20256.63247 126.92591 20439.26253 11819.95771 16051.62171
爿c爿1233.240288 769.8010421 867.9彻7 492.0917298 867.9376695 12.597386
12c木.595987 1050.3183 969.3001 926.3376 281.7245133 477.3122191 533.25274
木201木:.2490004 281.730913 176.2449672 148.784563 200.90886 1.538558 303.9229826 l1075c术.74632 621.6119139 1222.871234 1106.652148 18369.61423 16699.87914 23834.65724 宰15843宰.66332 21715.51509 11300.90255 3503.568083 50.987662 3309.344325 3931.762579
爿E}573.2607914 702.1027451 412.79638 199.2327699 412.7967531 1.2751933
宰1宰拳.2762821 816.6831247 491.9665119 409.4803697 168.1821886 209.1467981 120.0719552
129木木.6807309 168.1874061 115.0161877 103.0651866 122.4533325 167.431492 230.62567
卓322宰木.3403707 286.238582 557.10300 342.9706717 1152.745536 1046.366314 1358.908236 1839椭嘲荆椭懈㈣.214506 1243.394987 1601.25263 600.9173082 1385.008861 665.1165526 1139.107841
172.6568731 416. 4309222 SVM158.5904114 167分类器程序清单蒯槲喇椭.6307012 158.5851292 403.1636273
403.1620087 445.1109105 1.15371 277.2372522 102.3885965 115.6933304 .14403432
76麟㈣.04755759 102.39109 20.30397468 28.84005667 21.28598132 32.44633697 99.40742598 165.0718563 127.05556 213.5591298 225.4011635 818.35633 731.41535 833.7605292
1 165.099917 756.9988222 919.3228186 295.4365235 566.0260241 319.007837 441.4602402
152.4003736 231.3375661 144.4328577 114.3393584 144.4311829 236.6907021
236.6880933 255.0287806 176.5257342 175.2310583 34.119784 61.86003955 41.00785568
39.01246166 34.51083 19.06116009 28.19432961 20.62623032 18.62328347 49.58055795
153.704 112.3536861 173.6293758 180.9675159 445.5082656 338.1601029 524.4504949
763.4256352 361.6683987 776.6041975 190.44835 432.4401149 199.47206 363.0419056
114.6838305 98.11220149 129.519372 86.69235392 129.5197806 160.3357491
160.3339162 126.8747997 147.3963817 99.26367482 32.11137113 56.09177452 23.2156586
36.11263425 32.104947 18.1257499 22.948305 19.849678 17.21268785 43.90377021
53
沈阳航空工业学院硕士学位论文
94.22456123 87.33268467 1 1 1.3779327 104.321495 272.9361359 258.0367099 284.83617 478.3817819 266.4584735 344.4829567 141.0444122 298.0761234 1.44395 218.30783
105.9760147 63.94960 98.2299955 44.50473395 98.23674121 101.636536
101.6336822 78.85527505 129.9784932 51.78265709 19.18783695 43.5339102 21.63329184 26.566736 19.177683 15.78472857 19.66324959 18.11235759 15.0629592 38.904661 48.92212041 46.14325962 30.44158712 .58084394 1313122244 232.2626031 162.87456 218.6016338 208.7923 141.1397024 79.5275 137.3846873 140.63601 94.44984511;
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
trainespect=[1 2 2 2 2 2 3 3 3 3 3 3 3 3 3 31;
testdata=『362.53665 49551.39443 43068.07329 41927.868 3594.218004 30.7362 3341.179668 6840.2558 8838.262219 11258.19621 6294.591631 23532.681 34455.68109 17392.738 30394.436
2214.1667 2238.083848 2292.736 2014.291836 1517.639739 3837.866213
14.046786 3007.1712 7469.012128 9478.∞339 12173.945 16587.36276
5306.723324 18821.94947 21826.53173
214.57739 272.3017977 418.946 295.5028843 512.565534 253.6881844 9391.028061 8305.939511 325.2282275 250.6605029 1473.918552 709.2756626 916.9474497 6262.150673 8694.436919 193.2403041 176.3020063 193.3806231 182.2034298 107.161601 783.2908397 1377.076384
232.4325955
356.9913883 263.1278185 258.67629 822.8375969 14.822619 81.228499 138.2131535 123.7501948 42.82005286 101.27711 49.33386125 88.3675391 68.484057 35.743961 323.1534468 179.4772477 234.98269 429.9514753 699.4224 35.32258835 414.0614475 626.2730
40.27133 52.47304139 21.43672484 68.92901513 40.04247358 44.95651431 236.3142105 563.9729435 32.10428825 23.51329533 172.9783763 109.34469 111.7515604 532.2188582 250.5312629 47.4006694 31.40966679 25.41 109343 15.637507 35.56216349 25.93740397 22.77474084 17.52503936 114.9135851 97.71863862 60.99759146 172.1714278 314.3028736 165.9908628 233.9404855
25.68659262 24.49088528 30.80911713 17.6114071 14.784569 26.28292738
18.13327024 16.78533703 80.42600577 65.87955721 37.53186194 115.2443761 152.1324539 162.1279209 101.34057];
testespect=[1 X=traindata’:
1 1 1 1 1 1 1 2 2 2 3 3 3 31;
Y=trainespect’;
Xt=testdata’:
Yt=testespect’;
type=’c’: switchk
沈阳航空工业学院硕士学位论文
case 1
kemel_t.ype=’RBF-kernel’;
case 2
kemel_type=’lin_kemel’;
end
%kemeltype=’RBFI_kernel’;
gam=2: si92=2:
preprocess='preprocess’; codefct=’code_OneVsAll’:
%将“多类”转化为“两类”的编码方案
%1.Minimum Output Coding(code__MOC)
%2.Error Correcting Output Code(code_ECOC) %3.One versus All Coding(code OneVsAll) %4.One Versus One Coding(code_OneVsOne)
【Yc,codebook,old_codebook】=code(Y,codefct);
【alpha,b】=trainlssvm({X,Yc,type,gam,si92,l【emektype,preprocess}); Yd0=simlssvm({X,Yc,type,gam,si92,kemel呦pc,p佗process】l,{alpha,b),xt); %训练 %分类
Yd=code(Yd0,old_codebook,【】,codebook); Result=~%iE确分类显示 abs(Yd—Yt); Percent=sum(Result)/length(Result); %正确分类率
55
沈阳航空工业学院硕士学位论文
参考文献
【1】陈宏.带故障悬臂转子系统若干非线性动力学问题的研究【D】东北大学.2004 【2】吴敬东.转子系统碰摩的若干非线性动力学问题研究【D】东北大学.2006
【3】杨文刚.转子碰摩故障模拟试验台及其分析系统p】华北电力大学.2007
【4】Muzsynska A.Partial lateral rotor to stator rubs.Proc.of third international conference of vibration in rotation machinery,C281/84,Mech,Yorkshire,UK 1998,327.335
【5】Shaw S W.Forced vibration of a beam with one.sided amplitude constraint:theory and experiment.
Journal of Vibration and Acoustics,1985,99(2):199-212
【6】王德友.发电机转静件碰摩振动特性的提取与理论研究.北京:北京航空航天大学博士学位论文,
1995
【7】Huang Baohua,Yang Jiangang,Gao Wei.Estimation of the force S on rubbing rotor-hearing system【J】.
Journal of Southeast University(English Edition),1998,14(2):49-53
【8】刘金献,李其汉.小波变换在转子系统动静件早期碰摩故障诊断中的应用【J】.航空学报,1999,20
(3):220.223.
【9】9胡茑庆,陈敏,温熙森.随机共振理论在转子碰摩故障早期检测中的应用【J】.机械工程学报,2001,37
(9): 88.91.
【10】程军圣,于德介,杨宇.EMD方法在转子局部碰摩故障诊断中的应用,振动、测试与诊断, 2006,26(1):24-27.
【11】z.K Peng,F.L Chu and Y.He,Vibration signal analysis and feature extraction based on reassigned wavelet scalogram,Journal of Sound and Vibration,2002,253:1087·1100
【12】z.K Peng,F.L Chu,and P.W.Tse,Detection of the rubbing-caused impacts for rotor-stator fault diagnosis using reassigned scalogram.Mechanincal System and Signal Processing,2005,19:391·409.
【13】宋友,柳重堪,李其汉.基于小波包分解的早期碰摩故障诊断研究【J】.北京航空航天大学学 报,2003,29(1)87-90. 【14】 Muszynska A,et.a1. Influence of Rubbing on Rotor Dynamic 【M】.NASA Contract
No.Nas8-36719,Final Report.Bently Nevada Corporation,March,19.
【15】Betty R F.Differentiation on Rotor Response Due to Radial Rubbing[J].Trans.ASME,Journal of Vibration,Acoustics,Stress,and Reliability in Design,1985,(107):151—160.
【16】choi Y S,Noah S T.Model-locking and Chaos in a Jeffcott Rotor with Bearing
Clearances[J].Transactions of the ASME,Journal ofApplied Mechanics,1994,61:131-138. 【17】袁惠群.转子系统的若干非线性动力学问题及分岔与混沌研究【D】沈阳:东北大学博士学位论文,
2000.
【18】任朝辉,陈宏,李鹤,闻邦椿.双盘悬臂转子轴承系统碰摩故障数值仿真与实验分析【J】.中国机械工 程,2006第17卷第17期.
【191万方义.裂纹与碰摩耦合故障转子轴承系统非线性动力特性及其监测与诊断的研究.西安:西安 交通大学博士
学位论文,2003.
【20】Q.F.Wu and G.Meng.Compound rub malfunctions feature extraction based on full—spectrum cascade analysis and SVM.Mechanical Systems and Signal Processing,2006,20:2007-2021.
【21】刘耀宗,胡茑庆.Jeffcott转子碰摩故障试验研究[J】.振动工程学报,2001,14(3):96.97.
56
:,
沈阳航空工业学院硕士学位论文
【22】任辉,裴承鸣.基于LVQ神经网络的混沌时间序列分类识别【J】.机械科学与技术,2001,20(6):
916.918.
【23】崔建国,李一波等.基于小波包与支持向量机的复杂信号模式识别【J】.数据采集与处理2008,V01. 23(2)页码163-167.
【24】肖成勇,石博强,王文莉,李有荣.基Y-d,波包和进化支持向量机的齿轮早期诊断技术研究【J】.振动 与冲击,2007,V01.26 No.7.
【25】陈兴辉.基于小波包与支持向量机的滚动轴承故障诊断【C】太原理工大学.2006
【26】夏文静.基于小波变换的转子系统动静部件碰摩故障诊断技术研究[c】东南大学2006年3月.
vector machines for 【27】C Burges.Atutorialon support pattern recognition【J】.Data Miningand Knowledge
Discovery,1998,2(2):121-167.
【28】张学工.关于统计学习理论与支持向量机IJ].自动化学报.2000,V01.26(1):32-41.
【28】朱畅.基于增益调度的直接侧向力广气动力复合控制律设计【D】哈尔滨工业大学硕士论文,2007,7.
【29】杨奎河,单甘霖,赵玲玲.最小二乘支持向量机在故障诊断中的应用【J】计算机科学,2007,V01.34
No.1.
22 No.7: 778.【30】杨奎河等.基于最小二乘支持向量机的汽轮机故障诊断【J】.控制与决策,2007 V01.783.
【31】张周锁,李凌均,何正嘉.基于支持向量机的机械故障诊断方法研究【J】.西安交通大学学报,2002年, 第36卷第12期.
【32】顾小军.面向旋转机械的支持向量机方法及智能故障诊断系统研究[C】浙江大学2006年3月.
【33】潘明清.基于支持向量机的机械故障模式分类研究【D】浙江大学.2005.
【34】彭璐.支持向量机分类算法研究与应用【D】湖南大学2007年3月.
【35】孙芳.基于模式识别的机械设备故障智能诊断方法研究【D】华北电力人学2007年3月.
【36】苏金明,黄国明,刘波.Mat lab与外部程序接口【M】.北京:电子工业出版社2004年1月.
57
沈阳航空工业学院硕士学位论文
致
谢
在读研究生的两年半时间里,我要深深的感谢李一波教授和卢艳军副教授对我的教 导和帮助,对教授们严谨的治学风格和求实精神表示崇高的敬意和衷一tl,的感谢。
卢艳军老师尽可能地给我提供多种学习和交流的机会,使我能够较快地进入新的研 究领域,教授对学术的热情,对科研的探索,是我今后工作、学习中永远的目标和榜样。 我的每一篇论文,教授都认真审阅、仔细修改,从文法到句子的精练,力求简明扼要、 语义表达准确,使我不放过论文中每一个细小的环节。在此我要深深感谢卢艳军老师在 这两年半内对我的栽培和鼓励,使我在研究生阶段受益非浅。
特别要感谢我的家人和我的女友,他们在生活上、精神上和经济上的支持才。让我的 学业得以顺利地完成!同时感谢我的同学宋德胜和郑新起,感谢实验室的同学,他们在 本人课题研究的过程中给予了很大的帮助,提出了不少宝贵的意见与建议,使我得到了 很多启发!
作者:
58
沈阳航空工业学院颂士学位论文
攻读硕士期间发表(含录用)的学术论文
1.孟凡龙,卢艳军,李一波.基于小波包与支持向量机的碰摩故障识别方法研究测控技术
2009年第28卷第5期
2.卢艳军,孟凡龙,李一波等.机电设备故障诊断中的模式识别技术.机械设计与制造,
2009年月.
3
of on Rub Fault Method impact Diagnosis 巧un.Research 3.Li Yibo,Meng Fanlong,Lu YaEMD and Based on SVM.ICMA2009,Agu 10-14,2009,Changchun, China. Rotming Machinery Method of on Rub Fault Yibo.Research 4.Lu impact Diagnosis Rotating Fanlong,Li Yanjun,Meng of the 2009 International and Based on SVM.Proceedings Machinery wavepacket Conference on and Mechatronics Automation(ICMTMA 2009),April 1l-12,2009,Technology Measuring Zhangjiajic,China.
59
因篇幅问题不能全部显示,请点此查看更多更全内容
Copyright © 2019- yrrf.cn 版权所有 赣ICP备2024042794号-2
违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com
本站由北京市万商天勤律师事务所王兴未律师提供法律服务