Arduino Mega - Contrôle de pompe

Dans ce guide, nous allons montrer comment connecter une pompe 12 volts à un Arduino Mega et comment écrire du code pour contrôler la pompe. Ce tutoriel peut vous aider à construire des systèmes simples comme l'arrosage de plantes, des aquariums, ou des stations de remplissage d'eau.

La pompe peut être pilotée par un relais ou par un module MOSFET. Avec le relais, la pompe tourne ou elle est arrêtée. Avec le module MOSFET, l'Arduino Mega peut aussi changer la vitesse de la pompe, donc vous pouvez régler la quantité d'eau qui coule. Le module MOSFET est aussi silencieux. Vous apprendrez les deux méthodes ici.

Arduino Mega pompe

Matériel requis

1×Arduino MEGA
1×Alternativement: DIYables MEGA Development Board
1×Câble USB 2.0 type A/B
1×Relay (relais)
1×Alternativement: MOSFET Module (AOD4184, LR7843 or FR120N)
1×Pompe 12V
1×Tube en vinyle
1×Adaptateur secteur 12V
1×Prise d'alimentation DC
1×Fils de connexion
1×Recommandé: Screw Terminal Block Shield for Arduino Uno/Mega
1×Recommandé: Sensors/Servo Expansion Shield for Arduino Mega
1×Recommandé: Breadboard Shield for Arduino Mega
1×Recommandé: Enclosure for Arduino Mega

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

Brochage

Brochage pompe Arduino Mega
image source: diyables.io

Une pompe 12 volts a généralement deux broches.

  • Connectez le fil noir (négatif, -) à la masse de l'alimentation.
  • Connectez le fil rouge (positif, +) au 12V de l'alimentation.

Comment contrôler la pompe

Utiliser une alimentation 12V pour une pompe 12V la fera fonctionner. Pour contrôler la pompe avec un Arduino Mega, placez un relais entre l'Arduino Mega et la pompe. L'Arduino Mega peut contrôler la pompe via le relais. Si vous ne connaissez pas les relais (broches, fonctionnement, programmation, etc.), apprenez avec le Arduino Mega - Relais.

Une autre façon est de placer un module MOSFET entre l'Arduino Mega et la pompe. Pour comprendre d'abord ce module, lisez Arduino Mega - Module MOSFET.

Contrôle de la pompe : relais ou module MOSFET

Relais Module MOSFET
Contrôle marche ou arrêt marche ou arrêt, plus la vitesse de la pompe et le débit d'eau (PWM)
Son fait un clic silencieux
Vitesse de commutation lente, en millisecondes très rapide
Durée de vie les contacts s'usent avec le temps aucun contact mobile
Type de pompe pompe CA ou CC pompe CC uniquement
Tension d'alimentation de la pompe toute valeur dans la limite du relais au moins environ 6V
Isolation électrique oui, entre la bobine et les contacts oui, par un optocoupleur PC817
Convient pour les pompes CA et les tâches simples de marche/arrêt les pompes CC avec contrôle du débit ou commutation fréquente

Si votre projet a besoin d'un débit doux, comme un arrosage lent pour de petites plantes, choisissez le module MOSFET pour la pompe 12V. Si la pompe fonctionne sur le secteur CA, choisissez le relais.

Schéma de câblage

Schéma de câblage Arduino Mega pompe

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

Code Arduino Mega

Le code ci-dessous allume continuellement la pompe pendant cinq secondes, puis l'éteint pendant cinq secondes.

/* * Ce code Arduino Mega a été développé par newbiely.fr * Ce code Arduino Mega 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/arduino-mega/arduino-mega-controls-pump */ // constants won't change const int RELAY_PIN = 3; // the Arduino pin, which connects to the IN pin of relay // the setup function runs once when you press reset or power the board void setup() { // initialize digital pin D3 as an output. pinMode(RELAY_PIN, OUTPUT); } // the loop function runs over and over again forever void loop() { digitalWrite(RELAY_PIN, HIGH); // turn on pump 5 seconds delay(5000); digitalWrite(RELAY_PIN, LOW); // turn off pump 5 seconds delay(5000); }

Étapes rapides

Suivez ces étapes une par une.

  • Connectez la pompe à l'Arduino Mega en utilisant un relais, comme indiqué dans le schéma.
  • Connectez l'Arduino Mega à votre ordinateur avec un câble USB.
  • Ouvrez l'IDE Arduino sur votre ordinateur.
  • Sélectionnez la bonne carte (Arduino Mega) et le bon port COM.
  • Copiez et collez le code fourni dans l'IDE Arduino.
  • Cliquez sur le bouton Upload dans l'IDE Arduino pour télécharger le code vers l'Arduino Mega.
  • Vérifiez le statut de la pompe.

Explication du code

L'explication se trouve dans les commentaires du code Arduino ci-dessus.

Comment contrôler la pompe avec un module MOSFET

Maintenant, pilotons la même pompe 12V avec un module MOSFET, pour que l'Arduino Mega puisse changer le débit d'eau.

Schéma de câblage

Schéma de câblage Arduino Mega, pompe et module MOSFET

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

Arduino Mega / Côté alimentation Module MOSFET
Broche 2 broche PWM
GND broche GND
Adaptateur 12V + et fil rouge de la pompe (+) borne + (les deux fils ensemble)
Fil noir de la pompe (−) borne LOAD
Adaptateur 12V − borne −

Le moteur de la pompe produit un pic de tension quand il s'arrête. Protégez le module avec une diode de roue libre (flyback) (1N4007 ou 1N5819) aux bornes de la pompe : la bande (cathode) va au fil + de la pompe, l'autre extrémité au fil − de la pompe.

Code Arduino Mega

La pompe tourne à pleine puissance pendant 2 secondes, puis s'arrête pendant 2 secondes. Ensuite, la puissance monte de 10% à 100% puis redescend, donc le débit d'eau devient plus fort puis plus faible.

/* * Ce code Arduino Mega a été développé par newbiely.fr * Ce code Arduino Mega 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/arduino-mega/arduino-mega-controls-pump */ const int MOSFET_PIN = 2; // Arduino Mega pin 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); }

Étapes rapides

  • Placez l'entrée de la pompe dans l'eau, et connectez les composants comme dans le schéma de câblage ci-dessus. Laissez l'adaptateur 12V débranché.
  • Suivez les Étapes rapides du relais ci-dessus pour connecter la carte et choisir la carte et le port COM.
  • Collez le code dans l'Arduino IDE et cliquez sur Téléverser.
  • Branchez l'adaptateur 12V.
  • Ouvrez le Moniteur Série avec une vitesse de 9600 bauds, et regardez le débit d'eau changer.
∞
Newbiely | Arduino IDE 2.3.8
──
☐
✕
File
Edit
Sketch
Tools
Help
Arduino Mega Or...
Newbiely.ino
···
8 Serial.println("Hello World!");
Output
Serial Monitor
Message (Enter to send message to 'Arduino Mega Or...' 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
Arduino Mega Or... on COM15
2

Note : un module MOSFET est uniquement pour les pompes CC, avec une alimentation d'environ 6V ou plus. Gardez le relais pour les pompes CA.

Vidéo

Défiez-vous

  • Créez un système d'arrosage automatique avec Arduino Mega, un capteur d'humidité du sol, et une pompe.
  • Créez un système automatique de remplissage d'eau avec Arduino Mega, un capteur de niveau d'eau, et une pompe.

※ 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 !