信息科技正開始向物聯(lián)網(wǎng)轉(zhuǎn)變,為社會數(shù)字化帶來重大變革。智慧城市,智慧交通以及新能源和可再生能源計(jì)劃實(shí)施,加速了物聯(lián)網(wǎng)的工業(yè)部署;而智能家居和智能辦公室推動(dòng)了物聯(lián)網(wǎng)在消費(fèi)市場的快速發(fā)展。隨著物聯(lián)網(wǎng)的廣泛應(yīng)用,無線連接的重要性也日益增加。
無線連接是指采用無線通訊技術(shù)建立設(shè)備之間的物理連接,常見的無線通訊技術(shù)有藍(lán)牙、Wi-Fi、NFC、ZigBee、Z-Wave、NB-IoT、LoRa、2/3/4/5G、GPS、LTE Cat-M1等等。而在物聯(lián)網(wǎng)應(yīng)用中,低功耗,高穩(wěn)定,高安全和易連接等性能要求尤為重要。這與ST的產(chǎn)品規(guī)劃相一致。
ST致力于為客戶提供他們需要的安全可靠的無線連接產(chǎn)品和解決方案,以幫助應(yīng)對他們的機(jī)遇和挑戰(zhàn)。無線微控制器是 STM32 產(chǎn)品系列的一部分,其中包括BLE 5.2 和 IEEE 802.15.4 通信協(xié)議以及支持 LoRa? 的片上系統(tǒng)等無線物聯(lián)網(wǎng)連接技術(shù)。我們將通過一系列的STM32W相關(guān)技術(shù)介紹文章,和大家分享ST無線連接相關(guān)解決方案。
前言
STM32WL是市場上首款可以連接LoRa低功耗廣域網(wǎng)的系統(tǒng)級芯片,它繼承了STM32MCU超低功耗特性,支持多種Sub-GHz調(diào)制方案。LoRa作為市場上流行的長距離物聯(lián)網(wǎng)無線連接技術(shù),它的應(yīng)用場景一般是以標(biāo)準(zhǔn)LoRaWAN網(wǎng)絡(luò)組網(wǎng)或者私有LoRa網(wǎng)絡(luò)組網(wǎng)的形式呈現(xiàn)。STM32WL在LoRa網(wǎng)絡(luò)應(yīng)用中大多是扮演終端節(jié)點(diǎn)的角色。比如在LoRaWAN網(wǎng)絡(luò)中,運(yùn)行LoRaWAN協(xié)議的STM32WL終端節(jié)點(diǎn)可以連接專門的LoRaWAN網(wǎng)關(guān)進(jìn)行通信。
本文將介紹私有LoRa網(wǎng)絡(luò)中STM32WL扮演的一個(gè)新角色,即私有LoRa網(wǎng)關(guān)。內(nèi)容涉及STM32WL基于LoRa調(diào)制技術(shù)的私有網(wǎng)絡(luò)設(shè)計(jì)原理,介紹STM32WL如何采用時(shí)分和頻分的方式搭建私有網(wǎng)絡(luò)以實(shí)現(xiàn)私有LoRa網(wǎng)關(guān)與LoRa 傳感器節(jié)點(diǎn)的連接以及數(shù)據(jù)傳輸。最后會介紹如何演示STM32CubeMonitor軟件監(jiān)控基于STM32WL實(shí)現(xiàn)的私有LoRa網(wǎng)絡(luò)。
一、私有LoRa網(wǎng)絡(luò)設(shè)計(jì)原理
市場上LoRa應(yīng)用常見的網(wǎng)絡(luò)架構(gòu)有LoRaWAN網(wǎng)絡(luò)和私有網(wǎng)絡(luò)。LoRaWAN是LoRa聯(lián)盟全球推廣的統(tǒng)一協(xié)議。私有LoRa網(wǎng)絡(luò)則是客戶自己基于LoRa調(diào)制技術(shù)設(shè)計(jì)。
常見的私有LoRa網(wǎng)絡(luò)結(jié)構(gòu)有以下幾種:
點(diǎn)對點(diǎn)網(wǎng)絡(luò)
星狀網(wǎng)絡(luò)
Mesh網(wǎng)絡(luò)
點(diǎn)對點(diǎn)網(wǎng)絡(luò)
點(diǎn)對點(diǎn)(Point to point)通信網(wǎng)絡(luò)是一種最簡單的網(wǎng)絡(luò)結(jié)構(gòu),在STM32WL的應(yīng)用中稱為PingPong模式,它是基于LoRa調(diào)制技術(shù)實(shí)現(xiàn)類似一主一從數(shù)據(jù)通信,是半雙工通信的方式。客戶可以使用點(diǎn)對點(diǎn)的通信,測試兩塊STM32WL板的通信距里。
星狀網(wǎng)絡(luò)
星狀網(wǎng)絡(luò)結(jié)構(gòu)一般是以眾多節(jié)點(diǎn),連接到一個(gè)網(wǎng)關(guān)的形式呈現(xiàn),如下圖:
標(biāo)準(zhǔn)的LoRaWAN網(wǎng)絡(luò)和大多私有LoRa網(wǎng)絡(luò)都采用這種星狀網(wǎng)絡(luò)組網(wǎng)。STM32WL 私有LoRa網(wǎng)絡(luò)例程也是采用這種網(wǎng)絡(luò)結(jié)構(gòu)。對比LoRaWAN網(wǎng)絡(luò)需要采用專門的多通道LoRa網(wǎng)關(guān)芯片,私有LoRa網(wǎng)絡(luò)則可以采用STM32WL 這種低成本,靈活的私有網(wǎng)關(guān)方案進(jìn)行小型LoRa組網(wǎng)。使用STM32WL這類本身做終端節(jié)點(diǎn)的芯片做私有LoRa網(wǎng)關(guān),它同時(shí)只能采用一個(gè)信道進(jìn)行通信,也即是會采用固定的頻率,擴(kuò)頻因子(SF),帶寬(BW)等調(diào)制參數(shù)組合。在這種情況下,為解決私有LoRa網(wǎng)絡(luò)需要和眾多節(jié)點(diǎn)進(jìn)行上下行通信,一般使用以下幾種工作模式。
普通模式
定時(shí)問詢模式
信道升級模式
同步/異步下行主動(dòng)模式
普通模式
在普通工作模式下,網(wǎng)關(guān)和節(jié)點(diǎn)都采用相同的芯片(比如STM32WL),工作時(shí)都使用相同的頻率,擴(kuò)頻因子(SF),帶寬(BW)參數(shù)。網(wǎng)關(guān)會一直打開接收通道,等待節(jié)點(diǎn)的上傳數(shù)據(jù)。
定時(shí)問詢模式
定時(shí)問詢模式,所有節(jié)點(diǎn)和網(wǎng)關(guān)跟普通模式類似,都采用相同的頻率,擴(kuò)頻因子(SF),帶寬(BW)參數(shù)。但它在網(wǎng)絡(luò)建立時(shí),網(wǎng)關(guān)會給每個(gè)節(jié)點(diǎn)分配一個(gè)序號以及當(dāng)前的系統(tǒng)標(biāo)準(zhǔn)時(shí)間(確保節(jié)點(diǎn)時(shí)間和網(wǎng)關(guān)相同)。定時(shí)問詢模式下,網(wǎng)關(guān)根據(jù)其時(shí)間表,在對應(yīng)的時(shí)間與每一個(gè)節(jié)點(diǎn)進(jìn)行通信。
信道升級模式
為了解決信道容量和易受干擾問題,可以采用增加網(wǎng)關(guān)信道的方法,這就是信道升級模式。這種模式下可以使用多個(gè)LoRa節(jié)點(diǎn),比如多個(gè)STM32WL組成一個(gè)網(wǎng)關(guān)。網(wǎng)關(guān)里的每個(gè)STM32WL工作在不同的頻點(diǎn)。
同步/異步下行主動(dòng)模式
同步/異步下行主動(dòng)模式是為了解決網(wǎng)關(guān)下行控制的實(shí)時(shí)性問題。
同步下行主動(dòng)模式利用定時(shí)詢問模式中的下行控制特點(diǎn),要求每個(gè)節(jié)點(diǎn)隔一段周期時(shí)間打開接收窗口,且所有節(jié)點(diǎn)的接收窗口時(shí)間相同。比如每隔1s喚醒,周期性打開接收窗口。當(dāng)網(wǎng)關(guān)需要發(fā)送下行控制命令時(shí),只要在節(jié)點(diǎn)時(shí)間窗口內(nèi)下發(fā)指令,節(jié)點(diǎn)就能收到。
異步下行主動(dòng)模式,通過超長的異步下行前導(dǎo)碼喚醒所有網(wǎng)絡(luò)中的節(jié)點(diǎn),節(jié)點(diǎn)喚醒后,打開接收窗口,網(wǎng)關(guān)發(fā)送下行控制命令給節(jié)點(diǎn)。
下圖為異步下行主動(dòng)模式通信示意圖
同步/異步下行主動(dòng)模式,因?yàn)樗泄?jié)點(diǎn)都需要周期喚醒,對比定時(shí)問詢模式的喚醒方式,功耗會有增加,但相應(yīng)的提高了網(wǎng)關(guān)下行控制的實(shí)時(shí)性。
Mesh網(wǎng)絡(luò)
Mesh網(wǎng)絡(luò)即“無線網(wǎng)格網(wǎng)絡(luò)”,是多跳(multi-hop)網(wǎng)絡(luò),具有多跳互聯(lián)和網(wǎng)狀拓?fù)涮匦浴3R姷腗esh網(wǎng)絡(luò)有BLE Mesh以及Zigbee Mesh網(wǎng)絡(luò)。在一些同時(shí)需求遠(yuǎn)距離,高速率的LoRa的應(yīng)用中也會使用到Mesh技術(shù)。
二、STM32WL私有LoRa網(wǎng)絡(luò)例程
STM32Cube_FW_WL軟件開發(fā)包提供的私有LoRa網(wǎng)絡(luò)例程叫“LocalNetwork”,里面包含了STM32WL網(wǎng)關(guān)“LocalNetwork_Concentrator”和節(jié)點(diǎn)“LocalNetwork_Sensor”兩個(gè)工程。開發(fā)包可以直接從ST官網(wǎng)STM32CubeWL下載。這個(gè)私有LoRa網(wǎng)絡(luò)是基于一個(gè)STM32WL的網(wǎng)關(guān),以及高達(dá)14個(gè)STM32WL節(jié)點(diǎn)組成。下面會分別對其工作原理和演示做介紹。
STM32WL私有LoRa網(wǎng)絡(luò)例程的工作原理
在STM32WL私有LoRa網(wǎng)絡(luò)中,STM32WL網(wǎng)關(guān)(Concentrator)上電后處于待機(jī)狀態(tài),直到收到來自于PC端通過串口傳輸過來的AT指令,設(shè)置工作頻率并開始Beacon廣播。這里的工作頻率可以通過AT指令配置為歐盟、美國、中國等區(qū)域的工作頻率。而節(jié)點(diǎn)(Sensor),復(fù)位后會一直處于掃描模式(Scan)。它會以支持的所有的頻段來掃描網(wǎng)關(guān)的Beacon廣播, 直到找到一個(gè)有效的Beacon。當(dāng)它找到了有效的Beacon,會繼續(xù)偵聽后續(xù)的同步(Sync)數(shù)據(jù)包,以了解網(wǎng)關(guān)工作的哪些時(shí)隙是空閑的。節(jié)點(diǎn)會選擇其中一個(gè)空閑的時(shí)隙來響應(yīng)網(wǎng)關(guān)的控制信息,并通過這個(gè)時(shí)隙傳輸后續(xù)節(jié)點(diǎn)采集的傳感器數(shù)據(jù)。從上面我們可以看到網(wǎng)關(guān)一直在廣播兩種數(shù)據(jù)包,一種數(shù)據(jù)包叫Beacon ,它里面包含前導(dǎo)碼(Preamble),子區(qū)域編號(subregion number),頻率種子(frequency seed)。另一種數(shù)據(jù)包叫同步(Sync),它包含標(biāo)準(zhǔn)的前導(dǎo)碼(Preamble)以及一些用來管理私有網(wǎng)絡(luò)的數(shù)據(jù)。
STM32WL私有LoRa網(wǎng)絡(luò)例程通信用到了類似定時(shí)問詢模式的“時(shí)分”,和信道升級模式的“頻分”(只是它在一個(gè)STM32WL上配合時(shí)分來實(shí)現(xiàn))。下面我們來看STM32WL私有LoRa網(wǎng)絡(luò)例程的演示部分。
STM32WL私有LoRa網(wǎng)絡(luò)例程演示
演示環(huán)境搭建
軟件
1.從ST官網(wǎng)下載STM32Cube_FW_WL_V1.1.0軟件開發(fā)包鏈接:STM32CubeWL
2. 其它軟件工具:
編譯器:IAR 8.50.9,
串口工具:Tera Term ,
燒錄工具:STM32CubeProgrammer
監(jiān)控工具:STM32CubeMonitor
硬件
4塊NUCLEO-WL55JC 開發(fā)板
鏈接: NUCLEO-WL55JC
4 根Micro USB線
軟件燒錄
四塊STM32WL NUCLEO-WL55JC板,選其中一塊作為LoRa私有網(wǎng)關(guān),燒寫從ST官網(wǎng)下載STM32Cube_FW_WL_V1.1.0軟件開發(fā)包里的LocalNetwork_Concentrator 工程軟件。其余3塊燒寫LocalNetwork Sensor工程軟件作為節(jié)點(diǎn)。這里可以直接使用IAR編譯器燒錄也可以通過STM32CubeProgrammer燒寫.bin文件。
使用STM32CubeMonitor監(jiān)控私有網(wǎng)絡(luò)
1.4塊STM32WL NUCLEO-WL55JC板工作示意圖和實(shí)物連接圖如下:
2.如上圖示,當(dāng)4塊STM32WL NUCLEO-WL55JC板上電后,其中一塊私有網(wǎng)關(guān)(Concentrator)會周期性發(fā)出Beacon 和同步信號。而其余三個(gè)節(jié)點(diǎn)(Sensor)會啟動(dòng)掃描Scan,捕捉合適的Beacon信號進(jìn)行連接,連接成功后,根據(jù)分配的時(shí)隙進(jìn)行數(shù)據(jù)通信,上傳傳感器數(shù)據(jù)到網(wǎng)關(guān)(Concentrator)。
3.當(dāng)4塊STM32WL NUCLEO-WL55JC板上電后,將網(wǎng)關(guān)(Concentrator)的板子通過ST Link電腦,可以使用STM32CubeMonitor工具,通過AT指令對網(wǎng)關(guān)進(jìn)行控制管理。如下圖,就是在以圖形界面的方式顯示三個(gè)節(jié)點(diǎn)(Sensor)上傳的傳感器數(shù)據(jù)。
三、總結(jié)
本文介紹了私有LoRa網(wǎng)絡(luò)設(shè)計(jì)原理,內(nèi)容包括LoRa網(wǎng)絡(luò)的常見拓?fù)浣Y(jié)構(gòu):點(diǎn)對點(diǎn)網(wǎng)絡(luò),星狀網(wǎng)絡(luò)和Mesh網(wǎng)絡(luò)。其中重點(diǎn)介紹了常用的星狀網(wǎng)絡(luò)拓?fù)涞乃姆N工作模式:普通模式,定時(shí)問詢模式,信道升級模式,同步/異步下行主動(dòng)模式。而ST提供的STM32WL私有LoRa網(wǎng)絡(luò)例程中,其在時(shí)隙和跳頻上的應(yīng)用則類似定時(shí)問詢模式和信道升級模式中運(yùn)行的機(jī)制。接著我們介紹了ST提供的STM32WL私有LoRa網(wǎng)絡(luò)例程實(shí)現(xiàn)的原理,以及如何演示STM32CubeMonitor軟件監(jiān)控STM32WL私有LoRa網(wǎng)絡(luò)的數(shù)據(jù)通信。
本文目的在于幫助大家了解私有LoRa網(wǎng)絡(luò)工作原理,并知道如何使用STM32WL來實(shí)現(xiàn)小型私有LoRa網(wǎng)絡(luò)的設(shè)計(jì)。
來源:意法半導(dǎo)體中國
審核編輯:湯梓紅
-
微控制器
+關(guān)注
關(guān)注
48文章
7872瀏覽量
153488 -
STM32
+關(guān)注
關(guān)注
2287文章
10988瀏覽量
361650 -
網(wǎng)絡(luò)架構(gòu)
+關(guān)注
關(guān)注
1文章
95瀏覽量
12820 -
LoRa
+關(guān)注
關(guān)注
351文章
1747瀏覽量
234106
發(fā)布評論請先 登錄
基于STM32WL系列微控制器構(gòu)建特定LoRa應(yīng)用程序
ST正式發(fā)布LoRa Soc芯片STM32WL系列
使用CubeMX創(chuàng)建STM32WL板子的LoRaWAN應(yīng)用
使用CubeMX創(chuàng)建基于STM32WL的LoRa應(yīng)用
線下實(shí)訓(xùn) | STM32WL LoRa? SoC應(yīng)用開發(fā)及設(shè)計(jì)
用于 STM32WL 系列 LoRa?調(diào)制的 RSSI 和 SNR

STM32WL LoRa通信中從Tx發(fā)射狀態(tài)切換到Rx接收狀態(tài)耗時(shí)過長問題

STM32WL FUOTA應(yīng)用設(shè)計(jì)

STM32WL使用STM32CubeMX創(chuàng)建LoRa節(jié)點(diǎn)應(yīng)用

評論