Interrupt-Eingänge unempfindlicher machen ?

Hallo zusammen,

ich möchte eine Steuerung für mein Dachfenster (Kuppel, Fischblase) machen.

Ich habe mir dafür einen Motorantrieb (Motorspindel, 230 V, 140 W) besorgt und möchte den Motor ansteuern:

Arduino UNO, Breadboard mit 5 Tastern, Doppel-Relais-Platine.

Taster "Auf": Motor Drehrichtung "AUF" wird für x sek freigeschaltet.
Taster "Zu": entgegengesetzte Drehrichtung bekommt Strom
Taster "kurz": Aufmachen, kurze Zeitspanne warten, Fenster zufahren
Taster "lang": ihr wisst schon
Taster "Stop": Bewegung des Motors stoppen
Es gibt einen Schalter im Motor, der die Endlage "geschlossen" anzeigt und die Motorbewegung stoppen soll.

Die Funktionen "Stop" und "Endlage" wollte ich über Interrupts realisieren.

Alles klappt, solange ich den Netzstrom für den Motor nicht anschließe. Wenn ich den Motor mit 230 V beaufschlage, bekomme ich ungeplante Interrupts, die dafür sorgen, dass de Motorstrom sofort wieder ausgeschaltet wird. Ist eben "Stop" oder "Endlage" -> Motor aus.

Das Signal für den Endlage-Schalter geht durch dasselbe Kabel, das auch den Motor versorgt.
Ich gehe von Einstreuungen aus. Ich habe schon einen 100-Ohm-Pull-Up-Widerstand probiert, hilft nix.

Jemand ne Idee ?

Danke und Gruß, Frank

Hallo,

Vorschlag ja hab ich , was soll der Interupt mach es ohne. Interupts sind für schnelle Vorgänge gedacht , das hat also seine Richtigkeit. Wenn der Motor da rein knallt must Du dir evnetuell Gedanken zur EMV machen.

Du kannst aber die Eingänge zum stoppen erst mal entprellen , 10-20ms

Heinz

Abgeschirmte Kabel für die Signalleitungen; die Abschirmung auf einer Seite auf Masse legen.

Es braucht keine Interrups um Taster und Enschalter zu lesen. Es braucht dazu nur einen blockadefreien Sketch.

Uwe

frankausbraunschweig:
Ich habe mir dafür einen Motorantrieb (Motorspindel, 230 V, 140 W) besorgt und möchte den Motor ansteuern:
[…]
Wenn ich den Motor mit 230 V beaufschlage, bekomme ich ungeplante Interrupts, die dafür sorgen, dass de Motorstrom sofort wieder ausgeschaltet wird. Ist eben “Stop” oder “Endlage” → Motor aus.

Das Signal für den Endlage-Schalter geht durch dasselbe Kabel, das auch den Motor versorgt.
[…]
Jemand ne Idee ?

Bitte mal Link oder Type des Spindelantriebes.
Das mit dem Kabel bitte mal mit 'nem Foto. Hört sich nach unzulässiger Beschaltung an.

Hi

Link zum Motor wäre interessant.

Wie Rentner schon schrieb: Für so schnarch lahmes Zeug sind Interrupts keine Lösung - Du holst Dir damit eine Menge viel größere Probleme ins Haus, als den Kram ganz einfach zu pollen.

MfG

@Rentner - hattest Du vorne nicht Mal ein kleiner R?

postmaster-ino:
Hi

Link zum Motor wäre interessant.

Wie Rentner schon schrieb: Für so schnarch lahmes Zeug sind Interrupts keine Lösung - Du holst Dir damit eine Menge viel größere Probleme ins Haus, als den Kram ganz einfach zu pollen.

MfG

@Rentner - hattest Du vorne nicht Mal ein kleiner R?

Nein das war ich nicht , ich bin kein kleiner Rentner :wink:

Vielen Dank für die Einschätzungen, hat geholfen.

Der Motoröffner ist ein JMAB 500-300 LA. Das ist ein Spindelantrieb mit 230V-Motor.

Der Anschluß ist ein 5-poliges Kabel mit jeweils 0,75 qmm. Der Motor belegt 3 Adern (links-rechts-gemeinsamer Null) und der Endlage-Schalter zwei weitere, ist galvanisch getrennt, offen, wenn Fenster geschlosssen.

Ich werden den Sketch auf pollen umschreiben, ich hab vor 35 Jahren mal C programmieren gelernt, war alles vergessen, jetzt machts wieder Spaß.

Vielen Dank nochmal, Frank

frankausbraunschweig:
Der Anschluß ist ein 5-poliges Kabel mit jeweils 0,75 qmm. Der Motor belegt 3 Adern (links-rechts-gemeinsamer Null) und der Endlage-Schalter zwei weitere, ist galvanisch getrennt, offen, wenn Fenster geschlosssen.

Was heisst galvanisch getrennt? Der Endschalter mechanisch und elektrisch so angeordnet, das 220v da nicht rankommen?
Das Kabel führt 5V und 220V gemeinsam.
Also unzulässig, wie Du das aufbauen willst.
Das bringt Dir auch den Eintrag von ungewollten Spikes, die Dir jetzt Kopfschmerzen bereiten.

Trenne den Steuerteil aus dem Kabel.
Verwende keine Interruts. Das ist absoluter Overkill.

Hallo,

Also die 5V zusammen mit den 220VAC in einem Kabel ist schon zulässig, macht man aber nicht, da es wegen der Störungen zu EMV Problemen kommen kann. Vermutlich bekommst Du aber kein zweites Kabel in den Motor rein.

Andere Variante Du schaltest mit dem Endschalter ein Relais oder Optokoppler. z.B mit 12V. Den Relaiskontakt nimmst Du für den Arduino.

Heinz

Hallo,

dann wird es Zeit das jemand meine “rumliegende” Tasterentprellung testet. :slight_smile:
Die ist in der Theorie immun gegen überlagernde Störungen. Bei meiner Methode wird der Tasterpin nicht im konstanten Zeitintervall abgefragt, sondern in zeitlich versetzten Intervallen. Das bedeutet zum Bsp. das eine Störfrequenz die vielleicht zufällig ins sonstige Abfrageraster passen würde nicht stört. Alle 4 internen Abfragen müssen hintereinander gültig sein, sonst gilt der Taster als nicht betätigt.

Für den TO ist im Example sicherlich erstmal nur Retrigger und NoRetrigger interessant.
Würde mich freuen wenn es im “Störfeld” getestet werden könnte.
Dann kann ich die weiterentwickeln.

Beide Ordner in C:\Users\xyz\Documents\Arduino\libraries\ entpacken

libraries.zip (308 KB)

Rentner:
Also die 5V zusammen mit den 220VAC in einem Kabel ist schon zulässig,

NEIN! Nicht in dieser Umgebung.

Adervertauschung ausgeschlossen? Nein.
Isolierung durchgehend? Nein.

Also FELV. Erfüllt der Arduino? nein.

VDE 410 ist nicht öffentlich verfügbar.

Aber vielleicht hilft das:SELV/PELV/FELV - den ganzen Artikel lesen.

Hi

Warum dann nicht ganz stur mit 230V an den Motor und über den Kontakt auf ein Trenn-Relais/Opto-Koppler?
Danach haben wir wieder Spiel-Strom.

MfG

postmaster-ino:
Warum dann nicht ganz stur mit 230V an den Motor und über den Kontakt auf ein Trenn-Relais/Opto-Koppler?

Das ist mein reden.
Ich finde die verbauten Überspannungsschaltungen z.B. in Mehrfachsteckdosen mit der “ich funktioniere noch LED” als super Grundlage. Die haben mehrfach Varistoren, thermische Sicherungen und sogar Gasableiter.
Wird der Primärkreis - also die LED im OK - noch mit einer schönen Fräsung der Leiterplatte unter dem OK getrennt gehe ich da vollständig mit. So ein bissl Abdeckung und Aufkleber “Netzspannung” und schon ist schick.

Ich warne nur gerne und immer wieder aus gutem Grund davor, irgendwas zu basteln, was später - auch in einem Versicherungsfall - zum Totalverlust führen kann.
Material kann man ersetzen.
Das Familienmitglied nicht. Mit keiner Lebensversicherung, die wohlmöglich nicht zahlt.

my_xy_projekt:
NEIN! Nicht in dieser Umgebung.

Adervertauschung ausgeschlossen? Nein.
Isolierung durchgehend? Nein.

Also FELV. Erfüllt der Arduino? nein.

VDE 410 ist nicht öffentlich verfügbar.

Aber vielleicht hilft das:SELV/PELV/FELV - den ganzen Artikel lesen.

Hallo,

sorry sehe ich unter bestimmten Bedingungen anders , ich denke hier trifft VED0100 zu. Wenn dem nicht so wäre dürften Einzeladern in einem Schaltschrank 24VDC , 220VAC und eventuell diverse Messsignale , zB 4-20mA auch nicht in einem gemeinsamen Kabelkanal liegen. Massgeblich ist hier die Isolationsspannung der einzelnen Adern gegeneinander. Klingeldraht wäre natürlich nicht zulässig.

Heinz

Hallo Heinz,

Rentner:
sorry sehe ich unter bestimmten Bedingungen anders

Na ist doch wie ich schrub.

In #3: "Hört sich nach unzulässiger Beschaltung an."

Und später: "NEIN! Nicht in dieser Umgebung."

ich denke hier trifft VED0100 zu.

Ich schrub: VDE 410 ist nicht öffentlich verfügbar.

Ja, und richtig heisst es VDE 100-410. :wink:

Worauf ich raus wollte: 5V und 240V in einem H07RN-F sind nicht das Problem.
Das, was aber am 5V Zweig dran hängt, ist nicht schutzgetrennt.

In Industrieanlagen (deine Schaltschränke) sieht das ganz anders aus. Da ist es hauptsächlich PELV (Schutzerdung) und SELV (besondere (Leiter-)Isolierung).
Kabelkanäle mit Mischbelegung sind zulässig, Das Stichwort ist Trennsteg.

Ich glaube, wir sind nicht so weit auseinader.

Nochmal zum eigentlichen Problem:
100 Ohm als Pull-Up? Das ist mMn ein bisschen zu wenig, so um Faktor 100.

Hast du evtl. einen Schaltplan? Auf Bildchen ist der Fehler meist schnell zu finden. Trag bitte auch die Kabellängen und Positionen ein. Es gibt viel, was nach EMV klingt, aber tatsächlich einfach eine falsche Beschaltung ist.

Und zur VDE: Das ist weder SELV noch PELV, das ist schlicht eine gesteuerte Applikation ähnlich KNX. Dort wird auch die Datenleitung im selben Kabel geführt. Und damit gilt mMn die VDE 0298-4. Der Fehlerschutz sollte durch sein (korrekt) installiertes Hausnetz gegeben sein. Außer natürlich, er versorgt seinen Arduino mit 230V, dann wirkt der als eine Schmelzsicherung :wink:

my_xy_projekt:
Ja, und richtig heisst es VDE 100-410. :wink:

Und warum zur Hölle schreibst Du das dann nicht so?! An kaputten oder fehlenden Tasten kann's ja nicht liegen.

Gruß

Gregor

Und warum zur Hölle schreibst Du das dann nicht so?!

@ Gregor
Ist das wirklich so schlimm?
Grüße Uwe

uwefed:
Ist das wirklich so schlimm?

Ich finde es halt reichlich nervig, wenn Leute etwas Anderes schreiben als sie meinen - insbesondere, wenn es dafür wirklich keinen Grund gibt.

Gruß

Gregor

gregorss:
insbesondere, wenn es dafür wirklich keinen Grund gibt.

Doch, dafür gibts einen Grund.