离散化和重采样模型
这个示例展示了如何使用连续/离散、离散/连续和离散/离散转换的命令。
相关命令
控制系统工具箱™为线性系统的离散化和重新采样提供了广泛的支持,包括:金宝app
汇集
离散连续时间模型d2c
计算离散时间模型的连续时间扩展d2d
对离散时间模型重新采样。
有几种算法可以执行这些操作,包括:
零级举行
一阶举行
脉冲不变
Tustin
匹配的波兰人/ 0。
连续/离散转换
例如,考虑二阶时滞系统:
要计算采样率为10 Hz的零阶保持器(ZOH)离散化,请键入
G = tf([1 -2],[1 3 20],“inputdelay”1);Ts = 0.1;%抽样间隔Gd = c2d(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倍Hd = c2d(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秒离散传递函数。
将其与40hz下的直接离散化进行比较:
步骤(G,“b”、Gr、“r”c2d (0.025 G),“g——”4)传说(“连续”,从0.1重采样到0.025,'用Ts=0.025离散化')
请注意,这两种方法都会得到相同的答案。
选择哪种算法和采样率?
参见标题为离散陷波滤波器关于算法和采样率的选择如何影响离散化精度的更多细节。