加入星計(jì)劃,您可以享受以下權(quán)益:

  • 創(chuàng)作內(nèi)容快速變現(xiàn)
  • 行業(yè)影響力擴(kuò)散
  • 作品版權(quán)保護(hù)
  • 300W+ 專業(yè)用戶
  • 1.5W+ 優(yōu)質(zhì)創(chuàng)作者
  • 5000+ 長期合作伙伴
立即加入
  • 正文
  • 相關(guān)推薦
  • 電子產(chǎn)業(yè)圖譜
申請入駐 產(chǎn)業(yè)圖譜

如何理解LoRa中的擴(kuò)頻因子

10/21 11:55
2198
閱讀需 4 分鐘
加入交流群
掃碼加入
獲取工程師必備禮包
參與熱點(diǎn)資訊討論

在之前的文章中,我了解到,LoRa的擴(kuò)頻通信中,其基本的一個(gè)符號是一個(gè)chirp,也就是一個(gè)線性調(diào)頻,從時(shí)域和頻域上來觀察,就像下面圖中展示的樣子:

從頻域上更容易理解,也就是我們想發(fā)送一個(gè)符號,就發(fā)送一個(gè)變化的頻率信號。假設(shè)我們的帶寬選擇125kHz,也就是BW = 125kHz。那么我們發(fā)射的信號就是一個(gè)頻率從0到125kHz,一步一步變化上去的信號。

那么這個(gè)變化的頻率,它的步進(jìn)是多少呢?假設(shè)我們定義SF=7,也就是我們需要講125kHz的帶寬進(jìn)行128等分,這樣頻率從0掃到125kHz的話,就需要進(jìn)行128步。在BW= 125kHz的帶寬上,我們時(shí)域上的掃頻間隔為頻率的倒數(shù),也就是8us。

因此,如果我們按照帶寬BW= 125kHz,SF = 7的擴(kuò)頻因子,發(fā)送一個(gè)線性調(diào)制信號,就要經(jīng)過128步的頻率增加,每一步所花的時(shí)間是8us,一共需要128*8us= 1.024ms。

從上面的推理可以看出,SF越大,我們發(fā)送一個(gè)符號的時(shí)間就越長,所以我們的通信速率就越慢。我們以SF=7為例,看一下,符號是如何被調(diào)制到射頻上去的。

如上圖,在SF=7的情況下,我們把頻率分為了128個(gè)臺(tái)階,接下來我們來定義符號。對于符號0,就用從頻率f0開始,頻率一步一步的增加,一直增加到f127的一個(gè)線性頻率變化表示。對于符號1,就用從頻率f1開始,頻率一步一步的增加,一直增加到f127,再回到f0為止的線性頻率變化來表示。

以此類推,我們看到圖中每個(gè)symbol符號,都可以表示成一個(gè)唯一的,從起始頻率開始,掃過整個(gè)帶寬的頻率變化信號。這樣一來,我們就可以把0-127所表示的符號,通過一個(gè)變化的頻率進(jìn)行發(fā)送了。接下來繼續(xù)看一下,如何將原始數(shù)據(jù)轉(zhuǎn)換到Lora的一幀數(shù)據(jù)中。下圖是以SF=8為例的

上圖第二行為原始數(shù)據(jù)的二進(jìn)制碼,這里要注意,我們在lora調(diào)制之前,加入了前向糾錯(cuò)碼來提高數(shù)據(jù)的可靠性傳輸,也就是我們可以增加多個(gè)冗余的bit值,當(dāng)傳輸過程中有一個(gè)bit翻轉(zhuǎn),我們可以把這個(gè)翻轉(zhuǎn)的bit找出來,并修正他。

這樣的前向糾錯(cuò)機(jī)制,避免了我們傳輸過程中受到干擾,需要重傳的問題。CR=4/5,也就是每4個(gè)bit的數(shù)據(jù),增加一個(gè)bit的冗余。我們原始的32bit就被擴(kuò)展為了40bit。這40bit是我們的lora數(shù)據(jù)幀的payload部分。lora的一幀數(shù)據(jù)還包括前導(dǎo)碼和CRC部分。

其中前導(dǎo)碼是多個(gè)線性調(diào)頻的升頻,這個(gè)符號是固定的,但是個(gè)數(shù)可以自定義,主要用來做時(shí)間同步,喚醒,頻率漂移等校準(zhǔn)等,具體不詳。隨后,40個(gè)bit的數(shù)據(jù)按照SF=8,也就是一個(gè)字節(jié)作為一個(gè)符號進(jìn)行發(fā)送,最后是兩個(gè)符號長度的CRC校驗(yàn)

相關(guān)推薦

電子產(chǎn)業(yè)圖譜

多年硬件從業(yè)經(jīng)驗(yàn),專注分享從研發(fā)到供應(yīng)鏈,再到精益制造過程中的經(jīng)驗(yàn)和感悟!