2 Kanal Relais mittels Arduino Nano schalten

Hallo ein Freund ist dabei einen Monitor lift mittels Arduino und Rolladenmotor zu bauen wie in diesem Video klick.

Ich versuche jetzt die Verkabelung etc. zu bewerkstelligen da so gut wie keine Dokumentation vorhanden ist.

Ich verwende einen Arduino Nano V3 sowie dieses Relais klick also die gleichen Sachen wie im Video.

Das Programm soll in etwas so funktionieren:
Am Anfang gucken in welchen Position sich der Monitor befindet (welcher der beiden Endschalter gedrückt ist) und dann wenn der Schalter betätigt wird einen Relais Ausgang schalten bis der andere Endschalter betätigt wird. Wenn der Schalter wieder betätigt wird soll wieder den anderen Relais Ausgang schalten bis die Endposition erreicht ist.

Leider funktioniert das ganze nicht so wie es soll und macht teilweise extrem komische Dinge manchmal wenn ich mit meinem Finger in die Nähe der Kabel komme schaltet er einfach die Relais etc. (aber kein Kabelbruch oder Wackelkontakt hab ich so noch nie erlebt).

Wenn ich den den Arduino am PC anschließe funktioniert das Programm zumindest teilweise wenn ich allerdings kurz warte passieren wieder komische Dinge und generell kriege ich es nicht wirklich hin Fehler konkret zu reproduzieren oder einzuordnen.

Wenn ich den Arduino nur am Strom anschließe z.B über Steckdose Schalten die Ausgänge für das Relais in einer Endlosschleife die ganze Zeit hin und her also gar nichts funktioniert.

An den Ausgängen des Relais hab ich bisher noch nichts angeschlossen solange es noch nicht läuft.

So hab ich mir die Verkabelung überlegt (Der Fehler muss ja eigentlich irgendwo hier liegen):

Das ist der Programmcode welcher auch im Video verwendet wurde:

//You need to download the JLed library! / JLED Library muss insatlliert sein!
#include <jled.h>
String LiftStatus;
auto ledSchalter = JLed(11).Breathe(4000).Forever().DelayAfter(0);
auto ledSchalterFast = JLed(11).Breathe(1000).Forever().DelayAfter(0);
void setup() {
 pinMode(7, INPUT); // Endschalter oben / Limitswitch TOP
 pinMode(5, INPUT); // Schalter / Taster / Main Button
 pinMode(9, INPUT); // Endschalter unten / Limitswitch Bottom
 pinMode(3, OUTPUT); // Lift nach oben / Relais 1 / Relay 1
 pinMode(4, OUTPUT); // Lift nach unten / Relais 2 / Relay 2
 //An Pin 11 = Schalter LED / Pin 11 = LED of the switch

 if (digitalRead(7) == HIGH) {
   LiftStatus = "oben";
 } else {
   LiftStatus = "unten";
 }

}

void loop() {
 ledSchalter.Update();
{
 if (digitalRead(5) == HIGH) {
   if (LiftStatus == "unten") {
     while (!(digitalRead(7) == HIGH)) {
       digitalWrite(3, HIGH);
       ledSchalterFast.Update();
     }
     LiftStatus = "oben";
   }
 } else {
   digitalWrite(3, LOW);
 }
 if (digitalRead(5) == HIGH) {
   if (LiftStatus == "oben") {
     while (!(digitalRead(9) == HIGH)) {
       digitalWrite(4, HIGH);
       ledSchalterFast.Update();
     }
     LiftStatus = "unten";
   }
 } else {
   digitalWrite(4, LOW);
 }
}
}

Ist wahrscheinlich alles etwas schwer verständlich aber vielleich hat ja jemand etwas Ahnung und kann mich vielleicht ein wenig durch die Fehlerbehebung führen.

Setze Deinen Code bitte in Codetags (</>-Button oben links im Forumseditor oder [code] davor und [/code] dahinter ohne *).
Dann ist er auch auf mobilen Geräten besser lesbar.
Das kannst Du auch noch nachträglich ändern.

Gruß Tommy

Dein Sketch ist fast nicht zu lesen. In einem Mobilgerät überhaupt nicht.
Setze den bitte in Code-Tags.

Verwende dazu die Schaltfläche </> oben links im Editorfenster.
Das kannst du auch nachträglich machen.
Dazu den Sketch markieren und die Schaltfläche klicken, oder [code] davor und [/code] dahinter ohne *.

Damit wird dieser für alle besser lesbar.

Zu deinem Problem:
Hast du Pullup oder Pulldown-Widerstände an den Tastern bzw. Endschaltern ?

Wenn nicht, ist das dein Problem.

Hi schon einmal danke für die Antworten, Ich habe den Code richtig eingefügt.

Ich verwende diesen Schalter: klick

sowie diese Endschalter: klick

Pullup und Pulldown Widerstände sagen mir jetzt nichts. Ich hab nur einige Grundkentnisse der Elektrotechnik mit Arduino beschäftige ich mich sonst auch überhaupt nicht so wirklich.

Du brauchst def. Pulldown-Widerstände an den Eingängen.
Ohne diese Widerstände arbeitet jeder Einganspin als Empfänger für alle möglichen Störungen.

Dann informiere dich mal über diese Widerstände.

Könntest du mir vielleicht helfen das ein wenig zu beschleunigen und sagen welche Widerstände (hab ein kleines Set hier) ich wohin Löten muss? (Ich mach das ja auch nur für nen Freund weil er halt wirklich gar keinen Ahnung von sowas hat)

zeichne zunächst mal schnell zum Beschleunigen einen Schaltplan wie du was verkabelt hast und stell ihn ein.

Pullups kann man im code aktivieren:

da spart man sich externe, muss dann aber
gegen GND schalten und
logisch umdenken weil LOW ist geschlossen.

alex3480:
Könntest du mir vielleicht helfen das ein wenig zu beschleunigen und sagen welche Widerstände (hab ein kleines Set hier) ich wohin Löten muss? (Ich mach das ja auch nur für nen Freund weil er halt wirklich gar keinen Ahnung von sowas hat)

Variante a: irgendwas zwischen 2,2k und 10k JEWEILS von ground nach PIN 5,7,9

Das ist aber Mist, denn Du prüfst auf HIGH. Alles was irgendwie auch nur Energie in der Luft ist, kann Dir ein HIGH vorspielen.

Variante b: Die Taster von der 5V-Schiene auf die GND-Schiene umklemmen; Pinmode für die PIN 5,7,9 von INPUT auf INPUT_PULLUP und die Abfragen der PIN auf ==LOW umstellen

noiasca:
zeichne zunächst mal schnell zum Beschleunigen einen Schaltplan wie du was verkabelt hast und stell ihn ein.

Hab ich doch im Eingangspost :frowning:

Das Programm umschreiben trau ich mir selber nicht zu muss ich ehrlich sagen ich probier es mal mit den Widerständen zwischenlöten.

Ich habe jetzt jeweils einen 4,7k Ohm Widerstand von Ground nach Pin 5,7,9 gelegt und jetzt läuft alles bisher Fehlerfrei! vielen Dank :slight_smile:

Könntet ihr mir vielleicht noch sagen ob ich den Rolladenmotor, sowie das Hausstrom Netz wie in der Skizze an das Relais anschließen kann?

du hotlinks auf einen dubiosen Bild Hoster ... das sieht man nicht auf allen Browsern.

Was erwartest du von deiner Netzverkabelung?
Was soll sie machen?

Wir kennen deinen Motor nicht, wissen daher nicht wie der beschaltet werden soll.

Ich habe diesen Rolladenmotor Rolladenmotor Komplettset Rohrmotor SW60 Rollladenmotor 3T-MOTORS Rolladen Set | eBay

Er hat 4 Anschlüsse (zwei Phasen ein Nullleiter und einmal erdung?)

Die Schaltung ist einfach:
Wenn Relais Ausgang 1 aktiviert ist soll er links rum drehen und bei Relais Ausgang 2 soll er rechts rum drehen.

Außerdem hab ich versucht durch den Anschluss auf der Hardware Seite einen Schutz einzubauen dass nicht beide Phasen gleichzeitig geschaltet werden können wenn das Programm doch mal nen Fehler hat.

alex3480:
Ich habe jetzt jeweils einen 4,7k Ohm Widerstand von Ground nach Pin 5,7,9 gelegt und jetzt läuft alles bisher Fehlerfrei! vielen Dank :slight_smile:

Prima, dass es so funktioniert.

Zu deinem Rolladenmotor kann ich leider nichts sagen, da ich den nicht kenne.

Und mit 230Volt Aussagen bin ich grundsätzlich zurückhaltend.

alex3480:
Ich habe jetzt jeweils einen 4,7k Ohm Widerstand von Ground nach Pin 5,7,9 gelegt und jetzt läuft alles bisher Fehlerfrei! vielen Dank :slight_smile:

Könntet ihr mir vielleicht noch sagen ob ich den Rolladenmotor, sowie das Hausstrom Netz wie in der Skizze an das Relais anschließen kann?

Du hast meinen ersten Hinweis angenommen, dann kommt hier der zweite:

Bitte suche Deinen ersten Post, gehe unten rechts auf "modify" und bearbeite Deinen Post wie folgt:
Im Editorfenster gehst Du unten auf "Attachments and other options" und hängst Dein Bild als Attachment an.
Speichere den Post ab.
Dann gehst Du wieder auf den Post, siehst unten den Link zum runterladen.
Diesen klickst Du mit der rechten Mousetaste an und kopierst Dir den Link.
Dann gehst Du erneut auf "modify" und löscht Deinen externen Bilder-Link und fügst dafür den soeben kopierten ein.

Ja, das ist Aufwand, aber das Bild gehört zum Post. Da wo es jetzt liegt ist es in wenigen Tagen weg. Kein Mensch weiss, auf was Du Dich bezogen hast.

UND DANN, komm ich wieder.

Hi hab den Eingangspost bearbeitet.
Den Rolladenmotor hab ich übrigens etwas anders angeschlossen wie auf dem Foto aber jetzt läuft er wie gewünscht.
Ich wiederhole der Anschluss im Eingangspost ist so nicht ganz korrekt, ich habe die beiden Jumper des Relais von low auf High level gestellt und einen Anschluss vertauscht jetzt funktioniert alles wie gewünscht.

Viele Grüße
Alexander

alex3480:
Hallo ein Freund ist dabei einen Monitor lift mittels Arduino
[...]
Ich versuche jetzt die Verkabelung etc. zu bewerkstelligen
[...]
Ich verwende einen Arduino Nano V3

Bei dem etc. hab ich schon gezweifelt, aber dann war Schluß an den Kumpel zu glauben:

alex3480:
"Ich verwende diesen Schalter: klick"

OK. Soweit dazu.

Ich bin ja schon begeistert, das tatsächlich Relaismodule verwendet werden, die abgedeckte Schraubkontakte haben.

Aber hier kommt schon der erste Hinweis:
Die Module sind NICHT für 240V/30A gedacht, auch wenn das auf den Relais steht.
Merker 1: Da stehen ausschliesslich NUR 5V in der Artikelbeschreibung.

Dann schreibst Du

Ich hab nur einige Grundkentnisse der Elektrotechnik

Merker 2.
Und die Geschichte mit dem Freund find ich noch immer gut.

Jetzt kommt aber das, was ich nicht mehr lustig finde:

alex3480:
Könntet ihr mir vielleicht noch sagen ob ich den Rolladenmotor, sowie das Hausstrom Netz wie in der Skizze an das Relais anschließen kann?

Merker 3.

um in #10 den Höhepunkt zu finden:

alex3480:
Er hat 4 Anschlüsse (zwei Phasen ein Nullleiter und einmal erdung?)

Ehrlich?
Da braucht es nicht mal mehr eines 4.ten Merkers!

Du hast keinen blassen Schimmer und versuchst was zusammenzubasteln, was Dir "Haus und Hof" kosten kann!

Nehmen wir Variante1 - Die Geschichte mit dem Kumpel.
Brennt den seine Hütte ab, ist der ganz bestimmt noch Dein Kumpel, da Du ihm die ganze Geschichte zusammengemeisselt hast.

In Variante2 wäre Dein Freund Deine (im billigsten Fall: Hausrat) Haftpflichtversicherung.

Was Deine - jetzt geänderte - Beschaltung des RoLaMo angeht, ist die nicht hilfreich.
In solchen Schaltungen sowohl NC als auch NO freischalten.
Aber dafür müsstest Du ja den Code ändern....

Wenn Du nicht weisst, was Du auf der Seite der Relais tust, die da irgendwas machen sollen, überlasse das jemandem der sich damit auskennt!

Gehe mit all dem, was auf der Seite der Netzanbindung zu finden ist zu einem kleinen Elektrobetrieb um die Ecke und las Dir erklären, was geht und was nicht.

Eigentlich wollte ich ja nichts schreiben.. aber das will ich so an dieser Stelle nicht stehen lassen also versuch ich dir nochmal ruhig und sachlich zu antworten.

  1. Nein das ganze ist nicht für mich, wirklich nicht auch wenn du dir das vielleicht wünschst? Falls es so wäre würde ich dies auch schreiben :slight_smile:

  2. Die ganzen verwendeten Bauteile wurden in dem Video ebenfalls verwendet und empfohlen, der Anschluss dieser wird in der Anleitung allerdings nicht erwähnt was mein Kumpel nicht wusste als er sich dazu entschloss das ganze Teil nach zu bauen.

  3. Wie in aller Welt kommst du darauf, dass das Relais keine 230V schalten kann?

  4. Keine Sorge ich werde meinen Kollegen darüber aufklären dass ich für nichts garantiere und es nur nach besten Wissen und gewissen Zusammenbaue auch wenn ich davon überzeugt bin es jetzt im groben und ganzen richtig gemacht zu haben.

  5. Was stimmt denn jetzt nach deiner Meinung nach nicht mit meiner Schaltung für die Rolladenmotor? Funktioniert die letzten paar Stunden in der Praxis bisher zufriedenstellend und es ist von der Hardware Seite her sichergestellt dass nie beide Phasen des Motors gleichzeitig laufen können.

Ich verstehe nicht wieso du jetzt wo alles wie gewünscht funktioniert ankommst und sagst ich soll den ganzen scheiß wem anders geben?

alex3480:

  1. Nein das ganze ist nicht für mich, wirklich nicht auch wenn du dir das vielleicht wünschst? Falls es so wäre würde ich dies auch schreiben :slight_smile:

Ok, ich nehm das so hin.

  1. Die ganzen verwendeten Bauteile wurden in dem Video ebenfalls verwendet und empfohlen, der Anschluss dieser wird in der Anleitung allerdings nicht erwähnt was mein Kumpel nicht wusste als er sich dazu entschloss das ganze Teil nach zu bauen.

Nur weil irgendjemand irgendwas in irgendwelchen Videos darstellt - kann man machen...

  1. Wie in aller Welt kommst du darauf, dass das Relais keine 230V schalten kann?

Hab ich nicht geschrieben.

  1. Keine Sorge ich werde meinen Kollegen darüber aufklären dass ich für nichts garantiere und es nur nach besten Wissen und gewissen Zusammenbaue auch wenn ich davon überzeugt bin es jetzt im groben und ganzen richtig gemacht zu haben.

Das weiss der dann auch, wenn die Hütte abgebrannt ist. Ganz sicher!

  1. Was stimmt denn jetzt nach deiner Meinung nach nicht mit meiner Schaltung für die Rolladenmotor? Funktioniert die letzten paar Stunden in der Praxis bisher zufriedenstellend und es ist von der Hardware Seite her sichergestellt dass nie beide Phasen des Motors gleichzeitig laufen können.

Lies meinen Hinweis nochmals.

Ich verstehe nicht wieso du jetzt wo alles wie gewünscht funktioniert ankommst und sagst ich soll den ganzen scheiß wem anders geben?

Hab ich nicht geschrieben.

Du kannst es gerne nochmal nachlesen. Und dann nochmal.