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 29/55 - Lettura della pressione del tasto del telecomando IR con ESP32 | Kit di apprendimento IoT ESP32 di SunFounder
In questo tutorial, impareremo come rilevare segnali infrarossi (IR) utilizzando il modulo ESP32 e un ricevitore IR compatibile. Quando premiamo un pulsante sul telecomando, l'ESP32 riconoscerà il segnale ed eseguirà azioni specifiche, come far suonare un buzzer per determinati tasti. Questo progetto è ideale per coloro che cercano di integrare capacità di controllo remoto nelle loro applicazioni ESP32 (nel video al :15).
remoto
L'ESP32 è un potente microcontrollore che combina capacità Wi-Fi e Bluetooth, rendendolo adatto a un'ampia gamma di applicazioni IoT. In questo progetto, utilizzeremo un ricevitore IR per interpretare i segnali di un telecomando. I tasti premuti verranno elaborati nel codice, permettendoci di intraprendere azioni in base ai comandi ricevuti.
Hardware Spiegato
I componenti principali per questo progetto includono il microcontrollore ESP32, un modulo ricevitore IR e un buzzer. L'ESP32 funge da cervello dell'operazione, elaborando i segnali ricevuti dal ricevitore IR. Il ricevitore IR rileva i segnali infrarossi dal telecomando e li converte in segnali elettrici che l'ESP32 può comprendere.
ir_receiver_sl838
Il ricevitore IR ha tipicamente tre pin: VCC (alimentazione), GND (terra) e OUT (segnale). Il pin VCC è collegato a una fonte di alimentazione (3,3V o 5V), mentre il GND è collegato alla terra. Il pin OUT invia il segnale decodificato all'ESP32, che può quindi essere utilizzato per attivare varie azioni, come attivare un buzzer quando viene premuto un tasto specifico.
Dettagli del foglio dati
Produttore
Affilato
Numero di parte
GP1UXC41
Tensione logica/IO
3,3 - 5,0 V
Tensione di alimentazione
3,3 V (tip.)
Corrente di uscita (per canale)
20 mA (max)
Corrente di picco (per canale)
50 mA (max)
Guida sulla frequenza PWM
38 kHz
Soglie logiche di ingresso
0.3 Vcc (alto), 0.2 Vcc (basso)
Caduta di tensione / RDS(on)saturazione
0,5 V (max)
Limiti termici
85 °C (max)
Pacchetto
TO-92
Note / varianti
Disponibile in molteplici configurazioni
Assicurati di fornire un'alimentazione corretta per evitare danni.
Utilizza cavi corti per ridurre al minimo l'interferenza del segnale.
Controlla l'orientamento del ricevitore IR prima di collegarlo.
Conferma che la batteria del telecomando è funzionante.
Utilizzare resistori di pull-up se necessario per la stabilità.
Istruzioni per il cablaggio
ESP32-29-IR-remote-wiring
Per collegare il ricevitore IR all'ESP32, inizia identificando i tre pin sul ricevitore IR: VCC, GND e OUT. Collega il pin VCC a una fonte di alimentazione di 3,3 V sull'ESP32. Successivamente, collega il pin GND a uno dei pin di massa (GND) sull'ESP32. Infine, collega il pin OUT al pin GPIO 14 sull'ESP32, che è designato per il ricevitore IR nel codice.
ESP32-29-IR-telecomando-schema
Una volta effettuate le connessioni, assicurati che il cablaggio sia sicuro. Se stai utilizzando una breadboard, inserisci il ricevitore IR in modo che il lato piatto sia rivolto verso di te e il rialzo sia dall'altra parte. Questa orientazione ti aiuterà a identificare correttamente i pin. Assicurati di verificare le connessioni prima di accendere l'ESP32.
Esempi di codice e guida passo passo
IR_receiver_lib
installa ilIRremoteESP8266library di David Conran, Sebastien.
Nel codice, definiamo il pin del ricevitore IR utilizzando la costanteIR_RECEIVE_PIN, che è impostato su 14. Creiamo anche un'istanza diIRrecvper gestire i segnali IR.
Dentro illoop()funzione, controlliamo se è stato ricevuto un segnale IR. In tal caso, decodifichiamo il valore del tasto e lo stampiamo sul monitor seriale.
if (irrecv.decode(&results)) {
String key = decodeKeyValue(results.value);
Serial.println(key);
irrecv.resume();
}
Questo frammento di codice mostra come decodifichiamo il segnale ricevuto e stampiamo il valore corrispondente della chiave sul monitor seriale. IldecodeKeyValue()La funzione mappa il segnale ricevuto a valori specifici dei pulsanti, come "0", "1", "EQ" e altri. Puoi trovare il codice completo caricato sotto l'articolo.
Dimostrazione / Cosa Aspettarsi
Una volta completato il cablaggio e caricato il codice, premere un pulsante sul telecomando dovrebbe visualizzare il valore corrispondente sul monitor seriale. Ad esempio, premere il pulsante "2" stamperà "2" sul monitor. Se il tasto non viene riconosciuto, restituirà "ERROR". Il buzzer suonerà quando viene premuto il tasto designato (ad es. "EQ"), fornendo un feedback immediato.
Fai attenzione ai comuni tranelli, come la polarità invertita nelle tue connessioni o l'uso di livelli di tensione errati. Assicurati che il telecomando funzioni correttamente e abbia una batteria funzionante prima di testare il tuo impianto (nel video alle 15:30).
Timestamp video
00:00 Inizio
2:05 Introduzione al ricevitore IR
4:24 Spiegazione cablaggio
6:08 Codice Arduino per ricevitore IR spiegato
10:06 Selezionando la scheda ESP32 e la porta COM nell'IDE di Arduino