基于mqtt的物联网系统搭建能做嘛 (mqtt代理)

日常工作中,小伙伴们有没有到了办公室门口却开不了门的尴尬呢?

节假日公司没人值班,还没录指纹的新同事想进去加个班勤奋一把都无奈~

指纹锁太渣,识别不出指纹闹“*工罢**”,门口这边风景独好~

基于mqtt的智慧农业app,mqtt代理

郁闷的锁,寂寞的心统统都say byebye~

今天的优优小课堂就教大家一起DIY一个基于公共MQTT代理的远程开门功能吧!

思路 · 引导

远程开门小功能是通过把线引出来接到继电器输出端,开发板接继电器输入端。

esp8266开发板做为mqtt客户端订阅指定topic,当收到指定消息便给继电器信号端高电平一段时间,然后恢复低电平,从而达到远程开门的功能。

1.找一个公共 mqtt 代理

比如安服优的 http://broker.afuiot.com

(http://mqttdashboard.afuiot.com:8080/mqtt_h5/index.html#/index)

2.开启码农模式-

可以用 Arduino装的 esp8266插件开发,再加PubSubClient库来做 mqtt 客户端。

首先配置好常量

基于mqtt的智慧农业app,mqtt代理

基于mqtt的智慧农业app,mqtt代理

setup初始化

基于mqtt的智慧农业app,mqtt代理

loop核心循环

基于mqtt的智慧农业app,mqtt代理

基于mqtt的智慧农业app,mqtt代理

reconnect重连逻辑

基于mqtt的智慧农业app,mqtt代理

mycallback是mqtt client 的回调,每当收到消息都会触发这个回调

基于mqtt的智慧农业app,mqtt代理

3.烧录

将开发好的软件程序烧录至一块esp8266开发板上

基于mqtt的智慧农业app,mqtt代理

基于mqtt的智慧农业app,mqtt代理

4.备辅料

一个继电器,数根杜邦线

基于mqtt的智慧农业app,mqtt代理

基于mqtt的智慧农业app,mqtt代理

5.接开关

拆开关,并将杜邦线接上开关

基于mqtt的智慧农业app,mqtt代理

基于mqtt的智慧农业app,mqtt代理

测试一下是否通电

基于mqtt的智慧农业app,mqtt代理

通电OK后,再把开关装上去(杜邦线的另外一头露在开关外面)

基于mqtt的智慧农业app,mqtt代理

将露出来的杜邦线另一头接上之前准备好的继电器和esp8266开发板

基于mqtt的智慧农业app,mqtt代理

已连接 mqtt,运行成功

基于mqtt的智慧农业app,mqtt代理

6.用 websocket mqtt 客户端验证一下是否能接收消息并开门

手机上打开地址:http://mqttdashboard.afuiot.com:8080/mqtt_h5/index.html#/websocket连接

基于mqtt的智慧农业app,mqtt代理

向topic:openthedoor 发送1

基于mqtt的智慧农业app,mqtt代理

观察输出

基于mqtt的智慧农业app,mqtt代理

噢,耶,开门成功!

基于mqtt的智慧农业app,mqtt代理

温馨 · 提示

1. 在公共代理上,要用一个不容易被人猜到的topic。

2. 控制端可以考虑做成 app 或微信小程序。

3. Just for fun!

4.控制端用安服优的 websocket mqtt 客户端即可http://mqttdashboard.afuiot.com:8080/mqtt_h5/index.html#/websocket

今天的优优小课堂DIY你get了吗?赶紧打开安服优的公共mqtt代理DIY走起~