声振论坛

 找回密码
 我要加入

QQ登录

只需一步,快速开始

查看: 4101|回复: 10

[滤波] 这个滤波器怎么求带宽呢?

[复制链接]
发表于 2008-5-14 15:43 | 显示全部楼层 |阅读模式

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

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

x
1-4/z^16+6/z^32-4/z^48+1/z^64
-------------------------------------------------------
         1-4/z+6/z^2-4/z^3+1/z^4

可以从图中看出来吗?
幅频图.jpg
回复
分享到:

使用道具 举报

发表于 2008-5-14 18:53 | 显示全部楼层
一般对低通滤波器,带宽都是指比最大值下降3分贝处的频率。所以对楼主的滤波器可以先用最大值(0Hz处)归一,找出-3dB的频率,即是该滤波器的带宽。
 楼主| 发表于 2008-5-14 21:34 | 显示全部楼层
这个是梳状滤波器的图
是按照多个带通的算还是怎么算?
只知道那个传递函数就可以算出来吧?

按楼上的算法是算到最后下降得还是第一次下降的呢?
发表于 2008-5-15 12:08 | 显示全部楼层

回复 3楼 的帖子

如果0频是x dB的话,找x-3 dB对应的值就是了.
-3 dB的点就只一个,后面的峰远不只降3 dB了
 楼主| 发表于 2008-5-15 12:42 | 显示全部楼层
本帖最后由 wdhd 于 2016-9-10 14:10 编辑
原帖由 yangzj 于 2008-5-15 12:08 发表
如果0频是x dB的话,找x-3 dB对应的值就是了.
-3 dB的点就只一个,后面的峰远不只降3 dB了

还有就是那个横轴的单位怎么读呢??
x*2*pi  Hz??
 楼主| 发表于 2008-5-15 13:43 | 显示全部楼层
补充一下

这个是一个四阶的积分器,进行16倍下采样,在经过四阶差分器,最后输出

这个就是整个过程的传递函数
发表于 2008-5-15 16:37 | 显示全部楼层
本帖最后由 wdhd 于 2016-9-10 14:11 编辑
原帖由 HolySaint 于 2008-5-15 12:42 发表

还有就是那个横轴的单位怎么读呢??
x*2*pi  Hz??

横轴是圆频率,单位是弧度/秒。楼主标出的rad/sample,好象不对,应为rad/second。
 楼主| 发表于 2008-5-15 16:52 | 显示全部楼层
本帖最后由 wdhd 于 2016-9-10 14:11 编辑
原帖由 songzy41 于 2008-5-15 16:37 发表

横轴是圆频率,单位是弧度/秒。楼主标出的rad/sample,好象不对,应为rad/second。

我的输入信号的采样是1024个点

  1. t=0:1023;%点数

  2. %%--------取样测试--------%%

  3. %d0=fix((sin(2*pi*t/512)+abs(wgn(1,length(t),1))+1)*10000);

  4. %d0=fix((sin(2*pi*t/512)+1)*10000);

  5. d0=fix((sin(2*pi*t/512)+square(t*2*pi/12,0.5)+2)*10000);

  6. %%--------画图比较--------%%

  7. plot(d0);

  8. title('周期取点数256');

  9. %%--------转换数制--------%%

  10. for i=1:1024

  11.     b=dec2bin(d0(i),16);

  12.     bout(i,:)=b;

  13. end;

  14. %%--------写入文本--------%%

  15. fid = fopen('input.txt','wt');

  16. for j=1:1024

  17.     fprintf(fid,'%s\n',bout(j,:));

  18. end;

  19. fclose(fid);
复制代码


主要是我想证实一下这个滤波器的带宽是否大于24kHz??

需要把输入改成24k的信号,,看结果吗??
发表于 2008-5-15 16:54 | 显示全部楼层
图中是归一化的频率,1对应采样频率的一半.
 楼主| 发表于 2008-5-15 17:12 | 显示全部楼层
我这个滤波器使用verilog写的
他的传函如一楼
输入时matlab那个程序生成的
我想验证带宽大于24k

我的输入要怎么给?
下图可以说明吗??

附下图生成信号代码
  1. t=0:47999;%点数

  2. t1=0:.00001:.47999;

  3. %%--------取样测试--------%%

  4. d0=fix((sin(2*pi*t/24000)+1)*10000);

  5. %%--------画图比较--------%%

  6. plot(d0);

  7. title('周期取点数256');

  8. %%--------转换数制--------%%

  9. for i=1:48000

  10.     b=dec2bin(d0(i),16);

  11.     bout(i,:)=b;

  12. end;

  13. %%--------写入文本--------%%

  14. fid = fopen('input.txt','wt');

  15. for j=1:48000

  16.     fprintf(fid,'%s\n',bout(j,:));

  17. end;

  18. fclose(fid);
复制代码

[ 本帖最后由 HolySaint 于 2008-5-15 17:14 编辑 ]
48.jpg
 楼主| 发表于 2008-5-15 17:34 | 显示全部楼层
滤波前是48000个点
滤波后是3000个点~

[ 本帖最后由 eight 于 2008-5-15 21:12 编辑 ]
您需要登录后才可以回帖 登录 | 我要加入

本版积分规则

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

GMT+8, 2024-12-2 07:54 , Processed in 0.064673 second(s), 21 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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