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

物聯(lián)網(wǎng)傳輸協(xié)議MQTT到底是個(gè)什么?
nbiot和lora的優(yōu)缺點(diǎn)
NBIOT的相關(guān)資料推薦
物聯(lián)網(wǎng)傳輸協(xié)議MQTT的優(yōu)勢(shì)
物聯(lián)網(wǎng)傳輸協(xié)議MQTT的優(yōu)勢(shì)有哪些
中移M5311型號(hào)NBIoT模組MQTT開(kāi)發(fā)記

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

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

評(píng)論