2021-7-11 21:15:36 [显示全部楼层]
4038浏览
查看: 4038|回复: 2

[入门] 【uno】试用WIFI IoT模块收集传感器数据

[复制链接]

一、SIoT介绍

SIoT是一个跨平台的开源MQTT服务器程序,S指科学(Science)、简单(Simple)的意思。SIoT重点关注物联网数据的收集和导出,是采集科学数据的最好选择之一。本文中我们将使用SIoT在本地建立MQTT服务器。

【uno】试用WIFI IoT模块收集传感器数据图1

1.1 物联网

物联网(Internet of Things,缩写IoT)是互联网的一个延伸,互联网的终端是计算机(PC、服务器),而物联网的终端是硬件设备,无论是家电、工业设备、汽车、监测仪器,所有这些终端都可以互联,可以总结为万物互联。

​                 

​               

1.2 MQTT

MQTT(Message Queuing Telemetry Transport,消息队列遥测传输协议)是一个基于客户端-服务器的消息发布/订阅传输协议。MQTT协议是轻量、简单、开放和易于实现的,这些特点使它适用范围非常广泛。

【uno】试用WIFI IoT模块收集传感器数据图2

二、WiFi IoT Module介绍

WiFi IoT Module是一款支持多种编程平台,多种物联网平台的WiFi模块。它支持micro:bitArduino、STM32等多种开发板,MakeCode、Mind+、Arduino IDE等多种编程环境;支持Easy IoT、IFTTT、ThingSpeak、ONENET、SIOT、BeeBotte等多种流行的物联网平台。

WiFi IoT Module采用极其易用的Gravity接口,支持UART和I2C通信协议。不论是课堂IoT教学,还是家电的物联网改装,选用WiFi IoT Module都是非常好的方案

【uno】试用WIFI IoT模块收集传感器数据图3
​           

三、MQ7介绍

MQ7是一种简单易用的一氧化碳(CO)传感器,适用于检测空气中的CO浓度。 它可以检测20到2000ppm之间的CO气体浓度。 可以通过电位计调节灵敏度。

通过湿度触控传感器检测水分开关。 警告:连接器不防水,请注意不要将传感器直接放在水中

【uno】试用WIFI IoT模块收集传感器数据图4

四、项目介绍

通过在SIOT平台发送“see”指令,将MQ7一氧化碳传感器监测的CO气体浓度发送到SIOT平台,监控传感器的数据。

4.1 硬件准备

  • 1 x WiFi IoT module
  • 1 x MQ7
  • 1 x Arduino uno控制板
  • 若干 连接线

​            

4.2 软件准备

SIoT软件下载

下载地址:https://mindplus.dfrobot.com.cn/siot

根据自己电脑的系统,对应下载SIoT软件压缩包,例如Windows系统下载win32。

  • SIOT是一个绿色软件,无需安装,将下载的压缩包解压并打开。
    !([img]https://img.dfrobot.com.cn/wiki/none/fe07d365af5701ad002d3e549d9bc6db.png)

  • 将电脑通过WiFi或者网线连接到局域网。获取电脑IP地址
    电脑每次连接WiFi,都会生成一个IP地址,每个IP地址对应的电脑都是唯一的。运行SIOT程序后会在电脑上建立一个SIOT服务器,其他设备要访问这个服务器,需要知道这个SIOT服务器所在电脑的IP地址。具体方法如下: ·1. 同时按下键盘上“WIN”+“R”,弹出运行窗口。               

  • 在命令窗口中输入“ipconfig”,点击键盘“enter”,可以看到IP地址

  • 打开电脑浏览器,在网址栏输入获得的IP地址加上“:8080”

  • 点击键盘enter键,打开即为SIOT网页端,如下图:【uno】试用WIFI IoT模块收集传感器数据图5

  • 登录SIOT网页端

    账号:siot

    密码:dfrobot      

4.3 基于Arduino IDE 编程

​        

  • 程序示例
#include <UNO_Obloq.h>
#include <SoftwareSerial.h>

// 动态变量
String read;
volatile float co;

// 静态常量
// 创建主题
const String topics[5] = {"MQ7","service","","",""};
//配置WiFi名字和密码和IP
const char *WIFI_SSID  = "hitest";
const char *WIFI_PASSWORD = "12345678";
const char *IP = "192.168.1.2";

// 创建对象
UNO_Obloq olq;
SoftwareSerial softSerial(2, 3);

// 主程序开始
void setup() {
        softSerial.begin(9600);
    // 参数
        olq.startConnect(&softSerial, WIFI_SSID, WIFI_PASSWORD, "siot", "dfrobot", topics, IP, 1883);
}

void loop() {
        co = analogRead(A0);
        if ((olq.available(olq.topic_0))) {
                read = olq.getMessage(olq.topic_0);
                if (((String(read).indexOf(String("see")) != -1))) {
                        olq.publish(olq.topic_1, co);
                }
        }
}
  • 接线

​    WiFi IoT模块:TX、RX、GND和VCC引脚分别连接到3、2、GND和5V引脚。

​    一氧化碳co传感器MP7:A0引脚。

​    可通过修改程序更改接线

​                       

​               

4.4 结果呈现

Uno板在下载完程序后,WiFi IoT物联网模块指示灯显示为绿色,表示成功与Uno板连接成功正常工作。

  • 打开SIoT网页端,可以在“设备列表”下看到对应的Topic信息。上述代码为service

!([img]https://imagemc.dfrobot.com.cn/data/attachment/forum/201906/12/190501or7ybg9ys7n6yu6v.png)

  • 点击上图“查看消息”,可以看到传感器实时收集的数据

【uno】试用WIFI IoT模块收集传感器数据图6

  • 点击发送消息,给Topic0(MQ7)发送消息“see”,即可在service消息中看到数据

五、总结

5.1 物联网框图

以路由器建立无线局域网为例,通过下面这张图可以说明SIoT的作用原理。

在一台电脑上建立SIoT服务器后,其他设备在知道路由器分配给这台电脑的IP地址后,可以利用WIFI访问SIoT服务器。这些设备可以是电脑、手机、Uno板等。

【uno】试用WIFI IoT模块收集传感器数据图7

5.2 服务器信息

SIoT启动后,你的计算机就成为了一个标准的SIoT服务器,使用任何一款SIoT客户端程序就可以访问。

  • 服务器地址:计算机局域网IP地址

  • SIoT端口:1883

  • 用户名:siot(小写)

  • 默认密码:dfrobot(小写)

  • 消息主题(Topic):项目名/设备名(可以自定义,中间的“/”为英文输入法且不可缺少。)

  • Web管理地址://计算机IP:8080

通过WiFi IoT物联网模块使UNO板接入网络,实现UNO与外界无线网络的数据传输,还可使用很多传感器,实现很多的功能,本文展现了最基本的使用方式。


冰糖葫芦娃  学徒

发表于 2021-7-29 09:11:56

此帖仅作者可见

使用道具 举报

冰糖葫芦娃  学徒

发表于 2021-7-29 10:17:20

此帖仅作者可见

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

为本项目制作心愿单
购买心愿单
心愿单 编辑
[[wsData.name]]

硬件清单

  • [[d.name]]
btnicon
我也要做!
点击进入购买页面
关于楼主
上海智位机器人股份有限公司 沪ICP备09038501号-4

© 2013-2024 Comsenz Inc. Powered by Discuz! X3.4 Licensed

mail