Stampa | Notifica email    
Autore

15. Controllare Arduino via bluetooth con Android

Ultimo Aggiornamento: 20/02/2018 11:22
20/02/2018 11:13
Post: 70
Registrato il: 18/11/2017
Amministrator
PRINCIPIANTE
OFFLINE
Buon giorno a tutti, oggi vediamo una delle componenti che ci serviranno in seguito: il bluetooth.
Il task di oggi è quindi quello di far comunicare via bluetooth Arduino e un dispositivo Android che potrebbe essere uno smartphone o un tablet.


Elenco tutti i componenti necessari al progettino:
Arduino
Modulo bluetooth ZS-040 HC-06.
Va bene anche HC-05, vediamo in seguito le differenze
Un led
Una resistenza da 330Ω
Uno smartphone o un tablet Android

Modulo bluetooth
Il modulo bluetooth che ho a disposizione è uno ZS-040 HC-06.
HC-05 e HC-06 usano la stessa board, ma hanno delle differenze sostanziali:

HC-06 non ha un pulsante di switch che in HC-05 serve alla configurazione del modulo
HC-06 ha solo 4 pin (a differenza di HC-05 che ne ha 6)
HC-06 può funzionare solo come slave e quindi può accettare solo connessioni. HC-05 invece può anche inizializzare la connessione con un altro device.
É importante notare che i pin di ricezione RX e di trasmissione TX del modulo bluetooth vanno collegati rispettivamente ai pin TX1 e RX0 di Arduino. Questo perché ciò che viene trasmesso dal modulo bluetooth viene ricevuto da arduino e vice versa.




Come vediamo dall'immagine anche sopra, HC-06 ha 4 pin:
VCC dal quale prende l'alimentazione. Il modulo funziona ad una tensione che va dai 3.6V ai 6V
GND è terra
RX e TX sono i due pin per la comunicazione seriale con Arduino


[Modificato da PROFPAPPAFAVA 20/02/2018 11:14]
20/02/2018 11:16
Post: 70
Registrato il: 18/11/2017
Amministrator
PRINCIPIANTE
OFFLINE
Esempio di prova
Ecco un semplice esempio di prova che ci permetterà di vedere le funzionalità base del modulo bluetooth. Nell'immagine qua sotto possiamo vedere il circuito da realizzare (è presente l'HC-05 perché nel programmino che usiamo per disegnare, non c'era). Tramite un'app Android sarà possibile accendere e spegnere il led.

Collegamento


Sketch
char data = 0;

void setup(){
Serial.begin(38400); //Setta il baund per la trasmissione seriale
pinMode(10, OUTPUT); //Setta il pin del led ad output
}

void loop(){
if(Serial.available() > 0){
data = Serial.read(); //Legge il dato in arrivo e lo mette in data
Serial.print(data); //Stampa il valore del dato nel Serial monitor (per vederlo ricordate di impostare il baund a 38400)
if(data == '1'){ //Se il dato ricevuto è 1, allora...
digitalWrite(11, HIGH); //...accendi il led e...
Serial.write("on\n"); //...invia al dispositivo il messaggio "on"
}else if(data == '0'){ // Altrimenti se è 0 ...
digitalWrite(11, LOW); //...spegni il led e...
Serial.write("off\n"); //...invia al dispositivo il messaggio "off"
}
}
}




NOTA BENE:
Visto che il bluetooth comunica in seriale, quando si va a caricare lo sketch dal computer ad Arduino, è necessario che i pin RX0 e TX1 siano liberi per evitare confitti. Se i pin sono occupati dal modulo bluetooth, vi sarà un errore che non permetterà la corretta conclusione dell'operazione.




[Modificato da PROFPAPPAFAVA 20/02/2018 11:19]
20/02/2018 11:22
Post: 71
Registrato il: 18/11/2017
Amministrator
PRINCIPIANTE
OFFLINE
Comandare il led con l'app Android
Nel Play Store di Google ci sono un sacco di app che ci permettono di comunicare tramite bluetooth con arduino. Una delle migliori, secondo me, è Arduino bluetooth controller.

L'interfaccia è semplice e intuitiva. Appena entrati, verranno mostrati i dispositivi bluetooth accoppiati e quelli disponibili. Il modulo apparirà con il nome HC-06. Se vi chiede la password inserite 1234. Una volta accoppiati, si presenterà una serie di possibilità come mostrato nell'immagine sottostante.



Siccome il nostro progetto è un semplice on/off di un led, scegliamo per ora la "switch mode". Un grosso pulsante sarà apparso. Se ci clicchiamo sopra ci chiede di configurarlo. Noi nello sketch avevamo messe il valore 1 per l'acceso e 0 per lo spento, quindi configuriamo come nell'immagine qua sotto.



Ora avremo un pulsante toggle che ci permetterà di accendere e spegnere il led
Amministra Discussione: | Chiudi | Sposta | Cancella | Modifica | Notifica email Pagina precedente | 1 | Pagina successiva
Nuova Discussione
 | 
Rispondi
Cerca nel forum
Tag discussione
Discussioni Simili   [vedi tutte]

Feed | Forum | Bacheca | Album | Utenti | Cerca | Login | Registrati | Amministra
Crea forum gratis, gestisci la tua comunità! Iscriviti a FreeForumZone
FreeForumZone [v.6.1] - Leggendo la pagina si accettano regolamento e privacy
Tutti gli orari sono GMT+01:00. Adesso sono le 00:32. Versione: Stampabile | Mobile
Copyright © 2000-2024 FFZ srl - www.freeforumzone.com