Forum: Platinen 16-Bit-PWM-Dimmer für 24V/3,5A-LED-Panels


von Pulsar (Gast)


Angehängte Dateien:

Lesenswert?

Nichts wirklich weltbewegendes, sondern nur der x-te PWM-Dimmer für 
LED-Beleuchtungen - aber als vollständig private Entwicklung frei von 
allen Rechten, und so nach Belieben nachzubauen zu verwenden und 
erweiteren.

Die Eckdaten:

- Zwei 16-Bit-PWM-Kanäle, für jeweils 24 V und 3,5 A.
- PWM-Frequenz: ca. 305 Hz
- Schaltverluste pro Kanal unter 0,25 W
- Ein Schaltausgang für ein dem Panel-Netzgerät vorgeschaltetes SSR
- Steuerung wahlweise per 0-5V-Poti, per Drehencoder oder Tasten
- Zusätzlicher Eingang zum Einspeisen eines FS20-Fernsteuersignales
- Prozssor: ATTINY-44/20MHz
- Rund 1000 Zeilen GCC-Code, unter Eclipse/GCC 4.3.3
- Codegröße ca. 1750 bis 3300 Byte je nach aktivierter Optionen

Die Platinen liegen momentan noch im Ätzwerk - daher bleibt es hier bei 
der Eagle-3D-Ansicht.

Der Prototyp funktioniert mit allen Eingabegeräten inklusive des 
FS20-Funkempfängers und ungeachtet eines wilden frei verdrahteten 
Aufbaus problemlos.

Bitte beachten: Für andere Anwendungen als meine könnte es erforderlich 
sein, bei der Eingangsschutzbeschaltung des AVR (deutlich) mehr Aufwand 
zu betreiben!

Der größten Teil der Softwareentwicklung erfolgte noch vor dem Aufbau 
des Prototypen, unterstützt vom Proteus/ISIS-Simulator. Damit ist es 
möglich, die wesentlichen Teile der Hard- und Software komplett am PC zu 
simulieren. Nicht direkt im Simulator vorhandenen Ein-/Ausgabe-Devices 
gilt es dabei jedoch passend zu ersetzen - bspw. durch Voltmeter zur 
PWM-Anzeige, einem mit FS20-Signalen gefütterten Pattern-Generator, oder 
Up/Down-Zählern als Ersatz für einen im Simulator zwar vorhandenen, aber 
fehlerhaften Rotary-Encoder.

Ach ja - als Rotary-Encoder ich habe im realen Versuchsaufbau einen 
Alps-EC11 mit stabilen Rastpunkten verwendet. Beim Einsatz anderer 
Drehgeber muß der Code ggf. angepasst werden, inklusive der 
Beschleunigungs-Konstanten für eine passable Haptik.

Restlos gefallen hat mir auch noch nicht das Hoch-/Herunterlaufen der 
DIM-Werte über den Autorepeat der FS20-Fernbedienung. Als erste Maßnahme 
habe ich dazu die FS20-DIM-Steps auf +/-3 festelegt (ab Zeile 844 in 
"main.c"). Hier wäre aber wohl eine dynamische Beschleunigung sinnvoller 
(wie sie bereits für den Rotray-Encoder und die lokalen-Up/Down-Tasten 
implementiert ist).

Im Archiv sind die Software, die Eagle-PCB-Daten und eine 
Kurzbeschreibung zum Anschließen der Bedienungselemente, Netzteile und 
der Panels, sowie zur Konfigurieration des Dimmers zu finden.

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.