ESP32 - Contrôle de la pompe
Dans ce guide, vous apprendrez comment utiliser une pompe de 12 V avec un ESP32 et MicroPython. En détail, vous apprendrez :
- Comment connecter la pompe à l'ESP32
- Comment écrire du code MicroPython pour l'ESP32 afin d'allumer et d'éteindre la pompe
- Comment changer le débit d'eau en pilotant la pompe avec un module MOSFET
Ce tutoriel vous aidera à créer des systèmes d'arrosage pour les plantes, les aquariums ou les stations de remplissage d'eau.
Vous pouvez commuter la pompe avec un relais ou avec un module MOSFET. Le relais ne fait que démarrer et arrêter la pompe. Le module MOSFET la démarre et l'arrête aussi, mais il peut en plus la faire tourner plus lentement ou plus vite avec le PWM, donc vous contrôlez la quantité d'eau qui circule. Et il ne fait aucun clic. Nous allons construire les deux versions.

Préparation du matériel
Ou vous pouvez acheter les kits suivants:
| 1 | × | Kit de Démarrage DIYables ESP32 (ESP32 inclus) | |
| 1 | × | Kit de Capteurs DIYables (18 capteurs/écrans) |
À propos de la pompe 12 V
Plan des broches

Une pompe de 12 V possède généralement deux broches.
- Connectez la broche négative (-) (noire) à la masse de l'alimentation à courant continu.
- Connectez la broche positive (+) (rouge) à 12 V sur l'alimentation à courant continu.
Comment contrôler une pompe
Une alimentation de 12 V fonctionne parfaitement pour une pompe de 12 V. Pour contrôler la pompe avec un ESP32, connectez un relais entre la pompe et l'ESP32. L'ESP32 utilisera le relais pour mettre la pompe en marche et l'arrêter. Si vous débutez avec les relais ou la programmation MicroPython pour l'ESP32, je vous recommande de consulter le tutoriel ci-dessous :
Vous n'avez jamais utilisé de module MOSFET ? Lisez d'abord ESP32 - Module MOSFET. Il explique les broches, les bornes à vis et le code PWM.
Relais ou module MOSFET pour la pompe
| Relais | Module MOSFET | |
|---|---|---|
| Contrôle de la pompe | marche ou arrêt | marche ou arrêt, plus la vitesse et le débit de la pompe (PWM) |
| Meilleur usage | pompes AC, simple allumé/éteint | pompes DC 12 V, contrôle du débit, nombreux démarrages et arrêts |
| Type de charge | AC ou DC | DC uniquement |
| Alimentation de la pompe | toute tension prévue pour le relais | 6 V ou plus (la grille est alimentée par elle) |
| Bruit de commutation | clic audible | aucun |
| Temps de commutation | lent, en millisecondes | très court |
| Usure | les contacts s'usent avec le temps | aucune pièce mobile |
| Isolation | oui, bobine et contacts | oui, optocoupleur PC817 |
Pour la pompe DC 12 V utilisée ici, choisissez le module MOSFET quand vous voulez régler le débit d'eau, par exemple un débit doux pour les plantes. Si votre pompe fonctionne sur le secteur AC, le relais est la seule option des deux.
Diagramme de câblage
- Comment connecter l'ESP32 et contrôler la pompe en utilisant une planche d'essai (alimentée via un câble USB)

Cette image a été créée avec Fritzing. Cliquez pour agrandir l'image.
Vous pouvez aussi monter ce circuit sans plaque d'essai. Voici le même câblage :

Cette image a été créée avec Fritzing. Cliquez pour agrandir l'image.
- Comment connecter l'ESP32 et contrôler une pompe en utilisant breadboard (alimenté via la broche Vin)

Cette image a été créée avec Fritzing. Cliquez pour agrandir l'image.
- Comment connecter l'ESP32 et commander la pompe en utilisant la carte breakout avec bloc de bornes à vis (alimentée via un câble USB)

- Comment connecter l'ESP32 et contrôler une pompe en utilisant carte d'extension à bornes à vis (alimentée via la broche Vin)

Code MicroPython pour ESP32
Le code ci-dessous met la pompe en marche pendant cinq secondes et l'éteint pendant cinq cycles.
Étapes rapides
Voici les instructions sur la façon de configurer et d’exécuter votre code MicroPython sur l’ESP32 en utilisant l’IDE Thonny :
- Assurez-vous que l’IDE Thonny est installé sur votre ordinateur.
- Confirmez que le firmware MicroPython est chargé sur votre carte ESP32.
- Si c’est votre première utilisation d’un ESP32 avec MicroPython, consultez le guide ESP32 - Premiers pas. pour des instructions étape par étape.
- Reliez la carte ESP32 à la pompe de 12 V selon le schéma fourni.
- Reliez la carte ESP32 à votre ordinateur avec un câble USB.
- Ouvrez l’IDE Thonny sur votre ordinateur.
- Dans l’IDE Thonny, allez dans Outils Options.
- Sous l’onglet Interpréteur, choisissez MicroPython (ESP32) dans le menu déroulant.
- Assurez-vous que le bon port est sélectionné. Thonny IDE le détecte généralement automatiquement, mais vous devrez peut-être le sélectionner manuellement (comme COM12 sous Windows ou /dev/ttyACM0 sous Linux).
- Copiez le code MicroPython fourni et collez-le dans l’éditeur de Thonny.
- Enregistrez le code sur votre ESP32 en procédant comme suit :
- Cliquez sur le bouton Enregistrer ou appuyez sur Ctrl+S.
- Dans la boîte de dialogue d’enregistrement, choisissez Périphérique MicroPython.
- Nommez le fichier main.py.
- Cliquez sur le bouton vert Run (ou appuyez sur F5) pour exécuter le script.
- Vérifiez que la pompe fonctionne correctement.
Explication du code
Les commentaires du code MicroPython ESP32 ci-dessus expliquent tout.
Comment contrôler le débit de la pompe avec un module MOSFET
Cette section utilise un module MOSFET à la place du relais. En changeant le rapport cyclique du PWM, l'ESP32 règle la vitesse de la pompe, et donc la quantité d'eau qu'elle déplace.
Diagramme de câblage

Cette image a été créée avec Fritzing. Cliquez pour agrandir l'image.
Si vous n'utilisez pas de plaque d'essai, câblez-le ainsi :

Cette image a été créée avec Fritzing. Cliquez pour agrandir l'image.
| Broche du module MOSFET | Se connecte à |
|---|---|
| PWM | ESP32 GPIO18 |
| GND | ESP32 GND |
| + | adaptateur 12 V + (via la prise jack DC) et fil rouge (+) de la pompe |
| LOAD | fil noir (−) de la pompe |
| − | adaptateur 12 V − (via la prise jack DC) |
Le moteur de la pompe est une bobine, donc ajoutez une diode de roue libre (flyback) (1N4007 ou 1N5819) entre les deux fils de la pompe : l'extrémité avec la bande (cathode) vers le fil + de la pompe, l'autre extrémité vers le fil − de la pompe.
Code MicroPython ESP32 - Pompe avec module MOSFET
La pompe tourne d'abord à pleine puissance pendant 2 secondes, puis s'arrête pendant 2 secondes. Ensuite, la puissance monte par paliers de 10 % à 100 %, et le débit d'eau devient plus fort. Puis la puissance descend palier par palier, et le débit devient plus faible jusqu'à l'arrêt.
Étapes rapides
- Faites la configuration de Thonny et de l'ESP32 décrite dans les étapes rapides du relais ci-dessus.
- Mettez la pompe dans l'eau. Ne la faites jamais tourner à sec.
- Connectez tout comme dans le diagramme, mais ne branchez pas encore l'adaptateur 12 V.
- Enregistrez le code sur l'ESP32 sous le nom main.py.
- Branchez l'adaptateur 12 V et cliquez sur le bouton vert Run (ou appuyez sur F5).
- Regardez le débit d'eau et les messages dans le Shell.
À faible puissance, une pompe peut seulement ronronner sans déplacer d'eau. C'est normal. Elle commence à pomper à un niveau plus élevé.
Rappel : le module MOSFET est réservé aux pompes DC, avec une alimentation d'au moins 6 V environ. Utilisez le relais pour une pompe AC.