离散陷波滤波器
这个例子展示了几种用于离散陷波滤波器的技术的比较。虽然控制系统组件通常是连续时间设计的,但为了在数字计算机和嵌入式处理器上实现,它们通常必须离散化。
连续时间陷波滤波器
陷波滤波器被设计用来通过急剧衰减特定频率的增益来拒绝特定频率的信号内容。在这个例子中,我们考虑以下陷波滤波器:
你可以画出这个滤波器的频率响应波德
命令:
H = tf([1 0.5 100],[1 5 100]);波德(H)、网格
该陷波滤波器在频率w = 10 rad/s时提供20dB衰减。
选择离散化方法
函数可以离散一个连续时间系统汇集
命令。Control System Toolbox™支持几种离散化算法,包括:金宝app
零级举行
一阶举行
脉冲不变
塔斯丁(双线性近似)
带频率预翘曲的塔斯汀
匹配极点和零点
选择哪种方法取决于应用和需求。
零阶保持方法和一阶保持方法以及脉冲不变方法非常适合于时域离散逼近。例如,ZOH离散化的阶跃响应与每个时间步长的连续时间阶跃响应匹配(与采样率无关):
Ts = 0.1;Hdz = c2d(H,Ts,“zoh”);步骤(H,“b”民,“r”),传说(“连续”,“10赫兹离散化”)
同样,脉冲不变离散化具有与原系统相同的脉冲响应:
G = tf([1 -3],[1 2 10]);Gd = c2d(G,Ts,“小鬼”);冲动(G,“b”Gd,“r”)传说(“连续”,“10赫兹离散化”)
相比之下,Tustin和Matched方法往往在频域表现更好,因为它们在Nyquist频率附近引入较少的增益和相位失真。例如,使用ZOH、Tustin和Matched算法比较连续时间陷波滤波器的Bode响应及其离散化:
Hdt = c2d(H,Ts,“tustin”);Hdm = c2d(H,Ts,“匹配”);波德(H,“b”民,“r”热变形,“米”Hdm,‘g’,{1 100}),网格图例(“连续”,“ZOH”,“Tustin”,“匹配”)
这种比较表明,匹配方法提供了陷波滤波器最准确的频域近似。但是,您可以通过指定与缺口频率相等的预翘曲频率来进一步提高Tustin算法的准确性。这确保了w = 10 rad/s附近的精确匹配:
Hdp = c2d(H,Ts,“prewarp”10);波德(H,“b”热变形,“米”黄芪丹参滴丸,‘g’,{1 100}),网格图例(“连续”,“Tustin”,“带预翘曲的塔斯汀”)
选择采样率
采样率越高,连续响应与离散响应的匹配度越高。但是采样率可以有多小,或者说,采样间隔可以有多大?根据经验,如果你想让连续模型和离散模型在某个频率上紧密匹配wm
,确保奈奎斯特频率(采样率乘以Pi)至少是2倍wm
.对于陷波滤波器,需要将形状保持在10 rad/s附近,因此奈奎斯特频率应该超过20 rad/s,这给出的采样周期最多为pi/20 = 0.16 s。
为了确认这一选择,将匹配的离散化与采样周期0.1、0.15和0.3进行比较:
Hd1 = c2d(H,0.1,“米”);Hd2 = c2d(H,0.15,“米”);Hd3 = c2d(H,0.3,“米”);波德(H,“b”,即“r”Hd2,“米”Hd3,‘g’,{1 100}),网格图例(“连续”,'Ts = 0.1','Ts = 0.15','Ts = 0.3')
正如预测的那样,离散化仍然相当准确Ts < 0.16
但开始分解为更大的采样间隔。
交互式GUI
点击下面的链接,启动一个交互式GUI,进一步展示了离散陷波滤波器是如何受到离散化算法和采样率选择的影响。
notch_gui