发布网友 发布时间:2022-04-24 20:12
共1个回答
热心网友 时间:2023-08-20 19:11
南京星德机械提供:增量式PID控制算法
当执行机构需要的不是控制量的绝对值,而是控制量的增量(例如去驱
动步进电动机)时,需要用PID的“增量算法”。
增量式PID控制算法可以通过(2-4)式推导出。由(2-4)可以得到
控制器的第k-1个采样时刻的输出值为:
将2-4与2-5相减并整理就可以得到增量式PID控制算法公式
为
其中
由2-6可以看出如果计算机控制系统采用恒定的采样周期T
一旦确定A、B、C只要使用前后三次测量的偏差值就可以由2-6
求出控制量。
增量式PID控制算法与位置式PID算法2-4相比计算量小得多
因此在实际中得到广泛的应用。
位置式PID控制算法也可以通过增量式控制算法推出递推计算公式
2-7就是目前在计算机控制中广泛应用的数字递推PID控制算法。
增量式PID控制算法C51程序
位置式PID控制算法
当采样时间很短时可用一阶差分代替一阶微分用累加代替积分。连续时间的
离散化即
t=KT (K=0,1,2,…,n)
离散的PID表达式积分用累加求和近似得
微分用一阶差分近似得
T——为采样周期;k——为采样序号,k=0,1,2,…;e(k)——系统在第次采样时刻的偏差值;e(k-1)——为系统在第k-1次采样时刻的偏差值。
将式(1)和式(2)代入式(3),则可得到离散的PID表达式
物理模型
式(4)表示的控制算法提供了执行机构的位置u(K)(如阀门开度),即输出
值与阀门开度一一对应,所以称为位置式PID控制算法。
离散化的PID位置式控制算法的编程表达式对于式(4),令
则离散化的PID位置式控制算法的编程表达式为:
由式可以看出,每次输出与过去的状态有关,要想计算u(k),不仅涉及到e(k-1)和e(k-2),且须将历次相加。
上式计算复杂,浪费内存。考虑到第次采样时有
两式相减,得上式是PID的递推形式是编程时常用的形式之一。
软件算法流程图流程图如图所示。其中系数α0、α1、α2可以预先算出