Hallo zusammen,
ich möchte eine zwiteilige Lampe über einen Schalter bedienen können,
ohne große bauliche Verränderungen durchzuführen.
Ich habe eine Lampe mit 5 Spots und einem "Sternenhimmel" (100 LED's).
Einen Deckenauslaß 220 V und die üblichen 3 Adern. Außerdem gibt es den
nötigen An- Ausschalter dazu.
Mein Vorhaben:
1) Schalter an -> Spots an; "Sternenhimmel" bleibt aus.
2) Schalter aus, Schalter an -> "Sternenhimmel" an Spots bleiben aus.
3) Schalter aus, Schalter an -> "Sternenhimmel" an Spots an.
Beim nächsten Schaltvorgang wieder 1).
Soweit kein Problem, das bekomme ich noch hin!
Mein Problem:
Eigentlich soll immer nur 1) eintreten - nach z.B. 10 Sekunden Schalter
aus soll beim nächsten Einschalten auch wieder 1) kommen. Da der AVR
aber zu diesem Zeitpunkt stromlos ist, kann ich den Timmer nicht dazu
befragen.
Jemand eine Idee?
Gruß Chricky
Chricky schrieb:> Da der AVR> aber zu diesem Zeitpunkt stromlos ist
Warum ist der dann stromlos?
Ein AVR im Powerdown braucht <1µA, ein kleiner Elko reicht dann dicke
für 10s Strom.
Peter
Arbeite mit einer Fernbedienung statt mit Klappern am Netzschalter.
Der Schalter gibt Saft auf den AVR (als 5V DC) und die Beleuchtung.
Der AVR steuert die Beleuchtung Spot und/oder Sterne (oder AUS!).
Du steuerst mit der Fernbedienung den AVR.
Feinheiten:
Der AVR kann sich den letzten Zustand im EEPROM merken, für den Fall,
dass der beim nächsten Einschalten wieder verfügbar sein soll.
Der AVR kann sich in der Hauptzeit schlafen legen und kann durch einen
Impuls der Fernbedienung wecken lassen.
Die Fernbedienung kann sein:
Eine käufliche IR-Universalfernbedienung. Ein RC5 Dekoder für AVRs gibt
es als Beispiel in der Codesammlung. Kosten und Zeit überschaubar.
Eine einfache modulierte IR-Diode mit einen kleineren AVR plus Batterie
als eigener, selbstgebauter IR-Dongle. Etwas geringere Kosten, dafür
mehr Zeitbedarf, weil der Sender auch programmiert werden muss
(Codesammlung).
Funk-FB. Die sind als Selbstbau in der Programmierung anspruchsvoller.
Vorteile der FB-Lösung
Die FB kannst du mit auf die Couch nehmen und von dort aus bedienen.
Mehrere Personen können eine FB haben. Besonders bei dem selbstgebauten
IR-Dongle kann man die strategisch verteilen (nahe Schalter eine, am
Tisch eine...)
Danke Stefan B.,
aber das wird füre meine Frau, die mal eben das Badlicht einschalten
möchte und die Fernbedienung nicht findet, nicht akzeptabel sein...
Es sollte schon beim Wandschalter bleiben (Frauen sind eben keine Männer
:-))!
Hallo Chricky:
Vorschlag Fernbedienug:
Ich habe das in meiner ganzen Wohnung so gelöst.
Und damit meine Frau nicht die FB suchen muss, ist diese hinter dem
Lichtschalter eingebaut.
Nach aussen hin sind es ganz normale Lichtschalter.
Intern jedoch kann ich (abhängig von der Programmierung) mit jedem
Lichtschalter jede Lampe in der Wohnung schalten.
Universeller geht es nicht.
Und wenn Du schon Deiner Frau helfen möchtest: Mach bloss nichts mit
"Morsecode"
MfG
Ulli
Hi!
Die Lösung ohne Fernbedienung ist vom WAF (Womans Acceptance Factor)
sicherlich die einzige. Aber auch als Mann habe ich keine Lust immer
nach der FB zu suchen, die könnte in einem Bad ja an duzenden Stellen
verschiwnden oder eben einfach in die Wanne fallen.
Also überlege Dir die Lösung mit dem Kondensator. Du benötigst für die
Steuerung selbst nur einen sehr kleinen und sehr langsam getakteten
Controller. Also etwa einen ATtiny. Diesen kannst Du problemlos mit der
internen Clock takten, brauchst also keinen externen Quarz.
Die Stromversorgung des Controllers wird direkt über das Netzteil
erzeugt. Ein Kondensator wird ebenfalls von diesem Netzteil aufgeladen.
Dieser Kondensator hängt über einem Spannungsteiler aus zwei
Widerständen an einem Eingang des Controllers.
Beim Abschalten der Versorgung entlädt sich der Kondensator über den
Widerstand, der nach Masse geschaltet ist. Der Controller kann nun beim
erneuten Einschalten feststellen, ob er nur kurz oder eben länger
ausgeschaltet war, in dem er prüft, ob der Kondensator noch geladen ist
oder eben nicht.
Hier hast Du zwei Möglichkeiten:
1) Du nimmst einen ADC Eingang und misst/mittelst die
Kondensator-Spannung um festzustellen, ob die Restspannung Deinen 10s
entspricht. Derzeugt etwas mehr Programmieraufwand, aber man kann die
Schaltung recht einfach auf die erforderliche Zeit einstellen.
2) Du nimmst einen Digitaleingang, der Controller schaut nur nach, ob
der Eingang High oder bereits Low ist. Das ist vom Programmieren her
einfacher, aber um die richtige Zeit auszutüfteln musst Du ein wenig
mehr Rechnen oder verschiedene Widerstands/Kondensator Optionen
durchprobieren, bis es passt.
Du Hast also mehr Lötarbeit.
Der Vorteil dieses Verfahrens ist folgender:
Nimmst Du den Kondensator als Versorgung für den Controller selbst,
musst Du Dir von Deinem Netzteil eine weitere Leitung an den Controller
legen, damit dieser feststellen kann, ob er nun die 10s abzählen muss.
Dafür muss der Kondensator aber die CPU speisen, die weiterhin mit
voller Leistung weiter läuft, wenn Du da nicht extra noch ein
Powermanagement einbauen willst. Der Kondensator muss also groß sein,
was auf einen ELKO hinausläuft. Diese altern aber schnell und damit wird
Deine Schaltung in ein paar wenigen Jahren anfangen Zicken zu machen.
Außerdem kann es passieren, dass dir wegen des flachen Spannungsabfalls
des Kondensators und damit der CPU Versorgung diverse Resets dazwischen
kommen. Und zusätzlich bekommst Du Probleme, wenn Du nicht mehr oder
weniger sofort die Netzteilabschaltung erkennst, denn dann hat Dein 10s
immer leicht versetzt Werte, also eine Toleranz.
Mein Vorschlag hingegen kommt mit einem recht kleinen Kondensator aus,
wenn man die Widerstände hoch genug wählt. Während der Aus-Zeit wird nur
der Kondensator konstant entladen, da eben nur dieses RC Glied aktiv
ist. Die Zeit läuft also unabhängig vom Rest der Schaltung.
Bei dieser Schaltung gibt es aber noch etwas zu beachten:
An einem Port-Pin einer CPU sollte keine höhere Spannung anliegen als
die Versorgungsspannung. Sonst können die im Chip vorhandenen
Schutzdioden durchbrennen. Also sieht die Schaltung eher so aus:
Widerstand R1 von Netzteil an Kondensator C1, Widerstand R2 parallel zu
C1 nach Masse, Widerstand R3 von Mittelpunkt R1/C1/R2 an den Controller.
R3 schützt die CPU und verhindert einen zu großen Leckstrom, wenn der
Kondensator versucht die Spannungslose CPU durch ihren Port pin hindurch
zu versorgen.
Das Zeitglied ist also C1/R2 wobei es zu einem konstanten Leckstrom über
R3/CPU kommen kann, den man mit einrechnen muss.
Gruß, Ulrich
Ps: Ich verstehe die Leute nicht, die mit sinnfreien Kommentaren
erreichen wollen, dass der Elektronik Nachwuchs ( unabhängig vom Alter
und erlerntem Beruf) verschreckt wird. Haben die alle ganz alleine ihre
erste Controller-Schaltung in Betrieb genommen? Hat jedes ihrer Projekte
auf Anhieb funktioniert und das nötige Wissen kam über Nacht? Wenn Ihr
sinnfreies Zeug posten wollt, geht nach Facebook und WKW, diese
Plattformen sind dafür geschaffen worden!
Wenn man nur will lässt sich sogar leicht "old school" lösen. Das TTL
Grab bleibt dabei noch ziemlich klein.
nix gegen Controller schon garnicht im uC Forum...
So, es ist geschafft! Das Modul funktioniert. Vielen Dank noch 'mal an
alle, die ernsthaft helfen wollten.
Wenn's jemand brauchen kann, der Schaltplan ist im Anhang.
Gruß Chricky
Hallo nochmal,
nun hab' ich doch noch ein kleines Problem:
Ich habe mein Modul an den vorhandenen LED-Transformator
(Typebezeichnung: SLT15-12VF-1) angeschlossen. Der hat eine
"Nachlaufzeit" von ca. 1 Sekunde. Das heißt: Zwischen Schalter aus und
wieder an puffert dieser meine Schaltung und nichts passiert (wenn man
langsam schaltet geht's natürlich). Das ist nicht wirklich dramatisch,
aber auch nicht perfekt.
Gibt es hier eine einfache Möglichkeit der Abhilfe, oder sollte ich
besser eine separate Stromversorgung wählen...
Gruß
Christian
Auch wenn die Idee zu spät kommt.
Den Lichtschalter durch einen Taster ersetzen, der öffnet.
Der Controller hat immer Spannung, es muss nur die Zeit des
Tastendrucks überbrückt werden. Dann kann man z.B.
1x drücken Spots gehen An/Aus
2x drücken Sternenhimmel geht An/Aus