NB-IoT設(shè)備接入物聯(lián)網(wǎng)平臺的完整流程可以概括為硬件準(zhǔn)備 -> 網(wǎng)絡(luò)附著 -> 平臺注冊 -> 數(shù)據(jù)上下行 幾個核心階段。
1、NB-IoT: 一種專為低功耗、廣覆蓋、大容量物聯(lián)網(wǎng)設(shè)備設(shè)計的蜂窩網(wǎng)絡(luò)技術(shù)。
2、設(shè)備: 內(nèi)置了NB-IoT通信模組的終端硬件。
3、物聯(lián)網(wǎng)平臺: 提供設(shè)備管理、數(shù)據(jù)接收、存儲、分析和規(guī)則引擎的云服務(wù)平臺,例如:
①運營商平臺: 中國電信AEP、中國移動OneNET、中國聯(lián)通物聯(lián)網(wǎng)平臺。
②云廠商平臺: 阿里云物聯(lián)網(wǎng)平臺、華為云IoT、騰訊云物聯(lián)網(wǎng)開發(fā)平臺、AWS IoT Core等。
4、通信協(xié)議: 設(shè)備與平臺之間通信的“語言”,最常用的是 CoAP/LwM2M 和 MQTT。

整個流程可以清晰地用下圖表示,它展示了從硬件到數(shù)據(jù)收發(fā)的完整閉環(huán):
1、硬件準(zhǔn)備
①選擇NB-IoT模組: 如移遠(yuǎn)BC95/BC26/BC28,廣和通N510/N700,移芯EC616/EC617等。
②集成與開發(fā): 將模組集成到你的設(shè)備主板,并編寫嵌入式軟件(固件),通過AT指令控制模組。
2、平臺側(cè)創(chuàng)建產(chǎn)品與設(shè)備
①登錄物聯(lián)網(wǎng)平臺: 在你選擇的物聯(lián)網(wǎng)平臺上創(chuàng)建賬戶。
②創(chuàng)建產(chǎn)品: 定義一個產(chǎn)品模型,包括產(chǎn)品名稱、型號、通信協(xié)議(如LwM2M或MQTT)、數(shù)據(jù)格式(如透傳或自定義TLS/JSON)等。
③添加設(shè)備: 在產(chǎn)品下添加具體的設(shè)備。添加時,平臺會為每個設(shè)備生成唯一的三元組或證書,這是設(shè)備身份認(rèn)證的核心。
Ⅰ.三元組: 通常包括 ProductKey(產(chǎn)品密鑰)、DeviceName(設(shè)備名稱)、DeviceSecret(設(shè)備密鑰)。
Ⅱ.證書: 用于更安全的雙向認(rèn)證(mTLS)。
3、設(shè)備端燒錄身份信息
①將平臺分配的三元組(或證書)提前燒錄到設(shè)備的非易失性存儲器(Flash)中。這是后續(xù)設(shè)備能夠成功連接到指定平臺的關(guān)鍵。
4、設(shè)備上電并搜索網(wǎng)絡(luò)
①設(shè)備通電,NB-IoT模組開始工作。
②模組自動搜索并注冊到運營商的NB-IoT網(wǎng)絡(luò)。這個過程稱為 “附著”。
③附著成功后,模組會從網(wǎng)絡(luò)獲取一個IP地址。此時,設(shè)備已經(jīng)接入了互聯(lián)網(wǎng),但還不能與物聯(lián)網(wǎng)平臺通信。
這是最核心的認(rèn)證和注冊環(huán)節(jié)。
5、設(shè)備引導(dǎo)請求
①設(shè)備通過事先預(yù)置的引導(dǎo)服務(wù)器地址(Bootstrap Server)或設(shè)備配置服務(wù)器地址(DM Server)發(fā)起連接請求。這個地址通常是物聯(lián)網(wǎng)平臺提供的特定域名或IP。
②設(shè)備在請求中攜帶自己的身份信息(如DeviceName等)。
6、平臺身份認(rèn)證
①物聯(lián)網(wǎng)平臺接收到設(shè)備的引導(dǎo)請求后,會核對設(shè)備的三元組信息(或驗證證書)。
②平臺會使用 ProductKey 和 DeviceName 找到對應(yīng)的 DeviceSecret,并通過特定的算法(如Token生成算法)驗證請求的合法性。
7、平臺注冊與密鑰分發(fā)
①認(rèn)證通過后,平臺會將設(shè)備狀態(tài)標(biāo)記為在線,并完成設(shè)備注冊。
②平臺可能會為設(shè)備分配用于后續(xù)通信的資源(如果使用LwM2M協(xié)議)或返回連接MQTT Broker所需的特定信息(如用戶名、密碼)。
③對于CoAP/LwM2M協(xié)議,平臺會返回后續(xù)通信的真實設(shè)備管理服務(wù)器地址。
8、建立數(shù)據(jù)通道
①對于CoAP/LwM2M協(xié)議: 設(shè)備使用平臺返回的地址,與設(shè)備管理服務(wù)器建立安全連接,并上報自身支持的對象和資源(例如:溫度傳感器數(shù)據(jù)是一個資源,設(shè)備型號是另一個資源)。
②對于MQTT協(xié)議: 設(shè)備使用認(rèn)證后獲得的用戶名和密碼,連接到平臺的MQTT Broker,并訂閱(Subscribe)相關(guān)的Topic(如用于接收平臺指令的Topic)。
9、業(yè)務(wù)數(shù)據(jù)上行
①設(shè)備按照既定的業(yè)務(wù)邏輯(如定時、觸發(fā)等),通過已建立的數(shù)據(jù)通道,將傳感器數(shù)據(jù)、設(shè)備狀態(tài)等上報到物聯(lián)網(wǎng)平臺。
②CoAP: 通常是對某個資源執(zhí)行 Write 或 Notify 操作。
③MQTT: 向一個特定的Topic(如 /pk/dn/thing/event/property/post)發(fā)布(Publish)一條包含數(shù)據(jù)的消息。
10、平臺指令下行
①用戶通過物聯(lián)網(wǎng)平臺的控制臺或調(diào)用平臺API,向設(shè)備下發(fā)指令(如遠(yuǎn)程開關(guān)、參數(shù)配置)。
②平臺通過已建立的數(shù)據(jù)通道將指令下發(fā)給設(shè)備。
③CoAP: 平臺向設(shè)備的某個資源執(zhí)行 Write 操作。
④MQTT: 平臺向設(shè)備訂閱的Topic發(fā)布一條消息。
11、設(shè)備管理與狀態(tài)更新
①平臺可以隨時查詢設(shè)備的屬性、下發(fā)固件升級(FOTA)命令、遠(yuǎn)程重啟設(shè)備等。
②設(shè)備進(jìn)入低功耗模式(PSM或eDRX),并在需要時喚醒,重新與網(wǎng)絡(luò)和平臺交互。
1、低功耗特性: NB-IoT設(shè)備大部分時間處于PSM(省電模式)或eDRX(擴展非連續(xù)接收)狀態(tài)。在這些狀態(tài)下,設(shè)備無法被平臺實時下行喚醒(PSM下完全不行,eDRX下有延遲)。平臺下發(fā)的指令會先緩存,等設(shè)備主動上行通信時再一并下發(fā)。這是NB-IoT設(shè)計與傳統(tǒng)移動網(wǎng)絡(luò)最大的不同。
2、協(xié)議選擇:
①CoAP/LwM2M: 標(biāo)準(zhǔn)協(xié)議,非常適合傳感器數(shù)據(jù)上報和簡單的設(shè)備管理,本身支持PSM/DRX,功耗更低。是NB-IoT的推薦協(xié)議。
②MQTT: 靈活性高,生態(tài)好,更適合復(fù)雜的消息路由和業(yè)務(wù)場景,但在極端功耗場景下需要額外處理。
3、安全: 確保 DeviceSecret 等敏感信息在設(shè)備端安全存儲,通信過程建議使用DTLS/TLS加密。
4、測試與調(diào)試: 準(zhǔn)備一張NB-IoT測試卡,使用串口調(diào)試助手(如AT指令調(diào)試)和物聯(lián)網(wǎng)平臺的設(shè)備日志功能,是排查連接問題的重要手段。
這個流程涵蓋了從零開始到一個NB-IoT設(shè)備穩(wěn)定接入物聯(lián)網(wǎng)平臺并實現(xiàn)數(shù)據(jù)交互的全過程。實際開發(fā)中,每個平臺的API和細(xì)節(jié)可能略有不同,但核心原理是相通的。