Matalab控制器仿真以及理论到代码的实现
控制理论(求解系统传递函数和控制器传递函数)
先从最基本的PID控制器说起,下面简单讲讲PID控制中如何实现从传递函数到代码的设计。
对于一个具有输出输入系统,我们可以建立其动力学模型,计算系统输入和输出之间的传递函数。系统从输入U(s)到输出Y(s)(即输入到输出)之间的传输增益H(s),定义为系统的传递函数,它是输出的拉普拉斯变换与输入的拉普拉斯变换之间的比值。即
H
(
s
)
=
Y
(
s
)
/
U
(
s
)
H(s)=Y(s)/U(s)
H(s)=Y(s)/U(s)。
Z变换离散化
得到了传递函数之后进行传递函数离散化得到了离散后的公式。这一步可以使用MATALAB进行计算。Z变化后就可以得到离散的公式。
总结
1、找出系统的S 域传递函数,如果是时域函数,则需要对时域函数进行S 变换,变换过程中分清楚输入与输出,输出/输入=系统传递函数。
2、算法的S 域函数进行Z 变换,可以借助matlab 进行双线性变换。按照公式(1.8),得提前将Zn转换成Z-n 形式。
3、写出差分方程,并按照差分方程写出公式。其中X(k)是当前的输入,X(k-n)是n 次前的输入;Y(k)是当前的输出,Y(k-n)是n 次前的输出。
下面以PI控制器为例子
matalab计算Z变化结果如下
这样就实现了PI控制器的推导。这里感谢群友(QQ群:721419829)提供的文档。