02. Čo je Arduino a ako pracuje – Arduino UNO

02. Čo je Arduino a ako pracuje – Arduino UNO

Dnes začneme pracovať s vývojovou platformou Arduino. Cieľom je pochopiť, čo Arduino je, z čoho sa skladá a ako vykonáva program.

Na konci hodiny by ste mali vedieť:

  • vysvetliť, čo je Arduino a mikrokontrolér,
  • nájsť základné časti dosky Arduino UNO,
  • rozlíšiť vstup a výstup,
  • vysvetliť funkciu setup() a loop(),
  • nahrať jednoduchý program do Arduina,
  • upraviť program tak, aby LED blikala požadovaným spôsobom.

Čo je Arduino?

Arduino je vývojová platforma založená na mikrokontroléri.

Mikrokontrolér je malý programovateľný elektronický obvod, ktorý dokáže:

  • čítať vstupné signály,
  • spracovať ich podľa programu,
  • ovládať výstupy.

Arduino môžeme použiť napríklad na:

  • rozsvietenie LED,
  • čítanie tlačidla,
  • meranie teploty,
  • ovládanie motora,
  • spracovanie údajov zo senzorov,
  • ovládanie displeja,
  • automatizáciu rôznych zariadení.

Arduino nie je klasický počítač. Po zapnutí začne vykonávať program uložený v mikrokontroléri.

Arduino UNO

Na odbornom výcviku budeme pracovať najmä s doskou Arduino UNO.

Na doske nájdeme:

  • mikrokontrolér,
  • USB konektor,
  • napájací konektor,
  • digitálne vstupy a výstupy,
  • analógové vstupy,
  • napájacie piny,
  • tlačidlo RESET,
  • signalizačné LED.

Pozrite si svoju dosku Arduino UNO a nájdite:

  • digitálne piny 0 – 13,
  • analógové vstupy A0 – A5,
  • pin 5V,
  • pin 3.3V,
  • piny GND,
  • tlačidlo RESET,
  • LED označenú L.

Vstupy a výstupy

Arduino komunikuje s okolím prostredníctvom svojich pinov.

Vstup slúži na získavanie informácií.

Príklady:

  • tlačidlo,
  • snímač teploty,
  • potenciometer,
  • svetelný senzor.

Výstup slúži na ovládanie zariadenia.

Príklady:

  • LED,
  • relé,
  • motor,
  • bzučiak,
  • displej.

Jeden pin môže byť podľa programu použitý ako vstup alebo ako výstup.

Arduino UNO a Arduino MEGA

Arduino existuje vo viacerých verziách.

Arduino UNO je menšia doska vhodná na väčšinu základných úloh.

Arduino MEGA má rovnaký základný princíp, ale obsahuje viac vstupov a výstupov a je vhodná pre rozsiahlejšie zapojenia.

Programovanie oboch dosiek je veľmi podobné.

Arduino IDE

Program vytvoríme na počítači v prostredí Arduino IDE.

Základný postup je:

  1. pripojiť Arduino pomocou USB,
  2. spustiť Arduino IDE,
  3. vybrať správny typ dosky,
  4. vybrať správny komunikačný port,
  5. napísať alebo otvoriť program,
  6. program skontrolovať,
  7. nahrať program do mikrokontroléra.

Po nahratí už program beží priamo v Arduine.

Základ programu

Každý jednoduchý Arduino program obsahuje dve základné funkcie:

void setup()
{

}

void loop()
{

}

Funkcia:

setup()

sa vykoná jedenkrát po zapnutí alebo resetovaní Arduina.

Používa sa najmä na počiatočné nastavenie.

Funkcia:

loop()

sa po vykonaní setup() opakuje stále dookola.

Práve v nej sa zvyčajne nachádza hlavná činnosť programu.

Prvý program – blikajúca LED

Arduino UNO má priamo na doske zabudovanú LED označenú L.

Pre prvý program preto nepotrebujeme žiadne ďalšie súčiastky.

Nahrajte do Arduina nasledujúci program:

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

void loop()
{
  digitalWrite(LED_BUILTIN, HIGH);
  delay(1000);

  digitalWrite(LED_BUILTIN, LOW);
  delay(1000);
}

Po nahratí programu by mala zabudovaná LED pravidelne blikať.

Čo program robí?

Príkaz:

pinMode(LED_BUILTIN, OUTPUT);

nastaví pin zabudovanej LED ako výstup.

Príkaz:

digitalWrite(LED_BUILTIN, HIGH);

zapne LED.

Príkaz:

digitalWrite(LED_BUILTIN, LOW);

LED vypne.

Príkaz:

delay(1000);

zastaví vykonávanie programu na 1000 milisekúnd, teda na 1 sekundu.

Program preto pracuje nasledovne:

  1. zapne LED,
  2. čaká 1 sekundu,
  3. vypne LED,
  4. čaká 1 sekundu,
  5. celý postup sa opakuje.

Úloha 1

Upravte program tak, aby LED:

  • svietila 0,5 sekundy,
  • bola zhasnutá 0,5 sekundy.

Úloha 2

Upravte program tak, aby LED:

  • svietila 2 sekundy,
  • bola zhasnutá 0,5 sekundy.

Úloha 3

Vytvorte vlastný rytmus blikania.

Napríklad:

krátko – krátko – dlho – pauza

Použite iba príkazy:

digitalWrite()

a

delay()

Úloha 4 – premýšľanie

Odpovedzte:

  1. Koľkokrát sa po zapnutí Arduina vykoná setup()?
  2. Ako dlho sa vykonáva loop()?
  3. Čo znamená OUTPUT?
  4. Aký je rozdiel medzi HIGH a LOW?
  5. Koľko sekúnd predstavuje delay(2500)?
  6. Čo sa stane po stlačení tlačidla RESET?

Zapamätajte si

Arduino pracuje podľa veľmi jednoduchého princípu:

VSTUP → PROGRAM → VÝSTUP

Program určuje, čo má mikrokontrolér robiť.

Po zapnutí Arduino začne vykonávať program uložený vo svojej pamäti a pokračuje, kým ho nevypneme alebo neresetujeme.