一. 項(xiàng)目背景
上海市現(xiàn)有兩大相對(duì)集中的水源地:黃浦江上游和陳行水庫(kù)。由于黃浦江地處太湖流域下游,受上游和本地污染影響,水源水質(zhì)較差且很不穩(wěn)定,陳行水庫(kù)原水供應(yīng)規(guī)模為 130 萬(wàn)立方米/日,遠(yuǎn)遠(yuǎn)達(dá)不到整個(gè)上海市的用水需求。 根據(jù)預(yù)測(cè),到 2010 年,全市原水需求量為 1175 萬(wàn)立方米/天;到 2020 年,按 2000 萬(wàn)人口考慮,全市原水總需求量將達(dá)到 1428 萬(wàn)立方米/天。青草沙水源地原水工程建設(shè)的目的就是解決越來(lái)越大的原水缺口,建成后,上海市供水格局由原來(lái)的80%取自黃浦江,20%取自長(zhǎng)江變?yōu)閮山∷髡?50%。
五號(hào)溝泵站是整個(gè)青草沙水系的心臟,建成后供水總規(guī)模將達(dá)到 708 萬(wàn)立方米/日,其設(shè)計(jì)規(guī)模位列“亞洲第一、世界第二”,同時(shí)也被列入上海市“十一五”重點(diǎn)項(xiàng)目。它通過(guò)過(guò)江管道獲得青草沙水庫(kù)出庫(kù)的原水后通過(guò) 24 臺(tái)大型水泵將原水向凌橋,嚴(yán)橋,金海/川沙/南匯三個(gè)方向的各級(jí)泵站輸送,最終輸向 14 座大型水廠,為全市提供優(yōu)質(zhì)好水。
二. 項(xiàng)目挑戰(zhàn)
i. 安全性方面
五號(hào)溝泵站對(duì)青草沙水系的作用至關(guān)重要,一旦發(fā)生故障后果不堪設(shè)想,采取必要的冗余措施非常有必要。冗余雖然是 SCADA 軟件普遍具有的功能,但是大多數(shù)軟件往往只能實(shí)現(xiàn)實(shí)時(shí)數(shù)據(jù)冗余,像五號(hào)溝泵站這樣需要對(duì)歷史數(shù)據(jù)、報(bào)警信息深層分析,而后作出控制與調(diào)節(jié)的系統(tǒng)來(lái)說(shuō),如果仍然延用傳統(tǒng)的冗余方式顯然已無(wú)法適應(yīng)當(dāng)前的應(yīng)用需要。
ii. 數(shù)據(jù)完整性方面
五號(hào)溝泵站項(xiàng)目中的 I/O 采集系統(tǒng)采集到數(shù)據(jù)后會(huì)向 SCADA服務(wù)器、工業(yè)歷史數(shù)據(jù)庫(kù)服務(wù)器傳送數(shù)據(jù),這一部分的網(wǎng)絡(luò)是單網(wǎng)絡(luò)配置,此時(shí)如果出現(xiàn)網(wǎng)絡(luò)中斷,那么數(shù)據(jù)丟失不可避免,因此要保證在網(wǎng)絡(luò)中斷時(shí),數(shù)據(jù)依然完整,是本系統(tǒng)面臨的一個(gè)挑戰(zhàn)。
iii. 強(qiáng)大的性能
五號(hào)溝泵站的點(diǎn)數(shù)規(guī)模達(dá)到 5000 點(diǎn),隨著系統(tǒng)運(yùn)行時(shí)間的不斷延長(zhǎng),在分析時(shí),需要檢索的數(shù)據(jù)量也會(huì)不斷增加,出于對(duì)系統(tǒng)穩(wěn)定性的考慮,五號(hào)溝泵站對(duì)數(shù)據(jù)庫(kù)系統(tǒng)的性能要求很高,因?yàn)樾阅苋绻_(dá)不到要求將會(huì)影響所實(shí)現(xiàn)的功能的效果與質(zhì)量,如檢索歷史數(shù)據(jù)緩慢,將會(huì)延誤操作人員的分析,進(jìn)一步導(dǎo)致控制操作遲遲不能下達(dá),最終造成供水的不穩(wěn)定。因此,系統(tǒng)的高性能必須得到保障。
三. 項(xiàng)目方案
vi. 項(xiàng)目的功能特點(diǎn)
多種冗余方式
雙機(jī)冗余:主機(jī)和從機(jī)通過(guò) TCP/IP 網(wǎng)絡(luò)連接,正常情況下主機(jī)實(shí)時(shí)跟設(shè)備通訊完成實(shí)時(shí)監(jiān)控;主從機(jī)間進(jìn)行心跳檢測(cè),一旦從機(jī)發(fā)現(xiàn)主機(jī)異常,將立即切換取代主機(jī)實(shí)現(xiàn)主機(jī)的功能。
雙鏈路冗余:PLC、服務(wù)器均連接在主從兩個(gè)網(wǎng)絡(luò)上,當(dāng)主網(wǎng)絡(luò)發(fā)生中斷,系統(tǒng)自動(dòng)識(shí)別并切換到從網(wǎng),在從網(wǎng)絡(luò)上繼續(xù)進(jìn)行數(shù)據(jù)采集,保證數(shù)據(jù)的不間斷。
實(shí)時(shí)數(shù)據(jù)、歷史數(shù)據(jù)、報(bào)警數(shù)據(jù)的冗余:系統(tǒng)除對(duì)實(shí)時(shí)數(shù)據(jù)冗余外,還對(duì)歷史數(shù)據(jù)、報(bào)警數(shù)據(jù)冗余,當(dāng)故障服務(wù)器恢復(fù)正常,可自動(dòng)將故障期間的歷史、報(bào)警數(shù)據(jù)同步,從而保證主從機(jī)的數(shù)據(jù)一致,也是對(duì)數(shù)據(jù)完整性的可靠保障。
數(shù)據(jù)緩存及斷點(diǎn)續(xù)傳功能
I/O Server3.0 平時(shí)會(huì)對(duì)通訊鏈路、傳輸網(wǎng)絡(luò)、傳輸性能等進(jìn)行監(jiān)視,當(dāng)檢測(cè)到網(wǎng)絡(luò)異常時(shí)(如網(wǎng)絡(luò)中斷或網(wǎng)速過(guò)慢),會(huì)將采集的實(shí)時(shí)數(shù)據(jù)緩存在本地磁盤,緩存時(shí)間、文件大小均可由操作人員設(shè)置。當(dāng)網(wǎng)絡(luò)恢復(fù)正常后,緩存數(shù)據(jù)自動(dòng)被傳送到 KingSCADA、KingHistorian 以及青草沙集控中心。由于 SCADA 系統(tǒng)更加側(cè)重的是數(shù)據(jù)的實(shí)時(shí)性,因此傳送時(shí)優(yōu)先于實(shí)時(shí)數(shù)據(jù),間歇的傳送緩存數(shù)據(jù)。該功能的好處是,即使網(wǎng)絡(luò)中斷,也不會(huì)發(fā)生數(shù)據(jù)丟失,保證了數(shù)據(jù)的完整性也就保證了分析的準(zhǔn)確。
強(qiáng)大的性能保障
本系統(tǒng)的工業(yè)歷史數(shù)據(jù)庫(kù)采用北京亞控科技發(fā)展有限公司的工業(yè)歷史數(shù)據(jù)庫(kù)KingHistorian3.0,其性能參數(shù)如下:
♣ 工業(yè)歷史數(shù)據(jù)庫(kù)可以在線連續(xù)存儲(chǔ),并達(dá)到 15 萬(wàn)條記錄/秒的存儲(chǔ)速度。工業(yè)歷史數(shù)據(jù)庫(kù)單臺(tái)服務(wù)器可以支持 100 萬(wàn)點(diǎn)的數(shù)據(jù)點(diǎn)。
♣ 工業(yè)歷史數(shù)據(jù)庫(kù)單客戶端單點(diǎn)查詢速度 20 萬(wàn)條記錄/秒。工業(yè)歷史數(shù)據(jù)庫(kù) 256個(gè)客戶端并發(fā)查詢,每秒可達(dá) 2 萬(wàn)條記錄。工業(yè)庫(kù)穩(wěn)定支持 256 客戶端并發(fā)查詢。
♣ 工業(yè)歷史數(shù)據(jù)庫(kù)支持從 OPC Server、IO Server、文件系統(tǒng)獲取數(shù)據(jù)。
♣ 工業(yè)庫(kù)支持三種以上采集器數(shù)據(jù)壓縮方式,壓縮方式和壓縮參數(shù)應(yīng)可供用戶配置,工業(yè)庫(kù)數(shù)據(jù)壓縮可壓縮掉 25%-95%的數(shù)據(jù)。工業(yè)歷史數(shù)據(jù)庫(kù)支持按日、周、月進(jìn)行數(shù)據(jù)歸檔。
♣ 工業(yè)歷史數(shù)據(jù)庫(kù)采集器支持分布式部署、支持獨(dú)立采集。
♣ 工業(yè)歷史數(shù)據(jù)庫(kù)采集器能支持?jǐn)?shù)據(jù)緩存、斷點(diǎn)續(xù)傳功能。采集器支持在線配置。支持采集器冗余。
♣ 工業(yè)歷史數(shù)據(jù)庫(kù)支持毫秒級(jí)數(shù)據(jù)分辨率。
♣ 工業(yè)歷史數(shù)據(jù)庫(kù)為客戶端的數(shù)據(jù)訂閱提供參數(shù)配置。工業(yè)歷史數(shù)據(jù)庫(kù)支持變量信息和歷史數(shù)據(jù)導(dǎo)出到 xls、csv、xml 三種文件格式。
♣ 工業(yè)庫(kù)支持單獨(dú)或者批量組態(tài)標(biāo)簽點(diǎn),包括創(chuàng)建、更新、刪除、查詢標(biāo)簽點(diǎn)以及相關(guān)屬性。
♣ 工業(yè)歷史數(shù)據(jù)庫(kù)具有專用客戶端管理工具。工業(yè)歷史數(shù)據(jù)庫(kù)支持 Excel Addin并支持網(wǎng)絡(luò)部署。
♣ 工業(yè)歷史數(shù)據(jù)庫(kù)支持標(biāo)準(zhǔn) SQL 檢索和擴(kuò)展的高級(jí)檢索。提供豐富的數(shù)據(jù)訪問接口,如 API、ODBC、OLEDB(ADO) 、SDK 等。提供 150 個(gè)以上的 API 接口函數(shù),可以使用 C,C++, C#,VB 等語(yǔ)言進(jìn)行數(shù)據(jù)庫(kù)開發(fā)。
♣ 在系統(tǒng)崩潰、突然掉電、程序異常退出后,工業(yè)歷史數(shù)據(jù)庫(kù)保證數(shù)據(jù)文件完整有效。支持集群冗余方式??蓪?shí)現(xiàn)變量鏡像、數(shù)據(jù)鏡像、安全鏡像等,支持鏡像緩存。工業(yè)歷史數(shù)據(jù)庫(kù)支持系統(tǒng)的備份與恢復(fù)。工業(yè)歷史數(shù)據(jù)庫(kù)支持用戶對(duì)數(shù)據(jù)的存取授權(quán)和控制,防止非法用戶的入侵。
♣ 工業(yè)歷史數(shù)據(jù)庫(kù)具備完善的數(shù)據(jù)安全和基于角色的用戶權(quán)限管理。
豐富的事故通知
事故發(fā)生時(shí),可以通過(guò)播放語(yǔ)音,撥打電話,發(fā)送短信,發(fā)送 Email等形式通知各級(jí)人員。通知的重要說(shuō)明都是具體的文字說(shuō)明而不是事件代號(hào)。被通知的人員按照不同的級(jí)別,得到的內(nèi)容各不相同(如可以將級(jí)別劃分為:領(lǐng)導(dǎo)層、指揮層、用戶層、操作員層、供應(yīng)商層等),操作員得到的消息可能是某某事故,請(qǐng)速采取何措施。而領(lǐng)導(dǎo)者可能會(huì)得到更為詳細(xì)的消息,如某某事故,請(qǐng)速采取措施,未來(lái)5分鐘之后,水位將是如何的。
與集控中心的交互
五號(hào)溝泵站在采集到設(shè)備數(shù)據(jù)之后,不但傳遞給本地的系統(tǒng),還將數(shù)據(jù)傳遞給青草沙集控中心,集控中心通過(guò)分析向下傳達(dá)調(diào)度指令,由五號(hào)溝泵站進(jìn)行具體執(zhí)行。在這個(gè)過(guò)程中會(huì)頻繁的進(jìn)行數(shù)據(jù)交互,交互的實(shí)時(shí)性、安全性要求系統(tǒng)必須采用安全、簡(jiǎn)單的傳輸接口,保證數(shù)據(jù)交互的暢通和穩(wěn)定。此時(shí)沒有采用 OPC 方式(OPC方式每次通訊時(shí)都需要建立組,在組中建立項(xiàng),然后再進(jìn)行每個(gè)項(xiàng)內(nèi)數(shù)據(jù)包的請(qǐng)求與回應(yīng)。數(shù)據(jù)幀還附加了 OPC 協(xié)議所要求的很多包頭和包尾,較為復(fù)雜,容易出錯(cuò),速度緩慢) ,I/O Server 與運(yùn)行在集控中心的 I/Omaster兩者之間通過(guò)內(nèi)部接口來(lái)實(shí)現(xiàn)數(shù)據(jù)傳輸與交互,可以快速可靠的實(shí)現(xiàn)數(shù)據(jù)交互。
四. 運(yùn)行界面
圖 3 初始界面