如何通过WIFI/网络服务器/...连接多个传感器盒(ESP32)?

物联网 无线上网 ESP32 网络套接字
2021-05-29 10:47:01

我打算使用 ESP32 创建一些(如 5-10 个)带有传感器和/或继电器的盒子。

为了连接到笔记本电脑和手机,我在ESP32 WebSocket Server: Control Outputs (Arduino IDE)找到了一个教程, 它使用带有套接字的异步网络服务器。

但是,我想知道我是否会使用多个盒子,如何解决这个问题。我想到了以下“解决方案”之一

我想让这些盒子一起工作(例如,制作一个我可以设置的网页,例如,当传感器 X 的值为 Y 时,另一个盒子上的继电器 1 应该打开)。

  • 使每个网络服务器。但是拥有 5-10 个网络服务器似乎很难处理,因为我不想在我的笔记本电脑/手机上为每个服务器访问 10 个网页。
  • 让其中之一成为网络服务器。但这似乎很奇怪,因为它们或多或少都是相同的(它们将具有不同的传感器,但这与网络服务器功能无关)。
  • 创建一个单独的网络服务器(在 ESP32 上),除了处理所有数据之外什么都不做。

我想第二个或第三个解决方案是最好的。我的下一个问题是让盒子相互通信的最佳方式是什么。例如,我可以将笔记本电脑/手机上的 HTML 页面的 websocket 连接到服务器,然后使用 HTTP 消息与所有其他盒子进行通信吗?

我希望这个问题不是太笼统,我只是网络服务器/套接字的新手。

请注意,我更喜欢使用我的路由器,因为它在房子的中间,我所有的盒子都在它附近(或多或少靠近)。

1个回答

我建议使用 MQTT 将 ESP32 配置为要发布/订阅的客户端。您可以使用 Raspberry Pi(0W 也可以,但 3 或 4 更好)作为代理,并通过 Node Red Web 界面查看您的数据(或控制您的中继)。查看其他一些随机教程以获取详细信息...