4 软件设计WWW※PLCJS_COM-PL#C-技.术_网(可编※程控※制器技术门户)
(1) 系统软件WWcW_PLCJS_COM-PLC-技.术_网
PLC系统软件选用STEP7 V5.2软件包,对于系统中的逻辑控制选用梯形图(LADDER)编程,直观、方便;对于模拟量处理和PID回路控制部分则采用语句表(STL)编程,结构紧凑而又灵活。另外,为实现软件冗余,利用SIEMENS公司专门提供的冗余软件包,它实际上是一组系统功能块,供用户在程序中调用、设置,实现用户的软件冗余功能。P.L.C.技.术.网——可编程控制器技术门户
上位机软件选用SIEMENS公司的Wincc V5.1组态软件。Wincc功能强大,可方便快捷地组态出各种操作界面。开放式的数据库系统为用户提供了强大的数据管理功能。WWW_P※LCJS_CO※M-PLC-技-.术_网
(2) 应用软件设计WWW_PLCJS@_COM%-PLC-技.术_网
根据该系统具体情况,软件设计过程中着重要考虑的是以下几个方面:WWW_P※LCJS_COM-PLC-)技.术_网
·软件冗余;plcjs.技.术_网
·PID算法;WWW_PLCJS※COM-PLC-技.术_网(可※编程控※制器技术门户)
·安全措施。WWW_PLCJS※COM-PLC-技×术_网(可编程控※制器技术门户)
4.1 软件冗余WWW※PLCJS_COM-PL#C-技.术_网(可编※程控※制器技术门户)
(1) 在OB100(热启动模块)中调用系统冗余软件包中的系统功能块FC100。WWW_PLCJ-S_COM-PLC-技.术_网(可-编程控-制器技术-门户)
(2) 在OB1中调用系统功能块FB101。程序如下:P_L_C_技_术_网——可——编——程——控-制-器-技——术——门——户
CALL "SWR_ZYK" , DB5 //调用FB101P.L.C.技.术.网——可编程控制器技术门户
DB_WORK_NO :=DB1 //内部数据块WWcW_PLCJS_COM-PLC-技.术_网
CALL_POSITION:=TRUEWWW※PLCJS_COM-PL#C-技.术_网(可编※程控※制器技术门户)
RETURN_VAL :=MW110 //返回状态字WWW_PLC※JS_COM-PmLC-技.术_网
EXT_INFO :=MW112WWcW_PLCJS_COM-PLC-技.术_网
A DB5.DBX 9.1 WWW_PL※CJS_COM-PLC-技.术_网
//冗余状态位,判断是否为从站WWW_P※LCJS_COM-PLC-)技.术_网
JC M001WWW_PLC※JS_COM-PLC-技.术_网(可编程控※制器技术门户)
CALL FC 50 WWW_PLCJS※COM-PLC-技×术_网(可编程控※制器技术门户)
FC50调用所有的控制程序WWW_PLC※JS_COM-PmLC-技.术_网
M001: NOP 0WWW_PL※CJS_COM-PLC-技.术_网
CALL "SWR_ZYK" , DB5WWW_PLCJS@_COM%-PLC-技.术_网
DB_WORK_NO :=DB1WWW_PLCJS_COM-PLC-技.术_网
CALL_POSITION:=FALSE //传送结束WWW_PLC※JS_COM-PLC-技.术_网(可编程控※制器技术门户)
RETURN_VAL :=MW114WW.W_PLCJS_COM-PLC-技.术_网
EXT_INFO :=MW116WWW_PLCJ-S_COM-PLC-技.术_网(可-编程控-制器技术-门户)
(3) 在OB86中调用冗余诊断程序,程序如下:WWW_PLCJS@_COM%-PLC-技.术_网
CALL "SWR_DIAG"WWW_PLCJS※COM-PLC-技.术_网(可※编程控※制器技术门户)
DB_WORK :=W#16#1WW.W_PLC※JS_C,OM-PL,C-技.术_网
OB86_EV_CLASS :=#OB86_EV_CLASSWWW_PLC※JS_COM-PLC-技.术_网(可编程控※制器技术门户)
OB86_FLT_ID :=#OB86_FLT_IDWWW_PLCJS@_COM%-PLC-技.术_网
RETURN_VAL :=MW130WWW_PLC※JS_COM-PmLC-技.术_网
这段程序用来诊断从站的故障信息,如有问题将切换从站通讯模块。plcjs.技.术_网
(4) Wincc中的每个外部变量都连接着CPU中的一个地址,当两台CPU切换时,这些连接地址也要同时切换。WINCC提供了动态向导,可自动产生相关的变量和全局脚本,实现上述转换。WWW_PLCJS※COM-PLC-技.术_网(可※编程控※制器技术门户)
4.2 PID算法WWW_PLCJS※COM-PLC-技×术_网(可编程控※制器技术门户)
STEP7提供了两种常用的PID算法:连续型PID(FB41)和离散型PID(FB42),根据实际要求,选用的是FB41,其框图如图2所示。WWW_PLCJS_COM-PLC-技.术_网
plcjs.技.术_网
P.L.C.技.术.网——可编程控制器技术门户
PID算法的输出实际上是比例(P)、积分(I)、微分(D)三部分作用之和:——可——编——程——控-制-器-技——术——门——户
Mn=MPn+MIn+MDnplcjs.技.术_网
MPn=GAIN×(SPn-PVn) WWW.PLCJS.COM——可编程控制器技术门户
MIn=GAIN×TS/TI×(SPn-PVn)+MXWWW_PLCJS※COM-PLC-技.术_网(可※编程控※制器技术门户)
MDn=GAIN×TD/TS×(PVn-1-PVn)WWW_PLCJS_COM-PLC-技.术_网
式中,WWW_PLCJS※COM-PLC-技.术_网(可※编程控※制器技术门户)
Mn:第n次采样时刻的输出值 W1WW_P4LCJS_COM-PLC-技.术_网
MPn:第n次采样时刻的比例作用,与偏差成正比。 WWW_PLCJS_COM-PLC-技.术_网
MIn:第n次采样时刻的积分作用,可以消除静差,提WWW_PLCJS_COM-PLC-技.术_网
高控制品质。 P_L_C_技_术_网——可——编——程——控-制-器-技——术——门——户
MDn:第n次采样时刻的微分作用,根据差值的变化plcjs.技.术_网
率调节,可抑制超调。 ——可——编——程——控-制-器-技——术——门——户
SPn:第n次采样时刻的设定值P.L.C.技.术.网——可编程控制器技术门户
PVn:第n次采样时刻的过程值W1WW_P4LCJS_COM-PLC-技.术_网
MX:第n-1次采样时刻的积分作用,每次采样计算后WWW_PLCJS_COM-PLC-技.术_网
自动刷新WWW_PLC※JS_COM-PLC-技.术_网(可编程控※制器技术门户)
GAIN:回路增益,P参数 WWW_PLC※JS_COM-PmLC-技.术_网
TI:积分时间常数,即I参数P.L.C.技.术.网——可编程控制器技术门户
TD:微分时间常数,即D参数 P.L.C.技.术.网——可编程控制器技术门户
TS:采样时间WWW_PL※CJS_COM-PLC-技.术_网
根据上述原理框图,结合实际工艺要求,编写程序(以供料道温度回路为例)如下:WWW_PLCJS※COM-PLC-技×术_网(可编程控※制器技术门户)
L DB44.DBD 0 P_L_C_技_术_网——可——编——程——控-制-器-技——术——门——户
//温度设定值,浮点型WW.W_PLC※JS_C,OM-PL,C-技.术_网
T #TEMP0W1WW_P4LCJS_COM-PLC-技.术_网
L PIW 524 //温度反馈值WWW_PLCJS※COM-PLC-技.术_网(可※编程控※制器技术门户)
ITD WWW.PLCJS.COM——可编程控制器技术门户
//整型转双整型WWW_PLCJS※COM-PLC-技×术_网(可编程控※制器技术门户)
DTR WWW_PLC※JS_COM-PLC-技.术_网(可编程控※制器技术门户)
//双整型转浮点型WWW.PLCJS.COM——可编程控制器技术门户
L 2.764800e+004WWW_PLC※JS_COM-PLC-技.术_网(可编程控※制器技术门户)
/R WWW_P※LCJS_COM-PLC-)技.术_网
L 3.200000e+002 ——可——编——程——控-制-器-技——术——门——户
//量程范围320度WWW_P※LCJS_CO※M-PLC-技-.术_网
*R plcjs.技.术_网
L 9.800000e+002 //零点是980度WWW※PLCJS_COM-PL#C-技.术_网(可编※程控※制器技术门户)
+R WWW_PLCJS※COM-PLC-技×术_网(可编程控※制器技术门户)
T #TEMP1 WWcW_PLCJS_COM-PLC-技.术_网
//温度反馈对应量程范围980-1300度,WWW_PLCJS※COM-PLC-技×术_网(可编程控※制器技术门户)
计算出浮点型数据。——可——编——程——控-制-器-技——术——门——户
L DB44.DBW 4 //阀门开度P_L_C_技_术_网——可——编——程——控-制-器-技——术——门——户
ITD WWW_PL※CJS_COM-PLC-技.术_网
DTR WWW_PLC※JS_COM-PmLC-技.术_网
L 2.764800e+002 WWW_PLCJS_COM-PLC-技.术_网
//阀门开度转为百分数WWW.PLCJS.COM——可编程控制器技术门户
/R WWW_PLC※JS_COM-PLC-技.术_网(可编程控※制器技术门户)
T #TEMP2W1WW_P4LCJS_COM-PLC-技.术_网
L DB44.DBD 20WWcW_PLCJS_COM-PLC-技.术_网
T #TEMP31WWW_PLC※JS_COM-PLC-技.术_网(可编程控※制器技术门户)
A M 56.3 //自动标志位P.L.C.技.术.网——可编程控制器技术门户
NOT WW.W_PLCJS_COM-PLC-技.术_网
= #TEMP4WWW_PLCJ-S_COM-PLC-技.术_网(可-编程控-制器技术-门户)
CALL "CONT_C" , DB144 //调用FB1WWcW_PLCJS_COM-PLC-技.术_网
COM_RST :=FALSEWWW_PLC※JS_COM-PLC-技.术_网(可编程控※制器技术门户)
MAN_ON :=#TEMP4 plcjs.技.术_网
PVPER_ON:=FALSEP.L.C.技.术.网——可编程控制器技术门户
P_SEL :=TRUE // 使用P调节WWW_PLCJS@_COM%-PLC-技.术_网
I_SEL :=TRUE //使用I调节WWW_P※LCJS_COM-PLC-)技.术_网
INT_HOLD:=FALSEWWW.PLCJS.COM——可编程控制器技术门户
I_ITL_ON:=FALSEWWW_P※LCJS_COM-PLC-)技.术_网
D_SEL :=FALSE //使用D调节WWW_PLCJ-S_COM-PLC-技.术_网(可-编程控-制器技术-门户)
CYCLE :=T#2S //采样时间WWW※PLCJS_COM-PL#C-技.术_网(可编※程控※制器技术门户)
SP_INT :=#TEMP //设定值WWW_PLC※JS_COM-PLC-技.术_网(可编程控※制器技术门户)
PV_IN :=#TEMP1 //过程值WW.W_PLCJS_COM-PLC-技.术_网
PV_PER :=WWcW_PLCJS_COM-PLC-技.术_网
MAN :=#TEMP2 //PID自动标志WWcW_PLCJS_COM-PLC-技.术_网
GAIN :=DB44.DBD8 //参数PWWW_PL※CJS_COM-PLC-技.术_网
TI :=DB44.DBD12 //参数IW1WW_P4LCJS_COM-PLC-技.术_网
TD :=DB44.DBD16 //参数DWWW_PLCJS※COM-PLC-技×术_网(可编程控※制器技术门户)
TM_LAG :=T#2S plcjs.技.术_网
DEADB_W :=#TEMP31 //死区范围WW.W_PLCJS_COM-PLC-技.术_网
LMN_LLM :=DB44.DBD28 //输出下限WWW_P※LCJS_CO※M-PLC-技-.术_网
PV_FAC :=1.000000e+000P_L_C_技_术_网——可——编——程——控-制-器-技——术——门——户
PV_OFF :=0.000000e+000P_L_C_技_术_网——可——编——程——控-制-器-技——术——门——户
LMN_FAC :=1.000000e+000WWW_PLC※JS_COM-PmLC-技.术_网
LMN_OFF :=0.000000e+000WWW_PL※CJS_COM-PLC-技.术_网
I_ITLVAL:=0.000000e+000W1WW_P4LCJS_COM-PLC-技.术_网
DISV :=0.000000e+000WW.W_PLC※JS_C,OM-PL,C-技.术_网
LMN :=WWW_P※LCJS_CO※M-PLC-技-.术_网
LMN_PER :=#TEMP3plcjs.技.术_网
QLMN_HLM:=WWW_PLCJS※COM-PLC-技×术_网(可编程控※制器技术门户)
QLMN_LLM:=WWW_PLC※JS_COM-PLC-技.术_网(可编程控※制器技术门户)
LMN_P :=WW.W_PLC※JS_C,OM-PL,C-技.术_网
LMN_I :=WWW_PLC※JS_COM-PmLC-技.术_网
LMN_D :=WWW_PLCJS_COM-PLC-技.术_网
PV :=WW.W_PLC※JS_C,OM-PL,C-技.术_网
ER :=WWW_PLC※JS_COM-PmLC-技.术_网
AN M 56.3WWW_PLC※JS_COM-PLC-技.术_网(可编程控※制器技术门户)
JC M001WWW_PLCJS@_COM%-PLC-技.术_网
L #TEMP3WW.W_PLCJS_COM-PLC-技.术_网
T DB44.DBW 4 W1WW_P4LCJS_COM-PLC-技.术_网
//PID自动时,将PID输出结果送到输出存储地址P.L.C.技.术.网——可编程控制器技术门户
L DB44.DBW 4P.L.C.技.术.网——可编程控制器技术门户
T PQW 522 //调节阀输出WWW.PLCJS.COM——可编程控制器技术门户
程序前部分主要是处理设定值、反馈值并送入中间变量,将阀门开度送入PID模块,保证手/自动无扰动切换。WWW※PLCJS_COM-PL#C-技.术_网(可编※程控※制器技术门户)
调用FB41时,要给各参数赋值。为方便调整,重要参数都存在DB块中,用户可在上位机上随时修改。WWW※PLCJS_COM-PL#C-技.术_网(可编※程控※制器技术门户)
从上面的公式中可以看出,参数P(GAIN)与P、I、D作用都是成正比的,它决定了PID回路的灵敏度,即调节速度的快慢;I参数越大,积分作用越弱,而D参数越大,微分作用越强。不能单靠理论计算来确定PID参数,唯一的衡量标准就是被控参数(温度、流量等)的精度和稳定度,所以在实际调试中,都是参照被控参数的实时曲线,反复观察分析,从而达到最佳的控制效果。WWW_P※LCJS_COM-PLC-)技.术_网
4.3 安全措施W1WW_P4LCJS_COM-PLC-技.术_网
(1) 防止误操作 任何设定值都设有上、下限,即不允许输入“离谱”的数据;重要设备的开、停,都需操作员确认;运行中调整设定值,不能直接输入数据,而是按“+”、“-”键,逐步增减。WWW_PLCJ-S_COM-PLC-技.术_网(可-编程控-制器技术-门户)
(2) 报警功能WWW_PLCJS※COM-PLC-技.术_网(可※编程控※制器技术门户)
每个被控参数都设有上、下限报警值及偏差报警值,当运行数据超出这些值时,系统将发出WWcW_PLCJS_COM-PLC-技.术_网
声光报警,提醒操作者。对于特别重要的参数,变化过快,也在报警之列。WWW※PLCJS_COM-PL#C-技.术_网(可编※程控※制器技术门户)
(3) 逻辑连锁 当燃料压力或助燃风压力开关动作时,关闭安全阀;当被控参数(温度或压力)突变时,关闭安全阀;当设定值和过程值的偏差大于安全范围时,相关PID回路切换到手动,以保持输出不变。WWW_PLC※JS_COM-PmLC-技.术_网
5 结束语WWcW_PLCJS_COM-PLC-技.术_网
整个控制系统,软件硬件配置和软件设计充分考虑了系统的工艺特点,保护措施完备,操作灵活、控制精度高。WWW_PLCJS※COM-PLC-技.术_网(可※编程控※制器技术门户)
参考文献WWW_PLCJS※COM-PLC-技.术_网(可※编程控※制器技术门户)
[1] 西门子S7-400硬件手册[Z].WW.W_PLC※JS_C,OM-PL,C-技.术_网
WWW_PLCJS@_COM%-PLC-技.术_网