IoT: LED dioda

Z MiS
(Rozdíly mezi verzemi)
Přejít na: navigace, hledání
m (Samostatné úkoly: - další úkol)
m (Postupné rozžíhání)
Řádka 90: Řádka 90:
 
Ale co když chceme LEDku rožnout jen částečně ... třeba na půl jasu?
 
Ale co když chceme LEDku rožnout jen částečně ... třeba na půl jasu?
  
Či aby se postupně rozžíhala?
+
Či aby se postupně rozžíhala? K tomu nám slouží metoda:
  
<div class="Poznamka"> K tomu nám slouží metoda ''analogWrite(nazevLedky, cislo);'' </div>
+
<div class="Syntaxe">
 +
'''analogWrite(''nazevLedky'', ''cislo'');'''
 +
</div>
 
nazevLedky - ten název, co jsme dali u ''#define nazevLedky 15''
 
nazevLedky - ten název, co jsme dali u ''#define nazevLedky 15''
 
cislo - jak má svítit - v našem případě je to v rozmezí 0 - 1023 - 1024 možností
 
cislo - jak má svítit - v našem případě je to v rozmezí 0 - 1023 - 1024 možností

Verze z 15. 3. 2021, 11:40


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í

LEDka 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 (-)

Zapojení LEDky je následující

Schema-ledka.png


GPIO pin - katoda LEDky - anoda LEDky - 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 LEDka mohla spálit a poškodit i další zařízení.

Rožnutí

Na rožíhání a zhasínání LEDek máme metodu digitalWrite(nazev, stav)

Stavy máme dva - zapnuto / vypnuto ... svítí / nesvítí ... HIGH / LOW

Příklad

Na pinu D1 / GPIO5 máme zapojenou LEDku 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 LEDka a že je výstupní.

Potom jsme rožli LEDku, počká se prodleva a pak se LEDka zase zhasne.

Samostatné úkoly

Zapojte si 3 LED diody. Modrou, červenou a zelenou.

Každá ať je zapojena na zvlášť – na jiném pinu.

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

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í LEDky.

Ale co když chceme LEDku rožnout jen částečně ... třeba na půl jasu?

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

analogWrite(nazevLedky, cislo);

nazevLedky - ten název, co jsme dali u #define nazevLedky 15 cislo - jak má svítit - v našem případě je to v rozmezí 0 - 1023 - 1024 možností

takže, chceme rozsvítit LEDku napůl jen - analogWrite(ledka, 512);

Regulace jasu

Příklad

LEDka se během 5ti 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. LEDka s postupně rozsvítí a pak postupně zhasne
  2. Během pěti sekund se LEDka rožne, sekundu zůstane rožnutá na maximum, 5 sekund se bude zhasínat a sekundu zůstane zhasnutá
  3. LEDka bude sekundu zhaslá, sekundu na poloviční jas a sekundu na maximální jas

RGB LEDka

Popis

RGB LEDka má v sobě jakoby 3 LEDky - Red, Green, Blue Má 3 katody (+) a jednu anodu (-) [schéma]

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