王昕鑫 彭 節(jié) 秦 冰
陸軍工程大學(xué)軍械士官學(xué)校 湖北 武漢 430075
隨著電力工業(yè)的快速發(fā)展,電力市場(chǎng)的改革要求電廠不斷提高設(shè)備可利用率、安全運(yùn)行性,提高監(jiān)控自動(dòng)化程度,減少運(yùn)行和維護(hù)費(fèi)用。計(jì)算機(jī)監(jiān)控系統(tǒng)在水電站的應(yīng)用,為機(jī)組的安全、可靠、經(jīng)濟(jì)運(yùn)行提供了保障,同時(shí)保證了電能質(zhì)量,而水電站監(jiān)控系統(tǒng)上位機(jī)軟件的開(kāi)發(fā)是實(shí)現(xiàn)水電站綜合自動(dòng)化的重要保障。
組態(tài)王軟件是一種通用的工業(yè)監(jiān)控軟件,它融過(guò)程控制設(shè)計(jì)、現(xiàn)場(chǎng)操作及工廠管理于一體,將一個(gè)企業(yè)內(nèi)部的各種生產(chǎn)系統(tǒng)及應(yīng)用和信息交流匯集在一起,實(shí)現(xiàn)最優(yōu)管理。
組態(tài)王軟件作為一個(gè)開(kāi)放型的通用工業(yè)監(jiān)控軟件,支持與國(guó)內(nèi)外常見(jiàn)的PLC、智能模塊、智能儀表、變頻器、數(shù)據(jù)采集板卡等通過(guò)常規(guī)通訊接口進(jìn)行數(shù)據(jù)通訊。
組態(tài)王軟件與IO 設(shè)備進(jìn)行通訊一般是通過(guò)調(diào)用*.dll動(dòng)態(tài)庫(kù)來(lái)實(shí)現(xiàn)的,不同的設(shè)備、協(xié)議對(duì)應(yīng)不同的動(dòng)態(tài)庫(kù)。工程開(kāi)發(fā)人員無(wú)須關(guān)心復(fù)雜的動(dòng)態(tài)庫(kù)代碼及設(shè)備通訊協(xié)議,只須使用組態(tài)王提供的設(shè)備定義向?qū)?即可定義工程中使用的I/O 設(shè)備,并通過(guò)變量的定義實(shí)現(xiàn)與I/O 設(shè)備的關(guān)聯(lián),對(duì)用戶來(lái)說(shuō)既簡(jiǎn)單又方便。
2.1 創(chuàng)建工程
2.1.1 定義外部設(shè)備 組態(tài)王把那些需要與之交換數(shù)據(jù)的硬件設(shè)備或軟件程序都作為外部設(shè)備使用。外部硬件設(shè)備通常包括PLC、儀表、模塊、變頻器、板卡等;外部軟件程序通常指包括DDE、OPC 等服務(wù)程序。按照計(jì)算機(jī)和外部設(shè)備的通訊連接方式,則分為:串行通信(232/422/485)、以太網(wǎng)、專用通信卡(如CP5611)等。
在計(jì)算機(jī)和外部設(shè)備硬件連接好后,為了實(shí)現(xiàn)組態(tài)王和外部設(shè)備的實(shí)時(shí)數(shù)據(jù)通訊,必須在組態(tài)王的開(kāi)發(fā)環(huán)境中對(duì)外部設(shè)備和相關(guān)變量加以定義。
2.1.2 定義變量 數(shù)據(jù)庫(kù)是“組態(tài)王軟件”最核心的部分,是聯(lián)系上位機(jī)和下位機(jī)的橋梁。數(shù)據(jù)庫(kù)中存放的是應(yīng)用工程中定義的變量以及系統(tǒng)變量。變量可以分為基本類型和特殊類型兩大類,基本類型的變量又分為內(nèi)存變量和I/O 變量?jī)煞N。
“I/O 變量”指的是組態(tài)王與外部設(shè)備或其它應(yīng)用程序交換的變量。這種數(shù)據(jù)交換是雙向的、動(dòng)態(tài)的,就是說(shuō)在組態(tài)王系統(tǒng)運(yùn)行過(guò)程中,每當(dāng)I/O 變量的值改變時(shí),該值就會(huì)自動(dòng)寫(xiě)入外部設(shè)備或遠(yuǎn)程應(yīng)用程序;每當(dāng)外部設(shè)備或遠(yuǎn)程應(yīng)用程序中的值改變時(shí),組態(tài)王系統(tǒng)中的變量值也會(huì)自動(dòng)改變。所以,那些從下位機(jī)采集來(lái)的數(shù)據(jù)、發(fā)送給下位機(jī)的指令,比如集水井水位、開(kāi)關(guān)等變量,都需要設(shè)置成“I/O 變量”。那些不需要和外部設(shè)備或其它應(yīng)用程序交換,只在組態(tài)王內(nèi)使用的變量,比如計(jì)算過(guò)程的中間變量,就可以設(shè)置成“內(nèi)存變量”。
2.2 制作畫(huà)面 在本系統(tǒng)中,結(jié)合現(xiàn)場(chǎng)工藝流程,利用組態(tài)王豐富的繪圖工具主要設(shè)計(jì)了如下畫(huà)面:水電站主接線圖、主控系統(tǒng)圖、集水井圖、空壓機(jī)圖、主變風(fēng)機(jī)圖、發(fā)點(diǎn)機(jī)組圖、報(bào)警查詢圖等。
在組態(tài)王工程管理器中“畫(huà)面”選項(xiàng)中,新建畫(huà)面,進(jìn)入到開(kāi)發(fā)系統(tǒng)。利用組態(tài)王提供的圖庫(kù)和工具箱繪制各個(gè)模塊的物理連接圖,然后建立圖素的動(dòng)畫(huà)連接,實(shí)現(xiàn)動(dòng)態(tài)效果,如圖1所示。
圖1 集水井水位圖
“動(dòng)畫(huà)連接”是建立畫(huà)面的圖素與數(shù)據(jù)庫(kù)變量的對(duì)應(yīng)關(guān)系。在畫(huà)面中,將表示集水井的藍(lán)色矩形的縮放連接與數(shù)據(jù)庫(kù)變量“集水井水位1#”相關(guān)聯(lián),藍(lán)色矩形就會(huì)隨著該變量的變化而縮放,實(shí)現(xiàn)了水位的動(dòng)態(tài)變化效果。
為了方便對(duì)系統(tǒng)的操作和管理,建立一個(gè)系統(tǒng)菜單,對(duì)用戶進(jìn)行管理,它包括:用戶登錄、修改口令、退出登錄、退出系統(tǒng)等菜單項(xiàng)。實(shí)現(xiàn)此菜單項(xiàng),用到了系統(tǒng)函數(shù)voidOnMenuClick(LONG MenuIndex,LONGChildMenuIndex),命令語(yǔ)言如下:
if(MenuIndex==0){LogOn();}//用戶登錄
if(MenuIndex==1){changepassword();logoff();}//修改口令
if(MenuIndex==2){logoff();}//用戶注銷
if(MenuIndex==3){exit(0);}//退出系統(tǒng)
2.3 數(shù)據(jù)庫(kù)連接 組態(tài)王SQL訪問(wèn)功能實(shí)現(xiàn)組態(tài)王和其他外部數(shù)據(jù)庫(kù)(通過(guò)ODBC 訪問(wèn)接口)之間的數(shù)據(jù)傳輸。它包括組態(tài)王的SQL 訪問(wèn)管理器和相關(guān)的SQL函數(shù)。
SQL訪問(wèn)管理器用來(lái)建立數(shù)據(jù)庫(kù)字段和組態(tài)王變量之間的聯(lián)系,包括“表格模板”和“記錄體”兩部分。通過(guò)表格模板在數(shù)據(jù)庫(kù)表中建立相應(yīng)的表格;通過(guò)記錄體建立數(shù)據(jù)庫(kù)字段和組態(tài)王之間的聯(lián)系。記錄體中定義了Access數(shù)據(jù)庫(kù)表格字段與組態(tài)王變量之間的對(duì)應(yīng)關(guān)系,對(duì)應(yīng)關(guān)系如下表1所示
表1 數(shù)據(jù)庫(kù)字段與變量的對(duì)應(yīng)關(guān)系
該監(jiān)控系統(tǒng)具有形象生動(dòng)的監(jiān)控畫(huà)面,簡(jiǎn)便易學(xué)的操作方法,適合在電站及倉(cāng)庫(kù)等需要實(shí)現(xiàn)自動(dòng)化監(jiān)控的場(chǎng)景中推廣運(yùn)用。