使用信号分析仪计算轴承振动信号的包络谱,查找缺陷。生成MATLAB®脚本和函数来自动化分析。
图中所示尺寸的轴承被驱动在 周期每秒。加速度计以10千赫对轴承振动进行采样。
产生振动信号从两个有缺陷的轴承使用bearingdata
函数。在其中一个信号中,xBPFO
,轴承外圈有缺陷。在另一个信号中,xBPFI
时,轴承内圈有缺陷。有关轴承建模和诊断缺陷的更多细节,请参见旋转机械的振动分析和envspectrum
.
[t xBPFO xBPFI, bpfi] = bearingdata;
开放信号分析仪并将bfo信号拖动到显示器。将时间信息添加到信号中,方法是在信号表中选择信号并单击时间值按钮分析仪选项卡。选择采样率和开始时间
选项并输入10khz采样率。
在显示选项卡上,单击光谱打开光谱视图。振动信号的频谱显示了由3 kHz冲击频率调制的bfo谐波。在频谱的低端,驱动频率和它的顺序掩盖了其他特征。
选择信号,在分析仪选项卡上,单击重复的来生成它的副本。给新信号起个名字envspec
然后拖到显示器上。使用Hilbert变换计算信号的包络谱:
去掉信号的直流值。在分析仪选项卡上,单击预处理▼并选择去趋势.在去趋势出现的选项卡,选择常数
的方法。点击去趋势.
带通滤波去趋势信号。在分析仪选项卡上,单击预处理▼并选择带通.在带通,分别输入2250hz和3750hz作为上、下通频带频率。点击带通.
计算过滤信号的包络线。在分析仪选项卡上,单击预处理▼并选择信封.在信封出现的选项卡,选择希尔伯特
的方法。点击信封.
使用方法去掉信封的直流值去趋势.
信封频谱出现在显示器的频谱视图中。包络谱清晰地显示出bfo谐波。
如果包络谱的计算必须为许多不同的轴承重复,那么计算就会变得很繁琐。信号分析仪可以生成MATLAB®脚本和函数,以帮助您自动化计算。
作为练习,重复前面对BPFI信号的分析。信号分析仪生成两个对自动化有用的组件:
要创建集成的分析脚本,请将预处理函数和绘图脚本不加更改地放在一个文件中。(或者,您可以将函数保存在单独的文件中。)
如果您将脚本和函数保存在单个MATLAB®脚本中,请记住函数必须出现在末尾。
必须添加关键字结束
在每个函数的末尾。
1.创建预处理函数
首先,创建重现预处理步骤的函数。选择envspec
信号。在分析仪选项卡上,单击生成函数.的函数,称为进行预处理
默认情况下,显示在编辑器中。将生成的函数保存在集成分析脚本的末尾。函数需要第二个参数来指定时间信息。使用该函数对BPFI信号进行预处理。
envspec =预处理(xBPFI t);
2.创建频谱脚本
在应用程序中,通过清除其名称旁边的复选框,从显示中删除未处理的信号。在显示选项卡上,单击生成脚本▼并选择光谱的脚本
.脚本将出现在编辑器中。在集成分析脚本中包含生成的代码。当您运行分析脚本时,生成的频谱脚本将计算预处理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;%赫兹开始时间= 0;%秒minIdx =装天花板(max(时限(1)开始时间)* sampleRate, 0)) + 1;maxIdx =地板(min(时限(2)开始时间)* sampleRate,长度(envspec_ROI) 1)) + 1;envspec_ROI = envspec_ROI (minIdx: maxIdx);计算谱估计%运行下面不带输出参数的函数调用来绘制结果[Penvspec_ROI, Fenvspec_ROI] = pspectrum(envspec_ROI,sampleRate,...“FrequencyLimits”, frequencyLimits);
3.情节包络谱
绘制包络谱。将峰值位置与前十个BPFI谐波的频率进行比较。你也可以用pspectrum
不带输出参数的命令。
情节(Fenvspec_ROI (Penvspec_ROI))在(X, Y) = meshgrid ((1:10) * bpfi ylim);情节(X, Y,”:k”)举行从xlim (10 * bpfi [0])
信号预处理功能
该应用程序生成的信号预处理功能结合了去趋势、带通滤波和包络计算。
函数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,[22503750], f,陡峭的, 0.85,“StopbandAttenuation”、60);[y ~] =信封(y);y =去趋势(y,“不变”);结束
方位数据生成函数
轴承具有节径 Cm和轴承接触角 .每一个 滚动元件有一个直径 厘米。当内圈被驱动时,外圈保持静止 周期每秒。加速度计以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 / f;z = [1 0.5 0.2 0.1 0.05] * sin(2 *π* f0 *(1 2 3 4 5]。* t);xHealthy = z + randn(size(z))/10;
外圈的缺陷导致一系列5毫秒的冲击,随着时间的推移导致轴承磨损。冲击发生在轴承的球通频率外圈(bfo),
.
模型的冲击作为一个周期序列3千赫指数阻尼正弦波。将这些影响加到健康信号中,生成bfo振动信号。
bpfo = n * f0/2 * (1 - d / p * cos (th));tmp = 0:1 / fs: 5 e-3-1 / fs;xmp =罪(2 *π* 3000 * tmp)。* exp (-1000 * tmp);xBPFO = xHealthy + pulstran(t,0:1/ bfo:1,xmp,fs)/4;
如果缺陷在内圈内,则冲击发生的频率是一定的
.
通过将影响添加到健康信号中,生成BPFI振动信号。
bpfi = n * f0/2 * (1 + d / p * cos (th));xBPFI = xHealthy + pulstran(t,0:1/bpfi:1,xmp,fs)/4;结束