PI校正环节的程序实现推导过程

PI校正环节在经典控制论中非常有用,特别是对负反馈控制系统,基本上都有PI校正环节。

1.下面分别说明比例环节和积分环节的作用,以阶跃信号为例。

①比例环节单独作用



以上分析说明,若只有比例环节的控制系统,阶跃响应也是一个阶跃信号,但会存在一定静差,且静差值随Kp增大而减小,但始终存在,不随时间变化。

输出的理论波形跟实际的数字控制输出波形会不一致。因为实际数字控制系统每隔一个计算周期运算一次,而在这个计算周期中,输出量只受上一次的调节参数和中间变量的控制。所以可能会出现超调情况。

②比例-积分共同作用



拉氏反变换


以上分析说明,当加入积分项后,阶跃响应为一逐渐上升的曲线,且误差分量随时间逐渐趋于零;KI越大,误差分量衰减越快,KP越大,误差分量衰减越慢。

PI校正环节的优缺点:

比例系数Kp增大,则会减小稳态误差,减小了上升时间,提高了响应速度,但会引入并逐渐增大超调量,直至系统振荡;

积分环节提高了系统型别,消除稳态误差,但参数KI若过大,积分作用太强,会在大偏差阶段引起过大超调,调节时间变长,最后振荡。

2.PI环节的表达式

传递函数


微分方程


对应的离散方程为


写成序列形式


写出相应的 z 变换系统方程



根据序列形式,可以写出程序代码:

#define Ts   0.00001        // 采样时间
typedef struct PI_Ele{
	float kp;                      // 比例环节系数
	float ki;                      // 积分环节系数
	float x1;
	float x2;
	float yout;
	float y1;
} PI_Vector;                   
#define PI_Macro(PI_Vector v)   \                       // 算法的宏定义
	v.yout = (v.kp+v.ki*Ts)*v.x2-v.kp*x1+v.y1;  \
	v.x1   = v.x2;   \
	v.y1   = v.yout; 
阅读更多
想对作者说点什么?

博主推荐

换一批

没有更多推荐了,返回首页