开发者学堂课程【阿里云 AIoT 物联网开发实战:AIoT 物联网开发实战02】学习笔记,与课程紧密联系,让用户快速学习知识
课程地址:https://developer.aliyun.com/learning/course/754/detail/13230
AIoT物联网开发实战02
再去添加一个设备,自定义命名
设备上的开发,需要 ESP8826的主板,DHT11温湿度传感器和母对母排线。
需要下载编辑器,下载完之后,我们需要在扩展版这个管理里边添加一个 url,通过这里可以拉取到 esp8266的相关的固件。
配置好后,在 Board 管理里输入 esp8266,选择2.4.1的版本。
同时还需要去加载一些驱动程序,存放的目录在 library 里,这里用到了一个 Jason的工具,一个加密包,几个加密的算法以及一个实现。
之后需要选择 NodeMCU 1.0 (ESP-12E Module) 模块,波特率选择115200,数据传感器的接线 现在接在 D7口,
这样就完成了设备硬件接线。
再来看一下开发版,如图可以修改资源加载的扩展。
加载成功后,在这里会看到 esp 8266的模块,选最高的波特率选115200。
将以下代码引入:
#include
/*PubSubClient 2.40*/
#include
/*ArduinoJson 5.13.4*/
#include
/*DHT sensor library 1.3.0*/
#include "DHT.h"
/* Crypto 0.2.0*/
#include "SHA256.h"
#define DHTPIN 13 // nodeMCU pin
#define DHTTYPE DHT11// Define DHT type
define BAUD_RATE 115200
*define DELAYTIME 10*1000 //60s interval between updatina data
/*
连接您的WIFI SSID和密码 */
#define WIFI SSID "aliyun_iot"
#define WIFI_PASSWD "88888888"
/
设备的三元组信息*/
#define PRODUCT KEY "a1kRdXDgN2v"
#define DEVICE NAME "tado"
#define DEVICE_SECRET "7caf9c4e98fdf8496466a8d8941a321c"
#define REGION_ID "cn-shanghai"
/*IoT
物联网平台Endpoint域名和端口号 */
#define MOTT_SERVER PRODUCTKEY".iot-as-matt." REGION_ID".aliyuncs.com"
#define MQTT_PORT 1883
#define MOTT_USRNAME DEVICE_NAME "&" PRODUCT_KEY
//
用于身份验证的MOTT_PASSWD和CLIENT_ID
#define CONTENTSTR FORMAT "clientIdesp8266deviceName" DEVICE NAME "productKey" PRODUCT KEY "timestamp%d"
char CLIENT_ID[80]={'\0'}; char *MOTT_PASSWD:
最后可以把开发板通过 USB 接口连到我们的电脑上,通过烧录的工具的来进行程序的烧录,点击烧录,同时开启显示器,也可以看到在互联网平台上,设备状态是属于离线状态,烧录完成之后,可以看到程序连接了 WiFi 接入点,发起了阿里云连接,刷新一下控制台,当前的这个设备也是处于在线状态。
首先要到联网平台控制台的归引擎创建一条云产品流转,先做数据处理,这里抽取出了 device name,时间戳以及它的 location 的标签,当前的温度值和湿度值,最终存放的目的地是表格存储的实例。
这里是一个表格存储的数据库,表格存储只需要创建主键,主键是 device name和时间戳,剩下的列是自动扩展的,当前数据库是没有数据的,要做的事情就是来到物联网平台规则引擎,创建一条规则。
参考如图:
目的地处理:
看到这一条规则属于运行中,设备上传的数据就会流转到表格中来
二、检查设备
设备模拟器:在没有真实设备的情况之下来进行工作。
启动后会发现已经上线,发送了 connack 请求,云端返回了 connack 是成功的。前面定义了物模型,有温度和湿度值,设置温度为26.5,湿度为68,点击上报发送指令,设备端会像云平台发送如下图指令,
也可查看设备的当前状态,设备模拟器启动后,随机设置温度和湿度值模拟上报,要开启实时刷新。
1、设备端转到数据库
首先做一个追踪版 ID,追踪设备,如果云端发送消息,物模型的属性上报同样云端也给设备回复了一个,就说明云端已经收到了这条五模型的属性上报,同时在云端会做了一个物模型的校验,校验成功后会做存储,同时还触发规定引擎的操作,规则引擎把数据流转到对应的表格存储,这就是一个完整的从设备端到云平台,再到数据库的流转过程。
2、检查数据流转
可以在数据库里来查看有没有数据,可以再模拟两条数据(例27.50),这里模拟了设备的上报,再看一下,数据库里是否会有实时更新,后续的业务系统就可以直接从数据库里来读取数据,或者是做一些业务处理。