電子發(fā)燒友App

硬聲App

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

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

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

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

2023-06-21 | zip | 0.00 MB | 次下載 | 免費(fèi)

資料介紹

介紹

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

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

關(guān)于 SX1262 的一些信息

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

羅拉

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

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

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

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

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

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

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

我們認(rèn)為 LoRa 非??幔虼宋覀儤?gòu)建了自己的名為IoT.Keystone的硬件和固件平臺(tái),以便輕松地將 LoRa 技術(shù)集成到低功耗物聯(lián)網(wǎng)傳感器設(shè)計(jì)中。

配置

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

#0012.4b00.18a7.f322>

玩弄

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

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

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

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

將擴(kuò)展因子設(shè)置為 7。

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

然后在我們進(jìn)入 RX listen 模式之前檢查當(dāng)前設(shè)置:

#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

在一個(gè)節(jié)點(diǎn)上進(jìn)入 RX偵聽模式,然后在另一個(gè)節(jié)點(diǎn)上重復(fù)參數(shù)設(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

在另一個(gè)節(jié)點(diǎn)上,設(shè)置相同的 SF 后,輸入傳輸?shù)挠行ж?fù)載。我們將使它成為 64 個(gè)字節(jié),但只指定前 4 個(gè)字節(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

完成后,是時(shí)候發(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.

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

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

#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 ]

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

當(dāng)我們將帶寬增加到 500 kHz 時(shí),廣播時(shí)間會(huì)發(fā)生什么變化?當(dāng)我們?cè)?SF7 傳輸相同的 64 字節(jié)數(shù)據(jù)包時(shí),空中時(shí)間從 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.

當(dāng)我們?cè)黾訑U(kuò)頻因子時(shí),廣播時(shí)間會(huì)發(fā)生什么變化?將帶寬設(shè)置回 125 kHz(與大多數(shù) LoRaWAN 上行鏈路通道相同)并將擴(kuò)頻因子設(shè)置為 10,我們發(fā)現(xiàn)廣播時(shí)間從 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)槭裁匆@樣做?簡(jiǎn)而言之,增加擴(kuò)頻因子只會(huì)將數(shù)據(jù)包錯(cuò)誤率降低到可接受的水平。換句話說,如果您的消息沒有到達(dá)您的接收器,您可以轉(zhuǎn)動(dòng) SF 旋鈕直到它們到達(dá)為止。結(jié)果,您的廣播時(shí)間和功耗將會(huì)增加。值得注意的是,LoRaWAN,一個(gè)位于 LoRa 之上的 MAC 層,包括自動(dòng)向下調(diào)整節(jié)點(diǎn)擴(kuò)頻因子的規(guī)定。顯然,如果消息一開始就無法到達(dá)網(wǎng)關(guān),那么從網(wǎng)絡(luò)的角度來看,就沒有什么可以拒絕的了。因此,LoRa 節(jié)點(diǎn)可能會(huì)在與它們交談的實(shí)體告訴它們將其調(diào)低(具有適當(dāng)高的擴(kuò)頻因子響應(yīng))之前,在初始消息上以更高的擴(kuò)頻因子傳輸設(shè)置開始!

最后,此 LoRa-Radio 固件應(yīng)用程序還可以直接訪問 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)——在更遠(yuǎn)的距離上更可靠。它有一個(gè)友好的用戶界面,描述了它在帶寬、擴(kuò)頻因子和編碼率方面的主要特性。

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

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

?

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

評(píng)論

查看更多

下載排行

本周

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

本月

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

總榜

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