龙空技术网

我在高职教STM32——OneNET云平台的部署与联调(一)

南耿先生 206

前言:

眼前看官们对“wifi无线技术与onenet数据传输”大体比较关心,姐妹们都想要分析一些“wifi无线技术与onenet数据传输”的相关内容。那么小编同时在网络上汇集了一些有关“wifi无线技术与onenet数据传输””的相关文章,希望同学们能喜欢,同学们快快来学习一下吧!

大家好,我是老耿,高职青椒一枚,一直从事单片机、嵌入式、物联网等课程的教学。对于高职的学生层次,同行应该都懂的,老师在课堂上教学几乎是没什么成就感的。正是如此,才有了借助头条平台寻求认同感和成就感的想法。在这里,我准备陆续把自己花了很多心思设计的教学课件分享出来,如果您正是一名单片机爱好者或是一名同行,欢迎点赞+关注,各位的支持是本人持续输出的动力,多谢多谢!#30天学会STM32##STM32单片机##单片机#

上一章我们已经完成了开发板接入WiFi并能够连接网络服务器,本章的主要任务是按照OneNET云平台的规范和协议,将SHT20采集的温湿度数据上传至云端。在这个过程中,我们会了解到OneNET使用什么样的模型和参数来对实体进行抽象,还会通过代码学习到数据在传输过程中是如何处理的,最后还会认识到MQTT这种网络协议的特点。

【学习目标】

理解OneNET云平台对设备是如何抽象和描述的在代码层面读懂设备与云平台是如何对接的了解MQTT协议的基本原理及代码实现

OneNET物联网云平台的功能十分丰富,这里仅介绍温湿度这样的数据流是如何传输的,以点窥面,使初学者掌握基本的开发技能。本章计划分三个部分,这是第一部分。

一、浅谈OneNET物联网云平台

OneNET云平台的主页是,如图1所示,文档中心对注册账户、创建产品、添加设备有详细介绍。这些都是数据上云之前的准备工作,操作步骤也很简单,这里就不再占用篇幅介绍了。为了理解设备实体与云端实例是如何对接的,这里有必要先把OneNET的资源模型和关键术语强调一下。

图1 OneNET的文档中心

1.1 资源模型

OneNET的资源模型可以用图2来概括,用户(user)、产品(product)、设备(device)、数据流(datastream)、APIkey、触发器(trigger)、应用(application)可以看成是高度抽象的模型参数,云平台就是依靠它们来与具体的物联网终端实体对接的。

图2 OneNET资源模型

下面对这些模型参数做一个简要介绍,对它们印象深刻很有必要:

● 用户(user)—— OneNET平台账号

● 产品(product)—— 具体项目

用户的最大资源集为产品,产品下资源包括设备、设备数据、设备权限、数据触发服务以及基于设备数据的应用等多种资源,用户可以创建多个产品。理解为用户下的每一个项目,比如本章我们将要建立的一个温湿度监控系统。

● 设备(device)—— 项目涉及到的物理设备

设备为真实终端在平台的映射,真实终端连接平台时,需要与平台设备建立一一对应关系,终端上传的数据被存储在数据流中,设备可以拥有一个或者多个数据流。比如我们的一个开发板就可以看成一个设备。

● 数据流(datastream) —— 物理设备上传的数据

数据流用于存储设备的某一类属性数据,例如温度、湿度、坐标等信息;平台要求设备上传并存储数据时,必须以key-value(键值对)的格式上传数据,其中key即为数据流名称,value为实际存储的数值,value格式可以为int、float、string、json等多种自定义格式。比如温湿度数据。

● APIkey —— 用户校验标识

APIkey为用户进行API调用时的密钥,用户访问产品资源时,必须使用该产品目录下对应的APIkey。其实跟买车票一样,有身份证才让上车。

● 触发器(trigger) —— 报警服务

触发器为产品目录下的消息服务,可以进行基于数据流的简单逻辑判断并触发HTTP请求或者邮件。跟报警机制有点类似,触发了报警机制(比如温度超过多少),就做一些用户提示操作。

● 应用(application) —— OneNET自带UI展示

应用编辑服务,支持用户以拖拽控件并关联设备数据流的方式,生成简易网页展示应用。比如,温湿度控制系统,我们可以拉取控件展示温度折线图。

1.2 关键术语

上面的模型参数算是OneNET常用术语的一部分,还有一些其他的术语,我们将其一并列在表1中。

表1 OneNET的常用术语

1.3 接入流程

一个物联网设备要接入OneNET云平台并进行数据传输,必须按照图3所示的流程来执行,总的来说分以下几步:

第一步:创建产品,选择接入协议

创建产品的具体步骤在OneNET文档中心有详细介绍,此处不再赘述。对于接入协议,本章针对的是MQTT协议。经过这一步,就得到了产品ID(ProductId)。

第二步:创建设备,记录设备ID等信息

创建设备的具体步骤在文档中心里也有详细介绍,这一步我们会输入设备名称和鉴权信息,云平台会生成对应的设备ID和APIkey。

第三步:建立设备与平台间的协议连接

使用前两步中的参数作为登录依据,使用SDK中的对应接口组织MQTT连接报文,发送到平台,与平台建立MQTT连接。

第四步:数据流创建,数据点上传

利用SDK中提供的接口函数,编写代码将数据上传到平台。

第五步:数据流展示,查看数据点

在OneNET上的设备管理下点击数据展示,进入数据展示页面,查看上传的数据点;也可以选择时间区间来查看历史时间。

此外,除了在云平台上查看设备数据,还可以通过云平台向设备发送命令,这些功能都需要利用云平台提供的SDK来编写代码实现。

图3 设备接入OneNET云平台的主要流程(以MQTT协议为例)

(第一部分完,下个部分进入编程实践)

标签: #wifi无线技术与onenet数据传输 #onenet设备云平台app #onenet设备云app下载 #http接入onenet #stm32net100m