利用matlab快速实现连续系统转变为离散系统(z变换)

matlab为连续系统提供了离散化模型。利用c2d()函数可实现连续函数的快速离散化。c2d()函数的调研格式为:

sysd=c2d(sys,Ts)或 sysd=c2d(sys,Ts,method)。

式中,sysd为带采样时间Ts的离散时间模型;输入参量sys为连续时间模型对象;Ts为采样周。

Method用来指定离散化采用的方法:

‘zoh’——采用零阶保持器法,零阶保持器的作用是在信号传递过程中,把第nT时刻的采样信号值一直保持到第(n+1)T时刻的前一瞬时,把第(n+1)T时刻的采样值一直保持到(n+2)T时刻,依次类推,从而把一个脉冲序列变成一个连续的阶梯信号。因为在每一个采样区间内连续的阶梯信号的值均为常值,亦即其一阶导数为零,故称为零阶保持器;

‘foh’——采用一阶保持器法,与上面不同的是,在信号传递过程中,两个相邻采样点之间的信号是一阶函数,起点和终点的值分别等于前后两个采样点的值则;

‘tustin’——采用双线性变换法;

‘prewarp’——采用改进的双线性变换法;

‘matched’——采用零极点匹配法;缺省时,为‘zoh’。

例子:

存在一个连续函数G(s)=\frac{10(s+1))}{(s+3)(s+5)(s+7)},

采用零阶编程器法,其他类推;

1.程序

2.结果

利用matlab快速实现连续系统转变为离散系统(z变换)_第1张图片

 

你可能感兴趣的:(matlab)