RGBSpot: Unterschied zwischen den Versionen

Aus LaborWiki
Wechseln zu: Navigation, Suche
Keine Bearbeitungszusammenfassung
(Bilder, Reverse Engineering, anderes)
Zeile 21: Zeile 21:
*19.10.2011 Projektidee und Bestellung eines Spots
*19.10.2011 Projektidee und Bestellung eines Spots
*20.10.2011 Definition der Features und Wiki-Eintrag
*20.10.2011 Definition der Features und Wiki-Eintrag
 
*12.11.2011 Orginal Hardware reversed und Layout in Arbeit


'''Es werden noch Mitstreiter gesucht!'''
'''Es werden noch Mitstreiter gesucht!'''
Zeile 28: Zeile 28:
=Features=
=Features=
*3x Konstantstromquellen
*3x Konstantstromquellen
**Ausgangsspannung mindestens 12V für 10W RGB (36V für 30W RGB mit gewähltem Treiber nicht möglich)
**Ausgangsspannung mindestens 12V für 10W RGB (36V für 30W RGB mit gewähltem Treiber ''doch'''möglich, da Spannung an den LEDs abfällt)
** <del>vll 4. Kanal vorsehen für spätere RGBW-Anwendungen?</del>
** <del>vll 4. Kanal vorsehen für spätere RGBW-Anwendungen?</del> (kein Platz)
* PWM mindestens 12Bit
* PWM mindestens 12Bit
** 8 Bit Eingangsdaten
** 8 Bit Eingangsdaten
Zeile 40: Zeile 40:
***Parameterisierung über RS232
***Parameterisierung über RS232
** DMX-Interface
** DMX-Interface
***Startadresse über 9polige DIP-Switches (Wohl zu groß für angepeilte Größe)
***Adresse
****<del>Startadresse über 9polige DIP-Switches</del> (Zu groß für angepeilte Größe)
***Adressenprogrammierung über FB
***Adressenprogrammierung über speziellem DMX-Kanal
***Adressenprogrammierung über UART
***Kanäle
**** Farbkanal 1
**** Farbkanal 2
**** Farbkanal 3
**** Gesamthelligkeit
**** Strobe-Effekt 1-15Hz
**** Animationsvorwahl / Konfig
** IR-Fernbediehnung
** IR-Fernbediehnung
*** mitgelieferte FB
*** mitgelieferte FB
Zeile 46: Zeile 57:
*** vll Lernsystem, Benutzerführung über UART
*** vll Lernsystem, Benutzerführung über UART
* STM32 ARM Cortex M3 Controller  
* STM32 ARM Cortex M3 Controller  
*Baugröße
**passt ins hintere Gehäusefach: 60x40mm
=Die Orginalhardware aus China=
Das Gerät macht auf den ersten Blick einen sehr guten und soliden Eindruck. Die Nachteile zeigen sich erst später bei der Benutzung, Zerlegung und den Messungen, aber dazu später mehr.
Nach dem Öffnen des hinteren Gehäuses kommt das Netzteil zum Vorschein. Das Netzkabel wurde an die Litzen des Netzteils angelötet und die Lötstellen mit Isolierband umwickelt.
'''Ausserdem ist der Schutzleiter nicht mit dem Gehäuse verbunden. Dies bedeutet im Fehlerfall, dass das Gehäuse unter Netzspannung stehen kann!! In diesem Fall ist das nicht so schlimm, das eh kein europäischer Stecker dran ist und das Gerät hier im Orginalzustand nicht in Betrieb gesetzt werden kann.'''
Ausserdem fallen starke Abschürfungen an dem Kabel des IR-Empfängers auf. Die Kabelkanäle zum vorderen Teil des Gehäuses sind auf der Vorderseite nicht entgratet und es sind scharfe Kanten vorhanden, die an der Isolierung des Kabels knabbern.
Im vorderen Teil fällt sofort auf, dass die 10W LED zwar Wärmeleitpaste an der Rückseite hat, jedoch ist sie nicht mit dem Gehäuse verschraubt. Und das obwohl Gewinde vorgesehen sind, deren Anordnung aber mehr zu einer 30W LED passt. Die LED wird hier nur durch die Blende angedrückt. Apropos Blende: Hier hat wohl ein Arbeiter in der Fanrik geschlafen und zwei Blenden übereinander eingebaut.
==Bilder==
<gallery>
Datei:Rgbspot orginal oben.jpg | Gehäuse von Vorne
Datei:Rgbspot orginal seite.jpg| Geöffnetes Gehäuse von der Seite
Datei:Rgbspot orginal gehause hinten.jpg | Gehäusehinterteil geöffnet
Datei:Rgbspot orginal gehause vorne offen.jpg | Vorderer Teil geöffnet
Datei:Rgbspot orginal treiber.jpg | Das Orginal Netzteil
Datei:Rgbspot orginal fb.jpg | Die Fernbedienung
</gallery>
==Etwas reverse Engineering==
[[Datei:Orginal elektronik.jpg|right|thumb|100px| Elektronik]]
Die Elektronik des Spots ist erstaunlich einfach.
Das Netzteil ist ein Konstantstrom-LED-Treiber. Dieser soll aus 85-265V 600mA bei 5-12V machen.
In der Steuerung hängt parallel an diesem Treiber und ein 78L05 versorgt den 8beinigen Mikrocontroller ohne MArkierungen auf dem Gehäuse und den IR-Empfänger. Der Takt wird mit einem 4MHz-Quartz in einem Uhrenquartzgehäuse erzeugt.
Bei der LED handelt es sich um eine typische China 10W LED. Diese zeichnen sich durch die Reihenschaltung von je drei LED-Dies pro Farbe und einer gemeinsam herausgeführten Anode aus.
Der positive Ausgang des Netzteils geht direkt an die Anode der LED. Die Kathoden werden jeweils mit einem Mosfet vom Typ [http://www.irf.com/product-info/datasheets/data/irlr014n.pdf IRLR014 (60V  0,2Ohm  4,9A)] (Orginal IR!) mit dem negativen Ausgang des Netzteils verbunden. Die LEDs sind also alle in Reihe geschaltet. Bei den Farben Grün und Blau führt dies aufgrund der relativ ähnlichen Flusspannung von 10V (Blau) und 10,4V (Grün) zu einer relativ gleichen Stromaufteilung. Die rote LED hingegen hat nur eine Flusspannung von 8V, um trotzdem eine einigermaßen gleichmäßige Stromaufteilung hinzubekommen wurde hier ein 24Ohm Widerstand in Reihe geschaltet.


=Hardware=
Diese Schaltung ist zwar sehr simpel und billig, hat aber einen Riesennachteil. Der typische Strom durch eine LED beträgt 350mA. Ist nun aber nur eine LED eingeschaltet, so bekommt sie fast den gesamten Strom des Netzteils ab. In diesem Fall sind das 500mA, die LED wird also im Grundfarbenmodus stark überlastet. Wenn nun weitere Kanäle gleichzeitig aktiv sind, so teilt sich der Strom auf und die LEDs werden mit weniger Strom betrieben. Die LED erreichen also nicht ihre maximale Helligkeit und von den versprochenen 10W kann man auch nur Träumen..


Bei der PWM-Ansteuerung der einzelnen Kanäle wird auch kein besonderer Aufwand getrieben. Die On-Zeiten der PWM-Zyklen starten auf allen Kanälen gleichzeitig.
In dem Fading-Modus sind öfters mal Glitches in Form von Flackern erkennbar.
Fazit: Im Orginalzustand sollte das Ding nicht benutzt werden
=Die neue Hardware=
==LED-Treiber==
==LED-Treiber==
[http://cds.linear.com/docs/Datasheet/3496ff.pdf '''LT3496''']
[http://cds.linear.com/docs/Datasheet/3496ff.pdf '''LT3496''']
Zeile 62: Zeile 106:


==CPU==
==CPU==
Es soll ein Cortex M3 werden..


STM32F103C8
[http://www.st.com/internet/mcu/product/164476.jsp STM32F103C8]


Auszug:
    ARM 32-bit Cortex™-M3 CPU Core
        72 MHz maximum frequency,1.25 DMIPS/MHz (Dhrystone 2.1) performance at 0 wait state memory access
    Memories
        64 or 128 Kbytes of Flash memory
        20 Kbytes of SRAM
    Clock, reset and supply management
        2.0 to 3.6 V application supply and I/Os
        4-to-16 MHz crystal oscillator
        Internal 8 MHz factory-trimmed RC
        Internal 40 kHz RC
        PLL for CPU clock
        32 kHz oscillator for RTC with calibration
    Low power
        Sleep, Stop and Standby modes
        VBAT supply for RTC and backup registers
    Up to 80 fast I/O ports
        26/37/51/80 I/Os, all mappable on 16 external interrupt vectors and almost all 5 V-tolerant
    Debug mode
        Serial wire debug (SWD) & JTAG interfaces
    7 timers
        Three 16-bit timers, each with up to 4 IC/OC/PWM or pulse counter and quadrature (incremental) encoder input
        16-bit, motor control PWM timer with dead-time generation and emergency stop
        2 watchdog timers (Independent and Window)
        SysTick timer 24-bit downcounter
    Up to 9 communication interfaces
        Up to 2 x I2C interfaces (SMBus/PMBus)
        Up to 3 USARTs (ISO 7816 interface, LIN, IrDA capability, modem control)
        Up to 2 SPIs (18 Mbit/s)
        CAN interface (2.0B Active)
        USB 2.0 full-speed interface


Belegung
Belegung
Zeile 74: Zeile 150:
| PWM-Ausgang R|| Timer 1 OC1|| PB13||
| PWM-Ausgang R|| Timer 1 OC1|| PB13||
|-
|-
| PWM-Ausgang|| Timer 1 OC2|| PB14||
| PWM-Ausgang G|| Timer 1 OC2|| PB14||
|-
|-
| PWM-Ausgang|| Timer 1 OC3|| PB15||
| PWM-Ausgang B|| Timer 1 OC3|| PB15||
|-
|-
| PWM - Shutdown|| GPIO || PB12||
| PWM - Shutdown|| GPIO || PB12||
|-
| UART RX || UART1 || PA10||
|-
| UART TX || UART1 || PA09||
|-
| CAN RX ||  CAN|| PA11 ||
|-
| CAN TX ||  CAN|| PA12 ||
|-
|-


| || || ||
| DMX RX || UART2 RX || PA3 ||
|-
| DMX RX || Timer 2 CH1 || PA0 ||
|-
| DMX RX || Timer 2 CH2 || PA1 ||
|-
| DMX TX || UART2 TX || PA2 ||
|-
| DMX TX || GPIO || PA4 ||
 
|-
| Fernbedienung IN || GPIO || ?? ||
 
|-
|-
| || || ||
| || || ||


|}
|}
=Re=

Version vom 15. November 2011, 22:48 Uhr

Kran
Diese Seite befindet sich noch im Aufbau bzw. wird gerade heftig überarbeitet. Vorsicht: Herumliegende Gedankenfetzen!
Dieser Banner ist hier dokumentiert.
     
rgbspot

Release status: experimental [box doku]

Description 10W LED-Spot mit CAN, DMX und IR-Fernbediehnung
Author(s)  MadEngineer
Last Version  0.0.1
Platform  STM32




Einleitung

Am Abend des 19.10.2011 bin ich zufällig auf die billigen 10W RGB-Spots aus China aufmerksam geworden. Das ganze sieht aus wie ein Baustrahler im einigermaßen wasserdichtem Gehäuse. Preis liegt mit Versand bei erstaunlichen 25$. Nach etwas stellte sich herraus, dass das eine ganz brachbare Grundlage für weitere Entwicklungen ist. Das liegt vor allem an dem stabilen mechanischen Aufbau und der integrierten Kühlung der 10W LED. Diverse Bilder der Innereien aus den unendlichen Weiten des Internetz zeigen, dass es intern aus einem Netzteil und einem PWM-Treiber besteht. Auf diesem PWM-Modul sind drei große Hochlastwiderstände zu sehen. Dies legt den Verdacht nahe, dass hier keine Konststromquellen vorhanden sind.

Aktueller Stand

  • 19.10.2011 Projektidee und Bestellung eines Spots
  • 20.10.2011 Definition der Features und Wiki-Eintrag
  • 12.11.2011 Orginal Hardware reversed und Layout in Arbeit

Es werden noch Mitstreiter gesucht!


Features

  • 3x Konstantstromquellen
    • Ausgangsspannung mindestens 12V für 10W RGB (36V für 30W RGB mit gewähltem Treiber doch'möglich, da Spannung an den LEDs abfällt)
    • vll 4. Kanal vorsehen für spätere RGBW-Anwendungen? (kein Platz)
  • PWM mindestens 12Bit
    • 8 Bit Eingangsdaten
    • Linearisierung des Helligkeitseindrucks über weitere Bits
  • Interfaces
    • CAN-Interface
      • Einbindung in die Labor-Infrastruktur möglich
    • UART-Interface
      • Bootlader über Jumper
      • Parameterisierung über RS232
    • DMX-Interface
      • Adresse
        • Startadresse über 9polige DIP-Switches (Zu groß für angepeilte Größe)
      • Adressenprogrammierung über FB
      • Adressenprogrammierung über speziellem DMX-Kanal
      • Adressenprogrammierung über UART
      • Kanäle
        • Farbkanal 1
        • Farbkanal 2
        • Farbkanal 3
        • Gesamthelligkeit
        • Strobe-Effekt 1-15Hz
        • Animationsvorwahl / Konfig
    • IR-Fernbediehnung
      • mitgelieferte FB
      • eigene FB
      • vll Lernsystem, Benutzerführung über UART
  • STM32 ARM Cortex M3 Controller
  • Baugröße
    • passt ins hintere Gehäusefach: 60x40mm

Die Orginalhardware aus China

Das Gerät macht auf den ersten Blick einen sehr guten und soliden Eindruck. Die Nachteile zeigen sich erst später bei der Benutzung, Zerlegung und den Messungen, aber dazu später mehr. Nach dem Öffnen des hinteren Gehäuses kommt das Netzteil zum Vorschein. Das Netzkabel wurde an die Litzen des Netzteils angelötet und die Lötstellen mit Isolierband umwickelt. Ausserdem ist der Schutzleiter nicht mit dem Gehäuse verbunden. Dies bedeutet im Fehlerfall, dass das Gehäuse unter Netzspannung stehen kann!! In diesem Fall ist das nicht so schlimm, das eh kein europäischer Stecker dran ist und das Gerät hier im Orginalzustand nicht in Betrieb gesetzt werden kann. Ausserdem fallen starke Abschürfungen an dem Kabel des IR-Empfängers auf. Die Kabelkanäle zum vorderen Teil des Gehäuses sind auf der Vorderseite nicht entgratet und es sind scharfe Kanten vorhanden, die an der Isolierung des Kabels knabbern. Im vorderen Teil fällt sofort auf, dass die 10W LED zwar Wärmeleitpaste an der Rückseite hat, jedoch ist sie nicht mit dem Gehäuse verschraubt. Und das obwohl Gewinde vorgesehen sind, deren Anordnung aber mehr zu einer 30W LED passt. Die LED wird hier nur durch die Blende angedrückt. Apropos Blende: Hier hat wohl ein Arbeiter in der Fanrik geschlafen und zwei Blenden übereinander eingebaut.

Bilder

Etwas reverse Engineering

Elektronik

Die Elektronik des Spots ist erstaunlich einfach. Das Netzteil ist ein Konstantstrom-LED-Treiber. Dieser soll aus 85-265V 600mA bei 5-12V machen. In der Steuerung hängt parallel an diesem Treiber und ein 78L05 versorgt den 8beinigen Mikrocontroller ohne MArkierungen auf dem Gehäuse und den IR-Empfänger. Der Takt wird mit einem 4MHz-Quartz in einem Uhrenquartzgehäuse erzeugt. Bei der LED handelt es sich um eine typische China 10W LED. Diese zeichnen sich durch die Reihenschaltung von je drei LED-Dies pro Farbe und einer gemeinsam herausgeführten Anode aus. Der positive Ausgang des Netzteils geht direkt an die Anode der LED. Die Kathoden werden jeweils mit einem Mosfet vom Typ IRLR014 (60V 0,2Ohm 4,9A) (Orginal IR!) mit dem negativen Ausgang des Netzteils verbunden. Die LEDs sind also alle in Reihe geschaltet. Bei den Farben Grün und Blau führt dies aufgrund der relativ ähnlichen Flusspannung von 10V (Blau) und 10,4V (Grün) zu einer relativ gleichen Stromaufteilung. Die rote LED hingegen hat nur eine Flusspannung von 8V, um trotzdem eine einigermaßen gleichmäßige Stromaufteilung hinzubekommen wurde hier ein 24Ohm Widerstand in Reihe geschaltet.

Diese Schaltung ist zwar sehr simpel und billig, hat aber einen Riesennachteil. Der typische Strom durch eine LED beträgt 350mA. Ist nun aber nur eine LED eingeschaltet, so bekommt sie fast den gesamten Strom des Netzteils ab. In diesem Fall sind das 500mA, die LED wird also im Grundfarbenmodus stark überlastet. Wenn nun weitere Kanäle gleichzeitig aktiv sind, so teilt sich der Strom auf und die LEDs werden mit weniger Strom betrieben. Die LED erreichen also nicht ihre maximale Helligkeit und von den versprochenen 10W kann man auch nur Träumen..

Bei der PWM-Ansteuerung der einzelnen Kanäle wird auch kein besonderer Aufwand getrieben. Die On-Zeiten der PWM-Zyklen starten auf allen Kanälen gleichzeitig. In dem Fading-Modus sind öfters mal Glitches in Form von Flackern erkennbar.

Fazit: Im Orginalzustand sollte das Ding nicht benutzt werden

Die neue Hardware

LED-Treiber

LT3496 Features

  • 3 Kanal
  • Dimmbereich 1:3000 ~11,5bit
  • 3 externe PMOS nötig für maximales Dimmverhältnis
  • TSSOP28
  • 2 Stück vorhanden!

Der Treiber wird als Buck-Converter mit gemeinsamer Anode verschaltet und soll einen Strom von 3x 350mA liefern. Die aktuelle Version des Treiberlayouts benötigt eine Grundfläche von 30x33mm.


CPU

STM32F103C8

Auszug:

   ARM 32-bit Cortex™-M3 CPU Core
       72 MHz maximum frequency,1.25 DMIPS/MHz (Dhrystone 2.1) performance at 0 wait state memory access
   Memories
       64 or 128 Kbytes of Flash memory
       20 Kbytes of SRAM
   Clock, reset and supply management
       2.0 to 3.6 V application supply and I/Os
       4-to-16 MHz crystal oscillator
       Internal 8 MHz factory-trimmed RC
       Internal 40 kHz RC
       PLL for CPU clock
       32 kHz oscillator for RTC with calibration
   Low power
       Sleep, Stop and Standby modes
       VBAT supply for RTC and backup registers
   Up to 80 fast I/O ports
       26/37/51/80 I/Os, all mappable on 16 external interrupt vectors and almost all 5 V-tolerant
   Debug mode
       Serial wire debug (SWD) & JTAG interfaces
   7 timers
       Three 16-bit timers, each with up to 4 IC/OC/PWM or pulse counter and quadrature (incremental) encoder input
       16-bit, motor control PWM timer with dead-time generation and emergency stop
       2 watchdog timers (Independent and Window)
       SysTick timer 24-bit downcounter
   Up to 9 communication interfaces
       Up to 2 x I2C interfaces (SMBus/PMBus)
       Up to 3 USARTs (ISO 7816 interface, LIN, IrDA capability, modem control)
       Up to 2 SPIs (18 Mbit/s)
       CAN interface (2.0B Active)
       USB 2.0 full-speed interface


Belegung

- Ressource Pin Bemerkung
PWM-Ausgang R Timer 1 OC1 PB13
PWM-Ausgang G Timer 1 OC2 PB14
PWM-Ausgang B Timer 1 OC3 PB15
PWM - Shutdown GPIO PB12
UART RX UART1 PA10
UART TX UART1 PA09
CAN RX CAN PA11
CAN TX CAN PA12
DMX RX UART2 RX PA3
DMX RX Timer 2 CH1 PA0
DMX RX Timer 2 CH2 PA1
DMX TX UART2 TX PA2
DMX TX GPIO PA4
Fernbedienung IN GPIO ??