李偉杰,戴亞文
(武漢理工大學 理學院,武漢 430070)
隨著信息技術的發(fā)展,數據傳輸經歷了從有線到無線的轉變,無線局域網技術包括ZigBee,Wi-Fi,Bluetooth等在工業(yè)控制、環(huán)境監(jiān)測等領域都得到了廣泛應用[1]。由于無線局域網技術頻率高,無線信號衰減快,傳輸距離較短,同時普遍共用2.4 G頻段,沖突和干擾也不可避免。一般工業(yè)現場環(huán)境較復雜、分布不集中、作業(yè)環(huán)境惡劣且加之強干擾源的存在,傳統(tǒng)的無線技術面臨著新的挑戰(zhàn)[2]。
與傳統(tǒng)的無線傳輸技術相比,低功耗廣域網LPWAN(low power wide area network)技術是一種以低數據傳輸率進行遠距離通信的低功耗廣域網絡傳輸技術,具有距離遠、覆蓋范圍廣、功耗低、抗干擾性強等優(yōu)點,被廣泛應用于工業(yè)探測、農業(yè)監(jiān)測、水質監(jiān)測等領域[4-6],尤其針對長距離、低功耗和低數據傳輸速率的場合,具有很大優(yōu)勢。LoRa作為遠距離低功耗數據傳輸技術之一,是美國Semtech公司采取的一種基于擴頻通信的超長距離無線傳輸方案,它解決了傳統(tǒng)設計方案中無法同時兼顧距離、抗干擾和功耗的問題,提供一種簡單的實現遠距離、低功耗、大容量的方案,進而擴展無線傳感網絡,擁有廣泛的應用前景[7]。
本文針對工業(yè)溫度信息采集的實際應用需求,設計了一種基于LoRa的工業(yè)溫度無線采集系統(tǒng),實現對工業(yè)環(huán)境下監(jiān)測區(qū)域溫度參數的實時采集和監(jiān)控。系統(tǒng)實現了低功耗的硬件電路設計,并采用了競爭與時分復用相結合的組網方式和基于事件驅動的數據采集優(yōu)化算法,試驗結果表明該系統(tǒng)具有功耗低、傳輸距離遠、覆蓋范圍廣、傳輸穩(wěn)定等優(yōu)勢,目前已在柳州某鋼鐵廠安裝使用。
基于LoRa的工業(yè)溫度無線采集系統(tǒng)通過分布在工業(yè)監(jiān)測區(qū)域中各個監(jiān)測節(jié)點采集溫度、濕度等環(huán)境數據,然后將監(jiān)測數據發(fā)送至網關進而上傳至服務器,實現對工業(yè)環(huán)境中監(jiān)測區(qū)域溫度的采集和監(jiān)控。
基于LoRa的工業(yè)溫度無線采集系統(tǒng)主要由監(jiān)測節(jié)點、網關以及服務器3個部分構成。整體框圖如圖1所示。節(jié)點被分布在工業(yè)環(huán)境中的各個監(jiān)測點,實時采集監(jiān)測點的溫度信息,并將采集到的數據發(fā)送至網關,網關負責組網、時間同步以及對節(jié)點上傳數據的打包和處理,最后通過GPRS或者預留的串口、以太網接口上傳至服務器。最終,監(jiān)測人員可以通過PC終端實時監(jiān)測各個節(jié)點的環(huán)境參數信息。
圖1 系統(tǒng)整體框圖Fig.1 Overall block diagram of the system
節(jié)點部署方式涉及到整個系統(tǒng)網絡的組網規(guī)模和效率,是無線傳感網絡中非常重要的因素。合理的節(jié)點部署方式可以使系統(tǒng)具有更高的節(jié)點容量,更大的網絡覆蓋率以及更低的網絡能耗。星型網絡是各種網絡拓撲結構的組網基礎,它具有結構簡單、延遲低、組網容易等特點,可以降低通信協(xié)議的復雜度以及整個網絡的能耗[8-9]。
考慮到工業(yè)現場環(huán)境復雜、監(jiān)測區(qū)域覆蓋范圍廣、傳輸距離遠、節(jié)點數量龐大等特點,系統(tǒng)根據節(jié)點所屬不同的區(qū)域將節(jié)點劃分到不同的信道中,一個網關負責一個信道,同一信道中的網關和節(jié)點采用星型網絡結構,如圖2所示。相鄰的網關之間采用類蜂窩網絡結構完成對大面積工業(yè)區(qū)域的覆蓋,保持了終端節(jié)點電池電量以及整個系統(tǒng)網絡覆蓋范圍方面的優(yōu)勢。
圖2 網絡拓撲結構Fig.2 Diagram of network topology
同時采用競爭與分時相結合的組網方式來降低系統(tǒng)的功耗以及碰撞率。節(jié)點采用競爭的方式入網,在當前信道空閑時發(fā)送入網請求,否則將持續(xù)偵聽直到當前信道空閑。入網同步后則統(tǒng)一采用分時的方式進行數據發(fā)送以避免數據碰撞。
基于LoRa的工業(yè)溫度無線采集系統(tǒng)的硬件部分主要由監(jiān)測節(jié)點模塊和網關模塊構成。監(jiān)測節(jié)點負責工業(yè)現場溫度的采集和上傳至網關,網關則負責對節(jié)點的組網以及時間同步并將收到的數據進行處理和上傳至服務器,達到工業(yè)溫度無線采集和監(jiān)測的目的。
監(jiān)測節(jié)點模塊主要包括傳感器模塊、主控模塊、射頻模塊、電源管理模塊以及擴展接口。節(jié)點模塊框圖如圖3所示。
圖3 監(jiān)測節(jié)點框圖Fig.3 Block diagram of monitoring node
主控芯片采用意法半導體公司新推出的超低功耗系列芯片STSTM32L053R8,該款MCU基于ARM Cortex M0+內核,具有豐富的外設接口,主頻32 MHz,電源電壓為1.71 V~3.6 V,運行模式功耗為139 μA/Hz,停止模式下功耗僅為440 nA且保留RAM數據,3.5 μs喚醒時間。設計時采用32.768 kHz的外部晶振作為RTC喚醒時鐘源。
溫度傳感器采用DS18B20數字溫度傳感器,3~5.5 V供電,單線制串行接口,數字信號輸出,測溫范圍-55~+125 ℃,靜態(tài)功耗<3 μA,有體積小、超快響應、抗干擾能力強等優(yōu)點,被廣泛應用于鍋爐測溫、機房測溫、農業(yè)大棚測溫等各種場合。
射頻模塊采用Semtech公司推出的芯片SX1276,抗干擾性強,能夠最大限度降低電流消耗,具有+14 dBm的高效率功率放大器,9.9 mA的低接收電流以及200 nA的寄存器保持電流,通過SPI與主控芯片進行數據傳輸。
網關模塊主要包括主控單元、射頻模塊,以及為了獲得精確時間的GPS模塊,同時預留串口接口、以太網接口可根據用戶需求靈活連接至服務器,網關模塊框圖如圖4所示。網關模塊中主控芯片和射頻芯片的選擇與節(jié)點中相同。
圖4 網關模塊框圖Fig.4 Block diagram of gateway module
數據采集是無線傳感網絡中最重要的環(huán)節(jié),關系到整個系統(tǒng)的最終效果。根據網絡的工作模式可以分為周期性數據采集和事件驅動數據采集。周期性數據采集指監(jiān)測節(jié)點周期性采集周圍環(huán)境中的參數,按照固定時隙將數據上傳至網關;事件驅動數據采集通常是指監(jiān)測節(jié)點一般不發(fā)送數據至網關,當網絡中有事件發(fā)生時,監(jiān)測節(jié)點才向網關發(fā)送數據。事件驅動采集又可以分為外部事件驅動和內部事件驅動數據采集,外部事件驅動數據采集表現為當網關向節(jié)點發(fā)送一定的查詢指令時,節(jié)點才向網關發(fā)送采集數據;而內部事件驅動則是當節(jié)點感知到環(huán)境中相應的事件時,馬上將感知到的數據發(fā)送至網關[10]。
基于LoRa的工業(yè)溫度無線采集系統(tǒng)采用內部事件驅動數據采集算法對監(jiān)測節(jié)點的數據采集和發(fā)送進行優(yōu)化,監(jiān)測節(jié)點根據用戶需求靈活設置2個閾值參數α、β,其中α為設置的監(jiān)測節(jié)點采集到的相鄰數據差值閾值,每一次采集的數據都會和前一次采集的數據做比較,當差值達到設定的閾值α時,節(jié)點會對數據進行密集采集和發(fā)送處理;β則為監(jiān)測節(jié)點采集數據的閾值,當節(jié)點采集到的數據達到閾值時也將會對數據進行密集采集和發(fā)送處理,否則將會按照原來的周期進行采集和發(fā)送。其具體算法步驟如下[11]:
(1)監(jiān)測節(jié)點周期性地采集和發(fā)送環(huán)境數據,ani為節(jié)點n采集到的第i個數據;
(2)監(jiān)測節(jié)點采集到的每一個數據都會和前一個數據做比較,當ani-ani-1>α時,節(jié)點將會立即進行密集采集并密集發(fā)送當前數據ani及后續(xù)更新后的采集數據;
(3)當某節(jié)點n采集到的第i個數據ani大于β時,也將對當前數據ani進行密集發(fā)送并進行密集采集;
(4)重復步驟1~3。
節(jié)點軟件流程如圖5所示。節(jié)點首先會監(jiān)聽當前信道是否空閑,當信道處于被占用狀態(tài)時,為了節(jié)省功耗,節(jié)點會先進行休眠,在喚醒周期中加入二進制指數退避算法延遲一段時間重新向所在網絡中的網關發(fā)送入網請求,以避免節(jié)點間的相互競爭。當收到網關的回復后立即對本地時鐘進行同步,設置對應的RTC喚醒時間,隨后休眠進入低功耗模式,完成入網。若未收到網關回復,節(jié)點將繼續(xù)處于接收等待模式,當等待時間超過設定值,節(jié)點將自動休眠并在固定周期喚醒后重新發(fā)送入網請求。
圖5 節(jié)點軟件流程Fig.5 Flow chart of node software
入網完成后,節(jié)點將周期性地進行數據采集、發(fā)送和休眠,當網絡內部事件驅動觸發(fā)時,將進行密集采集和密集發(fā)送數據以更加及時、動態(tài)地監(jiān)控環(huán)境參數。由于時鐘漂移造成系統(tǒng)的同步誤差累積增大,當發(fā)送次數達到設定的閾值后,監(jiān)測節(jié)點將重新發(fā)送入網請求,進行時間同步。
網關首先通過GPS時間更新本地時鐘,然后開啟接收模式對信道內節(jié)點進行偵聽,當收到節(jié)點的入網請求或者同步請求后,網關將獲取本地RTC時間、分配節(jié)點工作時隙并將信息發(fā)送至節(jié)點,RTC時間精確到毫秒;當收到節(jié)點發(fā)來的數據時,網關將對數據進行處理和打包并發(fā)送至服務器。網關軟件流程如圖6所示。
在柳州某鋼鐵廠進行系統(tǒng)測試,監(jiān)測節(jié)點采用3.7 V鋰電池供電,工作頻段為780 MHz,帶寬為125 kHz,發(fā)射功率為14 dBm,擴頻因子SF為7,可實現空曠地帶通信距離達8 km,非視距情況下通信距離可達800 m,經過實測在鋼鐵廠工業(yè)復雜環(huán)境下通信距離可達500 m。監(jiān)測節(jié)點功耗主要分為入網同步和采集發(fā)送2個工作周期,由于時鐘漂移的影響,節(jié)點需每個小時進行1次入網以進行時鐘同步,入網后節(jié)點工作周期為60 s。利用功率分析儀對節(jié)點各個狀態(tài)時的功耗進行測量,入網同步周期節(jié)點在各狀態(tài)時電流消耗情況如表1所示,采集發(fā)送周期節(jié)點在狀態(tài)對應的電流消耗情況如表2所示。由圖中結果計算可知,節(jié)點每天的功耗為1.643 mAh,符合工業(yè)溫度無線采集系統(tǒng)中對于節(jié)點低功耗的需求。
圖6 網關軟件流程圖Fig.6 Flow chart of gateway software
表1 節(jié)點入網同步周期電流消耗Tab.1 Current consumption of node in accessing and synchronization cycle
表2 節(jié)點采集發(fā)送周期電流消耗Tab.2 Current consumption of node in collection and transmission cycle
為了解決工業(yè)溫度無線采集當中遠距離與低功耗等現實問題,本文采用STM32L053系列超低功耗芯片作為MCU設計了基于LoRa的工業(yè)溫度無線采集系統(tǒng)。該系統(tǒng)采用以星型網絡拓撲結構為基礎的類蜂窩網絡結構以實現網絡大范圍的覆蓋面積,同時采用競爭與時分復用相結合的組網方式和基于事件驅動的數據采集算法對數據的采集和發(fā)送進行優(yōu)化,以實現對工業(yè)環(huán)境溫度的靈活監(jiān)控。該系統(tǒng)具有功耗低、覆蓋范圍廣、擴展性強、穩(wěn)定性高的優(yōu)點,并已經在柳州某鋼鐵廠安裝應用,實際使用結果表明該系統(tǒng)適用于對工業(yè)溫度的無線采集和監(jiān)控,并可廣泛應用于現代工業(yè)、農業(yè)等領域當中。