FIR数字滤波器的设计(详细,快速入门)

FIR数字滤波器的设计

  • 线性相位FIR滤波器的特点
    • 单位冲激响应:h(n),0≤n≤N−1h(n),0\leq n\leq N-1h(n),0nN1
    • 系统函数:H(z)=∑n=0N−1h(n)z−nH(z)=\sum_{n=0}^{N-1}h(n)z^{-n}H(z)=n=0N1h(n)zn
    • 零极点分布:无穷远处N-1个零点,z=0处有一个N-1阶极点
  • 线性相位条件
    线性相位是FIR滤波器的一个优势,因为FIR滤波器相比于IIR滤波器的阶数一般要高很多。
    H(ejω)=∑n=0N−1h(n)e−jωn=±∣H(ejω)∣ejθ(ω)H(e^{j\omega})=\sum_{n=0}^{N-1}h(n)e^{-j\omega n}=\pm|H(e^{j\omega})|e^{j\theta(\omega)}H(ejω)=n=0N1h(n)ejωn=±H(ejω)ejθ(ω)
    线性相位是指θ(ω)\theta(\omega)θ(ω)ω\omegaω的线性函数。根据它们之间的线性关系,将线性相位分为两种:正比例;一次函数。
    • 第一类线性相位:θ(ω)=−τω\theta(\omega)=-\tau\omegaθ(ω)=τω
      若实序列h(n)h(n)h(n)为第一类线性相位,则∑n=0N−1h(n)e−jωn=∑n=0N−1h(n)cos⁡(ωn)−j∑n=0N−1h(n)sin⁡(ωn)=±∣H(ejω)∣cos⁡(ωτ)±j∣H(ejω)∣sin⁡(ωτ)\sum_{n=0}^{N-1}h(n)e^{-j\omega n}=\sum_{n=0}^{N-1}h(n)\cos(\omega n)-j\sum_{n=0}^{N-1}h(n)\sin(\omega n)=\pm|H(e^{j\omega})|\cos(\omega \tau)\pm j|H(e^{j\omega})|\sin(\omega \tau)n=0N1h(n)ejωn=n=0N1h(n)cos(ωn)jn=0N1h(n)sin(ωn)=±H(ejω)cos(ωτ)±jH(ejω)sin(ωτ) 于是:tan⁡(ωτ)=∑n=0N−1h(n)sin⁡(ωn)∑n=0N−1h(n)cos⁡(ωn)\tan(\omega\tau)=\frac{\sum_{n=0}^{N-1}h(n)\sin (\omega n)}{\sum_{n=0}^{N-1}h(n)\cos (\omega n)}tan(ωτ)=n=0N1h(n)cos(ωn)n=0N1h(n)sin(ωn) →∑n=0N−1h(n)sin⁡[(τ−n)ω]=0\rightarrow \sum_{n=0}^{N-1}h(n)\sin[(\tau-n)\omega]=0n=0N1h(n)sin[(τn)ω]=0
      FIR系统满足线性相位的充要条件{τ=N−12h(n)=h(N−1−n)\text{FIR系统满足线性相位的充要条件}\begin{cases} \text{$\tau=\frac{N-1}{2}$}\\ h(n)=h(N-1-n)\end{cases}FIR系统满足线性相位的充要条件{τ=2N1h(n)=h(N1n) ,即h(n)为偶对称,对称中心为N−12\frac{N-1}{2}2N1 .
    • 第二类线性相位:θ(ω)=β0−τω\theta(\omega)=\beta_0-\tau\omegaθ(ω)=β0τω
      同理可得,满足线性相位的冲要条件h(n)=−h(N−1−n),τ=N−12,β0=±π2h(n)=-h(N-1-n),\tau=\frac{N-1}{2},\beta_0=\pm\frac{\pi}{2}h(n)=h(N1n),τ=2N1,β0=±2π

窗函数设计法

  • 具体步骤
    性能指标→\rightarrow低通滤波器的系统函数→\rightarrow反变换时域无限长信号→\rightarrow信号截断→\rightarrow右移变因果系统。
    线性相位理想低通滤波器的频率响应为:
    Hd(ejω))={e−jωα−ωc≤ω≤ωc0−π≤ω≤−ωc,ωc≤ω≤πH_d(e^{j\omega)})=\begin{cases} e^{-j\omega\alpha}&-\omega_c \leq \omega \leq\omega_c\\ 0&-\pi\leq\omega\leq-\omega_c, \omega_c\leq\omega\leq\pi \end{cases} Hd(ejω))={ejωα0ωcωωcπωωc,ωcωπ
    经过离散傅里叶反变换对应的序列(非周期离散)为:
    hd(n)=ωcπsin⁡[ωc(n−α)]ωc(n−α)h_d(n)=\frac{\omega_c}{\pi}\frac{\sin[\omega_c(n-\alpha)]}{\omega_c(n-\alpha)}hd(n)=πωcωc(nα)sin[ωc(nα)]
    该序列为中心点为α\alphaα偶对称无限长非因果序列
    现需要将其转变为偶对称有限长因果序列。取矩形窗w(n)=RN(n)w(n)=R_N(n)w(n)=RN(n),则FIR滤波器的单位抽样响应:
    h(n)=hd(n)={hd(n)0≤n≤N−10elseh(n)=h_d(n)=\begin{cases} h_d(n) & 0\leq n\leq N-1 \\ 0 & \text{else}\end{cases}h(n)=hd(n)={hd(n)00nN1else
    根据第一类线性相位的条件,应有:α=N−12\alpha=\frac{N-1}{2}α=2N1,即:
    h(n)=ωcπsin⁡[ωc(n−N−12)]ωc(n−N−12),0≤n≤N−1h(n)=\frac{\omega_c}{\pi}\frac{\sin[\omega_c(n-\frac{N-1}{2})]}{\omega_c(n-\frac{N-1}{2})},0\leq n \leq N-1h(n)=πωcωc(n2N1)sin[ωc(n2N1)],0nN1
    FIR滤波器的频率响应的幅度函数为h(n)的幅度函数与w(n)幅度函数的卷积,即为H(ω)=12π∫−ππHd(ω)WR(ω−θ)dθH(\omega)=\frac{1}{2\pi}\int_{-\pi}^{\pi}H_d(\omega)W_R(\omega-\theta)d\thetaH(ω)=2π1ππHd(ω)WR(ωθ)dθ,变换的具体过程如下:在这里插入图片描述
    可以看做WR(θ)W_R(\theta)WR(θ)平移ω\omegaω之后在[−ωc,ωc][-\omega_c,\omega_c][ωc,ωc]内的积分(因为Hd(θ)H_d(\theta)Hd(θ)在此区间内为1).

    ω\omegaωH(ω)H(\omega)H(ω)
    0近似WR(θ)W_R(\theta)WR(θ)的全部面积
    ωc\omega_cωc0.5H(0)H(0)H(0)
    ωc−2πN\omega_c-\frac{2\pi}{N}ωcN2π最大,正肩峰
    ωc+2πN\omega_c+\frac{2\pi}{N}ωc+N2π最小,负肩峰
    >ωc+2πN>\omega_c+\frac{2\pi}{N}>ωc+N2π在零值上下波动
    <ωc−2πN<\omega_c-\frac{2\pi}{N}<ωcN2πH(0)H(0)H(0)上下波动

    −2πN,2πN-\frac{2\pi}{N},\frac{2\pi}{N}N2π,N2π为窗函数频谱主瓣的两个零点,主瓣宽度为4πN\frac{4\pi}{N}N4π
    从图中可以看出,FIR滤波器的幅值函数在ωc±2πN\omega_c\pm\frac{2\pi}{N}ωc±N2π出现肩峰。改变N值改变主瓣宽度,使过渡带变得更窄,但是并不能改变正肩峰与负肩峰的相对比例(相对比例由窗函数的形状决定,此为Gibbs效应)。

  • 几种窗函数的对比

    窗函数
    窗谱性能指标
    加窗后滤波器性能指标
    旁瓣峰值幅度/dB
    主瓣宽度/(2pi/N)
    过渡带宽△w/(2pi/N)
    最小阻带衰减/dB
    矩形窗
    -13
    2
    0.9
    -21
    三角形窗
    -25
    4
    2.1
    -25
    汉宁窗
    -31
    4
    3.1
    -44
    海明窗
    -41
    4
    3.3
    -53
    布莱克曼窗
    -57
    6
    5.5
    -74
    凯泽窗(β=8.865)
    -57
    5
    -80

    阻带最小衰减只由窗函数形状决定。过渡带宽与窗形状和窗宽N都有关。

  • 设计步骤

理想的频率响应函数及技术指标
理想的单位抽样响应
根据阻带衰减选择窗函数
根据过渡带宽度确定N
FIR滤波器的单位冲激响应

技术指标包括:阻带衰减和过渡带宽。一般取ωc\omega_cωc为通带截止频率和阻带截止频率的平均值
从理想的频率响应函数(Hd(ejω)H_d(e^{j\omega})Hd(ejω))得到理想的单位抽样响应hd(n)h_d(n)hd(n),有两种方法:

  • 公式法
  • IFFT法:对HdH_dHd进行M点IFFT变换,要求M>>N

最终得到FIR滤波器的h(n),并求得H(ejω)H(e^{j\omega})H(ejω),进行验证,若不满足,则重新选择窗函数进行设计。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值