前言 茂名市自来水公司河东水厂已建成两期,两期的工艺和设备都由国外引进,控制系统均采用由PLC(可编程逻辑控制器)和PC(个人电脑)组成的计算机集散控制系统,自动化程度较高。由于两套系统采用的通信协议不同,所以它们没能很好地整合,它们之间没有数据通信,这给生产控制、生产报表的编制和值班人员的操作带来一定困难。鉴于上述情况,我们决定利用以太网和监控组态软件INTOUCH来实现它们的连接,使之成为一套完整的系统。
一、 系统组成及存在问题
两套系统采用不同的PLC,两者网络拓扑结构不同,通信协议不同(采用厂家自己的协议),第一期采用的是THYSSEN PLC,网络拓扑结构为环形结构,通信协议采用T800;第二期采用Telemecanique PLC,网络拓扑结构为总线型,通信协议是FIPWAY。系统连接图见图1。
两期的监控组态软件都采用INTOUCH ,只是版本不同,这是一套由wanderware 公司出品的组态软件包,主要包括两部分的功能程序:开发环境 windowmaker和运行环境windowviewer,另外还有很多实用工具,NetDDE(网络动态数据交换)就是其中之一,它是microsoft windows的DDE(Dynamic Data Exchange,动态数据交换)的扩展,不同之处是它用于网络而后者用于单机。
由于是两套各自独立的系统,两者之间没有通信,数据交换只能靠手工完成,既不准确,又不及时,在操作中,操作人员必须不停地奔波于两套系统之间,生产报表的编制要人工合成,不够方便,不能实现水厂的全自动控制。
考虑到两期系统所采用的PLC、网络拓扑结构和通信协议不同,若直接从PLC方面着手,技术难度高,工作量多,投资大,耗时长。经研究,最终决定直接从INTOUCH着手,利用其基于以太网和TCP/IP协议的网络功能来实现它们之间的连接。
二、 解决方案
监控组态软件INTOUCH基于以太网,兼容TCP/IP通信协议,通过它可实现两套独立系统的连接,此法投资较少,对操作人员的要求不高,而且可解决操作人员在两套系统之间疲于奔命的问题。连接后,可在以太网上的任何一台计算机分享数据,而不受特定的计算机限制,并可实现远距离监控功能,在任一台PC上均可对全厂生产进行监控,两期系统的生产数据可实现实时通信,利用INTOUCH NetDDE,使两套独立的系统(甚至多套系统)通过以太网有机地连接起来,扩展灵活方便,空间制约少,是一个可行的方案,INTOUCH在这方面的功能完善,是给排水应用领域不错的选择。
实现过程如下:
1、 组建以太网
首先,用交换机组建一个以太网,将一期二期的监控PC分别命名为PC1和PC2,系统示意图见图2 。
在PC1和PC2上分别安装TCP/IP通信协议、NetDDE程序及完成其它一些辅助工作。
2、 INTOUCH设置
(1) 整合两期应用程序数据
运行INTOUCH 的开发环境windowmaker,利用“import”功能将两期程序数据合二为一,使之成为一个完整的应用程序。然后分别安装在PC1和PC2上,这样就可以在任一台PC上对生产进行监控。
(2) 设置DDE Access
要在以太网上使用NetDDE进行数据通信,必须为程序提供数据的来源,这就必须对INTOUCH的DDE Access进行设置,设置方法是在“Modify DDE Access Name”对话框中的“DDE Application/Server Name”栏增加“\\PC2\viewer”(在PC1上)和“\\PC1\viewer”(在PC2上)。通过这个设置,PC1和PC2就可通过以太网进行实时数据通信。
(3) 运行系统
运行INTOUCH windowviewer前先初始化NetDDE,方法是直接运行该程序。只有先初始化NetDDE,计算机才能与网络上的其它计算机进行实时通信。通过INTOUCH,两套独立的系统就能有机地整合起来,从而整合成一套完整的监控系统。
三、系统功能
原来各自独立的两套系统通过INTOUCH实现了在线的有机连接,可以在以太网TCP/IP协议的统一通信标准和NetDDE下实现在线的数据交换,在线的相互操作。
例如第一期矾耗参数名为ALU0101, 第二期矾耗参数名为PLC1_ALU,总矾耗参数名为TOTAL_ALU,则可直接用公式
TOTAL_ALU= ALU0101+PLC1_ALU
方便求出总矾耗,而以前总矾耗要人工离线计算。
又如,为保证清水池有足够多的水,两期滤池不能同时进行反冲洗,这时滤池在冲洗前必须先进行检测,若其它滤池不进行反冲洗则其可进行反冲洗,反之则发出一个等待命令,等其反冲洗完后再行反冲洗。
有了以太网后,这项工作实现起来非常简单,只要设置两个状态参数BW1和BW2来判别滤池的反冲洗状态,(BW1=1时表示第一期滤池正在反冲洗,BW1=0时表示没有反冲洗,而BW2表示第二期的反冲洗状态,设置同前),加入下面程序就可实现两期滤池反冲洗的互相协调:
If BW1=1 then
BW2=0
Else BW2=1
Endif
If BW2=1 then
BW1=0
Else BW1=1
Endif
而这些协调工作在系统更改前也是必须人工干预的。
四、 结束语
通过INTOUCH进行不同监控系统的连接,方法简单,是一个比较理想的方法, INTOUCH新版本不断推出,功能不断加强,其在工业以太网方面的技术也不断完善,利用它,我们可将生产数据送到网上任一台计算机,甚至发至互联网,在网上进行监控。