基於Semtech SX1302開發的具有LBT及頻譜掃描功能的網關方案

方案應用場景描述

本方案為介紹一個如何使用Semtech SX1302 的Corecell參考設計從硬體、固件到安裝驅動系統。本方案主要的使用場景是當作一個無線基地台來接收由物聯網節點如感測器等應用送來的資料,並將其匯總後送到後端的網路服務器。之後再根據使用者的使用情景連接到想對應的應用、儲存等服務器。


方案優勢

LoRaWAN無線網路是使用在現今廣泛使用的共享ISM頻段。其中運行在這個頻段的一個越來越重要問題是如何避免來自運行於同一頻段的無線設備干擾,並將對其相同頻段里的其他用戶造成的干擾降至最低。為了幫助系統運營商及專屬架構的個人實現這一目標,Semtech開發了 SX1302 LoRa Corecell 網關參考設計。其中最主要的就是LBT (Listen Before Talk發射前傾聽) 和Spectral Scan 頻譜掃描功能。

方案特色說明

本方案向對有興趣探索CoreCell架構的開發人員和產品經理展示如何在Raspberry Pi或是其他Linux系統下經USB 接口來設置驅動程式和構建一個具有LoRaWAN功能的CoreCell網關,並示範其頻譜的掃描。對於LBT功能因為必須在電波實驗室中由一發射源進行互動測試,故這方面我們會另以博文再行說明。

工作原理描述說明

本方案的結構是使用Semtech SX1302 CoreCell版本的建議設計,其架構為一使用STM32 MCU做為SPI與USB通訊橋樑功能之mPCIe介面的閘道器模組。我們必須在Raspberry 下將Linux系統下映像檔燒入,然後安裝LoRaWAN驅動程式。再來設定網關的頻率和服務器指向後等環境後將設備連接到Semtech Network Server。以下介紹兩個主要的功能

 

LBT (Listen Before Talk發射前傾聽)

LBT功能是用於當網關在傳輸資料時可以減少對其他無線電設備的干擾,這些設備可能沒能在某些國家的無線電法規中強制要求。其工作原理為當LBT啟用時,網關會在傳輸每一個數據封包之前先監視同一通訊頻段下的信號功率是否高於預定值。通訊頻道頻率、頻段功率預定、LBT的掃描持續時間以及網關在偵測到閒置頻道後可以傳輸的時間都是自行配置的。

 Spectral Scan (頻譜掃描)

頻譜掃描目的在使每一個 Corecell 網關可以定期來監視所設定的ISM 頻段,用於基於 SX1302 和 SX1250 位置的先聽後聽 (LBT) 和頻譜掃描,以建立出頻段中頻率占用的區段和其強度。頻譜掃描的操作為指定所要測量頻率的起始點和掃描點數,以及應該重複掃描的次數和頻率的額外選項。頻譜掃描信息可用於識別出特定頻道上的干擾問題,然後改變現有的通訊頻道規劃以供脫離干擾部分的頻譜。



如何使用
SX1302 CoreCell 模組建構ChirpStack網關

一. 建立網關

在本方案中將使用Raspberry Pi和SX1302 模組來構建網關。如果您不是使用Semtech參考設計的轉接板的話,您也可以參考樹莓派的SPI介面來SX1302聯繫,詳細可參考附件的參考設計電路圖。網關的網絡通訊部分是使用LoRaWAN協議的來與LoRa晶片的設備傳送和接收資料,並將它們傳遞到所連接的Semtech網絡。

. 製作樹莓派鏡像文件

  1. 至https://www.raspberrypi.org/downloads/raspbian/ 下載Raspbian Buster Lite 2. 將Raspbian Buster Lite鏡像文件如下圖操作方式燒錄到SD Card



  2. 將SD卡放入Rpi3並上電

. 連接PC與樹莓派


1. 首先我們使用無線網絡或是RJ45連到 Raspberry。
2. 使用SSH指令連接admin@192.168.0.1
3. 登入Raspberry,帳號為 Pi,密碼為 raspberry

 


. 設置環境

  1. 執行下列指令取得最新更新 $ sudo apt-get update $ sudo apt-get upgrade $ sudo apt-get dist-upgrade $ sudo rpi-update $ sudo apt install git



  2. 執行設定指令sudo raspi-config 並選擇啟動 SPI / I2C / Serial 界面
  3. 安裝SX1302 驅動


$ cd ~/sx1302_hal/

$ make clean all

$ make install –

$ make install_conf

 

4.輸入下列指令安裝STM32固件

  1. $ cd ~/sx1302_hal/bin
  2. ./boot -d /dev/ttyACMx
  3. sudo apt-get install dfu-util
  4. sudo dfu-util -a 0 -s 0x08000000:leave -t 0 -D ../mcu_bin/xxx_CoreCell_USB.bin

五.驗證網關

  1. 測試HAL 編譯檢查程序 ~

檢查Raspberry上運行之程序與網關寄存器之間鏈接的可靠性,測試無休止地運行或直到檢測到錯誤。 $ cd ~/sx1302_hal/bin $./test_loragw_com_sx1261 -u -d /dev/ttyACM0 ~ 測試SX1261 $./test_loragw_com_sx1250 -u -d /dev/ttyACM0 ~ 測試 SX1250

  1. 測試無線發射 ~

測試Corecell電路的發射運行,啟動命令指定後無休止測試直到錯誤。 $ cd ~/sx1302_hal/bin $ ./test_loragw_hal_tx –u –d /dev/ttyACMx -k0 -c0 -r  

  1. 測試Spectral Scanner ~ 檢查頻譜掃描 $ cd ~/sx1302_hal/bin/ $./spectral_scan –u –d /dev/ttyACMx
  2.  執行CoreCell Packet Forwarder ~ 啟動網關的轉發工作,把收到的節點資料送至網路服務器。 $ cd ~/sx1302_hal/bin/ $ ./lora_pkt_fwd –c global_conf.json.sx1250.USB
  

►場景應用圖

►展示板照片

►方案方塊圖

►核心技術優勢

LoRaWAN無線網路是使用在現今廣泛使用的共享ISM頻段。其中運行在這個頻段的一個越來越重要問題是如何避免來自運行於同一頻段的無線設備干擾,並將對其相同頻段里的其他用戶造成的干擾降至最低。為了幫助系統運營商及專屬架構的個人實現這一目標,Semtech開發了 SX1302 LoRa Corecell 網關參考設計。其中最主要的就是LBT (Listen Before Talk發射前傾聽) 和Spectral Scan 頻譜掃描功能。

►方案規格

運用LoRa技術傳輸,並具有BLT發送前偵聽與頻譜掃描

技術文檔

類型標題檔案
硬件Schematics+BOM