欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Easy IoT上mqtt消息的配置与通讯

程序员文章站 2022-06-09 08:55:32
...

一、实验目的及要求
【实验一】实现Easy IoT配置。
【实验二】实现Easy IoT上mqtt消息的通讯。

二、实验原理与内容

实现mind+下Easy IoT上mqtt消息的通讯。

三、实验软硬件环境

硬件:掌控板
软件:Mind+

四、实验过程

【1】EASY loT的配置
登录网址:https://iot.dfrobot.com.cn

【2】选择用户登录或注册
Easy IoT上mqtt消息的配置与通讯

【3】注册成功,添加两台新设备,点击左侧的小眼睛可以查看用户名称和密码。
Easy IoT上mqtt消息的配置与通讯

【实验二】实现Easy IoT上mqtt消息的通讯。

选择EP32主控板,MQTT,WIFI网络服务,设置好热点。
Easy IoT上mqtt消息的配置与通讯
配置好Easy LoT后,填写MQTT初始化参数

代码显示

/*!
 * MindPlus
 * mpython
 *
 */
#include <MPython.h>
#include <DFRobot_Iot.h>
// 函数声明
void obloqMqttEventT1(String& message);
// 静态常量
const String topics[5] = {"wDHT5mFGg","s7V05iFMR","","",""};
const MsgHandleCb msgHandles[5] = {NULL,obloqMqttEventT1,NULL,NULL,NULL};
// 创建对象
DFRobot_Iot myIot;


// 主程序开始
void setup() {
 mPython.begin();
 myIot.setMqttCallback(msgHandles);
 display.setCursorLine(1);
 display.printLine("WiFi连接");
 myIot.wifiConnect("abc", "123456..");
 while (!myIot.wifiStatus()) {yield();}
 display.setCursorLine(2);
 display.printLine("成功");
 myIot.init("iot.dfrobot.com.cn","5-iocmFMR","","5-iocmKGRz",topics,1883);
 myIot.connect();
 while (!myIot.connected()) {yield();}
 display.setCursorLine(3);
 display.printLine("成功");
}
void loop() {
 if ((buttonB.isPressed())) {
  myIot.publish(topic_0, "hello");
  display.setCursorLine(4);
  display.printLine("发送成功");
 }
}


// 事件回调函数
void obloqMqttEventT1(String& message) {
 display.setCursorLine(1);
 display.printLine(message);
}

五、实验效果图
(1)将代码上传到设备上
Easy IoT上mqtt消息的配置与通讯
(2)设备T1发送成功
Easy IoT上mqtt消息的配置与通讯
(3)设备T0接收成功
Easy IoT上mqtt消息的配置与通讯
(4)设备T0发送成功
Easy IoT上mqtt消息的配置与通讯
(5)设备T1接收成功
Easy IoT上mqtt消息的配置与通讯

六、测试/调试以及实验结果分析

(1)在Eassy IoT的T0设备中可以查看接收的信息
Easy IoT上mqtt消息的配置与通讯
(2)在Eassy IoT的T1设备中可以查看接收的信息
Easy IoT上mqtt消息的配置与通讯
在Easy lot中可以查询到两台设备的信息是否真正发送,由上图可知,两台设备之间的信息交换是成功的。

七、实验结论与体会
1、在编写程序时要注意到发送信息那部分操作需要添加循环,否则只会执行一次。
2、mqtt初始化配置的信息,两个软件上面所配置的用户应该相同,topic0与topic1应相同。
3、在测试某设备是否能成功发送或接收信息时,可以“自己”发送给“自己”。
4、在执行某些不能明显得到输出的结果的语句时,可以编写一些测试语句以便检验,比如wifi,mqtt是否连接成功。

相关标签: 物联网