曹中強 胡靜 宋鐵成


摘 ? 要:隨著物聯網技術的廣泛應用,基于物聯網技術的信息采集系統逐步應用到智慧農業、智能家居等領域。由此,極大地推動了LPWAN的發展。文章提出了一種基于LoRaWAN的物聯網解決方案,來突破工程項目在功耗和通信距離方面的瓶頸。LoRa優勢在于低功耗、傳輸距離遠,相應地,其傳輸速率相對較低,非常適合應用于智慧農業等領域。研究并設計了基于LoRa的物聯網網關節點軟硬件,硬件部分包括各個硬件設備的選型、MCU,LoRa射頻等,并設計了硬件電路結構框架,同時設計并實現了包括LoRa數據發送與接收以及電源管理、網關配置等功能的LoRa網關應用軟件框架。
關鍵詞:物聯網;LoRa技術;LoRaWAN協議;網關節點
1999年,美國麻省理工學院首次提出物聯網(Internet of Things,IoT)概念。在將近20年的技術發展和進步之后,物聯網的定義越來越完善:物聯網是因特網擴展和延展的產物,物體識別系統、全局定位全球定位系統(Global Positioning System,GPS),跟蹤由物體控制的物體和智能網絡,其實現包括使用信息檢測裝置將因特網連接日常生活中的各種物體,以實現它們之間的信息交流。通用信息檢測裝置,如無線傳感器網絡節點、射頻識別(Radio Frequency Identification,RFID)裝置、全球定位系統、紅外偵察裝置、激光掃描器和智能手機。
1 ? ?國內外研究現狀
截至2016年年初,根據LoRa聯盟的數據,全世界有9個國家已經開始建立LoRa網絡,有56個國家正在準備建立LoRa網絡。LoRaWAN試點工作,該系統將低成本、低能耗和LoRa的大規模無線通信網絡功能結合起來,可以解決目前部分物聯網項目的瓶頸問題,關鍵在于電力供應、電力消耗、成本。低功耗廣域網(Low Power Wide Area Network,LPWAN)包括多種技術,除了LoRa,還有窄帶物聯網(Narrow Band Internet of Things,NB-IoT)、隨機相位多址接入(Random Phase Multiple Access,RPMA)通信技術、Weightless等。
2 ? ?LoRa調制技術
2.1 ?LoRa關鍵技術特性
LoRa調制技術由線性調頻擴頻技術改進而來,采用一個在時間上線性變化的頻率啁啾(chirp)對信息進行編碼。由于啁啾脈沖的線性特質,收發裝置間的頻偏等于時間偏移,很容易在解碼器中被消除,這也使得LoRa調制可以不受多普勒效應的影響。LoRa接收器能夠自動跟蹤它收到的頻率chirp,提供-130 dBm的靈敏度。
LoRa調制技術通過頻譜擴頻技術得到改進,該技術使用時間線性變化的可變頻率編碼信息。由于開關脈沖的線性收發機之間的頻率偏移等于時間偏移,在解碼器中很容易被消除,因此,LoRa調制不受多普勒效應的影響。LoRa提供-130 dBm靈敏度,接收器自動跟蹤接收到的頻率控制[1]。
2.1.1 ?通信參數
LoRa調制涉及3個主要參數,即帶寬(Band Width,BW)、擴頻因子(Spreading Factor,SF)和速率編碼(Code Rate,CR)。LoRaTM調制解調器使用循環誤差校正編碼率檢測直接誤差和糾錯將增加成本,但可以提高鏈路的穩定性,并在存在干擾的情況下確保鏈路的可靠性。每一傳輸所產生的超載數據如表1所示。
2.1.2 ?符號速率
BW,SF和CR 3個關鍵參數的不同設置將影響傳輸距離、傳輸速率、抗干擾性和LoRa的靈敏度。LoRa符號由SHIRPS 2SF組成,有效編碼SF信息比特。在LoRa中,chirp速率為BW,相當于每秒每Hz帶寬。對于SF中的每一個增加1,chirp的頻率范圍被縮小到1∶2,其持續時間加倍,并且所有符號都會傳輸一個額外的信息比特,這不會造成降低比特率的不利影響。如果SF是恒定的,則比特率和符號率與BW成比例,而BW加倍,兩個都加倍。
2.1.3 ?數據包結構
LoRaTM調制解調器采用隱式和顯式兩種數據包格式,數據包結構如圖1所示。跟隱式數據包相比較,顯式數據包是將數據交互格式點明包含在報文內的一種方式,而隱式數據包是在通信雙方的寄存器中將交互格式定義好的一種方式。
LoRaTM調制解調器既使用隱含的也使用明確的分組格式。與隱含數據分組相比,顯性數據分組是將數據交互格式包括在消息中的一種方法,而隱性數據分組是在通信對應方的記錄中定義交互格式的一種方法。
在前言中,它的作用是使接收機與輸入數據流同步。此外,序言的長度不固定,可以根據應用的需要加以調整。報頭包含有效負載的有關數據,并且同數據包模式互為對應關系,有兩種類型:顯頭模式和隱頭模式,在大多數情況下使用顯頭模式。
2.2 ?LoRaTM操作模式
LoRa模式和傳統頻率變化模式可以自由切換,并且LoRa傳輸參數也可以在配置寄存器中定義。LoRa相關模式如表2所示。
LoRa接收機有兩種接收模式:RX連續模式和RX單一模式。核心區別是:RX連續模式一直保持在接收狀態,除非手動切換操作模式,而RX單一模式則只進行一次接收,完成一次接收之后便自動切換為待機模式。這兩種接收模式適合于不同用例[2]。
3 ? ?物聯網網關軟硬件設計
3.1 ?物聯網網關硬件設計
3.1.1 ?LoRaWAN物聯網系統網絡框架
LoRa 聯盟標準的官方網絡架構如圖2所示。
圖2包括終端、網關和服務器的典型LoRaWAN網絡架構,終端和網關之間采用星型網絡結構,如果兩者之間的物理距離在有效距離內,則可以直接傳輸。在LoRa技術的傳輸距離上,網關可以轉發到多個階段,使用多種終端部分進行不同的應用,包括類型的傳感器和GPS定位設備等,終端節點可以同時發送到多個網關節點。
3.1.2 ?LoRa網關硬件需求
根據LoRaWAN系統的網絡架構和部署在地面上的環境,LoRa網關的設備必須滿足以下條件:
(1)價格便宜,從設計來說,該系統能節約資源和人力物力,無論是更有用的應用系統,必須確保LoRa網關設備,即降低成本以確保一個門戶的重要配置LoRa及其項目在框架中更廣泛地使用。
(2)低耗,由于本網絡關口需要長時間的工作,在偏遠的郊區或野外地區,不可能取代頻繁切換電源或利用其他來源的能源,電力、電氣元件應選擇低能源消耗,電路設計必須盡可能地簡化。
(3)穩定性好,面對地面溫度、濕度、壓力等外部環境條件的變化,LoRa橋的各個模塊必須保證正常運行,不受極端天氣的干擾。
(4)滿足基本功能需求,選擇必須具有強大的數據處理能力,通信射頻芯片能承受射頻LoRa技術,因為由于網關裝置主要涉及大量數據通信芯片、單片機。
3.1.3 ?LoRa網關的硬件選型
LoRa網關的基本元件主要由微控制單元(Micro Controller Unit,MCU)和LoRaRF模塊組成,其他元件圍繞這兩個元件運行。設備的大小直接影響印刷電路板的大小,而印刷電路板越大,整個網橋的成本就越高。通過定量選擇更便宜的設備,可以降低整個設備的成本,提高LoRa網關的成本效益。
核心控制器的硬件選擇:LoRa網關應該根據核心控制器相關選擇,須具有較低的功耗和良好的數據處理能力,選擇PIC24EP512GU810芯片作為LoRa網關MCU。
LoRa射頻的硬件選型:LoRaWAN 物聯網系統選定SX1278芯片作為LoRa數據收發器。
3.1.4 ?LoRa網關硬件電路整體設計
LoRa 網關組件主要包括MCU-pic24ep512gu810芯片、RF系統(包括sx1278芯片)、射頻天線、電池和其他閃存芯片、公用電話交換網(Public Switched Telephone Network,PSTN)等,與服務器傳輸數據的網關設備 還必須有一個RJ45接口[3]。網關設備的電路原理框架如圖3所示。
當部署環境由外部電源供電時,①外部電源接口連接到電源電路,否則由電池供電;②12 V電池單元連接到電源,分別電路④和電路⑤;⑤RTC閃存電路,RJ45電路和LoRa信號收發電路;MCU微控制器處理電路分別連接和供電;⑤連接MCU向MCU發送同步信號,然后控制電路④提供低能耗同步功能,而MCU和④檢測電池容量③當電池電量不足,控制LoRa數據發送到上層通知網關硬件,記住它MCU連接允許完成接收和數據發射從LoRa開始,當接收到LoRa數據時,連接將數據臨時存儲在閃存中,并且當要發送數據時,連接通過天線⑧發送臨時存儲的數據。在LoRa網關盒外,有一個天線,一個天線接口,負責發送和接收所有LoRa無線數據,以及一個在橋上用于匹配相關功能的調試接口。
3.2 ?物聯網網關軟件設計及實現
3.2.1 ?LoRa網關功能相關介紹
根據LoRaWAN物聯網系統的網絡結構,在整個系統LoRa網關設備擁有兩個主要功能:(1)轉換數據,將接收到的LoRaWAN格式數據轉為其他格式的數據。(2)數據作為類似的中繼在幾個網關設備或終端之間傳輸。這兩個基本功能是基于LoRa網關設備時必須具備的,網關軟件分為3大類,根據從硬件到軟件應用程序的分層次序,即培訓軟件,引導加載程序軟件和LoRa網關應用程序如圖4所示。
主要用于LoRa網關設備的硬件驅動軟件,包括LoRa射頻SX1278無線芯片驅動程序、PIC24EP512GU 810芯片及其外部驅動設備以及其他輔助芯片,如RTC芯片。
在LoRa網關設備上通電后,初始化微控制器MCU主要在于引導加載程序軟件的功能,設備上的LoRa射頻和其他硬件,并且還可以從上層加載某些應用程序[4]。
所有網關設備之間通信的基礎是LoRa網關應用程序,在它們之間主要進行傳輸數據。
(1)Bootloader軟件設計。Bootloader是第一個通電后實現的網關設備代碼,在完成MCU和其他相關硬件的初始化后,進入應用程序所在的內存空間運行應用程序。此外,引導加載程序還可以與主機協作執行應用程序或其他任務的更新。引導加載程序還必須執行其他功能,包括數據處理和指令、模型評估、應用程序跳轉和數據驗證,如表3所示。
(2)網關應用軟件設計。網關應用是網關設備的核心,確保了LoRa數據的正確接收和傳輸。網關軟件的主要功能是數據管理、LoRa數據傳輸、LoRa數據接收、網關配置、網關電源和LoRa數據轉換,如表4所示。
3.2.2 ?LoRaWAN協議設計
LoRaWAN物聯網系統主要包括:終端的數據源設備,包括各種類型的傳感器以及GPS定位設備、正在傳輸的多個網關設備,以及連接到最后一個網關的上級機器。主通信過程是同步通信,在終端的數據源中的網關和上層網關之間,當接收到數據時,繼續將數據發送到上層網關,直到到達與較高主機的最終連接網關。結合該網絡的通信特性,協議設計主要包括網絡節點訪問設計、MAC命令設計與處理、MAC數據幀集等[5]。
(1)MAC數據的組幀設計。MAC層時分多址(Time Division Multiple Access,TDMA)時隙分配協議幀結構如圖5所示。將一個時幀分為3部分,分別是靜態時隙、重傳時隙以及影子時隙。靜態時隙為1-N號時隙,其中,N為網絡中的終端節點個數;重傳時隙分為3個部分,分別是1-I,1-J和1-K號重傳時隙,且N=5·I,I=5·J,J=5·K,即靜態時隙區域的時隙數目是區域[1,I]時隙數目的5倍,區域[1,J]時隙數目的25倍,區域[1,K]時隙數目的125倍。每個靜態時隙或者重傳時隙的后面都緊跟著一個相同的(時隙長度以及結構相同)影子時隙。
(2)MAC命令的設計及處理。以兩種方式傳遞應用MAC命令,當fport不為零時,最多15個字節的fopts的都是MAC命令;當fport為零時,被置于frmayload幀加載中的MAC命令,此時它們必須在frmpayload中處理之前被解密。
4 ? ?結語
本文通過研究LoRa通信技術的原理及特點,并且基于開源LoRaWAN協議定義下的網關框架,提出了一套基于LoRa技術、物聯網技術的解決方案,解決了當前物聯網系統中高功率和網絡帶寬成本帶來的一些問題。隨著物聯網技術的不斷發展和進步,其功耗降低,盡管LoRaWAN物聯網系統仍有一些問題需要改進,但它仍然對未來基于LoRa的物聯網技術具有一定的參考價值,希望LoRa技術能夠到位,未來將有更好的進步和發展。
[參考文獻]
[1]GERSHENFELD N,KRIKORIAN R,COHEN D.The Internet of Things[J].Scientific American,2016(4):76-81.
[2]孫其博,劉杰,黎羴,等.物聯網:概念、架構與關鍵技術研究綜述[J].北京郵電大學學報,2010(3):1-9.
[3]張健.物聯網通信技術的發展及其應用[J].電子技術與軟件工程,2015(3):46.
[4] RASHMI S S,YIQIAO W,SEUNG H H.A survey on LPWA technology:LoRa and NB-IoT[J].ICT Express,2017(1):35-39.
[5]孫美玉.中國低功耗廣域網絡(LPWAN)發展及展望[N].通信產業報,2017-11-20(013).
[6]LORA A.LoRaWAN specification,v1.0.2[EB/OL].(2017-06-10)[2019-09-10].https://www.lora-allian ce. org/Contact.