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

Mind+上实现sIoT配置并实现sIoT上mqtt消息的通讯

程序员文章站 2022-06-09 10:58:28
...


前言

本文主要介绍如何在 Mind+ 上实现 Easy IoT 配置和 Easy IoT 上 MQTT 消息的通讯。


一、创建项目

Mind+上实现sIoT配置并实现sIoT上mqtt消息的通讯

二、Mind+ 图形化程序块

1.测试 Wi-Fi 是否连接成功

首先连接 Wi-Fi,测试 Wi-Fi 是否连接成功。
Mind+上实现sIoT配置并实现sIoT上mqtt消息的通讯

2.测试 MQTT 是否连接成功

Wi-Fi 连接成功后,我们就测试 MQTT 连接是否成功建立,只有两者都成功了,才进入发送消息阶段,甲方监听 Topic_0,乙方监听 Topic_1。
Mind+上实现sIoT配置并实现sIoT上mqtt消息的通讯

其中,MQTT 初始配置信息如下:
Mind+上实现sIoT配置并实现sIoT上mqtt消息的通讯

3.实现 MQTT 消息的通信

当触摸 P 键后MQTT发送信息“2018764210/吴炳辉”至Topic_0,并显示发送成功。
Mind+上实现sIoT配置并实现sIoT上mqtt消息的通讯

当mqtt接收到Topic_1的消息,屏幕显示MQTT消息并亮红灯,播放音乐。
Mind+上实现sIoT配置并实现sIoT上mqtt消息的通讯

4.完整截图

Mind+上实现sIoT配置并实现sIoT上mqtt消息的通讯

三、arduino C源代码

代码如下(示例):

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


// 主程序开始
void setup() {
	mPython.begin();
	myIot.setMqttCallback(msgHandles);
	display.setCursorLine(1);
	display.printLine("start");
	myIot.wifiConnect("gshh", "shwh2295");
	while (!myIot.wifiStatus()) {yield();}
	display.setCursorLine(1);
	display.printLine(myIot.getWiFiLocalIP());
	myIot.init("192.168.43.8","602","","iot", topics, 1883);
	myIot.connect();
	while (!myIot.connected()) {yield();}
	display.setCursorLine(1);
	display.printLine("mqtt ok");
}
void loop() {
	if ((touchPadP.isTouched())) {
		myIot.publish(topic_0, "2018764221/吴炳辉");
		display.setCursorLine(1);
		display.printLine("发送成功");
	}
}


// 事件回调函数
void obloqMqttEventT1(String& message) {
	display.setCursorLine(1);
	display.printLine(message);
	rgb.write(0, 0xFF0000);
	buzz.play(DADADADUM, Once);
}


四、实验效果图

1.连接 Wi-Fi

Mind+上实现sIoT配置并实现sIoT上mqtt消息的通讯
(WI-FI连接成功忘了截图)

2.连接 MQTT

MQTT连接成功。
Mind+上实现sIoT配置并实现sIoT上mqtt消息的通讯

3.MQTT 消息的通讯

乙方触摸掌控板P键发送向甲方发送信息,掌控板显示“发送成功”。
Mind+上实现sIoT配置并实现sIoT上mqtt消息的通讯
此时sIoT显示发送的信息。
Mind+上实现sIoT配置并实现sIoT上mqtt消息的通讯

当mqtt接收到Topic_1的消息,sIoT显示收到的信息。
Mind+上实现sIoT配置并实现sIoT上mqtt消息的通讯

同时,掌控板屏幕显示MQTT消息并亮红灯,播放音乐。
Mind+上实现sIoT配置并实现sIoT上mqtt消息的通讯


总结

通过这次实验,我初步学会了 Mind+上实现sIoT配置并实现sIoT上mqtt消息的通讯。其操作相对简单,因为在Mind+上可以运用图形化程序块来搭建代码,弄清楚实验原理即可快速实现相应功能。实验的主要过程是:创建项目,小组成员在同一个局域网内,每人负责一个topic。搭建 Wi-Fi 连接和 MQTT 连接。乙方触摸P键发送信息,掌控板屏幕显示 “发送成功”,sIoT显示发送的信息。当甲方mqtt接收到Topic_1的消息,sIoT显示收到的信息同时掌控板也有相应的提示。反之,同理。实验让我懂得了,在考虑问题时要认真、全面,尽可能多地结合生活和联系实际,多动手多练习。总的来说,这次实验使我受益匪浅。