avevo in mente un piccolo progettino da realizzare, in pratica una
striscia di led a tre colori e sfruttando il PWM per modulare
Vorrei gestire il tutto tramite un dispositivo un minimo "intelligente". Ho un paio di cloni di Raspberry Pi ma sembra esagerato far fare una
cloni di arduino per pochi spiccioli su aliexpress a non finire, basati principalmente su ATmega328 o ATmega168. Sarebbe utile avere almeno tre PWM in hardware (i cloni dei raspi ne hanno solo uno, ma si possono simulare via software).
Praticamente una mood lamp. Se riesci a tenere fluido il cambio dei
una lookup table in testa con i valori dei seni su una variabile char, quindi da 0 a 255; un ciclo con all'interno tre cicli che leggono un elemento della tabella e scrivono il valore corrisponente come durata dell'impulso pwm su una gpio. Il secondo e il terzo dei tre cicli interni aggiungevano un minimo scarto, per esempio passando ogni tot letture all'indice n+1 e n+2 invece che ad n in modo da generare uno sfalsamento progressivo per avere i led apparentemente casuali. Se ricordo bene stava tutto in meno di 15 righe di codice.
Puoi provare con uno di questi; li programmi con il GCC per AVR senza
formatting link
Molto carini, su Ebay stanno a meno d 2 euro.
ps. Non esistono i cloni della RasPI. Le altre schedine hanno tutte
USA) ha un contratto di fornitura esclusivo verso la Raspberry Pi
ci gira Linux e alcune hanno il connettore gpio compatibile, e per quelle che lo hanno diverso basta editare qualche file.
Esempio: NanoPI M3, CPU 64 bit 8 core + gigabit Ethernet + Wifi + BT = $35.
Una cosa solo, ricordati che lo spazio sRGB non e' lineare mentre lo e' il tuo PWM, quindi fatti una bella lookup table tra il tuo canale PWM a 10bit(preferibilmente) e gli 8bit dell sRGB.
Aggiungo: Lo ho visto fare con un esp8266 (che e' l'ennesimo arduino like clone), molto meglio visto che puoi gestire anche le strisce ws2811 e ha la wifi(puo prendere il tempo dalla rete)!
Arduino (atmega328) ha 6 pwm a 8 bit che possono accendere direttamente led da 15mA. Stai solo attento al fatto che, con 8 bit (da 0 a 255), i passaggi 0-1-2-3 possono essere un po' a scatti.
Grazie a tutti per i consigli, per adesso ho realizzato un piccolo prototipo con un OrangePi One che comanda, tramite 3 pin del GPIO in softpwm, 3 transistor 2N3904 che forniscono le poche decine di mA per alimentare i tre colori di una striscia LED da 1 metro.
L'accrocco si comporta piuttosto bene, solo l'alimentatore da 12V che
durante le transizioni.
resa cromatica decente. Purtroppo la bassa frequenza del softpwm (solo
passo avanti!
Adesso stavo pensando se fosse meglio procurarmi un arduino oppure un
esigui dei cloni, ma propendo per l'esp8266 vista la presenza del wifi e
ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here.
All logos and trade names are the property of their respective owners.