Dicembre 2013: l’Assemblea Generale delle Nazioni Unite ha proclamato il 2015 Anno Internazionale della Luce e delle tecnologie basate sulla Luce. Si tratta di un’iniziativa globale che mira <<ad accrescere la conoscenza e la consapevolezza di ciascuno di noi sul modo in cui le tecnologie basate sulla luce promuovano lo sviluppo sostenibile e forniscano soluzioni alle sfide globali ad esempio nei campi dell’energia, dell’istruzione, delle comunicazioni, della salute e dell’agricoltura>>.
Tra gli obiettivi che le Nazioni Unite si propongono di raggiungere con l’iniziativa dell’International Year of Light 2015, oltre a promuovere le tecnologie della luce per un miglioramento della qualità della vita sia nei paesi sviluppati, che in quelli in via di sviluppo si legge anche Promuovere l’istruzione tra i giovani.

Durante le attività promosse dal progetto INNOVATION SUMMER CAMP (Ostuni, 25 giugno – 10 luglio 2015), Cristian Pagone, uno studente del secondo anno del Liceo Scientifico “Pepe”, cominciò un viaggio: cosa si può fare con Arduino e una lampada?
Aprile 2015: nella città bianca, proprio con il patrocinio del IYL (International Year of Light) dell’Unesco, si svolgerà la terza edizione del GLOWFESTIVAL, il festival internazionale del video mapping, Artistic light in public space. In un percorso lungo le vie più caratteristiche della città bianca gli allestimenti di artisti nazionali e internazionali. L’arte della luce nelle vie dell’arte della città bianca.
Ed è dalla luce che viene il viaggio che ci racconta Cristian Pagone. Il titolo dell’applicazione da lui realizzata vuole rappresentare un ibrido: il latino ci ricorda da dove veniamo, l’inglese dove stiamo andando.
Ilux è un’applicazione che permette di controllare una luce da remoto tramite Smartphone e Tablet (Ipad) questo prototipo è definibile come un progetto di domotica, cioè di automazione domestica, una branca della robotica che permette appunto di facilitare delle operazioni all’interno della nostra abitazione come accendere una luce da remoto oppure programmare l’orario di accensione dei termosifoni o addirittura decidere quando desideriamo che il nostro letto sia riscaldato.
Tutti questi prototipi di Domotica come ILux sono realizzabili grazie ad una scheda elettronica programmabile molto versatile, Arduino, che permette agli appassionati di cimentarsi nella programmazione di oggetti, “Internet of Things” insomma.

Arduino è una scheda elettronica di piccole dimensioni con un microcontrollore. Questa scheda si basa su un circuito stampato che integra un microcontrollore con pin connessi alle porte I/O, un regolatore di tensione e quando necessario un’interfaccia USB che permette la comunicazione con il computer.
A questo hardware viene affiancato un ambiente di sviluppo integrato (IDE) multipiattaforma (per Linux, Apple Macintosh e Windows). Questo software permette anche ai neofiti di scrivere programmi con un linguaggio semplice e intuitivo derivato da C e C++ chiamato Wiring, liberamente scaricabile e modificabile. I programmi in Arduino vengono chiamati sketch.
Dopo aver scritto il programma nell’ambiente di sviluppo IDE, quest’ultimo viene caricato sulla scheda arduino attraverso una porta USB dopo aver compilato e ultimato il listato attraverso l’opzione Carica posta in alto a sinistra del compilatore.

Per far interagire L’IPad e la scheda elettronica ho usato Processing, che è un linguaggio di programmazione che consente di sviluppare diverse applicazioni come giochi, animazioni e contenuti interattivi. Eredita completamente la sintassi, i comandi e il paradigmadi programmazione a oggetti dal linguaggio Java, ma in più mette a disposizione numerose funzioni ad alto livello per gestire facilmente gli aspetti grafici e multimediali.
Ma l’aspetto più importante di questo linguaggio (Processing) è che può interagire con la scheda Arduino.
Illustriamo adesso il materiale occorrente al progetto:
– ARDUINO UNO (Kit Completo)
– 1 Scheda Relè
– 1 Presa elettrica con prolungamento
Prima di iniziare a programmare Arduino bisogna però sapere le nozioni più importanti interenti ai pin posti sulla scheda, prendiamo in rassegna i più importanti:
Vcc : con il termine Vcc si intende l’alimentazione positiva collegata di norma tramite il filo rosso.
Gnd o massa : con i termini Gnd o massa si intende l’alimentazione a 0 volt (cioè di riferimento rispetto a vcc ) e si collega di norma tramite filo nero.
Segnale digitale : segnale elettrico che può transitare solo tra 2 valori 0 e 1.
Segnale analogico: segnale elettrico che può transitare tra infiniti valori tra vcc e Gnd.
Come prima cosa scegliamo un PIN (Digitale) della scheda Arduino, che avrà il compito di stimolare il Relè nella sua operazione di aprire e chiudere il nostro circuito elettrico, nel nostro caso scegliamo il Digital Pin numero 11 che tramite un cavo colorato di rame rivestito, in dotazione con il kit di Arduino, collegheremo con l’ingresso IN1 del Relè in uso, dopo di che scegliamo la porta dei 5V per emanare l’impulso elettrico necessario a far scattare il meccanismo che sempre tramite il cavo di colore rosso , sarà collegato all’ingresso VCC della scheda Relè. Ripetiamo un’operazione simile per il pin GND che risulterà collegato all’ingresso GND del nostro Relè.
Una volta terminati i collegamenti (Effettuati senza l’alimentazione elettrica) dobbiamo operare sulla nostra prolunga, che una volta aperta, risulterà composta da tre fili colorati. Noi utilizzeremo solamente i due cavi di colore Blu scuro che una volta isolati, andremo a collegare con il comune e il normalmente chiuso della scheda Relè
Adesso dopo aver collegato la parte Hardware passiamo ai programmi necessari al progetto.
Sketch Arduino:

Touch Osc
Touch osc è un’applicazione scaricabile per Smartphone e Tablet e ci permette attraverso dei bottoni e delle leve di dare dei comandi ad Arduino. Per creare l’interfaccia grafica finale abbiamo bisogno però di scaricare la versione del programma per pc scaricabile dal sito ( http://hexler.net/software/touchosc ) e di preparare l’applicazione che successivamente verrà inviata al nostro dispositivo di comando (Telefono, Tablet) dotati dell’applicazione in versione mobile.

Una volta aperto il programma sul computer notiamo che nella parte superiore contiene le funzioni standard di salvataggio e di modifica del programma, oltre alla funzione importantissima Sync che ci permetterà di trasferire la nostra inferfaccia direttamente sul telefono. Sulla parte sinistra abbiamo invece una sequenza dei diversi parametri assegnabili ad ogni Oggetto che utilizziamo, di cui possiamo decidere forma, colore e nome. E molto importante stabilire dei nomi ben precisi e facilmente ricordabili per ogni pulsante perché ogni bottone dovrà interagire con il programma processing, e quindi è importante sapere il nome e il tipo del bottone in modo da rendere più facile la stesura del listato in Processing. Il value range ci indica invece quali valori può assumere una leva-bottone di vario tipo, per esempio un bottone può assumere solo un valore compreso tra 0 e 1 dato che può assumere uno stato 0 (Non premuto) e uno stato 1 (Premuto) ,mentre invece una leva per regolare l’intensità di un LED può assumere valori compresi tra 0 (Minima intensità) e 255 (massima intensità).
Una volta capito la struttura del programma possiamo incominciare a creare l’interfaccia grafica semplicemente cliccando con il tasto destro nell’area di colore nero di sviluppo scegliendo il tipo di leva o bottone necessario, e dopo aver controllato che i nomi assegnati siano coerenti, assegniamo alla pagina un nome, che servirà in Processing per capire su che pagina si sta operando.
Dopo aver fatto tutto ciò colleghiamo il nostro dispositivo mobile alla stessa rete Wi-Fi del computer in modo da permettere il trasferimento dei dati, clicchiamo in altro a destra sull’opzione Sync e contemporaneamente accediamo alla funzione Add Layout direttamente dal nostro dispositivo mobile in modo da scaricare l’interfaccia sul nostro smartphone.
E necessario che il computer su cui risiede il programma in processing e il nostro dispositivo mobile siano connessi alla stessa rete Wi-Fi in modo da poter comunicare tutti i dati necessari al funzionamento dell’applicazione; dopo averlo verificato, si accede alla cartella di opzioni generale Connections, dalla quale si passa a Host: qui si trovano i parametri necessari da fornire per far avvenire la comunicazione.
In Host andremo a inserire l’indirizzo IPV4 che “Ospiterà” il nostro dispositivo, per ricavare l’indirizzo IP accediamo al prompt dei comandi scrivendo il comando Ipconfig, l’indirizzo IPV4 visualizzato sarà inserito nella sezione Host

Dopo di che decidiamo le porte di Input e di Output inserendole nelle rispettive variabili intere, e infine nella sezione Local Ip Address visualizziamo l’indirizzo IP del nostro dispositivo connesso alla rete Wi Fi che andrà inserito nella stringa String IP [] dello sketch processing.
Una volta fatte tutte le opportune verifiche ai collegamenti e ai programmi in uso, al fine di far funzionare nella maniera corretta l’applicazione dobbiamo seguire un ordine di esecuzione dei vari Sketch. Come prima operazione apriamo Touch Osc e verifichiamo che ci sia corrispondenza tra porte e indirizzi IP, successivamente colleghiamo l’Arduino tramite la porta USB al computer e dopo averlo resettato tramite il pulsante rosso posto sull’angolo della scheda, carichiamo il programma sulla scheda. Come ultima operazione mandiamo in esecuzione Processing.
Fiat lux
Cristian Pagone

