浅谈LEADLAG 超前滞后模块的作用
在电厂控制系统中,有很多测量信号具有高频波动性,严重影响了控制系统的控制品质。PID 控制虽然是最典型、有效的控制方法,但是基于测量值的大幅波动,也难于将系统的输出很好地跟踪给定值。而LEADLAG 模块具有滤波功能,这些具有大幅波动的反馈测量值经过LEADLAG 模块处理之后,可以有效的去除部分扰动,再经过PID 控制器,使得系统控制品质得以改善。
LEADLAG 是一个非线性的超前/滞后函数。该模块的输出值为旧输出、旧输入、新输入、增益、超前和滞后时间常数的函数。
动态方程
1、在稳态下(输入基本保持不变,或者在很小的区间内波动) ,输出OUT = IN X GAIN ;
2、在动态下,其输出为:OUT = (K1 X IN1) + (K2 X OLDIN1) + (K3 X OLDOUT);
其中:OLDOUT=前一个输出
OLDIN1=前一个输入
IN1=当前输入
OUT=当前输出
K1= GAIN x (H + 2x LEAD)/ (H + 2x LAG)
K2= GAIN x (H - 2x LEAD)/ (H + 2x LAG)
K3= (2X LAG - H)/(2x LAG + H)
H=采样时间(回路时间)
假设,此时系统的采样时间H=1s,增益GAIN=1,难么此时K1=(1+2x LEAD)/(1+2x LAG);K2= (1 - 2x LEAD)/(1 + 2x LAG); K3= (2X LAG - 1)/(2x LAG + 1).
在纯超前的状态下(LAG=0):K1=1+2x LEAD;K2=1 - 2x LEAD;K3=-1,由此可知,LEAD 越大,OUT 中K1 X IN1占得比重越大,即当前的输入对输出影响越大,且在输入短时间内不变的情况下,OUT 越大,超前作用越强。
在纯滞后的状态下(LEAD=0):K1= 1/ (1 + 2x LAG);K2=1/ (1 + 2x LAG);K3=(2X LAG - 1)/(2x LAG + 1),由此可知,LAG 越大,OUT 中三部分的值越小,滤波作用越强。
传递函数
LEADLAG 的传递函数为G (S ) =Y (S ) 1+T 1S =K ⋅X (S ) 1+T 2S
其中K ---增益, T 1---超前时间,T 2---滞后时间。1+T 1S 为微分环节,其特性为超前和起始的加强,1+T 2S 为一阶惯性环节,其特性为滞后。
通过Matlab 软件中的Simulink 模块搭建仿真图如下:
当T 1=0时,此环节只有一阶惯性环节,在阶跃输入条件下,K=1时,分别对T 2=2,T 2=5进行仿真,其阶跃响应图为:
代表输入, 代表T 2=2时的阶跃响应, T 2=5时的阶跃响应。由图可知,滞后时间常数越大,惯性环节的输出趋于输入的时间越长,滤波作用越好。
当T 2=0时,此环节只有微分环节,在阶跃输入条件下,K=1时,分别对T 1=2,T 1=5进行仿真,其阶跃响应图为:
由图可知,超前时间常数越大,微分环节的输出越大,即前馈作用的越明显。
除氧器水位控制中的应用
我厂除氧器上水调门为气动阀门,由于长调门的阀芯长期被冲刷,加之管道振动等因素导致调门抖动,最终导致除氧器水位波动较大。
我厂的除氧器水位控制采用三冲量控制方式,主控制器负责控制除氧器水位,起到细调的作用,副控制器负责快速克服内部扰动,起到粗调的作用。在负荷较低及负荷波动较大时,除氧器上水调门波动较大,而此波动最先反映在凝结水流量上,使得凝结水流量表现为高频波动的锯齿形曲线。为了降低甚至消除此高频扰动信号,特此加入了LEADLAG 功能块进行滤波处理。其参数设置为:K=1,LEAD=0,LAG=20,我们假设了凝结水流量的锯齿形曲线,搭建仿真图如图所示:
其仿真结果如下:
由图可知,此功能块能很好地消除凝结水高频的扰动,使得除氧器水位控制更加快速准确。当然,此功能块的参数,是由电科院经过长时间的调试得来的,如果想得到效果更好的参数,可以通过搭建数学模型,利用遗传算法等免疫算法来寻求最优值。
浅谈LEADLAG 超前滞后模块的作用
在电厂控制系统中,有很多测量信号具有高频波动性,严重影响了控制系统的控制品质。PID 控制虽然是最典型、有效的控制方法,但是基于测量值的大幅波动,也难于将系统的输出很好地跟踪给定值。而LEADLAG 模块具有滤波功能,这些具有大幅波动的反馈测量值经过LEADLAG 模块处理之后,可以有效的去除部分扰动,再经过PID 控制器,使得系统控制品质得以改善。
LEADLAG 是一个非线性的超前/滞后函数。该模块的输出值为旧输出、旧输入、新输入、增益、超前和滞后时间常数的函数。
动态方程
1、在稳态下(输入基本保持不变,或者在很小的区间内波动) ,输出OUT = IN X GAIN ;
2、在动态下,其输出为:OUT = (K1 X IN1) + (K2 X OLDIN1) + (K3 X OLDOUT);
其中:OLDOUT=前一个输出
OLDIN1=前一个输入
IN1=当前输入
OUT=当前输出
K1= GAIN x (H + 2x LEAD)/ (H + 2x LAG)
K2= GAIN x (H - 2x LEAD)/ (H + 2x LAG)
K3= (2X LAG - H)/(2x LAG + H)
H=采样时间(回路时间)
假设,此时系统的采样时间H=1s,增益GAIN=1,难么此时K1=(1+2x LEAD)/(1+2x LAG);K2= (1 - 2x LEAD)/(1 + 2x LAG); K3= (2X LAG - 1)/(2x LAG + 1).
在纯超前的状态下(LAG=0):K1=1+2x LEAD;K2=1 - 2x LEAD;K3=-1,由此可知,LEAD 越大,OUT 中K1 X IN1占得比重越大,即当前的输入对输出影响越大,且在输入短时间内不变的情况下,OUT 越大,超前作用越强。
在纯滞后的状态下(LEAD=0):K1= 1/ (1 + 2x LAG);K2=1/ (1 + 2x LAG);K3=(2X LAG - 1)/(2x LAG + 1),由此可知,LAG 越大,OUT 中三部分的值越小,滤波作用越强。
传递函数
LEADLAG 的传递函数为G (S ) =Y (S ) 1+T 1S =K ⋅X (S ) 1+T 2S
其中K ---增益, T 1---超前时间,T 2---滞后时间。1+T 1S 为微分环节,其特性为超前和起始的加强,1+T 2S 为一阶惯性环节,其特性为滞后。
通过Matlab 软件中的Simulink 模块搭建仿真图如下:
当T 1=0时,此环节只有一阶惯性环节,在阶跃输入条件下,K=1时,分别对T 2=2,T 2=5进行仿真,其阶跃响应图为:
代表输入, 代表T 2=2时的阶跃响应, T 2=5时的阶跃响应。由图可知,滞后时间常数越大,惯性环节的输出趋于输入的时间越长,滤波作用越好。
当T 2=0时,此环节只有微分环节,在阶跃输入条件下,K=1时,分别对T 1=2,T 1=5进行仿真,其阶跃响应图为:
由图可知,超前时间常数越大,微分环节的输出越大,即前馈作用的越明显。
除氧器水位控制中的应用
我厂除氧器上水调门为气动阀门,由于长调门的阀芯长期被冲刷,加之管道振动等因素导致调门抖动,最终导致除氧器水位波动较大。
我厂的除氧器水位控制采用三冲量控制方式,主控制器负责控制除氧器水位,起到细调的作用,副控制器负责快速克服内部扰动,起到粗调的作用。在负荷较低及负荷波动较大时,除氧器上水调门波动较大,而此波动最先反映在凝结水流量上,使得凝结水流量表现为高频波动的锯齿形曲线。为了降低甚至消除此高频扰动信号,特此加入了LEADLAG 功能块进行滤波处理。其参数设置为:K=1,LEAD=0,LAG=20,我们假设了凝结水流量的锯齿形曲线,搭建仿真图如图所示:
其仿真结果如下:
由图可知,此功能块能很好地消除凝结水高频的扰动,使得除氧器水位控制更加快速准确。当然,此功能块的参数,是由电科院经过长时间的调试得来的,如果想得到效果更好的参数,可以通过搭建数学模型,利用遗传算法等免疫算法来寻求最优值。