Tutorial ESP32 32/55 - Avviso di retro vanga con LCD e buzzer | Kit di apprendimento IoT di SunFounder
In questo tutorial, creeremo un sistema di assistenza per la retromarcia utilizzando il microcontrollore ESP32, un sensore di distanza ad ultrasuoni, un display LCD e un buzzer. Questo progetto ti avviserà della distanza dagli ostacoli durante la retromarcia, con la frequenza dei beep del buzzer che cambia a seconda di quanto è vicino l'ostacolo. Imparerai come cablare i componenti, scrivere il codice e aspettarti che la funzionalità del sistema funzioni efficacemente per il tuo veicolo.
Man mano che implementiamo questo progetto, l'ESP32 gestirà le letture dei sensori e controllerà il buzzer e il display LCD. Il sensore ad ultrasuoni misurerà la distanza da eventuali ostacoli, mentre il buzzer fornirà un feedback audio basato su quella distanza. Il LCD mostrerà la distanza misurata, consentendoti di vedere le letture in tempo reale. Per una comprensione più chiara dell'impostazione, assicurati di guardare il video (nel video a :00).
Hardware Spiegato
I componenti chiave di questo progetto includono il microcontrollore ESP32, un sensore di distanza ad ultrasuoni, un display LCD e un buzzer. L'ESP32 è un potente microcontrollore con funzionalità Wi-Fi e Bluetooth integrate, rendendolo ideale per progetti IoT. Il sensore ad ultrasuoni misura le distanze emettendo onde sonore e calcolando il tempo impiegato per il ritorno dell'eco. Il display LCD mostrerà la distanza misurata, mentre il buzzer fornisce avvisi audibili in base alla prossimità.
Ogni componente gioca un ruolo cruciale nel garantire che il sistema di aiuto al parcheggio funzioni correttamente. Comprendere come questi pezzi lavorano insieme ti aiuterà a risolvere eventuali problemi che potrebbero sorgere durante il processo di assemblaggio. Il progetto sfrutta la potenza di elaborazione dell'ESP32 per gestire efficacemente i dati dei sensori e controllare le uscite.
Dettagli della scheda tecnica
| Produttore | Espressif Systems |
|---|---|
| Numero di parte | ESP32 |
| Tensione logica/IO | 3,3 V |
| Tensione di alimentazione | 5 V (max) |
| Corrente d'uscita (per canale) | 40 mA |
| Corrente di picco (per canale) | 160 mA |
| Indicazioni sulla frequenza PWM | 1 kHz - 40 kHz |
| Soglie logiche di input | 0,3 VCC (basso), 0,7 VCC (alto) |
| Caduta di tensione / RDS(on)/ saturazione | 0,2 V (tip.) |
| Limiti termici | Temperature di esercizio: -40°C a 85°C |
| Pacchetto | QFN48 |
| Note / varianti | Vari diversi moduli ESP32 disponibili |
- Assicurati di fornire un'alimentazione adeguata per evitare danni.
- Usa una resistenza con il buzzer per limitare la corrente.
- Mantieni i cavi di segnale corti per ridurre le interferenze.
- Utilizzare resistori di pull-up se necessario per ingressi digitali.
- Fai attenzione al raggio massimo del sensore ad ultrasuoni.
Istruzioni di cablaggio

Per collegare i componenti per il progetto, inizia collegando il sensore ad ultrasuoni. Collega il pin VCC del sensore alla linea di alimentazione di 5V e il pin GND a terra. Il pin Trig dovrebbe essere collegato al pin26sull'ESP32, e il pin Echo dovrebbe essere collegato al pin25.
Successivamente, collegare il beep collegando il suo terminale positivo al pin14sull'ESP32 e il cavo negativo a terra. Per il LCD, collegare il pin VCC alla linea 5V e il pin GND a terra. I pin SDA e SCL del LCD dovrebbero essere collegati ai pin21e22, rispettivamente. Assicurati che tutte le connessioni siano sicure per evitare disconnessioni durante il funzionamento.
Esempi di codice e guida passo passo
Nel codice troverai identificatori chiave comedistance, che memorizza la distanza misurata dal sensore ultrasonico. Questa variabile viene aggiornata continuamente nel ciclo per riflettere la distanza attuale. Il pin del buzzer è definito comebuzzerPin, consentendo un facile controllo del suo stato.
const int triggerPin = 26; // Trigger pin for ultrasonic sensor
const int echoPin = 25; // Echo pin for ultrasonic sensor
const int buzzerPin = 14; // Buzzer pin
Queste costanti sono definite all'inizio del codice per chiarezza e facilità di regolazione. I pin di trigger ed echo vengono utilizzati per comunicare con il sensore ultrasonico, mentre il pin del buzzer controlla l'uscita audio.
void setup() {
pinMode(triggerPin, OUTPUT); // Set trigger pin as output
pinMode(echoPin, INPUT); // Set echo pin as input
pinMode(buzzerPin, OUTPUT); // Set buzzer pin as output
}
In thesetup()funzione, configuriamo le modalità dei pin per il sensore ad ultrasuoni e il buzzer. Questo garantisce che l'ESP32 possa interagire correttamente con i componenti hardware durante il funzionamento.
void loop() {
distance = readDistance(); // Call function to read distance
if (distance <= 10) {
beep(100); // Fast beep for close distance
} else if (distance <= 20) {
beep(500); // Medium beep for moderate distance
} else {
beep(2000); // Slow beep for safe distance
}
}
Illoop()La funzione legge continuamente la distanza e regola la frequenza del beep del buzzer in base al valore. Ilbeep()la funzione viene chiamata con intervalli diversi a seconda di quanto è vicino l'ostacolo.
Dimostrazione / Cosa Aspettarsi
Una volta che tutto è connesso e il codice è caricato, puoi aspettarti che il sistema emetta dei beep a intervalli diversi in base alla distanza da un ostacolo. Quando la distanza è inferiore a 10 cm, il buzzer emetterà beep rapidi, mentre distanze superiori a 50 cm daranno luogo a un beep lento. Assicurati di testare il sistema posizionando la tua mano davanti al sensore ultrasonico per osservare le variazioni nelle letture delle distanze e nei corrispondenti tassi di beep (nel video alle 12:30).
Timestamp video
- 00:00 Inizio
- 2:08 Introduzione e documenti
- 4:12 Spiegazione del cablaggio
- 13:17 Codice Arduino
- 21:01 Selezione della scheda ESP32 e della porta COM in Arduino IDE
- 22:48 Dimostrazione in laboratorio
- 24:54 Dimostrazione sulla macchina
Common Course Links
Common Course Files
Cose di cui potresti avere bisogno
-
AmazonAcquista LCD1602-I2C da Amazonamzn.to
-
eBayAcquista LCD1602-I2C da eBayebay.us
-
AliExpressAcquista 10 pezzi di LCD1602-I2C da AliExpresss.click.aliexpress.com
-
AliExpressAcquista LCD1602-I2C da AliExpresss.click.aliexpress.com
Risorse e riferimenti
-
DocumentazioneTutoriale ESP32 32/55 - Pagina doc SunFounder per aiuto al rovesciamentodocs.sunfounder.com
File📁
File Fritzing
-
LCD2004-I2C
LCD2004-I2C.fzpz0.02 MB