0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

一库打通所有云平台!合宙IoT_CLOUD之【腾讯云】

Air700ECQ资料 来源:Air700ECQ资料 2024-10-15 16:08 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

​ 众所周知,市面上有很多云平台,阿里云、腾讯云、中移OneNET、华为云、百度云、TLink云等等......并且每家云平台都有自己的协议,工程师要移植不同的SDK代码或基于各家的手册文档对接不同的协议,看着都头大!!!

为解决繁琐的云平台开发困扰,

合宙IoT_CLOUD应运而生,一库打通所有云平台!

本文将以Air780E+LuatOS作为示例,教你使用IoT_CLOUD连接腾讯云平台。

注意:此库为网络通用库不限制型号,即【所有LuatOS支持的蜂窝模组都可使用】。

本文同样适用于:

Air780EX/Air780EG/Air780EP/Air780EPS…

一、**合宙IoT_CLOUD简介 **

编辑

1.1 IoT_CLOUD特色简介

IoT_CLOUD——是合宙专门为了合并IoT平台而制作的LuatOS通用库, 意在使用统一且极简的代码接入各个云平台,轻松实现云功能。

用户无需为那么多云平台的接入而头疼,只需要极简的通用API即可轻松上云!并且因为通用,所以云平台之间的迁移也十分方便。

1.2 IoT_CLOUD功能实现

IoT_CLOUD库本质就是上层设计一套通用的API,用库来实现每个平台功能的对接。

目前已经实现了各个平台的所有注册方式, 其中自动注册会将相关验证信息保存KV,随后使用此验证信息进行连接,通知针对每个平台添加了特有系统实现,比如:设备上线通知、设备版本号上传、OTA功能等。

用户无需管理这些信息,只需要注意相关下发消息做应用逻辑即可。

最新demo源码下载:

https://gitee.com/openLuat/LuatOS/blob/master/demo/iotcloud/main.lua

二、**腾讯云简介 **

腾讯云物联网开发平台 (IoT Explorer)——是面向智慧生活与产业互联应用的物联网PaaS平台,为基于物联网的各行业设备制造商、方案商及应用开发商提供一站式设备智能化服务。

平台提供海量设备连接与管理能力及基于腾讯连连的小程序应用开发能力,并打通腾讯云基础产品及AI能力,聚合腾讯生态内容能力。从而提升传统行业设备智能化的效率,降低用户的开发运维成本。

腾讯云官网:

https://cloud.tencent.com/

**三、前期准备工作 **

3.1 云平台准备

注册/登录腾讯云账号,新建公共实例并且新建一个项目,后面我们会在此项目中进行演示。

注意:腾讯****新出了个V2版本开发平台,本库也支持但是不推荐使用。

至笔者编写此文章为止,V2较V1版本去掉了证书校验,去掉了自动注册中自动创建设备功能,并且已经和腾讯云确认此改动。是的,自动注册的自动创建设备改没了,自动注册要手动一个一个创建设备,呵呵。。。

3.2 硬件准备

  • 合宙Air780E开发板
  • USB数据线
  • Win10以上PC电脑

**四、实战教学 **

接下来,我们就不按部就班的介绍每个API,这样很枯燥。我们直接实战,跟着文档从0一步一步进行下去,每一步介绍涉及到的API,流程结束也就学会IoT_CLOUD库的使用。

4.1 设备注册

1)设备注册API

注册的API只有一个,但是支持了所有的注册方式,使用也很简单。

创建云平台对象

iotcloud.new(cloud,iot_config,connect_config)

参数:

图片

编辑

返回值:

图片

编辑

2)设备注册分类

腾讯云支持密钥校验、证书校验、动态注册三种注册方式(实际是四种,其中动态注册里分两种,但是对用户无感所以这里不进行拆分)。

▼ 密钥校验(手动注册) ▼

密钥校验即使用密钥作为校验凭据,首先新建产品:

图片

编辑

图片

编辑

按照要求填写,认证方式选择密钥认证,之后我们点进去新建个设备,设备名称我们可以直接填写模组的imei。

图片

编辑

这样我们就创建好了设备,我们点进去看下设备信息。

图片

编辑

可以看到我们需要的数据已经被贴心的加了一键复制,我们要记录下 【设备名称、产品ID、设备密钥】 这三个数据,使用这三个数据我们就可以上云了。

接下来,我们看下代码具体怎么用:

图片

编辑

第一个参数表示我们使用的是腾讯云,第二个参数我们将上面得到的三个参数填写到table中即可,so easy~

▼ 证书校验(手动注册) ▼

证书校验即使用证书作为校验凭据,注意选择证书认证。

注意:V2版本腾讯云不支持新建此校验方式。

图片

编辑

之后和上面密钥校验一样的创建设备流程,创建之后我们再来看看设备信息。

图片

编辑

大家应该猜到了,还是三个参数:

产品名称、产品ID,最后一个变成了设备证书。

接下来,我们再来看下代码具体怎么用:

图片

编辑

第一个参数表示我们使用的是腾讯云,第二个参数我们将上面得到的产品名称 产品ID,第三个参数写上我们的证书,同样很简单~

▼ 动态注册(推荐) ▼

上面两种方式都需要我们手动在云平台上创建设备,但是我们的产品会有很多设备,手动创建太麻烦。

动态注册就解决了这些问题:

——可以实现统一代码使用时动态进行设备注册,无需手动创建。

注意:V2版本腾讯云不支持自动创建设备

这样我们就简单了很多,上面两种方式创建的产品详情中都有动态注册开关,我们只需要打开动态注册开关自动创建设备开关即可支持两种方式的动态注册。

图片

编辑

随后会生成动态注册上方的产品密钥,我们复制产品ID和产品密钥即可。

接下来,我们再来看下代码具体怎么用:

图片

编辑

第一个参数表示我们使用的是腾讯云,第二个参数我们将上面得到的产品ID和产品密钥,非常的简单!

4.2 连接/断开云平台

注册完成了,我们开始上云了~ 非常简单,iotcloud库的api基本和mqtt库一样,所以连接只需要一个API。

1)云平台连接

cloudc:connect()

参数:无

返回值:无

例子:

iotcloudc:connect()

连接说了,我们也说一下断开连接,也只需要一个API。

2)云平台断开

cloudc:disconnect()

参数:无

返回值:无

例子:

iotcloudc:disconnect()

4.3 订阅/取消订阅主题

同上,订阅和取消订阅也很简单。

1)云平台订阅

cloudc:subscribe(topic, qos)

参数:

传入值类型解释
string/table主题
numbertopic为string时生效0/1/2 默认0

返回值:无

2)云平台取消订阅

cloudc:unsubscribe(topic)

参数:

传入值类型解释
string/table主题

返回值:无

4.4 发布数据

数据的发布也同MQTT一样。

云平台发布

cloudc:publish(topic,data,qos,retain)

参数:

传入值类型解释
string/table主题
string消息,必填,但长度可以是0
number消息级别,0/1,默认0
number是否存档,0/1,默认0

返回值:无

4.5 接收数据

接收统一使用了"iotcloud"消息进行通知,所以我们只需要订阅此系统消息即可。

图片

编辑

4.6 云平台关闭

云平台关闭会释放掉内存,之后不能再进行重接,只能重新新建再连接。

云平台关闭

cloudc:close()

参数:无

返回值:无

例子:

iotcloudc:close()

4.7 云平台OTA

仅仅如此了么?当然不只!

IoT_CLOUD还支持了腾讯云平台的OTA功能,可以直接进行OTA,且所有流程iotcloud库都进行了支持,做到了用户无感。

用户在订阅"iotcloud"消息中会有iotcloud.OTA事件,此事件即为OTA完成的通知,我们选择时间进行设备重启即可。

**五、效果演示 **

5.1 代码演示

好了,接下来我们看下完整代码和效果,这里以动态注册为例。

最新demo源码下载:

https://gitee.com/openLuat/LuatOS/blob/master/demo/iotcloud/main.lua

图片

编辑

5.2 设备日志

图片

编辑

可以看到我们的设备打印了连接成功,证明自动注册+连接流程已经完成。

5.3 云平台效果

图片

编辑

可以看到,设备已经自动注册并且在线。

至此,云平台已经连接成功。剩下的就是要根据自己的产品需求,使用自己的模型上报/下发数据就可以了。

编辑

编辑

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 嵌入式
    +关注

    关注

    5186

    文章

    20162

    浏览量

    329033
  • 物联网
    +关注

    关注

    2939

    文章

    47339

    浏览量

    408178
  • 代码
    +关注

    关注

    30

    文章

    4942

    浏览量

    73160
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    由Memfault赋能的Nordic-nRF Cloud服务将硬核加持物联网通信应用

    的 nRF Cloud 将 Memfault 经过验证的可观测性和无线 (OTA) 基础设施直接引入 Nordic 成熟的服务平台 nRF Cloud。 今年早些时候,Nordic
    发表于 11-27 22:30

    开放原子开源基金会与腾讯达成合作

    近日,在北京举行的2025开放原子开源生态大会现场,开放原子开源基金会与腾讯计算(北京)有限责任公司签署“开源协作平台互联合作协议”。
    的头像 发表于 08-05 11:06 1094次阅读

    如何使用nRF Cloud

    Nordic Semiconductor服务和nRF Cloud构成了个专为Nordic Semiconductor无线设备优化的物联网平台。该
    的头像 发表于 07-04 11:12 613次阅读
    如何使用nRF <b class='flag-5'>Cloud</b>

    英诺达推出EnCitius曜奇SVS Cloud公有服务

    近日,英诺达正式推出EnCitius曜奇SVS Cloud公有服务,该服务将于6月初正式上线,目前,平台注册渠道已火热开启,诚邀设计团队申请注册,享限时特惠。作为专为中小型芯片设计量身打造的硬件
    的头像 发表于 05-27 18:24 863次阅读
    英诺达推出EnCitius曜奇SVS <b class='flag-5'>Cloud</b>公有<b class='flag-5'>云</b>服务

    HarmonyOS5服务技术分享--函数预加载文章整理

    ​​嗨,亲爱的开发者朋友们!​​? 今天咱们来聊聊如何使用​​端体化方式开发函数​​,尤其针对华为的预加载服务。整个过程会手把手带你从零开始,涵盖创建工程、编写代码、调试到部署,帮你轻松掌握
    发表于 05-22 20:33

    HarmonyOS5服务技术分享--数据使用指南

    ? 华为数据(CloudDB)在HarmonyOS中的使用指南 ? ​​嗨,开发者朋友们!​​ 今天咱们来聊聊华为数据(CloudDB)在HarmonyOS应用中的集成和使用技
    发表于 05-22 18:29

    HarmonyOS5服务技术分享--ArkTS开发Node环境

    气的方式探索这个功能,结尾还有实用总结和鼓励彩蛋哦~✨ ? 、HarmonyOS函数开发:核心能力与价值 HarmonyOS的函数(Serverless)为开发者提供了​​无服务器架构​​的便捷
    发表于 05-22 17:21

    小马智行与腾讯达成战略合作,打通微信等应用Robotaxi入口

    及用户端的产品形态和业务场景,为L4级自动驾驶产品的商业化落地提速。 腾讯与小马智行将探索 在微信端内的“出行服务”入口及腾讯地图等应用内,打通小马智行Robotaxi服务 ,让广大
    的头像 发表于 04-25 10:24 748次阅读

    腾讯率先上线DeepSeek模型API接口,支持联网搜索

    的API接口,用户可以轻松接入DeepSeek模型,实现各种创新应用。同时,腾讯旗下的大模型知识应用开发平台——知识引擎,也成功接入了这两款模型,并率先支持联网搜索功能。这功能的加
    的头像 发表于 02-10 09:47 2204次阅读

    什么是计算平台?搭建计算平台需要什么条件

    计算平台种以计算技术为基础的计算服务平台,用于提供灵活、可扩展、可共享的计算资源和系统服务。它允许用户在网络上分布式处理数据和应用程
    的头像 发表于 01-09 10:43 844次阅读

    数据是哪种数据类型?

    数据种部署在虚拟计算环境中的数据,它融合了计算的弹性和可扩展性,为用户提供高效、灵活的数据
    的头像 发表于 01-07 10:22 811次阅读

    电脑怎么登存储设置,电脑怎么登陆存储进行设置

    个人加入电脑账号的过程通常包括获得服务提供商(如腾讯、阿里、华为、微软Azure等)账
    的头像 发表于 01-06 13:06 891次阅读
    电脑怎么登<b class='flag-5'>云</b>存储设置,电脑怎么登陆<b class='flag-5'>云</b>存储进行设置

    燧原科技联合腾讯入选“行业平台领航者典型案例”

    卡异构智算集群打造国产算力资源池”项目成功入选“行业平台领航者典型案例”。 燧原科技与腾讯合作已久,今年更是与专有TCE在智算领域开启
    的头像 发表于 12-24 09:29 1718次阅读

    腾讯申请注册“腾讯AI代码助手”商标

    近日,腾讯科技(深圳)有限公司正式向相关机构申请注册了两枚“腾讯AI代码助手”商标。这两枚商标的国际分类分别为科学仪器和网站服务,目前正处于等待实质审查的阶段。 据了解,腾讯
    的头像 发表于 12-13 10:28 972次阅读

    托管可以操作数据吗?安全性如何

    、备份和恢复、规性以及监控和告警等。用户在使用托管时,仍需采取适当的安全措施,如使用强密码和定期更换密钥,以确保数据的安全。
    的头像 发表于 12-11 13:35 567次阅读