česky english Vítejte, dnes je čtvrtek 14. listopad 2024

Buzení LED ve vozidlech s 8bitovými mikrokontroléry

DPS 4/2017 | Články
Autor: Kristine Angelica Sumague, Mark Pallones, Microchip Technology

S drsným prostředím, tak jak jej známe např. z řady aplikací v automobilovém průmyslu, se mohou nevyhnutelně pojit chytré a zároveň i spolehlivé budiče LED. Využijeme-li flexibility 8bitového mikrokontroléru, může takové buzení zajistit stálost barevné teploty LED, prodloužit jejich životnost, zlepšit možnosti stmívání, a ještě při tom zajistit bezpečnostní funkce.

S využitím periférií nezávislých na jádru dostupných v rámci mikrokontrolérů, jako je např. PIC16F753 od společnosti Microchip, dokáže napájecí část budiče pracovat v režimu trvalého vedení s pevným kmitočtem a regulovat při tom proud tekoucí diodou na základě řízení v režimu špičkového proudu. Perifériemi nezávislými na jádru se v našem případě stávají generátor COG (Complementary Output Generator), komparátor, kompenzátor SC (Slope Compensator) a operační zesilovač OPA. „Inteligenci“ celého systému pak vyřešíme vzájemnou kombinací s dalšími perifériemi přímo na čipu, např. vstupně výstupními porty IO, referencí FVR (Fixed Voltage Reference), D/A převodníkem, časovači, strukturami CCP (Capture Compare PWM) nebo A/D převodníkem.

Buzení LED ve vozidlech s 8bitovými mikrokontroléry

S touto výbavou již můžeme řešit funkce, jako je např. plně kompenzované řízení špičkového proudu s velkou šířkou pásma, regulace stmívání s PWM, snížení výkonu při teplotě pouzdra +110 °C, ochrana proti zkratu, ochrana pro případ přepólování vstupu či přechodových jevů nebo indikace selhání výstupu.

Topologie SEPIC

Výkonová část budiče LED bude v této aplikaci stavět na měniči typu SEPIC (Single Ended Primary Inductance Converter). Pro aplikace budící LED v automobilovém průmyslu je zmíněná topologie hybridního DC/DC měniče zajímavá právě proto, že umí zajistit regulované výstupní napětí nebo proud, a to i v případech, stoupá-li nebo zase klesá vstupní napájecí napětí nad nebo pod úroveň výstupu.

Pokud tedy napájecí napětí ve vozidle při jeho studeném startu klesne pod napěťovou úroveň LED, případně se po odlehčení zátěže dostane až nad ni, může architektura SEPIC udržet pevný proud tekoucí LED. Stejně tak dokáže SEPIC lépe zvládat i případné zkraty na zátěži. Důvodem je kapacitní vazba oddělující v silové části výstup od vstupu. Při zkratu na výstupu tak zabráníme nejen zničení samotných obvodů, ale předcházíme i možnému požáru.

Princip činnosti obvodu

Na zjednodušeném schématu zapojení budiče LED z obr. 1 bude celý obvod řízen mikrokontrolérem využívajícím své integrované periférie.

Obr. 1 Zjednodušené schéma zapojení budiče LED s topologií SEPIC

Hlavní funkce budiče LED spočívá v udržení výstupního proudu měniče na konstantní úrovni bez ohledu na změny napájecího napětí či ekvivalentního odporu diod. Neměnný proud dodávaný obvody budiče pak umožňuje udržet barevnou teplotu LED. Po přivedení kladného stejnosměrného napětí na vstup budiče LED napětí mikrokontroléru VDD, stabilizované na 5 V obvodem MCP1790, poroste. Je-li VDD dostatečně velké a hodinový kmitočet mikrokontroléru stabilizován, dochází k inicializaci a vzájemnému propojení periférií OPA, ADC, FVR, DAC, CCP1, SC, prvního i druhého komparátoru C, časovače 1 a COG.

Po inicializaci je generátor COG stále zakázán a operační zesilovač OPA konfigurován tak, aby pracoval s jednotkovým zesílením. Firmware vyčkává, dokud A/D převodník ADC nebude vzorkovat požadované vstupní napětí z kanálu AN3. Když pak vstupní napětí dosáhne 7 V, firmware povoluje generátor COG. Stejně tak překonfiguruje operační zesilovač OPA tak, aby změnil svůj invertující vstup na vstupně výstupní pin. Když je již tedy generátor COG aktivní, může dodávat PWM signál ovládající vstup budiče MOSFETu MCP1416 za účelem opakovaného spínání a vypínání tranzistoru Q2.

Podobně jako i v případě jiných topologií měničů nabývá struktura SEPIC v režimu trvalého vedení (Continuous Conduction Mode) ve stabilním provozu dvou stavů na spínací cyklus. Ve stavu „zapnuto“ dostáváme výstup generátoru COG na vysoké úrovni a tranzistor Q2 je sepnut. Pro případ „vypnuto“ bude zase výstup COG na nízké úrovni a tranzistor vypíná.

Stmívání LED s PWM

Jeden ze způsobů jak vyřešit stmívání LED spočívá ve změně proudu tekoucího diodou v propustném směru. Takový typ stmívání však může způsobit změnu barevné teploty LED. Stmívání založené na PWM však udrží proud na konstantní úrovni a barevná teplota se nemění. K rychlému cyklickému zapínání a vypínání diody přitom poslouží signál PWM.

V základním náhledu spínaného budiče LED s PWM dle obr. 2 bude DC/DC měnič přenášet energii na vysokém spínacím kmitočtu a dodávat při tom diodám proud. Příslušným kontrolérem pak sledujeme odvozené napětí na rezistoru Rsense2 snímajícím proud LED a prostřednictvím zpětnovazebních obvodů dále zvyšujeme nebo též snižujeme střídu výstupního PWM signálu řídícího zpět spínač DC/DC měniče. Změnou střídy PWM při zachování linearity udržujeme též konstantní proud LED.

Obr. 2 K principu činnosti stmívání LED s PWM

Ke stmívání pak dochází na základě zapínání a vypínání PWM výstupu kontroléru, a to mnohem pomaleji, než je tomu v případě jeho spínací frekvence. Z hlediska kontroléru může být signál pro stmívání interní nebo též vnější. Dostáváme tak frekvenčně modulovaný PWM výstup aktivující a deaktivující LED. Jas diod, který vnímáme, je tedy úměrný modulované střídě PWM.

Nevýhody a jejich řešení

Přestože zapojení na obr. 2 umožňuje stmívání, musíme zde počítat i se dvěma stinnými stránkami. Na povrch vyplouvají právě při spínání a vypínání LED. První z nich se objevuje spolu s vypnutím diody. V tomto případě kvůli pomalu se vybíjející výstupní kapacitě pozvolna klesá i výstupní proud LED. To pak může vést ke změně barevné teploty a rovněž vyšším ztrátám na diodě.

Druhý nedostatek se bude pojit se zpětnovazebními obvody budiče. Je-li dioda zapnutá, teče přes ni proud a napětí na rezistoru Rsense2 směřuje do zesilovače odchylky EA (Error Amplifier). Když pak LED vypneme, proud nepoteče a ve výsledku na rezistoru dostáváme nulový úbytek napětí. Během fáze stmívání „vypnuto“ se výstup zesilovače EA zvyšuje na své maximum a přetěžuje kompenzační síť zesilovače odchylky. Když pak modulovaný signál PWM opět spíná, zabere zotavení několik cyklů, ve kterých diodě dodáváme vysoké špičkové proudy. Takové proudové překmity však zkracují životnost LED.

Abychom zmíněným nevýhodám předešli, můžeme s využitím firmwaru a dalších součástek navrhnout vylepšenou metodu stmívání. Potřebujeme se vyhnout vlivu pomalu se vybíjejícího výstupního kondenzátoru, a proto mezi řetězec LED a snímací rezistor Rsense2 zařadíme spínač zátěže Q3, přesně jak to vidíme na obr. 3. Máme-li tedy PWM výstup generátoru COG neaktivní, a to s cílem vypnout LED, bude tranzistor Q3 rozpojen, odřízne tím cestu nežádoucímu proudu a umožní diodě rychlejší vypnutí.

Obr. 3 Vylepšené zapojení pro stmívání LED

Vysoký špičkový proud, který se vyskytuje během změny LED ze stavu „vypnuto“ na „zapnuto“, dokážeme zase potlačit na úrovni firmwaru, a to vynucenou odstávkou zesilovače OPA právě při vypnuté LED. Zakázáním operačního zesilovače OPA zcela odpojíme jeho invertující vstup a výstup od univerzálních vstupů a výstupů GPIO ve třetím stavu. To pak znamená, že kompenzační síť bude zcela odpojena od zpětnovazební smyčky, a udržuje si přitom poslední charakteristiku stabilní zpětné vazby v podobě náboje uloženého v kompenzační kapacitě. Když tedy LED opětovně spíná, dochází znovu k zapojení kompenzační sítě a výstupní napětí operačního zesilovače OPA se bezprostředně dostává na dřívější stabilní stav předcházející vypnutí diody, a může tak prakticky okamžitě obnovit nastavenou úroveň proudu LED.

PWM signál řídící spínání tranzistoru Q3 zajišťujeme firmwarově. Softwarové PWM na RA5 spíná tranzistor Q4, čímž řídí hradlo tranzistoru Q3, a může tak zapínat a vypínat LED. Ve skutečnosti tranzistorem Q4 invertujeme PWM výstup vývodu RA5 pro buzení tranzistoru Q3. Bude-li tedy PWM výstup na nízké úrovni, tranzistor Q4 je vypnutý a hradlo Q3 máme staženo k VDD. Tranzistor Q3 tak může vést proud.

Když je tranzistor Q3 aktivní, vytvořila se proudová cesta mezi LED a zemí, proud teče a diody svítí. Změníme-li však úroveň PWM výstupu na vysokou, tranzistor Q4 spíná a hradlo Q3 je nyní stahováno k zemi s cílem přerušit vedení. Když je tranzistor Q3 vypnutý, nemají diody spojení se zemí, a proto zhasínají. V případě vypnutého tranzistoru Q3 bude stejně tak zakázán i výstup generátoru COG. Může tak předejít trvalému zvyšování napětí na výstupu měniče, které by případně spustilo i ochranu OOVP. Kmitočet PWM je zvolen tak, abychom okem nezaznamenali žádné blikání.

Zapínat a vypínat diody znamená nechat na výstupu budiče LED téct proud (na obr. 3 „effective average LED current“), se kterým pak dokážeme vyjádřit i jas diod. Když se pak za účelem řízení jasu LED změní střída signálu PWM z výstupu RA5, logicky to ovlivní i velikost tohoto proudu. Proudovou úroveň dokážeme lineárně měnit stiskem tlačítka SW1 a v rámci celkového rozsahu jasu od 0 až do 100 % přitom využít 25 kroků. Stiskem tlačítka SW1 pak dochází k navýšení jasu přibližně o čtyři procenta na jeden krok. Po dosažení maximálního poměru 100 % bude další stisk tlačítka pro stmívání znamenat opět nulu – vypnuto.

Závěr

Uvážíme-li flexibilitu mikrokontroléru PIC16F753, dokážeme navrhnout budič LED se schopností udržet barevnou teplotu diod, prodloužit jejich životnost, vylepšíme možnosti stmívání, a ještě k tomu využijeme i bezpečnostních prvků. V rámci náročných podmínek automobilového průmyslu jsme tak právě vyřešili „inteligentní“ a zároveň spolehlivé buzení LED.