振动信号的处理由于振动测试中的到的数据一般不是真实的振动信号,而是与真实的振动信号之间存在一定的差别,所以未经分析处理、修正,直接采用测试得到的振动信号作为结果往往会产生误差,有时候甚至得到错误的结果。65340
振动信号处理就是通过一些数学运算方法对振动测试所得的信号进行加工,去伪存真,计算出我们需要了解的内容,以便进一步的分析研究。经典的振动信号处理一般可以分为振动信号预处理,时域分析,频域分析和模态分析几个部分。
预处理是指在信号分析前需要对所采的数据进行处理,以提高数据的可靠性和真实性,并检查信号的随机性,以便正确地选择分析处理方法。其中,消除多项式趋势项是振动信号预处理需要做的主要工作。在振动信号的采样过程中,由于环境的干扰以及其他因素的影响,会产生偏离基线,甚至偏离基线的大小还会随时间变化,这个变化的过程就称为信号的趋势项。趋势项直接影响信号的正确性,应该去除。常用的消除趋势项的方法是多项式最小二乘法[1]。论文网
振动信号的时域处理又称为波形分析,主要是对是与信号波形的分析处理。滤波是时域信号波形分析的重要内容。根据需要,滤波或者保留实测信号的某些频率成分则通过滤波处理来实现。与此同时将位移、速度和加速度进行相互转换的积分和微分变换也属于振动信号的时域处理范畴。除此之外,更常用的是一些概率和数理统计的处理方法,如概率分布函数、概率密度函数、均值、均方值、方差和相关分析等。
频域处理是建立在傅里叶变换基础上的时频变换,处理后得到的结果是以频率为变量的函数,称为谱函数。频域处理的主要方法有傅里叶变换,通过傅里叶变换结果的实虚部可转换成幅值谱和相位谱[2]。
相关软件技术
Visual Basic是微软公司系列可视化开发工具Visual Studio中的产品。它的主要思想是用部件组装应用程序,Visual Basic是一个功能强大的可视化开发工具,创建Windows应用程序较为简便、快捷。我们不仅可以用它来开发小型的桌面管理系统和应用程序,还可以用它来创建企业级的、分布式的基于Web的高性能的应用程序和部件。
MATLAB是MathWorks公司开发的功能强大的工程软件,是一种支持概念设计、算法开发、建模仿真的理想的集成环境。特别是在一些常用的复杂的矩阵运算以及仿真运算上,MATLAB充分体现了其优越性,用MATLAB编写程序犹如在演算纸上排列出公式与求解问题[3]。
在程序开发过程中,希望开发周期短,选择Visual Basic作为开发工具多。但是当应用程序中遇到复杂的数学运算,如需要大运算量的矩阵计算及对分析结果进行实时直观的图形化显示时,应用VB进行程序设计的工作量大,对程序设计人员要求高,难度也增大很多。如果将VB在图形用户界面开发及其他方面的优势和Matlab在数学处理方面的优势结合起来,互取长补短,就可以达到软件开发的高效性与可用性。
为了实现VB与MATLAB的混合编程,采用了动态链接库(DLL)的方法。DLL是一个包含可由多个程序同时使用的代码和数据的库,DLL不是可执行文件。动态链接提供了一种方法,使进程可以调用不属于其可执行代码的函数。函数的可执行代码位于一个 DLL 中,该 DLL 包含一个或多个已被编译、链接并与使用它们的进程分开存储的函数。DLL 还有助于共享数据和资源。多个应用程序可同时访问内存中单个DLL 副本的内容。DLL 是一个包含可由多个程序同时使用的代码和数据的库。因此将MATLAB中的程序编译成为动态链接库,就可以使用VB调用其DLL文件,实现混合编程,并且得到的程序可以完全脱离MATLAB,随VB一起发布。