Relais Modul ganz einfach mit Arduino ansteuern - kollino.de (2024)

Relais Modul mit Arduino ansteuern

Kategorien: Arduino

Relais Modul ganz einfach mit Arduino ansteuern - kollino.de (1)Ein Relais ist im Bereich Hausautomation, dem Internet of Things, eines der wichtigsten Elemente.
Es ist ein elektronisch angesteuerte Schalter, der einen viel größeren Strom fließen lassen kann, als es technisch von einem Mikrocontroller aus möglich wäre.

Ausdrucken

Wollen wir beispielsweise eine Schreibtischlampe über einen Arduino ein- oder ausschalten, so schalten wir mit einem kleinen Steuerstrom das Relais, welches dann den Stromkreis der Schreibtischlampe schaltet.

Wie auch ein Optokoppler, ist es ein Bauteil, welches unterschiedliche Stromkreise galvanisch voneinander trennen kann.

Eine galvanische Trennung ist sehr wichtig, wenn man Geräte in einem Stromkreis ansteuern möchte, dessen Stromspannung sehr hoch ist.
In erster Linie für das eigene Leben, denn ab 50V Wechselspannung (AC) oder 120 V Gleichspannung (DC) kann es für einen erwachsenen Menschen lebensgefährlich werden. (Bei Kindern gilt jeweils der halbe Wert.)

Außerdem sind natürlich auch die restlichen Bauteile nicht für so hohe Spannungen ausgelegt und würden sofort zerstört werden.

Um ein Relais anzusteuern braucht es nicht viel. Wir brauchen lediglich einen Transistor, zwei Widerstände und eine Diode.
Damit bauen wir eine Transistorschaltung auf, um den Schaltstrom des Mikrocontrollers so weit zu verstärken, dass dieser kräftig genug ist, es sauber schalten zu können.

Die Diode wird als Schutz-, oder auch Freilaufdiode genannt, eingesetzt.
Sie schützt die Schaltkontakte und die elektronischen Bauteile, insbesondere den Transistor vor einer möglichen Überspannungsspitze beim Abschalten des Relais.

An dieser Stelle gehe ich nicht weiter darauf ein, warum das so ist. Wer es aber detailliert wissen möchte, der sollte unter dem Stichwort Freilaufdiode und elektromagnetischer Induktion nachlesen.

Es gibt für den Arduino und den Raspberry Pi schon fertige Boards, auf denen so ein Relais auf einfachste Weise angesteuert werden kann.
Und, je nach Umfang, gibt es diese auch mit bis zu 16 Stück pro Karte.

Die hier verwendete 1 Kanal Relaiskarte 5V/230V könnt Ihr günstig über unseren Shop beziehen.

1 Kanal Relaiskarte 5V/230V

Unsere hier benutzte Karte hat ein Relais verbaut und veranschaulicht so gut den elektronischen Aufbau.

Bild anklicken zum Vergrößern

Wir sehen hier auf der linken Seite den Ausgang – also der Stromkreis, der vom Controller aus angesteuert werden soll, mittig das blaue Relais und auf der rechten Seite sehen wir von Oben nach Unten drei Widerstände, einen Transistor und eine Diode, so wie eine rote und eine grüne LED und die drei Anschlüsse, die an den Mikrocontroller angeschlossen werden.

Ohne die LEDs würden noch zwei Vorwiderstände wegfallen und übrig bleibt der Transistor, ein Widerstand und die Freilaufdiode zur Ansteuerung des Relais.

Auf dem Relais ist aufgedruckt, welche Lasten es maximal schalten kann.
Wir können damit also maximal 10 A unter 250 VAC (Wechselspannung) oder 30 VDC (Gleichspannung) schalten.

Bild anklicken zum Vergrößern

Auf der Unterseite sehr schön zu erkennen ist, dass hier die Sicherheitsabstände so weit stimmen.

Auf der rechten Seite ist der Ausgang. Da hier ja bis zu 10 A fließen können, müssen die Leiterbahnen entsprechend dick sein um nicht durch Überlast zu schmelzen.
Da der mittlere Kontakt – dieser schaltet ja das Relais – in den Niedervoltbereich reicht, wurde dieser Bereich mittels Ausfräsen der Platine geschützt, damit im schlimmsten Falle die hohe Spannung nicht überspringen kann.
Dies macht man meist um entweder die Sicherheit zu erhöhen, oder wenn der Sicherheitsabstand zwischen den unterschiedlichen Stromkreisleiterbahnen nicht eingehalten werden kann.

Achtet gut darauf, wenn Ihr billige Karten kauft, denn sonst spielt Ihr mit Eurem Leben.

Mit dem Arduino verbinden

An den Kontakten auf der rechten Seite zwischen den beiden LEDs verbinden wir den GND-Anschluss mit dem GND-Anschluss des Arduinos, um einen gemeinsamen Massepunkt zu erzeugen.

Den VCC-Anschluss verbinden wir mit dem 5V-Ausgangspin des Arduinos, um die Schaltung dauerhaft mit Spannung zu versorgen.

Je nachdem, welches Relais auf Eurer Karte verbaut ist, kann es sein, dass es schaltet, wenn an dem Anschlusspin “IN” GND anliegt, oder wenn auf dem Pin “+5V” anliegt.

Um herauszubekommen, ob Ihr später das Relais mit “LOW” (GND), oder mit “HIGH” schalten könnt, verbindet den Pin “IN” zuerst mit dem “GND” am Arduino, dann an “+5V”.

Zum Vergrößern Bild anklicken

So sieht der Testaufbau aus. Das gelbe “IN”-Kabel können wir bequem in die +5V-Schiene, oder in die GND-Schiene stecken.

Zum Vergrößern Bild anklicken

An “Pin 1” und “Pin 2” schließen wir ein Multimeter an und stellen es auf “V” um die Spannung zu messen.
Das gelbe “IN”-Kabel steckt in “+5V”. Es schaltet nicht, die grüne Kontroll-LED bleibt aus und das Multimeter bleibt auch auf 0.

Zum Vergrößern Bild anklicken

Wir haben das “IN”-Kabel jetzt mit der Masse (GND) verbunden. Es zieht hörbar mit einem Klicken an, die grüne Kontroll-LED leuchtet auf und der Wert auf dem Display des Multimeters steigt langsam an. Die beiden Kontakte sind also geschlossen.

Funktionsweise

Zum Vergrößern Bild anklicken

Im nicht geschalteten Zustand sind die untere und die mittlere der drei linken Schrauben miteinander verbunden (siehe Foto).
Sobald aber ein Signal anliegt und das Relais durchgeschaltet ist, werden die obere und die mittlere Schraube verbunden.

Auf der Rückseite der Relaiskarte ist dies auch wunderschön mit dem Schaltsymbol des Relais abgebildet:

Zum Vergrößern Bild anklicken

Nicht geschaltet sind hier der mittlere und der untere Pin, geschaltet würde die Mitte nach Oben springen und somit wäre die Mitte und Oben geschaltet.

Es handelt sich hierbei um ein so genanntes Wechsler-Relais.
Es ist eigentlich genau das gleiche wie ein normales Schließer-Relais, wenn man einen der beiden Kontakte (unterer, oder oberer) sowieso nicht nutzen würde.
Aber so ist es möglich, beispielsweise einen Stromkreis zu unterbrechen und einen anderen gleichzeitig einzuschalten.

Mit einem einzigen Schließer-Relais ist das nicht machbar.

Lampe einschalten

Wollen wir nun beispielsweise eine Lampe, die dauerhaft Aus ist, einschalten, so müssen wir die Lampe an einer Leitung unterbrechen und das Relais-Modul mit dem unteren und dem mittleren Pin verbinden.

Somit ist gewährleistet, dass kein Strom fließt, so lange Ihr nicht via Mikrocontroller einen Steuerimpuls an das Relais-Modul sendet und dieses schaltet.

Soll es schalten, so zieht das Relais magnetisch an und dadurch wird der obere Pin und der mittlere Pin verbunden und der Strom kann durch das Relais fließen und schließt damit den zweiten Stromkreis und die Lampe geht an.

Machen wir einen Testaufbau:

zum Vergrößern Bild anklicken

Eine LED, einen Vorwiderstand (470 Ohm) und eine 9V-Blockbatterie simuliert unsere Tischlampe.

Jetzt müssen wir es in diesen Stromkreis einbauen, damit wir die LED mit unserem Mikrocontroller ein- und ausschalten können.

zum Vergrößern Bild anklicken

Wir unterbrechen den Stromkreis an einer Stelle und verbinden ihn mit den beiden oberen Anschlüssen unseres Relais.

zum Vergrößern Bild anklicken

Nehmen wir jetzt den gelben Draht der mit dem “In”-Pin verbunden ist und stecken diesen testweise in die GND-Schiene, so schaltet das Relais (die grüne Kontroll-LED auf der Platine geht an).
Der zweite Stromkreis der LED mit der Batterie ist jetzt geschlossen und der Strom kann fließen. Die “Lampe” leuchtet.

Lampe aussschalten

Wollen wir beispielsweise den umgekehrten Weg gehen und eine Lampe oder etwas anderes ausschalten, was dauerhaft eingeschaltet ist, so können wir das mit unserem Relais auch machen, da es ja ein Wechsler-Relais ist.

zum Vergrößern Bild anklicken

Wir müssen dazu den aufgetrennten Stromkreis unserer Lampe wieder mit dem Relais verbinden, diesmal nehmen wir aber die beiden unteren Anschlüsse unseres Relais, da diese ja miteinander verbunden sind, wenn das Relais stromlos ist.

Die grüne LED leuchtet weiterhin, auch wenn Ihr den Strom von Eurem Arduino unterbrecht.

zum Vergrößern Bild anklicken

Wenn wir jetzt wieder den gelben Draht nehmen, der am “IN”-Pin hängt mit der GND-Schiene verbinden, so schaltet es. Die grüne Kontroll-LED auf der Platine leuchtet, und unsere beiden Pins des Relais, das mit der “Lampe” verbunden ist, wird stromlos geschaltet.

Unsere “Lampe” erlischt.

Mit dem Arduino verbinden

Jetzt verbinden wir unser Relais mit dem Arduino. Das ist nun ein Kinderspiel, da wir ja bereits alles verbunden haben.
Lediglich der gelbe Draht des “IN”-Pins, den wir zum testen unseres Relais genutzt hatten (wir waren quasi selbst der Mikrocontroller in den beiden Tests), stecken wir nun auf Pin 8 auf unseren Arduino.

Jetzt brauchen wir nur noch ein Programm, was sozusagen unsere Hand von eben simuliert und das gelbe Kabel entweder mit GND, oder mit +5V verbindet.

Dazu gibt es den Befehl “LOW” der “GND” darstellt und “HIGH”, der “+5V” darstellt.
Damit können wir in unserem Programm das Relais ein- oder ausschalten.

Dieser kleine Arduino-Sketch schaltet das Relais abwechselnd ein und wieder aus. Dazwischen macht es mittels des Delay-Befehls immer eine Sekunde Pause (1 s = 1000 ms).
In der setup()-Funktion teilen wir dem Controller mit, dass der Pin 8, an dem ja das gelbe Kabel des IN-Pins verbunden ist, ein Ausgang ist. Das heißt, der Controller weiß dann, dass er ein LOW- oder ein HIGH-Signal zum Pin 8 schicken muss.

Ansteuern eines Relais (1 Kanal Relaiskarte 5V/230V)

Arduino

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

/*

*www.kollino.de

*Ansteuern eines Relais (1 Kanal Relaiskarte 5V/230V)

*/

int PINOUT = 8; // Pin 8 am Arduino festlegen

void setup() {

pinMode(PINOUT, OUTPUT); // Initialisieren des Ausgangs

}

void loop() {

digitalWrite(PINOUT, HIGH);// Schaltet ein

delay(1000);

digitalWrite(PINOUT, LOW); // Schaltet aus

delay(1000);

}

zum Vergrößern Bild anklicken

In dem kurzen Video könnt Ihr sehen, dass die ausgeschaltete LED erst einschaltet, wenn das Relais eingeschaltet (Mikrocontroller sendet ein HIGH) wird. Dieses erkennt man, an der grünen Kontroll-LED auf dem Board.
Beide blinken synchron.

In diesem Video haben wir den Pin des Relais-Moduls getauscht, so dass die LED von Beginn an leuchtet, also eingeschaltet ist, auch wenn das Relais ausgeschaltet ist (Mikrocontroller sendet ein LOW, oder es ist gar kein Strom vorhanden).
Im ausgeschalteten Zustand ist ja dieser untere Pin mit dem mittleren kontaktiert.

Somit geht die LED aus, wenn das Relais anzieht (also ein HIGH-Signal vom Mikrocontroller erhält) und ausgeht, sobald es wieder stromlos ist.
Schön auch zu erkennen an der grünen Kontroll-LED die nun immer dann leuchtet, wenn die “Lampe” linksseitig ausgeschaltet wird.

Abschließend kann man sich nun überlegen, wie man ein Relais auf andere Arten schalten möchte. So ist es beispielsweise möglich, über einen Tastenbefehl am Computer via serieller Schnittstelle ein Relais einzuschalten und über einen anderen Tastenbefehl dieses wieder auszuschalten.

Ein weiterer Schritt wäre, dieses vielleicht drahtlos über eine gewisse Distanz zu machen. Beispielsweise via Bluetooth, WLAN, oder Funkwellen.

Und/oder wir schalten unser Relais nach einer gewissen Uhrzeit ein, oder aus.

Es gibt so viele Möglichkeiten. Viel Spaß beim herumexperimentieren 🙂

Relais Modul ganz einfach mit Arduino ansteuern - kollino.de (2024)

References

Top Articles
Latest Posts
Article information

Author: Maia Crooks Jr

Last Updated:

Views: 5703

Rating: 4.2 / 5 (63 voted)

Reviews: 94% of readers found this page helpful

Author information

Name: Maia Crooks Jr

Birthday: 1997-09-21

Address: 93119 Joseph Street, Peggyfurt, NC 11582

Phone: +2983088926881

Job: Principal Design Liaison

Hobby: Web surfing, Skiing, role-playing games, Sketching, Polo, Sewing, Genealogy

Introduction: My name is Maia Crooks Jr, I am a homely, joyous, shiny, successful, hilarious, thoughtful, joyous person who loves writing and wants to share my knowledge and understanding with you.