第一句子网 - 唯美句子、句子迷、好句子大全
第一句子网 > 基于arduino通过软串口发送数据给DFrobot Mind+并上传阿里云物联网平台

基于arduino通过软串口发送数据给DFrobot Mind+并上传阿里云物联网平台

时间:2018-10-31 18:54:01

相关推荐

基于arduino通过软串口发送数据给DFrobot Mind+并上传阿里云物联网平台

基于arduino采集光照强度通过软串口发送数据给DFrobot Mind+掌控板并上传阿里云物联网平台

一、硬件准备

二、软件准备

三、项目开始

arduino IDE下载链接:

1、arduino软串口发送数据

在这里不用硬串口是因为每次烧写程序是都要拔掉对应的插线,不然会出现占用现象。发送数据时,可以考虑直接发送JSON格式,因为阿里云物联网的数据格式就是JSON格式,这样接收方便处理。

(1)具体代码:

#include <SoftwareSerial.h>#include <string.h>SoftwareSerial mySerial(3, 6); // RX, TX#define Sunshine A0 //定义AO 引脚 为 IO-A0String sun;long last_time = 0;void setup() {Serial.begin(9600);while (!Serial) {; // wait for serial port to connect. Needed for native USB port only}// set the data rate for the SoftwareSerial portmySerial.begin(115200);//监听软串口通信pinMode(Sunshine, INPUT);//定义A0为输入模式,将AO所测得的数据输入到计算机中}void loop() {// run over and overlong now = millis();if (now - last_time > 2000) {last_time = now;sun = analogRead(Sunshine);mySerial.write(sun.c_str());Serial.println(sun); }}

2、掌控板接收数据并发送上阿里云物联网平台

(1)物联网平台

A.阿里云物联网平台相关配置

B.创建相关产品和设备

b1.点击公共实例

b2.创建产品

b3.创建设备

创建设备是对应着相关产品的,每一个设备都相当于是相关设备的功能。

b4.定义相关产品的功能并用于相关设备

相关说明(自定义功能,这里用的也是它)

1、属性、服务、事件

属性:一般是设备的运行状态,如当前温度等;

服务:是设备可被调用的方法,支持定义参数,如执行某项任务;

事件:是设备上报的通知,如告警,需要被及时处理。

2、功能名称、标识符、数据类型、取值范围等

注:这些都可以自己定义,不过建议用平台推荐的

(2)Mind+的具体代码及相关说明

Mind+IDE下载链接:

A.添加相关功能

这里选择上传模式(在右上角),主控板选择掌控板,网络服务选择WiFi和mqtt,在用户库搜索JSON格式

a1.主控板

a2.网络服务

a3.用户库搜索

B.部分重要代码解析

b1.mqtt配置及连接

三元组

topic_0的配置:

/sys/a1svJVDRTXY/${deviceName}/thing/event/property/post

改成:/sys/a1svJVDRTXY/LI_test/thing/event/property/post

注:${deviceName}:改成自己的设备名字,即deviceName。

b2.数据处理:由于串口是一个一个字符发送过来的,所以每次都要把全部数据接收完才能完整,同时把数据转变成整型。在掌控板这端也同样是使用了软串口进行通信(接收数据),由于掌控板是使用十进制的ASCII码进行通信的,所以掌控板在接收到数据后,要将十进制ASCII码转为相对应的ASCII码字符。(这是个坑)

b3.完整代码

标识符

四、相关效果展示

(1)云平台展示

(2)arduino串口打印

(3)掌控板串口打印

(4)web端展示

A.在iot studio开发一个web显示界面

B.选择web可视化开发

C.新创建一个web应用

D.关联产品和设备

d1.关联产品

d2.关联设备

d3.配置资源

d4.最终效果

五、总结

以上就是使用Arduino UNO采集数据传至掌控板,并由掌控板提取数据发送上云的小实验,简单的介绍了一下一些实验过程中要注意的点。如有写的不好的地方,欢迎大家提点宝贵的建议。

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。