引言
上篇介绍了连续系统的PID算法,但是计算机控制是一种采样控制,他只能根据采样时刻的偏差来计算控制量,因此计算机控制系统中,必须对公式进行离散化,具体就是用求和代替积分,用向后差分来代替微分,使模拟PID离散化为数字形式的差分方程。
准备工作
在采样周期足够小时,可以作如下近似:
式中
T————为采样周期
k————为采样序号,k=0,1,2….
用这种近似方法,可以得到两种形式数字PID控制算法
位置式PID算法
由前面推倒很容易得到离散化后的表达式
由此式可以看出数字调节的输出u(k)跟过去的所有偏差信号有关,计算机需要对e(i)进行累加,运算量太大,一般不用,重点说明增量式PID算法。
增量式PID算法
由于增量式PID的算法不够方便,不仅对偏差进行累加,占用过多的存储单元,而且不方便写程序,所以需要进行一些改进,对位置式取增量,方法如下:
Matlab仿真
分析过程
1、对G(s)进行离散化即进行Z变换得到Z传递函数G(Z);
2、分子分母除以z的最高次数即除以z的最高次得到;
3、由z的位移定理Z[e(t-kt)]=z^k*E(z)逆变换得到差分方程;
4、PID编程实现
具体实现细节在代码注释中已经给出
%设一被控对象G(s)=50/(0.125s^2+7s),
%用增量式PID控制算法编写仿真程序
%(输入分别为单