Alcune parti di questo sito web non sono ancora disponibili nella tua lingua. Stiamo lavorando per risolvere questo problema e ci scusiamo per eventuali disagi.
Tutoriale ESP32 19/55 - Rilevamento ostacolo utilizzando il sensore infrarosso | Kit di apprendimento IoT ESP32 di SunFounder
In questo tutorial, impareremo come utilizzare un sensore a infrarossi per l'evitamento degli ostacoli con il modulo ESP32 per rilevare ostacoli. Questo progetto dimostrerà come il sensore possa attivare un buzzer quando viene rilevato un ostacolo. Il setup mostrerà anche lo stato di rilevamento sul monitor seriale, fornendo un modo chiaro e interattivo per osservare la funzionalità del sensore.
Lavoreremo con il SunFounder ESP32 IoT Learning Kit, che include il microcontrollore ESP32 dotato di funzionalità Wi-Fi e Bluetooth. Il sensore infrarosso funziona emettendo luce infrarossa, che sarà riflessa da ostacoli vicini. Quando la luce viene riflessa, il sensore attiverà un segnale di output che leggeremo nel nostro codice. Includeremo anche un cicalino che si attiva quando viene rilevato un ostacolo, fornendo un avviso acustico.
Hardware spiegato
I componenti principali di questo progetto includono il modulo ESP32, il sensore di evitamento ostacoli a infrarossi e un buzzer. Il modulo ESP32 funge da unità centrale di elaborazione, gestendo gli input dei sensori e controllando gli output. Può essere alimentato utilizzando una batteria al litio, rendendolo portatile e flessibile per varie applicazioni.
Il sensore a infrarossi per l'evitamento degli ostacoli è composto da un trasmettitore e un ricevitore. Il trasmettitore emette luce infrarossa, mentre il ricevitore rileva la luce riflessa da oggetti vicini. Quando è presente un ostacolo, il pin di uscita del sensore si abbassa, segnalando all'ESP32 di intraprendere un'azione, come accendere il buzzer.
Dettagli del Foglio Dati
Produttore
SunFounder
Numero parte
Sensore ad Infrarossi per Evitare gli Ostacoli
Tensione di funzionamento
3,3 V - 5 V
Tipo di output
Digitale (Basso quando viene rilevato un ostacolo)
Gamma di rilevamento
Fino a 20 cm
Tempo di Risposta
Meno di 10 ms
Pacchetto
Modulo
Alimentazione: da 3,3 V a 5 V per il funzionamento.
Il segnale di output diventa basso quando viene rilevato un ostacolo.
Sensibilità regolabile tramite potenziometro.
La distanza di rilevamento tipica è fino a 20 cm.
Tempo di risposta rapido di meno di 10 ms.
Istruzioni per il cablaggio
ESP32-19-obstacle_voide-wiring
Per collegare il sensore di rilevamento ostacoli infrarossi all'ESP32, inizia collegando il pin VCC del sensore al pin 5V sull'ESP32. Successivamente, collega il pin GND del sensore a uno dei pin GND sull'ESP32. Infine, collega il pin OUT del sensore al pin GPIO 14 sull'ESP32.
Per il buzzer, collegare il terminale negativo a GND e il terminale positivo al pin GPIO 27. Assicurarsi che tutte le connessioni siano sicure e che il sensore sia alimentato correttamente. Il cablaggio dovrebbe essere semplice, poiché il sensore e il buzzer richiedono solo connessioni di alimentazione e segnale semplici.
Esempi di codice e guida passo-passo
Nel codice, prima definiamo il pin collegato al sensore di evitamento degli ostacoli. Questo viene fatto usando l'identificatoreavoidPinimpostato a 14. Dichiaramo anche una variabileavoidStateper tenere lo stato di uscita del sensore.
const int avoidPin = 14; // the number of the avoid module pin
int avoidState = 0;
Nella funzione di setup, inizializziamo la comunicazione seriale e impostiamo ilavoidPincome input. Questo consente all'ESP32 di leggere lo stato di uscita del sensore.
All'interno della funzione loop, leggiamo continuamente l'uscita del sensore utilizzandodigitalRead(avoidPin)e memorizza il risultato inavoidStateQuesto valore viene quindi stampato sul monitor seriale, permettendoci di vedere quando viene rilevato un ostacolo (l'output sarà 0) o meno (l'output sarà 1).
Per il codice completo, si prega di fare riferimento alla sezione di caricamento sotto l'articolo.
Dimostrazione / Cosa Aspettarsi
Quando la configurazione è completa e il codice è caricato, dovresti vedere il monitor seriale che visualizza un 0 o un 1 a seconda che venga rilevato un ostacolo. Quando un ostacolo è entro il raggio di rilevamento, l'uscita mostrerà 0 e il buzzer suonerà. Se l'ostacolo viene rimosso, l'uscita mostrerà 1 e il buzzer si fermerà. Questa funzionalità è dimostrata nel video (nel video alle 12:30).
I problemi comuni possono includere cablaggi errati, che potrebbero portare il sensore a non funzionare correttamente, o tassi di baud non corrispondenti nel monitor seriale, impedendo la visualizzazione accurata dei dati. Assicurati di controllare questi aspetti se incontri problemi.
Timestamp dei video
00:00 Inizio
1:57 Introduzione al progetto
4:33 Cablaggio per l'evitamento degli ostacoli
5:55 Codice Arduino per l'evitamento degli ostacoli
7:36 Selezione della scheda ESP32 e della porta COM su Arduino IDE
9:18 Dimostrazione del progetto
10:42 Regolazione dell'intervallo di aumento della sensibilità
12:39 Agire quando viene rilevato un ostacolo
14:24 Utilizzo di un segnale acustico quando viene rilevato un ostacolo
Immagini
ESP32-19-obstacle_voide-schematic
ESP32-19-obstacle_voide-wiring
ESP32-19-obstacle_voide-schematic
ESP32-19-obstacle_voide-wiring
818-ESP32 Tutorial 19/55- Arduino code for obstacle avoidance module