Nel progetto precendente per pilotare il Led dovevamo premere un tasto della tastiera del PC. Questa volta useremo prima un carattere, seguito da invio, del proprio smartphon collegato ad Arduino attraverso una comunicazione Bluetooth.
In tal caso sarà necessario aggiungere ai materiali occorrenti uno
Smartphon ed un modulo Bluetooth HC06
Adesso aggiungiamo un'estensione a mBlock che aggiungerà ulteriori blocchi per la gestione di Arduino.
L'estensione si chiama 'AdvancedArduino' da scaricare.
Assicuriamoci poi che ci sia la 'spunta'.
Andiamo a realizzare il seguente sketch, nel quale utilizziamo inizialmente il pin digitale 13, e quindi lavoriamo sul Led già presente sulla scheda di Arduino:
Si può notare che si utilizzano dei blocchi contenenti la parola 'seriale'. Si tratta di una modalità di comunicazione in cui Arduino può inviare e rivevere dati, un carattere per volta (in serie). Questi dati possono giungere ad Arduino attraverso vari canali di comunicazione; lo faremo prima attraverso il Monitor seriale dell'IDE di Arduino, e poi attraverso l'app installata sullo smartphon.
Il primo blocco ci fa capire che questo sketch non funziona cliccando sulla bandierina, ma occorre utilizzare mBlock nella modalità 'Arduino'.
Il secondo blocco serve ad uniformare la velocità di comunicazione da e per Arduino. Quindi impostandolo a 9600 blaud (bit per secondo) stiamo dicendo ad Arduino che deve utilizzare questa velocità per inviare dati, e può riceve dati solo a questa velocità.
Il terzo blocco porta all'interno della variabile 'stato' precedentemente creata il contenuto di quanto sta arrivando, quindi in ricezione (RX), dalla comunicazione seriale.
Se il contenuto di 'stato' corrisponde al carattere 'a' allora accende il Led collegato al pin digitale 13 sulla scheda si Arduino, invece se il carattere è 's' allora spegne il Led.
A questo punto, cliccando una volta sul primo blocco si accede alla modalità Arduino, e quindi nell'ordine si clicca su 'Carica su Arduino' ed, atteso il termine dal caricamento, su 'Modifica con l'IDE di Arduino'.
Ricordiamo che IDE vuol dire 'Ambiente di Sviluppo Integrato" di Arduino ed in seguito scriveremo solo IDE.
Questo è un ambiente di programmazione in cui non esistono più i blocchi di programmazione, ma le istruzioni in linguaggio C.
Attiviamo ora il 'Monitor seriale' dell'IDE, corrispondente alla lente d'ingrandimento, o selezionandolo dal menù 'Strumenti'.
Premendo nella riga di comando il tasto 'a', seguito da 'invio', il Led, sia quello integrato sulla scheda Arduino che sulla breadboard, dovrebbero accendersi mentre, premendo 's' seguito da 'invio', spegnersi.
Terminato il caricamente del codice, nella modalità 'Arduino' o nell'IDE, possiamo cimentarci nell'inviare il carattere non dalla tastiera del PC, ma del nostro smartphone tramite la connessione bluetooth.
Costruiamo il seguente circuito:
ATTENZIONE: Il Bluetooth deve essere alimentato con 3.3 Volt da prelevare dall'apposito pin di Arduino.
Attivare il bluetooth sullo smartphon.
Sullo smartphon compariranno alcuni dispositivi di tipo bluetooth che ha rilevato nell'ambiente e con un po' di pazienza occorre ricercare il nostro HC-06 che potrebbe inizialmente comparire senza la scritta "HC-06"
Selezionato l'HC-06, potrebbe essere richiesta la password, che in genere è "1234".
Terminata l'associazione del dispositivo avviare l'applicazione 'Arduino Bluetooth Controller' della Giumig Apps (da scaricare dal Play Store".
Avviata l'applicazione, si selezione il dispositivo appena associato ed si sceglie il 'Terminal mode'. Se tutto va bene, la luce intermittente del dispositivo bluetooth dovrebbe diventare fissa.
Inoltre è bene tenere a mente che, ogni volta che occorre caricare del codice su Arduino, è necessario scollegare, giusto il tempo del caricamento, il PIN 0 di Arduino.
Tale PIN deve risultare scollegato ogni volta che dobbiamo caricare qualcosa su Arduino, altrimenti Arduino riceverà contemporaneamente, dall'USB e dal Bluetooth, dati che lo porteranno all' 'Errore di caricamento'.
Ora possiamo scrivere 'a' sullo smartphon, seguito dal tasto 'Fatto' per accendere il Led e 's' per spegnerlo.