NBIoT可以大幅降低企業(yè)布署設(shè)備的WiFi需求,也可避免因為場域WiFi不穩(wěn)定所造成的問題,那么NBIoT要如何實做?
本文將會以NBIoT傳輸MQTT,并以計算機(jī)的MQTTLens進(jìn)行接收為例,說明整個傳輸接收流程。
首先我們必須準(zhǔn)備NBIoT的模塊,以筆者所開發(fā)的ESP32開發(fā)整合版就有留NBIoT接口,我們的NBIoT使用的芯片是基于聯(lián)發(fā)科(MTK-2526)的BC26模塊,雖然他是USB外型,但并非USB傳輸格式,只是我們帥氣的黃董認(rèn)為做成USB外型比較堅固耐用,并且可以后續(xù)進(jìn)行串接。
關(guān)于上面的擴(kuò)充版,詳細(xì)規(guī)格數(shù)據(jù)可以參考附件:
一、NBIoT基礎(chǔ)設(shè)定:
目前NBIoT大多采用ATCommand通訊,若讀者已經(jīng)取得上面的擴(kuò)充版及任何的NBIoT SIM卡,那就可以開始下面的流程。
1. 在ESP32上安裝ATCommand溝通程序:
此程序會將ESP32的序列通訊輸入轉(zhuǎn)至NBIoT(Serial2 RX:16、TX:17)中,這樣我們就可以手動來下達(dá)AT命令
2. ATI:ATI是查詢系統(tǒng)版本,不過我們會用來測試BC26是否正常,輸入ATI后,會得到BC26的回復(fù)如下圖。若無響應(yīng),那就必須檢查模塊是否有插好。另外就是ESP32 1.0.6的版本也會造成無法響應(yīng),因此先選擇1.0.4。
3. AT+QCCID :此指令用于檢查SIM卡狀態(tài),一般來說,會列出該SIM卡的卡號,如下圖,若SIM卡未安裝,則會顯示ERROR
4.AT+QCGDEFCONT?:詢問APN設(shè)定方式,由于不同系統(tǒng)商會有不同的APN(APN, Access Point Name)設(shè)定,例如下圖就是以中華電信或遠(yuǎn)傳電信為例,兩者都采用"IPV4V6","internet.iot"為APN,當(dāng)我們利用這個指令查詢時,就會得到這個結(jié)果,下一步就是利用這個指令來設(shè)定這張NBIoT模塊的APN。要注意的是這里的「?」一定要使用半角「?」不可使用全角「?」。
5.AT+QCGDEFCONT=<
到此為止,就完成NBIoT的設(shè)定工作,以上五個步驟只須做一次,以后NBIoT模塊只要開機(jī)會就自動以APN尋找當(dāng)?shù)赜蟹?wù)的基地頭,并完成網(wǎng)絡(luò)注冊(上網(wǎng))。
二、NBIoT數(shù)據(jù)傳輸:
當(dāng)NBIoT完成APN設(shè)定后,就可以準(zhǔn)備傳輸資料了,請依照以下步驟。
1. AT+CEREG? :詢問基地臺注冊狀態(tài),也就是否有找到服務(wù)的基地臺,若響應(yīng)為「+CEREG: 0,1 」代表注冊完成,可以準(zhǔn)備傳輸資料,若是「+CEREG: 0, 0」或「+CEREG: 0,2 」都是代表無法上網(wǎng),可能是訊號不佳,或者當(dāng)?shù)責(zé)o服務(wù)等問題。
2.AT+CESQ:詢問網(wǎng)絡(luò)狀態(tài),也就是詢問網(wǎng)絡(luò)訊號強弱,以下圖而言,第一個數(shù)字為39,代表網(wǎng)絡(luò)訊號還不錯,數(shù)字為0~63之間,越大代表網(wǎng)絡(luò)訊號越好,10以下就必須注意傳輸可能會很不穩(wěn)定,建議更換布置地點或增加天線強度,還有就是「99」則是故障的意思。
到這里我們已經(jīng)確認(rèn)NBIoT已經(jīng)完成聯(lián)機(jī),下一步我們以MQTT聯(lián)機(jī)到免注冊的Broker:mqtt.eclipseprojects.io,進(jìn)行一次的推播為例。
3. AT+QMTOPEN=0,"<
4.AT+QMTCONN=0,"<
5.AT+QMTPUB=0,0,<
6. 到MQTTLens查看訂閱主題:此時到計算機(jī)的MQTTLens(或手機(jī)MQTTDash等APP)查看是否有收到訂閱的資料
用NodeRed接收,并用Dashboard的Gauge呈現(xiàn)
7. AT+QMTCLOSE=0:關(guān)閉MQTT服務(wù)器聯(lián)機(jī),當(dāng)傳輸完畢后,若短期內(nèi)不會再使用,可以關(guān)閉與MQTT的聯(lián)機(jī),節(jié)省電源。
到此為止,我們就完成一次的MQTT推播,當(dāng)然啦,這次我們是手動傳輸,目的是讓讀者了解MQTT的傳輸流程,未來系統(tǒng)要實際使用時,要寫一個自動傳輸?shù)某绦?,這部份后續(xù)再分享。
除了用MQTTLens來接收之外,也可以利用NodeRed來接收并儲存數(shù)據(jù),并可以利用Dashboard來呈現(xiàn),Nodered可以說是搭配MQTT最好用的工具了。
審核編輯:湯梓紅
-
WIFI
+關(guān)注
關(guān)注
81文章
5362瀏覽量
207094 -
MQTT
+關(guān)注
關(guān)注
5文章
663瀏覽量
23393 -
nbiot
+關(guān)注
關(guān)注
8文章
63瀏覽量
23059
原文標(biāo)題:NBIoT與MQTT傳輸與接收
文章出處:【微信號:易心Microbit編程,微信公眾號:易心Microbit編程】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
stm32l053r8使用空閑中斷接收消息,連在nbiot-bc26上就收不到消息的原因?
物聯(lián)網(wǎng)傳輸協(xié)議MQTT到底是個什么?
nbiot和lora的優(yōu)缺點
NBIOT的相關(guān)資料推薦
物聯(lián)網(wǎng)傳輸協(xié)議MQTT的優(yōu)勢
物聯(lián)網(wǎng)傳輸協(xié)議MQTT的優(yōu)勢有哪些
中移M5311型號NBIoT模組MQTT開發(fā)記

零基礎(chǔ)開發(fā)NBIOT

強大的MQTT! 關(guān)于它你應(yīng)該知道什么

評論