今天在写文档时看见流程图中有PID算法,莫名熟悉,查了下是过程控制算法,对不起大学自动控制理论的老师-_-!
PID算法在过程控制中,按偏差的比例(P)、积分(I)和微分(D)进行控制的PID控制器(亦称PID调节器)是应用最为广泛的一种自动控制器。对于于过程控制的典型对象──“一阶滞后+纯滞后”与“二阶滞后+纯滞后”的控制对象,PID控制器是一种最优控制。复习完毕。
PID算法一般应用于将当前数值快速设置为目标数值的一种算法,也是一种矫正算法。
P算法为比例控制也叫有差控制,其公式为:
e(t)为偏差值,u(t)为输出数值,Kp为比例系数。
其比例系数需要选择适中;
比例系数太小,则控制作用弱,可用性较差;
比较系数太大,则稳定性变差,容易造成振荡。
适用场景:系统扰动性不大,滞后性小,且目标值允许有一定余差的情况。
PI算法为比例积分控制,其公式为:
PI算法在P算法基础上增加了积分控制,为Ti为积分时间常数。为累计余差,只要系统存在误差,积分作用就存在
其积分系数与积分左右成反比。
积分系数过小会导致系统超调量增大,可能导致系统出现振荡;
积分系数过大会使系统趋向稳态值的速度变慢。
PID算法为比例积分微分控制算法,其公式为:
PID算法在PI算法基础上增加微分控制,TD为微分系数。为当前偏差变化速率,微分控制提高了系统的相应速度。
其微分系数与微分作用成正比。
微分系数越大,系统响应速度越快,调节时间越小。因此对于系统变化缓慢的微分不起作用。
应用场景:当需要对一个非线性系统做调节时,设当前系统值为a,系统目标值为b;则其偏差为e(t)=a-b;需要输入的改变值为u(t);设系统采样的时间为T;
首先根据选择合适的比例系数Kp ,根据上一次采样到的偏差值和这次采样到的偏差值,大致计算中间基类的余差,选择合适的积分系数Ti做积分控制;使用上一次偏差值和这一次的偏差值计算偏差速度的变化,选择合适的微分习俗TD做微分控制。
实际运用中,如果单纯想给输出标定值,则不需要积分控制。