Ik ben bezig met een project om zelf een LED Lamp mee te maken.
De bedoeling is deze zowel als moodlight, ambilight en disco-licht te kunnen gebruiken. Ik heb een vrij goede programmeerkennis, maar mijn elektronica-kennis is wat beperkt, daarom hoop ik dat hier wat mensen zijn die mij hierbij wat advies zouden kunnen geven.
Features
De leds hebben we al, alsook de TLC5940 chip, de RS-485 bus transceiver en het Arduino microcontroller-bord.
Bovendien is het al gelukt om de Arduino te laten samenwerken met de TLC5940 en hiermee enkele gewone leds aan te sturen.
Moeilijkheden
De TLC5940 kan maximaal 120mA leveren, terwijl elke led-groep 350mA nodig heeft.
Bovendien heb ik gevonden dat de TLC5940 een 'current sink' is, wat naar het schijnt de aansturing via een transistor zou bemoeilijken.
Ik heb echter de TI ULN2003A gevonden, een chip met 7 transistors met elk een maximale uitgangsspanning van 50V en 500mA uitgangsstroom. Bovendien staat onderaan op de pagina bij 'complementary products' de TLC5940 vermeld. Dit lijkt dus de ideale oplossing. Alleen staat er in de datasheet niet vermeld hoe dit dan aangesloten moet worden, en dit heb ik momenteel ook nog niet gevonden met mijn beperkte elektronica-kennis.
Buiten het schakelen is het natuurlijk ook belangrijk dat de leds zelf met de juiste stroom worden gevoed. Als ik het goed begrijp kan dit gewoon met een weerstand, maar dan verlies je een deel vermogen in de weerstand, afhankelijk van het verschil tussen de voedingsspanning en de spanning over de serie leds. De stroom zal dan ook meer afhangen van de stabiliteit van de voeding, en dus leek een stroomregelaar hiervoor beter.
Ik heb dan de NUD4001 led driver gevonden die hiervoor geschikt leek. Klopt dit en is dit inderdaad de beste oplossing?
Van deze is er dan 1 per geschakelde led-groep nodig als ik het goed begrijp?
Alvast bedankt voor enig advies. Ik hou jullie ook zeker op de hoogte van de vorderingen.
De bedoeling is deze zowel als moodlight, ambilight en disco-licht te kunnen gebruiken. Ik heb een vrij goede programmeerkennis, maar mijn elektronica-kennis is wat beperkt, daarom hoop ik dat hier wat mensen zijn die mij hierbij wat advies zouden kunnen geven.
Features
- Besturing en eventuele instellingen via USB. Dit maakt het eenvoudig om de lamp bijna overal met een computer te kunnen gebruiken
- Besturing via DMX. DMX is een standaard protocol voor disco-verlichting, en maakt het zeer handig om meerdere lampen samen te gebruiken zonder dat afstand een probleem wordt en met een beperkt aantal kabels.
- Besturing via 2 draaiknoppen. 1 voor intensiteit en 1 voor de kleur. Op deze manier kan de lamp ook in de woonkamer gebruikt worden om makkelijk te regelen zonder computer aanwezig
- Besturing via afstandsbediening. Hier zit ik nog over te denken, maar als het eenvoudig en zonder extra kosten mogelijk is lijkt me dit ook wel een leuke toevoeging.
- Hoge lichtopbrengst. Dit wordt bereikt door 1W Leds, en wel zowel R,G,B als wit. De witte leds hebben namelijk een hogere lichtopbrengst, en in de meeste led-oplossingen die ik gezien heb ziet wit als menging van R,G en B er toch nog niet zo goed uit, wat dus hopelijk op deze manier minder problemen oplevert.
- Microcontroller: Hiervoor gebruik ik een Arduino bordje met atmel avr controller. Grote voordeel hiervan is dat je meteen aan de slag kunt en dat je ook ineens usb-ondersteuning hebt.
- Leds: De leds zijn ongeveer 350mA, we hebben gekozen om 3 leds van dezelfde kleur in serie te zetten zodat het met een 12V voeding makkelijk van stroom te voorzien is. Er komen 8 groepen (2 van elke kleur) van 3 leds per lamp. Elke groep is apart door de microcontroller aan te sturen.
- PWM: Door snel de leds aan/uit te pulsen kan de intensiteit geregeld worden. In theorie is dit met de Arduino te regelen in software, maar dan zijn meteen al een heel deel van je kanalen opgebruikt, en door het in software te doen is het een stuk moeilijker om de timing heel exact te houden, zeker tijdens het ontvangen van commando's. Ook om tegelijkertijd intelligentere dingen te doen met de microcontroller (wat automatische loopjes/...) wordt het dan al moeilijker.
Daarom heb ik gekozen om de TI TLC5940 chip hiervoor te gebruiken. Door deze aan te sturen met de hardware-timers op de arduino blijft de klok zeer stabiel. 1 chip heeft 16 uitgangen die elk met 12 bits nauwkeurigheid geregeld kunnen worden. Zelfs als met DMX slechts 8 bits gebruikt worden, is het interessant omdat de microcontroller een functie zou kunnen toepassen zodat de uitgangsintensiteit meer lineair is. - USB: Al aanwezig op de Arduino. Deze gedraagt zich als een COM-poort en is dus in de meeste programmeertalen/operating systems makkelijk aan te sturen. De gebruikte chip is van ftdi, en deze lijken tot nog toe steeds up-to-date te zijn met het leveren van drivers voor diverse besturingssystemen.
- DMX: Om DMX te ontvangen heb ik nog geen concrete voorbeeldcode gevonden. Voor zover ik tot nog toe zie ga ik de SN75176BP chip gebruiken om het elektrisch RS-485 signaal door te geven aan de seriele pinnen van de Atmel processor. Dit betekend wel dat er met een schakelaar gekozen zal moeten worden tussen DMX en USB, maar dat lijkt me niet zo'n probleem.
- Behuizing: PAR-56. Dit is een redelijke standaard behuizing in disco-verlichting, en dus gemakkelijk/goedkoop te verkrijgen. Ik heb momenteel al enkele Eurolite PAR-56 led parren, en het is mogelijk om van achter de zetel bijvoorbeeld toch de woonkamer te verlichten. Het uitzicht doet er dus in dat geval ook voor huiskamer-gebruik niet zo toe.
De leds hebben we al, alsook de TLC5940 chip, de RS-485 bus transceiver en het Arduino microcontroller-bord.
Bovendien is het al gelukt om de Arduino te laten samenwerken met de TLC5940 en hiermee enkele gewone leds aan te sturen.
Moeilijkheden
De TLC5940 kan maximaal 120mA leveren, terwijl elke led-groep 350mA nodig heeft.
Bovendien heb ik gevonden dat de TLC5940 een 'current sink' is, wat naar het schijnt de aansturing via een transistor zou bemoeilijken.
Ik heb echter de TI ULN2003A gevonden, een chip met 7 transistors met elk een maximale uitgangsspanning van 50V en 500mA uitgangsstroom. Bovendien staat onderaan op de pagina bij 'complementary products' de TLC5940 vermeld. Dit lijkt dus de ideale oplossing. Alleen staat er in de datasheet niet vermeld hoe dit dan aangesloten moet worden, en dit heb ik momenteel ook nog niet gevonden met mijn beperkte elektronica-kennis.
Buiten het schakelen is het natuurlijk ook belangrijk dat de leds zelf met de juiste stroom worden gevoed. Als ik het goed begrijp kan dit gewoon met een weerstand, maar dan verlies je een deel vermogen in de weerstand, afhankelijk van het verschil tussen de voedingsspanning en de spanning over de serie leds. De stroom zal dan ook meer afhangen van de stabiliteit van de voeding, en dus leek een stroomregelaar hiervoor beter.
Ik heb dan de NUD4001 led driver gevonden die hiervoor geschikt leek. Klopt dit en is dit inderdaad de beste oplossing?
Van deze is er dan 1 per geschakelde led-groep nodig als ik het goed begrijp?
Alvast bedankt voor enig advies. Ik hou jullie ook zeker op de hoogte van de vorderingen.