首页 理论教育 PID控制算法输出值的优化处理

PID控制算法输出值的优化处理

时间:2023-06-28 理论教育 版权反馈
【摘要】:LNM_P、LNM_I和LNM_D分别是PID控制器输出量中的比例分量、积分分量和微分分量,它们供调试时使用。这样可以保证手动到自动的无扰切换,即切换前后PID控制器的输出值LMN不会突变。LMN_FAC和LMN_OFF用来调节控制器输出值的范围。

PID控制算法输出值的优化处理

1.误差的计算与死区特性

SP_INT(内部设定值)是以百分数为单位的浮点数设定值。用SP_INT减去浮点数格式的过程变量PV(即反馈值,见图10-13),得到误差值。

978-7-111-53570-6-Chapter10-21.jpg

图10-13 FB41 CONT_C的框图

在控制系统中,某些执行机构如果频繁动作,将会导致小幅振荡,造成严重的机械磨损。从控制要求来说,很多系统又允许被控量在一定范围内存在误差。死区(Dead Band)环节(见图10-13)能防止执行机构的频繁动作。当死区环节的输入量(即误差)的绝对值小于输入参数死区宽度DEADB_W时,死区的输出量(即PID控制器的输入量)为0,这时PID控制器的输出分量中,比例部分和微分部分为0,积分部分保持不变,因此PID控制器的输出保持不变,控制器不起调节作用,系统处于开环状态。当误差的绝对值超过DEADB_W时,死区环节的输入、输出为线性关系,为正常的PID控制。如果令DEADB_W为0,死区被关闭。

为了抑制由于控制器输出量的量化造成的连续的较小的振荡,例如用FB43 PULSEGEN进行脉冲宽度调制时可能出现的振荡,也可以用死区非线性对误差进行处理。

图10-13中的误差ER(error)为FB输出的中间变量。

2.设置控制器的结构

FB41采用位置式PID算法,PID控制器的比例运算、积分运算和微分运算3部分并联,P_SEL、I_SEL和D_SEL为1状态时分别启用比例、积分和微分作用,反之则禁止对应的控制作用。因此可以将控制器组态为P、PI、PD和PID控制器。很少使用单独的I控制器或D控制器,默认的控制方式为PI控制。

LNM_P、LNM_I和LNM_D分别是PID控制器输出量中的比例分量、积分分量和微分分量,它们供调试时使用。

图10-13中的GAIN为比例部分的增益(或称为比例系数),对应于式(10-1)中的KP。TI和TD分别为积分时间和微分时间,对应于式(10-1)中的TI和TD。

输入参数TM_LAG为微分操作的延迟时间,FB41的帮助文件建议将TM_LAG设置为TD/5,这样可以减少一个需要整定的参数。

引入扰动量DISV(Disturbance)可以实现前馈控制,DISV的默认值为0.0。

3.积分器的初始值

FB41有一个初始化程序,在输入参数COM_RST(完全重新起动)为1状态时该程序被执行。在初始化过程中,如果BOOL输入参数I_ITL_ON(积分作用初始化)为1状态,将输入参数I_ITLVAL作为积分器的初始值,所有其他输出都被设置为其默认值。(www.xing528.com)

INT_HOLD为1时积分操作保持不变,积分输出被冻结,一般不冻结积分输出。

4.手动模式

BOOL变量MAN_ON为1状态时为手动模式,为0状态时为自动模式。在手动模式,控制器的输出值被手动输入值MAN代替。

在手动模式,控制器输出中的积分分量被自动设置为LMN–LMN_P–DISV(其中的“–”为减号),而微分分量被自动设置为0。这样可以保证手动到自动的无扰切换,即切换前后PID控制器的输出值LMN不会突变。

5.输出量限幅

LMNLIMIT(输出量限幅)方框用于将控制器输出值LMN(Manipulated Value)限幅。

LMNLIMIT的输入量超出控制器输出值的上限值LMN_HLM时,BOOL输出QLMN_ HLM(输出超出上限)为1状态;小于下限值LMN_LLM时,BOOL输出QLMN_LLM(输出超出下限)为1状态。LMN_HLM和LMN_LLM的默认值分别为100.0%和0.0%。

6.输出量的格式化处理

LMN_NORM(输出量格式化)方框用下述公式来将限幅后的输出量LMN_LIM格式化:

LMN=LMN_LIM×LMN_FAC+LMN_OFF式中,LMN是格式化后浮点数格式的控制器输出值;LMN_FAC为输出值系数,默认值为1.0;LMN_OFF为输出值偏移量,默认值为0.0。LMN_FAC和LMN_OFF用来调节控制器输出值的范围。它们采用默认值时,LMN_NORM方框的输入、输出值相等。

7.输出值转换为外部设备(I/O)格式

为了将PID控制器的输出值送给AO模块,通过“CPR_OUT”方框,将LMN(0~100%或±100%的浮点数格式的百分数)转换为外部设备(I/O)格式的变量LMN_PER(0~27648或±27648的整数)。转换公式为

LMN_PER=LMN×27648/100

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈