标题:iir滤波器的输出问题
只看楼主
shineld
Rank: 1
等 级:新手上路
帖 子:23
专家分:0
注 册:2007-7-25
 问题点数:0 回复次数:1 
iir滤波器的输出问题

我编写了一段程序,是实现IIR滤波器的功能

不过仿真输出结果图里面,滤波后的频谱却是一个带阻的信号,不是我要的信号输出带通信号的输出

请高手帮我看下可能哪儿编的出问题了


问题补充

为什么用FFT输出的频谱都有两个频带的

这个程序中我观察到的频谱有4个频带请问是什么原因呢?

不是按照理论上说应该只有两个频率的频带吗






附上程序代码

% 输入信号模块以及相关参数设置
t=0:256
x=sin(2*pi*4000/16000.*t)+2*sin(2*pi*6500/16000.*t);
%x1=x+randn(size(x)); %加入噪声

figure(1)
subplot(211);
plot(x);
title('原始信号x');

E=fft(x); % 对X进行傅式变换
E=abs(E);

wp=[3.2,4.8];ws=[2.4,5.6];rp=1;rs=20; % 带通滤波器模块
[n,wn]=cheb1ord(wp/8,ws/8,rp,rs)
[b,a]=cheby1(n,rp,wn) % a,b为fir滤波器的参数

z=filter(b,a,x); % 输入信号X1经过滤波器
zk=fft(z); % 对滤波后的信号进行傅式变换
subplot(212);
plot(z);
title('经过滤波器后的信号 z ');

figure(2)
subplot(211);
plot(abs(E));
title('原始信号频谱');

subplot(212);
plot(abs(zk));
title('经过滤波器后的信号的频谱');

谢谢了


搜索更多相关主题的帖子: iir 滤波器 输出 
2007-07-29 10:39
baiynisc
Rank: 1
等 级:新手上路
帖 子:1
专家分:0
注 册:2007-7-29
得分:0 
sin(2*pi*4000/16000.*t)+2*sin(2*pi*6500/16000.*t);
这个中,是两个正弦周期函数的叠加,相当所以会变换后会出现一级谱。两组,正负对称。
2007-07-29 14:36



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-158888-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.439072 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved