Forum: Mikrocontroller und Digitale Elektronik 8bit Dimmer für 230V


von Michael B. (gm8816)


Lesenswert?

Hallo,
ich möchte mit dem atmega8 einen Dimmer realisieren den man über eine
Fernsteuerung steuern kann. An dem Dimmer sollen 40-60 Watt Glühbirnen
sein. Ich habe zwar schon bei google gesucht und jede menge Schaltungen
mit Thyristoren und Triacs gefunden. Allerdings weiß ich nicht so
richtig was da zu nehmen ist. Ich hoffe einer kann mir sagen wie ich
das mit dem dimmen realisieren kann.

mfg,
Geoffrey M.

von Sebastian (Gast)


Lesenswert?

Such mal nach Dimmer hier im Forum, da wirst Du einige Seiten finden,
die das schon mit AVRs gemacht haben.

von Hauke Radtki (Gast)


Lesenswert?

Das Stichwort lautet Phasenschnitt

von ..., (Gast)


Lesenswert?

dann baue das mit 12V auf und verstehe es ....

- Thyristor an Gleichspannung - ist gezündet und geht nicht mehr aus
- Thyrister an Wechselspannung - geht beim Nulldurchgang aus - nutzt
also nur eine Halbwelle

zum Dimmen muss Du den Zündzeitpunkt relativ zum Nulldurchgang
(setugen) verschieben...

von Michael B. (gm8816)


Lesenswert?

Wäre nett wenn jemand mal ne fertige Schaltung(Nur für den Dimmer) hier
reinstellen könnte. Ich will da auch nicht viel mit experimentieren da
es ja doch 230V sind und es soll schon sicher sein.

von Bedenkenträger (Gast)


Lesenswert?

>>230V sind und es soll schon sicher sein<<

dann lass es bitte sein - es könnte unschuldige Treffen

von klpo (Gast)


Angehängte Dateien:

Lesenswert?

Hier ein Dimmer nach dem Phasenabschnittsverfahren, das für Dein
Glühobst geeignet wäre.

von Oliver (Gast)


Lesenswert?

Es gab mal von Elektor eine Schaltung mit einem "Optotriac" und einem
AT90S2313, die genau deine Vorgaben erfüllt. Ich habe die damals zu
einer kleinen Lichtsteueranlage ausgebaut, habe aber keine Unterlagen
mehr. Die Ausgabe weiß ich leider auch nicht mehr, aber vielleicht
erinnert sich jemand anders.

Prinzip war die Detektion des Nulldurchganges der Netzspannung über
einen Optokoppler, der einen Interrupt ausgelöst hat. Die Glühbirnen
wurden über "Optotriacs" von Sharp angesteuert. Die würde ich Dir
auch empfehlen, da sie die einfachste und sicherste Art sind, über
einen µC Netzspannung zu schalten. Da gibt es mehrere auch bei
Reichelt.

von Michael B. (gm8816)


Lesenswert?

Danke erstmal für die Tips. Das Mit dem Optotriac interessiert mich
schonmal. Kann man das mit dem Optotriac auch irgendwie ohne
zusätzlichen Mikrocontroller machen? Die ganze Schaltung soll so klein
wie möglich bleiben.

von Andreas Lang (Gast)


Lesenswert?

Ein "Optotriac" ist ein Optokoppler mit Triacausgang. Damit zündet man
den Leistungstriac. Außerdem sollten dann noch eine Drosselspule und ein
 Varistor rein, damit 1. der Nachbar noch Fernsehen gucken kann und 2.
der Triac nicht gleich abbrennt. Man kann aber auch ein LC-Netwerk zum
Entstören nehmen, dann ist die Drossel kleiner.
Gutes Beispiel für den Leistungsteil: Der C-Control Dimmer vom dicken
blauen C (Schaltplan gibt's auf deren Website). Dann eine
Nulldurchgangserkennung (=Optokoppler mit geeigneten Vorwiderständen
und antiparalleler Diode (sonst raucht der Kleine ab).

von Holger Krull (Gast)


Lesenswert?

Vielleicht mag der Link hier für Dich interessant sein..
http://www.pcdimmer.de/

von Michael B. (gm8816)


Lesenswert?

Ich habe mir die seite http://www.pcdimmer.de/ mal angesehen. Die
Schalung ist eigentlich genau das was ich brauche. Ich habe jetzt nur
ein paar fragen zu dem Schaltplan
(http://home.arcor.de/lt.sue/www.pcdimmer.de/schaltplan/pc_dimmer_schaltplan_rev25_bta16-600b_small.jpg).
Was hat es mit 'Zero detection Crossing" auf sich. Kann ich nicht
einfach einen DA Wandler an den Optotriac anschließen um so den
Phasenschnitt zu erreichen.

von Dominik F. (forlix) Benutzerseite


Lesenswert?

Triacs können nur an oder aus, da wird der DA Wandler nichts bringen. Ab
der Nulldurchgangserkennung zählst du mit einem uC bis 255 hoch (die 255
müssen am Ende der Halbwelle erreicht sein), und zündest den Triac auf
einem Wert dazwischen (0 = 100% an, 255 = aus, 128= 50% an).
Das ganze geht auch ohne uC, habe das mal sehr einfach mittels OP
Verstärker gemacht, wo dann ein Kondensator ge- oder entladen (weiß
nicht mehr genau) wurde ab dem Nulldurchgang, und dann mit einer
einstellbaren Spannung am Komparator der Triac gezündet wurde.

Gruß
Dominik

von Andreas Lang (Gast)


Lesenswert?

"Zero detection Crossing" => wohl eher "Zero Crossing Detection"
Das heißt "Nulldurchgangserkenung", also den Punkt zu finden, wo die
Netzspannung kurzeitig 0V beträgt, also alle 10ms zwischen je zwei
Halbwellen.

Das Verfahren der Phasenanschnittdimmung basiert darauf, dass man die
jeweilige Halbwelle ab einem bestimmten Zeitpunkt durchlässt (den Triac
also zündet), der Triac schaltet sich dann im nächsten Nulldurchgang
wieder aus. Das Dimmen kann folglich rein digital geschehen.
Die Nulldurchgangserkennung auf pcdimmer.de halte ich für falsch!!!
Ein normaler 56k Metallschichtwiderstand hat nicht die nötige
(garantierte) Spannungsfestigkeit. Außerdem sind die 56k schon etwas
niedrig (hoher Strom durch den Optokoppler). Zweimal 56k in Reihe oder
einer in jeder der beiden Zuleitungen wären eher angemessen. Den
Transistor danach kann man sich auch sparen, ebenso wie die
Widerstände. Einfach den Optokoppler direkt gegen GND und dann rein in
INT0 oder INT1. (geht nur, wenn der µC interne PullUps hat).
Das "einfach" mit dem AD-Wandler geht NICHT.

von Michael B. (gm8816)


Lesenswert?

Danke für die Erklärungen. Wie der Dimmvorrgang funktioniert habe ich
jetzt verstanden. Nun wird ja jetzt immer erkannt wann die Spannung für
kurze Zeit Null ist und dann wird ein Teil der Welle einfach
"abgehackt". Könnte man das nicht auch ohne Nulldurchgangserkennung
machen indem man einfach mit dem µC einen Puls erzeugt und mit diesem
dann den Optotriac schaltet? Die Frequenz des Pulses würde dann die
Sinuswelle genauso beinflussen wie es mit Nulldurchgangserkennung der
Fall ist, oder?

von Thilo (Gast)


Lesenswert?

Ich würde mir einen fertigen Dimmer mit 0..10V-Eingang für ca. 50€
kaufen, ist billiger als ein Leben lang Schadenersatz oder die Rechnung
für die Feuerwehr!

von Michael B. (gm8816)


Lesenswert?

Meinst du das Ding fackelt so schnell ab? Dann lass ich es wohl doch
lieber sein und nehme Stattdessen normale relais. Kann dann zwar nicht
mehr dimmen aber es ist sicherer.

von Thilo (Gast)


Lesenswert?

Na, abfackeln wird's schon nicht gleich! Nur sollte man den Respekt vor
230V nicht verlieren.

von Michael B. (gm8816)


Lesenswert?

Deswegen frage ich hier nach um es zu vertsehen und Fehler meinerseits
zu beseitigen. gibt es solche fertigen dimmer auch biliger?

von Thilo (Gast)


Lesenswert?

Ich benutze die Dimmer (meistens DMX) in der Beleuchtungstechnik, also
20A pro Kanal. Habe nach billigeren Teilen noch nicht gesucht. Für
einen Halogen-Verfolgerscheinwerfer (1kW) habe ich einen Einzeldimmer
gekauft, der hat 49€ gekostet. Googel doch einfach mal nach! z.B.
www.CG-Showtechnik.de könnte was haben.

von Michael B. (gm8816)


Lesenswert?


von Thilo (Gast)


Lesenswert?

Link hat leider nicht funktioniert, aber Conrad verkauft normalerweise
keine unsicheren Geräte. (Nur zu teuer, grins!)

von Andreas Lang (Gast)


Lesenswert?

>Die Frequenz des Pulses würde dann die
Sinuswelle genauso beinflussen wie es mit Nulldurchgangserkennung der
Fall ist, oder?

Nein.

Die Nulldurchgangserkennung ist aber sehr einfach zu realisieren.
Man hängt einfach einen Operationsverstärker mit geeigneten
Vorwiderständen und paralleler Diode (in Sperrrichtung der LED) direkt
an die Netzspannung (Diode muss sein, weil sonst die max. Sperrspannung
der LED überschritten würde (und das will man ja nicht)).
Dann nimmt man sich einen 16Bit Timer (TIMER1) und programmiert den so,
das er immer nur zum Wert eines seiner Compare-Register zählt. In dieses
Register kommt ein Wert n, der sich wie Folgt berechnet: n=((1/F_Netz) *
F_Osc)/(Prescaler*2) - 1.
Bei 50Hz Netzfrequenz, Prescaler 8 und 16MHz Quarz wären das also
gerade 1999.
Jetzt hat man einen Timer, der mit einer Frequenz von 50Hz Overflows
produziert. Jetzt nutzt man noch das Signal vom Optokoppler um den
Timer mittels port change Interrupt auf 0 zurückzusetzen.
Jetzt braucht man bloß noch Werte für die Lampenhelligkeit mit dem
Timer zu vergleichen und, wenn der TCNT-Wert größer als der
Helligkeitswert ist, den Triac zünden indem man den Portpin mit dem
jeweiligen Optotriac auf 1 setzt.
Da gegen Ende der Halbwelle ohnehin fast keine Spannung mehr anliegt,
kann man bei z.B. folgenden Block ausführen:
if (TCNT1>1900)

von Andreas Lang (Gast)


Lesenswert?

if (TCNT1>1900)
   {
   PORTx.n=0
   while (TCNT1>1900);
}

Dieser Block schaltet die Ausgänge für die Optotriacs aus und wartet
dann darauf, dass die nächste Halbwelle beginnt.

von Andreas Lang (Gast)


Lesenswert?

muss natürlich heißen n=19999 und if (TCNT1>19900), selbes gilt für die
while-Schleife

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.