振动信号预处理方法平滑处理与MATLAB实现.docx

上传人:b****4 文档编号:6582450 上传时间:2023-05-10 格式:DOCX 页数:17 大小:212.62KB
下载 相关 举报
振动信号预处理方法平滑处理与MATLAB实现.docx_第1页
第1页 / 共17页
振动信号预处理方法平滑处理与MATLAB实现.docx_第2页
第2页 / 共17页
振动信号预处理方法平滑处理与MATLAB实现.docx_第3页
第3页 / 共17页
振动信号预处理方法平滑处理与MATLAB实现.docx_第4页
第4页 / 共17页
振动信号预处理方法平滑处理与MATLAB实现.docx_第5页
第5页 / 共17页
振动信号预处理方法平滑处理与MATLAB实现.docx_第6页
第6页 / 共17页
振动信号预处理方法平滑处理与MATLAB实现.docx_第7页
第7页 / 共17页
振动信号预处理方法平滑处理与MATLAB实现.docx_第8页
第8页 / 共17页
振动信号预处理方法平滑处理与MATLAB实现.docx_第9页
第9页 / 共17页
振动信号预处理方法平滑处理与MATLAB实现.docx_第10页
第10页 / 共17页
振动信号预处理方法平滑处理与MATLAB实现.docx_第11页
第11页 / 共17页
振动信号预处理方法平滑处理与MATLAB实现.docx_第12页
第12页 / 共17页
振动信号预处理方法平滑处理与MATLAB实现.docx_第13页
第13页 / 共17页
振动信号预处理方法平滑处理与MATLAB实现.docx_第14页
第14页 / 共17页
振动信号预处理方法平滑处理与MATLAB实现.docx_第15页
第15页 / 共17页
振动信号预处理方法平滑处理与MATLAB实现.docx_第16页
第16页 / 共17页
振动信号预处理方法平滑处理与MATLAB实现.docx_第17页
第17页 / 共17页
亲,该文档总共17页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

振动信号预处理方法平滑处理与MATLAB实现.docx

《振动信号预处理方法平滑处理与MATLAB实现.docx》由会员分享,可在线阅读,更多相关《振动信号预处理方法平滑处理与MATLAB实现.docx(17页珍藏版)》请在冰点文库上搜索。

振动信号预处理方法平滑处理与MATLAB实现.docx

振动信号预处理方法平滑处理与MATLAB实现

本科生毕业论文

振动信号预处理方法-平滑处理及其MATLAB实现

作者姓名

 

学院:

机电工程学院

专业:

班级:

学号:

指导教师:

职称(或学位):

 

2016年5月1

原创性声明

本人郑重声明:

所呈交的论文(设计),是本人在导师的指导下,独立进行研究工作所取得的成果。

除文中已经注明引用的内容外,本论文(设计)不含任何其他个人或集体已经发表或撰写过的作品成果。

对本论文(设计)的研究做出重要贡献的个人和集体,均已在文中以明确方式标明。

本人完全意识到本声明的法律结果由本人承担。

学生签名:

年月日

指导声明

本人指导的同学的毕业论文(设计)题目大小、难度适当,且符合该同学所学专业的培养目标的要求。

本人在指导过程中,通过网上文献搜索及文献比对等方式,对其毕业论文(设计)内容进行了检查,未发现抄袭现象,特此声明。

指导教师签名:

年月日

 

 

振动信号预处理方法-平滑处理及其MATLAB实现

作者姓名(宋体四号,居中)

(机电工程学院指导教师:

XXX)(楷体五号,居中)

摘要:

进行振动信号测试时往往由于外界干扰的存在,使得测量信号不光滑,质量差,严重时后续分析难以展开,可见振动信号预处理是必要的步骤。

本文对振动信号预处理算法进行详细分析,讨论若干种平滑处理算法,并以五点三次平滑法与滑动平均值法为例,具体讨论了平滑处理的流程。

结果表明结果表明五点滑动平均法与五点三次平滑法两种算法都简单明了,可以以很小的计算量实现良好预处理效果,提高振动信号质量。

两种算法都是有效的预处理方法,借助于MATLAB软件平台实现简便,因此有很强的实用价值。

关键词:

振动信号;平滑处理;平均值;MATLAB

Vibrationsignalpreprocessingmethods-smoothingprocessingbyMATLAB

Nameofauthor

CollegeofMechanicalandElectricalEngineering,Advisor:

XXX

Abstract:

Whenthevibrationsignalistested,themeasurementsignalisnotsmoothandlowqualitybecauseofoutsideinterference.Ifthesituationisserious,itisdifficulttocarryoutsubsequentanalysis,sovibrationsignalpreprocessingstepisnecessary.Thispaperwilldicussthevibrationsignalpreprocessingalgorithmbythesmoothingalgorithmsandfivecubicsmoothingtheslidingaveragemethod.Theresultshowthatthetwoalgorithmsoffive-pointmovingaverageandthreefiver-pointsmoothingarebothsimple,achievegoodpretreatmenteffectwithsmallamoutofcomputation,imrovethequalityofvibrationsignal.BothalgorithmsareeffectivepretreatmentmethodsbyusingMATLABsoftwareplatform,whichhasastrongpracticalvalue.

Keywords:

Vibrationsignal;smoothing;mean;MATLAB

 

1绪论

振动是自然界普遍存在的现象,大到地震、海啸等宏观振动,小到粒子热运动、布朗运动等微观运动。

对于两个固有频率相同的物体,当一个物体发生振动时将导致另外一个物体产生相同频率振动,该现象即为共振,共振对于人类生产生活同时带来好处与危害。

如何合理利用有利振动的同时克服有害振动,是人们普遍关注的问题。

为更好地掌握振动规律,振动测试是必不可少的环节。

但是在振动测试过程中,往往存在多种干扰,导致测试系统得到的数据并不准确,将偏离真实数值。

因此在完成振动信号测试之后,应当对采集得到的数据进行预处理,进而提高数据的真实性与可用性,并分析振动信号的随机性,从而确定具体的处理手段。

仪器分析过程中为了掌握信号参数,提高信噪比,常常要求进行曲线平滑、信号求导等一系列操作。

实际振动信号测试过程中,小波动往往因为随机误差而产生,同时大的波动一般拥有有用信息。

为此平滑技术有重要意义。

早分析仪器的平滑技术中,大多是基于最小二乘多项式平滑的。

通常经过数据采集器采样获得的振动信号大多有多种噪声,除了50Hz的工频及倍频程以外,还包含不规则的随机干扰信号,此类干扰信号频带宽,且高频成分多,使得最终得到的振动曲线出现很多毛刺,为提高振动曲线光滑度,平滑处理是极为有效的方法之一。

本文将对振动信号的预处理方法进行分析,并详细讨论平均法与五点三次平滑法的运用。

2振动信号预处理算法分析

数字滤波器在离散系统中有很强的适用性,可以对输入信号的波形以及频率进行加工,在目前振动信号预处理中得到广泛应用。

信号的预处理方法主要包括两部分,即消除多项式趋势项与平滑处理两种。

前者将多项式趋势项消除以后,可以将偏离基线的信号过滤掉,进而得到正确性更高的信号;后者则是将信号里的噪声除去,进而提升振动曲线光滑度。

图2-1与2-2分别为振动信号原始曲线与完成消除趋势项与平滑处理以后得到的曲线。

图2-1原始信号

图2-1经过消除趋势项与平衡处理得到的信号

常用的振动信号预处理算法包括算术平均值法、加权平均值法、五点三次平滑法、滑动平均值法、中值法、模糊控制法等。

本章将对常用算法进行分析。

2.1算术平均值法

算术平均值法首先确定一个值Y,使得Y和所有采样值误差的平方和最小,表达式如下:

利用一元函数极限的求解方法可以得到Y值:

通过上式实现的振动信号预处理就是算术平均值算法。

假如每次测量得到信号Si与噪声Ci,那么完成N次同样测量之后,就可以得到所有测量值之和:

通常使用均方根表征噪声强度大小,如果测量过程中的噪声是随机信号,完成N次测量以后得到的噪声强度和如下式:

用S和C分表代表信号与噪声的平均幅值,那么完成N次测量以后,得到的算术平均信噪比如下:

算术平均值算法应用范围广泛,主要针对在某一数值上下波动频繁的信号。

在振动信号测量过程中,采用算术平均值算法时如果只选取一个采样值为依据得到的结果往往不理想。

这种算法在处理脉冲性干扰时效果不佳,所以在脉冲性干扰相对严重的情况下慎用。

采用算术平均值算法实现振动信号预处理的平滑程度直接取决于N的大小,当N很大时,平滑度高,然而此时灵敏度低。

2.2加权平均值法

加权平均值法即对多次测量所得的采样值赋予加权系数,从而有效提高测量系统对干扰的灵敏度。

采用加权平均值法时,对不同采样值取得不同比重,其计算公式如下:

式中Ck即为C1、C2……、Cn,并且符合以下关系式:

且C1、C2……、Cn之和为1。

Ck选取可以具体情况进行调整,最为常见的即为加权系数法,C1、C2……、Cn分别如下取值:

上式

代表了控制对象时产生的滞后时长。

加权平均值算法通常适用范围受限,多应用在系统的纯滞后时间常数偏大的情况下,这种情况下采样周期短,针对不同相对采样时间所测量的采样值赋予不同权重,进而对于干扰及其影响程度十分敏感。

使用加权平均值算法需要不停地计算加权技术,导致控制速度缓慢,所以应用较少。

2.3中值法

中值算法是针对某被测量进行多次连续采样,采样的次数一般为奇数次,将若干次采样值按照从小至大的顺序进行排列,然后取得其中的中间值当成本次采样值。

使用中值算法能够有效避免偶然因素对结果的影响,主要是将采样器的不稳定性降至最低。

但是中值算法多用于变化相对缓慢的被测参数,例如温度、液面高度等,然而针对速度、振动等信号往往效果不佳。

2.4滑动平均值法

滑动平均值法的原理是依据某一测量点附近其他采样点的波动幅值对此点的波幅进行修正,进而使得振动曲线足够平滑,实现降噪目的。

滑动平均值法通过对周围点进行简单平均,或者对附近点实现加权平均。

通常取附近五个点进行平均,其依据以下公式:

其中x代表采样所得数据值;y代表完成平滑处理之后的数据;m为测量数据数量;N是平均点数;h是加权平均因子。

加权平均因子的取值符合下式:

如果采用简单平均法,则

,因此有:

如果采用加权平均法,并且选择5点进行加权平均,此时N=2,则可按照如下方法取值:

其中h-2到h2依次为1/9、2/9、3/9、2/9、1/9。

滑动平均值法是常用的基于最小二乘法的平滑处理方法,主要针对离散数据有良好处理效果。

五点滑动平均所采用的计算公式如下所示:

其中,i取3、4、,、……、m-2。

滑动平均值算法与算术平均值算法以及加权平均值算法有共同点,即每当完成一次有效采样值的计算以后,都要求实现多次连续采样。

如果由于测量设备问题导致采样速度不够快,以及振动数据四算速率很高的情况下(比如实时系统),无论是算术平均法、加权平均法还是滑动平均值算法都难以适用。

对于A/D数据而言,进行数据采样时通常10次/秒,并且如果每秒需要输入四次数据,那么N值应小于等于2。

采用滑动平均值算法只需要一次采样,然后把这次采样得到的值与前N-1次共同求平均,进而得到有效采样值。

滑动平均值算法的思想是将N个采样数据作为同一序列,且其长度是N,每当获得新采样值以后,需要将采样结果放置在该序列的末尾,同时将序列第一个数据删除,即实现数据的更新。

滑动平均算法的优势在于抗周期性噪声效果良好,且获得的振动曲线平滑程度很高,灵敏性优良,缺点在于无法高效地抑制了偶然性脉冲干扰的影响,因此如果脉冲干扰较多,不宜使用滑动平均算法,往往在高频振荡系统中应用较多。

2.5五点三次平滑法

五点三次平滑法同样是处理离散数据常用的预处理手段,其主要针对等间距数值而言,并在此基础上实现数据处理。

假设y是x的函数,任何y均可以通过泰勒公式詹凯臣幂级数的形式,在数据测量过程中只需要前四项,因此有:

y(x)=a0+a1x1+a2x22+a3x33

因此可以计算其方差和:

依据最小二乘法原理,就可以得到下述等式关系:

由于所取数值均为等距离的数值,方便起见,可以取xi=0所对应的5个点的值。

=,进而可以得到a0到a3的值分别如下:

联立方程组并将x值带入,运用五点三次平滑法即可得到数据处理计算公式:

根据上式就可以实现振动信号的预处理,从关系式不难发现,经过处理所得到的数据仅与处理前的数据,和另外五个数值相关,且与间隔及x的选取是无关的。

所以任何等间距数据均可以用五点三次平滑法进行处理。

五点三次平滑法中节点个数要求至少为5,当节点个数大于5的情况下如下:

五点三次平滑公司如下为了实现对称的目的,两端采用上述

,其余的都使用

相应公式。

从而实现所有子区间均采用不同的三次最小二乘多项式实现平滑处理。

根据推导公式不难发现,针对等距节点而言,平滑公式仅仅是用到实验数据Yi,而和节点Xi与节点间等距离h无关。

2.6模糊控制算法

在上述若干种平滑处理方法中,普遍运用了平均法的原理,只不过实现方法有差别,这些算法的计算公式均可用下式表示:

根据该式子,其中x代表了采样数据,而y则表示经过平滑处理之后所得的数据。

M代表总的数据点数,其窗口宽度可以用2N+1表示,h是加权平均因子。

模糊平滑方法在近年来得到越来越多关注,并被认为是极其有发展潜力的数据处理手段,如今国内外学者相继提出模糊平滑算法、模糊加权中值算法、基于模糊逻辑的信号处理等。

模糊平滑方法无论在时域还是频率上均有更多优势,尤其在振动测量中包括大量混合数据,模糊平滑方法有广阔应用前景。

本文主要对滑动平均值法与五点三次平滑法进行分析,基于MATLAB软件实现两种方法的平滑处理。

3基于MATLAB的振动信号平滑处理

3.1MATLAB简介

MATLAB是一款基于M文件进行运行以及调试的软件,M文件属于解释性语言,其语法没有计算机高级语言复杂,结构及形式更加简便,因此便于使用者更快掌握,程序调试更容易,有很强的人机交互能力。

MATLAB拥有强大的工具箱,其中绝大多数函数均通过M文件进行编制,其中有专门针对信号处理的工具箱,在振动测试中应用广泛,信号分析能力强,且可以直接调用相关函数,满足灵活的编程需求。

本文研究主要对振动信号预处理方法进行讨论,MATLAB提供的图形程序可以极大方便计算过程可视化,进而对振动信号预处理效果进行观察对比。

数据对比需要首先经过FFT分析,基于MATLAB的振动信号预处理流程如下:

输入原始数据文件与采样频率,分别采用五点直线滑动平均法与五点三次平滑法进行平滑处理;输入平滑次数并得到输出平滑数据文件,与原始波形进行对比;选择窗函数之后进行短时傅里叶变换,输出分析数据文件,对输出的图形进行对比,分析两种平滑处理所得数据与原始数据的差别。

3.2算例

为验证五点直线滑动平均法和五点三次平滑法进行振动信号预处理的效果,本文分别以某实测的振动信号为例进行分析,分别用五点直线滑动平均法与五点三次平滑法对其进行平滑处理,对比处理前后效果,验证算法可行性。

3.3计算代码

五点滑动平均法

fid=fopen('C:

\ph.txt','r');

x=fscanf(fid,'%f',inf);

fclose(fid);

sf=1000;

n=length(x);

t=(0:

1/sf:

(n-1)/sf)';

a=x;

m=3;

fork=1:

m

b

(1)=1/5*(3*a

(1)+2*a

(2)+a(3)-a(4));

b

(2)=1/10*(4*a

(1)+3*a

(2)+2*a(3)+a(4));

fori=3:

n-2

b(i)=1/5*(a(i-2)+a(i-1)+a(i)+a(i+1)+a(i+2));

end

b(n-1)=1/10*(a(n-3)+2*a(n-2)+3*a(n-1)+4*a(n));

b(n)=1/5*(-a(n-3)+a(n-2)+2*a(n-1)+3*a(n));

a=b;

end

y=a;

subplot(2,1,1);

plot(t,x);

gridon;

subplot(2,1,2);

plot(t,y);

gridon;

五点三次平滑法

fid=fopen('C:

\ph.txt','r');

x=fscanf(fid,'%f',inf);

fclose(fid);

sf=1000;

n=length(x);

a=x;

fork=1:

m

b

(1)=(69*a

(1)+4*(a

(2)+a(4))-6*a(3)-a(5))/70;

b

(2)=(2*(a

(1)+a(5))+27*a

(2)+12*a(3)-8*a(4))/35;

forj=3:

n-2

b(j)=(-3*(a(j-2)+a(j+2))+12*(a(j-1)+a(j+1))+17*a(j))/35;

end

b(n-1)=(2*(a(n)+a(n-4))+27*a(n-1)+12*a(n-2)-8*a(n-3))/35;

b(n)=(69*a(n)+4*(a(n-1)+a(n-3))-6*a(n-2)-a(n-4))/70;

a=b;

end

y=a;

subplot(2,1,1);

plot(t,x);

gridon;

subplot(2,1,2);

plot(t,y);

gridon;

消除多项式趋势项

fid=fopen('C:

\gfj.txt','r');

x=fscanf(fid,'%f');

fclose(fid);

sf=1000;

n=length(x);

t=(0:

1/sf:

(n-1)/sf)';

m=3;

a=polyfit(t,x,m);

y=x-polyval(a,t);

plot(t,y);

gridon;

3.4算法机理

以五点直线滑动平均法为例,对算法机理进行讨论。

基于MATLAB的振动信号预处理可以实现下述人机对话:

将原始数据文件、采样频率(1000HZ)输入,并确定采用五点直线滑动平均法,平滑次数选择为四次,输出文件为txt格式,窗函数选择汉宁窗,输出分析文件为txt格式。

4结果分析

由于本次实测得到的信号中存在趋势项,且趋势项的存在会对二次积分位移信号产生一定影响,因此在计算代码中进行了多项式趋势项的消除。

为了更好体现出消除趋势项的作用,针对采集得到的数据增加三阶趋势项,然后采用最小二乘法消除趋势项,得到消除趋势项前后的曲线如图4-1所示。

原始波形

消除多项式趋势项

图4-1消除多项式趋势项

从图4-1可以看出,使用最小二乘法消除趋势项之后,原始信号趋势项被消除,得到的信号更加接近实测数据,使信号得到改善。

消除趋势项与五点滑动平均处理以及五点三次平滑法相结合的预处理方法才能最大程度改善信号质量。

利用最小二乘法消除高阶趋势项以后信号均值与方差对比如下:

表4-1最小二乘法消除高阶趋势项后信号均值与方差对比

原始振动信号

加三阶趋势项后信号

消除趋势项后信号

均值

1.8549

37.7346

0

方差

1612.8184

1620.8273

1612.6456

进行最小二乘法消除趋势项以后,然后分别采用五点滑动平均法与五点三次平滑法对信号进行平滑处理,处理结果分别如图4-1与图4-2所示。

从原始波形图中发现,存在较多高频成分,波形图中毛刺较多,可见受外界干扰十分严重,该数据只有进行处理后方可使用。

五点三次平滑法与五点滑动平均法都是有效的振动信号预处理方法,实现了平滑处理,进而使得测得振动信号质量更高。

由于在进行本次实验之前完成了多项式趋势的消除,使得波形数据和实测数据更加符合。

五点三次法有效提高波形图平滑程度,质量更高、而且五点三次法能够降低高频随机噪声,并且使得模态参数识别过程中提高拟合效果。

五点平滑平均法导致谱曲线峰值有所下降,而且体型更宽,这就容易导致识别参数时误差变大。

总而言之,本次实验有效地利用两种平滑算法对含噪声的信号进行平滑处理,降低了噪声信号不可预测性与高破坏性对信号结果的影响,进而提高信号处理结果可靠性,但两种平滑处理方法均使得部分信息丢失,五点三次平滑处理得到的波形相比五点滑动平均法保留了更多重要信息,在实际工程中应根据实际需求选择合理的平滑次数,从而使处理得到的波形数据与实际情况吻合度更高。

图4-1五点滑动平均法的平滑处理分析结果

图4-2基于五点三次平滑动法的平滑处理分析结果

5总结

振动信号测试时往往由于干扰的存在,使得测量数据与真实数值之间存在误差,为此需要对所测数据实现预处理,进而提升数据的真实性与可用性。

常见的预处理方法包括标定变换、消除多项式趋势项以及平滑处理,本文分析了常用的平滑处理手段,并以五点滑动平均法与五点三次平滑法为例分析振动信号预处理的过程及具体算法实现。

为对比两种平滑处理方法,本文进行两个算例的对比。

结果表明五点滑动平均法与五点三次平滑法两种算法都简单明了,可以以很小的计算量实现良好预处理效果,提高振动信号质量。

但是,通过对两种算法的实现过程进行对比,直线滑动平均法平滑次数更少一些,采用五点三次平滑法需要同时针对时域与频域信号进行处理,才可以实现模态参数识别时更佳拟合效果。

两种算法都是有效的预处理方法,借助于MATLAB软件平台实现简便,因此有很强的实用价值。

致谢:

本论文从选题到终稿均在导师XXX的悉心指导下一步步完成,XXX教授严谨的学术风格与扎实的理论均对我的成长起到积极作用,也使我对专业知识有了更深入的认识,再次诚挚感谢XXX老师这段时间以来对我的指导与关心。

本文的完成也离不开学校图书馆的帮助,查阅书籍以及文献资料是本文写作过程中必不可少的一部分。

在此对学校、学院在四年来为我学习提供的优渥条件表示感谢。

最后,我还要感谢XXX、XXX,你们在我论文写作过程中给予不少支持与帮助,没有你们的帮助本文将无法如期完成。

参考文献:

[1]陈苏,陈国兴,戚承志等.振动信号批处理软件平台的搭建与应用[J].南京工业大学学报(自然科学版),2014,36(4):

89-94.

[2]袁芳.多通道振动信号分析系统研究与设计[D].南京理工大学,2014.

[3]姬玉芳,孙运强,姚爱琴等.基于MATLAB的某产品振动信号处理[J].电子测试,2010,(5):

89-92.

[4]唐世振.基于MATLAB的振动信号采集与分析系统的研究[D].中国海洋大学,2007.

[5]于志伟,程圣国.一种用于三维滑坡模型试验数据处理的新方法[J].长江科学院院报,2014,31(5):

39-42,51.

[6]许福友,陈艾荣.信号预处理对桥梁颤振导数识别结果影响分析[J].武汉理工大学学报,2008,32(5):

783-785.

[7]高亚东,张曾锠.某旋翼试验台振动信号的采集与预处理系统[J].数据采集与处理,2008,9(23):

163-167

 

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 求职职场 > 简历

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2