電子發(fā)燒友App

硬聲App

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內(nèi)不再提示
創(chuàng)作
電子發(fā)燒友網(wǎng)>電子資料下載>電子資料>接收LoRa數(shù)據(jù)包的實踐示例

接收LoRa數(shù)據(jù)包的實踐示例

2023-06-21 | zip | 0.00 MB | 次下載 | 免費

資料介紹

介紹

LoRa Lo ng Range的縮寫)是火星這一側(cè)最令人驚嘆的物聯(lián)網(wǎng)通信技術。隨著 Semtech 對法國公司 Cycleo 的收購,LoRa 在 2012 年嶄露頭角,作為低功耗、低成本物聯(lián)網(wǎng)傳感器設備的首選無線通信方法,LoRa 的人氣持續(xù)上升。

在本教程中,我們將簡要概述 LoRa 的特殊之處,并提供使用最新的 LoRa 無線電 IC SX1262 以及使用IoT.Keystone Innovator Board 發(fā)送和接收 LoRa 數(shù)據(jù)包的實踐示例。

關于 SX1262 的一些信息

SX1262 于 2018 年推出,能夠以高達 22 dBm 的功率輸出在全球所有主要的 sub-GHz ISM 頻段中運行。在 sub-GHz 頻段(例如 868 或 915 MHz)中運行是在城市室內(nèi)、室外和工業(yè)環(huán)境中實現(xiàn)遠距離傳輸?shù)年P鍵。它有一個微控制器友好的接口,由 4 線 SPI、BUSY 信號和 RESET 線組成。固件驅(qū)動程序是開源的也很棒。

羅拉

在我們看來,LoRa 的偉大之處在于它不僅提供比傳統(tǒng)調(diào)制技術更遠的范圍和更強的抗干擾性,而且它以用戶友好的方式描述其操作特性。那是什么意思呢?

使用 LoRa,只需轉(zhuǎn)動 3 個參數(shù)或旋鈕即可控制傳輸范圍、數(shù)據(jù)速率和能耗等關鍵特性。如您所料,當您配置更長的范圍時,您的數(shù)據(jù)速率會下降并且能耗會增加,反之亦然。

您需要了解的主要參數(shù)是擴頻因子、帶寬和編碼率。

擴頻因子(SF)。從 SF5 到 SF12 只有 7 個級別,SF7 是中短距離設置的典型設置。隨著擴頻因子的增加,范圍增加,數(shù)據(jù)速率下降,空中時間增加(即發(fā)送數(shù)據(jù)包的時間,這會消耗更多能量)。很酷的是,這些設置中的每一個都是彼此“正交”的,這意味著您可以設置 7 個不同的發(fā)射器和接收器對,以在同一頻段同時運行而不會受到干擾!

帶寬 (BW). 這里只有 3 個主要設置:125 kHz、250 kHz 和 500 kHz,盡管對于一些非常特殊的低比特率應用,無線電將支持低至 7.81 kHz 的一些較低帶寬。應該注意的是,LoRaWAN 是一種流行的 MAC 層,在 LoRa 之上工作,僅使用 3 個帶寬 125、250 和 500 KHz。您可以通過更高的帶寬推送更多數(shù)據(jù),從而提高有效比特率。結果,播出時間隨著能源消耗而減少。但是,您會在射程上受到一些影響。我會提到術語“比特率”在物聯(lián)網(wǎng)中有點用詞不當,因為許多物聯(lián)網(wǎng)解決方案對能夠連續(xù)發(fā)送數(shù)據(jù)不感興趣。比特率只是影響每次傳輸?shù)目罩袝r間(通常只在長時間睡眠期間很少發(fā)生)以節(jié)省電池電量。

編碼率(CR)。LoRa 數(shù)據(jù)包引擎將對您的數(shù)據(jù)執(zhí)行“前向糾錯”編碼,以便接收方可以實際處理傳輸中的一些錯誤,而不會損壞您的數(shù)據(jù)。此功能實質(zhì)上為您的數(shù)據(jù)負載增加了一些冗余。這里有 4 個可能的級別:4/5、4/6、4/7 和 4/8。這意味著對于每 4 位真實數(shù)據(jù),LoRa 數(shù)據(jù)包引擎將創(chuàng)建 5、6、7 或 8 個用于傳輸。所以正如你所看到的,實際傳輸?shù)臄?shù)據(jù)量可能是你想象的兩倍。隨著編碼率的增加,您將獲得更遠的距離,因為接收器可以容忍傳輸中的更多錯誤。最常見的編碼率是最低設置 4/5。

物聯(lián)網(wǎng).Keystone

我們認為 LoRa 非???,因此我們構建了自己的名為IoT.Keystone的硬件和固件平臺,以便輕松地將 LoRa 技術集成到低功耗物聯(lián)網(wǎng)傳感器設計中。

配置

在GitHub 上提供的開源固件中,我們有一個名為LoRa-Radio的應用程序,它提供對電路板及其 SX1262 無線電的命令行控制。借助IoT.Keystone創(chuàng)新板的“USB 記憶棒”外形,我們只需將其插入可用的 USB 端口即可。操作系統(tǒng)將注冊一個串行/COM 端口,我們可以將我們最喜歡的終端應用程序調(diào)整到它。確保它在 115、200 波特率 N、8、1 下工作。還要確保終端應用程序終止使用 LF(換行符)或 CR-LF 輸入的命令。這是IoT.Keystone固件描述命令所必需的。當在空行上按下回車鍵時,我們會看到這樣的提示:

#0012.4b00.18a7.f322>

玩弄

您需要兩個運行 LoRa-Radio 固件應用程序的 IoT.Keystone 板。這里我們有一個 ID為f319的節(jié)點設置為發(fā)送器,一個 ID為f322的節(jié)點設置為接收器。

我們將從在兩者上設置相同的參數(shù)開始:

選擇任意頻率 915000 kHz。從技術上講,這里可以使用任何東西,但天線系統(tǒng)當然會針對特定頻段進行調(diào)諧。我們的設置適用于涵蓋 902 - 928 MHz 的 915 MHz ISM 頻段。

#0012.4b00.18a7.f319> lora set freq 915000
Command OK. Radio mode=STBY_RC status=RFU

將擴展因子設置為 7。

#0012.4b00.18a7.f319> lora set sf 7
Command OK. Radio mode=STBY_RC status=RFU

然后在我們進入 RX listen 模式之前檢查當前設置:

#0012.4b00.18a7.f322> lora set
frequency: 915000000 Hz
bandwidth: 0 -> 125
spreading factor: SF7
coding rate: 1 -> 4/5
tx power: 20 dBm
tx size: 0 bytes
tx payload: [ ]
tx timeout: 3000 ms
preamble length: 8 symbols
IQ invert: false
Command OK. Radio mode=STBY_RC status=RFU

在一個節(jié)點上進入 RX偵聽模式,然后在另一個節(jié)點上重復參數(shù)設置:

#0012.4b00.18a7.f322> lora rx
Running RX on freq 915000000 kHz at SF7 CR:1 BW:0 preamble:8 IQ invert:false ...
Command OK. Radio mode=RX status=RFU

在另一個節(jié)點上,設置相同的 SF 后,輸入傳輸?shù)挠行ж撦d。我們將使它成為 64 個字節(jié),但只指定前 4 個字節(jié) (0xA 0xB 0xC 0xD):

#0012.4b00.18a7.f319> lora set tx 64 A B C D
Command OK. Radio mode=STBY_RC status=RFU

完成后,是時候發(fā)送它并查看接收者是否捕獲它了:

#0012.4b00.18a7.f319> lora tx
TX 64 bytes on freq 915000000 kHz at SF7 CR:1 BW:0 PWR:20 dBm airtime:119 ms timeout:3000 ms  preamble:8 IQ invert:false ...
Command OK. Radio mode=TX status=RFU
#0012.4b00.18a7.f319> [INFO: lora-rf   ] Tx completed.

這個 64 字節(jié)的 LoRa 傳輸在 SF7、BW 0 (125 kHz) 和 CR 1 (4/5) 下花費了 119 毫秒。

如果我們查看另一個監(jiān)聽節(jié)點 (ID:F322),我們會看到這條消息:

#0012.4b00.18a7.f322> [INFO: lora-rf ] RxDone: size:64 rssi:-52 snr:9 payload:[ 0A 0B 0C 0D 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ]

當功耗是設計中的一個因素時,無線電通常是功耗最高的。在這些情況下,我們希望減少無線電發(fā)射器開啟的時間。讓我們快速了解一下參數(shù)如何影響播出時間。

當我們將帶寬增加到 500 kHz 時,廣播時間會發(fā)生什么變化?當我們在 SF7 傳輸相同的 64 字節(jié)數(shù)據(jù)包時,空中時間從 119 毫秒下降到 30 毫秒,與帶寬增加成比例 (120/30 = 500/125 = 4)。

#0012.4b00.18a7.f319> lora tx
TX 64 bytes on freq 915000000 kHz at SF7 CR:1 BW:2 PWR:20 dBm airtime:30 ms timeout:3000 ms  preamble:8 IQ invert:false ...
Command OK. Radio mode=TX status=RFU
#0012.4b00.18a7.f319> [INFO: lora-rf   ] Tx completed.

當我們增加擴頻因子時,廣播時間會發(fā)生什么變化?將帶寬設置回 125 kHz(與大多數(shù) LoRaWAN 上行鏈路通道相同)并將擴頻因子設置為 10,我們發(fā)現(xiàn)廣播時間從 119 毫秒躍升至 699 毫秒。

TX 64 bytes on freq 915000000 kHz at SF10 CR:1 BW:0 PWR:20 dBm airtime:699 ms timeout:3000 ms  preamble:8 IQ invert:false ...
Command OK. Radio mode=TX status=RFU
#0012.4b00.18a7.f319> [INFO: lora-rf   ] Tx completed.

我們?yōu)槭裁匆@樣做?簡而言之,增加擴頻因子只會將數(shù)據(jù)包錯誤率降低到可接受的水平。換句話說,如果您的消息沒有到達您的接收器,您可以轉(zhuǎn)動 SF 旋鈕直到它們到達為止。結果,您的廣播時間和功耗將會增加。值得注意的是,LoRaWAN,一個位于 LoRa 之上的 MAC 層,包括自動向下調(diào)整節(jié)點擴頻因子的規(guī)定。顯然,如果消息一開始就無法到達網(wǎng)關,那么從網(wǎng)絡的角度來看,就沒有什么可以拒絕的了。因此,LoRa 節(jié)點可能會在與它們交談的實體告訴它們將其調(diào)低(具有適當高的擴頻因子響應)之前,在初始消息上以更高的擴頻因子傳輸設置開始!

最后,此 LoRa-Radio 固件應用程序還可以直接訪問 SX1262 無線電寄存器,如圖所示。在 LoRa 模式下沒有很多,這是一件好事!

#0012.4b00.18a7.f319> lora reg get
Content of lora registers:
name                 address value
-------------------- ------- -----
 LoRa Sync Word MSB  0x0740  0x34
 LoRa Sync Word LSB  0x0741  0x44
 RandomNumberGen[0]  0x0819  0x08
 RandomNumberGen[1]  0x081A  0xA5
 RandomNumberGen[2]  0x081B  0x45
 RandomNumberGen[3]  0x081C  0x49
            Rx Gain  0x08AC  0x94
  OCP Configuration  0x08E7  0x38
           XTA trim  0x0911  0x05
           XTB trim  0x0912  0x05
Command OK. Radio mode=STBY_RC status=RFU
#0012.4b00.18a7.f319>

概括

借助 LoRa,您可以發(fā)送和接收少量數(shù)據(jù)——非常適合物聯(lián)網(wǎng)——在更遠的距離上更可靠。它有一個友好的用戶界面,描述了它在帶寬、擴頻因子和編碼率方面的主要特性。

我們剛剛談到了 LoRa 無線電通信的主要用戶界面元素,但沒有深入了解太多細節(jié)。Internet 上有許多深入研究細節(jié)的重要資源,例如比特率和廣播時間實際上是如何受到擴頻因子、帶寬和編碼率設置的影響的。

如果您有興趣,我們正在使用的這款IoT.Keystone板還在相同的 sub-GHz 頻段提供支持 IPv6 的網(wǎng)狀網(wǎng)絡,但使用不同的、標準化的和非專有的調(diào)制技術 (FSK) 以獲得更高的比特率命令和控制應用程序。還有一些板載傳感器用于測試 IoT.Keystone 使用 LoRa+LoRaWAN 或 6LoWPAN 的完整傳感器到云功能。

?

下載該資料的人也在下載 下載該資料的人還在閱讀
更多 >

評論

查看更多

下載排行

本周

  1. 1山景DSP芯片AP8248A2數(shù)據(jù)手冊
  2. 1.06 MB  |  532次下載  |  免費
  3. 2RK3399完整板原理圖(支持平板,盒子VR)
  4. 3.28 MB  |  339次下載  |  免費
  5. 3TC358743XBG評估板參考手冊
  6. 1.36 MB  |  330次下載  |  免費
  7. 4DFM軟件使用教程
  8. 0.84 MB  |  295次下載  |  免費
  9. 5元宇宙深度解析—未來的未來-風口還是泡沫
  10. 6.40 MB  |  227次下載  |  免費
  11. 6迪文DGUS開發(fā)指南
  12. 31.67 MB  |  194次下載  |  免費
  13. 7元宇宙底層硬件系列報告
  14. 13.42 MB  |  182次下載  |  免費
  15. 8FP5207XR-G1中文應用手冊
  16. 1.09 MB  |  178次下載  |  免費

本月

  1. 1OrCAD10.5下載OrCAD10.5中文版軟件
  2. 0.00 MB  |  234315次下載  |  免費
  3. 2555集成電路應用800例(新編版)
  4. 0.00 MB  |  33566次下載  |  免費
  5. 3接口電路圖大全
  6. 未知  |  30323次下載  |  免費
  7. 4開關電源設計實例指南
  8. 未知  |  21549次下載  |  免費
  9. 5電氣工程師手冊免費下載(新編第二版pdf電子書)
  10. 0.00 MB  |  15349次下載  |  免費
  11. 6數(shù)字電路基礎pdf(下載)
  12. 未知  |  13750次下載  |  免費
  13. 7電子制作實例集錦 下載
  14. 未知  |  8113次下載  |  免費
  15. 8《LED驅(qū)動電路設計》 溫德爾著
  16. 0.00 MB  |  6656次下載  |  免費

總榜

  1. 1matlab軟件下載入口
  2. 未知  |  935054次下載  |  免費
  3. 2protel99se軟件下載(可英文版轉(zhuǎn)中文版)
  4. 78.1 MB  |  537798次下載  |  免費
  5. 3MATLAB 7.1 下載 (含軟件介紹)
  6. 未知  |  420027次下載  |  免費
  7. 4OrCAD10.5下載OrCAD10.5中文版軟件
  8. 0.00 MB  |  234315次下載  |  免費
  9. 5Altium DXP2002下載入口
  10. 未知  |  233046次下載  |  免費
  11. 6電路仿真軟件multisim 10.0免費下載
  12. 340992  |  191187次下載  |  免費
  13. 7十天學會AVR單片機與C語言視頻教程 下載
  14. 158M  |  183279次下載  |  免費
  15. 8proe5.0野火版下載(中文版免費下載)
  16. 未知  |  138040次下載  |  免費