黃 健,鐘益民,方 挺,李文欽
(安徽工業(yè)大學(xué) 電氣與信息工程學(xué)院,安徽 馬鞍山 243000)
過熱是最常見的電機故障之一.引起電機過熱故障的原因有很多,過熱故障表觀性差且故障惡化較快.因此,監(jiān)測電機的溫度變化對于保證電機正常運行和分析電機故障原因尤為重要[1].
大容量的電機常常在軸承、繞組等部位安裝鉑熱電阻傳感器,并引出到電機外殼的傳感器接線盒中,然后通過電纜送至溫度顯示儀表.普遍使用的中小容量電機沒有自帶測溫裝置,在運行的過程中通過紅外測溫的方法,人工測量軸承室外部的溫度,這種監(jiān)測方法往往是通過人工巡回定檢,不能連續(xù)、實時地監(jiān)測電機的溫度變化[2].
隨著無線通信技術(shù)的飛速發(fā)展,無線傳感器網(wǎng)絡(luò)(Wireless Sensor Networks,WSNs) 在各個領(lǐng)域得到了廣泛應(yīng)用[3].Zigbee通信在工業(yè)上也被普遍使用,由于 Zigbee 技術(shù)的通信頻率高,所以信號傳輸中衰減非???Zigbee傳輸距離短,且無法同時兼顧抗干擾和低功耗[4].相比于Zigbee通信,LoRa(Long Range)通信既能滿足大量連接需求,且節(jié)點無需時刻處于監(jiān)聽狀態(tài),在保證遠(yuǎn)距離通信傳輸?shù)耐瑫r,可以最大限度地降低功耗.
通過LoRa無線傳感網(wǎng)絡(luò)組成工業(yè)電機在線測溫系統(tǒng),利用LoRa無線通信技術(shù)完成終端節(jié)點和網(wǎng)關(guān)節(jié)點的通信.LoRa 是一種新型無線通信技術(shù),利用了先進的擴頻調(diào)制技術(shù)和編解碼方案,增加了鏈路預(yù)算和更好的抗干擾性能,對深度衰落和多普勒頻移具有更好的穩(wěn)定[5].LoRa作為LPWAN(Low-Power Wide-Area Network)的一種長距離通信技術(shù),解決了傳統(tǒng)無線傳感網(wǎng)絡(luò)傳輸距離遠(yuǎn)與低功耗不能兼得的問題,具有低功耗、抗干擾能力強和通信距離遠(yuǎn)的特點[5].本文基于LoRa無線通信技術(shù)設(shè)計了LoRa無線傳感網(wǎng)絡(luò),系統(tǒng)運行一套低功耗的組網(wǎng)算法,使用自主設(shè)計專用的通訊協(xié)議,用于工業(yè)電機溫度測量.系統(tǒng)無需鋪設(shè)電纜,用較低的成本對工業(yè)現(xiàn)場的電機群實現(xiàn)在線溫度監(jiān)測,通信距離遠(yuǎn),終端節(jié)點功耗低,并且有維護簡單、使用靈活等優(yōu)勢,有廣泛的應(yīng)用前景.
整個系統(tǒng)包括多個測量集群,每個測量集群由1個網(wǎng)關(guān)節(jié)點和多個終端節(jié)點組成[6].每個測量集群會被分配1個頻段,確保不同的測量集群之間不會相互干擾,不同測量集群相互獨立工作.終端節(jié)點集成了溫度傳感器,將溫度傳感器部分固定在工業(yè)電機待測溫部分,就能夠?qū)I(yè)電機的溫度進行測量,通過LoRa模塊將溫度數(shù)據(jù)發(fā)送至網(wǎng)關(guān)節(jié)點.網(wǎng)關(guān)節(jié)點具有較強數(shù)據(jù)處理能力和較大的存儲空間,網(wǎng)關(guān)節(jié)點會將終端節(jié)點發(fā)送的溫度數(shù)據(jù)進行打包處理并通過RS-485總線上傳至上位機.網(wǎng)關(guān)節(jié)點集成了Modbus通信協(xié)議,并通過Modbus通訊協(xié)議與上位機通信,這使得網(wǎng)關(guān)節(jié)點能夠便捷地接入工業(yè)控制網(wǎng)絡(luò).終端節(jié)點與網(wǎng)關(guān)節(jié)點通過LoRa無線通信技術(shù)組成LoRa無線傳感器網(wǎng)絡(luò),并通過本文設(shè)計的組網(wǎng)通信協(xié)議和組網(wǎng)算法實現(xiàn)通信,因此系統(tǒng)具有較強的抗干擾能力,有效防止同頻串?dāng)_,并且具有組網(wǎng)便捷的優(yōu)勢.系統(tǒng)總體結(jié)構(gòu)如圖1所示.
圖1 系統(tǒng)總體結(jié)構(gòu)
終端節(jié)點由數(shù)字溫度傳感器DS18B20、微控制器STM32L51C8T6、LoRa無線通信模塊(基于射頻芯片SX1278)、3.6V鋰電池組成.STM32L51C8T6內(nèi)部集成了2 KB的嵌入式EEPROM,用于終端節(jié)點的數(shù)據(jù)存儲.終端節(jié)點的硬件結(jié)構(gòu)如圖2所示.
終端節(jié)點采用電池供電,電池能量有限,所以終端節(jié)點必須要能夠低功耗運行.終端節(jié)點的基本工作模式是休眠—工作—休眠循環(huán)執(zhí)行,以降低終端節(jié)點的功耗.
終端節(jié)點在休眠狀態(tài)中,微控制器通過MOSFET關(guān)斷DS18B20和LoRa模塊的電源,然后微控制器進入低功耗狀態(tài),選擇STOP模式+RTC(real time clock)的低功耗模式,工作電流為1.2 μA,RTC用于定時將微控制器喚醒.微控制器在運行模式下工作電流為 214 μA/MHz,最大系統(tǒng)時鐘頻率為32 MHz,在保證終端節(jié)點正常工作的前提下,將微控制器的系統(tǒng)配置為8 MHz,此時微控制器在運行模式下的工作電流為1.712 mA.
圖2 終端節(jié)點硬件結(jié)構(gòu)
為保證終端節(jié)點測量溫度數(shù)據(jù)的可靠性,每一次數(shù)據(jù)采集過程中,通過DS18B20采集1組數(shù)據(jù){T1,T2,T3,T4,T5},對這組數(shù)據(jù)執(zhí)行排序算法,去掉最大值和最小值,對剩余數(shù)據(jù)進行平均處理,最后得到溫度數(shù)據(jù),從而避免終端節(jié)點因為受到外界干擾等因素而上傳錯誤的溫度數(shù)據(jù).
網(wǎng)關(guān)節(jié)點由微控制器STM32F103C8T6、LoRa無線通信模塊、存儲器W25Q32、RS-485通信模塊、電源管理模塊、串口組成.網(wǎng)關(guān)節(jié)點的硬件結(jié)構(gòu)如圖3所示.
圖3 網(wǎng)關(guān)節(jié)點硬件結(jié)構(gòu)
網(wǎng)關(guān)節(jié)點相對于終端節(jié)點有更強的數(shù)據(jù)處理能力和數(shù)據(jù)存儲能力.網(wǎng)關(guān)配置了容量為4 MB的Flash存儲器W25Q32,用于存儲終端節(jié)點的配置信息與溫度數(shù)據(jù).
網(wǎng)關(guān)節(jié)點為每個終端節(jié)點分配2 KB的存儲空間,用于存儲溫度數(shù)據(jù).網(wǎng)關(guān)節(jié)點需要維護一個配置表,這個配置表包含了LoRa無線傳感網(wǎng)絡(luò)中所有的終端節(jié)點的地址,并且將終端節(jié)點的地址和溫度數(shù)據(jù)存儲空間一一對應(yīng),這使得每次從終端節(jié)點上傳的溫度數(shù)據(jù)總是能夠被存放在一個固定的存儲空間,這樣才能保證網(wǎng)關(guān)節(jié)點能夠有序地存儲溫度數(shù)據(jù)和處理溫度數(shù)據(jù).配置表的內(nèi)容可以通過串口進行更新,從而實現(xiàn)終端節(jié)點的增加和刪除.如果終端節(jié)點的地址在配置表中被刪除,那么終端節(jié)點發(fā)送的數(shù)據(jù)將不會被網(wǎng)關(guān)節(jié)點接收,此時終端節(jié)點屬于退出網(wǎng)絡(luò)狀態(tài).
網(wǎng)關(guān)節(jié)點采用12 V直流電源供電,內(nèi)部電壓管理模塊將12 V直流電降壓為5 V直流電和3.3 V直流電,供給網(wǎng)關(guān)節(jié)點的不同模塊工作.
無線組網(wǎng)不同于有線組網(wǎng),由于終端節(jié)點的能量限制問題,無線組網(wǎng)對于低功耗有更高的要求,一般的有線組網(wǎng)方法并不適合無線組網(wǎng).對于無線組網(wǎng)方法,不同的應(yīng)用有不同的特點,需要設(shè)計不同的組網(wǎng)方法.
系統(tǒng)是由終端節(jié)點和網(wǎng)關(guān)節(jié)點組成了LoRa無線傳感網(wǎng)絡(luò),系統(tǒng)采用星型網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu),終端節(jié)點和網(wǎng)關(guān)節(jié)點之間形成多對一的映射關(guān)系.星型網(wǎng)絡(luò)拓?fù)浣Y(jié)果相對網(wǎng)格型網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)沒有復(fù)雜的路由開銷,系統(tǒng)的功耗更低.由于LoRa調(diào)制技術(shù)的特點,在簡單的星型網(wǎng)絡(luò)下,同樣能夠使系統(tǒng)獲得一個比較寬泛的覆蓋面積.
在星型網(wǎng)絡(luò)結(jié)構(gòu)下,必然要面對數(shù)據(jù)傳輸沖突,隱蔽終端問題[8].為了解決這些問題,本文設(shè)計了組網(wǎng)通信協(xié)議和低功耗組網(wǎng)算法,使得系統(tǒng)具有比較低的功耗,終端節(jié)點獲得了更長的生命周期.
系統(tǒng)的組網(wǎng)通訊協(xié)議定義了數(shù)據(jù)包的格式以及功能碼的類型,功能碼數(shù)據(jù)包的功能解析及功能得以實現(xiàn).這里借鑒了Modbus通信協(xié)議的設(shè)計思想,根據(jù)LoRa無線傳感網(wǎng)絡(luò)的具體應(yīng)用要求及特點作出了改進和設(shè)計[9].表1給出了組網(wǎng)通信協(xié)議的數(shù)據(jù)包格式.
每個數(shù)據(jù)包占用8個字節(jié).終端地址由2個字節(jié)組成,是終端節(jié)點接入LoRa無線傳感網(wǎng)絡(luò)的身份辨識,所以終端地址是唯一確定的.網(wǎng)關(guān)節(jié)點在解析數(shù)據(jù)包時,需要通過終端地址來判斷數(shù)據(jù)來源,終端節(jié)點在接收到數(shù)據(jù)包時,需要通過終端地址來判斷是否為本機命令,如果不是本機命令,則不會響應(yīng).
表1 數(shù)據(jù)包格式
數(shù)據(jù)包中的功能碼采用1個字節(jié)表示,最多可支持256種功能碼.在本文設(shè)計的通訊協(xié)議中,只規(guī)定了部分功能碼的功能,以滿足實際網(wǎng)絡(luò)通信的需求,其他預(yù)留功能碼可以用來擴充系統(tǒng)的功能.
終端節(jié)點定時喚醒,向網(wǎng)關(guān)節(jié)點發(fā)送數(shù)據(jù),所有的終端節(jié)點的喚醒時間是一樣的.隨著終端節(jié)點的增加,終端節(jié)點向網(wǎng)關(guān)發(fā)送數(shù)據(jù)的時間段將會重疊,造成數(shù)據(jù)的丟失,通過執(zhí)行如圖4所示的組網(wǎng)算法可以有效降低數(shù)據(jù)丟失的問題.基于終端節(jié)點能量低功耗的設(shè)計要求,所以系統(tǒng)對于退避次數(shù)作了限制,避免頻繁掃描信道,以降低功耗.
終端節(jié)點在作信道檢測的過程中,可能存在隱蔽終端的問題,即存在一個終端在網(wǎng)關(guān)可視范圍之內(nèi),卻不在當(dāng)前作信道檢測的終端節(jié)點的可視范圍之內(nèi),如果此時隱蔽終端在發(fā)生數(shù)據(jù),將會導(dǎo)致當(dāng)前終端節(jié)點發(fā)送數(shù)據(jù)失敗.所以在圖4算法中,增加了網(wǎng)關(guān)確認(rèn)指令,如果網(wǎng)關(guān)節(jié)點接收到了終端節(jié)點發(fā)送的數(shù)據(jù)包,則返回“確認(rèn)指令”,終端節(jié)點通過確認(rèn)指令判斷是否成功發(fā)送數(shù)據(jù).
圖4 組網(wǎng)算法流程
終端節(jié)點在實際應(yīng)用時被分布在不用的地理位置,不同的終端節(jié)點與網(wǎng)關(guān)節(jié)點的距離是不同的,而終端節(jié)點的發(fā)射功率正比于傳輸距離,發(fā)射功率設(shè)置過小,會導(dǎo)致數(shù)據(jù)無法被傳輸至網(wǎng)關(guān)節(jié)點,發(fā)射功率過大,會造成沒有必要的功率損耗,所以需要根據(jù)不同的分布位置動態(tài)地調(diào)整發(fā)射功率,這樣能夠降低系統(tǒng)的整體功耗.終端節(jié)點在開機之后就會執(zhí)行一個發(fā)射功率適配進程,終端節(jié)點內(nèi)部集成了3套發(fā)射功率配置方案,發(fā)射功率按照編號1~3逐次遞增,分別適用于近程、中程和遠(yuǎn)程,用來給處在不同地理位置的終端節(jié)點作不同的發(fā)射功率配置,確定實際工作所需要的匹配的最優(yōu)發(fā)射功率.發(fā)射功率的優(yōu)化算法程序流程如圖5所示.
圖5 發(fā)射功率優(yōu)化算法流程
針對特定的應(yīng)用,可以通過調(diào)整擴頻因子、調(diào)制帶寬及糾錯編碼率這3個關(guān)鍵設(shè)計參數(shù)對LoRa 調(diào)制技術(shù)進行優(yōu)化,從而在鏈路預(yù)算、抗干擾性、頻譜占用度及標(biāo)稱數(shù)據(jù)速率之間達到平衡[10].擴頻因子越大,抗干擾能力越強,能傳輸?shù)迷竭h(yuǎn).調(diào)制帶寬越大,接收靈敏度越低,無法傳輸太遠(yuǎn).
系統(tǒng)在測試過程中,將LoRa的參數(shù)調(diào)整為:帶寬7.8 KHz,擴頻因子12,糾錯編碼率4/5.
終端節(jié)點有3種工作狀態(tài):休眠狀態(tài)、數(shù)據(jù)發(fā)送狀態(tài)、數(shù)據(jù)接收狀態(tài).分別對3種工作狀態(tài)進行電流測試.
分別對系統(tǒng)在3種工作模式的電流進行測試.分別設(shè)置發(fā)射功率為+13、+17、+20 dBm,發(fā)送電流依次為36、93、125 mA,平均休眠電流為10.3 μA,平均接收電流為38.7 mA.
測試距離為終端節(jié)點至網(wǎng)關(guān)節(jié)點的直線距離,終端節(jié)點向網(wǎng)關(guān)節(jié)點發(fā)送20個數(shù)據(jù)包,通過上位機軟件來統(tǒng)計網(wǎng)關(guān)節(jié)點接收到數(shù)據(jù)包的數(shù)量,來計算丟包率.丟包率為未接收到的數(shù)據(jù)包的數(shù)量與發(fā)送的數(shù)據(jù)包總數(shù)的比值.測試結(jié)果如表2所示.
表2 丟包率測試結(jié)果
由表2可知,終端節(jié)點與網(wǎng)關(guān)節(jié)點在1 100 m以內(nèi)有良好的通信,超過1 700 m后終端節(jié)點和網(wǎng)關(guān)很難通信成功.在實際使用的過程中,應(yīng)該保證終端節(jié)點與網(wǎng)關(guān)的距離在1 100 m以內(nèi),以獲得良好的通信.
本文通過LoRa無線通信技術(shù)搭建LoRa無線傳感網(wǎng)絡(luò)應(yīng)用于工業(yè)電機溫度監(jiān)測,介紹了系統(tǒng)總體架構(gòu)、軟硬件設(shè)計的詳細(xì)方案.系統(tǒng)采用星型網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu),在此基礎(chǔ)上設(shè)計了組網(wǎng)的通信協(xié)議,并設(shè)計了低功耗的組網(wǎng)算法.系統(tǒng)測試表明,系統(tǒng)具有低功耗、通信距離遠(yuǎn)、組網(wǎng)便捷等特點.
系統(tǒng)的終端節(jié)點采用定時喚醒的方式向網(wǎng)絡(luò)上傳數(shù)據(jù),通過組網(wǎng)算法能夠有效避免數(shù)據(jù)沖突導(dǎo)致的數(shù)據(jù)包丟失.使用本文中的組網(wǎng)算法能夠滿足低功耗的要求,但是降低了系統(tǒng)的數(shù)據(jù)吞吐量,在網(wǎng)絡(luò)中單個網(wǎng)關(guān)掛載的終端節(jié)點的數(shù)量多時,如果終端上傳數(shù)據(jù)的速率過于頻繁,則會導(dǎo)致大量數(shù)據(jù)被舍棄.系統(tǒng)在提升數(shù)據(jù)吞吐量上還需要做出完善,可以在網(wǎng)關(guān)節(jié)點上使用多信道的射頻芯片,網(wǎng)關(guān)節(jié)點能夠同時在多個信道上接收數(shù)據(jù),從而提升網(wǎng)絡(luò)的數(shù)據(jù)吞吐量.
通過低功耗、遠(yuǎn)距離傳輸?shù)?LoRa無線傳感網(wǎng)絡(luò)監(jiān)測工業(yè)電機的溫度,可以在線監(jiān)測電機的溫度變化,對于保證電機的正常運行分析電機故障原因有著重大意義,具有廣泛的應(yīng)用前景.