在编写报表的过程中,如何在报表中实时反映设备的运行状态是个难题,如某台水泵在何时开启和关闭。
经过多次实验,本文采用了如下的方法解决了该难题。
分别对一期和二期设备进行编号:
如:一期进水泵房1#潜水泵,编号规则如下:
pno=101设备的编号;
pus=yiqi#JSBF1#beng#run;设备对应的标记名;
(2)在主程序中,写入各个设备运行状态采集程序:
IF $Minute==0 AND $Second==0 THEN
pno=101;
pus=yiqi# JSBF1#beng#run; SQLInsert(ConnectionId,"dsth","zhuangtaiKai" );
ENDIF;
(3)设置每台设备的数据改变脚本
Dstr=$DateString + " " + StringFromIntg( $Hour, 10) + ":" + StringFromIntg( $Minute, 10) + ":00";
pus=yiqi#JSBF1#beng#run+100;
pno=101;
SQLInsert( ConnectionId, "dsth", "zhuangtaiKai" );
在程序实际运行过程中,每隔800ms主程序将设备运行状态数据写进数据库中;每当设备的运行状态改变时,数据改变脚本将该时刻设备的运行动作写进数据库。
该报表系统不仅提供实时打印生产数据和一、二期设备运行状态数据,而且提供了厂区关键数据曲线,方便了工作人员在中控制室里观察和了解厂区的设备运行情况和各项参数。
3 结语
该工程运行状态监控软件实现了以下功能:
(1)上位机实时显示现场设备的运行状态,当设备出现故障时,系统实时报警。
(2)存储了现场设备的运行状态、关键设备的启停时间和对保护的投入及切除操作的记录,并按要求生成报表和打印报表。
(3)可实现监控画面和生产数据的网络发布。一年多的使用表明,该监控软件科学、灵活、可靠,提高了污水厂生产的安全经济水平。
参考文献:
[1] Intouch用户指南[M].Wonderware公司,2005.
[2] Intouch SQL访问器管理指南[M].Wonderware公司,2005.