目录
传递函数的形式
Z函数
差分方程形式
在我们进行PID控制器或现代控制理论设计时,经常遇到三者之间的转换,下面将阐述一下如何在MATLAB上操作。
注意!下面所有的“*”即半角单引号,都被替换成了星号*,所以务必注意!!
传递函数的形式
假设传递函数为:
在matlab里面建立这个传递函数的命令就是:
sys=tf(400,[1,50,0],*inputdelay*,0.004);%inputdelay两边的*号改成半角单引号!!
Z函数
把传递函数离散化就得到Z函数,在matlab里面离散化命令是:
dsys=c2d(sys,0.001,*z*);//z两边的*号改成半角单引号!!
其中为采样时间。
(2)
(2)式可写成:
(3)
当然离散化的方法有很多,比如双线性变换(也叫Tustin变换),变换子为:
相应的代码为
dsys=c2d(sys,0.001,'tustin');
其他还有改进双线性变换的离散化方法。
差分方程形式
由(3)式可得
(4)
利用Z变换的滞后性质:
对前式进行变换(注意与Z的反变换不同),如左边的可写成,右边的可写成,
可得:
(5)
由(5)式得
即差分方程形式,下面就可以编程进行数值计算了。