Lightning clouds

Salve!
Prendendo spunto da questo instructables volevo ampliarlo aggiungendo altre nuvole in modo da riempire quasi completamente un soffitto.
Lì vengono usati 4 led neopixel, su aliexpress ho trovato uno stock di ws2812b a poco più di 10€.
Supponiamo di usare 50led, questi lavorano a 5v e assorbono max 60mA (PSU esterna).

Il dubbio è su quale microcontrollore usare. Ho un Arduino UNO ma lavorando su breadboard non voglio lasciarlo su.

Nessuna idea?
Il codice lo capisco ma di microcontrollori.... Son na capra.

Vorrei capire con cosa posso fare questo progetto spendendo il minimo e con la possibilità di essere ampliato in futuro, magari con un modulo bluetooth.

Grazie!

CallMeSir:
Il dubbio è su quale microcontrollore usare. Ho un Arduino UNO ma lavorando su breadboard non voglio lasciarlo su.

Cioè ? Se vuoi fare un buon lavoro, ti conviene fare un PCB con sopra la MCU Atmel 328 (quella di Arduino Uno), cerca Arduino standalone.
Oppure optare per un Arduino più piccolo come dimensione tipo Arduino Nano o Arduino Mini Pro.
A parte l'alimentazione dei led (se son numerosi dovrai alimentarli NON da Arduino), i led stessi si pilotano con una libreria per ws2812 e quindi è un progetto ampliabile a piacimento.

Qui quello che dice Adafruit sull'alimentazione di molti neopixel (in inglese):

I WS2812 vanno collegati tutti in sequenza, e pilotati con un solo pin ... non so quale sia il massimo numero di chip pilotabile in modo decente con Arduino, ma 50 dovrebbe poterli pilotare senza troppi problemi ...

L'unico problema invece potrebbe dartelo l'alimentazione ... 50 led alla massima luminosita' potrebbero assorbire anche 3A o piu, quindi sarebbe piu prudente sdoppiare i fili dell'alimentazione, collegandoli in 3 o 4 punti diversi, invece che solo ad una estremita' della serie (il filo dei dati invece va per forza collegato in una serie unica)

La questione alimentazione è ok, ovvero, assorbono ciascuno 0,06A (bianco), quindi per 50led saliamo a 3A. Con un alimentatore esterno 5V sovradimensionato sono in bolla :slight_smile:
L'unico dubbio che potrei avere è se collegare l'alimentazione in più punti, oppure alle due estremità.

Il problema è trovare una board ampliabile ed economica che mi permetta di pilotare senza problemi di timing e bus 50(o più?) led (sono fuori dal giro da molto tempo).

CallMeSir:
... una board ampliabile ...

Per che cosa, scusa ? ... la serie di WS2812 si pilota con un solo pin, indipendentemente dalla sua lunghezza ...

Per l'alimentazione, meglio alle due estremita' ed anche a meta' serie, cosi sei sicuro (ed usando sezioni adeguate alla corrente ;))

Etemenanki:
Per che cosa, scusa ? … la serie di WS2812 si pilota con un solo pin, indipendentemente dalla sua lunghezza …

Per l’alimentazione, meglio alle due estremita’ ed anche a meta’ serie, cosi sei sicuro (ed usando sezioni adeguate alla corrente ;))

Una board ampliabile tramite shield bt oppure con sensore IR in modo da usare un telecomando, insomma, che possa impostare vari effetti e selezionare quello che più mi aggrada senza dovermi collegare sempre.

Uhm ... non sono un programmatore, quindi ti serve un parere piu autorevole per questo ... ma credo che i vari effetti si possano impostare nello sketch, e poi selezionare tramite pulsante, oppure comando remoto, gia direttamente con Arduino, senza altre shield ... ovviamente dipende da quale arduino e dalla memoria necessaria, poi, la quantita' o la qualita' degli effetti possibili ...

Se invece intendi proprio aggiungerne o modificarli dopo averli impostati, allora non credo esista una shield simile, mi sa che si dovrebbe comunque inserire i nuovi nello sketch e riflashare ...

Fai tutto da sketch. Non capisco ampliare cosa intendi @callmesir, dal punto di vista HW. Per IR basta un ricevitore IR, se lo predisponi bene, se no sono 3 fili da collegare. :o

Mi spiego come una capra.
Ovviamente carico tutto da sketch ma per selezionare poi i vari "profili" userei un telecomando. Avete presente le strip di led? Ecco.

In commercio trovo moduli IR con telecomando.

In commercio trovi moduli sia IR che RF con telecomandi per 4 canali (che potresti riadattare come se fossero 4 pulsanti), oppure telecomandi IR di quelli per le strip led (ma poi devi scoprire che codici trasmettono e crearti lo sketch apposta)

Si, ma… tu intendi “togliere” l’Arduino ? Cioè fare poi senza Arduino ?

A questo punto lascio stare l'idea standalone e lascio su tutta la piattaforma arduino, almeno inizialmente...

Quale arduino consigliate di usare? non ho idea di quali limiti hw devo tenere conto per pilotare questo tipo e questa quantità di led, che siano 50 o 100.
Non ho problemi di spazio, clock speed >=8Mhz.

Arduino Uno o anche nano/mini pro secondo me basta.

Top! grazie mille.

Nella sezione "powering neopixels" dicono: "Before connecting a NeoPixel strip to ANY source of power, we very strongly recommend adding a large capacitor (1000 µF, 6.3V or higher) across the + and – terminals. This prevents the initial onrush of current from damaging the pixels."

Visto che il condensatore devo comprarlo e mi conviene prendere uno stock di qualche centinaio, quanto "higher" posso installarlo? trovo più che altro voltaggi superiori. (si non conosco na cippa di condens.)

Non sò se higher è riferito alla capacità (non credo) o a i volt ai quali può essere sottoposto il condensatore.
Penso la seconda, trovi condensatori che resistono anche a 640V

Higher in quel caso e' riferito alla capacita', ma un po di tensione in piu non gli fa certo male, 6.3V per un'applicazione da 5V sono al limite ... 2200uF 12V o simile (o se vuoi anche capacita' maggiori) dovrebbero essere ok ... e mettici anche un 100nF in parallelo (serve per filtrare i disturbi ad alta frequenza, che il condensatore grosso, data la sua elevata ESR, non filtrerebbe bene)

Come alternativa, se fai piu "nubi", metti alcuni condensatori da 1000uF 12V (ognuno con un 100n in parallelo) in diversi punti, ad esempio dove sdoppi le alimentazioni, o uno per nube ...

CallMeSir:
Non ho problemi di spazio, clock speed >=8Mhz.

Il clock deve, tassativamente, essere da 16 MHz, le librerie Adafruit per i NeoPixel sono scritte quasi totalmente in assembly perché sono time critical, la velocità di trasmissione verso i led è 800 kHz.
Quanti led è possibile controllare con un singolo Arduino dipende da quello che devi farci e la massima latenza accettata per la modifica dello stato dell’ultimo led in quanto la propagazione è di tipo seriale.
Se è necessario ottenere degli effetti luminosi complessi con un fps non inferiore a 25 il numero massimo di led gestibili per ogni linea di controllo è oltre 1000, ovvero ben oltre quanti ne devi controllare.
Per darti un’idea delle possibilità di questi led qui c’è un breve video dove provo una striscia lunga un metro con sopra 60 led, il controller non è Arduino, è un PIC18F2520, però non cambia nulla se usi Arduino.

astrobeed:
Il clock deve, tassativamente, essere da 16 MHz, le librerie Adafruit per i NeoPixel sono scritte quasi totalmente in assembly perché sono time critical, la velocità di trasmissione verso i led è 800 kHz.
Quanti led è possibile controllare con un singolo Arduino dipende da quello che devi farci e la massima latenza accettata per la modifica dello stato dell'ultimo led in quanto la propagazione è di tipo seriale.
Se è necessario ottenere degli effetti luminosi complessi con un fps non inferiore a 25 il numero massimo di led gestibili per ogni linea di controllo è oltre 1000, ovvero ben oltre quanti ne devi controllare.
Per darti un'idea delle possibilità di questi led qui c'è un breve video dove provo una striscia lunga un metro con sopra 60 led, il controller non è Arduino, è un PIC18F2520, però non cambia nulla se usi Arduino.

Pensavo bastassero anche 8Mhz.
"The library works with most mainstream Arduino boards and derivatives: Uno, Mega, Leonardo, Micro, Adafruit Flora, etc. — most anything with an Atmel AVR 8-bit processor from 8 to 16 MHz — and also works with the Arduino Due and all varieties of the PJRC Teensy boards."