陳善超,王全林
(北京亞控科技發(fā)展有限公司,北京 100086)
根據(jù)水務集團的供水智能調度需求,結合通用組態(tài)軟件,研發(fā)智能調度控制算法組件和供水調度系統(tǒng),實現(xiàn)供水智能調度,包括:渾水調度,管網壓力控制目標動態(tài)設定,管網壓力自動控制和泵組運行策略調整。智能控制算法用于供水調度系統(tǒng)實現(xiàn),為調度人員日常工作提供信息監(jiān)視、信息查詢、數(shù)據(jù)統(tǒng)計與分析、業(yè)務處理、輔助調度、調度決策。通常供水調度系統(tǒng)的開發(fā)維護需要高級程序員參與,技術門檻高,后期維護擴展困難,熟悉水處理工藝和業(yè)務的自控工程師很難參與到智慧水務軟件系統(tǒng)開發(fā)當中。如何實現(xiàn)智能化控制,降低企業(yè)運營成本,縮短開發(fā)周期,降低開發(fā)運維成本,使項目快速落地,成為水務公司亟需解決的問題。通過項目的開發(fā)研究與實際應用,表明組態(tài)式平臺快速開發(fā),實現(xiàn)供水智能調度是十分必要的。
供水運營調度系統(tǒng)結合當前調度中心的業(yè)務需要,對原系統(tǒng)進行升級改造,將城市供水管網信息和管網實時監(jiān)測數(shù)據(jù)集成在一起,建立生產數(shù)據(jù)中心和綜合展示平臺。設計供水優(yōu)化調度系統(tǒng),實現(xiàn)具有先進性、科學性、信息化的供水調度運行和管理模式,從而提升供水調度綜合能力,確保供水系統(tǒng)安全、經濟、合理地運行[1]。
根據(jù)某水務集團的供水智能調度需求,研究其系統(tǒng)與數(shù)據(jù)現(xiàn)狀。原系統(tǒng)設備較多,數(shù)據(jù)來源較復雜,其中監(jiān)測點需要對接100 多個測點的壓力、濁度、余氯、瞬時流量、正向累計、反向累計等。RSLinx OPC 和IFix OPC 采集有壓力點、報警監(jiān)測等數(shù)據(jù)。3 座水廠PLC 品牌有西門子、羅克韋爾。原調度系統(tǒng)缺乏智能調度功能,其中地圖總覽系統(tǒng)需對接水務集團原ArcGIS 地圖,監(jiān)控整個市區(qū)供水管網。
完成水務集團對下屬3 座水廠、3 座取水泵站及100多個管網測壓點的數(shù)據(jù)采集并研發(fā)智能調度控制算法組件和供水調度系統(tǒng),實現(xiàn)供水智能調度。其主體實現(xiàn)以下功能模塊,見表1。
表1 功能模塊Table 1 Functional modules
1)可靠性與穩(wěn)定性。軟件系統(tǒng)盡量不出現(xiàn)閃退、崩潰無響應等情況。
2)較高的交互性。根據(jù)用戶習慣進行開發(fā),保證軟件的易用性,增加用戶交互[2]。
3)隨需而變。系統(tǒng)平臺支持拖拉拽式組態(tài)開發(fā),維護工程師能夠根據(jù)業(yè)務需求的變化通過低代碼方式快速實現(xiàn)軟件系統(tǒng)功能的變更。
針對系統(tǒng)現(xiàn)狀,本項目的重點難點如下:
1)數(shù)據(jù)來源眾多,數(shù)據(jù)來源復雜且有些系統(tǒng)和設備比較老舊,部分數(shù)據(jù)采集較為困難。
2)現(xiàn)有系統(tǒng)無智能調度功能,缺乏智能控制供水調度能力;在城市的供水設備中,有一定的差異性,目標眾多,需要注意的方面也很多[3]。
3)系統(tǒng)部分數(shù)據(jù)監(jiān)控功能需要優(yōu)化。
針對以上重點難點問題,本方案有如下措施:
a)針對數(shù)據(jù)來源繁雜問題,采用亞控公司開發(fā)的數(shù)據(jù)采集產品KingIOServer,支持多種類型設備驅動、OPC 等,具有采集穩(wěn)定時延小等優(yōu)點,可統(tǒng)一采集儲存至數(shù)據(jù)庫。然后,采用KingHistorian 工業(yè)實時歷史數(shù)據(jù)庫,將分散的海量過程數(shù)據(jù)采集并存儲下來,不僅解決了關系數(shù)據(jù)庫應用難題,還為企業(yè)將“數(shù)據(jù)轉化為信息”提供穩(wěn)定可靠的數(shù)據(jù)支持平臺[4]。
b)針對智能供水調度優(yōu)化等問題,采用KingWater 智慧水務開發(fā)平臺。平臺含計算組件,支持多種計算模式,滿足不同業(yè)務場景下不同數(shù)據(jù)類型的分析處理需求;同時支持JavaScript、Python、C++普通依賴擴展包等多種編程語言算法的接口擴展,方便調用各種成熟的算法庫。優(yōu)化方式上,在進行城市供水調度優(yōu)化的時候,對供水能力、水力平衡和用戶的水壓條件等形成一定約束的情況[5],系統(tǒng)融合調度經驗(數(shù)據(jù)建模)、歷史數(shù)據(jù)(特征提?。?、機器學習等算法(成熟庫文件調用),開發(fā)包括設定監(jiān)測點目標壓力、渾水量調度、出場壓力調整和機泵搭配方式的智能控制算法和應用。
c)系統(tǒng)功能優(yōu)化?;贙ingWater 開發(fā)平臺,靈活采用其客戶端組件,各種UI 控件展示,2D 流程圖;平臺支持17 種基本圖素繪制,內嵌3500 種各行業(yè)常見設備圖素,支持28 種數(shù)據(jù)動畫關聯(lián)展示,如時間段、監(jiān)測點靈活曲線查詢、曲線對比、廠網聯(lián)合監(jiān)控、排班管理、報警配合等都可以靈活組態(tài)開發(fā)。
圖1 數(shù)據(jù)流拓撲Fig.1 Data flow topology
圖2 系統(tǒng)架構圖Fig.2 System architecture diagram
圖3 地圖總覽Fig.3 Map overview
圖4 數(shù)據(jù)總覽Fig.4 Data overview
圖5 出廠壓力計算Fig.5 Calculation of factory pressure
1)水廠數(shù)據(jù)采集:系統(tǒng)使用KingIOServer 軟件,通過水廠PLC 直接采集進出水濁度、余氯、pH、溫度、水量、流量、累計流量及清水池水位、中間濾池等生產環(huán)節(jié)數(shù)據(jù)。
2)供水管網數(shù)據(jù)采集:通過OPC 的方式從各供水管網監(jiān)測點監(jiān)控設備實時采集壓力、水質等數(shù)據(jù),對數(shù)據(jù)異常報警提醒。從各供水管網流量監(jiān)測點監(jiān)控設備實時采集各區(qū)域流量數(shù)據(jù),從和達中間數(shù)據(jù)庫接入管網監(jiān)測點數(shù)據(jù)。
3)第三方業(yè)務系統(tǒng)數(shù)據(jù)對接:對原有調度系統(tǒng)數(shù)據(jù)進行接入。
采用KingHistorian 工業(yè)實時歷史數(shù)據(jù)庫實現(xiàn)監(jiān)測點、水廠、泵站、管網等過程數(shù)據(jù)秒級儲存。原始生產運行歷史數(shù)據(jù)作為系統(tǒng)統(tǒng)計、分析的基礎依據(jù),同時為調度監(jiān)測軟件、報表軟件、信息發(fā)布系統(tǒng)、報警系統(tǒng)提供后臺數(shù)據(jù)支持。歷史數(shù)據(jù)可以保存長達10 年,確保數(shù)據(jù)的長時間存儲和數(shù)據(jù)安全。系統(tǒng)運維、管理等數(shù)據(jù)儲存到SQLServer關系型數(shù)據(jù)庫。
標準協(xié)議:OPC UA/DA、Modbus、MQTT 等。
關系庫:Oracle、MySQL、Sqlserver、PostgreSQL、達夢數(shù)據(jù)庫等。
非關系庫:TDengine、redis、TimescaleDB、Hbase、mangoDB 等。
基于restful 接口集成開源的JavaScript 模塊和Python模塊、C++。
KingSCADA 作為基礎數(shù)據(jù)服務端,采用KingWater 軟件計算組件,定時和條件觸發(fā)智能調度算法并結合Python調用庫文件或函數(shù),計算結果傳遞給前端或KingSCADA 服務器,并在自控模式下自動給PLC 下發(fā)控制指令。
通過KingWater 軟件與KingSCADA 監(jiān)控軟件、KingHistorain 工業(yè)實時數(shù)據(jù)庫、KingIOServer 實時采集軟件完美交互構建管控一體化的供水智能調度系統(tǒng)[5]。
現(xiàn)場層:通過局域網和廣域網連接各原水泵站、水廠、加壓泵站、管網測點等,讀取現(xiàn)場數(shù)據(jù)。
數(shù)據(jù)傳輸層:現(xiàn)場數(shù)據(jù)通過光纖、4G 等網絡傳輸,完成現(xiàn)場設備與集團調度中心服務端平臺網絡連接,采集并上傳數(shù)據(jù)。
數(shù)據(jù)接收層:通過各種標準化的協(xié)議或雙方協(xié)定的協(xié)議接口,實現(xiàn)不同設備和終端的數(shù)據(jù)接入。
數(shù)據(jù)存儲層:建立數(shù)據(jù)中心,集中存儲、處理海量過程數(shù)據(jù)、模型數(shù)據(jù)、業(yè)務數(shù)據(jù),提供整個系統(tǒng)的數(shù)據(jù)支撐。
應用層:生產數(shù)據(jù)及業(yè)務數(shù)據(jù)展示,為調度和管理人員調度決策提供支持,同時和其它業(yè)務系統(tǒng)對接。
WEB 前端表示層采用自主研發(fā)的框架,部分使用Vue架構,提供ElementUI、easyUI 組件庫,支持echart 和2D流程圖、3D 視頻展示等;支持跨平臺瀏覽,包括移動端和PC 端。
安全認證采用標準的OAuth2.0,支持單點登錄。
后臺服務采用自主研發(fā)的平臺,采用“微組件”設計,豐富的組件保證系統(tǒng)的靈活性、擴展性。
中間件層:集成測試環(huán)境,生產環(huán)境:Nginx;依賴平臺:Node,中間件:EMQX,Kafka。
運行層:支持虛擬機化服務器。
數(shù)據(jù)來源:標準協(xié)議采集、非標協(xié)議定制,常用數(shù)據(jù)庫接入(支持國產數(shù)據(jù)庫達夢),第三方系統(tǒng)數(shù)據(jù)接入(ERP、WMS 等)。
在地圖上標注水源、水廠、管網監(jiān)測點等地理位置和管道、閥門分布,并顯示每個站點重要數(shù)據(jù)。地圖總覽主要實現(xiàn):
1)實現(xiàn)與第三方廠家ArcGIS 平臺的對接,保證管道、監(jiān)測點等設施的同步修改。
2)實現(xiàn)監(jiān)測點、水廠等設備實時數(shù)據(jù)監(jiān)測以及基礎數(shù)據(jù)查詢。
3)點位查詢,報警定位提示,圖標閃爍提示,多層級動態(tài)顯示。
數(shù)據(jù)監(jiān)測模塊主要實現(xiàn):
1)實現(xiàn)所有水廠泵狀態(tài)、頻率、啟停時間,監(jiān)測點實時數(shù)據(jù)監(jiān)控,歷史曲線查詢,多個監(jiān)測點對比分析。
2)實現(xiàn)點擊泵人工下發(fā)控制指令,點擊監(jiān)測點可查詢曲線、基本信息、歷史報警等。
3)實現(xiàn)泵站、水廠、管網、主控點聯(lián)動智能控制,實際值與智能算法目標值實時監(jiān)控。
算法控制主要實現(xiàn):
1)支持運控人員控制算法輸入?yún)?shù)的前端修改,從而持續(xù)調整算法,優(yōu)化控制。
2)支持智能調度算法自動下發(fā)控制指令,記錄每條人工、自動指令。
3)實現(xiàn)監(jiān)測點目標壓力,渾水量計算,出廠壓力計算,機泵搭配算法的中間過程及曲線展示,便于進行優(yōu)化調試,最終達到最佳控制目標進行自動控制。
1)實現(xiàn)運行日志、班次維護、人員排班、交接班的管理記錄。
2)實現(xiàn)與生產計劃、水質報告的靈活對接。
3)支持天氣查詢,管道沖洗停水公告的記錄。
支持報警規(guī)則設定,支持用戶單點報警、多點聯(lián)動報警關聯(lián)的基礎配置;實現(xiàn)多點聯(lián)動報警不同等級報警的區(qū)分,實時報警自動彈窗展示,與水廠智能控制指令進行智能聯(lián)動報警,減少誤報警;支持報警歷史記錄查看。
實現(xiàn)用戶管理,用戶權限配置管理,可自由配置單個頁面權限。
實現(xiàn)變量管理,對變量進行增刪改查,相關頁面的變量會進行修改。
選用KingIOServer 軟件有效解決了多源數(shù)據(jù)采集困難的問題,實現(xiàn)的關鍵功能主要有:
變量解析:采集器可以解析變量的數(shù)據(jù)源地址信息,通過IOServer 接口訪問變量數(shù)據(jù)。
數(shù)據(jù)插入:采集器通過調用工業(yè)庫提供的API 接口將變量數(shù)據(jù)自動插入到工業(yè)庫。
變量枚舉:即變量瀏覽,通過指定具體通道、設備或者寄存器可以根據(jù)數(shù)據(jù)塊的數(shù)據(jù)類型以及寄存器地址信息自動枚舉數(shù)據(jù)塊里的變量。
冗余功能:采集器支持冗余切換功能,可以指定兩個互為冗余的采集器完成對IOServer 的數(shù)據(jù)采集。
緩存處理:當采集器和服務器出現(xiàn)網絡中斷的情況時,采集器可以實現(xiàn)數(shù)據(jù)本地緩存,待網絡恢復后,將數(shù)據(jù)傳輸?shù)椒掌鳌?/p>
壓縮處理:采集器可以配置數(shù)據(jù)壓縮方式,如變化壓縮、死區(qū)壓縮和旋轉門壓縮等。
全組態(tài)管控一體化平臺KingWater 框架主要包括基礎平臺+四大組件,四大組件包括:采集組件、數(shù)據(jù)組件、計算組件、客戶端組件。它基于微服務框架,維護簡單,擴展容易;運用容器化部署,一次開發(fā)隨處運行,運維簡單。系統(tǒng)開發(fā)實現(xiàn)選用的全組態(tài)管控一體化平臺KingWater,可快速完成供水智能調度系統(tǒng)的開發(fā)與應用,通過工藝流程和業(yè)務流程的可組態(tài),簡單、方便地實現(xiàn)生產過程透明化,生產管控實時性及產品與設備全生命周期管理,進而提升生產設備的績效評估和產品的質量管理,最大限度提高生產運營效率,降低企業(yè)運營成本,提高企業(yè)盈利能力。
本文論述了智能供水調度系統(tǒng)的設計與實現(xiàn),主要介紹了系統(tǒng)需求、建設方案、軟件模塊設計與重要模塊的實現(xiàn)方法與呈現(xiàn)效果等內容。開發(fā)完成的系統(tǒng)確保了安全供水,供水管網壓力更優(yōu),使設備優(yōu)化運行節(jié)約電耗,降低用電成本并保障了設備運行安全,同時解放人力,節(jié)約人工成本。
智能供水調度系統(tǒng)的開發(fā)與實現(xiàn)基于亞控KingWater平臺架構建立,基于開放的理念,符合國際主流標準的技術規(guī)范。平臺解決了信息化過程中的信息孤島問題,達到各系統(tǒng)的數(shù)據(jù)共享、流程自動化,規(guī)范系統(tǒng)接口標準。系統(tǒng)融合行業(yè)模型,實現(xiàn)模塊化開發(fā),真正做到隨需而變,并大大提高系統(tǒng)質量。