IoT: LED dioda

Z MiS
Přejít na: navigace, hledání


Obsah

Co to je?

LED (zkratka z anglického Light-Emitting Diode, česky elektroluminiscenční dioda, též světelná dioda, svítivá dioda, slangově ledka, ojediněle svítivka) je v elektrotechnice 
označení pro diodu, která emituje světlo, případně infračervené nebo ultrafialové záření, čímž se liší od standardní diody. LED vyzařuje z obnaženého PN přechodu, a vede 
stejnosměrný proud pouze jedním směrem. Na rozdíl od žárovky dosahuje vysoké účinnosti, je mechanicky odolná, levná na výrobu, a proto je čím dál více využívána (kontrolky, 
displeje, osvětlení).

In: Wikipedia: the free encyclopedia [online]. San Francisco (CA): Wikimedia Foundation, 2001- [cit. 2020-08-09]. Dostupné z: https://cs.wikipedia.org/wiki/LED


Popis a zapojení

LED dioda má 2 piny — kladný (+) a záporný (-)

Menší ploška v diodě a delší „nožička“ je katoda (+)

Větší ploška v diodě a kratší „nožička“ je anoda (-)

Schema-led-dioda.png

Zapojení LED diody je následující

Schema-ledka.png


GPIO pin - katoda LED diody - anoda LED diody - rezistor (odpor) - GND (zem)

Rezistor můžete umístit před nebo za diodu.

Vždy je nutné vybrat správnou hodnotu rezistoru, jinak by se LED dioda mohla spálit a poškodit i další zařízení.

Rožnutí

Na rožíhání a zhasínání LED diod máme metodu

digitalWrite(nazev, stav)

nazev — název, co jsme dali u #define nazev 5

Stavy máme dva:

    • HIGH — svítí
    • LOW — nesvítí

Příklad

Na pinu D1 / GPIO5 máme zapojenou LED diodu a tu chceme rozsvítit a pak zhasnout.

#define cervena 5

Definujeme, že ne GPIO5 je "něco" a to "něco" se jmenuje cervena

void setup() {
pinMode(cervena, OUTPUT);
}

Řekneme, že cervena je výstupní

void loop() {
digitalWrite(cervena, HIGH);
delay(1000);
digitalWrite(cervena, LOW);
delay(1000);
}

Definovali jsme si, že na GPIO5 je LED dioda a že je výstupní.

Potom jsme rožli LED diodu, počká se prodleva a pak se LED dioda zase zhasne.

Samostatné úkoly

Zapojte si 3 LED diody. Modrou, červenou a zelenou. Každá ať je zapojena na zvlášť – na jiném pinu.

Schema-3ledky.png

  1. modrá i červená LED dioda se rožnou na 3 s a pak 3 s nebudou svítit
  2. modrá LED dioda se rozsvítí na 4 s, pak zhasne a zároveň se rozsvítí červená LED dioda, ta zhasne po 4s a znovu se rozsvítí modrá LED dioda
  3. modrá LED dioda bude svítit 5 sekund a dvě a půl svítit nebude
  4. každá LED dioda bude svítit 1s, pak se zhasne a rozsvítí se další (např. modrá, červená, zelená, modrá...)
  5. vymysleti si vlastní zadání

Další možnosti definování

#define modra 5
#define modra D1;
const char modra = 5;
char modra 5;
int modra = D1;
const char modra = 5;

V návodech se můžete setkat i s některou z těchto možností.

Postupné rozžíhání

Metodu digitalWrite(); jsme si již ukázali. Ta je k rožnutí, či zhasnutí LED diody.

Ale co když chceme LED diodu rozsvítit jen částečně ... třeba na půl jasu?

Či aby se postupně rozžíhala? K tomu nám slouží metoda:

analogWrite(nazev, cislo);

nazev — název, co jsme dali u #define nazev 5

cislo — jak má svítit — v našem případě je to v rozmezí 0 - 1023 (1024 možností)

takže, chceme rozsvítit LED diodu napůl jen - analogWrite(nazev, 512);

Regulace jasu

Příklad

LED dioda se během cca 5 sekund rožne.

#define ledka 5

void setup() {

pinMode(ledka, OUTPUT);
}

void loop() {

for(int i = 0; i < 1024; i++)
{
  analogWrite(ledka, i);
  delay(5);
}
}

Samostatný úkol

  1. LED dioda se postupně rozsvítí a pak postupně zhasne (během 6 sekund)
  2. Během pěti sekund se LED dioda rožne, sekundu zůstane rožnutá na maximum, 5 sekund se bude zhasínat a sekundu zůstane zhasnutá
  3. LED dioda bude sekundu zhaslá, sekundu na poloviční jas a sekundu na maximální jas

RGB LED dioda

Popis

RGB LED dioda má v sobě jakoby 3 LED dioda – Red, Green, Blue Má 3 katody (+) a jednu anodu (-)

Schema-rgb-dioda.png

Abychom ji mohli rozsvítit do námi požadované barvy, musíme něco vědět o [RGB mobelu]

Teoreticky je 16milionů, 255natřetí možných kombinací, jak může svítit.

Budeme chtít zelenou, tak přivedeme napětí ke katodě která je spojena přechodem pn emitujícím zelené světlo.

RGB led

Zapojení

Schema-RGBledka.png

GPIO pin - rezistor - katoda | anoda - GND

Příklady

Definuji si 3 výstupy - červený, zelný a modrý

#define red ...
#define gre ...
#fefine blu ...


Chceme červenou
#FF0000 - (255, 0, 0)
digitalWrite(red, HIGH);
Chceme žlutou
#FFFF00 - (255, 255, 0)
digitalWrite(red, HIGH);
digitalWrite(gre, HIGH);

Samostatný úkol

  1. zelená barva
  2. bílá barva
  3. černá barva

Více barev

Ale takto získáme jen omezené množství barev, ale my chceme třeba fialovou, která je

fialová #8b00ff - (139; 0; 255)

Takže musíme použít metodu analogWrite()

Víme že:

Také si musíme uvědomit že je používané PWM - námi zvolená barva na LEDce nebude úplně stejná jako původní barva.

analogWrite(red,556);
analogWrite(gre, 0);
analogWrite(blu, 1020);

Samostatný úkol

  1. Růžová barva
  2. Vaše oblíbená barva
  3. Tyrkysová barva
Osobní nástroje
Jmenné prostory
Varianty
Akce
Výuka
Navigace
Nástroje