Tutorial ESP32 38/55 - Controllare LED RGB dal tuo telefono cellulare | Kit di apprendimento IoT ESP32 di SunFounder

Tutorial ESP32 38/55 - Controllare LED RGB dal tuo telefono cellulare | Kit di apprendimento IoT ESP32 di SunFounder

In questo tutorial, esploreremo come controllare un LED RGB utilizzando un modulo ESP32 del kit di apprendimento SunFounder ESP32. Inviando comandi dal tuo dispositivo mobile, puoi cambiare il colore del LED o spegnerlo completamente. Questo progetto sfrutta le capacità dell'ESP32, utilizzando le funzionalità Wi-Fi e Bluetooth integrate per una connettività e un controllo senza soluzione di continuità.

ESP32_cavi_led_RGB
ESP32_rgb_pin

Il LED RGB è composto da tre LED individuali: rosso, verde e blu, che possono essere mescolati per creare vari colori. In questo progetto, imparerai come cablare correttamente il LED RGB e programmare l'ESP32 per rispondere ai comandi Bluetooth. Il tutorial ti guiderà anche attraverso i componenti di codice necessari per raggiungere questa funzionalità (nel video alle 02:15).

Hardware spiegato

I componenti principali per questo progetto includono il microcontrollore ESP32 e il LED RGB. L'ESP32 è un modulo potente con Wi-Fi e Bluetooth integrati, rendendolo ideale per applicazioni IoT. In questo progetto, agirà come server per ricevere comandi da un dispositivo mobile e controllare il LED RGB di conseguenza.

Il LED RGB ha quattro pin: uno comune (o anodo o catodo) e tre pin per i colori individuali. Il pin comune si collega alla fonte di alimentazione o a terra, mentre gli altri tre pin si collegano ai pin GPIO dell'ESP32 tramite resistori per limitare la corrente e proteggere i LED. Questa configurazione consente un controllo preciso della luminosità di ciascun colore, creando una vasta gamma di colori.

Dettagli della scheda tecnica

Produttore SunFounder
Numero di parte LED RGB
Tipo di spina comune Anodo comune / Catodo comune
Tensione di alimentazione (V) 2,0 - 3,2 V
Corrente massima in avanti (A) 20 mA
Corrente tipica (A) 15 mA
Risoluzione del colore 8 bit (0-255)
Pacchetto Foro passante / SMD

  • Assicurati di avere valori di resistori appropriati (tipicamente 220 Ohm) per limitare la corrente attraverso ciascun canale LED.
  • Controlla la configurazione dei pin comuni (anodo o catodo) prima di cablare.
  • Utilizza PWM per il dimming e la miscelazione dei colori regolando il segnale inviato a ciascun LED.
  • Fai attenzione con i cablaggi per evitare cortocircuiti; collega un pin alla volta.
  • Testa ogni colore singolarmente dopo l'installazione per confermare il cablaggio corretto.

Istruzioni di cablaggio

ES32-38_RGB_LED-wiring

Per collegare il LED RGB all'ESP32, inizia posizionando il LED RGB su una breadboard. Il pin più lungo è il pin comune, che collegherai o alla tensione positiva (per anodo comune) o a terra (per catodo comune). Se stai utilizzando l'anodo comune, collega il pin lungo al pin 3.3V sull'ESP32. Per il catodo comune, collegalo al pin GND.

Successivamente, prendi tre resistori da 220 Ohm e collega un'estremità di ciascun resistore ai pin RGB corrispondenti del LED. Collega le altre estremità dei resistori ai pin GPIO dell'ESP32: collega il pin rosso del LED al GPIO 27, il pin verde al GPIO 26 e il pin blu al GPIO 25. Infine, assicurati che il pin comune sia collegato correttamente in base alla tua configurazione (anodo o catodo).

Esempi di codice e guida passo passo

Il codice per questo progetto inizia definendo i pin collegati all'LED RGB. Il seguente estratto mostra come vengono dichiarati i pin:

const int redPin = 27;
const int greenPin = 26;
const int bluePin = 25;

Qui,redPin,greenPin, ebluePinsono assegnati numeri GPIO specifici sulla ESP32 per ciascun canale di colore del LED RGB.

Nella funzione di setup, il Bluetooth viene inizializzato e vengono applicate le impostazioni PWM. Questo estratto dimostra questa inizializzazione:

void setup() {
  Serial.begin(115200);      // Initialize the serial port
  setupBLE();                // Initialize the Bluetooth BLE

  ledcAttach(redPin, freq, resolution);
  ledcAttach(greenPin, freq, resolution);
  ledcAttach(bluePin, freq, resolution);
}

Questo codice inizializza la comunicazione seriale e configura la funzionalità Bluetooth collegando i pin LED RGB ai canali PWM per il controllo.

Infine, la funzione loop controlla i messaggi Bluetooth ricevuti e regola di conseguenza il colore del LED:

if (value == "red") {
  setColor(255, 0, 0); // Red
  Serial.println("red");
}

In questa sezione, se il valore ricevuto è "rosso", il LED sarà impostato al massimo della luminosità rossa utilizzando ilsetColorfunzione.

Per una comprensione completa del codice, si consiglia di guardare il video tutorial in cui il codice completo è caricato sotto l'articolo.

Dimostrazione / Cosa Aspettarsi

Una volta che tutto è cablato e il codice è caricato, dovresti essere in grado di controllare il LED RGB dal tuo dispositivo mobile tramite Bluetooth. Inviando comandi come "rosso", "verde", "blu", ecc., vedrai il LED cambiare colore di conseguenza. Se invii "LED_off", il LED RGB si spegnerà. Assicurati di controllare il monitor seriale per eventuali messaggi di debug per confermare che i comandi vengano ricevuti correttamente (nel video alle 10:45).

Timestamp video

  • 00:00 Inizio
  • 1:59 Cos'è un LED RGB?
  • 6:01 Spiegazione del colore RGB
  • 10:01 Pagina di documentazione
  • 11:19 Spiegazione del cablaggio
  • 13:34 Selezionando la scheda ESP32 e la porta COM nell'IDE di Arduino
  • 15:15 Codice Arduino
  • 18:02 Dimostrazione di controllo di un LED RGB utilizzando il tuo telefono

Immagini

ESP32_rgb_pin
ESP32_rgb_pin
ESP32_RGB_led_wires
ESP32_RGB_led_wires
ES32-38_RGB_LED-wiring
ES32-38_RGB_LED-wiring
839-ESP32 Tutorial 38/55- Arduino code for controlling RGB LED using bluetooth app
Lingua: C++
Copia!

Risorse e riferimenti

File📁

Nessun file disponibile.