Hallöli,
wie schon angekündig, hier das Thema als Teilprojekt zu meiner "ferngesteuerten" Holzdecke.
In unserem Wohnzimmer möchten wir in der Holzdecke verschiedene Beleuchtungselemente wie z.B. Sternenhimmel, Beleuchtung über den Tischen, Durchgangsbeleuchtung, Dimmbare Lichzeilen und Spots für Wandbilder realisieren.
Da ich die Haltbarkeit von Hochvolt-Halogen für sehr fragwürdig halte und sich bisher alle meine Hochvolt-Halogen-Leuchtkörper mit Knall, Blitz und Getöse, gefolgt von umherfliegenden heißen Glassplittern und geflogenen Sicherungen verabschiedet haben, haben wir entschieden ganz normale Niedervolt-Halogen einzusetzen.
Nun habe ich vor geraumer zeit ja schon mein Projekt Dimmer vorgestellt. Dieser arbeitete aber mit Phasenanschnitt welcher für elektronische Trafos ungeeignet ist, ja sogar zur Zerstörung entweder des Dimmers oder der Trafos führt.
Hier heißt die Lösung: Phasenabschnittdimmung
Und darum soll es in diesem Abschnitt gehen.
Es gibt je nach Last verschiedene Arten der Dimmung. Bei Glüh- und Hochvolt-Halogenlampen (230 V) sowie bei konventionellen Transformatoren wird mit einer Phasenanschnittsteuerung gedimmt. Diese Verbraucher haben eine ohmsche oder eine induktive Last.
Für kapazitive Lasten sind Phasenanschnittsteuerungen wegen des plötzlichen Spannungsanstiegs nicht geeignet (es würde ein extrem hoher Strom fließen), dafür werden Phasenabschnittsteuerungen eingesetzt. Hingegen sind Phasenabschnittsteuerungen nicht für induktive Lasten geeignet (Spannungsspitze beim Abschalten des Stromes).
Bei der Phasenabschnittsteuerung wird der Strom nach dem Nulldurchgang sofort eingeschaltet, und noch vor dem nächsten Nulldurchgang ausgeschaltet. Der Schaltungsaufwand ist gegenüber der Phasenanschnittsteuerung höher; es müssen entweder abschaltbare Thyristoren (GTO-Thyristor) oder (Power-MOSFET) resp. IGBT-Transistoren verwendet werden, und auch die Steuerungselektronik ist aufwändiger.
Ich habe mich für die Verwendung eines IGBT's entschieden, da mittels IGBT und steuerbarem Stromverlauf auf eine Entstördrossel (Induktivität) verzichtet werden kann. Der Vorteil hierbei ist, der Trafo "singt" nicht.
Sooooo.....
Die hier vorgestellt Schaltung besteht aus zwei Teilen:
[1] Nulldurchgangserkennung
[2] Phasenabschnittdimmer
Zu [1]:
Um den exakten Einschaltzeitpunkt zu bestimmen, ist ein Nulldurchgangsdetektor unumgänglich. Dieser Detektor besteht aus einem (vom Netzteil unabhängigen) Gleichrichter, einem Optokoppler 4N25 und zwei Schmitt-Triggern. Die im 100-Hz-Takt pulsierende gleichgerichtete Spannung hinter der Gleichrichterbrücke sorgt dafür, dass der Optokoppler bei jedem Nulldurchgang der Netzspannung kurzzeitig sperrt. In dieser Zeit liegen am Kollektor des Opto-Transistors +5 V, ansonsten 0 V. Dieses Signal – von den Schmitt-Triggern mit eindeutigen und steilen Flanken versehen - nutzt der Mikrocontroller, um die Software mit der Netzspannung zu synchronisieren.
Der Impuls für die Nulldurchgangserkennung kommt jedoch ohne zusätzliche künstliche Verzögerung bereits ca. 150-200 µsec vor dem eigentlichen Nulldurchgang. Bei einer Phasenanschnittsteuerung spielt dieses Verhalten keine Rolle. Indes bei einer Phasenabschnittsteuerung schon, das sofort nach dem Nulldurchgang der MOS_FET oder IGBT geschaltet werden muss.
Um das saubere Schalten zu ermöglichen wird der Nulldurchgang mittels R-C-Glied um die Zeitspanne von ca. 150µsec verzögert. Dies ist mittels nachgeschaltetem Schmitt-Trigger leicht möglich.
Den Schaltplan zur Nulldurchgangserkennung befindet sich Anhang.
Zu [2]:
Nach der Erkennung eines Nulldurchgangs wird sofort der IGBT eingeschaltet und ein Timer fängt an zu zählen, bis zu der gewünschten Zeit, an der IGBT abgeschaltet werden soll. Die Schaltung des IGBT erfolgt über einen speziellen galvanisch getrennten Treiberbaustein.
Die Programmierung der möglichen Zündzeit von max. 10 ms erfolgt in 32 Einzelschritten (Helligkeitsstufen) damit eine scheinbare stufenlose Dimmung ermöglicht wird. Der Zeitraum von 10 ms wird in 100 Stützstellen aufgeteilt. Eine Umsetzung der 32 Einzelschritte auf die Stüzstellen erfolgt über eine Tabelle.
Mit Hilfe eines externen Interrupts wird in der SW der Nulldurchgang der Sinuswelle detektiert. Dieser „Detektions“-Interrupt startet einer Timer welcher mit dem Dimmungswert zwischen 0 und 10ms geladen ist. Gleichzei-tig wird der IGBT sofort durchgeschaltet.
Ist der Timer abgelaufen (= Auslösen des Timer-Interrupts) wird der IGBT wieder gesperrt. Das Schalten des IGBT mittels Treiberbaustein zum entsprechenden Zeitpunkt nach dem letzten Nulldurchgang geschieht durch Setzen/Rücksetzen des entsprechenden Bits PortD.4.
Der Kontroller wird mit diesem Verfahren nicht signifikant belastet. Die komplette Dimmungssteuerung erfolgt über diesen Mechanismus.
Da der Timer als bottom-up Timer umgesetzt ist und bei einem Überlauf einen Interrupt erzeugt werden nicht die Zahlenwerte im Counterregister in die Datenstruktur eingetragen sondern die zugehörigen Einerkomplemen-te (255 - Counterregister). Dies wir in der SW entsprechend berücksichtigt.
Auch der Schaltplan befindet sich im Anhang.
Was gibt es nun von mir:
- ein ZIP-File mit BASCOM Sourcecode und Eagle-Dateien
- Bilder des Lochrasteraufbaus
- Bilder beider Schaltpläne als GIF
Und los gehts ......
.... halt, noch was. Wir haben es hier mit 230V~ Spannung zu tun. Spannungen ab 50V können tödlich sein! Soll heißen, jeder der das Ding nachbau sollte wissen was er tut. Wir alle distanzieren uns von eventuellen Schäden die durch den Gebrauch oder Missbrauch dieses Konzepts entstehen. Eltern haften für Ihre Kinder.
.... so aber nun los, mir hat es Spass gemacht
Grüße,
Markus
wie schon angekündig, hier das Thema als Teilprojekt zu meiner "ferngesteuerten" Holzdecke.
In unserem Wohnzimmer möchten wir in der Holzdecke verschiedene Beleuchtungselemente wie z.B. Sternenhimmel, Beleuchtung über den Tischen, Durchgangsbeleuchtung, Dimmbare Lichzeilen und Spots für Wandbilder realisieren.
Da ich die Haltbarkeit von Hochvolt-Halogen für sehr fragwürdig halte und sich bisher alle meine Hochvolt-Halogen-Leuchtkörper mit Knall, Blitz und Getöse, gefolgt von umherfliegenden heißen Glassplittern und geflogenen Sicherungen verabschiedet haben, haben wir entschieden ganz normale Niedervolt-Halogen einzusetzen.
Nun habe ich vor geraumer zeit ja schon mein Projekt Dimmer vorgestellt. Dieser arbeitete aber mit Phasenanschnitt welcher für elektronische Trafos ungeeignet ist, ja sogar zur Zerstörung entweder des Dimmers oder der Trafos führt.
Hier heißt die Lösung: Phasenabschnittdimmung
Und darum soll es in diesem Abschnitt gehen.
Es gibt je nach Last verschiedene Arten der Dimmung. Bei Glüh- und Hochvolt-Halogenlampen (230 V) sowie bei konventionellen Transformatoren wird mit einer Phasenanschnittsteuerung gedimmt. Diese Verbraucher haben eine ohmsche oder eine induktive Last.
Für kapazitive Lasten sind Phasenanschnittsteuerungen wegen des plötzlichen Spannungsanstiegs nicht geeignet (es würde ein extrem hoher Strom fließen), dafür werden Phasenabschnittsteuerungen eingesetzt. Hingegen sind Phasenabschnittsteuerungen nicht für induktive Lasten geeignet (Spannungsspitze beim Abschalten des Stromes).
Bei der Phasenabschnittsteuerung wird der Strom nach dem Nulldurchgang sofort eingeschaltet, und noch vor dem nächsten Nulldurchgang ausgeschaltet. Der Schaltungsaufwand ist gegenüber der Phasenanschnittsteuerung höher; es müssen entweder abschaltbare Thyristoren (GTO-Thyristor) oder (Power-MOSFET) resp. IGBT-Transistoren verwendet werden, und auch die Steuerungselektronik ist aufwändiger.
Ich habe mich für die Verwendung eines IGBT's entschieden, da mittels IGBT und steuerbarem Stromverlauf auf eine Entstördrossel (Induktivität) verzichtet werden kann. Der Vorteil hierbei ist, der Trafo "singt" nicht.
Sooooo.....
Die hier vorgestellt Schaltung besteht aus zwei Teilen:
[1] Nulldurchgangserkennung
[2] Phasenabschnittdimmer
Zu [1]:
Um den exakten Einschaltzeitpunkt zu bestimmen, ist ein Nulldurchgangsdetektor unumgänglich. Dieser Detektor besteht aus einem (vom Netzteil unabhängigen) Gleichrichter, einem Optokoppler 4N25 und zwei Schmitt-Triggern. Die im 100-Hz-Takt pulsierende gleichgerichtete Spannung hinter der Gleichrichterbrücke sorgt dafür, dass der Optokoppler bei jedem Nulldurchgang der Netzspannung kurzzeitig sperrt. In dieser Zeit liegen am Kollektor des Opto-Transistors +5 V, ansonsten 0 V. Dieses Signal – von den Schmitt-Triggern mit eindeutigen und steilen Flanken versehen - nutzt der Mikrocontroller, um die Software mit der Netzspannung zu synchronisieren.
Der Impuls für die Nulldurchgangserkennung kommt jedoch ohne zusätzliche künstliche Verzögerung bereits ca. 150-200 µsec vor dem eigentlichen Nulldurchgang. Bei einer Phasenanschnittsteuerung spielt dieses Verhalten keine Rolle. Indes bei einer Phasenabschnittsteuerung schon, das sofort nach dem Nulldurchgang der MOS_FET oder IGBT geschaltet werden muss.
Um das saubere Schalten zu ermöglichen wird der Nulldurchgang mittels R-C-Glied um die Zeitspanne von ca. 150µsec verzögert. Dies ist mittels nachgeschaltetem Schmitt-Trigger leicht möglich.
Den Schaltplan zur Nulldurchgangserkennung befindet sich Anhang.
Zu [2]:
Nach der Erkennung eines Nulldurchgangs wird sofort der IGBT eingeschaltet und ein Timer fängt an zu zählen, bis zu der gewünschten Zeit, an der IGBT abgeschaltet werden soll. Die Schaltung des IGBT erfolgt über einen speziellen galvanisch getrennten Treiberbaustein.
Die Programmierung der möglichen Zündzeit von max. 10 ms erfolgt in 32 Einzelschritten (Helligkeitsstufen) damit eine scheinbare stufenlose Dimmung ermöglicht wird. Der Zeitraum von 10 ms wird in 100 Stützstellen aufgeteilt. Eine Umsetzung der 32 Einzelschritte auf die Stüzstellen erfolgt über eine Tabelle.
Mit Hilfe eines externen Interrupts wird in der SW der Nulldurchgang der Sinuswelle detektiert. Dieser „Detektions“-Interrupt startet einer Timer welcher mit dem Dimmungswert zwischen 0 und 10ms geladen ist. Gleichzei-tig wird der IGBT sofort durchgeschaltet.
Ist der Timer abgelaufen (= Auslösen des Timer-Interrupts) wird der IGBT wieder gesperrt. Das Schalten des IGBT mittels Treiberbaustein zum entsprechenden Zeitpunkt nach dem letzten Nulldurchgang geschieht durch Setzen/Rücksetzen des entsprechenden Bits PortD.4.
Der Kontroller wird mit diesem Verfahren nicht signifikant belastet. Die komplette Dimmungssteuerung erfolgt über diesen Mechanismus.
Da der Timer als bottom-up Timer umgesetzt ist und bei einem Überlauf einen Interrupt erzeugt werden nicht die Zahlenwerte im Counterregister in die Datenstruktur eingetragen sondern die zugehörigen Einerkomplemen-te (255 - Counterregister). Dies wir in der SW entsprechend berücksichtigt.
Auch der Schaltplan befindet sich im Anhang.
Was gibt es nun von mir:
- ein ZIP-File mit BASCOM Sourcecode und Eagle-Dateien
- Bilder des Lochrasteraufbaus
- Bilder beider Schaltpläne als GIF
Und los gehts ......
.... halt, noch was. Wir haben es hier mit 230V~ Spannung zu tun. Spannungen ab 50V können tödlich sein! Soll heißen, jeder der das Ding nachbau sollte wissen was er tut. Wir alle distanzieren uns von eventuellen Schäden die durch den Gebrauch oder Missbrauch dieses Konzepts entstehen. Eltern haften für Ihre Kinder.
.... so aber nun los, mir hat es Spass gemacht
Grüße,
Markus