Sommario:
- Passaggio 1: installa l'app Bluetooth
- Passaggio 2: configurare il modulo Bluetooth - Parte 1 - Connessioni e HC-06
- Passaggio 3: configurazione del modulo Bluetooth - Parte 2 - HC-05 e test iniziale
- Passaggio 4: collegare il modulo Bluetooth ad Arduino
Video: Smartphone Arduino Coms/Monitor seriale tramite Bluetooth HC-05, HC-06: 4 passaggi (con immagini)
2024 Autore: John Day | [email protected]. Ultima modifica: 2024-01-30 10:04
Questo è incredibilmente utile se vuoi testare il tuo schizzo in un ambiente del mondo reale, lontano dal tuo PC. Il risultato è che il tuo smartphone si comporta allo stesso modo del monitor seriale Arduino sul tuo PC. I moduli Bluetooth HC-05 e HC-06 sono disponibili per circa £ 3 su ebay e ci sono molte app per smartphone gratuite tra cui scegliere. Ci sono alcune insidie che si spera di evitare seguendo gli esempi qui. L'app per smartphone gratuita utilizzata qui può anche salvare il testo ricevuto in un file per un uso successivo. Non è richiesta alcuna modifica ai tuoi schizzi poiché vengono utilizzati gli stessi pin seriali.
L'ho usato per la prima volta durante il test di un dispositivo che misura la distanza fornita dalle auto quando mi sorpassano in bicicletta. Sono stato in grado di registrare le misurazioni della distanza effettuate 30 volte al secondo sul mio telefono, dove sono state salvate in un file. L'ho analizzato in seguito con un video che ho anche registrato utilizzando una videocamera sportiva e la mia app di tracciamento che ha fornito la mia velocità e posizione.
Avrai bisogno:
- Il tuo Arduino preferito (Uno usato qui)
- Modulo Bluetooth HC-05 o HC-06
- Uno smartphone (qui viene utilizzato un telefono Android) e un'app Bluetooth gratuita
Passaggi:
- Installa l'app Bluetooth gratuita
- Configura il modulo Bluetooth
- Connetti Bluetooth ad Arduino
- Carica uno schizzo di esempio
- Sistema di prova
Passaggio 1: installa l'app Bluetooth
Ci sono molte app Bluetooth disponibili e molte sono gratuite. Uso telefoni Android ma mi aspetto che lo stesso valga per gli altri sistemi. Ho deciso di utilizzare BlueTerm 2 in quanto fornisce anche la possibilità di registrare i dati ricevuti su file. L'ho trovato anche molto semplice da usare. Quindi vai su Google Play e richiedi il download di BlueTerm 2.
Una volta installata l'app, puoi connetterti ai dispositivi Bluetooth. Tieni presente che il dispositivo Bluetooth deve prima essere associato al telefono prima di poter essere utilizzato in qualsiasi app:
Accendi BlueTooth: vado su Impostazioni>Bluetooth.
Il telefono elencherà i dispositivi già associati e dopo alcuni secondi mostrerà Dispositivi disponibili. Il nome potrebbe inizialmente essere visualizzato come un insieme di numeri anziché come nome del dispositivo. Tuttavia selezionandolo poi mostra il nome e chiede il PIN che di solito è 1234.
Ora avvia BlueTerm 2. Fai clic su Impostazioni, quindi su Connetti dispositivo e seleziona come richiesto. Puoi semplicemente accendere un modulo HC-05/HC-06 in questa fase e controllare il processo di accoppiamento, se lo desideri (collegare l'alimentazione negativa a terra e 5v a Vcc).
Passaggio 2: configurare il modulo Bluetooth - Parte 1 - Connessioni e HC-06
Se sei felice di utilizzare il nome e la velocità di trasmissione predefiniti, puoi saltare questo passaggio. I valori predefiniti sono nome: HC-05 o HC-06 e baud: 9600. Il vantaggio della riconfigurazione del modulo è che è possibile selezionare velocità di trasmissione più elevate e impostare il nome su qualcosa di più facilmente riconoscibile.
La configurazione richiede l'invio di comandi da PC al modulo tramite connessione seriale. Un collegamento seriale USB FDTI è l'ideale, soprattutto se ha un'opzione 3.3v. Tuttavia, le schede Arduino hanno un convertitore da USB a seriale e quindi anche questo può essere utilizzato e questo è il metodo mostrato qui. Per fare ciò è meglio disabilitare la porta seriale del processore principale Arduino in modo da poter comunicare tra il PC e il modulo Bluetooth senza interferenze.
Lo sketch per disabilitare la seriale Arduino ha semplicemente le istruzioni:
pinMode(0, INGRESSO):
pinMode(1, INGRESSO);
nella sezione configurazione{}.
Ho allegato lo sketch NoSerial.ino. Crea una cartella chiamata "NoSerial" nella cartella degli schizzi e aggiungi NoSerial.ino a questa. Avvia l'IDE Arduino, vai su File>Sketchbook>Sketchches>NoSerial per aprire lo sketch. Seleziona il tipo di scheda e la porta dal menu Strumenti e fai clic sul pulsante di download.
Connessione per la configurazione
Con lo schizzo caricato possiamo ora connettere il modulo Bluetooth alla scheda Arduino. Le connessioni Tx e Rx sono invertite rispetto a quanto faremo in seguito in quanto vogliamo comunicare con la porta del PC per il Serial Monitor e non con il processore principale Arduino. Il PC Tx è collegato all'Arduino Rx e viceversa.
Si noti che i moduli Bluetooth hanno livelli 3.3v per Tx e Rx. Quindi un divisore di tensione dovrebbe essere usato per l'ingresso Bluetooth Rx quando ci si connette a sistemi 5v. L'uscita Bluetooth 3.3v Tx viene solitamente rilevata correttamente dai sistemi 5v e quindi può essere collegata direttamente.
Ho scoperto che un partitore di tensione che utilizza resistori 3k3 e 6k8 funziona fino a 115200 baud rate seriali.
I moduli HC05 e HC06 hanno regolatori di tensione a bordo e quindi funzionano con Vcc collegato a 5v.
Quindi collega:
- Resistenza 3k3 a D0
- Resistenza 6k8 a terra
- Collegare le altre estremità dei due resistori insieme e al pin Rx sul modulo Bluetooth
- Collegare il pin Tx del modulo Bluetooth a D1
- Connetti il pin di terra del modulo Bluetooth a GND Connetti il pin di terra del modulo Bluetooth a GND
- Collegare il pin Vcc del modulo Bluetooth a 5v
Vedere l'immagine per i dettagli.
Per configurare il modulo è necessario impostarlo in modalità AT. La procedura è diversa per i moduli HC-05 e HC-06.
HC-06
Questi sono i più facili. Si mettono in modalità AT se non sono associati a nessun dispositivo. Tuttavia, l'impostazione del baud sarà qualunque sia il normale baud operativo impostato. Questo è normalmente 9600 quando viene fornito. Se questo non funziona, prova 38400 o le altre tariffe comuni.
Collega il cavo USB dal PC ad Arduino e avvia l'IDE Arduino. Il LED Bluetooth lampeggerà rapidamente (~4Hz) in modalità AT.
Apri il monitor seriale Arduino tramite Strumenti> Monitor seriale. Imposta il baud su 9600 e imposta "Nessuna fine riga".
Ora inserisci AT e fai clic su Invia. Se tutto funziona, vedrai "OK" restituito al monitor. Se non torna nulla, ricontrolla il cablaggio e prova impostazioni Baud diverse.
Con un OK che conferma la buona comunicazione possiamo cambiare il nome e impostare il proprio Baud rate.
Immettere AT+NAMEARDUINO e fare clic su invia. Questo imposta il nome del modulo su ARDUINO. È possibile utilizzare qualsiasi altro testo. Nota che non ci sono spazi nel comando.
La risposta dovrebbe essere OKsetname. Questo viene aggiunto all'OK inviato in precedenza
Ora inserisci AT+BAUD8. Questo imposta il baud su 115200.
La risposta dovrebbe essere OK115200. Se devono essere inviati altri comandi AT, l'impostazione del baud del monitor seriale deve essere modificata in 115200.
È possibile impostare altre tariffe. Baud4 è 9600, Baud5 è 19200, Baud6 38400, Baud7 57600. Ci sono impostazioni superiori a 115200 ma controlla prima che il tuo PC e Arduino possano accettarle (il mio non può superare 128000). Nota - Se imposti una tariffa troppo alta non sarai in grado di comunicare con essa per riportarla indietro!!!
Passaggio 3: configurazione del modulo Bluetooth - Parte 2 - HC-05 e test iniziale
HC-05
Questi hanno la complicazione di dover essere impostati manualmente in modalità AT. Il manuale dice che se la modalità AT viene attivata dopo l'accensione, l'impostazione Baud continuerà alla velocità già impostata per le normali comunicazioni. Non sono riuscito a farlo funzionare! Se tuttavia la modalità AT è impostata all'accensione, il baud è impostato su 38400. Quindi quest'ultima opzione è la più affidabile in quanto possiamo essere sicuri che il baud è 38400.
Apri il monitor seriale Arduino tramite Strumenti> Monitor seriale. Imposta il baud su 38400 e imposta "Ritorno a capo".
Il prossimo passo è portare la scheda in modalità AT. È qui che sorgono la maggior parte dei problemi a causa delle differenze nelle schede portanti.
Il processo fondamentale è tenere basso il pin "Key" (pin 34) per alcuni secondi all'accensione.
La mia scheda ha un pulsante per farlo (i due pin di connessione aggiuntivi sono EN e STATE). Scollegare il cavo Vcc dal modulo Bluetooth. Quindi, tenendo premuto il pulsante, riapplicare 5v a Vcc. Il LED dovrebbe lampeggiare a intervalli di circa 2 secondi. Tengo premuto il pulsante fino al secondo lampeggio.
Alcune schede hanno un pin chiave come uno dei 6 pin del modulo. In tal caso, collegarlo a 3.3v durante l'accensione.
Alcune schede non hanno né l'uno né l'altro e gli utenti hanno dovuto saldare un pulsante tra il pin della chiave (34) e 3.3v (pin 12). Vedi manuale allegato.
Con il LED che lampeggia lentamente possiamo controllare le comunicazioni. Immettere AT e fare clic su Invia. La risposta dovrebbe essere OK. Ho scoperto che questa risposta veniva ripetuta continuamente fino a quando non ho inviato una riga vuota: basta fare clic su Invia. Se ricevi ERRORE: (0), invia una riga vuota e quindi invia AT.
Ora imposta un nuovo nome. Immettere AT+NAME=ARDUINO La risposta dovrebbe essere OK. Tuttavia, nel mio caso, il modulo si è ripristinato dalla modalità AT (il LED lampeggia rapidamente). Non sono riuscito a trovare la causa e questo è successo anche quando si utilizza una connessione seriale FDTI anziché l'Arduino. Sono tornato in modalità AT come prima: scollegando il cavo di alimentazione dalla scheda e ricollegandolo mentre si premeva il pulsante. Controlli successivi hanno mostrato che il nome era stato cambiato.
Quindi impostare il Baud. Immettere AT+UART=115200, 1, 0 La risposta dovrebbe essere OK. Tuttavia a volte saltava fuori dalla modalità AT come sopra.
L'impostazione UART può essere verificata con il comando: AT+UART? La risposta dovrebbe essere OK e +UART=115200, 1, 0
Test iniziale
A questo punto abbiamo il PC con una connessione seriale al modulo Bluetooth. Quindi un primo test opzionale può essere fatto avviando l'app BlueTerm 2 per smartphone (supponendo che il modulo sia già stato associato al telefono). Connettiti ad ARDUINO. Imposta il monitor seriale Arduino a 115200 baud. Digita "Hello World" e fai clic su invia. Questo dovrebbe ora apparire su BlueTerm 2. Ora digita "Hello to you" in BlueTerm 2. Questo dovrebbe ora apparire nel monitor seriale.
Passaggio 4: collegare il modulo Bluetooth ad Arduino
Dobbiamo prima caricare il nostro schizzo di prova Arduino. L'allegato BTtest.ino invia un numero ogni 0,5 secondi e poi lo incrementa, passando a 0 da 255. Crea una cartella chiamata BTtest nella cartella degli schizzi e aggiungi BTtest.ino
La connessione seriale Arduino viene utilizzata anche per il download degli sketch. Quindi i due fili al modulo Bluetooth devono essere scollegati in modo che non interferiscano.
Dopo aver scaricato lo sketch, ricollegare il modulo Bluetooth. Si noti tuttavia che Tx e Rx su Arduino devono essere scambiati rispetto alla configurazione di configurazione precedente.
Quindi collega:
- Resistenza 3k3 a D1
- Resistenza 6k8 a terra
- Collegare le altre estremità dei due resistori insieme e al pin Rx sul modulo Bluetooth
- Collegare il pin Tx del modulo Bluetooth a D0
- Connetti il pin di terra del modulo Bluetooth a GND Connetti il pin di terra del modulo Bluetooth a GND
- Collegare il pin Vcc del modulo Bluetooth a 5v
Vedere l'immagine per i dettagli.
Ora accendi Arduino. Non ha bisogno di essere collegato a un PC.
Associa la scheda allo smartphone se non è già connesso (vedi Installazione dell'app Bluetooth sopra). Quindi avvia BlueTerm 2, fai clic su Impostazioni, quindi su Connetti dispositivo e seleziona ARDUINO. Dovresti vedere lo schermo riempirsi di numeri che aumentano da 0 a 255.
Spero che lo trovi utile quanto me.
Mike
Secondo classificato nella sfida Bluetooth
Consigliato:
Configurazione seriale HC-05 tramite Bluetooth: 10 passaggi
Configurazione seriale HC-05 tramite Bluetooth: durante l'utilizzo di dispositivi Android e moduli SPP Bluetooth HC-05 per alcuni progetti Arduino, volevo controllare e modificare le velocità di trasmissione dell'HC-05 e altri parametri senza collegarmi a una porta USB del PC. Questo si è trasformato in questo. I moduli HC-05 collegano seriale e Blu
Arduino autonomo 3.3V con orologio esterno da 8 MHz programmato da Arduino Uno tramite ICSP/ISP (con monitoraggio seriale!): 4 passaggi
Arduino autonomo 3,3 V con orologio esterno a 8 MHz programmato da Arduino Uno tramite ICSP / ISP (con monitoraggio seriale!): Obiettivi: costruire un Arduino autonomo che funzioni a 3,3 V da un orologio esterno da 8 MHz. Per programmarlo tramite ISP (noto anche come ICSP, programmazione seriale in-circuit) da un Arduino Uno (in esecuzione a 5V) Per modificare il file del bootloader e masterizzare il
Visualizza il monitor seriale tramite Bluetooth: 4 passaggi
Visualizza monitor seriale tramite Bluetooth: questo progetto utilizza un modulo Bluetooth HC-05 per sostituire una connessione cablata tradizionale utilizzata per la visualizzazione del monitor seriale. Materiali: Arduino - https://amzn.to/2DLjxR2 Breadboard - https://amzn.to /2RYqiSK Ponticelli - https://amzn.to/2RYqiSK H
Incapsulamento del servomotore passo-passo con controllo seriale tramite Arduino utilizzando una stampante 3D - Pt4: 8 passaggi
Incapsulamento del servomotore passo passo con controllo seriale tramite Arduino utilizzando una stampante 3D - Pt4: in questo quarto video della serie Motor Step, utilizzeremo ciò che abbiamo imparato in precedenza per costruire un servomotore passo passo con controllo tramite comunicazione seriale e reale feedback di posizione utilizzando un encoder resistivo monitorato da un Arduino. In
RC Car Hack - Controllato tramite Bluetooth tramite App Android: 3 Passaggi (con Immagini)
RC Car Hack - Controllato tramite Bluetooth tramite app Android: sono sicuro che ognuno di voi può trovare a casa un'auto RC inutilizzata. Questa istruzione ti aiuterà a cambiare la tua vecchia auto RC con un regalo originale :) A causa del fatto che l'auto RC che avevo era di piccole dimensioni, ho scelto Arduino Pro Mini come controller principale. Un altro