??? 摘? 要: 為了對水資源進(jìn)行合理調(diào)配,設(shè)計(jì)了一套基于組態(tài)王的水源地遠(yuǎn)程監(jiān)控系統(tǒng)。上位機(jī)采用組態(tài)王軟件進(jìn)行設(shè)計(jì),并實(shí)現(xiàn)與下位機(jī)PLC的通信。系統(tǒng)通過組態(tài)技術(shù)實(shí)現(xiàn)畫面顯示等各種功能,實(shí)時(shí)監(jiān)測生產(chǎn)過程。?
??? 關(guān)鍵詞: 水源地; 組態(tài)王; MODBUS; 計(jì)算機(jī)控制; PLC
?
??? 烏魯木齊河發(fā)源于天山山脈,屬內(nèi)陸河,總長214.3 km,流域面積為4 687 km2,是新疆首府烏魯木齊市最主要的水源。甘河子水源地有一個(gè)分控中心,周圍20 km2范圍內(nèi)分布了10口水源井,測控點(diǎn)距離分控中心的距離200 m~1 500 m不等,地域分布較為分散。烏魯木齊河管理處為了對分散的站點(diǎn)進(jìn)行集中監(jiān)控,提高供水調(diào)度、防洪的決策能力,提升管理水平,建立了自動化系統(tǒng)[1]。?
??? 組態(tài)王軟件是一種通用的工業(yè)監(jiān)控軟件,它融組態(tài)畫面設(shè)計(jì)、現(xiàn)場操作及數(shù)據(jù)資源管理于一體,將一個(gè)系統(tǒng)內(nèi)部的各種設(shè)備和應(yīng)用及信息交流匯集在一起,實(shí)現(xiàn)最優(yōu)化管理,非常適用于對分散的站點(diǎn)進(jìn)行集中監(jiān)控。?
1 系統(tǒng)概要?
??? 上位機(jī)采用工業(yè)控制計(jì)算機(jī)用于監(jiān)控和管理泵站運(yùn)行, 實(shí)時(shí)監(jiān)測各種數(shù)據(jù)及設(shè)備運(yùn)行,并提供圖形和文本形式的顯示,對各種故障報(bào)警,進(jìn)行數(shù)據(jù)庫的建立、動畫連接及數(shù)據(jù)的統(tǒng)計(jì)、報(bào)表制作及打印。系統(tǒng)軟件開發(fā)平臺采用北京亞控自動化軟件公司開發(fā)的組態(tài)王軟件。?
??? 系統(tǒng)硬件結(jié)構(gòu)如圖1所示。?
?

?
??? 在與下位機(jī)PLC通信時(shí),組態(tài)王要進(jìn)行相應(yīng)的設(shè)置。組態(tài)王的設(shè)備管理增加了驅(qū)動設(shè)備的配置向?qū)Вこ倘藛T只要按照配置向?qū)У奶崾具M(jìn)行相應(yīng)的參數(shù)設(shè)置,選擇I/O設(shè)備的生產(chǎn)廠家、設(shè)備名稱、通信方式,指定設(shè)備的邏輯名稱和通信地址,組態(tài)王即可自動完成驅(qū)動程序的啟動和通信,不再需要工程人員人工進(jìn)行。本系統(tǒng)中主要設(shè)置是:在生產(chǎn)廠家、設(shè)備名稱、通信方式窗口中選擇莫迪康MODBUS(RTU)串行,通信時(shí)數(shù)據(jù)傳輸?shù)牟ㄌ芈蕿? 600 b/s,8位數(shù)據(jù)位,1位停止位,奇偶校驗(yàn)為偶校驗(yàn),H/W類型為RS485,設(shè)備地址為1。?
??? 上位機(jī)中的組態(tài)王軟件所要監(jiān)控的參數(shù)有:各泵房的地下水水位、各深水泵出水口的流量、各泵的運(yùn)行狀態(tài)、水泵從最后一次啟動到查詢時(shí)所運(yùn)行的時(shí)間、各水泵運(yùn)行狀態(tài)的控制。?
2 要求組態(tài)王軟件實(shí)現(xiàn)的功能?
??? 組態(tài)王軟件具體完成的功能:?
??? (1)數(shù)據(jù)采集與顯示功能:監(jiān)控系統(tǒng)能夠根據(jù)要求從數(shù)據(jù)庫中取得所需的信息并進(jìn)行相應(yīng)的處理,同時(shí)把監(jiān)測的數(shù)據(jù)實(shí)時(shí)地顯示給用戶,用戶可以通過提供的目錄,準(zhǔn)確、快速地找到相關(guān)設(shè)備的狀態(tài)信息[2]。?
??? (2)用戶界面功能:界面是人與程序交互的起點(diǎn),一個(gè)好的系統(tǒng)首先要擁有一個(gè)好的友善的用戶界面。系統(tǒng)的用戶界面應(yīng)該盡可能簡潔和人性化,能夠讓使用者方便、輕松、舒適地使用,系統(tǒng)提供的功能要完整明確易懂地出現(xiàn)在用戶界面上。?
??? (3)安全功能:任何時(shí)候,系統(tǒng)的安全都是一個(gè)非常重要的方面,系統(tǒng)軟件要能保護(hù)系統(tǒng)中的信息安全,防止惡意破壞。不許無權(quán)限的人觀察到重要資料和進(jìn)行有關(guān)操作。對于系統(tǒng)中的使用者也要進(jìn)行權(quán)限分級,重要的操作只能由特定的人員進(jìn)行。?
??? (4)管理功能:遠(yuǎn)程監(jiān)控系統(tǒng)不僅要使得管理人員能夠從個(gè)人計(jì)算機(jī)上觀測到系統(tǒng)的運(yùn)行狀態(tài),還要能夠讓管理人員在必要時(shí)進(jìn)行必要的管理操作,例如控制系統(tǒng)某個(gè)部分的運(yùn)行、開關(guān)等。監(jiān)控系統(tǒng)實(shí)現(xiàn)面向用戶的電子化工作制度,通過對設(shè)備資料、運(yùn)行資料、操作記錄的查詢和分析,為監(jiān)控運(yùn)行的維護(hù)人員對設(shè)備的管理以及對運(yùn)行維護(hù)人員維護(hù)工作的綜合管理提供手段。?
??? (5)配置管理功能:配置管理用于監(jiān)控對象和監(jiān)控系統(tǒng)自身的增加、修改和刪除管理。它應(yīng)操作簡單、方便直觀而且具有兼容性,可以在線進(jìn)行配置,不中斷系統(tǒng)的運(yùn)行。配置資料的錄入要求簡潔明了,易于理解和操作。?
??? (6)報(bào)警功能:當(dāng)檢測到某種危險(xiǎn)信號或是當(dāng)系統(tǒng)運(yùn)行狀態(tài)不穩(wěn)定不合理時(shí),系統(tǒng)軟件要能向管理人員發(fā)出報(bào)警信號,并能在查看報(bào)表時(shí),生成與報(bào)警相關(guān)的一些報(bào)表[3]。?
??? (7)報(bào)表功能:系統(tǒng)中的過程數(shù)據(jù)、運(yùn)行狀態(tài)是通過數(shù)據(jù)報(bào)表反應(yīng)出來的。它既能反應(yīng)系統(tǒng)實(shí)時(shí)的生產(chǎn)情況又能對長期的生產(chǎn)過程數(shù)據(jù)進(jìn)行統(tǒng)計(jì)、分析,使管理人員能夠掌握和分析生產(chǎn)過程情況。本設(shè)計(jì)中報(bào)表系統(tǒng)不僅能夠?qū)?shí)時(shí)數(shù)據(jù)進(jìn)行記錄,還能根據(jù)具體情況進(jìn)行查詢。?
3 系統(tǒng)畫面?
3.1 設(shè)計(jì)圖形畫面?
??? 現(xiàn)場監(jiān)控計(jì)算機(jī)的主要監(jiān)控畫面包括:封面、主界面、各泵運(yùn)行狀態(tài)、1~10號井的動態(tài)畫面、1~10號井實(shí)時(shí)趨勢、1~10號井歷史趨勢、1~10號井報(bào)警界面、1~10號井報(bào)表界面。?
??? 在工程管理器中新建工程,建立工程名,選擇保存路徑。列出總的設(shè)計(jì)計(jì)劃后,首先決定哪些變量需要報(bào)警操作,在工程瀏覽器左側(cè)的菜單中雙擊報(bào)警組,新建1號井到10號井的報(bào)警組。?
??? 在數(shù)據(jù)詞典中定義各個(gè)變量,再進(jìn)行動畫連接,可以得到動態(tài)畫面,使組態(tài)系統(tǒng)形象地向操作員演示實(shí)際系統(tǒng)的運(yùn)行情況。?
??? 下面以1號井為例,介紹主要的組態(tài)畫面。運(yùn)行時(shí),各個(gè)畫面通過按鈕實(shí)現(xiàn)切換。?
??? 如圖2所示,1號井畫面中顯示的內(nèi)容有:系統(tǒng)當(dāng)前時(shí)間、水泵電機(jī)是受本地控制還是遠(yuǎn)程控制、水泵遠(yuǎn)程控制按鈕、水泵運(yùn)行狀態(tài)指示燈、水泵運(yùn)行時(shí)間、水泵流量、1號井地下水水位及其報(bào)警顯示燈。畫面經(jīng)過動畫連接后,可以動態(tài)顯示水泵的啟動、運(yùn)行、停止?fàn)顟B(tài),并可以形象地顯示水流以及地下水水位的變化情況。?
?

?
??? 圖3、圖4、圖5分別顯示1號井地下水水位和水泵出水口流量的歷史趨勢、實(shí)時(shí)趨勢、歷史報(bào)警、實(shí)時(shí)報(bào)警以及實(shí)時(shí)報(bào)警情況的報(bào)表。?
?

?

?

?
??? 1號井報(bào)表畫面如圖6所示,可以查詢并打印班報(bào)表、日報(bào)表和月報(bào)表。必要時(shí)可以查詢?nèi)我鈺r(shí)刻1號井的各種數(shù)據(jù)和設(shè)備運(yùn)行狀態(tài)。1號井主界面如圖7所示。?
?

?

?
??? 各泵運(yùn)行狀態(tài)畫面如圖8所示,畫面中的儀表顯示的是1號井的地下水水位,如果地下水水位過低,低于水位的報(bào)警界限,則地下水水位報(bào)警指示燈會提醒操作員注意,從而能及時(shí)處理,避免故障情況發(fā)生。該畫面同時(shí)還可以顯示各水泵的實(shí)時(shí)流量以及各個(gè)水泵由啟動開始計(jì)時(shí)以來,總共運(yùn)行了多長時(shí)間。?
?

?
3.2 構(gòu)造數(shù)據(jù)庫變量?
??? 數(shù)據(jù)庫是組態(tài)王的核心部分,在組態(tài)王運(yùn)行時(shí),工業(yè)現(xiàn)場的生產(chǎn)狀況要以動畫的形式反映在屏幕上,操作者在計(jì)算機(jī)前發(fā)布的指令也要迅速送達(dá)生產(chǎn)現(xiàn)場,所有這一切都是以實(shí)時(shí)數(shù)據(jù)庫為中介環(huán)節(jié),數(shù)據(jù)庫是聯(lián)系上位機(jī)和下位機(jī)的橋梁。在運(yùn)行時(shí),數(shù)據(jù)庫中存放的是變量的當(dāng)前值,變量分為I/O變量和內(nèi)存變量,變量的集合形象稱為“數(shù)據(jù)詞典”,數(shù)據(jù)詞典記錄了所有用戶可使用的數(shù)據(jù)變量的詳細(xì)信息,構(gòu)造數(shù)據(jù)庫的變量就是將I/O變量寫入數(shù)據(jù)詞典。I/O變量是指可與外部數(shù)據(jù)采集程序直接進(jìn)行數(shù)據(jù)交換的變量,如在本系統(tǒng)中從PLC采集的數(shù)據(jù)。這種數(shù)據(jù)交換是雙向的、動態(tài)的,即當(dāng)組態(tài)王運(yùn)行時(shí),每當(dāng)I/O變量的值改變時(shí),該值會自動寫入下位機(jī)或其他應(yīng)用程序;而每當(dāng)下位機(jī)或應(yīng)用程序中的值改變時(shí),組態(tài)王系統(tǒng)中的變量值也會自動更新。所以, 在本系統(tǒng)中,那些從下位機(jī)PLC采集來的數(shù)據(jù)及發(fā)給下位機(jī)的指令,如“泵房地下水水位”、“水泵運(yùn)行狀態(tài)”等變量,都要設(shè)置成I/O變量[3]。?
??? 在系統(tǒng)運(yùn)行時(shí),組態(tài)王數(shù)據(jù)詞典中的I/O變量值正是從PLC采集來的實(shí)時(shí)數(shù)據(jù),完成上位機(jī)與下位機(jī)的數(shù)據(jù)連接與交換。?
3.3 動畫連接?
??? 動畫連接就是建立畫面的圖素與數(shù)據(jù)庫變量的對應(yīng)關(guān)系。在系統(tǒng)運(yùn)行過程中,使現(xiàn)場信號動態(tài)地反映到圖形界面上,從而實(shí)現(xiàn)了圖形的動畫效果。如對水泵進(jìn)行動畫連接,當(dāng)水泵開啟時(shí),用綠燈顯示,并且管道中會有水流動。水泵停止運(yùn)轉(zhuǎn)時(shí),用紅燈顯示,管道中的水停止流動。建立動畫連接時(shí),用到了大量的命令語言進(jìn)行程序的編制,通過對程序的編寫,很好地完成了畫面動態(tài)顯示。?
??? 下面的程序是用來顯示水泵運(yùn)行時(shí)間的:?
??? 進(jìn)入事件命令語言編輯器,事件描述中寫入“本站點(diǎn)泵1==1”,單擊“發(fā)生時(shí)”,寫入程序:?
??? 本站點(diǎn)泵1啟動時(shí)=本站點(diǎn)$時(shí);?
??? 本站點(diǎn)泵1啟動分=本站點(diǎn)$分;?
??? 本站點(diǎn)泵1啟動秒=本站點(diǎn)$秒;?
??? 單擊“存在時(shí)”,寫入程序:?
??? 本站點(diǎn)泵1運(yùn)行時(shí)間= 0;?
??? //計(jì)算秒?
??? ? if (本站點(diǎn)$秒<本站點(diǎn)泵1啟動秒)?
???? ?? ?{本站點(diǎn)泵1運(yùn)行時(shí)間=60+本站點(diǎn)$秒-本站點(diǎn)泵1啟動秒;?
????? if(本站點(diǎn)$分<本站點(diǎn)泵1啟動分)?
??? ???? 本站點(diǎn)泵1運(yùn)行時(shí)間=本站點(diǎn)泵1運(yùn)行時(shí)間+(本站點(diǎn)$時(shí)-本站點(diǎn)泵1啟動時(shí)-1)*3 600+3 600+(本站點(diǎn)$分-本站點(diǎn)泵1啟動分-1)*60;?
???else?
???????? 本站點(diǎn)泵1運(yùn)行時(shí)間=本站點(diǎn)泵1運(yùn)行時(shí)間 +(本站點(diǎn)$時(shí)- 本站點(diǎn)泵1啟動時(shí))*3 600+(本站點(diǎn)$分-本站點(diǎn)泵1啟動分-1)*60;}?
?? else?
??? {本站點(diǎn)泵1運(yùn)行時(shí)間=本站點(diǎn)$秒 -?本站點(diǎn)泵1啟動秒;?
? ??? if (本站點(diǎn)$分<本站點(diǎn)泵1啟動分)?
?????? 本站點(diǎn)泵1運(yùn)行時(shí)間=? 本站點(diǎn)泵1運(yùn)行時(shí)間 +(本站點(diǎn)$時(shí)- 本站點(diǎn)泵1啟動時(shí)-1)*3 600+3 600+(本站點(diǎn)$分-本站點(diǎn)泵1啟動分)*60 ;?
?? else?
??????? 本站點(diǎn)泵1運(yùn)行時(shí)間= 本站點(diǎn)泵1運(yùn)行時(shí)間+(本站點(diǎn)$時(shí)- 本站點(diǎn)泵1啟動時(shí))*3 600+(本站點(diǎn)$分-本站點(diǎn)泵1啟動分)*60;}?
??? 本系統(tǒng)現(xiàn)已穩(wěn)定運(yùn)行兩年多,運(yùn)行結(jié)果表明,基于組態(tài)王的監(jiān)控系統(tǒng)能充分滿足對現(xiàn)場控制系統(tǒng)的要求,本監(jiān)控系統(tǒng)可節(jié)省人力,降低制水成本,完成了水源地流程的實(shí)時(shí)、動態(tài)監(jiān)控,實(shí)現(xiàn)了泵房現(xiàn)場狀況監(jiān)控和設(shè)備管理等功能,實(shí)現(xiàn)了現(xiàn)場數(shù)據(jù)和設(shè)備狀態(tài)報(bào)表的存儲、打印。對水源地供水系統(tǒng)的安全運(yùn)行、提高供水質(zhì)量、節(jié)能降耗、優(yōu)化管理等方面起到了至關(guān)重要的作用。?
參考文獻(xiàn)?
[1]?北京亞控科技發(fā)展有限公司.組態(tài)王6.5使用手冊[K].2004.?
[2]?許登閣. 組態(tài)軟件在水廠泵站監(jiān)控系統(tǒng)中的應(yīng)用[J].工業(yè)控制計(jì)算機(jī),2008(1):86-87.?
[3]?陳志軍,南新元,程志江.基于MODBUS的甘河子水源地遠(yuǎn)程監(jiān)控系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[J].電氣自動化, 2006(2):42-46.
