李畸勇, 胡 恒, 張 航, 吳翠清
(1. 廣西大學(xué) 電氣工程學(xué)院, 廣西 南寧 530004;2. 廣西電力系統(tǒng)最優(yōu)化與節(jié)能技術(shù)重點實驗室, 廣西 南寧 530004)
一體化、多層次、全開放的實驗室正成為高校實驗室建設(shè)的重要方向[1]。開放性實驗室能使教學(xué)中有限的設(shè)備資源得到最大限度的利用[2],更好地培養(yǎng)學(xué)生自主學(xué)習(xí)、開拓創(chuàng)新以及合同協(xié)作的能力,有效提高實驗教學(xué)質(zhì)量。然而開放性實驗室也會因為學(xué)生對儀器設(shè)備的操作不熟練引發(fā)實驗室更多的安全問題[3]。而建設(shè)智能型實驗室則是解決實驗室安全問題的重要途徑。
目前,智能化的保護(hù)裝置已成為開放性實驗室設(shè)備維護(hù)的一個重要內(nèi)容。筆者依托廣西大學(xué)電工實驗室,對基于ZigBee網(wǎng)絡(luò)的電工實驗臺智能保護(hù)系統(tǒng)進(jìn)行了研究,提出了系統(tǒng)的設(shè)計實現(xiàn)方案并制作出了原理樣機(jī)。
設(shè)計的基于ZigBee網(wǎng)絡(luò)的電工實驗臺智能保護(hù)系統(tǒng),上位機(jī)通過ZigBee無線網(wǎng)絡(luò)聯(lián)接多個下位機(jī)的C/S架構(gòu)[4-9],系統(tǒng)結(jié)構(gòu)如圖1所示。
圖1 系統(tǒng)結(jié)構(gòu)圖
上位機(jī)編程軟件為LabVIEW,通過ZigBee模塊與下位機(jī)進(jìn)行通信。
下位機(jī)利用基于MODBUS協(xié)議[10]的電能采集模塊以及預(yù)先設(shè)定的電壓/電流閾值,對電工實驗臺運(yùn)行狀態(tài)進(jìn)行實時監(jiān)測,利用LCD顯示屏、信號燈及蜂鳴器指示實驗臺運(yùn)行狀態(tài),利用繼電器陣列、斷路器及復(fù)位按鈕對電工實驗臺進(jìn)行故障保護(hù)。當(dāng)下位機(jī)收到上位機(jī)的實驗臺運(yùn)行狀態(tài)查詢指令后,會將實驗臺運(yùn)行狀態(tài)反饋至上位機(jī);收到上位機(jī)電源控制指令后會對實驗臺三相電源進(jìn)行控制,及時開停設(shè)備;收到上位機(jī)電壓/電流閾值更改指令后會對預(yù)先設(shè)定的電壓/電流閾值進(jìn)行更改,以適應(yīng)不同實驗臺對電壓、電流的限定。
上位機(jī)負(fù)責(zé)實驗臺運(yùn)行狀態(tài)查詢指令、電源控制指令、電壓電流閾值更改指令等指令的發(fā)出,同時對下位機(jī)反饋的實驗臺運(yùn)行狀態(tài)進(jìn)行數(shù)據(jù)存儲,并根據(jù)保存的歷史數(shù)據(jù)進(jìn)行計算,得出各個實驗臺的故障率,以便實驗室管理員對故障率較高的實驗臺予以重點關(guān)注。
目前,ZigBee網(wǎng)絡(luò)在智能電網(wǎng)、智能交通、智能家居、工業(yè)自動化等領(lǐng)域已得到廣泛的應(yīng)用,主要有TREE、STAR和MESH等3種網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)[11-12]。TREE拓?fù)渑cSTAR拓?fù)溥m合距離較近的應(yīng)用;而MESH拓?fù)鋭t適用于網(wǎng)絡(luò)復(fù)雜、距離較遠(yuǎn)的應(yīng)用,可通過多級跳的方式進(jìn)行通信信道組建,并且具有自組織、自愈等功能[13]。
鑒于目前高校實驗室規(guī)模大、組成復(fù)雜的情況,本設(shè)計將采用MESH拓?fù)浣Y(jié)構(gòu)作為系統(tǒng)ZigBee網(wǎng)絡(luò)架構(gòu),利用其自組織、自愈等功能使網(wǎng)絡(luò)覆蓋范圍更廣、信息傳輸更可靠。在系統(tǒng)的設(shè)計中,將上位機(jī)連接的ZigBee模塊設(shè)置為Co-ordinator,將每個下位機(jī)中的ZigBee模塊設(shè)置為Router并設(shè)置唯一的地址,以此形成的ZigBee網(wǎng)絡(luò)MESH拓?fù)浣Y(jié)構(gòu)如圖2所示。這樣,上位機(jī)便可按照已設(shè)定的地址對多個下位機(jī)進(jìn)行單獨控制以及查詢,并接收下位機(jī)返回的實驗臺運(yùn)行狀態(tài)信息。
圖2 ZigBee網(wǎng)絡(luò)MESH拓?fù)浣Y(jié)構(gòu)
下位機(jī)可對電工實驗臺運(yùn)行狀態(tài)進(jìn)行監(jiān)測、反饋及電路保護(hù),是系統(tǒng)的執(zhí)行終端。每一臺下位機(jī)都具有相同的硬件結(jié)構(gòu)形式以及軟件設(shè)計程序。下位機(jī)硬件結(jié)構(gòu)主要由MSP430單片機(jī)、ZigBee模塊、電能采集模塊、繼電器陣列、斷路器、LCD顯示屏、信號燈及復(fù)位按鈕組成,如圖3所示。
圖3 下位機(jī)硬件結(jié)構(gòu)圖
MSP430單片機(jī)作為下位機(jī)的控制核心,具有超低功耗、處理信號能力強(qiáng)大、系統(tǒng)工作穩(wěn)定、開發(fā)環(huán)境方便高效等優(yōu)點。
ZigBee模塊的主控芯片為CC2530F256,采用ZigBee2007/PRO協(xié)議棧[14],有協(xié)調(diào)器與路由器兩種節(jié)點類型,在上位機(jī)中作為協(xié)調(diào)器采用USB方形接口與PC連接,在下位機(jī)中作為路由器采用RS232串口方式與單片機(jī)連接,通信波特率均設(shè)為9 600 bit/s。對每個下位機(jī)中的ZigBee模塊設(shè)置唯一短地址便可使下位機(jī)具有唯一的網(wǎng)絡(luò)通信地址。
電能采集模塊采用MODBUS協(xié)議,通過RS485總線與單片機(jī)進(jìn)行通信。
繼電器陣列及斷路器用于對電工實驗臺進(jìn)行故障保護(hù),為避免繼電器控制回路對單片機(jī)產(chǎn)生干擾,利用光電耦合器將單片機(jī)I/O口與繼電器控制回路進(jìn)行隔離,利用功率三極管驅(qū)動繼電器動作。
LCD顯示屏采用LCD12864B點陣型液晶顯示模塊,利用MSP430單片機(jī)驅(qū)動,用于顯示實驗臺運(yùn)行狀態(tài)。
信號燈用于指示實驗臺運(yùn)行狀態(tài)是否正常,綠燈亮表示正常工作,黃燈亮表示危險警示,紅燈亮表示發(fā)生故障。紅燈亮?xí)r系統(tǒng)啟動自動保護(hù)及聲音報警。
復(fù)位按鈕用于使繼電器復(fù)位。當(dāng)實驗臺發(fā)生故障引起繼電器動作后,應(yīng)及時查看故障信息并對實驗臺進(jìn)行故障修復(fù),修復(fù)完成后按下復(fù)位按鈕即可繼續(xù)進(jìn)行實驗。
下位機(jī)電路原理如圖4所示。
圖4 下位機(jī)電路原理圖
下位機(jī)接收到的上位機(jī)控制指令包括地址碼、功能碼、數(shù)據(jù)段及CRC校驗碼[15]。
地址碼為2字節(jié),從0X00 0X01至0XFF 0XFF。
功能碼為1字節(jié),0X01為狀態(tài)查詢,0X02為電源控制,0X03為電壓電流閾值更改。
數(shù)據(jù)段為不定長字節(jié)。當(dāng)功能碼為0X01時,數(shù)據(jù)段默認(rèn)為0X00;當(dāng)功能碼為0X02時,數(shù)據(jù)段為1字節(jié),0XFF表示關(guān)閉三相電源,0XFE表示開啟三相電源;當(dāng)功能碼為0X03時,數(shù)據(jù)段為4字節(jié),前兩字節(jié)為電壓閾值,后兩字節(jié)為電流閾值。
CRC校驗碼即循環(huán)冗余校驗碼(cyclic redundancy check),長度為2字節(jié),用于對傳送指令進(jìn)行校驗。
當(dāng)下位機(jī)收到實驗臺運(yùn)行狀態(tài)查詢指令后,會將實驗臺狀態(tài)數(shù)據(jù)進(jìn)行打包,并將地址碼、功能碼、數(shù)據(jù)包及CRC校驗碼形成一幀指令返回至上位機(jī),上位機(jī)對指令中的實驗臺狀態(tài)數(shù)據(jù)進(jìn)行解析、顯示及存儲。當(dāng)下位機(jī)收到上位機(jī)電源控制指令后,會對實驗臺三相電源進(jìn)行控制,及時開/停設(shè)備。當(dāng)下位機(jī)收到上位機(jī)電壓/電流閾值更改指令后,會對預(yù)先設(shè)定的電壓/電流閾值進(jìn)行更改,以適應(yīng)不同實驗臺對電壓電流的限定。下位機(jī)中默認(rèn)設(shè)定的電壓/電流閾值為250 V/5 A。
下位機(jī)程序設(shè)計包括主程序、RS485串口中斷收發(fā)子程序、電能數(shù)據(jù)采集判斷子程序、ZigBee數(shù)據(jù)接收與發(fā)送子程序、繼電器控制子程序、LCD顯示屏驅(qū)動子程序、信號燈及復(fù)位按鈕控制子程序等。主程序?qū)Ω鱾€子程序進(jìn)行功能調(diào)用,以實現(xiàn)電能數(shù)據(jù)采集判斷、接收與返回指令、繼電器控制、實驗臺三相電源控制、LCD顯示屏顯示實驗臺運(yùn)行狀態(tài)、信號燈及復(fù)位按鈕控制等功能。程序設(shè)計流程如圖5所示。
圖5 下位機(jī)程序設(shè)計流程圖
上位機(jī)程序用于人機(jī)交互界面的搭建,采用圖形化編程語言LabVIEW編寫[16]。上位機(jī)向下位機(jī)發(fā)送實驗臺運(yùn)行狀態(tài)查詢指令、電源控制指令、電壓電流閾值更改指令等,實現(xiàn)對各實驗臺運(yùn)行狀態(tài)進(jìn)行監(jiān)控、對各實驗臺三相電源進(jìn)行控制、對各實驗臺電壓電流閾值進(jìn)行更改等功能。另外上位機(jī)可對下位機(jī)反饋的實驗臺運(yùn)行狀態(tài)進(jìn)行數(shù)據(jù)存儲,根據(jù)保存的歷史數(shù)據(jù)進(jìn)行計算并獲得各個實驗臺的故障率。
上位機(jī)軟件設(shè)計流程見圖6。
圖6 上位機(jī)程序設(shè)計流程圖
在完成上述上位機(jī)和下位機(jī)設(shè)計后,需要對系統(tǒng)進(jìn)行聯(lián)合調(diào)試以及性能測試。測試系統(tǒng)包括一個上位機(jī)、下位機(jī)A、下位機(jī)B以及用2套三相調(diào)壓器供電的三相照明系統(tǒng),模擬A電工實驗臺與B電工實驗臺。
首先需要對下位機(jī)的網(wǎng)絡(luò)通信地址進(jìn)行設(shè)置,將下位機(jī)A的地址設(shè)為0X00 0X01,將下位機(jī)B的地址設(shè)為0X00 0X02。上位機(jī)控制指令中的地址需要與此一致。對系統(tǒng)進(jìn)行測試時,調(diào)節(jié)調(diào)壓器輸出均為220 V,從上位機(jī)軟件界面、下位機(jī)運(yùn)行狀態(tài)及三相用電照明系統(tǒng)可以看到系統(tǒng)運(yùn)行正常(見圖7)。
進(jìn)一步對系統(tǒng)進(jìn)行故障模擬測試。將實驗臺A的調(diào)壓器輸出增加到238 V(即設(shè)定電壓閾值的95%),可觀察到系統(tǒng)黃燈預(yù)警亮起。繼續(xù)增大調(diào)壓器輸出至251 V后,可觀察到三相用電照明系統(tǒng)電源立即被切斷,同時下位機(jī)A中的紅燈亮起,并發(fā)出聲音報警,LCD液晶顯示屏顯示故障為實驗臺過壓運(yùn)行,上位機(jī)同時彈出警告對話框提示實驗臺A發(fā)生故障。未做任何運(yùn)行條件更改的實驗臺B則正常運(yùn)行。測試結(jié)果表明系統(tǒng)對實驗臺A進(jìn)行了故障保護(hù)。
最后對系統(tǒng)進(jìn)行電源控制測試。在上位機(jī)對下位機(jī)B發(fā)出電源關(guān)閉指令后,可以觀察到三相用電照明系統(tǒng)電源被切斷,但是并無故障報警,LCD液晶顯示屏顯示實驗臺已斷電,這表明實驗臺B已執(zhí)行電源關(guān)閉指令。
圖7 系統(tǒng)正常運(yùn)行界面
以上系統(tǒng)測試結(jié)果表明,系統(tǒng)各模塊工作正常,可實現(xiàn)電工實驗臺運(yùn)行狀態(tài)實時監(jiān)測、故障保護(hù)、故障快速定位等功能。經(jīng)過測試,整個系統(tǒng)抗干擾能力強(qiáng),可靠性高,故障保護(hù)迅速,各項功能均達(dá)到了預(yù)期設(shè)計目的。
基于ZigBee網(wǎng)絡(luò)的電工實驗臺智能保護(hù)系統(tǒng)利用上/下位機(jī)對實驗臺運(yùn)行狀態(tài)進(jìn)行監(jiān)測,可實現(xiàn)故障保護(hù)、故障快速定位、故障率分析計算等功能,在故障查找及修復(fù)上節(jié)省了大量的人力物力,具有安裝便捷、工作可靠、反應(yīng)迅速等優(yōu)點。測試運(yùn)行結(jié)果表明,系統(tǒng)各項功能均達(dá)到了設(shè)計要求,目前已經(jīng)初步應(yīng)用于廣西大學(xué)電工實驗室。