董 靜,劉德龍,秦 鑫,吳志明
(1.中國(guó)水利水電科學(xué)研究院,北京 100038;2.四川水利科學(xué)研究院,四川 成都 610000;3.北京中水科水電科技開發(fā)有限公司,北京 100038)
隨著信息技術(shù)與工業(yè)控制領(lǐng)域的交叉融合,對(duì)生產(chǎn)過程自動(dòng)化水平提出更高要求。由于傳統(tǒng)工業(yè)控制軟件在被控對(duì)象發(fā)生改變時(shí)必須編寫控制系統(tǒng)源程序,無法滿足隨時(shí)變化的需求,組態(tài)軟件(Configuration software)應(yīng)運(yùn)而生[1]。由于組態(tài)軟件在SCADA中的成功應(yīng)用,用戶可通過非編程方式(如特定參數(shù)、圖形連接等)執(zhí)行特定功能,無需再對(duì)運(yùn)行程序源代碼進(jìn)行大量繁瑣的編程工作。
組態(tài)軟件一直被廣泛應(yīng)用于工業(yè)控制領(lǐng)域,已經(jīng)有諸多成熟的產(chǎn)品。例如:美國(guó)的In Touch功能完善、穩(wěn)定性強(qiáng),但通信性能較差、實(shí)時(shí)性不佳,iFIX擁有較為完善的功能和友好的操作界面,但受操作系統(tǒng)影響較大;德國(guó)的Win CC具有良好的靈活性和開放性,但操作繁瑣,需對(duì)用戶進(jìn)行專業(yè)培訓(xùn);國(guó)產(chǎn)組態(tài)軟件有北京亞控公司的組態(tài)王、北京昆侖通態(tài)公司的MCGS等,組態(tài)王圖像功能豐富,接口涵蓋市面上大部分種類,但網(wǎng)絡(luò)功能較差,MCGS界面簡(jiǎn)潔,但圖庫(kù)類型較少[1,2]。
隨著計(jì)算機(jī)技術(shù)的飛速發(fā)展,現(xiàn)代化社會(huì)對(duì)水利水電工程運(yùn)維的要求已從自動(dòng)化逐步演變?yōu)橹悄芑?。智能化要求帶來了從?shù)據(jù)處理、數(shù)據(jù)分析以及控制邏輯的多變性,在常規(guī)的控制系統(tǒng)中,開發(fā)人員往往是應(yīng)對(duì)用戶的個(gè)性化需求編寫專門的軟件,通常面臨軟件更新慢、維護(hù)難、人員要求高等諸多問題,阻礙了水利水電工程的智能化進(jìn)程。而目前已有的通用組態(tài)軟件多為基于底層設(shè)備及數(shù)據(jù)庫(kù)的組態(tài),可完成監(jiān)控畫面定制等基本功能,但對(duì)綜合計(jì)算、閉鎖條件判定等邏輯處理過程尚無專門的功能組件。因此,急需研發(fā)一套面向水利水電工程運(yùn)維人員的圖形化編程平臺(tái),實(shí)現(xiàn)無需編寫代碼,只通過類似繪圖的圖元拖拽、關(guān)系連線、參數(shù)設(shè)置等簡(jiǎn)單操作,即可完成新增功能的軟件設(shè)計(jì),從而滿足數(shù)據(jù)的預(yù)處理、數(shù)據(jù)分析、自動(dòng)控制流程、控制閉鎖、自動(dòng)巡檢等智能化任務(wù)的需求。
作為面向智慧水電廠,圍繞數(shù)據(jù)資源整合化、工程管理智能化、系統(tǒng)互聯(lián)互通等行業(yè)需求進(jìn)行設(shè)計(jì)和開發(fā)的iP9000 智能一體化平臺(tái),不僅可以構(gòu)建功能強(qiáng)大、安全可靠、高速高效的新一代水電廠計(jì)算機(jī)監(jiān)控系統(tǒng),同時(shí)為水電廠各智能應(yīng)用的開發(fā)和接入提供了一個(gè)很好的統(tǒng)一開放的數(shù)據(jù)管理、開發(fā)維護(hù)、運(yùn)行管理平臺(tái)[3]。而HCON是為iP9000平臺(tái)設(shè)計(jì)的一款可視化邏輯組態(tài)軟件,主要用于iP9000綜合計(jì)算和閉鎖條件(基于SPL)的設(shè)計(jì)與配置工作、iSMA2000的專家分析模塊邏輯設(shè)計(jì)(基于python)。
通過對(duì)通用的邏輯、算術(shù)、系統(tǒng)交互、復(fù)雜算法等各種運(yùn)算過程進(jìn)行抽象,可將任意一種運(yùn)算過程抽象為包含輸入和輸出的算法模塊,再通過對(duì)多個(gè)算法模塊組合連接,理論上能通過圖形組態(tài)出任意復(fù)雜的算法或邏輯判斷。HCON正是基于該理念進(jìn)行設(shè)計(jì),其主要工作流程如圖1所示:
圖1 平臺(tái)工作流程
隨著工業(yè)控制系統(tǒng)應(yīng)用的不斷深入,組態(tài)軟件出現(xiàn)了支持跨操作系統(tǒng)平臺(tái)運(yùn)行、支持多種控制算法和腳本語言、支持移動(dòng)互聯(lián)網(wǎng)等方面的發(fā)展趨勢(shì)?;趯?shí)際工程應(yīng)用需求考慮,本平臺(tái)應(yīng)能兼容所有Windows、Linux主流操作系統(tǒng),在我國(guó)實(shí)施國(guó)產(chǎn)化戰(zhàn)略的背景下,更應(yīng)考慮與凝思、麒麟、統(tǒng)一等國(guó)產(chǎn)Linux操作系統(tǒng)的兼容性。因此在技術(shù)選型上選擇運(yùn)用Node.js、Python和HTML5技術(shù)完成平臺(tái)的開發(fā)工作。其中HTML5前端技術(shù)用來構(gòu)建平臺(tái)界面,基于Node.js的Electron將前端界面桌面化,Python語言完成圖形邏輯到目標(biāo)語言的解析轉(zhuǎn)換過程。
圖2 HCON技術(shù)架構(gòu)圖
HCON的模型組態(tài)功能主要包括平臺(tái)登錄、模型設(shè)計(jì)、模型檢查、模型發(fā)布及編譯。
(1)平臺(tái)登錄
考慮到HCON邏輯組態(tài)工具與iP9000的同步性,需使用在線模式以iP9000平臺(tái)的用戶名和密碼登錄,并配置與之一致的SERV_PROXY服務(wù)器IP地址及端口號(hào),若使用離線模式登錄,將無法使用模型檢查、對(duì)象數(shù)選取對(duì)象、發(fā)布、編譯等功能。
(2)模型設(shè)計(jì)
模型設(shè)計(jì)功能包括:根據(jù)用戶的操作習(xí)慣,采用文件夾的方式在界面的解決方案管理器中管理hcon文件;通過從模型庫(kù)拖拽公用模塊元件到工作區(qū),實(shí)現(xiàn)模型組件選取操作,使得軟件更加易用,具備人機(jī)友好的操作界面;邏輯間的關(guān)聯(lián)關(guān)系通過連線的方式即可實(shí)現(xiàn);實(shí)時(shí)庫(kù)操作模塊,可設(shè)置對(duì)象名和屬性;為了保證邏輯組態(tài)畫面的可視化效果,可通過內(nèi)置按鈕對(duì)圖形進(jìn)行對(duì)齊和分布。
(3)模型檢查
完成模型設(shè)計(jì)后,系統(tǒng)可自動(dòng)對(duì)模型進(jìn)行檢查,檢查內(nèi)容包括對(duì)象名設(shè)置是否正確、屬性名是否設(shè)置,保證模型的準(zhǔn)確性和信息完整性。
(4)模型發(fā)布及編譯
系統(tǒng)在模型檢查完成后即可發(fā)布模型,模型發(fā)布功能主要包括:生成模型描述文件,方便接入平臺(tái)的模型解析,HCON中生成.json的 模型描述文件;為了便于腳本/任務(wù)運(yùn)行,HCON中調(diào)用腳本轉(zhuǎn)換程序,生成.spl6文件,iP9000(spl)可解析該運(yùn)算模型文件;腳本轉(zhuǎn)換程序?qū)?hcon文件和.spl6文件存至iP9000一體化平臺(tái)的配置庫(kù),便于后續(xù)解析和運(yùn)行調(diào)用。
HCON應(yīng)用于iP9000的過程包括模型設(shè)計(jì)、模型發(fā)布、模型編譯、模型測(cè)試和運(yùn)行配置。
模型設(shè)計(jì)過程是在HCON可視化邏輯組態(tài)設(shè)計(jì)器中,通過拖拽、連接、配置的操作,完成復(fù)雜的綜合計(jì)算、閉鎖等邏輯設(shè)計(jì)。設(shè)計(jì)完成后,HCON將模型一鍵發(fā)布至iP9000的系統(tǒng)配置庫(kù)。模型編譯是指在HCON中通過調(diào)用iP9000的后臺(tái)服務(wù),并通過一鍵操作將發(fā)布的模型編譯成二進(jìn)制,使其具備測(cè)試或運(yùn)行的條件。模型測(cè)試是在HCON中對(duì)腳本進(jìn)行測(cè)試,實(shí)現(xiàn)在不影響iP9000系統(tǒng)生產(chǎn)環(huán)境的情況下查看各個(gè)模塊的計(jì)算結(jié)果。運(yùn)行配置是指在HCON中即可對(duì)模型的運(yùn)行方式進(jìn)行配置,同時(shí)支持定時(shí)運(yùn)行或周期運(yùn)行等方式。
其中發(fā)布生成的.json模型描述文件可直接用于iP9000中的專家分析模塊,編譯生成的.spl6和.hcon文件直接存至iP9000配置庫(kù)可直接由iP9000(spl)解析調(diào)用。
iP9000解析HCON模型的數(shù)據(jù)流如圖3所示:
圖3 模型解析數(shù)據(jù)流圖
HCON主界面如圖4所示。其中上方區(qū)域?yàn)楣ぞ邫冢蛔髠?cè)區(qū)域?yàn)樵?kù)(公用模型算法庫(kù));中間區(qū)域?yàn)閳D形化編程區(qū)域(畫布);右側(cè)區(qū)域上部為解決方案管理器、下部為模型屬性編輯器。
圖4 操作界面
HCON是以iP9000智能一體化平臺(tái)為運(yùn)行容器設(shè)計(jì)并研發(fā)的圖形化組態(tài)軟件,通過基于Node.js及HTML圖形庫(kù)技術(shù)實(shí)現(xiàn)跨平臺(tái)的可視化編程平臺(tái),完善了腳本管理功能,實(shí)現(xiàn)腳本函數(shù)庫(kù)的可擴(kuò)展性。用戶只需通過拖拽元件、修改元件參數(shù)、創(chuàng)建功能模塊的連線關(guān)系和設(shè)置功能模塊運(yùn)行條件等簡(jiǎn)單的繪圖操作,即可完成自動(dòng)化控制系統(tǒng)中的綜合計(jì)算、閉鎖條件等邏輯的設(shè)計(jì)、發(fā)布、管理、調(diào)試及執(zhí)行,為水利水電工程的智能化運(yùn)維提供有力的技術(shù)保障。