0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

解決繁瑣的云平臺開發(fā)煩惱?我嘗試這樣做!

青山老竹農(nóng) ? 來源:jf_82863998 ? 作者:jf_82863998 ? 2024-09-21 08:08 ? 次閱讀

? 阿里云、騰訊云、中移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ā)運維成本。

三、**前期準(zhǔn)備工作 **

3.1 云平臺準(zhǔn)備

注冊/登錄騰訊云賬號,新建公共實例并且新建一個項目,后面我們會在此項目中進行演示。

注意:騰訊****新出了個V2版本開發(fā)平臺,本庫也支持但是不推薦使用。

至筆者編寫此文章為止,V2較V1版本去掉了證書校驗,去掉了自動注冊中自動創(chuàng)建設(shè)備功能,并且已經(jīng)和騰訊云確認(rèn)此改動。是的,自動注冊的自動創(chuàng)建設(shè)備改沒了,自動注冊要手動一個一個創(chuàng)建設(shè)備,呵呵。。。

3.2 硬件準(zhǔn)備

圖片?

  • 合宙Air780E開發(fā)板
  • USB數(shù)據(jù)線
  • Win10以上PC電腦

**四、實戰(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)

參數(shù)

圖片?

返回值:

圖片?

2)設(shè)備注冊分類

騰訊云支持密鑰校驗、證書校驗、動態(tài)注冊三種注冊方式(實際是四種,其中動態(tài)注冊里分兩種,但是對用戶無感所以這里不進行拆分)。

▼ 密鑰校驗(手動注冊) ▼

密鑰校驗即使用密鑰作為校驗憑據(jù),首先新建產(chǎn)品:

圖片?

圖片?

按照要求填寫,認(rèn)證方式選擇密鑰認(rè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ù),注意選擇證書認(rèn)證。

注意: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主題
numbertopic為string時生效0/1/2 默認(rèn)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,默認(rèn)0
number是否存檔,0/1,默認(rèn)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

僅僅如此了么?當(dāng)然不只!

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ù)就可以了。

?

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 物聯(lián)網(wǎng)
    +關(guān)注

    關(guān)注

    2898

    文章

    43779

    瀏覽量

    369032
  • 模組
    +關(guān)注

    關(guān)注

    6

    文章

    1390

    瀏覽量

    30159
  • 云平臺
    +關(guān)注

    關(guān)注

    1

    文章

    1246

    瀏覽量

    38790
收藏 人收藏

    評論

    相關(guān)推薦

    告別繁瑣平臺開發(fā)!IoT_CLOUD之百度

    文檔對接不同的協(xié)議,看著都頭大?。?! 為解決繁瑣平臺開發(fā)困擾, 合宙IoT_CLOUD應(yīng)運而生,一庫打通所有
    的頭像 發(fā)表于 10-21 07:05 ?325次閱讀
    告別<b class='flag-5'>繁瑣</b>的<b class='flag-5'>云</b><b class='flag-5'>平臺</b><b class='flag-5'>開發(fā)</b>!IoT_CLOUD之百度<b class='flag-5'>云</b>

    干貨分享:Air780E怎么連接華為?

    文檔對接不同的協(xié)議,看著都頭大!?。?為解決繁瑣平臺開發(fā)困擾, 合宙IoT_CLOUD應(yīng)運而生,一庫打通所有
    的頭像 發(fā)表于 10-15 07:30 ?178次閱讀
    干貨分享:Air780E怎么連接華為<b class='flag-5'>云</b>?

    AI平臺與傳統(tǒng)計算的區(qū)別

    AI平臺與傳統(tǒng)計算在定義、技術(shù)架構(gòu)、應(yīng)用場景和服務(wù)模式等方面存在顯著差異。
    的頭像 發(fā)表于 10-14 10:08 ?116次閱讀

    計算平臺層(PaaS)指的是什么?常見的應(yīng)用場景盤點

    計算平臺層(PaaS),全稱PlatformasaService(平臺即服務(wù)),是計算服務(wù)的一種重要模式。為用戶提供了一個基于云端的開發(fā)
    的頭像 發(fā)表于 09-25 09:57 ?156次閱讀

    如何理解計算?

    據(jù)的安全性。 **高性能計算:**計算平臺提供高性能的計算資源,用于處理復(fù)雜的科學(xué)和工程計算任務(wù)。用戶可以使用平臺來進行高性能計算、模擬和仿真,加速科學(xué)研究和工程設(shè)計的進程。 **
    發(fā)表于 08-16 17:02

    物聯(lián)網(wǎng)平臺是什么

    隨著信息技術(shù)的迅猛發(fā)展,物聯(lián)網(wǎng)(IoT)已經(jīng)成為推動社會進步和產(chǎn)業(yè)升級的重要力量。物聯(lián)網(wǎng)平臺作為物聯(lián)網(wǎng)技術(shù)的核心組成部分,其應(yīng)用已經(jīng)滲透到各個行業(yè),帶來了前所未有的變革。 物聯(lián)網(wǎng)平臺
    的頭像 發(fā)表于 07-25 16:51 ?527次閱讀

    ISCADA平臺使用指南

    一:網(wǎng)關(guān)方DSA準(zhǔn)備設(shè)定 二:打開并登錄ISCADA 平臺(https://iscada.com.cn) 三:添加網(wǎng)關(guān)管理配置 四:添加 機型管理 模塊 五: 機型管理
    發(fā)表于 07-24 08:03

    如何使用服務(wù)器刷寫自定義固件?

    AT 固件。 我們希望使用我們的自定義固件重新刷新此固件。 我們想這樣,因為我們將制造數(shù)百個這樣的模塊,我們希望一切都是自動化的,而無需改變IO引腳。 所以我們不打算用串行端口刷寫它,因為它需要改變接線
    發(fā)表于 07-15 08:23

    如何通過北向MQTT自定義報文格式對接到物聯(lián)網(wǎng)平臺

    、數(shù)據(jù)點類型、多層嵌套、數(shù)組等,即使通信上了,卻不能很好的解析。就像兩個國家的人電話撥通了,但是一個講英語,一個講中文,無法溝通。要解決這種尷尬局面,要不網(wǎng)關(guān)端定制,要不平臺端修改。但是
    的頭像 發(fā)表于 06-03 17:11 ?312次閱讀
    如何通過北向MQTT自定義報文格式對接到物聯(lián)網(wǎng)<b class='flag-5'>云</b><b class='flag-5'>平臺</b>

    高效云端管理的秘訣——華為命令行工具 KooCLI

    運維多年,公司從傳統(tǒng)運維改為上。剛一接觸時,確實因為要學(xué)習(xí)很多云知識而煩惱。每次想要執(zhí)行某個操作時,都要先登錄到平臺,瀏覽界面,尋找正
    的頭像 發(fā)表于 05-10 00:25 ?653次閱讀
    高效云端管理的秘訣——華為<b class='flag-5'>云</b>命令行工具 KooCLI

    ZWS平臺應(yīng)用(2)-設(shè)備基于SDK接入

    物聯(lián)網(wǎng)開發(fā)過程中遇到的棘手問題是:如何讓設(shè)備連接上?設(shè)備接入主要是開發(fā)者要實現(xiàn)設(shè)備與平臺進行連接、數(shù)據(jù)上報/透傳、命令控制等過程。接入
    的頭像 發(fā)表于 03-05 08:24 ?359次閱讀
    ZWS<b class='flag-5'>云</b><b class='flag-5'>平臺</b>應(yīng)用(2)-設(shè)備基于SDK接入

    什么是平臺?軟件被平臺攔截了怎么辦

    平臺是一種基于計算技術(shù)的服務(wù)平臺,它為用戶提供了可彈性擴展的計算資源、存儲能力和其他服務(wù),以支持用戶在環(huán)境下進行
    的頭像 發(fā)表于 02-02 16:37 ?1954次閱讀

    涂鴉開發(fā)平臺支持三方 IoT 平臺平滑遷移部署

    近期,大量開發(fā)者在問詢?nèi)绾芜w移至涂鴉IoT開發(fā)平臺。如何保障原先平臺上的存量設(shè)備和業(yè)務(wù)的正常運作?如何選擇新的安全、穩(wěn)定、靈活、可控的
    的頭像 發(fā)表于 12-30 08:15 ?893次閱讀
    涂鴉<b class='flag-5'>開發(fā)</b>者<b class='flag-5'>平臺</b>支持三方 IoT <b class='flag-5'>平臺</b>平滑遷移部署

    作為一個平臺開發(fā)工程師,如何使用愛星物聯(lián)?

    如果你是一位平臺開發(fā)工程師,需要了解愛星物聯(lián)作為IoT平臺,由 平臺、開放
    的頭像 發(fā)表于 12-18 10:52 ?317次閱讀
    作為一個<b class='flag-5'>平臺</b><b class='flag-5'>開發(fā)</b>工程師,<b class='flag-5'>我</b>如何使用愛星物聯(lián)?

    【ELF 1開發(fā)板試用】+ 8.2 MQTT開發(fā)——連接騰訊【原創(chuàng)】

    MQTT開發(fā)——連接騰訊 前文我們基于文檔中提供的項目教程,復(fù)現(xiàn)ELF 1連接阿里物聯(lián)網(wǎng)平臺,進行了MQTT開發(fā),復(fù)現(xiàn)后,筆者就想“為何
    發(fā)表于 12-15 23:10