NodeMCU板上的基本MQTT协议用法

电子说

1.2w人已加入

描述

步骤1:库安装

安装 PubSubClient 库

我们需要安装MQTT端点库(PubSubClient)与MQTT代理进行通信,请从以下链接下载该库:http://osoy oo.com/wp-content/uploads/samplecode/pu 。..

解压缩以上文件,将解压缩的文件夹移至Arduino IDE库文件夹。

打开Arduino IED,您可以在“示例”列上找到“ pubsubclient”。

安装MQTT客户端:

我们将使用MQTTBox作为MQTT客户端。请从以下网址下载:http://workswithweb.com/html/mqttbox/installing_ap 。..

步骤2:代码

打开Arduino IDE–》文件–》示例–》 pubsubclient–》 mqtt esp8266,您将获得示例代码。

编辑代码以适合您自己的WiFi和MQTT设置,如下所示操作:

1)热点配置:在下面的代码行中找到您自己的ssid和密码。

const char* ssid = “your_hotspot_ssid”;

const char* password = “your_hotspot_password”;

2)MQTT服务器地址设置,这里我们使用免费的MQTT代理“ broker.mqtt-dashboard.com”。您可以使用自己的MQTT代理URL或IP地址来设置高于mqtt_server的值。您还可以使用一些著名的免费MQTT服务器来测试项目,例如“ broker.mqtt-dashboard.com”,“ iot.eclipse.org”等。

const char* mqtt_server = “broker.mqtt-dashboard.com”;

3)MQTT客户端设置

如果您的MQTT经纪人需要客户端ID,用户名和密码身份验证,则需要

更改

if (client.connect(clientId.c_str()))

if (client.connect(clientId,userName,passWord)) //put your clientId/userName/passWord here

如果没有,则将其保留为默认值。

完成后,按如下所示选择相应的板类型和端口类型,然后将草图上载到NodeMCU。

主板:“ NodeMCU 0.9(ESP-12模块)”

CPU频率:“ 80MHz”闪存大小:“ 4M(3M SPIFFS)”

上载速度:“ 115200”

端口:为NodeMCU选择自己的串行端口

步骤3:配置MQTT客户端(MQTTBOX)

在这一步中,我们将展示如何在MQTTBox上创建MQTT客户端。

打开您的MQTTBox并单击蓝色按钮以添加新的MQTT客户端。

配置MQTT客户端设置如下:

MQTT客户端名称-选择您喜欢的任何名称

协议-选择“ mqtt/tcp”

主机-在此列中输入您的“ mqtt_server”,并确保它与您的草图相同。(我们在这里使用“ broker.mqtt-dashboard.com”)

将其他设置保留为默认设置

单击以保存更改。

下一步,您将自动进入新页面。如果以上所有配置均正确,则“未连接”将更改为“已连接”,您的MQTT客户端名称和主机名称将显示在此页面的顶部。

主题设置:

确保您的MQTT客户端发布主题与您的Arduino素描订阅主题相同(请参见此处的主题)。确保您的MQTT客户端订阅主题与Arduino草图发布主题相同(outTopic在此处)。

步骤4:程序运行结果

上传完成后,如果wifi热点名称和密码设置正常,并且连接了MQTT代理,请打开“串行监视器”,

然后打开MQTT客户端并向主题发布有效负载“ 1”,此NodeMCU将通过订阅“ inTopic”来接收这些消息,并且

向该主题发布有效载荷“ 0”,NodeMCU LED将熄灭。
       责任编辑:wv 

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分