农场数据继电器系统
为了纪念一个非凡的女人盖伊·霍尔曼(Gay Holman)。
农场数据继电器系统是一种与远程物联网设备通信的简便方法,而无需依赖WiFi或Lorawan基础架构。它建立了一系列廉价的低功率接入点和中继器,为远程设备提供了尤其是-now和Lora的覆盖范围。 FDR可用于在太麻烦的情况下运输传感器读数和控制消息,无法提供完整的WiFi/Lorawan覆盖范围。虽然该系统是考虑到耕作的,但FDR在教室,家庭或研究环境中也可能是有益的。
设备分为两种类型:网关和节点。网关包括网络的基础架构,沿着预先定向的路线移动数据,并向所有设备提供覆盖范围。节点允许用户与网关交换数据。每个网关都用8位物理六角地址(MAC)识别,而节点使用16位整数在系统中移动时识别它们。
需要库:
包括:
安装FDR:
下载或克隆此存储库,然后将其复制到您的Arduino “库”文件夹中。
安装后,使用WiFi凭据和其他全局参数编辑“ SRC/FDRS_GLOBALS.H”文件。
您要尝试的第一个草图是1_UART_GATEWAY.INO示例。该设备将收听传入的ESP-NOW数据包,然后将它们路由到串行端口(反之亦然)。接下来,刷新ESPNOW_SENSOR.INO示例,以查看如何将数据发送到网关。
使用MQTT:通过RX和TX引脚(交叉)将第二个网关连接到第一个网关,然后使用0_MQTT_GATEWAY.INO示例将其刷新。如果您的WiFi和MQTT配置正确,则数据将发布到主题“ FDRS/DATA”主题。
要扩展您的范围,请尝试2_espnow_repeater.ino或3_lora_repeater.ino 。只需将传感器的gtwy_mac更改为新中继器的地址即可。
节点文档
节点可以描述为传感器,控制器或两者:
网关文档
网关是模块化和可配置的微控制器设备,可以执行各种有用的功能,包括收集,分发和中继无线数据。它们在各种有线和无线协议之间提供了灵活而凝聚的界面,并且通常以线路或星形拓扑结构排列。通常,使用MQTT的网关始终具有地址0x00,Esp-now和Lora网关从0x01开始。
在最常见的用法中,FDRS网关被部署为远程ESP-NOW和LORA用户节点的访问点。如果它从未知的ESP-NOW或LORA地址收到数据包,则该网关假定这些是传感器读数,并将其传递给前端。网关还将从前端传播到任何注册/侦听的控制器节点。
网关也可以配置为简单的中继器;将数据从一个邻居直接传递到另一个邻居,反之亦然。这可以创建一个数据虫洞,该虫洞将携带上游或下游AD Infinitum的数据包。您可以配置网关,以共享与连接的对等方上游的数据,从而为它们提供从前端发送的任何数据。
如果您正在寻找MQTT/UART网关的简单,吸引和封闭的解决方案,我个人建议Thingpulse Espgateway和Thingpulse eSpgateway以太网:
ESPGATEWAY在一个带外部天线的板上包含两个ESP32 Wrover-IB模块。它们通过引脚14和15链接在一起,以允许它们之间进行串行通信。这是ESP-NOW和WiFi之间链接的完美设置。
ESPGATEWAY以太网包含一个带有天线的ESP32旋转 - IB模块以及RJ45以太网连接器。这是以太网网关示例中使用的硬件。
前端是另一个应用程序输入或消耗所有数据的地方。这可能是从微控制器通过UART进行通信的微控制器以及在屏幕上显示数据到通过MQTT记录数据的服务器/数据库平台。
我推荐的访问数据的方法是使用MQTT或UART链接到FDRS Gateway设备的计算机,服务器或Raspberry Pi。 Node-Red是我最喜欢的平台,用于访问/操纵前端数据,而InfluxDB+Grafana是用于存储和可视化的梦想团队。
FDR的即将到来的目标包括:
...非常适合查看我的项目!我非常感谢每个贡献和帮助,尤其是“贡献者”部分中的贡献和帮助的人。如果您有任何疑问,评论,问题或建议,请随时通过[email protected]与我联系,或在Github上在此处开放讨论。
非常感谢不断建立的安德烈亚斯·斯皮斯(Andreas Spiess) 。他的洞察力和想法将这个项目从一块大小的石头带到了您今天看到的“钻石”。
感谢Lilygo在我的损坏时向我发送了新的Lora32模块。该项目的大部分是使用TTGO设备创建的,我强烈建议他们的产品!
能够在Hackaday和Hackster.io上亮相,这是一个非常荣幸的!
我通过随机书呆子教程的说明开始了这个项目。如果您是初学者,并试图了解有关微控制器的更多信息,我强烈建议从那里开始。

