歐浩源 胡平峰
(1、廣東職業(yè)技術學院,廣東 佛山 528041 2、深圳蜜獾智抄科技有限公司,廣東 深圳 518102)
隨著物聯(lián)網(wǎng)、大數(shù)據(jù)、人工智能技術的日益成熟,智能水表集抄系統(tǒng)也逐漸向全無線抄收升級。在低功耗遠距離的LoRa無線技術出現(xiàn)之后,遠距離全無線的水表集抄系統(tǒng)已然成為行業(yè)的一種發(fā)展趨勢。小區(qū)中的水表計量終端抄收到水表數(shù)據(jù)后,通過LoRa無線網(wǎng)絡發(fā)送到LoRa數(shù)據(jù)集中器,再由數(shù)據(jù)集中器通過NB-IOT或CAT1的遠程方式傳送到自來水公司的管理系統(tǒng)和數(shù)據(jù)庫。然而,在一些環(huán)境條件較差的小區(qū)中,會出現(xiàn)一些LoRa無線信號盲區(qū)。處于這些信號盲區(qū)的水表計量終端無法通過LoRa無線信號與數(shù)據(jù)集中器進行連接,從而在集抄系統(tǒng)中形成了一個信息孤島,無法做到集抄系統(tǒng)的LoRa無線信號全覆蓋。本文提出了一種水表集抄系統(tǒng)中的LoRa無線補盲網(wǎng)關,在無線信號盲區(qū)和LoRa無線網(wǎng)絡之間構建一個通信橋梁,將信息孤島重新接入水表無線集抄系統(tǒng),以解決小區(qū)LoRa無線網(wǎng)絡中信號盲區(qū)的終端接入和數(shù)據(jù)傳輸問題,從而實現(xiàn)智能水表集抄系統(tǒng)的無線網(wǎng)絡全覆蓋。
在智能水表集抄系統(tǒng)中接入LoRa無線補盲網(wǎng)關后,形成具有無線全覆蓋能力的集抄系統(tǒng),其結構如圖1所示。在LoRa信號良好的區(qū)域中,安裝基于LoRa無線網(wǎng)關的水表計量終端。該計量終端抄收到用水信息后,直接通過LoRa無線網(wǎng)絡上報到LoRa數(shù)據(jù)集中器。在LoRa信號盲區(qū)中,安裝基于Zigbee無線網(wǎng)絡的水表計量終端。這些在LoRa信號盲區(qū)中的計量終端與LoRa無線補盲網(wǎng)關進行無線自組網(wǎng),形成小范圍的Zigbee無線傳感網(wǎng)絡。計量終端抄收到用水信息后,首先通過Zigbee無線網(wǎng)絡將數(shù)據(jù)匯總到LoRa無線補盲網(wǎng)關,再由補盲網(wǎng)關通過LoRa無線網(wǎng)絡上報到數(shù)據(jù)集中器。最后由LoRa數(shù)據(jù)集中器通過NB-IOT遠程連接自來水公司的數(shù)據(jù)管理系統(tǒng),進行小區(qū)用水數(shù)據(jù)的上報和處理。

圖1 接入LoRa無線補盲網(wǎng)關后的水表集抄系統(tǒng)
LoRa補盲網(wǎng)關的硬件系統(tǒng)主要由STM32主控芯片、上行LoRa通信模組、下行Zigbee無線模組、電源管理電路和指示調試部件組成。整個硬件設計框圖如圖2所示。

圖2 LoRa無線補盲網(wǎng)關后的硬件設計框圖
主控芯片選擇STM32L451C8T6,該芯片具有3路UART接口,其中UART3用來與Zigbee模塊通信,另外一路UART1作為在程序開發(fā)過程中調試信息的輸出接口。芯片屬于STM32的低功耗系列,其中Shutdowm停機休眠模式的靜態(tài)功耗不到1uA。芯片內部帶有實時時鐘RTC,該時鐘的鬧鈴功能可以作為停機休眠的喚醒信號。另外,芯片的工作電壓、內存大小、引腳數(shù)量等資源也滿足本補盲網(wǎng)關的設計要求。
上行LoRa通信部分選擇利爾達的LSD4RF-2F717N30無線模組。該模組以Semtech公司的LoRa射頻集成芯片SX1278為核心。芯片采用了LoRa擴頻調制調節(jié)技術,工作頻率范圍137~525MHz,帶 寬7.8 ~500KHz之間可配置,可以使模組在低功耗的情況下,可以進行遠距離數(shù)據(jù)傳輸。LoRa模組通過四線SPI接口與主控芯片進行連接,另外DIO0和DIO1連接到主控芯片2個普通I/O端口上。
下行Zigbee通信部分選擇以TI公司CC2530芯片為核心的無線模組。CC2530是一個以增強型8051為內核,結合2.4 GHz無線收發(fā)外設的片上系統(tǒng),為Zigbee無線連接提供了物理層的連接通道,軟件上搭載Z-Satck協(xié)議棧就可以進行Zigbee傳感網(wǎng)絡的動態(tài)組建。該Zigbee模組通過串口1與主控芯片的UART3進行連接。
補盲網(wǎng)關使用鋰電池供電,為了使系統(tǒng)的整體功耗降低,產(chǎn)品壽命加長。在硬件上設計了電源管理電路,在系統(tǒng)進入停機休眠狀態(tài)時把上行的LoRa模塊和下行的Zigbee無線模塊的電源全部關閉。當主控芯片從休眠模式喚醒后,再逐一進行對設備恢復供電和初始化。
LoRa補盲網(wǎng)關的軟件主要有四個部分的功能:上行LoRa無線通信部分、下Zigbee無線組網(wǎng)部分、水表數(shù)據(jù)抄收上報和低功耗運行管理部分。整個軟件的設計流程如圖3所示。

圖3 LoRa無線補盲網(wǎng)關后的軟件流程圖
補盲網(wǎng)關上電后,首先查詢設計是設備否首次上電運行。如果為首次運行,先初始化LoRa無線網(wǎng)絡,與數(shù)據(jù)集中器建立上行通信信道,獲取數(shù)據(jù)上報的時間并將該時間作為補盲網(wǎng)關停機休眠的喚醒時間設置到STM32L451內部的RTC鬧鈴參數(shù)中。然后初始化CC2530模塊,完成信號盲區(qū)內的Zigbee無線網(wǎng)絡組建,并進行第一次水表數(shù)據(jù)抄收。抄收完成后,向數(shù)據(jù)集中器請求是否需要即時上報。如果需要則進入數(shù)據(jù)打包和上報流程,如果不需要,則關閉LoRa模塊和Zigbee模塊的電源,隨后進入停機休眠模式。直到STM32L451主控芯片內部RTC設置好的鬧鈴時間到,將補盲網(wǎng)關系統(tǒng)喚醒。
補盲網(wǎng)關由休眠模式喚醒后,從上電復位的位置開始運行。在非首次運行時,首先初始化LoRa無線網(wǎng)絡,上行與數(shù)據(jù)集中器建立信道連接,然后完成信號盲區(qū)內的Zigbee網(wǎng)絡組建,抄收區(qū)域內水表數(shù)據(jù),接著將用水數(shù)據(jù)打包并向數(shù)據(jù)集中器上報。數(shù)據(jù)上報成功后,補盲網(wǎng)關會收到數(shù)據(jù)集中器的返回幀。該返回幀內包含在系統(tǒng)下一次的上報時間,也就是系統(tǒng)的喚醒時間。成功解析返回幀后,系統(tǒng)將該時間設置到RTC的鬧鈴參數(shù)中。如果數(shù)據(jù)上報不成功,1個小時后進行數(shù)據(jù)重傳。則在本次上報時間的基礎上,增加1小時作為系統(tǒng)喚醒時間,將其設置到RTC的鬧鈴參數(shù)中。隨后關閉LoRa模塊和Zigbee模塊的電源,進入停機休眠模式。
本文提出的LoRa無線補盲網(wǎng)關已完成軟硬件的設計,并在接入基于LoRa技術的智能水表集抄系統(tǒng)中進行了樣機聯(lián)調。在近半年的現(xiàn)場投運測試過程中,LoRa信號盲區(qū)的水表通過補盲網(wǎng)關可以重新接入系統(tǒng),進行數(shù)據(jù)的抄收和上報。補盲網(wǎng)關對下行Zigbee無線網(wǎng)關的水表數(shù)據(jù)抄收尚未發(fā)現(xiàn)丟包情況,上行LoRa無線的數(shù)據(jù)上報雖偶有掉線,經(jīng)過重傳后,數(shù)據(jù)可以正常上報。補盲網(wǎng)關正常工作時,整機功耗在20mA左右,當主控芯片進入停機休眠模式后,整機功耗可達8uA左右,基本上達到設計預期指標。