主要内容

计算振动信号的包络谱

使用信号分析仪计算轴承振动信号的包络谱并寻找缺陷。生成MATLAB®脚本和功能以自动分析。

生成轴承振动数据

图中所示尺寸的轴承被驱动在 F 0. = 25. 周期每秒。加速度计以10千赫对轴承振动进行采样。

产生振动信号从两个有缺陷的轴承使用bearingdata函数。在其中一个信号中,XBPFO,轴承在外部竞争中具有缺陷。在另一个信号中,XBPFI.时,轴承内圈有缺陷。有关轴承建模和诊断缺陷的更多细节,请参见旋转机械的振动分析envspectrum

[t,xbpfo,xbpfi,bpfi] = bessiondata;

用信号分析仪计算包络谱

打开信号分析仪并将BPFO信号拖动到显示。通过在信号表中选择它来向信号添加时间信息并单击时间价值按钮在分析仪选项卡。选择采样率和开始时间选项并输入10 kHz采样率。

在这方面展示选项卡,单击光谱打开光谱视图。振动信号的频谱为3 kHz调制的bfo谐波,对应于中规定的冲击频率bearingdata.在光谱的低端,驱动频率及其订单模糊了其他特征。

选择信号,然后在分析仪选项卡,单击复制来生成它的副本。给新信号起个名字envspec并将其拖动到显示。使用Hilbert变换计算信号的包络谱:

  1. 删除信号的直流值。在这方面分析仪选项卡,单击预处理▼并选择去趋势.在这方面去趋势选项卡出现,选择常数作为方法。点击去趋势

  2. 带通滤波去趋势信号。在这方面分析仪选项卡,单击预处理▼并选择带通.在这方面带通出现的选项卡,输入2250Hz和3750 Hz,分别为下部和上通带频率。点击带通

  3. 计算过滤信号的包络线。在这方面分析仪选项卡,单击预处理▼并选择信封.在这方面信封选项卡出现,选择希尔伯特作为方法。点击信封

  4. 使用方法去掉信封的直流值去趋势

信封频谱出现在显示器的频谱视图中。包络谱清晰地显示出bfo谐波。

创建集成分析脚本的步骤

如果必须为许多不同的轴承重复,则信封谱的计算可能会令人疑问。信号分析仪可以生成MATLAB®脚本和功能,以帮助您自动化计算。

作为练习,重复前面对BPFI信号的分析。信号分析仪生成两个可用于自动化的组件:

  1. 进行预处理,一种通过拒绝它,过滤它并计算其信封来预处理信号的函数

  2. 计算功率谱,一个计算信封谱的脚本

要创建集成的分析脚本,请将预处理函数和绘图脚本不加更改地放在一个文件中。(或者,您可以将函数保存在单独的文件中。)

  • 如果您将脚本和函数保存在单个MATLAB®脚本中,请记住函数必须出现在末尾。

  • 必须添加关键字结尾在每个功能的末尾。

1.创建预处理功能

首先,创建重现预处理步骤的函数。选择envspec信号。在这方面分析仪选项卡,单击生成函数.的函数,称为进行预处理默认情况下,显示在编辑器中。将生成的函数保存在集成分析脚本的末尾。函数需要第二个参数来指定时间信息。使用该函数对BPFI信号进行预处理。

envspec =预处理(xBPFI t);

2.创建Spectrum脚本

在应用程序中,通过清除其名称旁边的复选框,从显示中删除未处理的信号。在这方面展示选项卡,单击生成脚本▼并选择频谱脚本.脚本出现在编辑器中。在集成的分析脚本中包含生成的代码。运行分析脚本时,生成的频谱脚本会计计算预处理的BPFI信号的包络频谱。

计算功率谱%由MATLAB(R) 9.6和信号处理工具箱8.2生成。%生成日期:12- 11 -2018 15:13:34%的参数timeLimits = [0 0.9999];%秒frequencyLimits = [0 5000];%赫兹%%索引为感兴趣的信号时间区域envspec_ROI = envspec (:);sampleRate = 10000;%赫兹starttime = 0;%秒Minidx = CEIL(MAX((1)-StartTime)* Sampleate,0))+ 1;maxidx =楼层(min((2)-starttime)* samplate,长度(envspec_roi)-1))+ 1;envspec_roi = envspec_roi(minidx:maxidx);%计算谱估计%运行下面不带输出参数的函数调用来绘制结果[Penvspec_ROI, Fenvspec_ROI] = pspectrum(envspec_ROI,sampleRate,......“FrequencyLimits”, frequencyLimits);

绘图信封谱

绘制包络谱。将峰值位置与前十个BPFI谐波的频率进行比较。你也可以用pspectrum.命令没有输出参数。

情节(Fenvspec_ROI (Penvspec_ROI))(X, Y) = meshgrid ((1:10) * bpfi ylim);情节(X, Y,”:k”)举行xlim (10 * bpfi [0])

图中包含一个轴对象。axis对象包含11个类型为line的对象。

函数代码

信号预处理功能

该应用程序生成的信号预处理功能结合了去趋势、带通滤波和包络计算。

函数y =预处理(x,tx)%预处理输入x%此功能期望输入向量x和时间值矢量%tx。TX是单位秒数的数字矢量。%由MATLAB(R) 9.6和信号处理工具箱8.2生成。%生成日期:12- 11 -2018 15:09:44y =去趋势(x,'持续的');Fs = 1 /意味着(diff (tx));%平均采样率Y =带通(Y,[2250 3750],FS,'陡峭',0.85,“StopbandAttenuation”,60);[Y,〜] =信封(Y);y = detrend(y,'持续的');结尾

承载数据生成功能

轴承具有节径 P. = 12. Cm和轴承接触角 θ = 0. .每一个 N. = 8. 滚动元件有一个直径 D. = 2 厘米。外部种族仍然是静止的,因为内部比赛被驱动 F 0. = 25. 周期每秒。加速度计以10千赫对轴承振动进行采样。

函数[t,xBPFO,xBPFI,bpfi] =方位数据p = 0.12;d = 0.02;n = 8;th = 0;f0 = 25;fs = 10000;

对于健康的轴承,振动信号是几个驱动频率的叠加,嵌入在白色高斯噪声中。

t = 0:1 / FS:1-1 / FS;Z = [1 0.5 0.2 0.1 0.05] * SIN(2 * PI * F0 * [1 2 3 4 5]''。* T);Xhealthy = z + Randn(尺寸(z))/ 10;

外部竞争的缺陷导致一系列5毫秒的影响,随着时间的推移导致轴承磨损。轴承的球通频外竞争(BPFO)发生冲击,

BPFO = 1 2 nf 0. [ 1 - D. P. 因为 θ ]

模拟影响为3 kHz指数阻尼正弦曲线的周期列车。将影响添加到健康信号以产生BPFO振动信号。

bpfo = n * f0 / 2 *(1-d / p * cos(th));TMP = 0:1 / FS:5E-3-1 / FS;XMP = SIN(2 * PI * 3000 * TMP)。* EXP(-1000 * TMP);XBPFO = XHealthy + Pulstran(T,0:1 / BPFO:1,XMP,FS)/ 4;

如果缺陷在内部竞争中,则影响发生在频率

BPFI = 1 2 nf 0. [ 1 + D. P. 因为 θ ]

通过向健康信号添加冲击来产生BPFI振动信号。

bpfi = n * f0 / 2 *(1 + d / p * cos(th));XBPFI = XHealthy + Pulstran(T,0:1 / BPFI:1,XMP,FS)/ 4;结尾

也可以看看

应用

职能

相关例子

更多关于