AC-Dimmer für DIY-Elektronik
TRIAC-AC-Dimmer ermöglichen es einem Mikrocontroller (Arduino, ESP8266, ESP32, STM32, Raspberry Pi), die einem AC-Schaltkreis (110V–600V) zugeführte Leistung zu steuern. Das Prinzip: Phasenanschnittsteuerung synchronisiert mit dem Nulldurchgang der Sinuskurve — je länger die Verzögerung zwischen Nulldurchgang und TRIAC-Zündung, desto weniger Leistung erreicht die Last.
Verfügbare Module
-
AC-Dimmer 1-Kanal, 3.3V/5V, 110V/220V
Standard 4–8 A — für Glühlampen, Halogen, dimmbare LEDs, kleine Motoren.
-
Hochlast-Dimmer 16/24A 600V
Für industrielle Lasten — Heizelemente, große Motoren, Lampenbänke.
Wie funktioniert ein AC-Dimmer?
Im Gegensatz zu einem DC-Dimmer (einfaches PWM) muss ein AC-Dimmer damit umgehen, dass die Spannung 100- oder 120-mal pro Sekunde (50 Hz / 60 Hz) das Vorzeichen wechselt. Die Standardtechnik ist Phasenanschnittsteuerung:
- Ein Nulldurchgangsdetektor erzeugt bei jedem Nulldurchgang einen Impuls
- Der Mikrocontroller startet bei diesem Impuls einen Timer
- Nach einer berechneten Verzögerung (0 bis ~10 ms) zündet er den TRIAC
- Der TRIAC leitet bis zum nächsten Nulldurchgang (automatisches Erlöschen)
Je länger die Verzögerung, desto weniger Sinuswelle erreicht die Last — also weniger Leistung. Verzögerung 0 = 100 % Leistung, Verzögerung 10 ms = 0 % Leistung (bei 50 Hz).
Kompatible vs. inkompatible Lasten
| Kompatibel | NICHT kompatibel |
|---|---|
| Glühlampen | Nicht-dimmbare LEDs |
| Dimmbare LEDs (gekennzeichnet) | Leuchtstoff- / CFL-Lampen |
| Halogenlampen | Geräte mit Schaltnetzteil |
| Heizelemente | DC-Lasten |
| Kleine AC-Induktionsmotoren | Motoren ohne Phasensteuerung |
Sicherheit
Diese Module schalten Netzspannung. Erforderliche Vorsichtsmaßnahmen: AC-Eingangssicherung, geerdetes Gehäuse, ausreichende Kriechstrecke zwischen AC- und Logikseite, Kühlkörper für Ströme > 4 A.
Arduino-Bibliothek
Die RBDdimmer-Bibliothek verwaltet automatisch die Nulldurchgangserkennung und TRIAC-Zündung. Minimalbeispiel:
#include <RBDdimmer.h>
dimmerLamp dimmer(3); // PSM-Pin
void setup() {
dimmer.begin(NORMAL_MODE, ON);
}
void loop() {
dimmer.setPower(75); // 75 % Leistung
delay(1000);
}