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