向 前, 楊 路, 陶 沙
(1.銅陵學(xué)院電氣工程學(xué)院,安徽 銅陵 244000;2.安徽公安職業(yè)學(xué)院信息網(wǎng)絡(luò)安全監(jiān)察系,安徽 合肥 230031)
實(shí)驗(yàn)是高等教育的必要環(huán)節(jié),是提升學(xué)生實(shí)踐能力、創(chuàng)新能力和綜合素質(zhì)的有效手段之一[1~2]。隨著高等教育改革的不斷進(jìn)行,各個(gè)高校都投入了巨大的人力物力建設(shè)實(shí)驗(yàn)室及購(gòu)買實(shí)驗(yàn)設(shè)備。銅陵學(xué)院與羅克韋爾公司共建Rockwell-HOTS實(shí)驗(yàn)系統(tǒng),基于CCW等專用軟件實(shí)現(xiàn)對(duì)變頻器、PLC等工控設(shè)備控制功能。該系統(tǒng)存在如下不足:(1)該實(shí)驗(yàn)系統(tǒng)投資較大,卻沒(méi)有提供相應(yīng)的監(jiān)控平臺(tái),管理人員無(wú)法隨時(shí)監(jiān)控系統(tǒng)的環(huán)境情況,一旦發(fā)生突發(fā)狀況可能導(dǎo)致巨大的損失;(2)需要專門學(xué)習(xí)Rockwell CCW等知識(shí)后方可使用等,通用性、可操作性較差。針對(duì)上述不足之處,基于LabVIEW對(duì)Rockwell-HOTS實(shí)驗(yàn)系統(tǒng)進(jìn)行優(yōu)化設(shè)計(jì),基于網(wǎng)絡(luò)、計(jì)算機(jī)技術(shù)、軟件與自動(dòng)化技術(shù)的深度交織,使得學(xué)生可以方便的開(kāi)展各種設(shè)備操作的同時(shí)監(jiān)控實(shí)驗(yàn)系統(tǒng)的安全狀況。提高了系統(tǒng)的利用率,方便實(shí)驗(yàn)室管理工作并且降低了維護(hù)成本,在教學(xué)和經(jīng)濟(jì)方面都具有重要意義。
Rockwell-HOTS實(shí)驗(yàn)系統(tǒng)結(jié)構(gòu)如圖1所示,包括20套HOTS設(shè)備,每套設(shè)備包括:工控機(jī)、PLC、變頻器等。基于工業(yè)4.0理念,整合了工業(yè)自動(dòng)化中的順序控制、過(guò)程控制、傳動(dòng)控制等控制需求。針對(duì)該系統(tǒng)的不足之處,基于LabVIEW開(kāi)發(fā)環(huán)境,融合嵌入式技術(shù)、OPC、LabVIEW web service、以太網(wǎng)通信等實(shí)現(xiàn)Rockwell-HOTS系統(tǒng)的優(yōu)化設(shè)計(jì)。具體內(nèi)容包括:(1)基于LabVIEW與嵌入式技術(shù)設(shè)計(jì)了Rockwell-HOTS監(jiān)控系統(tǒng),包括監(jiān)控器與監(jiān)控程序,提供了上位機(jī)和瀏覽器等多種方式實(shí)時(shí)監(jiān)控實(shí)驗(yàn)系統(tǒng)情況,降低了人力與物力成本,提高了可靠性;(2)在每套HOTS工控機(jī)上開(kāi)發(fā)基于LabVIEW的HOTS設(shè)備控制上位機(jī),可以方便的操作HOTS系統(tǒng)中的PLC、變頻器等設(shè)備,降低了使用門檻,擴(kuò)展應(yīng)用范圍,具備良好的可操作性。
圖1 Rockwell-HOTS實(shí)驗(yàn)系統(tǒng)圖
基于LabVIEW在工控機(jī)上開(kāi)發(fā)HOTS控制上位機(jī)實(shí)現(xiàn)對(duì)PLC、變頻器等設(shè)備的控制,HOTS采用Rockwell Micro850PLC,PF525變頻器,工控機(jī)上包含多個(gè)232接口,通過(guò)232/485方式與PLC、變頻器通信。采用OPC Server與OPC Client[3~4]的方式實(shí)現(xiàn)對(duì)PLC的控制功能,RSLink是Rockwell公司通用的通信配置程序,提供PLC產(chǎn)品和其它基于PC的應(yīng)用軟件如編程軟件、HMI軟件等的數(shù)據(jù)通訊驅(qū)動(dòng)和接口,數(shù)據(jù)的通信可以通過(guò)DDE/OPC實(shí)現(xiàn),支持遠(yuǎn)程OPC應(yīng)用與OPC Server,基于RSLink實(shí)現(xiàn)LabVIEW與PLC通信流程如圖2所示。
圖2 基于RSLink的通信流程圖
這里需要注意以下幾點(diǎn):(1) OPC Server中設(shè)置的地址與波特率要與PLC的一致;(2) 使用串口訪問(wèn)PLC時(shí),即使訪問(wèn)PLC中的某一位,也要使用byte類型,如果使用bool類型,則在OPC Server中的值不會(huì)發(fā)生變化。比如SBit_Bool和SBit都是關(guān)聯(lián)SM0.5這一位,SBit定義為Byte類型,而SBit_Bool定義為bool類型,在Quick Client中觀察到SBit_Bool的值始終不發(fā)生改變;(3) 使用串口進(jìn)行OPC Server的使用,如果波特率設(shè)置為9600會(huì)發(fā)現(xiàn)OPC Server中讀取到的值和實(shí)際值不匹配,變化速度比實(shí)際上慢,原因是波特率太低了,測(cè)試修改為19200即可;(4) 在LabVIEW中建立OPC Client 的IO Server,注意默認(rèn)的更新時(shí)間為1000ms,在很多場(chǎng)合都不能滿足需求,可以適當(dāng)把更新時(shí)間該小,這里設(shè)置為100ms。
工控機(jī)與變頻器采用RS232/485方式進(jìn)行通信,工控機(jī)為主機(jī),變頻器為從機(jī)。主要通信協(xié)議如下:03h:讀取保持寄存器;06h:寫入單個(gè)寄存器;10h:寫入多個(gè)寄存器。寄存器地址2000h:變頻器的控制指令;寄存器地址2001h:變頻器的通信頻率指令,以0.01Hz為單位;寄存器地址2100h:變頻器的邏輯狀態(tài);寄存器地址2101h:變頻器的錯(cuò)誤代碼;寄存器地址2102h到210Ah:變頻器的操作值。變頻器地址為01h,當(dāng)需要運(yùn)行頻率20Hz,0.01Hz為單位,應(yīng)寫入數(shù)值2000,轉(zhuǎn)換為十六進(jìn)制是7d0h,那么指令就是:01 06 2001 07d0,校驗(yàn)碼是從變頻器地址開(kāi)始到指令內(nèi)容結(jié)束求和,然后取2的補(bǔ)碼。所以上述指令的校驗(yàn)碼是:01h+06h+20h+01h+07h+d0h=ffh,然后取2的補(bǔ)碼=01h。所以最終發(fā)送的指令是:01 06 2001 07d0 01h。確定好指令后,在LabVIEW中利用VISA vis發(fā)送指令實(shí)現(xiàn)控制功能,用到了VISA配置串口,讀取與寫入,關(guān)閉等vis。具體的流程如下:基于232/485方式的通信首先需要設(shè)定串口參數(shù),比如端口號(hào),數(shù)據(jù)的位數(shù),波特率,校驗(yàn)停止位等等,設(shè)定參數(shù)完成端口的初始化操作,之后就可以寫入對(duì)變頻器的指令,針對(duì)寫入指令變頻器會(huì)有不同的返回信息,可以通過(guò)VISA讀取,通信結(jié)束后關(guān)閉串口,結(jié)束整個(gè)過(guò)程。
2.2.1 硬件設(shè)計(jì)
監(jiān)控器是監(jiān)控系統(tǒng)的硬件單元,借助各種環(huán)境傳感器監(jiān)控Rockwell-HOTS實(shí)驗(yàn)系統(tǒng)的環(huán)境情況。硬件結(jié)構(gòu)如圖3所示,由信息處理模塊和供電模塊組成:(1)信息處理模塊是硬件的核心單元,包括信號(hào)調(diào)理電路、模擬/數(shù)字轉(zhuǎn)換電路、光信號(hào)隔離電路、微處理器及周邊電路、傳感器電路、液晶顯示電路和無(wú)線網(wǎng)卡電路等??紤]到可能存在的各種干擾的影響,傳感器電路將溫濕度等非電信號(hào)轉(zhuǎn)換成電信號(hào)后,首先經(jīng)過(guò)信號(hào)調(diào)理與光耦隔離,提高了信號(hào)的精度與可靠性,再傳輸給AD進(jìn)行采樣。無(wú)線網(wǎng)卡電路在核心處理器STM32F103VET6的控制下進(jìn)行數(shù)據(jù)的傳輸?shù)墓ぷ鳎壕э@示面板可以實(shí)時(shí)顯示實(shí)驗(yàn)系統(tǒng)的環(huán)境信息;(2)實(shí)驗(yàn)系統(tǒng)提供了220V的交流電,所以采用降壓-整流-濾波-穩(wěn)壓的原理設(shè)計(jì)。光信號(hào)隔離電路要求兩端供電不共地,所以在設(shè)計(jì)中應(yīng)用了隔離模塊,LDO輸出供給AD等精密器件。
圖3 監(jiān)控器硬件結(jié)構(gòu)
圖4 數(shù)據(jù)發(fā)送與接收流程圖
2.2.2 軟件設(shè)計(jì)
系統(tǒng)軟件由下位機(jī)與上位機(jī)程序構(gòu)成。下位機(jī)程序運(yùn)行在監(jiān)控器,主要功能包括:(1)通過(guò)溫濕度等環(huán)境傳感器周期性的采集環(huán)境信息;(2)通過(guò)無(wú)線網(wǎng)絡(luò)傳輸給監(jiān)控上位機(jī)。數(shù)據(jù)發(fā)送與接收流程圖如圖4所示[5~6]。以溫濕度傳感器DHT11為例,監(jiān)控器上電初始化之后,由于不穩(wěn)定狀態(tài)的存在,一般需要等待1s后開(kāi)始采集工作,不穩(wěn)定狀態(tài)期間不發(fā)送命令。需要注意的是,DHT11傳感器一開(kāi)始處于低功耗模式,在STM32F103VET6發(fā)送一次開(kāi)始信號(hào)后,DHT11切換到高速模式,開(kāi)始信號(hào)發(fā)送完畢,DHT11發(fā)送響應(yīng)信號(hào)并觸發(fā)一次信號(hào)采集。DHT11在沒(méi)有接收到開(kāi)始信號(hào)的前提下不會(huì)進(jìn)行溫濕度采集,采集動(dòng)作完成后DHT11自動(dòng)轉(zhuǎn)換到低速模式。監(jiān)控器上設(shè)計(jì)了液晶顯示面板,移植μC/OS-Ⅲ操作系統(tǒng)提供了就地顯示功能。源代碼可以在Micrium官網(wǎng)下載,找到STMicroelectronics,選擇Keil MDK平臺(tái)、在Cortex-M3內(nèi)核MCU評(píng)估板上測(cè)試的μC/OS-Ⅲ源碼。將μC/OS-Ⅲ源碼移植到監(jiān)控器后為了保證移植成功,需要選擇一個(gè)硬件定時(shí)器驅(qū)動(dòng)SysTick (μC/OS-Ⅲ的時(shí)基時(shí)鐘)帶動(dòng)μC/OS-Ⅲ的運(yùn)行??梢栽趹?yīng)用中調(diào)用μC/OS-Ⅲ的延時(shí)函數(shù)測(cè)試延時(shí)時(shí)間是否正確,正確即說(shuō)明系統(tǒng)移植成功,如圖5所示。
圖5 監(jiān)控器
圖6 基于LabVIEW的變頻器控制
圖7 基于LabVIEW的監(jiān)控上位機(jī)
LabVIEW是NI公司的虛擬儀器平臺(tái)開(kāi)發(fā)軟件,采用了圖形化編程語(yǔ)言,簡(jiǎn)單易學(xué),開(kāi)發(fā)效率高,在高校及企事業(yè)單位得到了廣泛的應(yīng)用?;贚abVIEW開(kāi)發(fā)的監(jiān)控上位機(jī)包括如下功能:(1)數(shù)據(jù)顯示,實(shí)時(shí)顯示當(dāng)前環(huán)境的溫濕度、視頻等信息;(2)報(bào)警指示,根據(jù)各種環(huán)境傳感器的采樣信息(包括CO2、火焰、煙霧等)判斷是否超出上下限數(shù)值,如果是則指示燈會(huì)變紅;(3)數(shù)據(jù)通信,實(shí)現(xiàn)與監(jiān)控器之間的數(shù)據(jù)傳輸。基于LabVIEW的web service提供基于瀏覽器端的訪問(wèn)功能,管理人員可借助瀏覽器實(shí)現(xiàn)監(jiān)控功能。web publish tool[7]和內(nèi)置函數(shù)是LabVIEW提供了兩種web訪問(wèn)方式, LabVIEW的web publish tool與其他web服務(wù)器功能類似,為了正確的發(fā)布并通過(guò)瀏覽器成功訪問(wèn),需要注意如下問(wèn)題:(1) 進(jìn)入程序框圖面板的web服務(wù)器配置,勾選SSL選項(xiàng),同時(shí)在主機(jī)上查詢證書信息;(2) 進(jìn)入前面板框圖的web 發(fā)布工具,在這里將看到顯示器,內(nèi)嵌與快照等三種選擇模式,一般選擇內(nèi)嵌模式;(3)管理人員通過(guò)瀏覽器端進(jìn)行訪問(wèn)前需要將瀏覽器模式切換到兼容模式,否則無(wú)法正常顯示內(nèi)容,設(shè)置完成后只需在瀏覽器輸入U(xiǎn)RL即可。內(nèi)置函數(shù)使用前要先配置LabVIEW的web server,包括monitor與snap兩種函數(shù),其中monitor函數(shù)能夠發(fā)布動(dòng)態(tài)vis。這里選擇web publish tool提供web訪問(wèn),需要注意的是,web publish tool允許瀏覽器端用戶請(qǐng)求vi控制權(quán),當(dāng)瀏覽器端的用戶獲取控制權(quán)后,LabVIEW環(huán)境下會(huì)丟失控制權(quán)限。
針對(duì)Rockwell-HOTS實(shí)驗(yàn)系統(tǒng)的不足之處,在原有平臺(tái)的基礎(chǔ)上,通過(guò)適當(dāng)添加硬件設(shè)備,用LabVIEW取代原有CCW梯形圖編程方式開(kāi)發(fā)了實(shí)驗(yàn)設(shè)備控制上位機(jī)與監(jiān)控上位機(jī),如圖6-7所示。方便了用戶操作,提高了系統(tǒng)的可靠性,降低了維護(hù)成本,在教學(xué)和經(jīng)濟(jì)方面都具有重要意義。同時(shí),由于采用了OPC進(jìn)行通信,現(xiàn)有OPC只能在Windows平臺(tái)下運(yùn)用,在跨平臺(tái)等方面存在不足,OPC基金會(huì)提出了OPC UA,能夠?qū)PC技術(shù)拓展到Linux、Unix、Mac等平臺(tái),具備較好的跨平臺(tái)性,并且在通信性能、安全性、可靠性等方面有了更好提升。因此,下一步可以進(jìn)行的研究工作包括:(1)基于OPC UA實(shí)現(xiàn)應(yīng)用的跨平臺(tái)性,進(jìn)一步提高系統(tǒng)的可靠性。(2)基于LabVIEW針對(duì)HOTS實(shí)驗(yàn)平臺(tái)開(kāi)發(fā)更多的控制功能。(3)界面的美化。