打印

DSP中带通滤波器的选择?

[复制链接]
1780|4
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
jackblank|  楼主 | 2014-5-18 09:43 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
沙发
zzq040| | 2014-5-18 14:19 | 只看该作者
通过matlab进行仿真,用fir滤波器仿真好滤波器系数之后在dsp上实现。

使用特权

评论回复
板凳
zzq040| | 2014-5-18 14:20 | 只看该作者
通过matlab进行仿真,用fir滤波器仿真好滤波器系数之后在dsp上实现。

使用特权

评论回复
地板
aresc| | 2014-5-18 17:51 | 只看该作者
这个要根据滤波器的要求比如是否要求线性相位,以及过渡带的斜率,运算量的要求等等。
如果要求线性相位那就只能选FIR滤波器。如果没有线性相位要求可以用IIR滤波器,对相同指标的滤波器IIR的运算量要比FIR小。
确定了FIR或者IIR滤波器,有很多工具可以用来设计这些滤波器,比如MATLAB。至于细节,自己找本书学习一下,奥本海姆的那本《离散时间信号处理》很经典。

使用特权

评论回复
5
zhangmangui| | 2014-5-19 22:18 | 只看该作者
1.        参数计算
窗函数选定:阻带衰减75dB,选择blackman窗;截止频率:2pi*(10+(22-10)/2)/50=0.64pi;
窗函数长度:blackman窗的过渡带宽为5.98,单位为2pi/N,而要设计的低通滤波器的过度带宽为2pi*12/50=0.48pi,两者相等,得N=24.9,取25。
2.        滤波器的脉冲响应
理想低通滤波器脉冲响应:
h1[n] = sin(nΩ1)/n/pi = sin(0.64pi*n)/n/pi
窗函数为:
w[n] = 0.42 - 0.5cos(2pi*n/24) + 0.8cos(4pi*n/24)
则滤波器脉冲响应为:
h[n] = h1*w[n]    |n|<=12
h[n] = 0               |n|>12
3.        滤波器的差分方程
根据滤波器的脉冲响应计算出h[n],然后将脉冲响应值移位为因果序列,下面将利用matlab计算h[n]的值,具体如下:
>> Window=blackman(25);
>> b=fir1(24,0.64,Window);
>> freqz(b,1)
>> b=roundn(b,-3)    %任意位四舍五入
b =
  Columns 1 through 8
        0      0    0.0010   -0.0020   -0.0020    0.0100   -0.0090   -0.0180
  Columns 9 through 16
    0.0490   -0.0200   -0.1100    0.2800    0.6400    0.2800   -0.1100   -0.0200
  Columns 17 through 24
    0.0490   -0.0180   -0.0090    0.0100   -0.0020   -0.0020    0.0010     0
  Column 25
     0
最后得到滤波器的差分方程为:
y[n] =   0.001x[n-2] - 0.002x[n-3] - 0.002x[n-4] + 0.01x[n-5] - 0.009x[n-6] - 0.018[n-7]
+ 0.049x[n-8] -0.02x[n-9] - 0.11x[n-10] + 0.28x[n-11] + 0.64x[n-12] + 0.28x[n-13] - 0.11[n-14] - 0.02x[n-15] + 0.049x[n-16] - 0.018x[n-17] - 0.009x[n-18] + 0.1x[n-19] - 0.002x[n-20] - 0.002x[n-21] + 0.001x[n-22]

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

24

主题

62

帖子

0

粉丝