Raspberry Pi Pico - Contrôle de la pompe

Dans ce guide, vous apprendrez comment connecter une pompe de 12 V à un Raspberry Pi Pico et comment programmer le Raspberry Pi Pico pour contrôler la pompe. 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 commander la pompe avec un relais ou avec un module MOSFET. Un relais ne fait que mettre la pompe en marche (ON) ou l'arrêter (OFF). Un module MOSFET le fait aussi, mais il peut en plus changer la vitesse de la pompe, et donc le débit d'eau, avec le PWM. Il ne fait pas de clic non plus. Dans ce tutoriel, nous allons apprendre à utiliser les deux.

pompe Raspberry Pi Pico

Préparation du matériel

1×Raspberry Pi Pico W
1×Raspberry Pi Pico Alternativement:
1×Câble Micro USB
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 Raspberry Pi Pico

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 12 V

Schéma des broches

Pinout de la pompe du Raspberry Pi Pico
image source: diyables.io

Une pompe de 12 V possède généralement deux broches.

  • Connectez la broche négative (-) (noire) à la masse (GND) de l'alimentation en courant continu.
  • Connectez la broche positive (+) (rouge) à la sortie 12 V de l'alimentation en courant continu.

Comment contrôler la pompe

Une alimentation 12 V convient pour une pompe 12 V. Pour contrôler la pompe avec un Raspberry Pi Pico, utilisez un relais entre les deux. Le Raspberry Pi Pico contrôle la pompe via le relais. Si vous ne savez pas comment fonctionnent les relais (y compris leur brochage, leur mode de fonctionnement et la façon de les programmer), vous devriez en apprendre davantage dans le Raspberry Pi Pico - Relais..

Le module MOSFET est expliqué pas à pas dans le tutoriel Raspberry Pi Pico - Module MOSFET, si vous ne l'avez jamais utilisé.

Relais ou module MOSFET pour une pompe

Relais Module MOSFET
Contrôle pompe ON ou OFF pompe ON ou OFF, plus le débit (vitesse) avec le PWM
Bruit un clic à chaque commutation silencieux
Commutation lente, en millisecondes très rapide
Durée de vie les contacts métalliques s'usent avec le temps aucune pièce mobile
Type de pompe pompes AC ou DC pompes DC uniquement
Tension d'alimentation n'importe laquelle, selon la valeur prévue au moins environ 6 V
Isolation oui, bobine et contacts oui, optocoupleur PC817
Idéal pour les pompes AC, le simple ON/OFF les pompes DC 12 V, un débit doux ou réglable

Avec une pompe DC 12 V, le module MOSFET vous permet de donner aux plantes un débit doux et lent au lieu d'un jet à pleine force. Si votre pompe fonctionne en AC, c'est le relais qu'il faut utiliser.

Diagramme de câblage

Schéma de câblage de la pompe Raspberry Pi Pico

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

Code pour Raspberry Pi Pico

Le code ci-dessous allume la pompe pendant cinq secondes et l'éteint pendant cinq cycles.

/* * Ce code Raspberry Pi Pico a été développé par newbiely.fr * Ce code Raspberry Pi Pico 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/raspberry-pico/raspberry-pi-pico-controls-pump */ from machine import Pin import time RELAY_PIN = 1 # The Raspberry Pi Pico pin GP1 connected to the pump via relay pin # Initialize the relay pin as an output relay = Pin(RELAY_PIN, Pin.OUT) # Infinite loop while True: relay.value(1) # Turn on pump for 5 seconds time.sleep(5) relay.value(0) # Turn off pump for 5 seconds time.sleep(5)

Étapes rapides

Veuillez suivre ces instructions étape par étape :

  • Assurez-vous que l'IDE Thonny est installé sur votre ordinateur.
  • Assurez-vous que le firmware MicroPython est installé sur votre Raspberry Pi Pico.
  • Si c’est votre première utilisation d’un Raspberry Pico, reportez-vous au tutoriel Raspberry Pi Pico - Premiers pas. pour des instructions détaillées.
  • Connectez le Raspberry Pi Pico à la pompe 12V selon le schéma fourni.
  • Connectez le Raspberry Pi Pico à votre ordinateur à l'aide d'un câble USB.
  • Lancez l'IDE Thonny sur votre ordinateur.
  • Sur l'IDE Thonny, sélectionnez l'Interpréteur MicroPython (Raspberry Pi Pico) en naviguant vers Outils Options.
  • Dans l'onglet Interpréteur, sélectionnez MicroPython (Raspberry Pi Pico) dans le menu déroulant.
  • Assurez-vous que le bon port est sélectionné. Thonny IDE devrait détecter automatiquement le port, mais vous devrez peut-être le sélectionner manuellement (par exemple, COM3 sur Windows ou /dev/ttyACM0 sur Linux).
  • Copiez le code ci-dessus et collez-le dans l'éditeur de l'IDE Thonny.
  • Enregistrez le script sur votre Raspberry Pi Pico en:
    • Cliquez sur le bouton Enregistrer, ou utilisez les touches Ctrl+S.
    • Dans la boîte de dialogue d'enregistrement, vous verrez deux sections: Cet ordinateur et Raspberry Pi Pico. Sélectionnez Raspberry Pi Pico
    • Enregistrez le fichier sous main.py
  • Cliquez sur le bouton vert Exécuter (ou appuyez sur F5) pour lancer le script. Le script s'exécutera.
  • Vérifiez que la pompe fonctionne correctement.

Si vous nommez votre script main.py et le sauvegardez dans le répertoire racine du Raspberry Pi Pico, il s'exécutera automatiquement à chaque mise sous tension ou réinitialisation du Pico. Cela est utile pour les applications autonomes qui doivent démarrer immédiatement au démarrage. Si vous nommez votre script sous un autre nom que main.py, vous devrez l'exécuter manuellement depuis le Shell de Thonnys.

Explication du code

Les commentaires dans le code Raspberry Pi Pico ci-dessus expliquent tout.

Code du Raspberry Pi Pico - Contrôler la pompe avec un module MOSFET

Remplaçons maintenant le relais par un module MOSFET. Le Pico change la vitesse de la pompe en envoyant du PWM sur GP18.

Diagramme de câblage

Schéma de câblage de la pompe à eau Raspberry Pi Pico avec module MOSFET

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

  • GP18 du Pico va à PWM sur le module, et une broche GND du Pico va à GND sur le module.
  • L'adaptateur 12 V : fil positif à +, fil négatif à −.
  • La pompe : fil rouge (+) aussi à +, fil noir (−) à LOAD.
  • La pompe a une bobine, placez donc une diode 1N4007 ou 1N5819 entre les fils de la pompe, avec la bande (cathode) du côté + de la pompe.

Le code

/* * Ce code Raspberry Pi Pico a été développé par newbiely.fr * Ce code Raspberry Pi Pico 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/raspberry-pico/raspberry-pi-pico-controls-pump */ from machine import Pin, PWM import time MOSFET_PIN = 18 # Pico GP18 connected to the PWM pin of the MOSFET module pwm = PWM(Pin(MOSFET_PIN), freq=500) # 500 Hz PWM, slow enough for the module's optocoupler pwm.duty_u16(0) # start with the load OFF def set_load(percent): pwm.duty_u16(percent * 65535 // 100) # convert 0-100% to 0-65535 print("Load power: {}%".format(percent)) while True: # turn the load fully ON, then fully OFF print("Load: ON") set_load(100) time.sleep(2) print("Load: OFF") set_load(0) time.sleep(2) # increase the power step by step (PWM) for percent in range(10, 101, 10): set_load(percent) time.sleep(0.5) # decrease the power step by step (PWM) for percent in range(90, -1, -10): set_load(percent) time.sleep(0.5) time.sleep(1)

La pompe fonctionne à pleine puissance pendant 2 secondes, puis s'arrête pendant 2 secondes. Ensuite, la puissance monte de 10 % à 100 % et redescend à 0 %. Vous verrez le débit d'eau devenir plus fort, puis plus faible.

Étapes rapides

  • Configurez Thonny et MicroPython comme décrit dans les Étapes rapides du relais.
  • Mettez la pompe dans l'eau et câblez-la avec le module MOSFET comme sur le diagramme. Ne branchez pas encore l'adaptateur 12 V.
  • Copiez le code dans Thonny et enregistrez-le sur le Raspberry Pi Pico sous le nom main.py.
  • Branchez l'adaptateur 12 V et appuyez sur le bouton vert Run.
  • Observez le débit d'eau et lisez la sortie du Shell.
Shell x
>>> %Run -c $EDITOR_CONTENT
MPY: soft reboot 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%
MicroPython (Raspberry Pi Pico) • Board CDC @ COM29 ≡

Astuce : le module MOSFET est réservé aux charges DC et demande une alimentation d'environ 6 V ou plus. Une pompe AC a toujours besoin du relais. De plus, ne faites pas tourner la pompe à sec.

Vidéo

Mets-toi au défi

  • Fabriquez un système d'auto-arrosage utilisant le Raspberry Pi Pico, un capteur d'humidité du sol et une pompe.
  • Mettez en place un système de remplissage automatique avec le Raspberry Pi Pico, 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 !