信号处理(2)——包络谱应用

信号处理(1)中简单介绍了为什么要求包络谱,这一节从频谱的角度深入讨论包络谱的意义。



一、信号调制

对于齿轮振动来说,系统发生故障时,会产生一定频率的振动x1(t)E1,此时E1为常数,一般不随故障的改变而发生变化,但是由于系统是复杂的,此时故障可能会产生这样的信号x1(t)E1(t),这样就会产生一定调制边带,就会很难分辨频率的具体值。

二、求调制信号的频谱

1.以sin函数距离

代码如下:

clc
clear
fs=1000;
t=0:0.001:pi;
l=length(t);
y1 = 1+sin(2*pi*25*t)+cos(2*pi*10*t);
y2 = cos(2*pi*15*t)+cos(2*pi*100*t);
y = y1.*y2;
y3=envelope(y);
N=2^nextpow2(l);
z1=abs(fft(y,N)/N);
z2=abs(fft(y3,N)/N);

f=fs*linspace(0,1,N);
plot(f(1:N-1),z1(1:N-1),'r')
hold on
plot(f(1:N-1),z2(1:N-1),'b')
xlim([0 50])
% hold on
% plot(t,y2)
% hold on

对应的频谱为:
在这里插入图片描述
这样会产生很多边频带,很容易看出该信号经过调制,但很难区分出20/10Hz的频率。

2.对信号的包络谱分析

根据上诉原因,对原始采集的信号进行包络谱分析,可得如下图:
在这里插入图片描述
则会很明显的显示出10和25Hz的频率。这边是包络谱的意义。(当然,倒频谱也能求出调制信号的频率,但是存在一定的误差)。


  • 5
    点赞
  • 50
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
平方信号的仿真 帮助大家学者仿真平方信号 % squaredd1 % 调制函数呈衰减趋势 % 滤波法 % 每阶啮合谐波加入两阶调制谐波 clear all % 冲击形状按照文章中的表达式 N=5120; t=1:N; fs=1000; t=t/fs; u=0.925; deta=0.05; d0=exp(-(log(t)-u).^2./(deta.^2))./(t.*deta.*sqrt(2*pi)); a11=0.12.*exp(-0.15.*t).*cos(2*pi.*t); a12=0.08.*exp(-0.15.*t).*cos(2*pi.*t); a1=a11+a12; b11=0.12.*exp(-0.15.*t).*cos(2*pi.*t); b12=0.08.*exp(-0.15.*t).*cos(2*pi.*t); b1=b11+b12; d=1.45.*d0./max(abs(d0)); a1=a1+d/121; b1=b1-d/121; a21=0.12.*exp(-0.15.*t).*cos(4*pi.*t); a22=0.08.*exp(-0.15.*t).*cos(4*pi.*t); a2=a21+a22; b21=0.12.*exp(-0.15.*t).*cos(4*pi.*t); b22=0.08.*exp(-0.15.*t).*cos(4*pi.*t); b2=b21+b22; a2=a2+d/121; b2=b2-d/121; a31=0.12.*exp(-0.15.*t).*cos(6*pi.*t); a32=0.08.*exp(-0.15.*t).*cos(6*pi.*t); a3=a31+a32; b31=0.12.*exp(-0.15.*t).*cos(6*pi.*t); b32=0.08.*exp(-0.15.*t).*cos(6*pi.*t); b3=b31+b32; a41=0.12.*exp(-0.15.*t).*cos(8*pi.*t); a42=0.08.*exp(-0.15.*t).*cos(8*pi.*t); a4=a41+a42; b41=0.12.*exp(-0.15.*t).*cos(8*pi.*t); b42=0.08.*exp(-0.15.*t).*cos(8*pi.*t); b4=b41+b42; a51=0.12.*exp(-0.15.*t).*cos(10*pi.*t); a52=0.08.*exp(-0.15.*t).*cos(10*pi.*t); a5=a51+a52; b51=0.12.*exp(-0.15.*t).*cos(10*pi.*t); b52=0.08.*exp(-0.15.*t).*cos(10*pi.*t); b5=b51+b52; r1=10*(a1.*cos(54*pi*t)-b1.*sin(54*pi*t)); r2=8*(a2.*cos(108*pi*t)-b2.*sin(108*pi*t)); r3=6*(a3.*cos(162*pi*t)-b3.*sin(162*pi*t)); r4=5*(a4.*cos(216*pi*t)-b4.*sin(216*pi*t)); r5=2*(a5.*cos(270*pi*t)-b5.*sin(270*pi*t)); yr=r1+r2+r3+r4+r5+d.*cos(242*pi*t); Y=fft(yr); fil=[zeros(1,610) Y(611:624) zeros(1,4496)];%一共5120个点 fy1=ifft(fil); n1=10;wn1=[110 135]/(fs/2); % 带通滤波 [b,a]=butter(n1,wn1); fy1=filter(b,a,yr); y=fy1.*fy1; Y=fft(y); fil=[Y(1:50) zeros(1,5070)];%一共5120个点 y=abs(ifft(fil)); t=t*360*1000/5120; plot(t,y); xlabel('轴转角/度'); ylabel('Am/mm'); title('平方信号的时域波形');
要对振动信号进行带通滤波络谱分析,可以按照以下步骤进行: 1. 读取振动信号数据并进行预处理,如去除直流分量、去除高频噪声等。 2. 设计带通滤波器,可以使用MATLAB中的fir1函数或者iirdesign函数进行设计。需要指定滤波器的通带频率和阻带频率,以及通带和阻带的衰减量或者带宽等参数。 3. 将滤波器应用于振动信号上,得到经过带通滤波后的信号。 4. 对滤波后的信号进行络分析,可以使用MATLAB中的hilbert函数进行络提取。hilbert函数可以通过对信号进行解析,得到其解析信号的实部和虚部,从而得到信号络。对于一段时域信号x(t),其络y(t)可以表示为 y(t) = abs(hilbert(x(t)))。 5. 对信号进行谱分析,可以使用MATLAB中的pwelch函数进行功率谱密度估计。需要指定窗函数、重叠和采样频率等参数,可以根据需求选取适当的参数。 下面给出一个示例代码,可供参考: ```matlab % 读取振动信号数据 data = load('vibration_data.mat'); x = data.x; % 预处理,去除直流分量 x = detrend(x); % 设计带通滤波器 fs = 1000; % 采样频率 fpass = [50 200]; % 通带频率 fstop = [30 250]; % 阻带频率 atten = 60; % 阻带衰减量 Wp = fpass/(fs/2); Ws = fstop/(fs/2); [n,Wn] = iirdesign(Wp,Ws,atten); % 应用滤波器 y = filtfilt(n,1,x); % 络分析 env = abs(hilbert(y)); % 谱分析 win = hann(1024); % 窗函数 noverlap = 512; % 重叠 nfft = 1024; % FFT长度 [P,f] = pwelch(env,win,noverlap,nfft,fs); % 功率谱密度估计 % 绘图 subplot(2,1,1); plot(x); title('原始信号'); subplot(2,1,2); plot(f,P); xlim([0 300]); title('络谱'); xlabel('频率(Hz)'); ylabel('功率谱密度'); ``` 这段代码中,假设振动信号数据已经保存在名为vibration_data.mat的文件中,其中变量名为x。首先对信号进行预处理,去除直流分量。然后使用iirdesign函数设计带通滤波器,指定通带频率为50-200Hz,阻带频率为30-250Hz,阻带衰减量为60dB。应用滤波器后,对滤波后的信号进行络分析,得到信号。最后使用pwelch函数对信号进行谱分析,得到络谱。绘制原始信号络谱的图像。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

heavy_truck

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值