• 大小: 18KB
    文件类型: .zip
    金币: 1
    下载: 0 次
    发布日期: 2021-06-14
  • 语言: Matlab
  • 标签: matlab  

资源简介

采用自带的buttord 和butter函数实现对信号的低通滤波

资源截图

代码片段和文件信息

 
fp=500;fs=400 ;%注:如果fp在fs区间内,则为带通,反之为带阻
 ap=2;as=30;
 fsa=4096;
 wp=fp/fsa*2;ws=fs/fsa*2;
[nwn]=buttord(wpwsapas);%滤波器阶数选择函数,确定符合要求性能滤波器的最小阶数和固有频率
[BA]=butter(nwn);
[Hw]=freqz(BA);% H为频域传递函数,w为所要计算相应的频率点组成的向量
figure(1);subplot(211);
length(w)
plot(w*fsa/(2*pi)abs(H));             %绘制带通频谱图
xlabel(‘Hz‘);ylabel(‘频率响应幅度‘);
title(‘低通滤波器‘);
grid;axis tight;
subplot(212);plot(w*fsa/(2*pi)angle(H));
xlabel(‘Hz‘);ylabel(‘angel‘);
title(‘相位特性‘);
grid;axis tight;
x=load(‘D:\debugging\matlabfiles\监测诊断试验\数据\齿轮\19点20分14秒\通道1.txt‘);
figure(2)
subplot(211)
t=(0:length(x)-1)/fsa;
plot(tx);
xlabel(‘t‘);ylabel(‘x(t)‘);
title(‘滤波前连续信号‘);
grid;axis tight;
y=filter(BAx);%时域滤波
figure(2) 
subplot(212);
plot(ty);
xlabel(‘t‘);ylabel(‘y(t)‘);
title(‘滤波后连续信号‘);
grid;axis tight;
figure(3)
N=length(x);
X=fft(xN)/N;w=fsa/2*linspace(01N/2+1);
subplot(211);plot(wabs(X(1:N/2+1)));  %绘制频谱图
xlabel(‘Hz‘);ylabel(‘频率响应幅度‘);
title(‘滤波前频谱图‘);
grid;axis tight;
Y=fft(yN)/N;w=fsa/2*linspace(01N/2+1);
subplot(212);plot(wabs(Y(1:N/2+1)));       %绘制频谱图
xlabel(‘Hz‘);ylabel(‘频率响应幅度‘);
title(‘滤波后频谱图‘);
grid;axis tight;

 



 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     目录           0  2018-08-29 16:12  低通滤波器 matlab 实现\
     文件          55  2018-08-27 11:33  低通滤波器 matlab 实现\【源码使用必读】.url
     文件        1338  2012-11-19 17:37  低通滤波器 matlab 实现\lowpass.m
     文件      237958  2012-11-19 17:50  低通滤波器 matlab 实现\带通特性.bmp
     文件      237958  2012-11-19 17:45  低通滤波器 matlab 实现\低通滤波后.bmp

评论

共有 条评论