Gå til innhold

aduino RGB LED vegg


Anbefalte innlegg

hehe ingen som vil sei at d ikke funker eller funker? :p

 

Vet ikke om jeg tør :p

 

Kopierer du SolderLabs veggen bør det fungere som den er, uten å tenke på programmering osv da de jo har lagt det ut på nettet. Men Ikke dermed sagt at det er lett det heller.

 

Utvider du den med 5x flere moduler må du endre litt på programmet eller lage eget. Jeg foreslår å kun endre litt på det ;) Eller dem, det er jo også et "processing" program til PC styring. Eller om du lager en dmx oversetter isteden, hvis du skal ha det.

 

 

Btw, 10 000 LED ben var det (4 pr. LED), eller 10240 dersom du skal ha 2560 LED.

Lenke til kommentar
Videoannonse
Annonse

Forutsatt at SolderLabs veggen fungerer, ja. Men det ser det jo ut som om den gjør.

 

Og ja du må jo ta hensyn til en større "skjerm", mer minne for å holde data og at den blir bredere/høyere.

 

 

F.eks, dersom du bare henger på 5x flere moduler bak, må du bl.a. endre dette (program / kode tatt fra SolderLabs):

 

//Refresh Function - refreshes one ROW each time called (time apprx. 175 µs)
void refresh_leds(void)
{
 unsigned char temp_u;
 unsigned char temp_d;

 //Clear Latch
 Latch_Low;

 for (x = 0; x < 32; x++)
 {

...osv...

 

til

 

//Refresh Function - refreshes one ROW each time called (time apprx. 175 µs)
void refresh_leds(void)
{
 unsigned char temp_u;
 unsigned char temp_d;

 //Clear Latch
 Latch_Low;

 for (x = 0; x < 160; x++)
 {
...osv...

 

Som er kodesnutten som "dytter ut" RGB data til en rad.

 

Hm, oops, her er det antatt at veggen kun blir bredere. Hvis du lager en annen sammensetning må du ta hensyn til det på en måte ved å "dele opp" display ram anderledes. Men det kan evt. gjøres i det processing programmet.

 

Og helt sikkert andre ting.

Lenke til kommentar

Du må vel ha et "ethernet shield".

 

Og så var det å finne ut hvilke inn/utganger som er ledig etter å ha fått på plass det shieldet da.. den bør vel ikke bruke så mange, men jeg aner ikke (aldri brukt ethernet på arduino før heller. Tviler allilkevel på at du har så flaks at den ikke bruker noen av de som brukes til LED-veggen...).

 

Men en løsning kan jo være å ha en egen Arduino til å snakke dmx over ethernet (som er artnet?), og så ha denne til å bare sende data over en serieport til "LED-vegg-Arduino'en". Så slipper du å tenke på å forandre for mye på det programmet (og avlaster den Arduino'en også litt skulle jeg tro).

 

Googler du arduino dmx eller arduino artnet får du jo noen treff.

 

Bl.a. denne. Ser ut som om det er maks 3 "univers" (hva nå det er) til Arduino Mega'en, noe som virker litt lite hvis du har 2560 RGB LED's?`Nå vet jeg ikke helt hvordan dmx fungerer da, men om det er en kanal pr. farge, så holder det jo ikke? Hvis (og her spekulerer jeg bare litt) det er pga. minnet til Atmega 1280'en, kan du kanskje doble det hvis du bruker en Atmega 2560-basert Arduino, men det er fortsatt ikke nok til 3*2560 kanaler..

 

Men kanskje noen med litt mer inngående kunnskap om både dmx og arduino har et bedre svar..

 

 

Forøvrig, en liten selv-korrigering i en av de første postene mine her:

 

Selv har jeg laget 96 RGB LED's på det meste, og jeg brukte slett ikke 216 fargenivåer for å si det sånn.. kan velge da for å eksperimentere litt, men ca 8 om jeg husker rett burde gå, bruker som oftest bare 4 pga FPS'en (4 nivåer ga meg 83.33 Hz, for ca 20 Hz burde 12 nivåer fungere (åltså ikke engang 4 bit oppløsning på PWM - jeg lagret alt i en byte pr farge da.. enkelt men ikke så effektivt - de gjorde sikkert noe mye lurere i tillegg til lagringsmetoden / VRAM). Jeg brukte også skiftregistre, og en stk. atmega 328, men målt i forhold til dette ble det bare blåbær. Og jeg brukte 6 uker på den :p hehe

 

Her hadde jeg en liten brainfart! Blandet sammen antall fargenivåer og antall farger.. Om jeg bruker 12 nivåer, er det jo pr. farge og totalen blir 12^3 = 1728 farger. Men har bare hatt den på 4 nivåer og brukt den av og til som en slags moodlamp eller noe, en gang i blant. Og btw, så brukte jeg omtrent samme metode med shiftregistre som veggen du linker til :) Bare at det som sagt er 96 RGB LED's, og ikke 512, eller 2560...

 

Har sett litt nøyere på SolderLabs sin en-byte-RGB måte, den er ganske smart egentlig! Problemet er jo at når man lagrer RGB som 6 nivåer, blir den ingen "lett" (eller rask) måte å de-komponere fargene tilbake til RGB (for å sende ut til RGB LED'ene). Men de lagrer rett og slett bare fargekomponentene i tre tabeller (LUT_r, LUT_g og LUT_b), hver på 216 elementer. Enkelt og greit egentlig.

Lenke til kommentar
  • 1 måned senere...

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
  • Hvem er aktive   0 medlemmer

    • Ingen innloggede medlemmer aktive
×
×
  • Opprett ny...