楊 旭
(安徽電子信息職業(yè)技術(shù)學(xué)院 信息工程學(xué)院,安徽 蚌埠 233000)
傳統(tǒng)工業(yè)中,自動化生產(chǎn)設(shè)備的管理和運(yùn)營主要靠人工經(jīng)驗(yàn)來判斷和維護(hù),該模式消耗了大量的人力和物力,直接導(dǎo)致工業(yè)生產(chǎn)領(lǐng)域的成本居高不下,降低了工業(yè)產(chǎn)品的社會競爭力.隨著工業(yè)互聯(lián)網(wǎng)技術(shù)的發(fā)展,利用物聯(lián)網(wǎng)技術(shù)實(shí)現(xiàn)工業(yè)設(shè)備運(yùn)行狀態(tài)的智能感知和智能管理成為智能制造的新趨勢[1].
基于ZigBee協(xié)調(diào)器和4G無線模塊SIM900A的工業(yè)設(shè)備遠(yuǎn)程感知與監(jiān)控系統(tǒng)采用了核心控制單片機(jī)、零磁通式電流傳感器和無線通信模塊,實(shí)現(xiàn)了工業(yè)設(shè)備的狀態(tài)信息遠(yuǎn)程采集與感知,大大降低了人力成本和工業(yè)生產(chǎn)成本,提高了工業(yè)設(shè)備的智能化管理水平和管理效率[2].
工業(yè)設(shè)備遠(yuǎn)程感知與監(jiān)控系統(tǒng)主要通過隨機(jī)采集工業(yè)設(shè)備電源電流工作狀態(tài),從而實(shí)現(xiàn)工業(yè)生產(chǎn)設(shè)備的異常檢測[3].
該系統(tǒng)主要包括了:①零磁通式電流傳感器.實(shí)現(xiàn)對電源線中隨機(jī)電流的數(shù)據(jù)采集,傳感器類型主要分為輸出4~20 mA或0~5 V兩種類型;②信號預(yù)處理.傳感采集的模擬數(shù)據(jù)通過預(yù)處理轉(zhuǎn)換成為數(shù)字信號;③STM32F103R6T6核心芯片.數(shù)據(jù)存儲與電信號A/D狀態(tài)轉(zhuǎn)換核心功能,并同時實(shí)現(xiàn)工業(yè)設(shè)備工作狀態(tài)的電子屏實(shí)時顯示;④5G通訊模塊.工業(yè)設(shè)備用戶可以通過客戶端軟件界面,利用無線通訊技術(shù),實(shí)現(xiàn)工業(yè)設(shè)備的遠(yuǎn)程操作命令下發(fā).
該模塊打通了工業(yè)設(shè)備與客戶端之間的實(shí)時交流數(shù)據(jù)傳輸通道,實(shí)現(xiàn)了工業(yè)設(shè)備遠(yuǎn)程感知與監(jiān)控系統(tǒng)的整體數(shù)據(jù)傳輸.工業(yè)設(shè)備遠(yuǎn)程感知與監(jiān)控系統(tǒng)的整體設(shè)計(jì)結(jié)構(gòu)如圖1所示.
圖1 工業(yè)設(shè)備遠(yuǎn)程感知與監(jiān)控系統(tǒng)的整體設(shè)計(jì)結(jié)構(gòu)
STM32F103R6T6主控芯片通過雙信息通道完成對數(shù)據(jù)預(yù)處理模塊上傳的隨機(jī)電流信號,通過ADC接口實(shí)現(xiàn)模擬信號的采集與數(shù)模轉(zhuǎn)換.引腳VDD可以與5G通訊模塊的數(shù)據(jù)傳輸接口進(jìn)行互聯(lián),并實(shí)現(xiàn)遠(yuǎn)程客戶端下發(fā)的操作命令解析與信息交互.VSS接口主要實(shí)現(xiàn)了多屏幕液晶LCD的界面顯示,將工業(yè)設(shè)備運(yùn)行狀態(tài)在監(jiān)控中心實(shí)時顯示.同時,STM32F103R6T6芯片高度集成了Flash運(yùn)算功能,可以實(shí)現(xiàn)設(shè)備控制主程序和工業(yè)設(shè)備監(jiān)測狀態(tài)數(shù)據(jù)的存儲[4].STM32F103R6T6芯片硬件結(jié)構(gòu)如圖2所示.
圖2 STM32F103R6T6芯片硬件結(jié)構(gòu)框圖
一般情況下,傳感器的電流轉(zhuǎn)換電路被集成在傳感器內(nèi)部,直接用于采集直流或者交流電數(shù)據(jù)[5].零磁通式電流傳感器使用了閉合結(jié)構(gòu)的磁條芯片,零磁通式傳感器件設(shè)計(jì)在磁片正中心.當(dāng)隨機(jī)電流經(jīng)過張合磁片后,直流或交流電的狀態(tài)信息數(shù)據(jù)被傳感器感知采集.零磁通式電流傳感器的主要功能就是實(shí)現(xiàn)工業(yè)設(shè)備工作時隨機(jī)電流異常數(shù)據(jù)的采集.零磁通式電流傳感器技術(shù)連接方法如圖3所示.
圖3 零磁通式電流傳感器技術(shù)連接方式
為了盡量實(shí)現(xiàn)A/D轉(zhuǎn)換的準(zhǔn)確度,信號預(yù)設(shè)處理系統(tǒng)選用了lm358雙功能放大芯片作為電流放大器.另一電路是電壓工作放大器,雙工作放大器前級電路可實(shí)現(xiàn)4~20 mA或0~5 V信號輸入的兼容性.在這個系統(tǒng)中,M-I、M-V分別為零磁通式電流傳感器信號輸出的正極和電壓輸出[6],G為傳感器信號輸出的負(fù)極,AD0、AD1為放大器工作后電流信號和電壓信號的監(jiān)測點(diǎn).信號預(yù)處理電路的設(shè)計(jì)如圖4所示.
圖4 信號預(yù)處理電路設(shè)計(jì)圖
本系統(tǒng)采用4G模塊的網(wǎng)絡(luò)透傳模式完成客戶端遠(yuǎn)程配置指令的接收與應(yīng)答數(shù)據(jù)上傳,實(shí)現(xiàn)感知前端與遠(yuǎn)程客戶端之間的端到端無線通信[7].ZigBee協(xié)調(diào)器和4G模塊SIM900A結(jié)合成網(wǎng)關(guān)一起工作,SIM900A 硬件圖和遠(yuǎn)程發(fā)送數(shù)據(jù)流程如圖5所示.
圖5 SIM900A 硬件圖和遠(yuǎn)程發(fā)送數(shù)據(jù)流程
主控程序設(shè)計(jì)包括主函數(shù)、定時器轉(zhuǎn)換、串口收發(fā)器、LCD屏顯、閃存寫入、數(shù)據(jù)類型轉(zhuǎn)換和指令分析等.以高污染工業(yè)空氣凈化設(shè)備濾芯的使用壽命監(jiān)測為例[8],系統(tǒng)通電后執(zhí)行初始化和全局中斷功能,以確定閃存是否第一次運(yùn)行.如果執(zhí)行第一次操作,默認(rèn)設(shè)置將寫入系統(tǒng)配置功能;否則將讀取上次使用時存儲的閃存設(shè)置.當(dāng)系統(tǒng)檢測到過濾器組件處于工作狀態(tài)時,系統(tǒng)將進(jìn)入倒計(jì)時模式,實(shí)時過濾器數(shù)據(jù)的壽命將存儲預(yù)設(shè)過濾器的初始壽命.遠(yuǎn)程客戶端發(fā)送指令和接收到指令后,系統(tǒng)識別分析指令并實(shí)時顯示在顯示屏上[8].如果讀取閃存剩余時間,則下載閃存數(shù)據(jù).如果更換閃存后設(shè)置了指令剩余工作時間,則刪除存儲閃存.微控制器讀取新數(shù)據(jù)后,顯示屏在LCD上顯示兩通道濾芯設(shè)備的工作狀態(tài)和剩余可用時間.軟件流程主結(jié)構(gòu)設(shè)計(jì)如圖6所示.
圖6 軟件流程主結(jié)構(gòu)設(shè)計(jì)
零磁通式電流傳感器輸出的模擬信號由于電壓范圍的原因,設(shè)計(jì)了兩路輸出模擬信號.該信號經(jīng)過電流預(yù)處理模塊的轉(zhuǎn)換后,仍然為兩路互不干擾的電壓信號.STM32F103R6T6主芯片提供了8路電流輸入與輸出通道,在A/D采集轉(zhuǎn)換中使用了多通道并行模式,傳感器的雙路電流信號系統(tǒng)完全滿足數(shù)據(jù)傳輸與采集要求.數(shù)據(jù)采集之后A/D轉(zhuǎn)換程序?yàn)椋?/p>
ADC12CTL0=ADC12ON+SHT0 _ 15+MSC ;
ADC12CTL1=SHP+CONSEQ _ 1 ;
ADC12MCTL0|=INCH _ 0 ;
ADC12MCTL1|=INCH _ 1+EOS ;
零磁通式電流傳感器的雙路數(shù)模轉(zhuǎn)換電流數(shù)
據(jù)與系統(tǒng)正常電流設(shè)置閾值對比,可準(zhǔn)確判斷工業(yè)設(shè)備運(yùn)行狀態(tài)異常與否.判斷對比程序如下:
value0=ADC12MEM0 ;
if ( value0>ADValue )
RunInfo.Dev1 _ State=DEV1 _ ON ;
else
RunInfo.Dev1 _ State=DEV1 _ OFF
為了實(shí)現(xiàn)系統(tǒng)遠(yuǎn)程感知和監(jiān)管功能,4G數(shù)據(jù)透傳與STM32F103R6T6主芯片串口數(shù)據(jù)接收與發(fā)送程序指令的下發(fā)與應(yīng)答是保障無線傳輸功能的關(guān)鍵.在指定波特率條件下,利用STM32F103R6T6定時器設(shè)計(jì)了數(shù)據(jù)幀接收時長和時隙的接收判定機(jī)制,串口通信數(shù)據(jù)接收判定機(jī)制如圖7所示.
圖7 串口通信數(shù)據(jù)接收判定機(jī)制
串口通信的初始化函數(shù)實(shí)現(xiàn)了時鐘初始化、計(jì)時模式初始化和中斷響應(yīng)初始化的設(shè)置,其中電流閾值為CCR0=200 Ah.當(dāng)傳感器采集的數(shù)據(jù)經(jīng)過預(yù)處理之后進(jìn)入單片機(jī)主芯片,系統(tǒng)啟動數(shù)據(jù)接收機(jī)制并同時啟動計(jì)時器.當(dāng)電流CCR0增至設(shè)定值時,定時器啟動中斷響應(yīng)并置0.讓RecOK=1時,表明傳感器采集預(yù)處理數(shù)據(jù)接收完畢,定時器關(guān)閉并重置CCR0為初始值.串口通訊定時器機(jī)制程序如下:
RecOK=1 ;
TACTL&= ( MC0+MC1 );
CCR0=200
為了實(shí)現(xiàn)傳感器采集工業(yè)設(shè)備數(shù)據(jù)的參數(shù)配置和設(shè)備運(yùn)行狀態(tài)的可視化,設(shè)計(jì)了基于零磁通式電流傳感器的工業(yè)設(shè)備遠(yuǎn)程感知與監(jiān)控系統(tǒng)的客戶端軟件.該軟件的功能涵蓋了交互UI界面、服務(wù)器與前端的連接狀態(tài)、傳感器采集參數(shù)的設(shè)置、跨網(wǎng)數(shù)據(jù)傳輸?shù)膱笪慕馕鰠f(xié)議.客戶端軟件交互流程、服務(wù)器IP設(shè)置和網(wǎng)絡(luò)設(shè)置如圖8所示.
圖8 客戶端軟件設(shè)計(jì)流程和后臺服務(wù)器設(shè)置
客戶端通過UI可以實(shí)現(xiàn)采集預(yù)處理工業(yè)設(shè)備數(shù)據(jù)狀態(tài)查看,對傳感器采集端進(jìn)行參數(shù)配置和操作指令的下發(fā)與收集.客戶端軟件UI界面如圖9所示.
圖9 客戶端軟件UI界面
工業(yè)設(shè)備遠(yuǎn)程感知與監(jiān)控系統(tǒng)通過零磁通式電流傳感器實(shí)現(xiàn)了對電源線中隨機(jī)電流的數(shù)據(jù)采集,信號預(yù)處理模塊實(shí)現(xiàn)了傳感采集的模擬數(shù)據(jù)通過預(yù)處理轉(zhuǎn)換成為數(shù)字信號的過程,STM32F103R6T6數(shù)據(jù)存儲與電信號A/D狀態(tài)轉(zhuǎn)換核心功能.利用無線通訊技術(shù),4G通訊模塊實(shí)現(xiàn)工業(yè)設(shè)備遠(yuǎn)程操作命令的下發(fā),打通了工業(yè)設(shè)備與客戶端之間的實(shí)時交流數(shù)據(jù)傳輸通道,實(shí)現(xiàn)了工業(yè)設(shè)備遠(yuǎn)程感知與監(jiān)控系統(tǒng)的整體數(shù)據(jù)傳輸.