离散和重采样模型
此示例演示如何使用连续/离散、离散/连续和离散/离散转换的命令。
相关命令
控制系统工具箱™为线性系统的离散化和重采样提供了广泛的支持,包括:
汇集
可连续时间模型d2c
计算离散时间模型的连续时间扩展d2d
重新取样离散时间模型。
有几种算法可用于执行这些操作,包括:
零级举行
一阶举行
脉冲不变
Tustin
匹配的波兰人/ 0。
连续/离散转换
例如,考虑有延迟的二阶系统:
要计算采样率为10hz的零阶保持(ZOH)离散化,输入
G = tf([1 -2],[1 3 20],“inputdelay”1);t = 0.1;%采样间隔Gd =汇集(G, Ts)
Gd = 0.07462 z - 0.09162 z^(-10) * ---------------------- z^2 - 1.571 z + 0.7408采样时间:0.1秒离散时间传递函数。
比较连续和离散阶跃响应:
步骤(G,“b”Gd,“r”)传说(“连续”,“离散”)
离散/连续转换
相反,您可以使用d2c
为给定的离散时间系统计算一个连续时间的“插值”。从离散化开始Gd
以上计算,转换为连续,并与原始模型进行比较G
:
Gc = d2c (Gd);步骤(G,“b”Gd,“r”Gc,“g——”)传说(“原始”,“离散”,“D2C Interpolant”)
两个连续时间响应完全匹配。你不可能总是得到一个完美的匹配,特别是当你的采样间隔Ts
值太大,在离散化过程中会发生混叠:
Ts = 1;%比以前大10倍高清=汇集(G, Ts);Hc = d2c (Hd);步骤(G,“b”高清,“r”Hc,“g——”10)传说(“原始”,“离散”,“D2C Interpolant”)
离散时间系统的重采样
重采样包括改变离散时间系统的采样间隔。执行此操作时d2d
.例如,考虑10hz的离散化Gd
我们最初的连续时间模型G
.你可以使用以下方法在40hz下重新采样:
Gr = d2d (Gd, 0.025)
Gr = 0.02343 z - 0.02463 z^(-40) * ---------------------- z^2 - 1.916 z + 0.9277采样时间:0.025秒离散时间传递函数。
将其与40赫兹下的直接离散化进行比较:
步骤(G,“b”、Gr、“r”c2d (0.025 G),“g——”4)传说(“连续”,“从0.1重新采样到0.025”,的离散t = 0.025”)
注意,这两种方法都会得到相同的答案。
选择哪种算法和采样率?
参见标题为离散陷波滤波器更多关于算法和采样率的选择如何影响离散化精度的细节。