arduino采集数据结合掌控版使用mind+传输数据上阿里云物联网平台
Posted Mpara
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了arduino采集数据结合掌控版使用mind+传输数据上阿里云物联网平台相关的知识,希望对你有一定的参考价值。
文章目录
前言
mind+ Arduino提供了十分丰富的库,可惜不支持Arduino uno上云,所以陷入了一种困境,但发现了一种新的方法,可以通过Arduino采集数据,然后再通过掌控版传输上阿里云,以下是具体方法。
提示:以下是本篇文章正文内容,下面案例可供参考
一、准备材料
硬件 | 数量 |
---|---|
wemos d1 mini | 1 |
掌控版 | 1 |
掌控版IO扩展板 | 1 |
DHT11温湿度传感器 | 1 |
二、方法步骤
1.Arduino采集数据
首先使用Arduino采集需要的数据,笔者这里使用的是DHT11温湿度传感器,采集简单的温度作为实验。
Arduino IDE代码:
#include <dht.h>
dht DHT11; //创建一个变量类型DHT11
#define DHT11_Pin D7 //DHT11所接引脚为D7
int Temp_Value;
// 主程序开始
void setup()
//dht11_5.begin(5, DHT11);
Serial.begin(115200);
void loop()
delay(2000);
DHT11_detection();
void DHT11_detection(void)
//DHT11检测
//Serial.print("DHT11: ");
D: int chk = DHT11.read11(DHT11_Pin);//读取DHT11传感器的数值
switch (chk)
case DHTLIB_OK:
break;
case DHTLIB_ERROR_CHECKSUM:
break;
case DHTLIB_ERROR_TIMEOUT:
break;
default:
break;
Temp_Value = DHT11.temperature; //将读取到的温度数值存放到Temp_Value变量中
Serial.write(Temp_Value);
代码下载地址:稍后补充
2.掌控板读取数据并上云
首先设置好wifi与阿里云,这里使用的是阿里云物联网平台,注意设置好三元组与topic,topic使用的是属性上报
/sys/a1en8qVBur0/$deviceName/thing/event/property/post
注意填写好devicename
然后设置软串口,读取软串口的数据
最后传输上阿里云物联网平台,使用JSON格式上报,标识符应与功能定义的一致。
代码下载地址:稍后补充
3.实验效果
硬件效果图:
阿里云物联网平台查看数据:
可视化界面查看数据:
总结
本次实验很有参考价值,不同板子之间通过串口传输数据,各自实现不同的功能,很有实验价值,过程中也遇到一点坑,上报的数据格式必须与功能定义的一致,而mind+上传的数据格式默认带小数点,阿里云的int32型不支持小数点,必须换成float型才行。
以上是关于arduino采集数据结合掌控版使用mind+传输数据上阿里云物联网平台的主要内容,如果未能解决你的问题,请参考以下文章
掌控板IO接口编程入门 | 用Arduino玩转掌控板(ESP32)系列
本地Web与MQTT结合远程控制LED(SIOT+掌控版+web)