精品国产人成在线_亚洲高清无码在线观看_国产在线视频国产永久2021_国产AV综合第一页一个的一区免费影院黑人_最近中文字幕MV高清在线视频

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

【技術分享】Lierda NB860+Lierda 云平臺——云管端協作讓萬物互聯更簡單(一)

利爾達科技集團 ? 2022-04-02 10:13 ? 次閱讀

隨著物聯網行業的快速發展,涌現出越來越多物聯網云服務平臺。如何快速實現應用開發,如何管理,如何讓設備快速上云,成為關注的焦點。

本文將描述如何使用NB860系列模組通過MQTT指令快速接入利爾達IoT基礎服務平臺,并介紹兩者數據交互操作流程,詳細的AT交互流程可以幫助用戶或開發人員盡快完成相關的應用開發。

所需產品

本次接入的利爾達IoT基礎服務平臺是我司自主研發的云平臺,為設備提供安全可靠的連接管理能力,整合物聯網產業鏈上下游,向下連接智能設備,向上承接物聯網應用,形成端到云完整鏈路物聯網解決方案,賦能企業各類IOT場景接入。

另外用到的利爾達NB860/MB960/MB260系列模組是基于5G NB-IoT芯片自主開發的第三代NB-IoT模組。該款模組集高性價比、高安全性和低功耗等優點于一身,新增藍牙、OpenCPU、GNSS定位等能力,為智能表計、智能煙感、智能停車、智慧路燈等百萬級成熟NB-IoT應用提供了更優選擇。

利爾達NB860/MB960/MB260系列模組支持TCP/UDP、MQTT、LwM2M等多種協議接入云平臺,為行業應用開發提供了更多的可能性。今天文章第一期將為大家介紹利爾達NB860模組基于MQTT協議快速接入利爾達IoT基礎服務平臺,實現數據交互。

快速上云設備端完整AT示例流程

向上滑動閱覽

//配置服務器IP及域名

AT+MQTTCFG="host",0,"mqtt.xiot.senthink.com",1883

OK

//配置客戶端標識

AT+MQTTCFG="clientid",0,"B6E092A55031428493AF6AAD6D694AD5"

OK

//連接服務器

[1116.270]發→◇AT+MQTTCONN=0,0,0,"5D6A3E7E-35884709-865186050012583","6387E4120EDD5A214F9A07D4BD2FB051"

+MQTTCONNACK: 0,0,0

OK

//訂閱MQTT消息AT+MQTTSUB=0,1,"/sys/5D6A3E7E/35884709/865186050012583/downlink",1

+MQTTSUBACK: 0,1,0

OK

//設備請求入網

AT+MQTTPUB=0,1,0,0,"/sys/device/join","{"MessageId": 1231,"HeaderCtrl": 2,"Mode": 1,"Nonce": 123,"Payload": {"OpenID": "5D6A3E7E", "ProductID": "35884709","NodeEui": "865186050012583","ClientID": "B6E092A55031428493AF6AAD6D694AD5", "Type": 2,"Sign": "1fb6a0da"}}"

[1142.489]收←◆+MQTTPUBACK: 0,1,0

OK

//收到服務器下發數據

+MQTTRECV: 0,3,1,0,/sys/5D6A3E7E/35884709/865186050012583/downlink,{"HeaderCtrl":2,"Mode":1,"Nonce":14,"Payload":{"Code":0,"SessionID":"75FC7DC3"},"MessageId":1231}

//上發設備端數據AT+MQTTPUB=0,1,0,0,"/sys/5D6A3E7E/35884709/865186050012583/uplink","{ "MessageId" : 1231,"HeaderCtrl":4,"Mode":1,"Nonce":10,"Payload":"CB96395F5065FD121D88B1593EFE"}"+MQTTPUBACK: 0,1,0

OK

//收到服務器下發數據

+MQTTRECV: 0,4,1,0,/sys/5D6A3E7E/35884709/865186050012583/downlink,{"MessageId":1231,"HeaderCtrl":4,"Code":"200","Msg":"SUCCESS"}

+MQTTRECV: 0,5,1,0,/sys/5D6A3E7E/35884709/865186050012583/downlink,{"HeaderCtrl":7,"Mode":0,"Nonce":48,"Payload":"wwdwdwd","MessageId":751504437}

3836c346-b1e2-11ec-82f6-dac502259ad0.png

如上圖所示,示例流程展示了設備在配置及連接后進行收發數據的調試操作,在實際應用開發中通過開發MCU代碼適配參數,即可完成了訂閱推送(應用APP/Web)前所有開發工作,下文將以上步驟給大家做詳細講解。

Lierda X平臺操作流程

※ 用戶注冊

1.訪問https://account.xiot.senthink.com/login,點擊注冊按鈕,進入注冊頁面2.填寫注冊信息,完成注冊3.完成信息認證,開通物聯網平臺

384dbb5a-b1e2-11ec-82f6-dac502259ad0.png

圖1 注冊頁面※ 設備接入前準備事項設備在接入利爾達IoT基礎服務平臺之前,需要先完成下事項:1.在平臺提供的管理后臺注冊一個硬件廠商賬號,云平臺會為該賬號分配一個廠商的唯一標識OpenID;2.注冊廠商賬號后,需要在平臺提供的管理后臺上創建一個產品類,云平臺會為該產品分配一個產品的唯一標識 ProductID 以及產品的密鑰 ProductKey(用于入網加密以及會話 Key 的更新,注意保密?。?.設備接入利爾達IoT基礎服務平臺之前,必須要將基礎參數燒錄進設備。*至此,接入前的準備工作完成!
※ 注冊,創建產品設備提條件:已在利爾達IoT基礎服務平臺注冊賬號。
385d691a-b1e2-11ec-82f6-dac502259ad0.png圖2 產品創建頁面

步驟1:創建產品

1.登錄物聯網平臺控制臺2.在云平臺頁面,找到產品管理,單擊產品管理進入產品詳情頁面。在中間導航欄,選擇創建產品,單擊創建產品,如下圖所示。

3874553a-b1e2-11ec-82f6-dac502259ad0.png

圖3 產品創建

步驟2:設置物模型、topic消息等,添加自定義Topic

1.登錄物聯網平臺控制臺。2.在產品管理頁面,找到對應的產品,單擊產品進入產品詳情頁面。3.在產品頁面,找到需要自定義Topic類的產品,并單擊對應操作欄中的查看按鈕。4、在產品詳情頁面,單擊Topic類詳情 > 自定義Topic > 定義Topic類。5、配置參數,單擊確認。

389b5158-b1e2-11ec-82f6-dac502259ad0.png

圖4 新建topic

步驟3:創建設備

1、登錄物聯網平臺控制臺。2、在左側導航欄,選擇設備管理>設備列表。3、在設備頁面,單擊添加設備。4、在添加設備對話框中,輸入設備信息,單擊確認。

38c66118-b1e2-11ec-82f6-dac502259ad0.png

38e1c552-b1e2-11ec-82f6-dac502259ad0.png

圖5 設備創建

執行結果設備注冊成功后,將自動彈出設備證書彈框。您可以查看、一鍵復制設備證書信息,包含DeviceID、DeviceSecret、OpenID、ProductID和ProductKey,是設備與物聯網平臺進行通信的重要身份認證,建議您妥善保管。
后續步驟1.在設備列表頁,單擊對應設備,進入設備詳情頁。您可以查看設備證書信息、數據加密密鑰、繼承產品的基礎信息、禁用/啟用設備、設備狀態、激活時間、最后在線/離線時間等。2.在設備詳情頁,可對設備在線調試、遠程配置和日志分析。3.在設備列表頁,可以刪除不再使用的設備。刪除設備不可撤回,請謹慎操作。至此,平臺側操作已全部完成。
※ 設備側操作上電檢查流程1.AT //判斷模組是否上電開機成功2.AT+CFUN=1 //關閉飛行模式3.AT+CEREG? //判斷PS域附著狀態,第二個參數為1或5表示附著正常。
設置服務端IP或域名使用AT+MQTTCFG="host",0,"host_name",1883命令設置服務端IP或域名。其中,:服務端的IP或域名:1~2000字節字符串。LierdaX平臺MQTT接入默認域名為:mqtt.xiot.senthink.com,1883。示例AT+MQTTCFG="host",0,"mqtt.xiot.senthink.com",1883
設置客戶端標識使用AT+MQTTCFG="clientid",,命令設置客戶端標識 連接ID:取值0~2。 客戶端標識符:字符串類型,1~128字節字符串。賢芯平臺clientid可在設備詳情頁查看。

39019b5c-b1e2-11ec-82f6-dac502259ad0.png

示例AT+MQTTCFG="clientid",0,"ACF37***************EA9F3582"
連接服務端使用AT+MQTTCONN=,,,,命令連接服務端,在收到+MQTTCONNACK: 0,0,0 OK即已經成功連接上平臺。 連接ID:取值0~2。SSL TCP連接使能:0:不采用;1:采用SSL TCP連接。will_flag 遺囑標志,取值0或1:0:不帶遺囑;1:CONNECT報文帶有遺囑。 用戶名:0~512字節的字符串。密碼:0~512字節的字符串。注:賢芯平臺登錄賬號以及密碼在創建設備時自動生成,可在設備詳情頁查看。示例

AT+MQTTCONN=0,0,0,"5*******-********-8************3","7*******************AB2C2"


訂閱MQTT消息

使用AT+MQTTSUB=,,,[,,]

[,,]命令訂閱消息,已經訂閱成功的消息可在平臺上的設備topic列表查看。

< Link_ID >連接ID:取值0~2。

報文標識符:取值1~65535。

主題名:0~512字節字符串。一次最多可訂閱3個主題。

訂閱消息QOS等級:取值0~2。

示例

AT+MQTTSUB=0,1,"/sys/5********/*********/86**********83/downlink",1

收←◆

+MQTTSUBACK: 0,1,0

OK


設備請求入網(Join)

設備上報的通用入網 Topic:/sys/device/join

設備在進行正式的數據通信之前,必須先向 IoT 平臺請求入網。設備應主動與 IoT 平臺建立 TCP Socket 鏈接。在成功建立鏈接后,設備必須向平臺發送請求入網數據幀,以讓平臺為設備分配通信資源;否則平臺將拒絕與設備進行通信。

請求入網數據幀使用的 Command 為 2;數據幀格式和內容如下所示:

{ "MessageId" : 1231,

"HeaderCtrl":2, //命令碼

"Mode":0, //0:不加密, 1:加密

"Nonce":10, //1-128隨機數

"Payload":{

"OpenID":"E0C040B1",

"ProductID":"A4BC6002",

"NodeEui":"....", //設備標識

"ClientID":"....", //認證后返回的 ClientID "Type":0, //0:一型一密免注冊,1:一型一密預注冊,2:一機一密預注冊

"Sign":"FE448731"

}

}

設備向 IoT 平臺發起的入網請求數據幀中包含了Payload域,用于攜帶額外的信息。Payload域中包含的內容及說明如下所示:

391f7a82-b1e2-11ec-82f6-dac502259ad0.png

平臺收到入網請求后,根據當前產品類型是免注冊還是預注冊,重新計算 Sign 并與設備上報的 Sign 值進行對比,不同類型設備的 Sign 計算規則詳見2.4小節。

平臺收到設備的入網請求數據幀并成功認證設備身份后,會為該設備分配通信資源,然后使用同樣的Command(2)響應設備。IoT平臺返回Topic :/sys/{openId}/{productId}/{deviceId}/downlink,響應設備入網請求的數據如下:

{ "HeaderCtrl":2, //命令碼

"MessageId" : 1231,

"Mode":0, //0:不加密, 1:加密

"Nonce":10, //1-128隨機數

"Payload":{

"Code":0,

"SessionID":"4655434B"

}

}

Join指令的 Code 說明:對于設備請求入網指令(Join),Code 定義為平臺回復設備的入網請求的響應碼。

響應碼定義如下表所示:

3943d044-b1e2-11ec-82f6-dac502259ad0.png

如果設備發送了入網請求,等待超時后沒有收到平臺的任何回復,則有可能是網絡問題導致數據丟失,建議檢查網絡并重試。只有響應碼(Code)值為0的時候,響應數據中的 Payload 中所攜帶的 SessionID 才是 IoT 平臺分配的有效的 SessionID:

3960316c-b1e2-11ec-82f6-dac502259ad0.png

設備成功入網后,IoT平臺返回了 SessionID。設備需要使用入網安全密鑰ProductKey和本次回復中的隨機數Nonce來計算生成后續與 IoT平臺進行通信過程中用于加密用戶應用數據的密鑰(SessionKey),計算方法如下描述(偽代碼):

加密方式:AES128_ECB_PKCS5Padding SessionKey = ENCRYPT( ProductKey , SessionID + Nonce);

示例

ProductKey :A0 1A 24 79 67 25 73 DF 84 53 7D F4 C7 3D 3F CC

SessionID:46 55 43 4B

Nonce(123):7B

則拼接結果為:46 55 43 4B 7B 加密運算結果為:40 8C 79 0F 85 BF 60 E6 D4 F1 C1 3C 6A 5C 4C 8B SessionKey = 408C790F85BF60E6D4F1C13C6A5C4C8B

如果使用非加密模式進行應用數據的傳輸,則可以忽略此步驟,即不需要計算 SessionKey 的值。

特別注意:設備的入網請求數據如果設置了Mode 為1,則平臺會在設備心跳和設備數據上行時檢查設備的SessionKey是否過期,如果平臺監測到設備的SessionKey過期,則會主動更新設備SessionKey并下發給設備;如果入網請求數據設置了 Mode 位為0,則平臺不會檢查設備的 SessionKey 是否過期。

入網sing值計算請參考文檔《Lierda_NB860&MB960&MB260_Application_Notes_MQTT對接Lierda X平臺》

備注

設備每次與 IoT 平臺建立新的 MQTT 鏈接后(首次連接或者斷線重連),都必須向平臺重新請求入網,否則平臺將拒絕與設備進行通信。


數據交互

通過AT+MQTTPUB=,,,,,命令向平臺發布消息。

連接ID:取值0~2。

報文標識符:取值1~65535。

發布消息QOS等級:取值0~2。

保留標志:取值0~1。

主題名:0~512字節字符串。

有效載荷:0~1500字節字符串。

示例

AT+MQTTPUB=0,1,0,0,"/sys/5********/*********/86**********83/uplink","{ "MessageId" :

1231,"HeaderCtrl":4,"Mode":1,"Nonce":10,"Payload":"CB963****************EFE"}"

[1112.040]收←◆

[1112.060]收←◆

+MQTTPUBACK: 0,1,0

OK

[1113.680]收←◆

+MQTTRECV:0,8,1,0,/sys/5********/*********/86**********83/downlink,{"MessageId":1231,"HeaderCtrl":4,"Code":"200","Msg":"SUCCESS"}

+MQTTRECV:0,9,1,0,/sys/5********/*********/86**********83/uplink_ack,{"MessageId":1231,"HeaderCtrl":4,"Code":"200","Msg":"SUCCESS"}

設備上報數據可在運行日志中查看;下發透傳數據可在在線調試中實現。

39744026-b1e2-11ec-82f6-dac502259ad0.png

39a19fda-b1e2-11ec-82f6-dac502259ad0.png

至此,我們已完成基于MQTT協議的端(Lierda NB860模組)到云(Lierda X平臺)對接并實現數據交互功能。下一期我們將介紹NB860模組配合X平臺進行云云對接快速上云,敬請期待。


聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 物聯網
    +關注

    關注

    2904

    文章

    44306

    瀏覽量

    371464
收藏 人收藏

    評論

    相關推薦

    大華股份與萬物簽署戰略合作協議

    近日,大華股份與萬物空間科技服務股份有限公司(以下簡稱“萬物”)簽署戰略合作協議。雙方將重點圍繞園區安全、服務生態合作,尤其在弱電智能化服務、居家安全服務、人力外包服務、園區消防遠
    的頭像 發表于 10-31 15:26 ?270次閱讀

    工業聯網(IOT)平臺是什么

    隨著信息技術的飛速發展,工業互聯網(IoT)平臺已成為推動制造業數字化轉型的重要力量。這平臺
    的頭像 發表于 09-19 14:16 ?370次閱讀

    聯網平臺應用場景

    逐步改變著傳統行業的運作模式,逐步開啟萬物互聯的新紀元。 、智慧城市 通過部署在城市基礎設施中的各類傳感器、網絡攝像頭、人體監測等設備,聯網
    的頭像 發表于 08-22 16:17 ?430次閱讀

    如何理解計算?

    計算的工作原理是什么? 計算和傳統IT技術的區別? 華納如何幫助您實現計算? 什么是
    發表于 08-16 17:02

    聯網平臺是什么

    隨著信息技術的迅猛發展,聯網(IoT)已經成為推動社會進步和產業升級的重要力量。聯網平臺作為
    的頭像 發表于 07-25 16:51 ?661次閱讀

    Lierda NB81 MB26模組AT指令有哪些?

    Lierda NB81 MB26模組AT指令有哪些?
    發表于 06-04 08:05

    請問Lierda 5G EVK具體支持哪些linux系統?

    Lierda 5G EVK這款產品的開發驅動適用于Ubantu 18.04或者centos嗎,ARM架構的主機,接這個調驅動麻不麻煩
    發表于 06-04 07:50

    如何使用NB86-G_OpenCPU聯接電信AEP平臺?

    如何使用NB86-G_OpenCPU聯接電信AEP平臺? AT+CGMR,版本如下 SSB,V150R100C10B200SP1 SECURITY_A,V150R100C20B300SP5
    發表于 06-04 07:21

    如何在AT COMMAND的方式下快速的完成Lierda NB861/MB961/MB261模組與OneNET平臺的對接工作?

    在AT COMMAND的方式下快速的完成Lierda NB861/MB961/MB261模組與OneNET平臺的對接工作
    發表于 06-04 07:17

    Lierda NB81系列模塊的基本參數是什么?

    Lierda NB81系列模塊的基本參數
    發表于 06-04 06:59

    如何配置和使用Lierda NB861 MB261 MB961模組的低功耗模式?

    如何配置和使用Lierda NB861 MB261 MB961模組的低功耗模式,并如何通過相關低功耗配置AT指令操作流程來指導用戶完成低功耗應用的開發呢?
    發表于 06-04 06:46

    如何使用Lierda NB861 MB261 MB961模組的SocKet AT指令與服務器建立網絡連接呢?

    如何使用Lierda NB861 MB261 MB961模組的SocKet AT指令,將客戶的設備配置為Socket客戶,從而與服務器建立網絡連接,并實現數據的發送與接收呢?
    發表于 06-04 06:00

    使用愛星平臺,如何設備快速入?

    hello~小伙伴們,今天聊聊使用愛星平臺,如何設備快速入,目前有4款設備需要逐步接入到愛星
    的頭像 發表于 01-16 14:29 ?337次閱讀
    使用愛星<b class='flag-5'>物</b>聯<b class='flag-5'>平臺</b>,如何<b class='flag-5'>讓</b>設備快速入<b class='flag-5'>云</b>?

    使用愛星平臺如何設備快速入呢?

    今天聊聊使用愛星平臺,如何設備快速入,目前有4款設備需要逐步接入到愛星
    的頭像 發表于 01-13 15:14 ?537次閱讀
    使用愛星<b class='flag-5'>物</b>聯<b class='flag-5'>平臺</b>如何<b class='flag-5'>讓</b>設備快速入<b class='flag-5'>云</b>呢?

    遠程監控平臺你的數據無處可藏!

    遠程監控平臺你的數據無處可藏! 平臺遠程監控是種通過
    的頭像 發表于 01-05 17:00 ?534次閱讀