ESP8266 - Pompe

Ce tutoriel vous explique comment utiliser l'ESP8266 pour contrôler une pompe. En adaptant ce tutoriel, vous pouvez construire un système d'irrigation, un aquarium, un système de remplissage d'eau, et plus encore.

Nous allons voir deux façons de piloter la pompe : avec un relais et avec un module MOSFET. Un relais peut seulement démarrer et arrêter la pompe. Un module MOSFET peut aussi la démarrer et l'arrêter, et il peut en plus changer la vitesse de la pompe avec le PWM, ce qui veut dire que vous pouvez pomper plus ou moins d'eau. Il fonctionne aussi sans aucun clic.

Matériel Requis

1×ESP8266 NodeMCU ESP-12F
1×Alternativement: ESP8266 D1 Mini NodeMCU ESP-12F
1×Alternativement: ESP8266 NodeMCU ESP-12E (Uno-form)
1×Micro USB Cable
1×Alternativement: ESP8266 NodeMCU ESP-12F (SMD-form)
1×Câble USB Type-A vers Type-C (pour PC USB-A)
1×Câble USB Type-C vers Type-C (pour PC USB-C)
1×Relais
1×Alternativement: MOSFET Module (AOD4184, LR7843 or FR120N)
1×12V Pompe
1×Vinyl Tube
1×Adaptateur secteur 12V
1×Connecteur d'alimentation DC
1×Fils de connexion
1×Recommandé: Carte d'extension à bornier à vis pour ESP8266

Ou vous pouvez acheter les kits suivants:

1×Kit de Capteurs DIYables (18 capteurs/écrans)
Divulgation : Certains des liens fournis dans cette section sont des liens affiliés Amazon. Nous pouvons recevoir une commission pour tout achat effectué via ces liens, sans coût supplémentaire pour vous. Nous vous remercions de votre soutien.

À propos de la pompe 12V

Le brochage de la pompe

Brochage de la pompe ESP8266 NodeMCU
image source: diyables.io

La pompe 12V a généralement deux broches :

  • La broche négative (-) (noire) doit être connectée au GND de l'alimentation DC
  • La broche positive (+) (rouge) doit être connectée au 12V de l'alimentation DC

Comment contrôler une pompe avec l'ESP8266

Si une pompe de 12V est alimentée par une source de 12V, elle fonctionne. Pour contrôler la pompe, un relais doit être utilisé entre l'ESP8266 et la pompe. L'ESP8266 peut alors contrôler la pompe via le relais.

Si vous ne connaissez pas les relais (brochage, fonctionnement, programmation, etc.), veuillez consulter le ESP8266 - Relais. pour plus d'informations.

De la même façon, le tutoriel ESP8266 - Module MOSFET vous explique les bases du module MOSFET, si vous n'en avez jamais utilisé.

Relais ou module MOSFET pour une pompe

Point Relais Module MOSFET
Contrôle de la pompe démarrage/arrêt seulement démarrage/arrêt et débit (PWM)
Bruit à la commutation clic silencieux
Temps de réaction lent, en millisecondes très rapide
Durabilité les contacts s'usent avec le temps aucune pièce mobile
Alimentation de la pompe AC ou DC DC uniquement
Tension de la pompe dans la limite du relais au moins environ 6V
Isolation oui (bobine / contacts) oui (optocoupleur PC817)
Idéal pour pompes AC, simple ON/OFF pompes DC, contrôle du débit, nombreuses commutations

Une pompe DC de 12V fonctionne très bien avec le module MOSFET, car vous pouvez rendre le débit doux ou fort. Si votre pompe fonctionne sur le secteur AC, le relais est celui à utiliser.

Diagramme de câblage

Schéma de câblage de la pompe ESP8266 NodeMCU

Cette image a été créée avec Fritzing. Cliquez pour agrandir l'image.

Pour plus d'informations, consultez Brochage ESP8266. et Comment alimenter l'ESP8266..

Voici le même câblage sans plaque d'essai :

Schéma de câblage de la pompe ESP8266 NodeMCU (sans plaque d'essai)

Cette image a été créée avec Fritzing. Cliquez pour agrandir l'image.

Code ESP8266 pour contrôler une pompe

Le code ci-dessous fait alterner la pompe entre ON et OFF toutes les cinq secondes.

/* * Ce code ESP8266 NodeMCU a été développé par newbiely.fr * Ce code ESP8266 NodeMCU est mis à disposition du public sans aucune restriction. * Pour des instructions complètes et des schémas de câblage, veuillez visiter: * https://newbiely.fr/tutorials/esp8266/esp8266-pump */ #define RELAY_PIN D8 // The ESP8266 pin connected to the IN pin of relay // The setup function runs once on reset or power-up void setup() { // initialize digital pin D8 as an output. pinMode(RELAY_PIN, OUTPUT); } // The loop function repeats indefinitely void loop() { digitalWrite(RELAY_PIN, HIGH); // turn on pump 4 seconds delay(4000); digitalWrite(RELAY_PIN, LOW); // turn off pump 4 seconds delay(4000); }

Étapes rapides

Pour commencer avec l'ESP8266 sur Arduino IDE, suivez ces étapes :

  • Consultez le tutoriel Installation du logiciel ESP8266. si c'est la première fois que vous utilisez l'ESP8266.
  • Câblez les composants comme indiqué sur le schéma.
  • Connectez la carte ESP8266 à votre ordinateur à l'aide d'un câble USB.
  • Ouvrez Arduino IDE sur votre ordinateur.
  • Choisissez la bonne carte ESP8266, comme (par exemple NodeMCU 1.0 (Module ESP-12E)), et son port COM.
  • Connectez votre ESP8266 à votre ordinateur à l'aide d'un câble USB.
  • Lancez Arduino IDE, sélectionnez la carte et le port appropriés.
  • Copiez le code ci-dessus et ouvrez-le dans Arduino IDE.
  • Cliquez sur le bouton Upload dans Arduino IDE pour envoyer le code à l'ESP8266.
  • Vérifiez que l'état de la pompe change.

Explication du code

Découvrez l'explication ligne par ligne contenue dans les commentaires du code source !

Découvrez ce tutoriel sur ESP8266 - Bouton - Pompe..

Code ESP8266 pour contrôler le débit de la pompe avec un module MOSFET

Cette partie remplace le relais par un module MOSFET. La broche D5 du NodeMCU sort du PWM, et le rapport cyclique décide de la vitesse de la pompe et de la quantité d'eau déplacée.

Diagramme de câblage

Schéma de câblage ESP8266 NodeMCU NodeMCU, pompe à eau et module MOSFET

Cette image a été créée avec Fritzing. Cliquez pour agrandir l'image.

  • NodeMCU D5 (GPIO14) → PWM du module
  • NodeMCU G (GND) → GND du module
  • Adaptateur 12V + → + du module
  • Fil rouge de la pompe (+) → + du module (avec le fil + de l'adaptateur)
  • Fil noir de la pompe (−) → LOAD du module
  • Adaptateur 12V − → − du module

Le moteur de la pompe est une bobine. Connectez une diode de roue libre (flyback) (1N4007 ou 1N5819) entre les fils de la pompe, avec le côté rayé (cathode) sur le fil + de la pompe.

Code ESP8266

/* * Ce code ESP8266 NodeMCU a été développé par newbiely.fr * Ce code ESP8266 NodeMCU est mis à disposition du public sans aucune restriction. * Pour des instructions complètes et des schémas de câblage, veuillez visiter: * https://newbiely.fr/tutorials/esp8266/esp8266-pump */ const int MOSFET_PIN = D5; // ESP8266 pin D5 connected to the PWM pin of the MOSFET module void setup() { Serial.begin(9600); pinMode(MOSFET_PIN, OUTPUT); analogWrite(MOSFET_PIN, 0); // start with the load OFF } void setLoad(int percent) { int duty = map(percent, 0, 100, 0, 255); // convert 0-100% to 0-255 analogWrite(MOSFET_PIN, duty); Serial.print("Load power: "); Serial.print(percent); Serial.println("%"); } void loop() { // turn the load fully ON, then fully OFF Serial.println("Load: ON"); setLoad(100); delay(2000); Serial.println("Load: OFF"); setLoad(0); delay(2000); // increase the power step by step (PWM) for (int percent = 10; percent <= 100; percent += 10) { setLoad(percent); delay(500); } // decrease the power step by step (PWM) for (int percent = 90; percent >= 0; percent -= 10) { setLoad(percent); delay(500); } delay(1000); }

Comportement de la pompe : 2 secondes à plein débit, 2 secondes à l'arrêt, puis le débit monte de 10% à 100% et redescend à 0%. À faible puissance, la pompe peut ne pas réussir à pousser l'eau dans le tube.

Étapes rapides

  • Faites la configuration de l'Arduino IDE et du NodeMCU des Étapes rapides du relais ci-dessus.
  • Mettez la pompe dans l'eau et câblez-la comme sur le schéma. Laissez l'adaptateur 12V débranché.
  • Téléversez le code ci-dessus.
  • Branchez l'adaptateur 12V et regardez le débit d'eau.
  • Ouvrez le Moniteur série à 9600 bauds.
∞
Newbiely | Arduino IDE 2.3.8
──
☐
✕
File
Edit
Sketch
Tools
Help
Nodemcu 1.0 (ESP-12E Module)
Newbiely.ino
···
8 Serial.println("Hello World!");
Output
Serial Monitor
Message (Enter to send message to 'Nodemcu 1.0 (ESP-12E Module)' on 'COM15')
New Line
9600 baud
Load: ON Load power: 100% Load: OFF Load power: 0% Load power: 10% Load power: 20% Load power: 30% Load power: 40% Load power: 50% Load power: 60% Load power: 70% Load power: 80% Load power: 90% Load power: 100% Load power: 90% Load power: 80% Load power: 70% Load power: 60% Load power: 50% Load power: 40% Load power: 30% Load power: 20% Load power: 10% Load power: 0%
Ln 11, Col 1
Nodemcu 1.0 (ESP-12E Module) on COM15
2

Notez que le module MOSFET a besoin d'une pompe DC et d'une alimentation d'environ 6V ou plus. Une pompe AC doit rester sur le relais. Ne laissez jamais la pompe tourner à sec.

Vidéo

Commentaires

※ NOS MESSAGES

  • N'hésitez pas à partager le lien de ce tutoriel. Cependant, veuillez ne pas utiliser notre contenu sur d'autres sites web. Nous avons investi beaucoup d'efforts et de temps pour créer ce contenu, veuillez respecter notre travail !