首頁 > 評測 > 完整的LoRa體驗,有這一套就夠了!——LoRa IoT Kit體驗

完整的LoRa體驗,有這一套就夠了!——LoRa IoT Kit體驗

LoRa   Dragino   Semtech   SX1272   GPS   
  • 作者:SATURN
  • 來源:21ic
  • [導(dǎo)讀]
  • 如果想要完整的LoRa體驗,至少需要一個LoRa網(wǎng)關(guān)和一個LoRa節(jié)點。而除了這兩者必須部件之外,Dragino的套件中還提供了更多驚喜。所以想要完整的LoRa體驗究竟要花多少銀子?這或許是很多LoRa入門開發(fā)者最關(guān)心的問題。我們認為Dragino在這一方面做的不錯。

LG01-P內(nèi)置AR9331模塊,最高運行主頻為400MHz,并布署了OpenWRT系統(tǒng),從這點看,完全可以把LG01-P當作一個路由器來使用。LoRa這一塊的通信,使用的是RF96 LoRa模塊,提供了高達168dB的鏈路預(yù)算,最高100mW的輸出,支持FSK, GFSK及LoRa等調(diào)制/解調(diào)功能。除了LoRa模塊,PCB上還集成一顆ATMEG328P的芯,通過SPI/UART分別與RF96及AR9331進行通信。下面是拆開網(wǎng)關(guān)之后看到的樣子

LoRa IoT Kit14.jpg

圖中紅色的PCB板包含了ATMEGA328P及LoRa模塊,它的下面就是Dragino HE Linux模塊,內(nèi)含AR9331?梢钥吹絎IFI天線是內(nèi)置的,引出的天線接口連接到LoRa模塊上。另外可以看到LG01P內(nèi)部還預(yù)留了一個LoRa BEE模塊接口,只是沒有連接模塊,估計是作未來擴展功能之用。

LoRa模塊可以拆下來,拆下來看到下面的IoT模塊也就是Dragino HE Linux模塊

LoRa IoT Kit15.jpg

這就是實現(xiàn)網(wǎng)絡(luò)通信的模塊,金屬屏蔽罩內(nèi)部是AR9331模塊,配合OpenWRT與Internet連接。另外看到下面還有個叫SENSOR的接口,應(yīng)該可以用來連接外部傳感器。

LG01-P默認打開WIFI連接,沒有設(shè)置加密,可以使用WIFI設(shè)備如手機連接到網(wǎng)關(guān),網(wǎng)關(guān)默認的IP地址是10.130.1.1,開啟了DHCP服務(wù),移動WIFI設(shè)備可以直接獲取IP地址,如下是手機連接到網(wǎng)關(guān)后的信息

將LoRa網(wǎng)關(guān)的WAN口與上級路由器連接,可通過DHCP獲取WAN口獲取IP地址,這些都是默認設(shè)置,無需配置,下面是LoRa網(wǎng)關(guān)連接到路由器后使用瀏覽器登錄信息

LoRa IoT Kit16.jpg

默認密碼為dragino,使用過OpenWRT的用戶對這個界面應(yīng)該非常熟悉。如果使用3G/4G模塊連接Internet的話,需要在OpenWRT內(nèi)進行設(shè)置,這里直接使用WAN口連接,使用默認設(shè)置就行。

LoRa IoT Kit17.jpg

除了可以使用WEB配置,也可以使用SSH連接網(wǎng)關(guān)進行配置,下面是使用SSH連接到LoRa網(wǎng)關(guān)的配置界面

LoRa IoT Kit19.jpg

重點還是LoRa。

LoRa只是一種無線通信技術(shù),工作在物理層,不同設(shè)備會存在不兼容的情況。LoRaWAN是一種通信協(xié)議,基于LoRa技術(shù)實現(xiàn),除了消除硬件之間的不兼容,還在加密、動態(tài)切換等方面予以定義,實現(xiàn)的方法可能各不相同,但最終的LoRaWAN數(shù)據(jù)包消除了這些差異。LoRaWAN協(xié)議棧是軟件,通常結(jié)合MCU來具體實現(xiàn),Dragino的LoRaWAN協(xié)議棧通過ATMEG328P來實現(xiàn),一來是支持資源比較多,另一個也可能是出于成本的考慮。

DRAGINO LoRa IoT Kit里包含一個網(wǎng)關(guān),倆個不同類型的結(jié)點,其中一個帶GPS,下面來試試通信。

最基礎(chǔ)的LoRa通信需要兩個設(shè)備,彼此之間通過LoRa交換數(shù)據(jù),這里選擇LG01-P做為服務(wù)器,另外使用一個LoRa Shield做為結(jié)點。前面已經(jīng)說過,LoRa只負責(zé)RF信息交換,具體的數(shù)據(jù)信息交換需要使用協(xié)議棧來實現(xiàn),LoRa聯(lián)盟給出了一個規(guī)范,不過當前很多廠商自己的實現(xiàn)并未完全遵守該規(guī)范,不過這并不影響實際的使用,只是不同廠商之間的設(shè)備進行信息交換時會存在兼容性問題。LoRaWAN不兼容的后果就是需要分別對網(wǎng)關(guān)及結(jié)點設(shè)備都加入自己的協(xié)議控制。本次的評估套件,不管是網(wǎng)關(guān)還是LoRa Shield,二者都是通過ATMEG328P來控制,所以使用ARDUINO IDE來作為開發(fā)環(huán)境就行。

啟動ARDUINO IDE,先添加IDE對Dragino的支持,在ARDUINO IDE的首選項對話框中添加DRAGINO硬件支持,如下

LoRa IoT Kit20.jpg

在Additional Boards Manager URLs中輸入的地址為:http://www.dragino.com/downloads/downloads/YunShield/package_dragino_yun_test_index.js,這里添加的只是板級支持及示例代碼,但是不包含底層的LoRa硬件庫文件,還要另外下載RF庫文件支持,下載地址為http://www.airspayce.com/mikem/arduino/RadioHead/RadioHead-1.63.zip,解壓后放到Arduino的庫文件目錄。

接下來就把網(wǎng)關(guān)或LoRa Shield當成一個Arduino(Yun)設(shè)備來用就好了。先對網(wǎng)關(guān)燒寫代碼,下面是本次測試中要用到的兩個示例代碼,位于examples目錄下,其中Server運行在LG01-P上,Client運行在結(jié)點上。

LoRa IoT Kit21.jpg

需要注意一點,LG01-P沒有引出編程用的串口,可以使用網(wǎng)絡(luò)接口來對網(wǎng)關(guān)編程,配置好的設(shè)備型號及端口如下

LoRa IoT Kit22.jpg

現(xiàn)在可以編譯并上傳服務(wù)器端代碼,打開串口可以看到如下信息

LoRa IoT Kit23.jpg

服務(wù)器端開始監(jiān)聽結(jié)點信號,使用的頻段是868MHz,此時客戶端還未就緒,串口信息也沒有刷新,就一直等待。

接下來要給客戶端設(shè)備上傳代碼,基本過程類似,除了代碼不同外,還需要將開發(fā)板的型號設(shè)置為Arduino/Genuino UNO,然后開始上傳客戶端代碼。很快就可以看到串口輸出信息有變化

LoRa IoT Kit24.jpg

通信開始了!

確實很簡單,再想想底層使用的是LoRa,遠距離通信技術(shù),小激動。兩個設(shè)備放在一起挨得很近,RSSI的值看上去很好,不知道扔到兩公里外是什么狀況,小期待!

  • 本文系21ic原創(chuàng),未經(jīng)許可禁止轉(zhuǎn)載!

網(wǎng)友評論