Hallo,
folgendes Problem: ich muss mit einem AVR ein paar Schalter abfragen,
bei diesen Schaltern handelt es sich um die ganz normalen 230V
Wechselschalter(Lichtschalter), die über ungeschirmte, nicht verdrillte
~10m lange Leitungen (normales 1,5mm² Installationkabel) mit der
Schaltung verbunden werden. Zudem liegen sie direkt parallel mit den
normalen 230V Leitungen.
Außerdem soll auch hardwareseitig entprellt werden.
Im Wiki bin ich auf folgende Schaltungen gestoßen:
http://www.mikrocontroller.net/articles/Entprellung#Einfacher_Taster
die Frage ist ob der RC-Tiefpass reichen wird um auch sämlichen
Störungen rauszufiltern, weil z.b. mit diesen
Rolladen/Kondensatormotoren entstehen nämlich schon ziemliche Störungen.
Zusätzlich zu den 5V wären auch noch 12V verfügbar aber leider mit
gemeinsamer Masse sonst wäre ein Optkoppler ganz gut gewesen.
C.M. schrieb:> Außerdem soll auch hardwareseitig entprellt werden.
Das bringt nichts, eine vernünftige SW-Entprellung arbeitet besser.
Sinnvoll kann allerdings eine galvanische Trennung (Optokoppler) sein,
um Stromeinkopplungen in den MC zu verhindern. Die GND/VCC zur LED-Seite
und zum MC werden dabei getrennt auf die Platine geführt, d.h. können
keine Erdschleife bilden.
Peter D. schrieb:> Sinnvoll kann allerdings eine galvanische Trennung (Optokoppler) sein,> um Stromeinkopplungen in den MC zu verhindern. Die GND/VCC zur LED-Seite> und zum MC werden dabei getrennt auf die Platine geführt, d.h. können> keine Erdschleife bilden.
Es gibt nur eine Spannungsversorgung, da bringt eine Trennung nicht
viel, da Masse sowie verbunden ist, oder verstehe ich da was falsch?
C.M.
Software-Entprellung ist günstiger, kostet nichts außer etwas
Gehirnschmalz.
Sehr wirkungsvoll ist ein nachgebildetes seriell-parallel
Schieberegister.
Im Takt wird der Inhalt einer Variable um 1 Bit linksverschoben und der
letzte eingelesene Zustand als LSB eingefügt. Wenn alle Bits gesetzt
sind, wird das Signal gesetzt, wenn alle auf Null sind wird es
zurückgesetzt. Bei allen anderen Kombinationen bleibt es wie es ist.
Nur bei sehr häufigen Störungen wäre eine Kombination mit HW-Entprellung
angesagt.
Peter D. schrieb:>> Außerdem soll auch hardwareseitig entprellt werden.>> Das bringt nichts, eine vernünftige SW-Entprellung arbeitet besser.
Eine vernünftige HW-Entprellung arbeitet am besten:
Beitrag "Taster per Hardware entprellen – alternative Schaltung"Volle schrieb:> Ein Schalter für 230V AC muss bei 5V DC nicht zuverlässig und dauerhaft> funktionieren.
Muß nicht, macht es aber ;-)
Wechselschalter nehmen, dann hat man für jeden Zustand einen eigenen
Kontakt.
Über einen Widerstand dafür sorgen daß wenigstens 10-20mA Strom durch
die Kontakte fliessen, bzw. der offene Kontakt dann auch niederohmig an
einem definierten Potential liegt.
m.n. schrieb:> Peter D. schrieb:>>> Außerdem soll auch hardwareseitig entprellt werden.>>>> Das bringt nichts, eine vernünftige SW-Entprellung arbeitet besser.>> Eine vernünftige HW-Entprellung arbeitet am besten:> Beitrag "Taster per Hardware entprellen – alternative Schaltung"
einer richtigen SW-Lösung ist das Prellen egal
>> Volle schrieb:>> Ein Schalter für 230V AC muss bei 5V DC nicht zuverlässig und dauerhaft>> funktionieren.>> Muß nicht, macht es aber ;-)
Du kennt den verwendeten Schalter?
Ich kenne 230V Schalter die werden über die Jahre bei Betrieb unter 20V
recht hochomig also >1kOhm.
Hi
Sind an dem Schalter 2 oder 3 Leiter vorhanden?
(schön wäre, wenn KEINER davon grün/gelb wäre)
Und KEINER der Drähte hat Verbindung mit EGAL WAS der Haus-Installation.
Dann könnte man auf die Wechsel-Kontakte Vdd und Vss legen und an der
Wurzel den µC-Pin.
Pin-Change-Interrupt, fertig.
Das Schieberegister (also Byte per lsl oder bei gesetztem Carry bei
geschlossenem Schalter rol) schadet aber nicht.
MfG
Volle schrieb:> Du kennt den verwendeten Schalter?
Wenn Du mich so fragst: JA ;-)
> Ich kenne 230V Schalter die werden über die Jahre bei Betrieb unter 20V> recht hochomig also >1kOhm.
Bei 10 kOhm Pullup Widerstand ist das doch kein Problem.
Ich kenne übrigens auch Schalter, die nach Jahrzehnten Betrieb << 1 Ohm
geblieben sind.
C.M. schrieb:> die Frage ist ob der RC-Tiefpass reichen wird ...
Aber mit einem Drehkondensator. Dann kann man sich besser an die
Störungen anpassen.
MfG Klaus
Also eine Schaltung unter ähnlichen Bedingungen läuft zu 99% fehlerfrei
aber sehr selten kommt es halt doch mal zu einer Störung, wo dann beim
Einschalten z.b eines Rolladens das Licht dann schaltet. Diese Schaltung
besteht nur aus einem 1kOhm pulldown und einem ich glaube 10uF
Kondensator (geschaltet wird gegen VDD) und halt Software Entprellung.
Und ja die Schalter sind für kleine Spannungen immer nich sehr
niederohmig
C.M
(sry multipost)
Achso: die Abfrage der Taster wird über einen Portexpander geschehen,
als wäre HardwareEntprellung besser kann könnte man schön mit Interrupts
arbeiten und den Avr für andere Sachen freihalten.
PS: es können leider keine 3 Adern verwendet werden.
C.M.