戴毓文
(上海市自來水市南有限公司,上海 200002)
上海市自來水市南有限公司是面向上海市廣大用戶提供飲用水服務的大型供水企業,公司供水規模為307萬m3/d,供水面積約575 km2,供水服務常住人口約500萬,供水服務區域為上海市黃浦江以西、蘇州河以南地區,包括:黃浦區、靜安區、長寧區、徐匯區、普陀區(小部分地區)、閔行區(大部分地區)、松江區和青浦區(部分地區)等。公司生產調度系統承擔著對供水管網的統一監視,對水廠的安全運行、提高供水質量、節能降耗、優化管理等方面起到了至關重要的作用,保障了供水系統的正常運行和管理。為了更好地滿足生產調度與各決策部門的要求,充分發揮實時監控在生產運行管理中的作用,響應上海市政府行業信息化、集約化發展要求,市南公司將數據采集、數據傳輸等方式進行整合,并對系統的重要部分采用了冗余備用的方式。
近年來隨著上海城市建設的不斷發展,市南供水區域的不斷擴大,以及自來水服務供應要求的不斷提高,為確保管網運行安全的要求,市南公司根據對外服務供應的需要綜合了管網水質監測系統、邊界流量監測系統,居民屋頂水箱監測系統,其通信方式由原先的230 M電臺、諾特網等改造為傳輸穩定可靠的GPRS通信方式,將控制中心多臺InTouch組態軟件分別接收、存儲數據,InTouch送SQL數據庫的方式改為采用設置通信服務器,用OPC通信協議接收數據,同時送InTouch界面顯示和SQL數據庫。改造后的系統實現了數據集中管理。
整個系統平臺可分為:通信服務、數據服務、web系統(調度管理系統、調度監測系統)、移動web系統、數據接口服務等,如圖1所示。

圖1 市南公司生產調度系統平臺Fig.1 System Platform of Production Scheduling in Southern Company
通信服務器接收GPRS傳輸的監測數據,并將數據傳輸給OPC服務,OPC服務把數據進行分類整理,形成一張內存表供InTouch組態軟件的數據服務、WEB實時數據服務、歷史數據處理服務調用。InTouch組態軟件的數據服務把從OPC Server獲取的監測數據傳遞給InTouch View界面顯示軟件;WEB實時數據服務把從OPC Server獲取的監測數據傳遞給調度監測系統,為調度監測系統提供實時數據;歷史數據處理服務把從OPC Server獲取的監測數據保存到數據庫,形成歷史數據表。
調度監測系統、調度管理系統從數據庫中獲取歷史數據。并將歷史數據保存到數據庫中。移動WEB監測客戶端通過移動WEB監測服務訪問數據庫,獲取調度管理數據和調度監測數據。數據接口服務將數據庫中的歷史數據提供給其他系統應用。
通信服務是整個系統平臺的基礎,通信服務的穩定可靠將直接影響整個系統平臺的穩定運行。
市南公司生產調度系統平臺核心使用冗余服務器架構,系統部署有2臺通信服務器、2臺數據庫服務器、1臺Web服務器以及1臺數據接口服務器,其中通信服務器以及數據庫服務器均采用雙機集群系統構建,通過磁盤陣列提供仲裁磁盤,使用本地局域網作為心跳網絡,集群系統可以確保1臺服務器發生故障后,自動切換到備用服務器,如圖2所示。

圖2 生產調度系統平臺核心架構Fig.2 Core Architecture of System Platform of Production Scheduling
通信服務器通過SAS線連接至HP的磁盤陣列盤柜,仲裁盤盤符為X,容量為870 MB左右,通信集群采用微軟Windows Server 2003版本自帶的集群軟件構建,形成雙機故障轉移集群。
市南公司生產調度系統平臺基于GPRS通信鏈路構建,系統采用專用的具備固定 IP地址的Internet鏈路作為GPRS數據傳輸鏈路,站點同中心通過UDP進行數據交互,為了實現數據通暢,需要將Internet地址上的UDP通信端口映射到中心的通信服務器。在本系統中采用UDP 7070端口實現數據通信,如圖3所示。

圖3 GPRS通信鏈路Fig.3 GPRS Communication Link
在整個系統中,通信服務器負責完成GPRS站點數據的接收,解析以及變量映射。通信服務器將數據從原始的UDP數據報文轉換為變量,內部變量同外部應用程序之間的數據交接也通過OPC進行。OPC為各類數據之間的通信制定了統一的規范。
市南公司生產調度系統平臺中,共有兩類外部應用程序,其中一類為InTouch組態軟件,包括FsGateway以及InTouch View界面顯示軟件。FsGateway是一個協議轉換軟件,可以實現DDE、Suite Link、OPC協議的相互轉換,還可以把MX轉換成DDE、Suite Link、OPC協議,此次系統平臺采用的是將OPC協議轉換為Wonderware的Suite Link協議,提供InTouch view接收數據。另一類為數據庫送庫服務程序(OPC Client)。上述兩類程序通過OPC接口調用OPC變量并進行實時顯示以及數據入庫處理,如圖4所示。

圖4 外部應用程序連接線路Fig.4 Connections of External Application
整個系統采用分布式架構,實時數據采用InTouch View界面顯示軟件。為了實現多臺工作站數據共享,所有的工作站通過內部局域網同通信服務器網絡連通,每臺工作站上安裝InTouch View界面顯示軟件,通過Suite Link協議連接至通信服務器上安裝的Fsgateway軟件,從而實現實時數據的接收、顯示。
數據入庫采用數據庫送庫服務程序(OPC Client)進行,送庫服務作為客戶端通過OPC協議訪問通信程序,獲取數據后將數據通過內部局域網送至數據庫服務器。數據在數據庫中進行數據處理后,提供web界面顯示。
通信服務程序采用多模塊分層設計,不同的軟件模塊間通過良好的數據互定義接口實現數據的交互以及數據的傳遞,如圖5所示。

圖5 通信服務程序多模塊分層設計Fig.5 Layered Design of Modules in Communication Service Program
原有多系統,多臺InTouch組態軟件分別接收、存儲數據,數據相對孤立。市南公司生產調度系統平臺采用通用的OPC技術,向下提供了許多通信接口,能夠兼容各類硬件設備,不必針對不同設備開發不同的接口程序。向上和外部應用程序如InTouch組態軟件及SQL數據庫等具有良好的數據交互功能。通信服務器統一接收數據,統一入庫,實現數據集中管理,避免因為計算機硬件或者InTouch組態軟件故障導致數據中斷。另外市南公司生產調度系統平臺核心部分采用冗余服務器架構,通信服務器以及數據庫服務器均采用集群技術,更好地保障了通信服務的穩定可靠。