4 led rgb quasi random

salve a tutti, da buon appassionato di orgami ho fatto una struttura pligonale di carta in cui volevo inserire alcuni led rgb per renderla colorata in trasparenza da dentro. ho a disposizione 5 rgb ma per una questione di spazio pernsavo di usarne 4. volevo che creassero effetti di luce "random" che lampeggiassero, che andassero in dissolvenza nei vari colori.
esiste un modo "immediato" per farlo o mi devo scrivere pin per pin quello che succede in ogni istante? capite bene che ogni led sono 3 pin e diventa un codice lungo e scocciante per fare una sequenza. ho visto che ad esempio per il cubo di led esiste una libreria apposta, non c'è niente che fa al caso mio?

Andrebbe saputo come vuoi collegare i LED all'Arduino ma, per esperienza, ti dico: evita subito di collegarli direttamente ai pin. In questo modo non hai sufficienti canali PWM per pilotare 4x3=12 linee cromatiche (3 canali cromatici per ognuno dei 4 LED). Usa piuttosto un integrato dedicato, il TLC5940 fa al tuo scopo. Ha 16 canali PWM con 4096 diversi livelli.
Per interfacciarlo esiste un'apposita lib per Arduino, questa:
https://code.google.com/p/tlc5940arduino/

Lo piloti con pochi pin, e necessiti di una unica resistenza per fissare la corrente per tutte le linee di pilotaggio.
Molto pratico. Per accendere un canale di un LED non devi far altro che estrarre un valore casuale e poi spedirlo a quel canale.
Tempo fa ho fatto una lampada con LED RGB, puoi vederne lo schema ed il codice qui:
http://www.leonardomiliani.com/2012/lampada-da-tavolo-con-led-rgb/

Vedrai che ci sono diversi giochi di luce, tra cui alcuni che inviano settaggi random per ognuno dei canali dei LED RGB usati.
E' tutto liberamente usabile, puoi adattare il codice al tuo lavoro :wink:

in relatà usando la libreria softPWM pensavo di sfruttare tutti i 12 pin di arduino e di cavarmela senza integrati, che ne pensate?
ottima l'idea del capacitivo che adesso integrerò nel mio progetto =)=)

Solo che un Arduino puó dare al massimo 200mA in totale su tutte le uscite. Se vuoi pilotare 4 LED RGB non puoi dargli 20mA a ogni colore.
Ciao Uwe

esattamente questa era la seconda questione che volevo porvi...
dato che non ce la fa ad erogare tutta quella correntestavo pensando a degli escamotage, quelli che ho pensato io sono:
-metto un transistor per ogni pin e quindi amplifico ogni corrente uscente dai pin di arduino (secondo me è esagerato però mettere un transistor su ogni pin per fargli erogare 20mA)

  • metto un transistor per ogni colore quindi occupo solo 3 pin di arduino (i led avranno tutti l stesso colore)

ora le domade sono: avete altre idee? se i pin di arduino li collego a piccoli transistor (BC547) posso usare il PWM?

Guarda lo schema in alto a destra nel pdf allegato ... :wink:

Guglielmo

scheda_2.pdf (531 KB)

vi propongo un altro quesito sullo stesso progetto... l'atmega che monto devo ovviamente alimentarlo con una tensione stabilizzata a 5v e uso un 7805 che richiede una tensione in ingresso ovviamente maggiore: minimo 7V. mi conviene comprare un alimentatore apposito da 9 volt e alimentarci sia atmega che i led oppure usare una batteria per l'atmega e un alimentatore banale da 5v per i soli led?

Io avevo il tuo stesso dubbio ma con la necessità di 12V ...
... alimento la strip con l'alimentatore a 12V e ricavo i 5V per Arduino, che mando direttamente su +5v, tramite uno "step-down", che è molto più efficiente (sotto il profilo energetico) del regolatore a bordo di Arduino.

Guglielmo

invece di un alimentatore a 12v io avrei preferito usarne uno da 5v dato che in commercio sono molto comuni per i telefonini allora pensavo:
posso prendere un alimentatore a 5v con cui piloto i led e aggiungerci in serie una batteria da qualche volt (da stabilire) cosi da far arrivare un voltaggio maggiore all'lm7805? se si, la batteria quanto durerebbe? non so distinguere le correnti erogate dalla batteria da quelle erogate dal alimentatore.

posso prendere un alimentatore a 5v con cui piloto i led e aggiungerci in serie una batteria da qualche volt (da stabilire) cosi da far arrivare un voltaggio maggiore all'lm7805?

lascia perdere...

piuttosto, visto che useresti un alimentatore a 5V, cosa ce lo metti a fare un 7805 ?

Hai 5V, usa quelli

ho letto che è rigorosamente necessario avere la tensione stabilizzata e non so se il caricabatterie del telefono che pure offre 5v 1A dia una tensione stabile... come faccio a saperlo?