ESP32 S3 - Contrôle d'un ventilateur
Apprenez à contrôler un ventilateur de refroidissement DC avec votre ESP32 S3 en utilisant un module relais. Ce projet pour débutants vous guide à travers le câblage, le codage et le test d'un ventilateur qui s'allume et s'éteint automatiquement avec un code Arduino simple.
Il y a deux façons de piloter le ventilateur : un relais ou un module MOSFET. Un relais ne donne que deux états : ventilateur allumé ou ventilateur éteint. Un module MOSFET fait cela aussi, et il peut en plus régler la vitesse du ventilateur, sans aucun clic. Cette page vous montre les deux façons.
Ce que vous allez construire :
- Un circuit de ventilateur contrôlé par relais piloté par l'ESP32 S3
- Un code Arduino qui fait basculer le ventilateur entre allumé et éteint toutes les 10 secondes
- Une sortie du Serial Monitor montrant l'état du ventilateur en temps réel
- Une base pour construire des systèmes de refroidissement déclenchés par la température
- Un deuxième circuit avec un module MOSFET qui accélère et ralentit le ventilateur avec le PWM

Matériel requis
Ou vous pouvez acheter les kits suivants:
| 1 | × | Kit de Démarrage DIYables ESP32 S3 (ESP32 S3 inclus) | |
| 1 | × | Kit de Capteurs DIYables (18 capteurs/écrans) |
À propos du ventilateur DC
Un ventilateur DC est un dispositif de refroidissement électrique qui fonctionne sur courant continu et déplace l'air pour la ventilation ou la régulation de la température. Ces ventilateurs sont largement utilisés dans les projets électroniques car ils fonctionnent sur des tensions standards et sont faciles à intégrer avec des microcontrôleurs comme l'ESP32 S3.
Caractéristiques principales
Les ventilateurs DC fonctionnent couramment en 5V, 12V ou 24V DC et se connectent via deux fils : un fil positif (rouge) et un fil négatif (noir). Lorsqu'ils sont alimentés par une tension constante, ils tournent à vitesse constante, et lorsqu'ils sont pilotés par un signal PWM, la vitesse devient variable. Ils consomment relativement peu de courant, fonctionnent silencieusement, et sont disponibles à faible coût, ce qui en fait un choix idéal pour les projets de refroidissement et de ventilation pour débutants.
Brochage
Un ventilateur DC a deux fils de connexion pour l'alimentation :

- Broche négative (-) (fil noir) : Connectez-la au négatif/masse de votre alimentation DC
- Broche positive (+) (fil rouge) : Connectez-la au positif de votre alimentation DC
Comment contrôler le ventilateur
Il existe plusieurs façons de contrôler un ventilateur DC depuis un microcontrôleur. Faire fonctionner le ventilateur à pleine vitesse nécessite simplement de le connecter directement à sa tension nominale. Le contrôle de vitesse s'obtient avec un signal PWM qui fait varier la puissance moyenne délivrée au moteur. Le contrôle marche/arrêt — la méthode couverte dans ce tutoriel — utilise un relais pour allumer et éteindre l'alimentation du ventilateur, ce qui maintient le circuit haute tension du ventilateur complètement isolé des broches GPIO de l'ESP32 S3. Apprenez-en plus sur les relais dans notre ESP32 S3 - Relais. Pour la partie contrôle de la vitesse, cette page utilise un module MOSFET ; le tutoriel ESP32 S3 - Module MOSFET explique ses broches et son fonctionnement interne.
Relais ou module MOSFET pour un ventilateur ?
| Relais | Module MOSFET | |
|---|---|---|
| Ce que vous pouvez faire | allumer ou éteindre le ventilateur | l'allumer ou l'éteindre et changer sa vitesse (PWM) |
| Bruit | un clic à chaque commutation | aucun bruit |
| Vitesse de commutation | lente, quelques millisecondes | très rapide |
| Durée de vie | les contacts s'usent après de nombreuses commutations | rien ne bouge, donc rien ne s'use |
| Type d'alimentation | ventilateurs CA ou CC | ventilateurs CC uniquement |
| Tension d'alimentation du ventilateur | toute tension prévue pour le relais | environ 6V ou plus |
| Isolation de l'ESP32 S3 | oui, la bobine et les contacts sont séparés | oui, grâce à un optocoupleur PC817 |
| Bon choix pour | ventilateurs CA, simple ON/OFF | ventilateurs CC 12V qui ont besoin d'un contrôle de vitesse |
Pour un ventilateur de refroidissement CC 12V, le module MOSFET est généralement le meilleur choix, car vous pouvez faire tourner le ventilateur lentement et silencieusement quand la pièce est seulement un peu chaude. Gardez le relais si votre ventilateur fonctionne en CA ou a besoin de moins d'environ 6V.
Schéma de câblage
Connectez votre ESP32 S3, le relais, le ventilateur et l'alimentation en suivant le schéma ci-dessous. Le relais se place entre l'ESP32 S3 et le ventilateur, protégeant le microcontrôleur de la tension de fonctionnement du ventilateur.
Notes de sécurité
Faites toujours correspondre la tension de votre alimentation à la tension nominale de votre ventilateur — utiliser 12V sur un ventilateur 5V ou inversement peut endommager le composant. Ne connectez jamais les fils d'alimentation du ventilateur directement aux broches GPIO de l'ESP32 S3 ; le relais est essentiel pour une isolation sûre. Vérifiez bien toutes les connexions avant de mettre le circuit sous tension.

Cette image a été créée avec Fritzing. Cliquez pour agrandir l'image.
| Broche du composant | Broche ESP32 S3 |
|---|---|
| Relay Signal (IN) | D7 |
| Relay VCC | 5V |
| Relay GND | GND |
| Ventilateur Positif (+) | Relay COM (Common) |
| Ventilateur Négatif (-) | Négatif (-) de l'alimentation |
| Relay NO (Normally Open) | Positif (+) de l'alimentation |
Vous voulez un montage plus propre et plus sûr ? Branchez simplement la carte ESP32 S3 sur une carte à bornier à vis pour ESP32 S3. Voici le schéma de câblage avec la carte à bornier à vis.

Cette image a été créée avec Fritzing. Cliquez pour agrandir l'image.
Une autre solution est une carte d'extension GPIO pour ESP32 S3. Chaque GPIO a une broche de signal avec une broche 3,3V et une broche GND à côté, comme ci-dessous :

Cette image a été créée avec Fritzing. Cliquez pour agrandir l'image.
Code ESP32 S3
Le code suivant démontre le contrôle marche/arrêt du ventilateur en utilisant l'ESP32 S3 et un relais. Il utilise une simple boucle temporisée pour allumer le ventilateur pendant 10 secondes puis l'éteindre pendant 10 secondes, en affichant l'état actuel sur le Serial Monitor afin que vous puissiez vérifier que le relais commute correctement sans avoir besoin de surveiller le ventilateur lui-même.
Étapes rapides
- Nouveau sur ESP32 S3 ? Terminez d'abord notre guide ESP32 S3 - Premiers pas.
- Câblez le relais, le ventilateur et l'alimentation à l'ESP32 S3 en suivant le schéma de câblage ci-dessus.
- Connectez l'ESP32 S3 à votre ordinateur à l'aide du câble USB Type-C.
- Ouvrez l'Arduino IDE sur votre ordinateur.
- Sélectionnez ESP32 S3 et son port COM dans le sélecteur de carte de l'Arduino IDE.
- Copiez le code ci-dessus et collez-le dans un nouveau sketch Arduino IDE.
- Cliquez sur le bouton Upload pour compiler et téléverser le code sur votre ESP32 S3.
- Observez le ventilateur s'allumer et s'éteindre automatiquement par intervalles de 10 secondes.
- Ouvrez le Serial Monitor (réglé sur 115200 bauds) pour voir les messages d'état du ventilateur en temps réel.
- Astuce pro : Ajoutez une LED en parallèle avec l'indicateur de bobine du relais pour confirmer visuellement la commutation même lorsque le ventilateur est débranché.
Explication du code ligne par ligne
Le code ESP32 S3 ci-dessus contient une explication ligne par ligne. Veuillez lire les commentaires dans le code !
Sortie du moniteur série
Ouvrez le Serial Monitor dans l'Arduino IDE pour voir l'état du contrôle du ventilateur :
Applications et idées de projets
Le contrôle de ventilateur avec l'ESP32 S3 ouvre la porte à une large gamme de projets pratiques de refroidissement et d'automatisation, dans des contextes domestiques, de serre et industriels.
- Système de refroidissement contrôlé par température : Allumez automatiquement le ventilateur lorsque la température dépasse un seuil défini à l'aide d'un capteur DHT ou DS18B20.
- Système de ventilation par humidité : Activez le ventilateur lorsque l'humidité devient trop élevée dans une pièce ou une enceinte.
- Refroidissement de boîtier d'ordinateur : Construisez une solution de refroidissement intelligente qui réagit aux températures mesurées des composants.
- Contrôle climatique de serre : Régulez la circulation d'air pour maintenir des conditions de croissance optimales pour les plantes.
- Minuterie d'extraction de salle de bain : Faites fonctionner le ventilateur automatiquement pendant une durée fixe après avoir détecté une humidité élevée.
- Ventilation intelligente IoT : Contrôlez le ventilateur à distance via WiFi grâce à la connectivité sans fil intégrée de l'ESP32 S3.
Comment contrôler la vitesse du ventilateur avec un module MOSFET
Remplaçons maintenant le relais par un module MOSFET. Le ventilateur s'allume et s'éteint toujours, mais l'ESP32 S3 peut aussi choisir n'importe quelle vitesse intermédiaire.
Schéma de câblage du ventilateur et du module MOSFET

Cette image a été créée avec Fritzing. Cliquez pour agrandir l'image.
| De | Vers |
|---|---|
| ESP32 S3 GPIO47 | Module PWM |
| ESP32 S3 GND | Module GND |
| Adaptateur 12V + | Module + |
| Ventilateur + (fil rouge) | Module + (partage la borne avec l'adaptateur +) |
| Ventilateur − (fil noir) | Module LOAD |
| Adaptateur 12V − | Module − |
Vous voulez une connexion plus solide que des fils de connexion ? Une carte à bornier à vis pour ESP32 S3 règle ce problème. Branchez-y la carte ESP32 S3 et vissez les fils. Le câblage ne change pas. Les fils vont simplement aux borniers à vis, comme ci-dessous.

Cette image a été créée avec Fritzing. Cliquez pour agrandir l'image.
Une carte d'extension GPIO pour ESP32 S3 convient aussi. En plus des broches S, 3,3V et GND de chaque GPIO, elle a des broches 3,3V et 5V supplémentaires :

Cette image a été créée avec Fritzing. Cliquez pour agrandir l'image.
Un ventilateur contient un petit moteur : placez donc une diode de roue libre (flyback) (1N4007 ou 1N5819) aux bornes des deux fils du ventilateur. La bande (cathode) va au + du ventilateur.
Code ESP32 S3 - Vitesse du ventilateur avec module MOSFET
Le ventilateur tourne à pleine vitesse pendant 2 secondes et s'arrête pendant 2 secondes. Ensuite, il accélère de 10% à 100% par petits paliers, puis ralentit jusqu'à 0%. Beaucoup de ventilateurs calent en dessous d'environ 30%, donc ne vous inquiétez pas s'il reste immobile aux premiers paliers.
Étapes rapides
- Configurez la carte et l'Arduino IDE comme dans les Étapes rapides du relais ci-dessus.
- Câblez le ventilateur et le module MOSFET comme indiqué dans le schéma. Laissez l'adaptateur 12V débranché pour l'instant.
- Téléversez le code sur l'ESP32 S3.
- Branchez l'adaptateur 12V.
- Ouvrez le Serial Monitor à 9600 bauds et écoutez le ventilateur changer de vitesse.
Astuce : Le module MOSFET fonctionne uniquement en CC et a besoin d'une alimentation du ventilateur d'environ 6V ou plus. Un ventilateur 5V ou un ventilateur CA doit rester sur le relais.
Tutoriel vidéo
Regardez le tutoriel vidéo étape par étape pour ce projet ESP32 S3 ci-dessous.
Défiez-vous
Ces défis pratiques vous aideront à approfondir votre compréhension du contrôle de ventilateur et de la commutation par relais sur l'ESP32 S3.
- Débutant : Changez le minutage marche/arrêt de 10 secondes à 5 secondes et observez la différence.
- Débutant : Ajoutez un bouton-poussoir pour pouvoir basculer manuellement le ventilateur au lieu de dépendre d'une temporisation automatique.
- Intermédiaire : Connectez un capteur DHT11 et n'allumez le ventilateur que lorsque la température dépasse 25°C.
- Intermédiaire : Contrôlez deux ventilateurs indépendamment en utilisant deux relais séparés et deux broches GPIO différentes.
- Avancé : Implémentez un contrôle de vitesse par PWM pour faire varier la vitesse du ventilateur en douceur de 0 à 100%.
- Avancé : Construisez une interface web hébergée sur l'ESP32 S3 pour contrôler la vitesse du ventilateur et surveiller la température à distance.