声振论坛

 找回密码
 我要加入

QQ登录

只需一步,快速开始

查看: 1132|回复: 1

[滤波] 带通滤波基础问题 附简单的源程序

[复制链接]
发表于 2010-2-4 00:09 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?我要加入

x
%目的是想进行10-30HZ的带通滤波,fft后应该只剩下sin(100*t)这一个波形(因为其频率为100/(2*pi)在10-30HZ之
%间),%但滤波结果不是保留10-30HZ,而是保留10-30角频率。
%请问我该如何改正。简单的源程序如下:



clc;
clear all;

fs=2*pi*512;% 采样频率(HZ)
wp1=2*pi*10;%允许最低频率(角频率)
wp2=2*pi*30;%允许最高频率(角频率)
ws1=2*pi*5; %最低截止频率(角频率)
ws2=2*pi*50;%最高截止频率(角频率)
wp=[wp1 wp2];
ws=[ws1 ws2];
rp=3 ;%波纹系数
rs=60 ;%波纹系数
[n,wn]=ellipord(wp/(fs/2),ws/(fs/2),rp,rs) ;%获取固有频率和阶
[b,a]=ellip(n,rp,rs,wn) ;%返回传递函数参数
%freqz(b,a,512,1000);%1000是频率点数
[h w]=freqz(b,a);
figure(1);
plot(w*fs/(2*pi),abs(h));grid;%频率响应

t=[0:0.01:100];
y1=sin(t)+sin(10*t)+sin(20*t)+sin(30*t)+sin(100*t)+sin(200*t);
y=filter(b,a,y1) ;%用椭圆滤波器滤波,y为滤波后的结果

z=fft(y);
N=length(t);
Fs=100;
%f0=1/(2*pi);
F=([0:N-1])*Fs/N;
out=abs(z);
figure(2)
plot(F(1:N/4),out(1:N/4));
title('幅频特性');
xlabel('频率');
ylabel('幅值');
频谱.jpg
频率响应.jpg
回复
分享到:

使用道具 举报

 楼主| 发表于 2010-2-4 19:18 | 显示全部楼层
问题已经知道,是滤波和信号的采样频率不一致造成的
您需要登录后才可以回帖 登录 | 我要加入

本版积分规则

QQ|小黑屋|Archiver|手机版|联系我们|声振论坛

GMT+8, 2024-9-22 04:18 , Processed in 0.070767 second(s), 21 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表