步骤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
-
NODEMCU
+关注
关注
13文章
289浏览量
21433 -
MQTT
+关注
关注
5文章
651浏览量
22527
发布评论请先 登录
相关推荐
评论