Table des matières:

Moniteur de température et d'humidité - Arduino Mega + Ethernet W5100 : 5 étapes
Moniteur de température et d'humidité - Arduino Mega + Ethernet W5100 : 5 étapes

Vidéo: Moniteur de température et d'humidité - Arduino Mega + Ethernet W5100 : 5 étapes

Vidéo: Moniteur de température et d'humidité - Arduino Mega + Ethernet W5100 : 5 étapes
Vidéo: Mesurer la température et l'humidité avec le capteur DHT11 | ARDUINO #30 2024, Novembre
Anonim
Moniteur de température et d'humidité - Arduino Mega + Ethernet W5100
Moniteur de température et d'humidité - Arduino Mega + Ethernet W5100

Module 1 - PLAT - matériel:

  • Arduino Mega 2560
  • Bouclier Ethernet Wiznet W5100
  • 8x capteur de température DS18B20 sur bus OneWire - divisé en 4 bus OneWire (2, 4, 1, 1)
  • 2x capteur numérique de température et d'humidité DHT22 (AM2302)
  • 1x capteur de température et d'humidité SENSIRION SHT21 (Si7021)
  • 1x capteur de température et d'humidité (et pression atmosphérique) BOSCH BME280
  • Envoie les données de tous les capteurs à la fois en quelques minutes (peut être modifié)

Module 2 - CHAUDIÈRE - matériel:

  • Arduino Mega 2560
  • Bouclier Ethernet Wiznet W5100
  • 16x capteur de température DS18B20 sur bus OneWire - divisé en 7 bus OneWire (2, 2, 2, 2, 2, 2, 4)
  • 8x entrée numérique
  • 8x sortie numérique - pour solénoïde / relais
  • Envoie les données de tous les capteurs à la fois en quelques minutes (peut être modifié)
  • Il lit les états des sorties individuelles à partir de l'interface Web, les applique Envoie les états des entrées numériques

Étape 1: Présentation

introduction
introduction
introduction
introduction
introduction
introduction

Aujourd'hui je vais vous présenter en détail le dernier projet réalisé, qui est assez complexe en terme de fonctionnalité, nombre de capteurs utilisés, cartes Arduino, bus de données utilisés. Le projet se compose de deux modules. Physiquement, chaque module se compose d'un Arduino Mega 2560 séparé, d'un blindage Ethernet W5100 (compatible R3) et des capteurs qu'il utilise.

Chaque module communique avec l'interface web sur Internet par des requêtes HTTP POST, par lesquelles le serveur web vend des données ou demande des données, par exemple via une requête POST (module 2 uniquement). L'interface Web est complétée par un système de connexion, tandis que toute la famille peut s'inscrire au système, chacun avec son nom et son mot de passe. Il s'agit donc d'une application multi-utilisateurs où chaque membre de la famille a une vue d'ensemble des deux modules et peut effectuer différentes actions - réglage de la température de référence, thermomètre de contrôle, etc. L'interface Web est programmée en PHP, les données sont stockées dans la base de données MySQL. Chacun des modules a une table séparée dans la base de données pour les données. Considérez les modules individuels plus en détail.

Étape 2: Module 1 - PLAT

Module 1 - PLAT
Module 1 - PLAT
Module 1 - PLAT
Module 1 - PLAT

L'ensemble du module 1-FLAT sert uniquement de contrôle de température dans les pièces individuelles, il n'a pas d'autre rôle. Des capteurs DHT22 ont été utilisés sur une longue distance à l'aide d'une résistance pullup appropriée de 10 kohms pour enregistrer l'humidité dans les salles de bains. Étant donné que le BME280 et le SHT21 communiquent via le bus I2C et que cela est considérablement limité en termes de longueur de pilote de bus, des capteurs sont utilisés à proximité d'Arduino dans les pièces.

Les capteurs de température DS18B20 ont été divisés en 4 bus, car deux capteurs externes sont utilisés, ce qui facilite leur connexion à des sorties Arduino séparées et, en cas de chute du capteur, il est plus facile à remplacer car il ne paralyse pas la fonctionnalité du système.

Par exemple, dans le cas d'un de ces bus OneWire, sur lequel 4 capteurs sont indexés. L'index est lié à l'adresse physique des thermomètres, donc si l'un des capteurs est échangé, le nouveau capteur peut apparaître sur l'index 0 - initial, voire 2, 3 ou dernier. Ainsi, en réduisant le nombre de capteurs sur les bus, on peut éviter une telle complication qui peut survenir lors du remplacement du capteur.

Étape 3: Module 2 - CHAUDIÈRE

Module 2 - CHAUDIÈRE
Module 2 - CHAUDIÈRE
Module 2 - CHAUDIÈRE
Module 2 - CHAUDIÈRE
Module 2 - CHAUDIÈRE
Module 2 - CHAUDIÈRE

En plus de la fonction de surveillance, le module 2 - CHAUDIÈRE a également un rôle plus important, à savoir le contrôle des solénoïdes ou des relais pour le contrôle des vannes des radiateurs. Le module fonctionne indépendamment du chauffage domestique. Le module ne commute pas le chauffage ou la chaudière. Le module ne s'occupe de l'ouverture, de la fermeture de la vanne du radiateur que si la température ambiante est inférieure / supérieure à la consigne - ce qu'on appelle. température de référence. Chaque pièce où la vanne de radiateur est contrôlée peut se voir attribuer un thermomètre spécifique à partir du module 2. En plus de cela - mode automatique, il existe également un mode manuel où la vanne peut être ouverte / fermée manuellement à partir de l'interface Web indéfiniment - dur. Les entrées numériques peuvent être utilisées pour vérifier que le solénoïde / relais / vanne a été ouvert / fermé sur demande avec Arduina - la possibilité de comparer si la sortie est égale à l'entrée.

Étape 4: Que propose l'interface Web ?

Que propose l'interface Web ?
Que propose l'interface Web ?
Que propose l'interface Web ?
Que propose l'interface Web ?

Pour les deux modules, il existe également une représentation graphique d'un graphique linéaire pour le développement de variables individuelles - température, humidité en 24 heures, 7 jours. L'interface web propose également la visualisation des valeurs maximum/minimum, moyenne en 24 heures, 7 jours pour chaque thermomètre/hygromètre. Dans le module 1, une paire de capteurs SHT21 a été initialement envisagée, mais comme ils n'ont aucune possibilité de changer l'adresse I2C, il serait nécessaire d'utiliser un multiplexeur pour une communication bus à partir de deux capteurs ayant la même adresse I2C. En cas de données de capteur défectueuses, le nom du capteur est enregistré dans un journal que l'administrateur système peut ouvrir à tout moment pour entretenir le bus OneWire et remplacer le capteur défectueux, par exemple.

Watchdog a été implémenté dans les programmes Arduino, qui en cas d'initialisation défectueuse, de "gel", une autre erreur redémarre en toute sécurité et au début du programme désactive toutes les sorties jusqu'à ce que la connexion à l'interface Web soit établie, où elle est entièrement synchronisée dans termes de produits, qu'il applique par la suite.

Vous pouvez trouver d'autres projets sur: https://arduino.php5.sk?lang=en Faites un don pour plus d'exemples:

Conseillé: