使用MQTT和Webhook控制物联网设备 - n8n工作流实现远程设备控制
n8n工作流,MQTT协议,Webhook,物联网控制,ESP32微控制器,设备自动化,远程控制,GPIO控制

这个工作流为希望在n8n环境中使用MQTT协议控制物联网系统的用户提供了一个实用示例。

模板提供了典型的n8n MQTT和Webhook节点实现和配置设置,用于设置物联网设备的输入和输出。

工作原理

向用户呈现一个带有物联网控制”开”和”关”按钮的网页。当在网页上选择一个按钮时,该值通过webhook发送以触发活动工作流。工作流中的set节点然后将接收到的值准备成消息有效载荷。然后将消息传递给MQTT节点,以将带有有效载荷的主题发布到基于云的MQTT代理。远程ESP32微控制器订阅该代理并读取主题中包含的有效载荷。然后ESP32将根据主题有效载荷值切换GPIO引脚。

物联网控制网页

该网页是一个简单的HTML页面,包含可点击的”开”和”关”按钮。它还具有获取webhook URL,将选定的值发送到n8n工作流,在本例中在本地运行。

URL webhook格式为 http://localhost:5678/webhook/pin-control?value=action

物联网设备

物联网设备是在远程网络上运行的ESP32微控制器。为简单起见,选择GPIO2作为控制输出。在这种情况下,当接收到的值为”on”时,GPIO2变为高电平,ESP32中的LED将亮起。当接收到的值为”off”时,它将关闭。

ESP32物联网控制的程序是’main.py’。您需要将micropython解释器上传到ESP32,程序才能自动运行。可以轻松编辑和修改代码以适应任何其他连接的物联网设备。

如何根据您的需求自定义此工作流

ESP32

您需要一个安装了micro-python解释器的工作ESP32。
提供了main.py代码。
可以使用python IDE加载和编辑main.py程序。在此示例中我使用了Thonny。
使用免费的MQTT代理开始。我在代码中使用了”broker.emqx.io”。

物联网控制网页

该网页包含HTML,可以轻松编辑以增强功能。嵌入式webhook配置为n8n生产模式。http://localhost:5678/webhook/pin-control?value=action
如果您想在测试模式下运行页面,您将使用以下URL。
http://localhost:5678/webhook-test/pin-control?value=action

n8n工作流。

该工作流很好地演示了如何使用n8n控制物联网设备。
按照这些步骤将深入了解微控制器自动化。

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。