RGB Matrix aansturen.

Pagina: 1
Acties:
  • 603 views sinds 30-01-2008
  • Reageer

Acties:
  • 0 Henk 'm!

  • MewBie
  • Registratie: April 2002
  • Laatst online: 19:34
Ik ben van plan om een 8x8 Leds RGB matrix te gaan maken, en ben een beetje aan het ontwerpen geslagen. Maar omdat ik niet weet of de uC snel genoeg is, denk het wel, maar 64 ledjes in 3 kleuren is best veel om aan te sturen :P dus dat gaat goed nadenken worden tijdens het proggen :9

Nu wil ik dus kleiner beginnen, zeg 8x1 leds :P om het later uit te kunnen bouwen.
Maar ik zit nu dus met het ontwerp, bij 8 ledjes kan je nog zeggen van: ach ik geen elke kleur van elke led z'n eigen I/O pin, maar als je het uit gaat bouwen heb je een heleboel pinnen nodig 8)7 dan kom je dus al snel op de manier om matrixen aan te sturen, dan heb je ineens nog maar 16 pinnen nodig om het complete matrix in 1 kleur aan te sturen :)

Maar ik wil dus 3 kleuren, dus dat zou betekenen dat ik op die manier 4x8 pinnen nodig heb, en die heb ik niet...
Dus weer verder denken, toen kwam ik op het idee om met 3 pinnen mbv transistoren tussen RGB te schakelen zodat ik nog maar 8+8+3 pinnen nodig heb :)

Ik ben dus tot het volgende ontwerp gekomen:
Afbeeldingslocatie: http://home.hccnet.nl/fam.bastiaan/M/matrixontwerp.jpg
Dit is dus even het schema voor 2 rijen en de eerste 2leds van een rij, weerstanden etc staan er nog niet in, leverd momenteel alleen maar een hoop extra onderdelen op die het extra onoverzichtelijk maken.
Ik wil dus pinnen A1 t/m A8 gebruiken om de rijen te selecteren.
Pinnen A10, 11 en 12 om tussen RGB te switchen
en pinnen A19 t/m A26 om de geselecteerde rij van de nodige data te voorzien.


Gaat dit werken op deze manier? en kan ik zo met 1 rij beginnen en die later uitbreiden?
Zijn er makkelijkere manier?

De uC die ik gebruik is een 68HC11 icm PSD833 (1mbit geheugen en 27 I/O porten waarvan ik er 25 tot mijn beschikking heb)

edit: en nu heb ik zo'n beetje alles geloof ik :P

[ Voor 45% gewijzigd door MewBie op 26-01-2006 12:21 ]

Please leave a message after the beep.
*beeeeep*


Acties:
  • 0 Henk 'm!

  • sebastius
  • Registratie: September 2000
  • Laatst online: 18:31

sebastius

Laten we lekker link gaan doen

Maxim heeft een leuk ICtje voor 8x8 tegels liggen, de MAX6960, de MAX6961, de MAX6962 en de MAX6963. Koppelbaar zodat je ook RGB kunt doen. SPI bus, dus eenvoudig vol te pompen.

www.maxim-ic.com kun je ze vast wel bestellen.

Acties:
  • 0 Henk 'm!

  • MewBie
  • Registratie: April 2002
  • Laatst online: 19:34
sebastius schreef op donderdag 26 januari 2006 @ 12:17:
Maxim heeft een leuk ICtje voor 8x8 tegels liggen, de MAX6960, de MAX6961, de MAX6962 en de MAX6963. Koppelbaar zodat je ook RGB kunt doen. SPI bus, dus eenvoudig vol te pompen.

www.maxim-ic.com kun je ze vast wel bestellen.
Als ik die datasheet doorlees krijg ik het idee dat je dan alsnog een pc of uC nodig hebt om dat ding van data te blijven voorzien. Klopt dat?

[ Voor 4% gewijzigd door MewBie op 26-01-2006 12:49 ]

Please leave a message after the beep.
*beeeeep*


Acties:
  • 0 Henk 'm!

  • dinges
  • Registratie: September 2000
  • Niet online
Waar wil je anders data vandaan halen? :P

PSN: Houtvlot


Acties:
  • 0 Henk 'm!

  • MewBie
  • Registratie: April 2002
  • Laatst online: 19:34
dinges schreef op donderdag 26 januari 2006 @ 12:59:
Waar wil je anders data vandaan halen? :P
Dan kan ik de data net zo goed direct vanuit de uC op de leds weergeven en die uC het rekenwerk laten doen... ;)

Maar misschien hadden die dingen nog ergens wat verborgen geheugen zitten waar de "plaatjes" in opgeslagen worden 8)7

[ Voor 19% gewijzigd door MewBie op 26-01-2006 13:02 ]

Please leave a message after the beep.
*beeeeep*


Acties:
  • 0 Henk 'm!

  • dinges
  • Registratie: September 2000
  • Niet online
Als je de MAX6955/6954 gebruikt kan je 128 individuele LED's aansturen, en die hebben "verborgen geheugen" waar "de plaatjes in opgeslagen worden".
Dus 2 van die dingen, 1 microcontroller. Kan je de microcontroller gebruiken om rekenwerk te doen, en de 6955/6954 om de LED's aan te sturen.

Of ik snap nu compleet fout wat je wilt :P

PSN: Houtvlot


Acties:
  • 0 Henk 'm!

  • MewBie
  • Registratie: April 2002
  • Laatst online: 19:34
dinges schreef op donderdag 26 januari 2006 @ 13:05:
Als je de MAX6955/6954 gebruikt kan je 128 individuele LED's aansturen, en die hebben "verborgen geheugen" waar "de plaatjes in opgeslagen worden".
Dus 2 van die dingen, 1 microcontroller. Kan je de microcontroller gebruiken om rekenwerk te doen, en de 6955/6954 om de LED's aan te sturen.

Of ik snap nu compleet fout wat je wilt :P
Mijn oorspronkelijke plan is om de leds "direct" op de I/O porten aan te sluiten volgens het schema op de TS :) de uC neemt dus ook het werk van de 69xx voor zijn rekening en stuurt dus ook zelf de leds aan.

Mijn vraag was dus ook of het zo gaat werken, de weggelaten weerstanden etc buiten beschouwing gelaten.

[ Voor 12% gewijzigd door MewBie op 26-01-2006 13:13 ]

Please leave a message after the beep.
*beeeeep*


Acties:
  • 0 Henk 'm!

  • naftebakje
  • Registratie: Februari 2002
  • Laatst online: 17-06 15:04
Dat schema lijkt me wel te gaan werken, maar of je processor snel genoeg zal zijn om dat allemaal netjes aan te sturen :? Je moet wel aan 50Hz geraken om de flikkering eruit te krijgen...
Ik moet toch wel sebastius gelijk geven, ik denk ook dat het handiger, beter, en waarschijnlijk goedkoper wordt als je specifieke IC's gebruikt om de ledjes aan te sturen. Daardoor kan je een veel tragere/goedkopere µP gebruiken, en de ledjes zullen refreshed worden op rates die je nooit haalt met een betaalbare µP. Ook kan je 4 beelden in die chips programmeren, zodat er (zonder dat je µP iets moet doen) een animatie van 4 beelden op je matrix kan lopen. Die chip heeft trouwens detectie van kapotte led's, als de led kortgesloten of niet aangesloten is weet die chip dat (kan je uitlezen met je µP).

En als je iets besteld/gesampled hebt bij maxim, krijg je regelmatig van die leuke boekjes met nieuwe chips van Maxim, erg interessant, nietwaar sebastius :+

[ Voor 5% gewijzigd door naftebakje op 26-01-2006 13:54 ]

Als de boer zijn koeien kust, zijn ze jarig wees gerust. Varkens op een landingsbaan, leiden nooit een lang bestaan. Als de boer zich met stront wast, zijn zijn hersens aangetast. Als het hooi is in de schuur, zit het wijf bij den gebuur.


Acties:
  • 0 Henk 'm!

  • sebastius
  • Registratie: September 2000
  • Laatst online: 18:31

sebastius

Laten we lekker link gaan doen

valt het op dat ik die catalogus toevallig vandaag in de bus kreeg? :D

Maar die chipjes zijn erg gaaf, vooral door het stukje geheugen onboard. Volmikken en het speelt. Niks PWM code bedenken, gewoon je plaatje erin pleuren. Ideaal.

Acties:
  • 0 Henk 'm!

  • MewBie
  • Registratie: April 2002
  • Laatst online: 19:34
naftebakje schreef op donderdag 26 januari 2006 @ 13:53:
Dat schema lijkt me wel te gaan werken, maar of je processor snel genoeg zal zijn om dat allemaal netjes aan te sturen :? Je moet wel aan 50Hz geraken om de flikkering eruit te krijgen...
Ik moet toch wel sebastius gelijk geven, ik denk ook dat het handiger, beter, en waarschijnlijk goedkoper wordt als je specifieke IC's gebruikt om de ledjes aan te sturen. Daardoor kan je een veel tragere/goedkopere µP gebruiken, en de ledjes zullen refreshed worden op rates die je nooit haalt met een betaalbare µP. Ook kan je 4 beelden in die chips programmeren, zodat er (zonder dat je µP iets moet doen) een animatie van 4 beelden op je matrix kan lopen. Die chip heeft trouwens detectie van kapotte led's, als de led kortgesloten of niet aangesloten is weet die chip dat (kan je uitlezen met je µP).

En als je iets besteld/gesampled hebt bij maxim, krijg je regelmatig van die leuke boekjes met nieuwe chips van Maxim, erg interessant, nietwaar sebastius :+
De uC heb ik al dus dat is het probleem niet :P en tja, of die snel genoeg is... Is maar 1 manier om achter te komen :P
Wat voor RGB leds heb ik dan nodig? gewoon common cathode toch?

Please leave a message after the beep.
*beeeeep*


Acties:
  • 0 Henk 'm!

  • naftebakje
  • Registratie: Februari 2002
  • Laatst online: 17-06 15:04
KNAP, kathode negatief anode postief
Dus als jij de min (massa) gemeenschappelijk houden, en met de plus schakelen, dan heb je common cathode nodig zoals je zegt.
Oww, ik denk dat ik een probleempje zie, je transistoren zullen zo niet werken. Die in het midden, je hebt onderaan +5V op de collector, bovenaan op de emitter gnd. Als je die transistor wil inschakelen, moet je over de emitter-basis overgang 0.6V hebben. Dus steek je 5V op de basis, maar de uitgang (emitter) zal niet boven de 4.4V uitkomen (0.6V verschil).

[ Voor 53% gewijzigd door naftebakje op 26-01-2006 14:17 ]

Als de boer zijn koeien kust, zijn ze jarig wees gerust. Varkens op een landingsbaan, leiden nooit een lang bestaan. Als de boer zich met stront wast, zijn zijn hersens aangetast. Als het hooi is in de schuur, zit het wijf bij den gebuur.


Acties:
  • 0 Henk 'm!

Anoniem: 16108

Snel of langzaam van de microcontroller is niet het probleem, de DUTY CYCLE waarmee je de LEDs aanzet is het probleem!

Stel dat je 128x3x8 LEDs hebt, waarvan je er steeds maar 8 tegelijk aan kunt sturen. Dat wil dus zeggen dat een LED maar 1/(128x3) deel van de tijd brandt. En als er normaal gesproken 10mA continu door heen moet om een beetje licht te geven, moet er nu dus per LED 10mAx128x3=~3A door heen gejaagd worden... Kan wel... maar is toch niet echt handig...

Vandaar dat "active matrix" al een tijdje geleden is uitgevonden voor LCDs -> TFT

Acties:
  • 0 Henk 'm!

  • MeMoRy
  • Registratie: Augustus 2004
  • Laatst online: 27-05 16:05
3A erdoorheen jagen is wel erg veel, meestal staat piekstoom aangegeven in de datasheets bij de leds.
Gelukkig doen leds het vaak ook bij een lagere stroom: ik heb 20 mA leds die bij 3 mA zelfs nog redelijk branden!

lcd is overigens wel iets heel anders dan led. een active matrix voor een lichtkrant bouwen is nogal veel werk. Wel is het idd een goed idee om iig meer dan 8 leds tegelijk aan te kunnen sturen... liefst zoveel mogelijk. Kijk ook eens naar de 3d led cube topic. Daar sturen we 100 leds tegelijk aan. met 1000 leds is dat dus een dutycycle van 10%.

U vraagt, wij antwoorden.


Acties:
  • 0 Henk 'm!

  • MewBie
  • Registratie: April 2002
  • Laatst online: 19:34
naftebakje schreef op donderdag 26 januari 2006 @ 14:11:
KNAP, kathode negatief anode postief
Dus als jij de min (massa) gemeenschappelijk houden, en met de plus schakelen, dan heb je common cathode nodig zoals je zegt.
The flow of electrons is always from anode–to–cathode outside of the cell or device and from cathode–to–anode inside the cell or device regardless of the cell or device type.

Oftewel de elektronen gaan binnen de led van de cathode naar de anode, de stroom is dus de andere kant op van anode naar cathode, de cathode is dus min, dus common cathode toch? Of maak ik ergens een redeneer fout?
Oww, ik denk dat ik een probleempje zie, je transistoren zullen zo niet werken. Die in het midden, je hebt onderaan +5V op de collector, bovenaan op de emitter gnd. Als je die transistor wil inschakelen, moet je over de emitter-basis overgang 0.6V hebben. Dus steek je 5V op de basis, maar de uitgang (emitter) zal niet boven de 4.4V uitkomen (0.6V verschil).
Die transistoren moet ik nog even precies kijken wat voor soort ik nodig heb en hoe ik ze precies aan moet sluiten, ik dacht dat ik ze zo goed heb aangesloten en dat er maar 4.4V uitkomt maakt toch niet uit :? de leds die het hoogste voltage nodig hebben hebben maar 4.2V nodig ofzo. Maar dat moet ik dus nog even precies uitzoeken. Het idee van de aansturing is toch goed verder?

Please leave a message after the beep.
*beeeeep*


Acties:
  • 0 Henk 'm!

  • MeMoRy
  • Registratie: Augustus 2004
  • Laatst online: 27-05 16:05
Je bent de weerstanden vergeten. Meestal is de spanningsval over de leds niet hetzelfde, dus je hebt altijd weerstanden nodig om alles even fel te laten branden.
Neem bijvoorbeeld deze leds. spanningsval over rood is 1,8 volt, maar over groen en blauw 3,8 volt.
5 volt - 3,8 voor de led - 2*0,6 volt voor de transistoren = 0 volt... is niet netjes, maar zou misschien net werken. Beter ga je over op 12 volt : 12 - 3,8 - 2*0,6=7 volt 7volt/20 ma=350 ohm

Verder moet je uitkijken met teveel leds tegelijk gebruiken met de bc547: die mag maar 200 mA hebben, dat is dus 10 leds.
Bij de 3d ledkubus hebben wij dat opgelost met een mosfet
Afbeeldingslocatie: http://elektron.its.tudelft.nl/~memory/drvschm.jpg
edit:
plaatje even gecorrigeerd

Bovenste gedeelte is dus voor rijselectie en onderste voor het werkelijke aansturen per led.

dat brengt me direct op de voorschakelweerstanden voor de transistoren: vergeet die ook niet. Anders ben je je uC bijna aan het kortsluiten.

[ Voor 20% gewijzigd door MeMoRy op 26-01-2006 17:05 ]

U vraagt, wij antwoorden.


Acties:
  • 0 Henk 'm!

  • naftebakje
  • Registratie: Februari 2002
  • Laatst online: 17-06 15:04
MewBie schreef op donderdag 26 januari 2006 @ 16:17:
[...]

The flow of electrons is always from anode–to–cathode outside of the cell or device and from cathode–to–anode inside the cell or device regardless of the cell or device type.

Oftewel de elektronen gaan binnen de led van de cathode naar de anode, de stroom is dus de andere kant op van anode naar cathode, de cathode is dus min, dus common cathode toch? Of maak ik ergens een redeneer fout?
Om nog eens het stuk van mijn post dat je quote samen te vatten: JA.
Je was juist, ik geef je gelijk, je toont nog eens aan dat je gelijk hebt, laat ons dat dan als afgehandeld beschouwen :+
[...]
Die transistoren moet ik nog even precies kijken wat voor soort ik nodig heb en hoe ik ze precies aan moet sluiten, ik dacht dat ik ze zo goed heb aangesloten en dat er maar 4.4V uitkomt maakt toch niet uit :? de leds die het hoogste voltage nodig hebben hebben maar 4.2V nodig ofzo. Maar dat moet ik dus nog even precies uitzoeken. Het idee van de aansturing is toch goed verder?
Je stookt onnodig warmte in je transistoren als je zo werkt. Maar in principe zal het wel werken. Dat mosfet-idee hierboven is ongetwijfeld beter. Maar dan zit je wel snel weer jaloers te kijken naar het gemak van die maxim chip :D

[ Voor 6% gewijzigd door naftebakje op 26-01-2006 17:01 ]

Als de boer zijn koeien kust, zijn ze jarig wees gerust. Varkens op een landingsbaan, leiden nooit een lang bestaan. Als de boer zich met stront wast, zijn zijn hersens aangetast. Als het hooi is in de schuur, zit het wijf bij den gebuur.


Acties:
  • 0 Henk 'm!

  • MewBie
  • Registratie: April 2002
  • Laatst online: 19:34
MeMoRy schreef op donderdag 26 januari 2006 @ 16:50:
Je bent de weerstanden vergeten. Meestal is de spanningsval over de leds niet hetzelfde, dus je hebt altijd weerstanden nodig om alles even fel te laten branden.
Neem bijvoorbeeld deze leds. spanningsval over rood is 1,8 volt, maar over groen en blauw 3,8 volt.
5 volt - 3,8 voor de led - 2*0,6 volt voor de transistoren = 0 volt... is niet netjes, maar zou misschien net werken. Beter ga je over op 12 volt : 12 - 3,8 - 2*0,6=7 volt 7volt/20 ma=350 ohm

Verder moet je uitkijken met teveel leds tegelijk gebruiken met de bc547: die mag maar 200 mA hebben, dat is dus 10 leds.
Bij de 3d ledkubus hebben wij dat opgelost met een mosfet
[afbeelding]
edit:
plaatje even gecorrigeerd

Bovenste gedeelte is dus voor rijselectie en onderste voor het werkelijke aansturen per led.

dat brengt me direct op de voorschakelweerstanden voor de transistoren: vergeet die ook niet. Anders ben je je uC bijna aan het kortsluiten.
Ik heb ook unregulated 12V tot mijn beschikking via de 64 pins connector 8) komt direct vanuit de adapter die het complete bord van prik voorziet :)
De transistors in het schema zijn alleen maar even als voorbeeld. Ik heb daar nog totaal geen keuze in gemaakt. Het MOSFET idee ga ik even verder onderzoeken.

Please leave a message after the beep.
*beeeeep*


Acties:
  • 0 Henk 'm!

  • MeMoRy
  • Registratie: Augustus 2004
  • Laatst online: 27-05 16:05
edit:
[lamaar]

[ Voor 76% gewijzigd door MeMoRy op 26-01-2006 20:24 ]

U vraagt, wij antwoorden.


Acties:
  • 0 Henk 'm!

  • MewBie
  • Registratie: April 2002
  • Laatst online: 19:34
MeMoRy schreef op donderdag 26 januari 2006 @ 20:22:
unregulated? :? instabiel? 13,8 volt?
Direct vanaf de voeding die het intwikkelbord van stroom voorziet :) zitten dus geen condensatoren enzo tussen.

Please leave a message after the beep.
*beeeeep*


Acties:
  • 0 Henk 'm!

  • MeMoRy
  • Registratie: Augustus 2004
  • Laatst online: 27-05 16:05
als je blijft met 8x8x3, dan kan je het wel met transistoren doen: is goedkoper.
een dutycycle van 1/24 werkt misschien wel...

U vraagt, wij antwoorden.


Acties:
  • 0 Henk 'm!

  • MewBie
  • Registratie: April 2002
  • Laatst online: 19:34
Ik zit alleen net de voeding te bekijken, 12V 300mA :X ook maar een even kijken voor een iets zwaardere :P
1 rij leds trekt al 160mA :P

Please leave a message after the beep.
*beeeeep*


Acties:
  • 0 Henk 'm!

  • MeMoRy
  • Registratie: Augustus 2004
  • Laatst online: 27-05 16:05
Aangezien er maar 1 rij tegelijk brand, zou het dus genoeg moeten zijn.... (het dutycycle verhaal)

[ Voor 4% gewijzigd door MeMoRy op 26-01-2006 23:34 ]

U vraagt, wij antwoorden.


Acties:
  • 0 Henk 'm!

  • MewBie
  • Registratie: April 2002
  • Laatst online: 19:34
MeMoRy schreef op donderdag 26 januari 2006 @ 23:34:
Aangezien er maar 1 rij tegelijk brand, zou het dus genoeg moeten zijn.... (het dutycycle verhaal)
Zwaardere voeding is al geregeld :P Heb nu een 12V 1.5A voeding liggen :P
Dus dat probleem is ook opgelost :)
Ik ga denk ik nog wel even contact opnemen met Elomax voor wat vraagjes betreffende de uC printplaat. Even vragen hoeveel mA het printje kan hebben voordat ik over moet stappen naar de aparta 12V lijn :P
Die ik er dan waarschijnlijk nog extra moet aanleggen ook, aangezien dat spoortje op de print nou ook weer niet zo gek groot is

Please leave a message after the beep.
*beeeeep*


Acties:
  • 0 Henk 'm!

  • multipasser
  • Registratie: Oktober 2001
  • Laatst online: 13-06 00:26

multipasser

Daftpunk Ownz Ya!

Sorry voor de hijack. Maar ik wil Got niet vervuilen met nieuwe topics die eigenlijk 90% te maken hebben met een bestaande.

Mijn vriendin begint een nieuwe zaak en ik wil er met LED verlichting werken.
Vorige maand heb ik bij CocaCola gewerkt en daar hadden ze een 'goedkope' oplossing gevonden voor LED Verlichting. Ipv de dure van kleurveranderende TL-LED buizen hebben zij gewoon een Loop gemaakt van gekleurde LED's in de 3 hoofdkleuren.

Om de 30 cm hebben ze een Rode Groene Blauwe LED tegen elkaar liggen. Deze kon dan met een afstandsbediening (niet nodig voor mij) geregeld worden naar bepaalde presets (kleuren). Dus door Rood en Blauw te mengen kreeg je paars. Het resultaat was super mooi.

Dit wil ik dus ook toepassen in de nieuwe zaak van mijn vriending. Zij gaat in het plafond en in bepaalde nissen verlichting willen plaatsen, die afhankelijk van de klant kan veranderen naar hun lieverlings kleur. :)

Ik heb hieronder getekend zoals het in een rechthoekige nis zou moeten.
Mijn vraag is, hoe moet ik die LEDS aansturen? Wat voor een systeem (het bakje met ?) moet ik daarvoor kopen? Mijn bedoeling is dat je aan de muur 3 draaiknoppen krijg voor elke kleur, zodat je realtime kan mengen.

Afbeeldingslocatie: http://i10.tinypic.com/2n9jhoy.jpg


Elke hulp is welkom.

Een amiga 500 met 512 kb ram !


Acties:
  • 0 Henk 'm!

  • kippy
  • Registratie: September 2004
  • Laatst online: 17-06 14:33
Daar is al een groot lopend topic van

Mijn zelfbouw RGB moodlight

Denk dat je daar meer info kan vinden en kan krijgen dan in dit topic.

Acties:
  • 0 Henk 'm!

  • multipasser
  • Registratie: Oktober 2001
  • Laatst online: 13-06 00:26

multipasser

Daftpunk Ownz Ya!

Thanx. Zoveel hits op LEDS tegenwoordig :))

Een amiga 500 met 512 kb ram !

Pagina: 1