? 阿里云、騰訊云、中移OneNET、華為云、百度云、TLink云等等,工程師們再熟悉不過了,因為工程師經(jīng)常要移植不同的SDK代碼或基于各家的手冊文檔對接不同的協(xié)議。。。這實在是一件極其繁瑣復(fù)雜的工程!
為解決繁瑣的云平臺開發(fā)困擾,今天我們試試合宙IoT_CLOUD!
本文將以Air780E+LuatOS作為示例,教你使用IoT_CLOUD連接騰訊云平臺。
注意:此庫為網(wǎng)絡(luò)通用庫不限制型號,即【所有LuatOS支持的蜂窩模組都可使用】。
本文同樣適用于:
Air780EX/Air780EG/Air780EP/Air780EPS…
**一、合宙IoT_CLOUD簡介 **
1.1 IoT_CLOUD特色簡介
IoT_CLOUD——是合宙專門為了合并IoT平臺而制作的LuatOS通用庫, 意在使用統(tǒng)一且極簡的代碼接入各個云平臺,輕松實現(xiàn)云功能。
用戶無需為那么多云平臺的接入而頭疼,只需要極簡的通用API即可輕松上云!并且因為通用,所以云平臺之間的遷移也十分方便。
1.2 IoT_CLOUD功能實現(xiàn)
IoT_CLOUD庫本質(zhì)就是上層設(shè)計一套通用的API,用庫來實現(xiàn)每個平臺功能的對接。
目前已經(jīng)實現(xiàn)了各個平臺的所有注冊方式, 其中自動注冊會將相關(guān)驗證信息保存KV,隨后使用此驗證信息進行連接,通知針對每個平臺添加了特有系統(tǒng)實現(xiàn),比如:設(shè)備上線通知、設(shè)備版本號上傳、OTA功能等。
用戶無需管理這些信息,只需要注意相關(guān)下發(fā)消息做應(yīng)用邏輯即可。
**二、騰訊云簡介 **
騰訊云物聯(lián)網(wǎng)開發(fā)平臺 (IoT Explorer)——是面向智慧生活與產(chǎn)業(yè)互聯(lián)應(yīng)用的物聯(lián)網(wǎng)PaaS平臺,為基于物聯(lián)網(wǎng)的各行業(yè)設(shè)備制造商、方案商及應(yīng)用開發(fā)商提供一站式設(shè)備智能化服務(wù)。
平臺提供海量設(shè)備連接與管理能力及基于騰訊連連的小程序應(yīng)用開發(fā)能力,并打通騰訊云基礎(chǔ)產(chǎn)品及AI能力,聚合騰訊生態(tài)內(nèi)容能力。從而提升傳統(tǒng)行業(yè)設(shè)備智能化的效率,降低用戶的開發(fā)運維成本。
三、**前期準備工作 **
3.1 云平臺準備
注冊/登錄騰訊云賬號,新建公共實例并且新建一個項目,后面我們會在此項目中進行演示。
注意:騰訊****新出了個V2版本開發(fā)平臺,本庫也支持但是不推薦使用。
至筆者編寫此文章為止,V2較V1版本去掉了證書校驗,去掉了自動注冊中自動創(chuàng)建設(shè)備功能,并且已經(jīng)和騰訊云確認此改動。是的,自動注冊的自動創(chuàng)建設(shè)備改沒了,自動注冊要手動一個一個創(chuàng)建設(shè)備,呵呵。。。
3.2 硬件準備
?
**四、實戰(zhàn)教學(xué) **
接下來,我們就不按部就班的介紹每個API,這樣很枯燥。我們直接實戰(zhàn),跟著文檔從0一步一步進行下去,每一步介紹涉及到的API,流程結(jié)束也就學(xué)會IoT_CLOUD庫的使用。
4.1 設(shè)備注冊
1)設(shè)備注冊API
注冊的API只有一個,但是支持了所有的注冊方式,使用也很簡單。
創(chuàng)建云平臺對象
iotcloud.new(cloud,iot_config,connect_config)
?
返回值:
?
2)設(shè)備注冊分類
騰訊云支持密鑰校驗、證書校驗、動態(tài)注冊三種注冊方式(實際是四種,其中動態(tài)注冊里分兩種,但是對用戶無感所以這里不進行拆分)。
▼ 密鑰校驗(手動注冊) ▼
密鑰校驗即使用密鑰作為校驗憑據(jù),首先新建產(chǎn)品:
?
?
按照要求填寫,認證方式選擇密鑰認證,之后我們點進去新建個設(shè)備,設(shè)備名稱我們可以直接填寫模組的imei。
?
這樣我們就創(chuàng)建好了設(shè)備,我們點進去看下設(shè)備信息。
?
可以看到我們需要的數(shù)據(jù)已經(jīng)被貼心的加了一鍵復(fù)制,我們要記錄下 【設(shè)備名稱、產(chǎn)品ID、設(shè)備密鑰】 這三個數(shù)據(jù),使用這三個數(shù)據(jù)我們就可以上云了。
接下來,我們看下代碼具體怎么用:
?
第一個參數(shù)表示我們使用的是騰訊云,第二個參數(shù)我們將上面得到的三個參數(shù)填寫到table中即可,so easy~
▼ 證書校驗(手動注冊) ▼
證書校驗即使用證書作為校驗憑據(jù),注意選擇證書認證。
注意:V2版本騰訊云不支持新建此校驗方式。
?
之后和上面密鑰校驗一樣的創(chuàng)建設(shè)備流程,創(chuàng)建之后我們再來看看設(shè)備信息。
?
大家應(yīng)該猜到了,還是三個參數(shù):
產(chǎn)品名稱、產(chǎn)品ID,最后一個變成了設(shè)備證書。
接下來,我們再來看下代碼具體怎么用:
?
第一個參數(shù)表示我們使用的是騰訊云,第二個參數(shù)我們將上面得到的產(chǎn)品名稱 產(chǎn)品ID,第三個參數(shù)寫上我們的證書,同樣很簡單~
▼ 動態(tài)注冊(推薦) ▼
上面兩種方式都需要我們手動在云平臺上創(chuàng)建設(shè)備,但是我們的產(chǎn)品會有很多設(shè)備,手動創(chuàng)建太麻煩。
動態(tài)注冊就解決了這些問題:
——可以實現(xiàn)統(tǒng)一代碼使用時動態(tài)進行設(shè)備注冊,無需手動創(chuàng)建。
注意:V2版本騰訊云不支持自動創(chuàng)建設(shè)備
這樣我們就簡單了很多,上面兩種方式創(chuàng)建的產(chǎn)品詳情中都有動態(tài)注冊開關(guān),我們只需要打開動態(tài)注冊開關(guān)和自動創(chuàng)建設(shè)備開關(guān)即可支持兩種方式的動態(tài)注冊。
?
隨后會生成動態(tài)注冊上方的產(chǎn)品密鑰,我們復(fù)制產(chǎn)品ID和產(chǎn)品密鑰即可。
接下來,我們再來看下代碼具體怎么用:
?
第一個參數(shù)表示我們使用的是騰訊云,第二個參數(shù)我們將上面得到的產(chǎn)品ID和產(chǎn)品密鑰,非常的簡單!
4.2 連接/斷開云平臺
注冊完成了,我們開始上云了~ 非常簡單,iotcloud庫的api基本和mqtt庫一樣,所以連接只需要一個API。
1)云平臺連接
cloudc:connect()
參數(shù):無
返回值:無
例子:
iotcloudc:connect()
連接說了,我們也說一下斷開連接,也只需要一個API。
2)云平臺斷開
cloudc:disconnect()
參數(shù):無
返回值:無
例子:
iotcloudc:disconnect()
4.3 訂閱/取消訂閱主題
同上,訂閱和取消訂閱也很簡單。
1)云平臺訂閱
cloudc:subscribe(topic, qos)
參數(shù):
傳入值類型 | 解釋 |
---|---|
string/table | 主題 |
number | topic為string時生效0/1/2 默認0 |
返回值:無
2)云平臺取消訂閱
cloudc:unsubscribe(topic)
參數(shù):
傳入值類型 | 解釋 |
---|---|
string/table | 主題 |
返回值:無
4.4 發(fā)布數(shù)據(jù)
數(shù)據(jù)的發(fā)布也同MQTT一樣。
云平臺發(fā)布
cloudc:publish(topic,data,qos,retain)
參數(shù):
傳入值類型 | 解釋 |
---|---|
string/table | 主題 |
string | 消息,必填,但長度可以是0 |
number | 消息級別,0/1,默認0 |
number | 是否存檔,0/1,默認0 |
返回值:無
4.5 接收數(shù)據(jù)
接收統(tǒng)一使用了"iotcloud"消息進行通知,所以我們只需要訂閱此系統(tǒng)消息即可。
?
4.6 云平臺關(guān)閉
云平臺關(guān)閉會釋放掉內(nèi)存,之后不能再進行重接,只能重新新建再連接。
云平臺關(guān)閉
cloudc:close()
參數(shù):無
返回值:無
例子:
iotcloudc:close()
4.7 云平臺OTA
僅僅如此了么?當然不只!
IoT_CLOUD還支持了騰訊云平臺的OTA功能,可以直接進行OTA,且所有流程iotcloud庫都進行了支持,做到了用戶無感。
用戶在訂閱"iotcloud"消息中會有iotcloud.OTA事件,此事件即為OTA完成的通知,我們選擇時間進行設(shè)備重啟即可。
**五、效果演示 **
5.1 代碼演示
好了,接下來我們看下完整代碼和效果,這里以動態(tài)注冊為例。
?
5.2 設(shè)備日志
?
編
可以看到我們的設(shè)備打印了連接成功,證明自動注冊+連接流程已經(jīng)完成。
5.3 云平臺效果
?
可以看到,設(shè)備已經(jīng)自動注冊并且在線。
至此,云平臺已經(jīng)連接成功。剩下的就是要根據(jù)自己的產(chǎn)品需求,使用自己的模型上報/下發(fā)數(shù)據(jù)就可以了。
?
-
物聯(lián)網(wǎng)
+關(guān)注
關(guān)注
2900文章
44009瀏覽量
369934 -
模組
+關(guān)注
關(guān)注
6文章
1406瀏覽量
30212 -
云平臺
+關(guān)注
關(guān)注
1文章
1262瀏覽量
38823
發(fā)布評論請先 登錄
相關(guān)推薦
評論