Für die direkte Schaltung von Relais mit den GPIOs liefert der Raspberry Pi einfach zu wenig Strom. Mit einer einfachen Transistorstufe können wir dieses Problem beheben und ohne weiteres alle freien GPIOs zum Schalten benutzen. Das wären allein auf der Hauptsteckleiste 17 Relais. Mit den verwendbaren Sensoren und Schnittstellen wie I²C, SPI oder 1wire ergeben sich vielfältige Möglichkeiten des Steuerns und Regelns.


Schaltungsaufbau

Um mit möglichst kleinem Eingangsstrom relativ große Leistungen Schalten zu können, greifen wir auf eine klassische Schaltstufe mit einem Transistor zurück. Mit ein paar wenigen Bauteilen können wir diese realisieren. Ein Standardtransistor reicht völlig aus, um ein Relais zu schalten. Sehen wir uns den Schaltplan dazu an:

Schaltplan Transistorstufe

Dem Schaltplan sind Auszüge aus den Datenblättern der verwendeten Teile beigefügt, so dass sich ein Aufbau recht unproblematisch gestaltet. 2 LEDs nutzen wir, um die Funktion des Umschalters anzuzeigen. Ein Relais kann dann bei der Umsetzung in einer richtigen Anwendung natürlich bedeutend größere Lasten schalten.

Ich rate an dieser Stelle ausdrücklich davon ab, als Laie zum Testen Spannungen über 42 Volt zu benutzen, da alles was darüber liegt ernsthafte gesundheitliche Schäden hervorrufen kann!

Ein wichtiges Teil ist auch die Diode D1. Sie sorgt dafür, dass die durch die Spule des Relais erzeugten Induktionsströme abgeleitet werden und die Schaltung nicht beschädigt oder in undefinierte Zustände versetzt.

Setzen wir nun die Schaltung auf der Steckplatine um:

Steckplan Relaisschaltung

Um die Schaltung nun zu testen, kann man jede Möglichkeit nutzen die es erlaubt, die GPIOs zu steuern. Z.B. über die virtuellen Verzeichnisse, wiringPi oder die GPIO Python Library


Ansteuerung mit wiringPi

Ist wiringPi noch nicht installiert, können wir das nach dieser Anleitung nachholen.

Hier müssen wir jetzt etwas umdenken, da bei wiringPi der Pin 10 die Nummer 15 hat, beim Raspberry Pi aber mit GPIO15 bezeichnet wird. (Danke für den Kommentar zu dieser Anleitung) Nun können wir mit folgendem Kommandos das Relais aus dem Teminal heraus schalten:

gpio mode 16 out

gpio write 16 1

gpio write 16 0

Das Relais sollte nun schön vor sich hinklackern und die LEDs je nach Kontaktstellung leuchten. Das folgende Video verdeutlicht die Funktion:

{youtube}M1aHbuEbquQ{/youtube}

Mit der Kamera muss ich mir wohl noch was einfallen lassen.

wird fortgesetzt ...