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

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

如何理解LoRa中的擴頻因子

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

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

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

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

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

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

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

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

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

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

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

相關(guān)推薦

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

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