RGB-lampa

Berätta om dina pågående projekt.
Användarvisningsbild
Argtomte
Inlägg: 243
Blev medlem: 7 april 2008, 22:49:49
Ort: Linköping
Kontakt:

RGB-lampa

Inlägg av Argtomte »

Halloj!

Jag har pysslat ett bra tag med ett miniprojekt nu, och det är nu inne på tredje uppdateringen av hårdvaran. I grunden består det av en 3W RGB-powerLED köpt från dealextreme (1W per kanal), och en IKEA-lampa som jag meckat ur glödlampan ur och stoppat in ny elektronik i. Tanken är att den ska vara fjärrkontrollstyrd, med lite olika finesser.

Här kan man se lampan göra lite färgbytande:



Och här är en bild på den som den ser ut just nu, hängandes på väggen:
IMG_1343_1280x960.jpg
De första versionerna av lampan var/är ganska enkla och inte så jätteintressanta. En ATmega168-processor pulsbreddsmodulerar tre transistorer som driver varsin kanal på lysdioden. IR-mottagare är en liten 38kHz-modul från electrokit som demodulerar signalen och skickar in på ett ben på µC:n.

Version 1.0 (a.k.a fula experimentkort), behöver man inte säga så mycket om, testkoppling på experimentkort:
IMG_1348_1280x960.jpg
Version 2.0, tillverkat kretskort från ITead studio och etsat kort för fjärrkontrollen:
IMG_0583_1280x960.jpg
IMG_1347_1280x960.jpg
IMG_1345_1280x960.jpg
Nytt för v2.0 var förutom de vettigare korten också att jag lade till en potentiometer till fjärrkontrollen för steglös reglering av varje färgkanal, vilket är en ganska skoj feature. Dåligt med lampelektroniken i den här versionen är dels att IR-kommunikationen inte alls är bra (fungerar bara på mindre än en meters avstånd), samt att de resistiva förlusterna i strömbegränsningsmotstånden för de tre kanalerna gör lampan ganska varm. IR-problemet tror jag lätt kan lösas genom att välja ett bättre protokoll för överföringen (just nu har jag ett hemmasnickrat och ogenomtänkt enkelt protokoll med datarate på 1kbit/s med en headersekvens och en databyte efter varandra).

Effektutvecklingen är lite svårare att lösa, och är grunden till varianten jag håller på att utveckla nu. Det logiska alternativet är ju att köra på en switchad drivare med spolar som strömbegränsare, vilket är något jag inte provat på att bygga förut. Det är nog egentligen den lösningen som jag ville starta tråden för, eftersom det blev en rätt trevlig och logisk liten krets.

Den första skissen på en switchad lösning var följande:
pwminductor.png
Den inkluderade enbart hur man borde pyssla ihop dioder, spolar och MOSFET för att få en fungerande krets. Funktionen är enkel, när MOSFETen sluter, ökar strömmen i spolen i princip linjärt (med lite olika derivata beroende på LED-kanal), och när den stängs går strömmen genom schottkydioden och sjunker linjärt.

Problemet här är att välja vettigt sätt att få de tre PWM-styrsignalerna till MOSFETarna. Simulering visade att kretsarna var väldigt känsliga för duty-cycle och skenade iväg mot hundratals mA över spec för dioderna med bara lite för mycket on-tid. En första tanke var att sätta serieresistorer i varje kanal, A/D-omvandla spänningen över dessa, och köra någon slags reglerloop inne i µC:n för att göra strömmen reglerbar från 0-350mA som jag ville. Efter lite snack med en elektronikvän fick jag dock en roligare idé, som efter lite omdesignande och pysslande utmynnade i följande krets (enbart en kanal visas i bilden):
pwmhysteretic3.png
Den fungerar såhär: resistor R2 ger en spänning på 0-175mV för strömmar mellan 0-350mA. En differentiell förstärkare byggd kring U1 omvandlar denna till en single-ended signal på ca 0-2V. Komparatorer U2 och U3 jämför denna spänning med två referensspänningar och slår av/på MOSFETen genom en S/R-vippa. Med andra ord, komparatorerna ser till att strömmen genom lysdioden studsar mellan två värden, ett övre och ett undre värde, som väljs genom två referensspänningarna. Spänningarna fås genom RC-filtrering och spänningsdelning av en PWM-signal från µC:n. Jag är medveten om att det inte är den mest kompakta eller billiga lösningen (jag hittade flera färdiga IC:s från t.ex. National som gör allt det min krets gör i princip), men jag fastnade för den för att den är väldigt logisk i sin funktionalitet, jag tycker om sådana kretsar! Så det blir att testa om den fungerar i verkligheten också.

Kretsen ställer inte särskilt höga krav på komponentval, annat än att OP-amp och komparatorer måste klara av signaler nära jord (vilket både LM324 och LM393 ska göra). Simulering med modeller för komponenterna, visar att kretsen verkar fungera som den ska och är reglerbar mellan ungefär 0-350mA DC-komponent för LED-strömmen.

Här är alltså projektet just nu, version 2.0 hänger tills vidare på väggen och jag väntar på ett nytt färdigCAD:at kort från ITead med den nya switchade idén. Här är en bild på CAD:ritning for kortet:
pwmpcb.png
Du har inte behörighet att öppna de filer som bifogats till detta inlägg.