PWM foxlight: Unterschied zwischen den Versionen

Aus der Mikrocontroller.net Artikelsammlung, mit Beiträgen verschiedener Autoren (siehe Versionsgeschichte)
Wechseln zu: Navigation, Suche
Keine Bearbeitungszusammenfassung
K (Textersetzung - „<syntaxhighlight>“ durch „</syntaxhighlight>“)
 
(17 dazwischenliegende Versionen von 8 Benutzern werden nicht angezeigt)
Zeile 1: Zeile 1:
Ihr könnt gerne im [http://www.mikrocontroller.net/topic/103863 Forum] (oder auf der Wiki Diskussionsseite) mitreden, ich habe einen Post dazu erstellt:  
Ihr könnt gerne im [http://www.mikrocontroller.net/topic/103863 Forum] (oder auf der Wiki Diskussionsseite) mitreden, ich habe einen Post dazu erstellt:  
*http://www.mikrocontroller.net/topic/103863 - Lampen Diskussion
*http://www.mikrocontroller.net/topic/103863 - Lampen Diskussion
*http://www.mikrocontroller.net/topic/105563 - PWM Hardware Problem
*http://www.mikrocontroller.net/topic/105563 - PWM Hardware Problem  
 
{| cellpadding="2" style="float:right; width:255px; background:#e3e3e3; margin-left:1em; border-spacing:1px;"
{| cellpadding="2" style="float:right; width:255px; background:#e3e3e3; margin-left:1em; border-spacing:1px;"
! colspan="2" | Foto   ''{{PAGENAME}}''
! colspan="2" |  ''{{PAGENAME}}''
|- style="background: #ffffff; text-align: center;"
|- style="background: #ffffff; text-align: center;"
|- style="background: white;"  
|- style="background: white;"  
| align="center" colspan="2" | [[Bild: Foxlight_total1.jpg|180px|a|Seitenansicht der Lampe im derzeitigen Projektstatus]]
| align="center" colspan="2" | [[Bild: Foxlight_logo1.png|280px|a|Seitenansicht der Lampe im derzeitigen Projektstatus]]


|-
|-
Zeile 13: Zeile 12:
! colspan="2" | Basisdaten
! colspan="2" | Basisdaten
|- style="background: #ffffff;"
|- style="background: #ffffff;"
| style="width: 90px;" | Leuchtstärke weiß: || style="width: 150px;"| 15 * 66 Candel
| style="width: 90px;" | Leuchtstärke weiß: || style="width: 150px;"| 66 Candela
|- style="background: #ffffff;"
|- style="background: #ffffff;"
| Leuchtstärke RGB: || á Farbe 12 * ~21.5 Candela
| Leuchtstärke RGB: || pro Farbe 21 Candela
|- style="background: #ffffff;"
|- style="background: #ffffff;"
| Gesamtverbrauch volllast: || ~70 Watt
| Gesamtleistung bei Vollast: || 70 Watt
|- style="background: #ffffff;"
|- style="background: #ffffff;"
|-   
|-   
! colspan="2" | Projektstatus  
! colspan="2" | Projektstatus  
|- style="background: white;"  
|- style="background: white;"  
| colspan="2" | Entstehung; LED-Ansteuerung funktioniert, CAN-im Aufbau, Gehäuse noch fehlend
| colspan="2" | Entstehung; LED-Ansteuerung funktioniert, CAN Funktionsfähig, Gehäuse fehlt noch
|}
|}
__TOC__
__TOC__
Zeile 28: Zeile 27:
Bild:Foxlight_bottom_white.jpg|Ansicht Unterseite white@4%
Bild:Foxlight_bottom_white.jpg|Ansicht Unterseite white@4%
Bild:Foxlight bottom green.jpg|Ansicht Unterseite green@8%
Bild:Foxlight bottom green.jpg|Ansicht Unterseite green@8%
Bild:foxlight_bottom1.jpg|Ansicht Unterseite nach dem Verlöten
Bild:Foxlight_bottom1.jpg|Ansicht Unterseite nach dem Verlöten
Bild:Foxlight_total1.jpg|Totalansicht Version1 ohne Gehäuse
</gallery>
</gallery>
==Anforderungen an das Projekt==
==Anforderungen an das Projekt==
*Die Grundidee war eine Zimmerlampe mit veränderbarem Weißton zu bauen, die noch dazu wenig Energie benötigt
Veränderbar heißt in diesem Fall, eine Verschiebung des Weißtons in Richtung Rötlichem- und Bläulichem-weiß.<br/>


Mit diesen Anforderungen ist meine Wahl auf LEDs gefallen. Anstelle des Kaufs von Weißen, Blauen und Roten LEDs habe ich mich dazu entschieden Weiße und RGB-LEDs zu kaufen (wenn schon, denn schon), was auch gleichzeitig die Möglichkeiten stark erweitert.
Die Grundidee war, eine Zimmerlampe mit veränderbarem Weißton zu bauen, die noch dazu wenig Energie benötigt. Veränderbar heißt in diesem Fall, eine Verschiebung des Weißtons in Richtung rötlichem und bläulichem Weiß.<br/>
*Flexible steuerung der Lampe
 
Wahl ist auf einen [[CAN|CAN-Bus]] gefallen, da diese relativ billig sind und hierzu schon einige Referenzprojekte existieren.
Mit diesen Anforderungen ist meine Wahl auf [[LED]]s gefallen. Anstelle des Kaufs von weißen, blauen und roten LEDs habe ich mich dazu entschieden, weiße und RGB-LEDs zu kaufen (wenn schon, denn schon), was auch gleichzeitig die Möglichkeiten stark erweitert. Das ermöglicht eine flexible Steuerung der Lampe. Die Wahl ist auf den [[CAN|CAN-Bus]] gefallen, da dieser relativ billig ist und hierzu schon einige Referenzprojekte existieren.
 
===Warum selbst bauen===
===Warum selbst bauen===
Schnell erklärt: Vergleichbare Lampen sind erst ab einem vier stelligen Euro Betrag zu haben. <br/>Und einmal ehrlich: Wer hat schon eine Lampe, die man updaten kann? :)


Schnell erklärt: Vergleichbare Lampen sind erst ab einem vierstelligen Eurobetrag zu haben.<br/>
Und einmal ehrlich: Wer hat schon eine Lampe, die man updaten kann? :)


==Bau==
==Bau==
<includeonly>
<includeonly>
===Beim Eigenbau zu beachten===
===Beim Eigenbau zu beachten===
===Dokumentation===
===Dokumentation===
</includeonly>
</includeonly>
===Kosten===
===Kosten===
Die Kosten sind primär abhängig von der Anzahl der LEDs.  
Die Kosten sind primär abhängig von der Anzahl der LEDs.  
LEDs würde ich gleich im dreier Pack kaufen um je drei seriell zu schalten.<br/>
LEDs würde ich gleich im Dreierpack kaufen um jeweils drei seriell zu verschalten.<br/>
Stand Juli 2008: á LED Weiß ~7EUR; á LED RGB ~10EUR<br/>
Stand Juli 2008:
 
*pro LED Weiß ~7EUR
*pro LED RGB ~10EUR<br/>
 
In der Minimalversion mit ein paar LEDs würde ich also schätzen, dass man nicht unter 80EUR davon kommt.
In der Minimalversion mit ein paar LEDs würde ich also schätzen, dass man nicht unter 80EUR davon kommt.
===Probleme===
===Probleme===
#Die ersten Probleme ergaben sich mit der [[Pulsweitenmodulation|PWM]] Pulsung der LEDs, da die LEDs bei verändertem Strom, die Farbtemperatur verändern.
 
#Befestigung der LEDs stellte sich als schwierig heraus, da passende Schrauben schwer zu finden waren und Wärmeleitkleber ein halbes Vermögen kostet.
#Die ersten Probleme ergaben sich bei der Dimmung per [[Konstantstromquelle]], da die LEDs bei verändertem Strom die Farbe verändern. Mit [[PWM]] kann dieser Effekt beseitigt werden.  
#Die Befestigung der LEDs stellte sich als schwierig heraus, da passende Schrauben schwer zu finden waren und Wärmeleitkleber ein halbes Vermögen kostet.


==Allgemeine Eigenschaften==
==Allgemeine Eigenschaften==
[[Bild: Foxlight_layout_chassis1.jpg|180px|thumb|right|Skizze des Gehäuses]]  
[[Bild: Foxlight_layout_chassis1.jpg|180px|thumb|right|Skizze des Gehäuses]]  
===Die LEDs===
===Die LEDs===
Zugegeben sie waren nicht gerade billig, aber sie haben es in sich.  
 
Zugegeben, sie waren nicht gerade billig, aber sie haben es in sich.  
Meine Wahl: [http://www.leds.de/c1293/High_power_LEDs/Seoul_Z-LED_P4_P5.html Seoul-LEDs]
Meine Wahl: [http://www.leds.de/c1293/High_power_LEDs/Seoul_Z-LED_P4_P5.html Seoul-LEDs]
*15 Mal: Weiß Seoul-P4 - á~bis 3Watt - 66 Candela (66156 mcd)
*15 Mal: Weiß Seoul-P4 ~ 3Watt - 66 Candela
*12 Mal: RGB  Seoul-P5 - á~ 1Watt   - 21.5 Candela (21501 mcd)
*12 Mal: RGB  Seoul-P5 ~ 1Watt - 21.5 Candela
 
===Ausführung===
===Ausführung===
LEDs werden auf der Unterseite einer Metallplatte befestigt. Sie strahlen dann auf ein diffusierte (also auf eine trübe) Plexiglas Scheibe.
 
Auf der Oberseite der Metallplatte habe ich kleine (passive) Kühlkörper angebracht, die Kabel heraus geführt sowie die Elektronik vorerst befestigt.
LEDs werden auf der Unterseite einer Metallplatte befestigt. Sie strahlen dann auf eine diffuse Plexiglasscheibe (Milchglas).
Auf der Oberseite der Metallplatte habe ich kleine, passive Kühlkörper angebracht, die Kabel herausgeführt sowie die Elektronik vorerst befestigt.
 
===Farben===
===Farben===
Grundsätzlich kommt derzeit ein abgeändertes [http://de.wikipedia.org/wiki/HSV-Farbraum HSV (to RGB)] Verfahren zum Einsatz. Derzeit ist die Umrechnung (Bei voller Sättigung) auf 255 Farben ausgelegt.<br/>
 
Grundsätzlich kommt derzeit ein abgeändertes [http://de.wikipedia.org/wiki/HSV-Farbraum HSV (to RGB)] Verfahren zum Einsatz. Derzeit ist die Umrechnung bei voller Aussteuerung auf 256 Farben ausgelegt (8 Bit).<br/>
Sprich, die Einstellung der Farben erfolgt über drei Werte: (H)Farbton, (S)Sättigung, (V)Leuchtstärke (Englisch: Hue, Saturation, Value) von 0 bis 255.<br/>
Sprich, die Einstellung der Farben erfolgt über drei Werte: (H)Farbton, (S)Sättigung, (V)Leuchtstärke (Englisch: Hue, Saturation, Value) von 0 bis 255.<br/>
Zusätzlich existiert noch eine Speed Einstellung, die einen Moodlight Effekt erzeugt.
Zusätzlich existiert noch eine Speed Einstellung, die einen Moodlight Effekt erzeugt.


==Projekt Details==
==Projektdetails==
 
===Control Part===
===Control Part===
[[Bild: Foxlight_control_schematic1.png|120px|thumb|right|Control Part]]
[[Bild: Foxlight_control_schematic1.png|120px|thumb|right|Control Part]]
*Via PWM @ Atmega 8 @ 16MhZ
*Via PWM mittels Atmega 8 @ 16MHZ
Um flexibel zu bleiben habe ich linke- und rechte-Seite der Lampe so realisiert, dass man die Farben beider Seiten getrennt voneinander steuern kann.<br/>
Um flexibel zu bleiben habe ich die linke und rechte Seite der Lampe so realisiert, dass man die Farben beider Seiten getrennt voneinander steuern kann.<br/>
Sprich es werden 7 PWM-Ausgänge benötigt, die ich softwaremäßig realisiert habe.
Es werden 7 PWM-Ausgänge benötigt, die ich [[Soft-PWM | softwaremäßig]] realisiert habe.
*Steuerung endgültig via [[CAN|CAN-Bus]] und bis dahin via [[UART|Rs232]].
*Steuerung endgültig via [[CAN|CAN-Bus]] und bis dahin via [[UART|Rs232]].
Derzeit kommt die [http://www.kreatives-chaos.com/artikel/can-testboard CAN-Testplatine] von http://www.kreatives-chaos.com zum Einsatz
Derzeit kommt die [http://www.kreatives-chaos.com/artikel/can-testboard CAN-Testplatine] von http://www.kreatives-chaos.com zum Einsatz


''Achtung:'' Schaltung noch nicht getestet.
''Achtung:'' Schaltung noch nicht getestet.
===Power Part===
===Power Part===
[[Bild: Foxlight_power_schematic1.png|120px|thumb|right|Power Part]]
[[Bild: Foxlight_power_schematic1.png|120px|thumb|right|Power Part]]
Selbst entwickelte Platine mit Hex-FET's Rds(on) = 0.04 Ohm.
Selbst entwickelte Platine mit Hex-FETs, Rds(on) = 40 mOhm.


Ich denke der Power Part ist noch nicht einmal annähernd optimal, funktioniert haber.<br/>
Ich denke der Power Part ist noch nicht einmal annähernd optimal, funktioniert aber.<br/>
Meiner Meinung nach zu verbessernde Punkte:  
Meiner Meinung nach zu verbessernde Punkte:  
*Widerstände aus der Schaltung entfernen (sind als Sicherheitsmaßnahme eingebaut)
*Widerstände aus der Schaltung entfernen (sind als Sicherheitsmaßnahme eingebaut)
*Bessere FET's verwenden, falls vorhanden (diese werden bei Volllast heiß, Rdson=0.04 Ohm)
*Bessere FETs verwenden, falls vorhanden (diese werden bei Volllast heiß, Rdson=0.04Ω)
*Mit Oszi störeinfälle an den Gates der Fet's messen ob vorhanden (Steuerleitungen liegen nahe beisammen)
*Mit Oszi Störeinfälle an den Gates der Fets messen ob vorhanden (Steuerleitungen liegen nahe beisammen)


===Spannungsversorgung===
===Spannungsversorgung===
Die ist derzeit unspektakulärer gelöst, als sich sicherlicht mancher erwartet hätten: Ein AT-Netzteil eines alten Computers kommt zum Einsatz.<br/>
Die ist derzeit unspektakulärer gelöst, als sich sicherlicht mancher erwartet hätten: Ein AT-Netzteil eines alten Computers kommt zum Einsatz.<br/>
In Planung ist ein halogen Trafo mit annähernd 100W
In Planung ist ein Halogentrafo mit annähernd 100W.
 
===TO DOs===


===To-Do's===
*CAN-Implementieren
*Temperaturfühler in der Lampe (LM75 oder ähnliche)
*Temperaturfühler in der Lampe (LM75 oder ähnliche)
**Ev. einen kleinen gesteuerten Lüfter
*[[Platinenherstellung_mit_der_Photo-Positiv-Methode#.C3.84tzen|Ätzen]] der Control Platine
*Erstes [[Platinenherstellung_mit_der_Photo-Positiv-Methode#.C3.84tzen|Ätzen]] der Control Platine
*Gehäuse
*Gehäuse
*Ev. IR-Empfänger implementieren
*Ev. IR-Empfänger implementieren
*Ev. [http://www.mikrocontroller.net/topic/25045 Touch] Funktion einbauen - Lampe mit Berührung ein/aus schalten.
*Ev. [http://www.mikrocontroller.net/topic/25045 Touch] Funktion einbauen - Lampe mit Berührung ein/aus schalten.


==Mein Highlights==
[[Kategorie:AVR-Projekte]]
 
==Meine Highlights==
 
*Ich hatte davor noch nichts mit Lichttechnik zu tun und damit hat mir das Umrechnungsverfahren [http://de.wikipedia.org/wiki/HSV-Farbraum HSV to RGB] besonders gut gefallen.
*Ich hatte davor noch nichts mit Lichttechnik zu tun und damit hat mir das Umrechnungsverfahren [http://de.wikipedia.org/wiki/HSV-Farbraum HSV to RGB] besonders gut gefallen.
*Das ist mein erstes AVR-Projekt
*Das ist mein erstes AVR-Projekt
*Mein erstes Projekt mit BUS Anbindung
*Mein erstes Projekt mit Busanbindung


<includeonly>
<includeonly>
<c>
<syntaxhighlight lang="c">
//Quellcode kommt hier rein
//Quellcode kommt hier rein
</c>
</syntaxhighlight>
</includeonly>
</includeonly>
==Weblinks==
==Weblinks==
*http://www.mikrocontroller.net/topic/87425
*http://www.mikrocontroller.net/topic/87425
*http://www.mikrocontroller.net/topic/54561#433279
*http://www.mikrocontroller.net/topic/54561#433279

Aktuelle Version vom 24. Juni 2013, 11:01 Uhr

Ihr könnt gerne im Forum (oder auf der Wiki Diskussionsseite) mitreden, ich habe einen Post dazu erstellt:

PWM foxlight
Seitenansicht der Lampe im derzeitigen Projektstatus
Basisdaten
Leuchtstärke weiß: 66 Candela
Leuchtstärke RGB: pro Farbe 21 Candela
Gesamtleistung bei Vollast: 70 Watt
Projektstatus
Entstehung; LED-Ansteuerung funktioniert, CAN Funktionsfähig, Gehäuse fehlt noch


Anforderungen an das Projekt

Die Grundidee war, eine Zimmerlampe mit veränderbarem Weißton zu bauen, die noch dazu wenig Energie benötigt. Veränderbar heißt in diesem Fall, eine Verschiebung des Weißtons in Richtung rötlichem und bläulichem Weiß.

Mit diesen Anforderungen ist meine Wahl auf LEDs gefallen. Anstelle des Kaufs von weißen, blauen und roten LEDs habe ich mich dazu entschieden, weiße und RGB-LEDs zu kaufen (wenn schon, denn schon), was auch gleichzeitig die Möglichkeiten stark erweitert. Das ermöglicht eine flexible Steuerung der Lampe. Die Wahl ist auf den CAN-Bus gefallen, da dieser relativ billig ist und hierzu schon einige Referenzprojekte existieren.

Warum selbst bauen

Schnell erklärt: Vergleichbare Lampen sind erst ab einem vierstelligen Eurobetrag zu haben.
Und einmal ehrlich: Wer hat schon eine Lampe, die man updaten kann? :)

Bau

Kosten

Die Kosten sind primär abhängig von der Anzahl der LEDs. LEDs würde ich gleich im Dreierpack kaufen um jeweils drei seriell zu verschalten.
Stand Juli 2008:

  • pro LED Weiß ~7EUR
  • pro LED RGB ~10EUR

In der Minimalversion mit ein paar LEDs würde ich also schätzen, dass man nicht unter 80EUR davon kommt.

Probleme

  1. Die ersten Probleme ergaben sich bei der Dimmung per Konstantstromquelle, da die LEDs bei verändertem Strom die Farbe verändern. Mit PWM kann dieser Effekt beseitigt werden.
  2. Die Befestigung der LEDs stellte sich als schwierig heraus, da passende Schrauben schwer zu finden waren und Wärmeleitkleber ein halbes Vermögen kostet.

Allgemeine Eigenschaften

Skizze des Gehäuses

Die LEDs

Zugegeben, sie waren nicht gerade billig, aber sie haben es in sich. Meine Wahl: Seoul-LEDs

  • 15 Mal: Weiß Seoul-P4 ~ 3Watt - 66 Candela
  • 12 Mal: RGB Seoul-P5 ~ 1Watt - 21.5 Candela

Ausführung

LEDs werden auf der Unterseite einer Metallplatte befestigt. Sie strahlen dann auf eine diffuse Plexiglasscheibe (Milchglas). Auf der Oberseite der Metallplatte habe ich kleine, passive Kühlkörper angebracht, die Kabel herausgeführt sowie die Elektronik vorerst befestigt.

Farben

Grundsätzlich kommt derzeit ein abgeändertes HSV (to RGB) Verfahren zum Einsatz. Derzeit ist die Umrechnung bei voller Aussteuerung auf 256 Farben ausgelegt (8 Bit).
Sprich, die Einstellung der Farben erfolgt über drei Werte: (H)Farbton, (S)Sättigung, (V)Leuchtstärke (Englisch: Hue, Saturation, Value) von 0 bis 255.
Zusätzlich existiert noch eine Speed Einstellung, die einen Moodlight Effekt erzeugt.

Projektdetails

Control Part

Control Part
  • Via PWM mittels Atmega 8 @ 16MHZ

Um flexibel zu bleiben habe ich die linke und rechte Seite der Lampe so realisiert, dass man die Farben beider Seiten getrennt voneinander steuern kann.
Es werden 7 PWM-Ausgänge benötigt, die ich softwaremäßig realisiert habe.

Derzeit kommt die CAN-Testplatine von http://www.kreatives-chaos.com zum Einsatz

Achtung: Schaltung noch nicht getestet.

Power Part

Power Part

Selbst entwickelte Platine mit Hex-FETs, Rds(on) = 40 mOhm.

Ich denke der Power Part ist noch nicht einmal annähernd optimal, funktioniert aber.
Meiner Meinung nach zu verbessernde Punkte:

  • Widerstände aus der Schaltung entfernen (sind als Sicherheitsmaßnahme eingebaut)
  • Bessere FETs verwenden, falls vorhanden (diese werden bei Volllast heiß, Rdson=0.04Ω)
  • Mit Oszi Störeinfälle an den Gates der Fets messen ob vorhanden (Steuerleitungen liegen nahe beisammen)

Spannungsversorgung

Die ist derzeit unspektakulärer gelöst, als sich sicherlicht mancher erwartet hätten: Ein AT-Netzteil eines alten Computers kommt zum Einsatz.
In Planung ist ein Halogentrafo mit annähernd 100W.

TO DOs

  • Temperaturfühler in der Lampe (LM75 oder ähnliche)
  • Ätzen der Control Platine
  • Gehäuse
  • Ev. IR-Empfänger implementieren
  • Ev. Touch Funktion einbauen - Lampe mit Berührung ein/aus schalten.

Meine Highlights

  • Ich hatte davor noch nichts mit Lichttechnik zu tun und damit hat mir das Umrechnungsverfahren HSV to RGB besonders gut gefallen.
  • Das ist mein erstes AVR-Projekt
  • Mein erstes Projekt mit Busanbindung


Weblinks