Контроллер управления вытяжным вентилятором с WiFi

image
. , .

image

Mais le progrès technologique avance inexorablement et les nouvelles tendances me hantent à nouveau. J'ai longtemps nourri l'idée de mettre en œuvre le concept d'une maison intelligente sur des modules WiFi ESP8266. Il a expérimenté ces modules pendant un certain temps et a maintenant décidé de leur transférer sa "maison intelligente".

L'objectif principal du projet était la mise en œuvre de nouvelles fonctionnalités que j'utiliserai dans d'autres appareils à l'avenir.
Alors, que me donnera la mise à niveau du contrôleur de ventilateur sur l'ESP8266?

De nouvelles fonctionnalités


  • Affichez tous les indicateurs sur le WiFi à partir d'un ordinateur / tablette / téléphone.
  • Traitement de paramètres supplémentaires - durée de fonctionnement du ventilateur et durée de combustion de la lampe dans la salle de bain.
  • Contrôle du ventilateur WiFi depuis un ordinateur / une tablette / un téléphone.
  • Configuration du contrôleur via WiFi avec sauvegarde des valeurs dans une mémoire non volatile.
  • Enregistrement périodique des valeurs de tous les indicateurs sur un serveur sur Internet.
  • Eh bien, comme il y a toujours Internet, l'affichage de l'heure avec synchronisation via le protocole NTP.

Toutes ces fonctions permettent d'analyser le fonctionnement du contrôleur et, à l'avenir, d'optimiser les paramètres de l'algorithme de contrôle. Eh bien, ce contrôleur entrera dans le système général d'une maison intelligente avec surveillance des paramètres environnementaux de la salle de bain.
image
Le schéma n'a pas beaucoup changé par rapport à la version précédente:
  • Atmega328 remplacé par ESP8266
  • L'indicateur à sept segments a remplacé le module d'affichage fini par TN1637
  • Un triac avec un optocoupleur est remplacé par un relais à semi-conducteurs (le même, mais dans le cas).

Toutes les principales différences dans le programme du contrôleur.

Liste des composants


  • Module ESP8266 ESP07 avec carte adaptateur ~ 2,3 $
  • Affichage à sept chiffres à quatre chiffres sur la puce TM1637 avec connexion I2C ~ 1 $
  • Relais à semi-conducteurs OMRON G3MB-202P ~ $ 1
  • Alimentation 220V / 3,3V 600mA ~ 2,2 $
  • Capteur de température et d'humidité (faible précision, mais suffisant pour mes tâches) DHT11 ~ 0,7 $
  • Boîtier en plastique pour instrument 110x73x34 ~ 1 $
  • Photorésistance, juste résistances, planche à pain et fils

Total environ 9 $
Toutes les pièces sauf le boîtier et l'alimentation ont été achetées sur aliexpress.com. Je commande des boîtiers et des alimentations à des prix raisonnables sur taobao.com
image

Ensemble contrôleur


— ESP8266, .
image
- , . — - ( - , )
image
,
image
— ,
image
image

, .

ESP8266, contrairement à Atmega328, sur lequel la version précédente a été implémentée, a beaucoup plus de mémoire (RAM, ROM. EEPROM), qui, couplée au WiFi intégré, implémente les fonctions du serveur WEB intégré sans économiser de mémoire pour les chaînes de texte.

Mais avec le GPIO, l'ESP8266 est assez mauvais, donc un luxe tel que la gestion d'un indicateur à sept segments ne lui est pas directement accessible. Par conséquent, l'indicateur sur la puce TM1637 a été sélectionné, ce qui ne nécessite que deux sorties pour la connexion.

Environnement de développement


ESP8266 LUA, JC WEB. SDK. — Arduino IDE.
, , , , ESP-. , .

, , :
image
DHT pour travailler avec des capteurs d'humidité / température d'Adafruit et pour travailler avec l'indicateur sur le TM1637 DigitalTube .

Les détails de l'utilisation de l'IDE Arduino pour programmer l'ESP8266 sont bien décrits dans cet article.

Implémentation de nouvelles fonctionnalités


WiFi , . , ?

EEPROM . , WC_EEPROM.h WC_EEPROM.cpp . EEPROM.

, « ».

, , WEB- ( WC_HTTP.h WC_TTP.cpp)

:

ESP- EEPROM , 192.168.4.1, .
, .
WEB- / ( )
image

image

image
« ».

« » , WiFi .

, — , NTP . ( WC_NTP.h WC_NTP.cpp)

, , . . «» — DisplaySpecialChar(), , . «»
image
«»
image
.

— . , , , , UPTIME- .

L'enregistrement sur le serveur se déroule en deux modes. Les paramètres sont enregistrés avec une plus grande fréquence, lorsque «quelque chose se passe» dans la salle de bain, à ce moment, soit la lumière est allumée, soit le ventilateur fonctionne. Tous les délais d'attente sont configurés via l'interface WEB.

Les données sont stockées sur mon serveur sur Internet. L'adresse du serveur peut être configurée, mais le format d'enregistrement est toujours cousu dans le programme. Encore une fois, jusqu'à des temps meilleurs concept ustanivaniya))). Maintenant, les paramètres sont enregistrés par le script PHP le plus simple dans une table avec une structure simple.
image
Il est assez simple de reconfigurer les paramètres d'enregistrement sur la même «surveillance publique». Personnellement, ce serveur ne me convient pas avec des restrictions sur la fréquence de stockage des données et la profondeur de l'archive.

Optimiser les paramètres du contrôleur


Après l '«opération d'essai», vous pouvez déterminer si les seuils d'éclairage et d'humidité sont correctement définis, ainsi que les délais d'expiration de divers événements. Dans la mise en œuvre précédente, je définissais le temps de réponse sur 20 minutes, assis dans la salle de bain avec un chronomètre. Après avoir observé le graphique des paramètres pendant plusieurs douches, j'ai vu ce qui suit:
image
  • L'humidité en hiver change de 35 à 40%
  • Temps de normalisation de l'humidité avec ventilation naturelle 20-25 minutes
  • Temps de normalisation de l'humidité avec un ventilateur de travail 10-12 min
  • Le ventilateur double l'efficacité de la ventilation

Sur cette base, vous pouvez réduire en toute sécurité le temps de fonctionnement du ventilateur à 12 minutes, prolongeant ainsi sa durée de vie et économisant un peu d'énergie. Une analyse similaire peut être effectuée pour les autres saisons, lorsque l'humidité dans l'appartement est complètement différente.

Maintenant, après l'analyse, vous pouvez augmenter la période d'écriture des paramètres sur le serveur.

Conclusions



  • Le contrôleur de l'ESP8266 est stable, il remplit ses fonctions.
  • Ses fonctionnalités ont été étendues, il est désormais facile à gérer et s'intègre normalement dans le système Smart Home
  • Certaines choses doivent être améliorées, par exemple, l'interface WEB, l'autorisation d'accès, la partie serveur et certaines inexactitudes dans le calcul des heures de fonctionnement du ventilateur et de l'éclairage. D'autres désirs d'amélioration peuvent être révélés.
  • Le projet pilote de Smart Home sur WiFi peut être considéré comme réussi;)

Le croquis peut être téléchargé ici. Je serais très reconnaissant si vous signaliez des bugs.

Croquis du contrôleur de ventilateur sur WiFi Le

temps consacré au projet est de deux jours de congé

PS Je réponds immédiatement à la question, pourquoi est-ce si difficile? Puis-je m'asseoir en parallèle avec l'interrupteur ou sur la minuterie?
- Oui, tu peux. Mais l'inclusion de la minuterie et de la lumière ne me convenait pas. De plus, c'est un hobby, la mise en œuvre de certaines idées qui sont utilisées dans d'autres projets.

L'installation de stockage était à nouveau buggée, donc les photos de mon blog . Vous pouvez y voir mes développements dans la maison intelligente

Source: https://habr.com/ru/post/fr389751/


All Articles