多语言展示
当前在线:1124今日阅读:176今日分享:34

S71500 流量累积及共用流量计的控制策略

在工艺自控控制中,经常会用到流量计来作为计量工具,比如往反应釜中加水,要求加入5m3,则就要根据瞬时流量换算成累积流量,当进水累积流量等于或 大于设定流量5m3时,关闭进水阀。有时业主考虑成本,会在不重要的计量环节,共用一个流量计,比如在清洗时,三个反应釜共用一个进水流量计,这时,就要考虑如何通过三路阀门来对于每一路的累积流量。本篇所介绍的控制程序就解决了这个问题,利用SCL编程语言,可以轻松简洁的实现其控制目标。
工具/原料

博途V14

方法/步骤
1

首先,建立变量表,输入相应的变量名称和变量地址。比如:Water_Flow_IW 地址IW260,即组态的 第一块模拟量输入模块的第三个通道。

2

在数据块中,建立对应的变量名称和地址,用于将模拟量采集到的通道数据转换成工程数据。比如:Water_Flow 数据类型 Real 用于存放转换后的瞬时流量。       Water_Flow_ACC 数据类型 Real 用于存放累计流量

3

在新建的功能块中编写其控制程序。首先是调用数据转换块,将采集流量计的电流信号经过模拟量通道转换为工程数据。(*模拟量采集转换*)'SCALE_ITR'(IN_INT:='Water_Flow_IW',            IN_SH:=27648,            IN_SL:=0,            OUT_SH:=30,            OUT_SL:=0,            X:=35,            RX:=2,            IN_OUT:='DB_TO_AI'.Water_Flow);

4

编写1s时钟定时器并获取其上升沿脉冲,每一秒钟对瞬时流量进行累积,瞬时流量单位为m3/h,要除以3600转换为m3/s,然后进行累积。(*1s时钟定时器*)'IEC_Timer_11_DB'.TON(IN:=NOT 'Time_1s_bit',                      PT:=T#1s,                      Q=>'Time_1s_bit');(*1s定时器脉冲信号*)'R_TRIG_DB_2'(CLK:='Time_1s_bit',              Q=>'Time_1s_Pluse');(*流量累积*)IF 'Time_1s_Pluse' THEN    'Flow_ACC'(Flow_In := 'DB_TO_AI'.Water_Flow,               Flow_ACC_Out := 'DB_TO_AI'.Water_Flow_ACC);END_IF;

5

共用流量计时,程序中有3路进水共用一台流量计,三路进水阀通过进行联锁,保证任何时候都只有一路打开,当进水阀门开启时,流量计累积流量累积的是这一路的进水流量,阀门关闭后,立刻清零。(*三路管道共用一个流量计,单路进行转换*)IF 'Water_XV01_bit' THEN    'Water_XV02_bit' := 0    ;    'Water_XV03_bit' := 0    ;    'Water_XV01_RS' := 1    ;    'DB_TO_AI'.Water_MV01_Flow_ACC := 'DB_TO_AI'.Water_Flow_ACC    ;ELSE    'Water_XV01_RS' := 0    ;    'DB_TO_AI'.Water_MV01_Flow_ACC := 0    ;    END_IF;

注意事项

本篇仅为自动化工程师学习参考。

推荐信息