RGB Ledka dokáže svietiť ľubovoľnou farbou čo dokáže mixovaním troch farieb -červenej, zelenej a modrej.
Najdlhší káblik na Ledke sa pripája na GND na Arduine. Na zapojenie okrem Ledky potrebujeme 3x 100 ohmový odpor (ide to aj bez nich ale znižuje sa tým životnosť Ledky) , nepájivé pole a Arduino. Zapojenie vyzerá takto:
Program každú sekundu necháva zasvietiť inú farbu. Na pomoc používa procedúru RGB_color. Tá je tam kvôli jednoduchšiemu použitiu programu. Vysvietenú farbu môžete meniť parametrami v RGB_color( x , x , x) .
Pre zapínanie a vypínanie komponentov potrebujete tlačidlo. Na ovládanie LEDky cez tlačidlo potrebujeme Arduino, tlačidlo, LEDku, 220 ohmový a 10 kiloohmový rezistor , nepájivé pole a pár káblikov.
Samotné zapojenie vyzerá takto:
Zdroj: create.arduino.com
Keď sa stlačí tlačidlo tak na pin 2 príde 5 voltov teda logická 1-ka. Keď nie je tlačidlo stlačené stále do pinu 2 prúdi ide malé napätie cez 10kiloohmový odpor pretože v Arduine logická nula nie je 0 voltov ale asi 0,2 voltov. Bez tohto zapojenia by sa obvod správal nestabilne.
Program vyzerá takto:
int stav = 0;
void setup() {
pinMode(13, OUTPUT);
pinMode(2, INPUT);
}
void loop() {
stav = digitalRead(2);
if (stav== HIGH) {
digitalWrite(13, HIGH);
delay(2000);
digitalWrite(13, LOW);
}
delay(100);
}
Po spustení programu sa prečíta z pinu 2 (stav=digitalRead(2);) stav stlačenia tlačidla. Ak je tam 5voltov -HIGH , tak sa zapne LEDka na pine 13, počká sa 2 sekundy a LEDka sa vypne.
Motor slúži na pohon robotických autíčok, rôznych podvozkov a podobne.
Na napájanie motora je potrebné zapojiť aj tzv. motorový ovládač ako napríklad tento model L9110 kvôli tomu, že motor potrebuje extra energiu na prevádzku:
Na samotné zapojenie budeme potrebovať Arduino, motorový ovládač, 2 motory, krížový šrobovák a pár káblikov:
Zdroj: fritzing.com
Na pohon 2 motorov stačí aj napájanie s Arduina, ale ak budete mať pocit, že motory idú pomaly alebo slabo môžete na červený (+) a čierny (-) káblik zapojiť 9 voltovú batériu. Samotné zapojenie vyzerá takto:
Kód je podobný ako pri zapojení LEDiek. Motory sa najprv roztočia dopredu 5 sekúnd, potom dozadu 5 sekúnd a nakoniec 5 sekúnd budú nehybné a to všetko sa bude neustále opakovať.
Fotorezistor je súčiastka, ktorá mení odpor podľa dopadajúceho svetla. Vhodný na rôzne stmievače, nočné svetlá a podobne.
Zapojíme si obvod ktorý rozsvieti LEDku keď sa zhasne v miestnosti a naopak. Pre jeho zapojenie potrebujeme Arduino, nepájivé pole, fotorezistor, 10kiloohmový odpor a pre zapojenie LEDky potrebujeme 1 LEDku a 100 ohmový rezistor a ešte pár káblikov:
int value;
void setup(){
pinMode(3, OUTPUT);
pinMode(A0, INPUT);
}
void loop(){
value = analogRead(A0);
if (value > 300){
digitalWrite(3, LOW);
}
else{
digitalWrite(3, HIGH);
}
}
Okrem digitálnych pinov 1-13 máme na Arduine aj analógové piny A0-A5. Tie načítavajú elektrickú energiu s káblika, ktorý je do nich zapojený a keď načítajú nulovú energiu uložia si ju ako 0 a keď maximálnu energiu uložia si ju ako 1000.
Obvod s fotorezistorom je zapojený do A0. Keď naň dopadá svetlo tak do A0 ide veľa energie – uloží sa veľké číslo (číslo sa číta z A0 cez príkaz analogRead) a naopak keď naň dopadá málo svetla uloží sa malé číslo. V programe je podmienka, ktorá ak je uložené číslo väčšie ako 300 vypne LEDku a ak menšie ako 300 tak zapne LEDku. Menej ako 300 je už skoro tma. Ak to nefunguje je potrebné meniť číslo 300 v programe v rozsahu od 0-1000 a skúšať funkčnosť.
Servo motor je súčiastka vhodná na otáčanie častí robotov, robotických rúk, rámp a podobne. Na zapojenie potrebujeme len servo a Arduino. Zapojenie vyzerá takto:
Servo sa môže otáčať len od 0 do 180 stupňov – pol otáčky. Program otočí servo na 0 ° , počká 1 sekundu, otočí servo na 90 ° , počká 1 sekundu a otočí servo na 180 ° a počká 1 sekundu o to všetko stále opakuje.
Všimnite si že bolo prvýkrát potrebné pripojiť (include) knihovnu k programu. Základné knihovny (ako táto) sú súčasťou inštalácie programu.
Prajem Vám kopu super projektov s týmito súčiastkami.
Táto séria článkov bez nejakého väčšieho vysvetľovania rýchlo krok za krokom ukáže ako pracovať s Arduinom, keďže informácií o ňom je plný internet.
Arduino a súčiastky je možné zakúpiť najlepšie dvoma spôsobmi:
cez Aliexpress -lacno ale doba dodania je okolo jedného mesiaca
cez Techfun.sk – drahšie ale doba dodania je 2-3 pracovné dni
Príklad: Arduino Uno – Aliexpress 4 eurá(a to je jeden s tých drahších komponentov pre Arduino- ak sa v návodoch objaví drahší komponent spomeniem to) vs. Techfun 10 eur. Objednávka cez Aliexpress je s poštovným zdarma a s ohľadom na nízku cenu aj bez cla (hlavne neobjednávajte naraz za viac ako 22 eur).
Príprava
Vývojové prostredie Arduino IDE si stiahnite zo stránky https://www.arduino.cc/en/Main/Software . Počas inštalácie si program pár krát vyžiada povolenie na inštaláciu ovládačov – všetky povoľte.
Pri kúpe Arduina z Číny je ešte potrebné nainštalovať tzv. CH340 ovládač. Stiahnite ho odtiaľto- CH340 driver for Windows 8.1 x64 & x86 , odzipujte (skopírujte všetky súbory do novovytvoreného priečinku) a nainštalujte (dvojklik na súbor SETUP a po spustení klik na INSTALL ).
Spustite program a Arduino Uno prepojte cez USB kábel s voľným USB portom vášho počítača. Potom sa v programe v ponuke Tools-Board uistite že máte nastavenú dosku Arduino Uno:
Ďalej v ponuke Tools-Serial Port zapnite port v ktorom je zapojené Arduino-obvykle je to ten jediný port čo je k dispozícií (občas sa stane že tam nie je žiaden dostupný port – odpojte a znovu zapojte Arduino do počítača a ono to po čase nabehne ) :
Zapojenie LEDiek
Teraz môžeme vytvoriť prvý projekt – zapojiť malé svetielká LEDky. Budeme potrebovať LEDku, rezistor, nepájivé pole a pár káblikov. Najprv si vysvetlíme nepájivé pole. Je to doska z veľkým množstvom dierok kde je možné zapájať kábliky. Dierky sú prepojené medzi sebou takto:
Na doske Arduino sú digitálne piny 1 – 13, ktoré budeme prepájať cez kábliky s nepájivým polom:
Každá LEDka má 2 nožičky pričom jedna je dlhšia . Tú budeme prepájať káblikmi s pinmi 1-13 (kladný pól). Kratšiu nožičku budeme prepájať cez kábliky s portom GND(záporný pól -zem) na doske Arduino. Rezistor o veľkosti 100 ohmov (alebo podobný od 10 po 1000 ohmov )zapojíme tiež. Rezistor znižuje napätie ktoré ide do LEDky. Samotné zapojenie môžeme urobiť pre začiatok takto:
Zdroj: Arduino project hub
Program sa skladá z dvoch častí:
void setup(){ } – v zátvorkách sú príkazy ktoré sa vykonajú len raz
void loop(){ } -v zátvorkách sú príkazy ktoré vykonávajú neustále
Do časti void setup napíšeme príkaz pinMode(8,OUTPUT); -nastaví pin 8 na posielanie el. energie do LEDky
Do časti void loop napíšeme príkaz digitalWrite(8, HIGH); -pošle el. energiu do LEDky cez port 8 -a kedže je v časti loop robí to neustále
Program pošle energiu do LEDky, počká 1sekundu , pošle nula voltov -nič do LEDky (vypne ju), počká 1 sekundu a toto opakuje neustále. Program dajte skontrolovať a odošlite do Arduina.
Môžeme teraz zapojiť dve LEDky do portov povedzme 9 a 10 a urobiť policajnú blikačku:(ako vidíte užitočné je použit prvú linku s dierkami ako spoločné prepojenie LEDiek na zem -GND)