Per fare ciò serve una app che giri su Android che abbia una intefaccia grafica con dei comandi ( solitamente pulsanti) che inviano, quando sono premuti, tramite il bluetooth un segnale alla scheda Arduino.
Il modulo HC-06 riceve ed invia a sua volta per mezzo della porta seriale un segnale ad Arduino per eseguire quella parte di codice prececentemente scritto.
Nel progetto ho predisposto un pulsante per la connessione tra i due dispositivi ed un certo numero di pulsanti di tipo ON ed OFF che comandano l'accensione e lo spegnimento di alcuni LED, la rilevazione della temperatura e dell'umidità relativa % e l'emissione di un suono da parte di un buzzer.
Resta inteso che l'accensione di un LED è solo dimostrativa poichè è possibile trasformarla nel comando, ad esempio, di un'apriporta, nella misura di una distanza, nel comando di un motore elettrico, nell'eccitazione di un relè elettromagnetico, etc...
Nel mio caso, all'ultimo istante, al posto del LED viola, che avevo impostato all'inizio, ho messo un modulo vocale ISB1820 che, comandato dal relativo pulsante, riproduce un messaggio.
Per la realizzazione del progetto ho usato:
1. un display 1602 con interfaccia I2C per avere una conferma visiva di quello che si sta facendo
2. un modulo bluetooth HC-06 per la comunicazione tra Arduino e lo smartphone
3. un sensore DHT-11 per rilevare la temperatura e l'umidità relativa %
4. un buzzer per emettere un suono
5. un modulo vocale ISB1820 per tramettere il messaggio informativo
6. sei LED, di diverso colore, per simulare i comandi impartititi dallo smartphone
Collegamenti:
a) modulo HC-06
Dei quattro terminali di cui dispone due vanno all'alimentazione quindi a +5V e GND mentre gli altri due, RX e TX, si collegano, rispettivatemente, ai pin digitali 1 e 0 cioè al TX ed RX di Arduino;
b) modulo ISB1820
Due terminali a +5V e GND mentre il P-E al pin digitale 3;
c) buzzer
Un terminale al GND ed uno al pin digitale 13;
d) sensore DHT-11
Due terminali a +5V e GND mentre quello che trasmette il segnale al pin digitale 12
e) display LCD
L'interfaccia I2C possiede quattro terminali due dei quali a +5v e GND e due, SCL ed SDA, rispettivamente ai pin analogici A5 ed A4;
f) LED
Distribuiti tra i pin gigitali dal 2 all'8 ad eccezione del 3 che è stato assegnato al modulo ISB1820 in questo modo: rosso : 8 verde : 7 blu : 6 giallo : 5 bianco : 4 viola : 3 rgb : 2
Lo sviluppo dell'app è stato fatto utilizzando il software AI2 (App Inventor v.2) prodotto dal MIT (Massachusetts Institute of Tecnology).
Qui di seguito riporto una parte dello schema a blocchi che rappresenta il programma (l'altra è stata omessa poichè ripetitiva)
Una volta stabilita la connessione premendo il pulsante btn_ROSSO_ON (sempre sul telefonino) si accende il LED rosso che poi verrà spento alla pressione del btn_ROSSO_OFF.
E' chiaro che questi due ultimi blocchi, ripetuti per tutti i pulsanti, completeranno il programma.
Il codice relativo al progetto si scarica al link: Test Bluetooth mentre quello dell'applicazione per lo smartphone al link : Bluethoot
Nessun commento:
Posta un commento