Système de relais de données agricoles
Dans la mémoire aimante de Gay Holman, une femme extraordinaire.
Le système de relais de données agricoles est un moyen facile de communiquer avec les appareils IoT distants sans compter sur l'infrastructure WiFi ou Lorawan. Il établit une série de points d'accès et de répéteurs peu coûteux et de faible puissance pour fournir une couverture ESP-Now et LORA pour les appareils distants. Les FDR peuvent être utilisés pour transporter des lectures de capteurs et contrôler les messages dans des situations où il serait trop lourd de fournir une couverture WiFi / Lorawan complète. Bien que le système ait été conçu avec l'agriculture à l'esprit, les FDR pourraient également être bénéfiques dans une salle de classe, une maison ou une recherche.
Les appareils sont classés en deux types: les passerelles et les nœuds . Les passerelles comprennent l'infrastructure du réseau, le déplacement des données le long des itinéraires pré-dirigés et la couverture de tous les appareils. Les nœuds permettent à l'utilisateur d'échanger des données avec une passerelle. Chaque passerelle est identifiée avec une adresse hexadécimale physique 8 bits (MAC), tandis que les nœuds utilisent des entiers 16 bits pour identifier les points de données lorsqu'ils se déplacent dans le système.
Bibliothèques requises:
Compris:
Pour installer FDRS:
Téléchargez ou clone ce référentiel et copiez-le dans votre dossier Arduino «Libraries» .
Après l'installation, modifiez le fichier 'src / fdrs_globals.h avec vos informations d'identification WiFi et autres paramètres globaux.
Le premier croquis que vous voudrez essayer est l'exemple 1_uart_gateway.ino . Cet appareil écoutera les paquets ESP-Now entrants, puis les acheminera vers le port série (et vice versa). Ensuite, flashez l'exemple ESPNow_Sensor.ino pour voir comment envoyer des données à la passerelle.
Pour utiliser MQTT: connectez la deuxième passerelle au premier via les broches RX et TX (croisées) et flashez-la avec l'exemple 0_MQTT_GATEWAY.INO . Si vos configurations WiFi et MQTT sont correctes, les données seront publiées sur le sujet «FDRS / DATA».
Pour étendre votre portée, essayez le 2_espnow_repeater.ino ou 3_lora_repeater.ino . Changez simplement le GTWY_MAC de votre capteur à l'adresse de votre nouveau répéteur.
Documentation de nœud
Les nœuds peuvent être décrits comme des capteurs, des contrôleurs ou les deux :
Documentation de la passerelle
Les passerelles sont des dispositifs de microcontrôleur modulaires et configurables qui peuvent effectuer une variété de fonctions utiles, notamment la collecte, la distribution et la relance des données sans fil. Ils fournissent une interface flexible et cohésive entre divers protocoles câblés et sans fil, et sont généralement disposés en ligne ou topologie d'étoile. En règle générale, la passerelle qui utilise MQTT a toujours l'adresse 0x00, et les passerelles ESP-Now et Lora commencent à 0x01.
Dans son utilisation la plus courante, une passerelle FDRS est déployée comme point d'accès pour les nœuds utilisateur ESP-Now et LORA distants. S'il reçoit un paquet d'une adresse ESP-Now ou LORA inconnue, la passerelle suppose que ce sont des lectures de capteurs et les transmette en aval vers l'avant. La passerelle diffusera également les paquets provenant de la frontale vers tous les nœuds de contrôleur enregistrés / écoutés.
Les passerelles peuvent également être configurées comme des répéteurs simples; passer des données d'un voisin directement à un autre voisin ou vice versa. Cela peut créer un trou de ver de données qui transportera des paquets en amont ou en aval AD à l'infini. Vous pouvez configurer vos passerelles pour partager des données en amont avec les pairs connectés, leur fournissant ainsi toutes les données envoyées à partir de la frontale.
Si vous recherchez une solution simple, attirée et fermée pour votre passerelle MQTT / UART, je recommande personnellement à la fois le ThingPulse Espgateway et le truc d'espgateway Ethernet :
L'espgateway contient deux modules ESP32 Wrover-Ib sur une planche avec des antennes externes. Ils sont liés ensemble par les broches 14 et 15 pour permettre une communication en série entre eux. C'est la configuration parfaite pour un lien entre ESP-Now et WiFi.
L'Espgateway Ethernet contient un module Wrover-IB ESP32 avec antenne, ainsi qu'un connecteur Ethernet RJ45. Il s'agit du matériel utilisé dans l'exemple de la passerelle Ethernet.
Le frontal est l'endroit où toutes les données sont entrées ou consommées par une autre application. Cela pourrait être quelque chose d'un microcontrôleur communiquant via UART et affichant des données sur un écran à une plate-forme de serveur / base de données enregistrant les données via MQTT.
Ma méthode recommandée pour accéder à vos données consiste à utiliser un ordinateur, un serveur ou un Raspberry Pi lié à un périphérique de passerelle FDRS via MQTT ou UART. Node-Red est ma plate-forme préférée pour accéder / manipuler les données sur le frontal, et AffluxDB + Grafana est l'équipe de rêve pour le stockage et la visualisation.
Les objectifs à venir pour les FDR comprennent:
... beaucoup pour vérifier mon projet! J'apprécie vraiment tous ceux qui ont contacté les contributions et l'assistance, en particulier celles présentées dans la section "Contributeurs". Si vous avez des questions, des commentaires, des problèmes ou des suggestions, n'hésitez pas à me contacter à [email protected] ou ouvrez une discussion ici sur Github.
Un grand merci à Andreas Spiess en constante instruction. Ses idées et ses idées ont fait passer ce projet d'une pierre à peu près frappée au "diamant" que vous voyez aujourd'hui.
Merci à Lilygo de m'avoir envoyé de nouveaux modules Lora32 lorsque les miens ont été endommagés. Une grande partie de ce projet a été créée à l'aide d'appareils TTGO, et je recommande vivement leurs produits!
C'est un grand honneur d'avoir été présenté sur Hackaday et Hackster.io!
J'ai commencé ce projet avec des instructions à partir de tutoriels de nerd aléatoires . Si vous êtes un débutant et que vous essayez d'en savoir plus sur les microcontrôleurs, je recommande fortement de commencer là-bas.

