Introduction: ARDUINO – LAMPADA MISCELA COLORI

Buongiorno a tutti,

nell’esperimento di oggi ho creato una semplice lampada capace di miscelare i colori Rosso Verde e Blu (RGB) per creare una grande varietà di colori differenti, utilizzeremo dei sensori capacitivi (come quelli dei touchscreen) per miscelare i colori.

Per questo progetto sono stati necessari:
–1 LED RGB (si può fare tranquillamente anche con i tre LED separati).

-Resistenze da 220 ohm per il led-resistenze da 1 MegaOhm per i sensori capacitivi(extra info qui e qui)

-Carta di alluminio o rete di rame per costruire i sensori capacitivi

-Microcontrollore Arduino UNO-Breadboard

-Jumper Wires

Come funzionano i sensori capacitivi?

In breve un sensore capacitivo misura la capacità di un corpo di immagazzinare energia elettrica utilizzando un emettitore e un ricevitore il sensore misura il tempo necessario affinché entrambi raggiungano lo stesso strato, quando il nostro corpo si avvicina al sensore assorbe parte della carica elettrica allungando questo tempo, ciò permette al sensore di rilevare la vicinanza del corpo, impostando una soglia adeguata è possibile controllare la distanza a cui il sensore si attiva.

La cosa interessante di questi sensori è che possono essere regolati per funzionare anche attraverso degli oggetti, in questo esperimento ho utilizzato della carta, trasformando un semplice foglio in un pulsante touch!

Con un po’ più di tempo dedicato all’artigianato si può, con lo stesso progetto, costruire una lampada miscela colori in legno che attiva i colori toccandone il corpo o la base.

In questo progetto ho creato tre sensori capacitivi per controllare l’intensità dei tre colori (rosso, verde e blu), per ogni colore sono possibili quattro stati:

-spento

-debole

-medio

-intenso

Miscelando le varie intensità è possibile creare una discreta varietà di colori.

Per creare le tre diverse intensità di luminosità dei LED utilizzando i piedini digitali, che per definizione sono dotati solo di due stati (accesi o spenti), Arduino ci mette a disposizione alcuni piedini PWM (Pulse Width Modulation). Si tratta di piedini digitali che oltre a poter semplicemente essere impostati come accesi o spenti possono anche essere impostati per accendersi e spegnersi molto velocemente ad una determinata velocità dandoci la percezione di una luminosità più bassa, variabile a seconda del rapporto tra tempo il tempo positivo (quello in cui il sensore da corrente) e il tempo negativo (quello in cui non viene data corrente). Arduino accetta valori a 8 bit (da 0 a 255) che “fortunatamente” sono anche i valori della gamma RGB (ogni colore può assumere un valore tra 0 e 255). Con un valore di 0 il piedino resta spento per tutto il tempo, con un valore di 255 il piedino resta sempre accesso, con 126 rimane acceso per metà del tempo e così via.

Avendo scelto quattro diverse intensità questi sono i valori che vengono ai piedini:

Spento = 0

Debole = 85

Medio = 170

Intenso = 255

Un alternativa era misurare il tempo per cui si tocca ogni sensore con la funzione millis() e far crescere l’intensità di ogni colore in base al tempo di pressione, ad esempio decidendo che una pressione di 3 secondi porta il valore da 0 a 255, si ha che ogni 12 millisecondi circa si innalza il valore di 1 punto (questi tempi sono scelti in maniera del tutto arbitraria in base alle esigenze). Il prototipo rimane uguale è sufficiente qualche modifica al software.

Il codice sorgente lo potete trovare qui