Search Code

Návod ESP32 5/55 - Stmievanie LED, ovládanie jasu LED - ESP32 IoT Learning kit

Návod ESP32 5/55 - Stmievanie LED, ovládanie jasu LED - ESP32 IoT Learning kit

Tento návod demonštruje, ako ovládať jas LED diódy pomocou mikrokontroléra ESP32, konkrétne SunFounder ESP32 IoT Learning Kit (vo videu o 00:04). Tento projekt je ideálny pre začiatočníkov, ktorí sa učia o pulznej šírkovej modulácii (PWM) a jej aplikáciách pri riadení intenzity svetelných zdrojov. Vstavané možnosti PWM mikrokontroléra ESP32 umožňujú plynulé a presné ovládanie, čo otvára svet možností pre kreatívne projekty.

Praktické aplikácie:

  • Vytváranie systémov ambientného osvetlenia s nastaviteľným jasom.
  • Stavba jednoduchého nočného svetla s postupným stmievaním.
  • Vývoj dynamickej indikačnej LED diódy pre rôzne stavy (napr. slabá batéria, sieťové pripojenie).
  • Integrácia s ďalšími senzormi a akčnými členmi na vytvorenie komplexných interaktívnych inštalácií.

Hardvér/Komponenty

Projekt využíva SunFounder ESP32 Starter Kit (vo videu o 00:12), ktorý obsahuje mikrokontrolér ESP32, rozširujúcu dosku, rôzne komponenty a 18650 lítiovú batériu. Budete tiež potrebovať LED diódu a 220-ohmový rezistor (vo videu o 04:32).

Sprievodca zapojením

Pozrite si schému zapojenia vo videu (vo videu o 01:46 a 04:18) a podrobné vysvetlenie v časovej značke 04:40. Zapojenie zahŕňa pripojenie anódy LED diódy k rezistoru, rezistor k pinu GPIO 26 na ESP32 a katódu LED diódy k zemi.

LED_s_rezistorom


LED dióda v sérii s 220-ohmovým rezistorom.  Nižšie je zapojenie na breadboarde. 

LED_stmievanie_ESP32

Vysvetlenie kódu

Arduino kód používa pulznú šírkovú moduláciu (PWM) na ovládanie jasu LED diódy. Kľúčové konfigurovateľné časti sú:

  • ledPin: Definuje GPIO pin pripojený k LED dióde (vo videu o 09:41, nastavený na 26). Zmeňte to, ak používate iný pin.
  • fadeAmount: Riadi rýchlosť, akou sa mení jas LED diódy (vo videu o 10:06). Vyššia hodnota má za následok rýchlejšie stmievanie. Kód automaticky obráti smer, keď jas dosiahne minimálnu (0) alebo maximálnu (255) hodnotu (vo videu o 11:44).

const int ledPin = 26;  // GPIO pin pre LED diódu
int brightness = 0;
int fadeAmount = 5;

void setup() {
  ledcAttachPin(ledPin, 0); // Pripojí pin k PWM kanálu
}

void loop() {
  ledcWrite(ledPin, brightness); 
  brightness = brightness + fadeAmount;
  if (brightness <= 0 || brightness >= 255) {
    fadeAmount = -fadeAmount;
  }
  delay(50); 
}

Živý projekt/Demonštrácia

Video demonštruje stmievanie LED diódy v akcii (vo videu o 14:51). Inštruktor ukazuje, ako upraviť premennú fadeAmount na ovládanie rýchlosti stmievania (vo videu o 15:16 a 15:51). Proces nahrávania kódu do ESP32 je tiež zobrazený (vo videu o 14:20).

Kapitoly

  • [00:00] Úvod a prehľad projektu
  • [00:12] Prehľad ESP32 Starter Kitu
  • [01:46] Schéma zapojenia a vysvetlenie
  • [02:03] Digitálne signály a PWM
  • [04:18] Zapojenie LED diódy
  • [06:33] Vysvetlenie kódu: Funkcie
  • [09:11] Vysvetlenie kódu: Stmievanie LED diódy
  • [13:33] Nahrávanie kódu
  • [14:51] Živá demonštrácia a úpravy

Images

LED_fade_ESP32
LED_fade_ESP32
LED_with_Resistor
LED_with_Resistor
791-ESP32 Tutorial 5/55 - LED Fade, control brightness of an LED in Arduino
Language: C++
const int ledPin = 26;  // The GPIO pin for the LED
int brightness = 0;
int fadeAmount = 5;

void setup() {
  ledcAttach(ledPin, 5000, 8);  // Attach the LED pin
}

void loop() {
  ledcWrite(ledPin, brightness);  // Write the new brightness value to the PWM pin
  brightness = brightness + fadeAmount;
  if (brightness <= 0 || brightness >= 255) {
    fadeAmount = -fadeAmount;
  }
  delay(50);  // Wait for 50 milliseconds
}

Resources & references

No resources yet.

Files📁

No files available.