Tutoriale ESP32 6/55 - Utilizzo del progetto LED RGB 2.3 - Kit di apprendimento IoT ESP32 di SunFounder

Tutoriale ESP32 6/55 - Utilizzo del progetto LED RGB 2.3 - Kit di apprendimento IoT ESP32 di SunFounder

In questo tutorial, impareremo come controllare un LED RGB utilizzando il microcontrollore ESP32. Questo progetto ti aiuterà a capire come collegare il LED RGB e controllare i suoi colori utilizzando segnali PWM (Modulazione di Larghezza di Impulso). Alla fine di questo tutorial, sarai in grado di creare qualsiasi combinazione di colori regolando l'intensità di ciascun componente LED. Questa è una competenza fondamentale per creare progetti visivamente coinvolgenti.

Per avere una migliore comprensione del LED RGB e delle sue capacità di miscelazione dei colori, esploreremo il cablaggio e il codice necessari per controllarlo con l'ESP32. Se hai bisogno di assistenza visiva, assicurati di controllare il video (nel video al 03:20) per una spiegazione più chiara del cablaggio e della configurazione del codice.

Hardware Spiegato

I componenti principali di questo progetto includono il modulo ESP32, il LED RGB e i resistori. L'ESP32 è un potente microcontrollore che dispone di Wi-Fi e Bluetooth integrati, rendendolo ideale per applicazioni IoT. Il LED RGB è composto da tre LED individuali (rosso, verde e blu) racchiusi all'interno di un unico pacchetto, consentendo una vasta gamma di colori in base alla combinazione delle tre colorazioni.

Nel nostro setup, il LED RGB sarà cablato in una configurazione a anodo comune, dove il pin dell'anodo è collegato a una tensione positiva e il pin del catodo di ciascun colore è controllato in modo indipendente. In questo modo, possiamo regolare la luminosità di ciascun colore inviando segnali PWM tramite l'ESP32.

Dettagli del foglio dati

ProduttoreSunFounder
Numero di parteRGB-LED-4PIN
Tipo ComuneAnodo comune
Tensione di alimentazione (per LED)2,0 V (Rosso), 3,2 V (Verde), 3,2 V (Blu)
Corrente massima (per LED)20 mA
Temperatura di funzionamento-25 a 85 °C
Pacco4 pin a foro passante

  • Usa un resistore da 220 Ω per ogni colore per limitare la corrente e prevenire danni.
  • Assicurati che il pin comune sia collegato alla tensione appropriata (3,3 V per ESP32).
  • Controlla due volte la polarità quando colleghi il LED RGB per evitare danni da inversione.
  • Utilizza la modulazione di ampiezza pulsante (PWM) per controllare i livelli di luminosità, con una frequenza di circa 5000 Hz consigliata.
  • Testa ciascun colore singolarmente prima di cablare l'intero impianto.

Istruzioni per il cablaggio

Per collegare il LED RGB all'ESP32, inizia identificando i pin sul LED RGB. Il pin più lungo è l'anodo comune, che si connetterà all'alimentazione a 3,3 V dell'ESP32. Gli altri tre pin sono per il rosso, il verde e il blu. Nel nostro setup, collega il pin rosso a GPIO.27, il pin verde a GPIO26e il perno blu al GPIO25Ognuno di questi pin avrà anche un resistore da 220 Ω collegato ad essi.

Inizia posizionando il LED RGB sulla breadboard, assicurandoti che il pin dell'anodo comune sia a sinistra. Inserisci il pin rosso nella breadboard e collegalo a un'estremità della resistenza, con l'altra estremità della resistenza che va al GPIO.27Ripeti questo per i pin verde e blu, collegando il pin verde a GPIO.26e il pin blu a GPIO25Infine, collega il pin comune al pin da 3,3 V sull'ESP32 per completare il circuito. Assicurati di collegare anche la massa dell'ESP32 alla breadboard.

ESP32_RGB_LED_wiring_lesson_06

Esempi di codice e guida passo passo

Nel codice, iniziamo definendo i pin LED RGB utilizzando delle costanti. Ad esempio,const int redPin = 27;definisce il pin GPIO per il LED rosso. Impostiamo anche la frequenza e la risoluzione PWM conconst int freq = 5000;econst int resolution = 8;Questo imposta i parametri necessari per controllare la luminosità di ogni colore LED.

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

Successivamente, configuriamo i canali PWM per ciascun colore nelsetup()funzione. IlledcAttach()la funzione collega ogni pin al corrispondente canale PWM. Questa configurazione garantisce che possiamo controllare l'intensità di ogni colore in modo indipendente.

void setup() {
  ledcAttach(redPin, freq, resolution);
  ledcAttach(greenPin, freq, resolution);
  ledcAttach(bluePin, freq, resolution);
}

Nellaloop()funzione, utilizziamo ilsetColor()funzione per cambiare i colori dei LED. I valori passati a questa funzione rappresentano l'intensità di rosso, verde e blu. Ad esempio, chiamandosetColor(255, 0, 0);imposta il LED su rosso. Dopo ogni cambiamento di colore, usiamodelay(1000);attendere un secondo prima di passare al colore successivo.

void loop() {
  setColor(255, 0, 0); // Red
  delay(1000);
  setColor(0, 255, 0); // Green
  delay(1000);
}

Dimostrazione / Cosa Aspettarsi

Dopo aver completato il cablaggio e caricato il codice sull'ESP32, dovresti vedere il LED RGB ciclare attraverso vari colori: rosso, verde, blu, giallo, viola e ciano. Se il LED non si accende correttamente, controlla nuovamente il tuo cablaggio e assicurati che l'anodo comune sia collegato a 3,3 V. Inoltre, se noti colori inaspettati, verifica le connessioni dei resistori ai pin del LED.

Come dimostrato nel video (nel video alle 10:45), modificare i valori nelsetColor()La funzione ti consente di creare colori diversi. Sperimenta con varie combinazioni per vedere come risponde il LED RGB.

Timestamp video

  • 00:00- Introduzione al LED RGB
  • 03:20- Spiegazione del cablaggio
  • 10:45- Passaggio del codice
  • 12:30- Dimostrazione della miscelazione dei colori

Immagini

ESP32_rgb_pin
ESP32_rgb_pin
ESP32_RGB_led_wires
ESP32_RGB_led_wires
ESP32_RGB_LED_wiring_lesson_06
ESP32_RGB_LED_wiring_lesson_06
806-ESP32 Tutorial 6/55 - Arduino code to control RGB LED with ESP32
Lingua: C++
Copia!

Risorse e riferimenti

File📁

Nessun file disponibile.