阿里云物联网平台完全使用笔记
扫描二维码
随时随地手机看文章
1.本文目的2. 什么是物联网平台3. 快速开始3.1 创建产品3.2 注册设备4. 代码编译5.云设备管理6. 本地设备调试7.云平台设备调试8.用IOT STUDIO调试设备8.1 创建web服务8.2 页面发布9.总结
1.本文目的
本文目的是介绍阿里云物联网平台的基本使用,通过esp32开发板,连接上wifi,接入阿里云物联网平台,实现远程控制LED的作用。该过程简单介绍一下开发流程,需要的硬件与软件列表如下:
-
硬件:M5Stack开发板
-
软件:Hacklab WebIDE
2. 什么是物联网平台
阿里云物联网平台为设备提供安全可靠的连接通信能力,向下连接海量设备,支撑设备数据采集上云;向上提供云端API,指令数据通过API调用下发至设备端,实现远程控制。
物联网平台也提供了其他增值能力,如设备管理、规则引擎、数据分析、边缘计算等,为各类IoT场景和行业开发者赋能。
下面来简单描述一下几个概念:
设备
设备是物模型,简单的来说,设备就是一个具体的硬件设备。设备有着一定的生命周期。按照设备的基本属性,阿里云物联网平台可以提供以下的功能:
设备注册、功能定义、数据解析、在线调试、远程配置、固件升级、远程维护、实时监控、分组管理、设备删除。
后面在测试和使用过程中会逐步的介绍这些功能的使用。
产品
什么是产品,产品是具有相同功能设备的集合,可以这样理解。我们将每一台智能锁定义成一种设备,他们共同有一种属性功能,就是开锁和关锁,那么我们就可以定义这个产品叫智能锁,然后产品下又有着很多的设备,可以定义为,那么设备就是智能锁1,智能锁2等。
分组
一般来说,物联网产品可以在一个分组中管理多种产品的设备,这就是根据实际场景来决定的。
设备证书
物联网平台的设备证书指的是三要素ProductKey、DeviceName、DeviceSecret。
-
ProductKey:是物联网平台为产品颁发的全局唯一标识。该参数很重要,在设备认证以及通信中都会用到,因此需要您保管好。
-
DeviceName:在注册设备时,自定义的或自动生成的设备名称,具备产品维度内的唯一性。该参数很重要,在设备认证以及通信中都会用到,因此需要您保管好。
-
DeviceSecret:物联网平台为设备颁发的设备密钥,和DeviceName成对出现。该参数很重要,在设备认证时会用到,因此需要您保管好并且不能泄露。
先大概介绍这几种概念,后面通过实战慢慢理解。
3. 快速开始
首先,需要在远程服务器上创建一个产品和设备。主要分为四个步骤
3.1 创建产品

进入设备管理,点击产品,点击创建产品开始创建产品。
我们先创建一个名为MY_LED的产品,用于管理远程LED。

查看功能定义,定义灯的属性


可以看到一个简单的LED其实是有很多可选属性的。

3.2 注册设备
注册了产品,所以需要在产品下注册设备。我们用开发板表示一个设备。

可以创建设备

这样就生成了设备鉴权的三要素

新创建的设备是没有激活的

只有至少连接上一次之后才能激活。
4. 代码编译
由于手上有一块M5Stack的开发板,直接采用Hacklab WebIDE连接上设备。
接着下载代码
git clone https://code.aliyun.com/hacklab/esp32_arduino.git
下载完成后可以看到项目

填写设备的授权信息即可。

填写WIFI账号及密码。然后添加[PRODUCT_KEY] [DEVICE_NAME] [DEVICE_SECRET]信息即可。
但是hacklab webide可打通设备,所以直接采用云设备管理功能即可。
5.云设备管理
集成阿里云物联网平台设备信息访问功能,方便开发者在设备开发、调试过程中,使用一个统一的IDE环境完成设备三元组信息获取、烧写、监控设备上云状态。
为使用该功能,用户需要做读取物联网平台设备信息的初始环境配置,考虑到安全性,建议用户创建一个权限受限的RAM子账号,使用该子账号Access Key做配置,仅需要在第一次使用前配置即可。
配置RAM子账号即可访问物联网平台https://ram.console.aliyun.com/users


新建用户

确定后进入管理页面

只读访问物联网平台的权限

点击确定,授权成功即可。
接下来在hacklab WebIDE上设置数据

填写刚才复制过来的信息即可

点击保存,然后可以看到我们的设备了

产品的状态有以下几种
产品状态
开发中 Developinp

已发布 Released

设备状态
未激活 Unactive

离线 Offline

在线

接着复制我们的设备三元组信息到代码中即可

6. 本地设备调试
代码完成后,可以编译代码

然后通过Hacklab IDE device agent连接到本地的串口
下载工具

运行脚本

这样我们在设备上就能看到了

单机运行,下载程序

下载完成后,查看串口信息即可

查看信息


可以看到打印信息显示已经上传数据。
7.云平台设备调试
进入我们的阿里云平台

选择在线调试

设置功能开关
点击发送指令,就可以在设备的串口串口打印的信息

与此同时,在日志中可以看到上报的信息

8.用IOT STUDIO调试设备
阿里云提供了IoT Studio的服务,可以创建网页控制和app控制,这样加快了产品的成型速度。同时,由于不需要太多的前端知识,普通的嵌入式工程师也能够很好的做出给普通用户使用的产品。

下面就用开关灯的例子来做一个页面。
8.1 创建web服务

有很多模板应用,我们选择模板应用做测试

创建项目

选择关联自己创建的物联网产品和全部设备

然后点击web可视化开发进行工程开发

配置开关的属性

点击确定即可,之后点击预览就可以看到页面展示了

操作按钮,可以看到设备串口打印信息,如果通过GPIO接上LED,可以控制灯的开关情况


8.2 页面发布
如果我们想让客户自己可以控制,那么给用户一个app或者网页即可。

需要绑定域名后,才能正常使用

9.总结
以上是阿里云物联网平台使用的基本例子,从产品的创建到设备的连接都做了详细的说明。物联网发展的速度越来越快,如果希望产品快速成型,借助阿里云物联网平台是个很好的选择。