ESP8266 - Système de refroidissement utilisant un capteur DHT
Ce tutoriel vous explique comment réguler la température à l'aide d'un ventilateur et d'un capteur DHT11 ou DHT22.
- L'ESP8266 lit la température à partir du capteur, si la température dépasse un seuil, il active le ventilateur de refroidissement.
- Sinon, il éteint le ventilateur de refroidissement.
Si vous préférez utiliser un capteur DS18B20 au lieu d'un capteur DHT, veuillez consulter ESP8266 - Système de refroidissement utilisant le capteur DS18B20.
Préparation du matériel
You can use DHT22 sensor instead of DHT11 sensor.
Or you can buy the following sensor kits:
1 | × | DIYables Sensor Kit (30 sensors/displays) | |
1 | × | DIYables Sensor Kit (18 sensors/displays) |
À propos du ventilateur de refroidissement et du capteur DHT
Le ventilateur dans ce tutoriel nécessite une alimentation de 12v. Si l'alimentation est fournie, le ventilateur s'allumera, sinon, il restera éteint. Pour contrôler le ventilateur avec un ESP8266, nous devons utiliser un relais comme intermédiaire.
Si vous n'êtes pas familier avec le capteur de température et le ventilateur (y compris le brochage, leur fonctionnement et la programmation), les tutoriels suivants peuvent vous fournir les informations nécessaires :
Diagramme de câblage
- Un schéma montrant les connexions d'un module DHT11.
This image is created using Fritzing. Click to enlarge image
Voir plus dans l'agencement des broches de l'ESP8266 et comment alimenter l'ESP8266 et d'autres composants.
- Un schéma montrant les connexions d'un module DHT22
- Une illustration du câblage pour un module DHT22
This image is created using Fritzing. Click to enlarge image
Fonctionnement du système
- L'ESP8266 obtient la température du capteur de température.
- Si la température est supérieure au seuil maximal, l'ESP8266 active le ventilateur.
- Si la température est inférieure au seuil minimal, l'ESP8266 éteint le ventilateur.
Cette boucle est répétée sans fin.
Code ESP8266
Code ESP8266 pour système de refroidissement avec capteur DHT11
Code ESP8266 pour système de refroidissement avec capteur DHT22
Dans les codes ci-dessus, l'ESP8266 activera le ventilateur lorsque la température sera supérieure à 25°C et le maintiendra en fonctionnement jusqu'à ce que la température descende en dessous de 20°C.
Étapes rapides
Pour commencer avec l'ESP8266 sur l'IDE Arduino, suivez ces étapes :
- Consultez le tutoriel comment configurer l'environnement pour ESP8266 sur Arduino IDE si c'est la première fois que vous utilisez ESP8266.
- Câblez les composants comme indiqué dans le schéma.
- Connectez la carte ESP8266 à votre ordinateur via un câble USB.
- Ouvrez l'Arduino IDE sur votre ordinateur.
- Choisissez la bonne carte ESP8266, comme (par exemple NodeMCU 1.0 (Module ESP-12E)), et son port COM respectif.
- Connectez un ESP8266 à un PC à l'aide d'un câble USB
- Ouvrez l'Arduino IDE, sélectionnez la bonne carte et le bon port
- Cliquez sur l'icône Libraries dans la barre gauche de l'Arduino IDE.
- Recherchez « DHT » et localisez la bibliothèque du capteur DHT d'Adafruit.
- Appuyez sur le bouton Install pour ajouter la bibliothèque.
- On vous demandera d'installer d'autres dépendances de bibliothèques.
- Cliquez sur le bouton Install All pour installer toutes les dépendances de bibliothèques.
- Sur le moniteur série
- Copiez le code associé au capteur que vous avez et ouvrez-le dans l'IDE Arduino.
- Cliquez sur le bouton Upload dans l'IDE Arduino pour compiler et téléverser le code vers l'ESP8266.
- Modifiez la température de la zone autour du capteur.
- Consultez le statut du ventilateur sur le moniteur série.
Connaissances avancées
La méthode de contrôle mentionnée ci-dessus est appelée régulateur tout ou rien, également connu sous le nom de signaleur ou régulateur "bang-bang". Cette approche est très facile à mettre en place.
Une approche alternative est le régulateur PID. Cette méthode rend la régulation de la température plus stable, cependant elle est complexe et difficile à comprendre et à appliquer. En conséquence, le régulateur PID n'est pas largement utilisé pour le contrôle de la température.