Firmware per sistemi HBLED multicanale By Ben Kropf, Applications Engineer, Cypress Semiconductor Corp. and Shone Tran, Product Marketing Engineer, Cypress Semiconductor Corp. Introduzione I LED ad alta luminosità vengono utilizzati sempre più spesso come sorgente luminosa preferita sia nelle applicazioni di illuminazione specialistiche sia in quelle generiche. I progressi della tecnologia LED hanno portato a ottenere valori di lumen per watt decisamente più elevati. Molte migliorie sono state introdotte anche per quanto riguarda dimensioni del package, opzioni di colore, valori di CRI e stabilità di temperatura. I LED garantiscono a tutte le applicazioni di illuminazione caratteristiche di flessibilità, efficienza e intelligenza e proprio per queste ragioni stanno diffondendosi rapidamente. Una tipica applicazione di questi sistemi riguarda l’illuminazione domestica: in tale contesto l’utente è in grado di creare più sfumature di luce bianca o colorata con un solo apparecchio. Questa illuminazione flessibile arricchisce l’esperienza d’uso del consumatore offrendogli un livello di controllo in precedenza impensabile. La flessibilità di questi apparecchi è assicurata da due aspetti molto importanti: la gamma di colori e il numero di colori unici mixabili che l’apparecchio è in grado di generare, caratteristica nota anche con il termine di risoluzione di colore. Per alcune applicazioni gli utenti desiderano una gamma potenziale di colori più ampia possibile. Questo consente all’apparecchi di generare colori più vibranti. La figura 1 mostra un esempio di come possano variare la gamma di colori e la risoluzione di colore di un determinato sistema. Il triangolo e i simboli ‘+’ neri rappresentano un apparecchio di illuminazione con una gamma limitata e un numero ridotto di colori unici mixabili. Il profilo e il simboli ‘+’ bianchi rappresentano un apparecchio con una gamma di colore ampia e un’elevata risoluzione di colore. Gli apparecchi con una gamma di colore più ampia e una risoluzione di colore più elevata sono decisamente più validi. Figura 1. Carta dei profili di colore che riporta due gamme di colore e due risoluzioni di colore differenti Firmware for Multichannel HBLED Systems Published in Selezione di Elettronica Page 1 of 3 May 2009 [+] Feedback Un altro aspetto importante di un apparecchio con luce bianca è il suo “color rendering index” (CRI). Questo è essenzialmente un indice che descrive il livello di gradevolezza del colore e dell’aspetto degli oggetti quando sono illuminati dall’apparecchio. Il CRI è migliore quando un apparecchio emana più lunghezze d’onda luminose uniche per un determinato colore mixato. Ciascuno dei tre aspetti – gamma, risoluzione di colore e CRI – possono essere ottimizzati tenendo conto di un unico fattore di progetto: il numero di canali LED colorati univoci del sistema. Avere più canali LED colorati aumenta esponenzialmente la risoluzione di colore e anche la gamma di colore in quanto i vari colori LED copriranno un’area maggiore dello spazio colore. Utilizzare più lunghezze d’onda di luce per mixare i colori aumenta inoltre il tasso di CRI dell’apparecchio. Negli apparecchi le combinazioni basate su quattro canali di colore sono più che adeguate. Le due combinazioni più comuni sono la RGBA (‘A’ sta per ambra) e la RGBW (‘W’ sta per white, bianco). La combinazione RGBA offre una gamma più ampia rispetto all’RGB o al RGBW, e generalmente permette di dare vita a luce con un buon indice CRI. La combinazione RGBW non dispone di una gamma di colore particolarmente ampia ma offre un buon CRI e dispone del colore primario più utile: il bianco. Il numero di canali non necessariamente deve essere limitato a quattro. Gli apparecchi di illuminazione a LED con cinque, sei o anche sette canali sono talvolta necessari nei sistemi ad alte prestazioni o di fascia top. Benchè i vantaggi di disporre di più canali LED indipendenti siano chiari, vi sono anche alcuni svantaggi, come ad esempio l’ovvia esigenza di una quantità maggiore di hardware (LED e driver) e di un microcontroller embedded con un firmware più complesso. Un questi sistemi, il controller calcola su base continua i livelli di regolazione appropriati necessari per ciascun canale di colore LED. L’uscita di ciascun canale deve essere regolata in modo preciso al fine di garantire il mix richiesto per il colore desiderato. La figura 2 illustra uno schema a blocchi di un sistema multi-channel. Il processore del microcontroller embedded riceve la richiesta per un particolare colore mixato attraverso una rete dati o un’altra interfaccia. Al fine di dare vita al colore mixato il processore deve calcolare i valori di regolazione necessari per ciascun canale LED. Figura 2. Schema a blocchi di un sistema LED multi-channel ad alta luminosità Firmware for Multichannel HBLED Systems Published in Selezione di Elettronica Page 2 of 3 May 2009 [+] Feedback Le specifiche di sistema determineranno il tipo di processo di calcolo necessario. Una domanda importate che merita risposta è: quanti colori unici deve essere in grado di creare l’apparecchio? In altri termini: saranno richiesti tutti i colori della gamma o solo un subset? Ad esempio, per un apparecchio luminoso dove viene richiesta la generazione di sfumature di bianco può essere sufficiente creare un centinaio di colori unici che vanno dal bianco caldo al bianco freddo. In questo caso, è vantaggioso progettare il firmware del microcontroller per calcolare i valori di regolazione ricavandoli da una tabella di look up (LUT). Ciò significa che per ciascun colore mixato unico viene predefinito un set di valori di regolazione immagazzinati in una memoria Flash. Quando il processore riceve un input per un colore mixato, estrae dalla tabella di look up i relativi valori. Questo metodo è molto veloce e semplice. Esso consente anche di preelaborare dei calcoli molto complessi in modo che il microcontroller non sia costretto a svolgere le computazioni in tempo reale. Quando applicabile il metodo LUT è normalmente il migliore. Esso diventa improponibile quando sono richiesti in modo imprevedibile molti colori mixati unici. Per esempio, un sistema di mixing del colore con quattro canali LED e con risoluzione individuale regolabile su 8-bit permette di creare oltre 4 miliardi di colori unici. Per ognuno di questi colori unici la LUT dovrebbe contenere un valore di regolazione a 8-bit per ciascun canale, occupando una memoria da più di 16GB. In generale, un apparecchio dotato di un firmware di mixing basato su LUT può supportare solo la quantità di colori consentita dalle dimensioni della memoria. Per consentire al firmware di generare una mole consistente di colori unici senza utilizzare una LUT gigantesca è necessario utilizzare degli algoritmi di mixing. Un algoritmo è in grado di gestire qualsiasi richiesta in ingresso e calcolando i valori di regolazione che permetteranno di generare il colore mixato indicato. Un algoritmo generico non utilizza una quantità di memoria eccessiva. Però, è più complesso da sviluppare e richiede un tempo di CPU più lungo. Descrivere i dettagli di un algoritmo multichannel complesso di mixing dei colori va al di là degli obiettivi di questo articolo. Per un sistema embedded di mixing dei colori è essenziale scegliere il microcontroller più adatto. La linea EZ-Color di controller per LED ad alta luminosità di Cypress Semiconductor offre molte prestazioni rivolte ai sistemi di mixing. Questi controller possono supportare in modo flessibile la modulazione delle regolazioni dei canali. Un dispositivo può facilmente supportare fino a otto canali di regolazione. Il software di sviluppo Cypress legato ai controller EZ-Color offre inoltre un ampio spettro di codici generabili automaticamente che aiutano lo sviluppo di firmware complesso per sistemi LED ad alta luminosità. In definitiva è meglio utilizzare più canali colore LED in un sistema di mixing quando la qualità della luce o la flessibilità sono aspetti importanti. Quando si progetta il firmware di questi sistemi si può scegliere tra il metodo LUT e gli algoritmi di calcolo, in funzione delle specifiche dell’apparecchio. Cypress Semiconductor 198 Champion Court San Jose, CA 95134-1709 Phone: 408-943-2600 Fax: 408-943-4730 http://www.cypress.com © Cypress Semiconductor Corporation, 2007. The information contained herein is subject to change without notice. Cypress Semiconductor Corporation assumes no responsibility for the use of any circuitry other than circuitry embodied in a Cypress product. Nor does it convey or imply any license under patent or other rights. Cypress products are not warranted nor intended to be used for medical, life support, life saving, critical control or safety applications, unless pursuant to an express written agreement with Cypress. Furthermore, Cypress does not authorize its products for use as critical components in life-support systems where a malfunction or failure may reasonably be expected to result in significant injury to the user. The inclusion of Cypress products in life-support systems application implies that the manufacturer assumes all risk of such use and in doing so indemnifies Cypress against all charges. PSoC Designer™, Programmable System-on-Chip™, and PSoC Express™ are trademarks and PSoC® is a registered trademark of Cypress Semiconductor Corp. All other trademarks or registered trademarks referenced herein are property of the respective corporations. This Source Code (software and/or firmware) is owned by Cypress Semiconductor Corporation (Cypress) and is protected by and subject to worldwide patent protection (United States and foreign), United States copyright laws and international treaty provisions. Cypress hereby grants to licensee a personal, non-exclusive, non-transferable license to copy, use, modify, create derivative works of, and compile the Cypress Source Code and derivative works for the sole purpose of creating custom software and or firmware in support of licensee product to be used only in conjunction with a Cypress integrated circuit as specified in the applicable agreement. Any reproduction, modification, translation, compilation, or representation of this Source Code except as specified above is prohibited without the express written permission of Cypress. Disclaimer: CYPRESS MAKES NO WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, WITH REGARD TO THIS MATERIAL, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. Cypress reserves the right to make changes without further notice to the materials described herein. Cypress does not assume any liability arising out of the application or use of any product or circuit described herein. Cypress does not authorize its products for use as critical components in life-support systems where a malfunction or failure may reasonably be expected to result in significant injury to the user. The inclusion of Cypress’ product in a life-support systems application implies that the manufacturer assumes all risk of such use and in doing so indemnifies Cypress against all charges. Use may be limited by and subject to the applicable Cypress software license agreement. Firmware for Multichannel HBLED Systems Published in Selezione di Elettronica Page 3 of 3 May 2009 [+] Feedback