Raspberry Pi Pico: Relais steuern (mit ULN2003A)
Ein Relais ist immer dann notwendig, wenn Steuerstromkreis und Laststromkreis voneinander getrennt werden müssen. Beispielsweise arbeitet der Steuerstromkreis mit Gleichstrom bzw. Gleichspannung und der Laststromkreis mit Wechselstrom und Wechselspannung. Beide Stromkreise müssen voneinander getrennt werden. Das ist mit einem Relais möglich.
Um ein Relais mit dem Raspberry Pi Pico anzusteuern braucht es nicht viel: Ein Transistor, zwei Widerstände und eine Diode. Welche genau das sind, hängt vom Relais ab. Man muss diese Bauteile in Abhängigkeit des Relais dimensionieren. Man kann aber zum Beispiel auch ein fertig dimensioniertes Transistor-Array verwenden. Zum Beispiel das IC ULN2003A.
Das IC ULN2003A arbeitet ausgangsseitig mit einer Gleichspannung bis 50 Volt und kann einen Strom bis 0,5 Ampere (500 mA) schalten. Das dürfte für viele Relais ausreichen.
Das Relais braucht eine eigene Stromversorgung. Das ist in der Regel ein Netzteil mit einer Ausgangsspannung, die zu Spannungsart und Eingangsspannung des Relais passen muss.
Aufbau und Bauteile
- Ein ULN2003A schaltet gegen GND.
- Wenn Du kein Relais hast, dann verwende eine LED mit Vorwiderstand, die vom ULN2003A gegen 3,3 oder 5 Volt geschaltet ist.
- In der Regel muss der GND des Picos mit dem GND des ULN2003A und der Stromversorgung des Relais verbunden sein.
Schnell und einfach alle Bauteile zusammen bestellen
Programmcode
Der Programmcode ist keine vollständige Anwendung, sondern soll verdeutlichen, wie ein Relais gesteuert werden kann. Außerdem kann man auf diese Weise die Beschaltung testen.
Der Programmcode funktioniert vergleichsweise einfach. Der GPIO wird mit der Funktion „on“ auf „High“ gesetzt und das Relais zieht an. In diesem Zustand bleibt das Relais für 3 Sekunden. Danach wird der GPIO mit der Funktion „off“ auf „Low“ gesetzt und das Relais wird gelöst. Danach wird das Programm beendet.
# Bibliotheken laden from machine import Pin from time import sleep # Initialisierung von GPIO14 als Ausgang device = Pin(14, Pin.OUT, value=0) # LED einschalten print('EIN') device.on() # 3 Sekunden warten print('.') sleep(1) print('.') sleep(1) print('.') sleep(1) # LED ausschalten print('AUS') device.off()
Weitere verwandte Themen:
- Raspberry Pi Pico: Relais-Board steuern (ohne ULN2003A)
- Raspberry Pi Pico: Relais-Board steuern (mit ULN2003A)
- Raspberry Pi Pico: Relais steuern (mit Transistor)
- Raspberry Pi Pico: 12-Volt-Lüfter steuern (mit ULN2003A)
- Raspberry Pi Pico: DC-Motor steuern (mit ULN2003A)
Teilen:
Hardware-nahes Programmieren mit dem Raspberry Pi Pico und MicroPython
Das Elektronik-Set Pico Edition ist ein Bauteile-Sortiment mit Anleitung zum Experimentieren und Programmieren mit MicroPython.
- LED: Einschalten, ausschalten, blinken und Helligkeit steuern
- Taster: Entprellen und Zustände anzeigen
- LED mit Taster einschalten und ausschalten
- Ampel- und Lauflicht-Steuerung
- Elektronischer Würfel
- Eigene Steuerungen programmieren
Online-Workshop: Programmieren mit dem Raspberry Pi Pico
Gemeinsam mit anderen und unter Anleitung experimentieren? Wir bieten unterschiedliche Online-Workshops zum Raspberry Pi Pico und MicroPython an. Einführung in die Programmierung, Sensoren programmieren und kalibrieren, sowie Internet of Things und Smart Home über WLAN und MQTT.
Für Ihre Fragen zu unseren Online-Workshops mit dem Raspberry Pi Pico besuchen Sie unseren PicoTalk (Online-Meeting). (Headset empfohlen)