天天看点

传递函数,Z变换与差分方程之间的转化传递函数的形式 Z函数 差分方程形式

目录

传递函数的形式

Z函数

差分方程形式

在我们进行PID控制器或现代控制理论设计时,经常遇到三者之间的转换,下面将阐述一下如何在MATLAB上操作。

注意!下面所有的“*”即半角单引号,都被替换成了星号*,所以务必注意!!

传递函数的形式

假设传递函数为:

传递函数,Z变换与差分方程之间的转化传递函数的形式 Z函数 差分方程形式

在matlab里面建立这个传递函数的命令就是:

sys=tf(400,[1,50,0],*inputdelay*,0.004);%inputdelay两边的*号改成半角单引号!!
           

Z函数

把传递函数离散化就得到Z函数,在matlab里面离散化命令是: 

dsys=c2d(sys,0.001,*z*);//z两边的*号改成半角单引号!!
           

 其中

传递函数,Z变换与差分方程之间的转化传递函数的形式 Z函数 差分方程形式

为采样时间。

传递函数,Z变换与差分方程之间的转化传递函数的形式 Z函数 差分方程形式

                                                                         (2)

(2)式可写成:

传递函数,Z变换与差分方程之间的转化传递函数的形式 Z函数 差分方程形式

                     (3)

当然离散化的方法有很多,比如双线性变换(也叫Tustin变换),变换子为:

传递函数,Z变换与差分方程之间的转化传递函数的形式 Z函数 差分方程形式

相应的代码为

dsys=c2d(sys,0.001,'tustin');
           

其他还有改进双线性变换的离散化方法。

差分方程形式

由(3)式可得

传递函数,Z变换与差分方程之间的转化传递函数的形式 Z函数 差分方程形式

                        (4)

利用Z变换的滞后性质:

传递函数,Z变换与差分方程之间的转化传递函数的形式 Z函数 差分方程形式

对前式进行变换(注意与Z的反变换不同),如左边的

传递函数,Z变换与差分方程之间的转化传递函数的形式 Z函数 差分方程形式

可写成

传递函数,Z变换与差分方程之间的转化传递函数的形式 Z函数 差分方程形式

,右边的

传递函数,Z变换与差分方程之间的转化传递函数的形式 Z函数 差分方程形式

可写成

传递函数,Z变换与差分方程之间的转化传递函数的形式 Z函数 差分方程形式

可得:

传递函数,Z变换与差分方程之间的转化传递函数的形式 Z函数 差分方程形式

                                                 (5)

由(5)式得

传递函数,Z变换与差分方程之间的转化传递函数的形式 Z函数 差分方程形式

即差分方程形式,下面就可以编程进行数值计算了。

继续阅读