Hallo, ich suche nach einer einfachen Möglichkeit einen Triac als Phasenanschnittsdimmer zu verwenden. Da der Mikrocontroller nicht nur den Dimmer steuern soll und das Dimmen in vielen Stufen erfolgen soll, scheint es nicht praktikabel zu sein die Steuerung komplett dem µC zu überlassen.* Ich habe bisher allerdings nur einen Hilfsbaustein gefunden: Mouser-Teilenr.: 792-IES5528 Hersteller-Teilenummer: IES5528T Hersteller: Hendon Semiconductors Beschreibung: Triacs Phase Controller - Hat schon jemand Erfahrung mit diesem oder ähnlichen Bausteinen gemacht die er teilen würde? - Kennt jemand Alternativen zu diesem Bauelement? - Wie würde man diesen Baustein einsetzen? Ich vermute Fig.1 aus dem Datenblatt wäre ein guter Anfang, mit VR1 als vom µC geregelters Digital-Poti, ist das korrekt? *Da selbiger µC neben der Phasenanschnittsteuerung noch weitere Dinge tun soll habe ich ein kleines Testprogramm geschieben, das alle 0,1 ms einen Interupt auslöst. Die ISR berechnet daraufhin die aktuelle Zeit, aus der Zeit wird berechnet wie die Ausgänge gesetzt sein müssen (einfache Schaltzeituhr). Die 0,1 ms bedeuten, das der Dimmer bei einer Wechselspannung von 50 Hz 100 verschiedene Werte einstellen kann (das ist natürlich non-linear, nach einer Korrektur der Kurve in Software bleiben deutlich weniger Stufen für eine lineare Ansteuerung übrig). Schon dabei fiel auf, dass der Test-µC (ATtiny2313) bei 4 MHz die Sekunden "zu langsam" anzeigte, mit 8 MHz lief er dann wieder. Da der µC später (geplant: ATMega8) auch noch den Nulldurchgang detektieren muss, ein Display ansteuern, die Temperatur messen (1-Wire Bus) und DCF-77 spielen soll, scheint das nicht praktikabel zu sein.
Du hast den falschen Ansatz. Die Nulldurchgangserkennung kommt an ICP. Jetzt kannst du per durchlaufendem Timer die Zeit zwischen zwei ICP-Interrupts messen und als 100% ansehen. Weiterhin rechnest du deine Verzögerung (bzgl. des gewüunschten Dimmwertes) in Timertakten aus und schreibst das in das OCR Register. Dessen Interrupt setzt dann den Triac, welcher durch den ICP-Int zurückgenommen wird. So entsteht eine PWM, die synchron zum Netz ist. Optional kannst du beim ICP-Int auch den Timerwert auf Null setzen.
Ja, das wäre wohl die "klassische" Art das zu machen. Aber kann ich dann nebenher noch Funkuhr usw. spielen mit dem gleichen µC? Mir wäre es, denke ich, ganz lieb wenn der Controller nicht von überall Interrupts kriegen würde, da man sonst ja wieder aufpassen muss wie sich der Controller vehält wenn er einen Interrupt verpasst weil er gerade in einer ISR steckt. Daher auch die Idee einfach mehrmals pro Sekunde (mit dem Hilfsbaustein würden ja so 100 mal pro Sekunde reichen) die verfügbaren Informationen (Pegel des DCF-Empfangsmoduls, Zustand der Taster, alle paar Minuten oder Sekunden die aktuelle Temperatur) einzulesen und die Zeit und die Werte für die Ausgeänge entsprechend zu setzen. Die Triac-Steuerung in einen eigenen Baustein zu packen halte ich für eine nicht ganz blöde Idee, ebenso kann man ja die Kommunikation per 1-Wire-Bus auslagern in einen Baustein der I2C spricht, letzters Protokoll soll ja relativ einfach sein.
>Daher auch die Idee einfach mehrmals pro Sekunde (mit dem Hilfsbaustein >würden ja so 100 mal pro Sekunde reichen) die verfügbaren Informationen >(Pegel des DCF-Empfangsmoduls, Zustand der Taster, alle paar Minuten >oder Sekunden die aktuelle Temperatur) einzulesen und die Zeit und die >Werte für die Ausgeänge entsprechend zu setzen. Das ist vollkommen korrekt. Sowas macht man zyklisch, zb. per Interrupt alle 10ms. Dazu genügt ein Timer als Zeitbasis. >Die Triac-Steuerung in einen eigenen Baustein zu packen halte ich für >eine nicht ganz blöde Idee, ebenso kann man ja die Kommunikation per >1-Wire-Bus auslagern in einen Baustein der I2C spricht, letzters >Protokoll soll ja relativ einfach sein. Kannst Du. Ist aber Unsinn. Nulldurchgänge gibt es 100Stück pro Sekunde. Das ist für einen uC Langeweile. Also mache es so wie geschrieben.
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.