User manual

Na trhu je k dostání několik desek Arduino, jako např. Arduino Uno, Arduino LilyPad a Arduino Mega
2560. Každá z těchto desek je navržena k určitému účelu a uživatel si tak může vybrat ideální sadu
pro téměř každý projekt.
Například vstupní signály lze přijímat z přepínačů, světelných senzorů, senzorů rychlosti a zrychlení,
nebo ze senzorů teploty a kolizních senzorů. Mimo to je možné přijímat příkazy i z jakéhokoli zdroje na
webu. Výstupní signály se využívají k ovládání motorů, čerpadel a obrazovek displejů.
Součástí systému je kompilátor pro standardizovaný programovací jazyk a bootloader. Programovací
jazyk vychází z Wiring a koresponduje s jazykem C++.
Projekt Arduino vznikl původně v roce 2005 ve městě Ivrea v Itálii. Jeho cílem bylo podpořit studenty
vytvořit pro ně jednoduchou prototypovou platformu, která by byla levnější a efektivnější než většina
standardních metod. Skupina vývojářů pod vedením Massimo Banziho a Davida Cuartiellesa se
rozhodla pojmenovat projekt po významné historické postavě města Arduinovi z Ivrea. Arduino je
italská verze jména, která znamená "silný přítel".
Jednočipové počítače!
Použití
Jednočipový počítač (nebo také angl. mikrokontrolér označován zkratkou µC, uC nebo MCU) je malý
počítač s jedním integrovaným obvodem, který obsahuje jádro procesoru, paměť a programovatelné
vstupní a výstupní periférie. Čip často obsahuje také paměť pro uložení programu a malou datovou
paměť (RAM).
Jednočipové počítače se používají v automaticky řízených výrobcích a zařízeních, jako jsou ovládací
systémy automobilových motorů, implantovatelné zdravotnické přístroje, dálkové ovladače,
kancelářské stroje, spotřebiče, elektrické nářadí a hračky. Svými malými rozměry a nízkou cenou
v porovnání s počítači, které používají samostatný mikroprocesor, paměť a vstupní/výstupní zařízení,
představují jednočipové počítače ekonomické řešení pro digitální ovládání i většího počtu zařízení
a procesů.
Je běžné, že typická rodina v rozvinutých zemích má dnes doma čtyři univerzální mikroprocesory a tři
tucty jednočipových počítačů. Typický automobil střední třídy má až 30 nebo i více jednočipových
počítačů. Můžete je najít rovněž v mnoha elektrických zařízeních, jako jsou pračky, mikrovlnní trouby
a telefony.
Spotřeba energie a rychlost
Některé mikrokontroléry pracují na velmi nízké taktovací frekvenci až 4 kHz, aby se zachovala nízká
spotřeba (několik miliwatt, nebo mikrowatt). Mají schopnost udržet si funkčnost a čekat na akci, jako je
stisknutí tlačítka, nebo jiné vyrušení z nečinnosti; jejich spotřeba proudu během spánku (většina
periferií a hodiny CPU jsou vypnuty) může být jen několik nanowatt, takže se většina z nich dobře hodí
k aplikacím na baterie s dlouhou výdrží. Jiné jednočipové počítače mohou plnit roli v procesech
náročných na výkon, kde mohou působit spíše jako digitální signálové procesory (DSP) s vysokou
taktovací rychlostí a velkou spotřebou proudu.
Systém Arduino využívá výkonný čip Atmel ATmega328P s 8 bitovým mikro kontrolérem při 16 MHz
a s 32 kB systémové programovací flash paměti. Napájecí napětí je celkem univerzální s rozsahem
7 - 12 V DC, což vytváří stabilizované a bezpečné provozní podmínky čipu a izolovaných vodičů až do
2 A na obvodu motoru.
Programy jednočipového počítače
Programy mikrokontroléru musí svou velikostí odpovídat dostupné programové paměti na čipu,
protože vybavit systém externí rozšiřovací pamětí by byla drahá záležitost. K převodu kódů
vysokoúrovňového jazyka a assembleru (jazyka symbolických instrukcí) na kompaktní strojový kód,
který se ukládá do paměti mikrokontroléru, slouží kompilátory a assemblery. V závislosti na zařízení
může být programová paměť trvalá, jen pro čtení (ROM), která se může programovat jen ve výrobě,
nebo to může být programovatelná Flash paměť, nebo mazatelná ROM paměť.
Mikrokontroléry byly původně programovány jen v jazyce symbolických instrukcí, ale dnes je celkem
běžné používat pro ně i různé vysokoúrovňové jazyky. Tyto jazyky jsou buď určeny speciálně k tomuto
účelu, nebo se jedná o různé verze univerzálních jazyků, jako je programovací jazyk C. Prodejci
mikrokontrolérů často poskytují nástroje bezplatně, aby bylo možné jejich hardware snadněji
přizpůsobit.
Systém Arduino nám nabízí přibližně 32 kB flash paměti pro programy, které lze psát
v programovacím jazyce C.
Architektura rozhraní
Mikrokontroléry obvykle obsahují několik nebo až celé tucty víceúčelových I/O vývodů, resp. pinů
(angl. zkratka GPIO). Vývody GPIO se pomocí softwaru nastaví buď jako vstup, nebo jako výstup.
Pokud se GPIO vývod nastaví na vstup, slouží obvykle pro čtení senzorů, nebo externích signálů.
Při konfiguraci na výstup mohou GPIO vývody řídit externí zařízení, jako jsou LED, nebo motory.
Mnoho vestavěných systémů potřebuje číst senzory, které vydávají analogové signály. Využívají
k tomu převodníky analogového signálu na digitální signál (ADC). Protože procesory jsou
konstruovány tak, aby interpretovali a zpracovávali digitální data, tj. jedničky a nuly, nedokážou udělat
nic s analogovými signály, které jim může posílat nějaké zařízení. Proto se k převodu příchozích dat
na formát, který dokáže procesor rozpoznat, používají převodníky analogového signálu na digitální
signál.
Méně obvyklou výbavou některých mikrokontrolérů je převodník digitálního signálu na analogový
signál (DAC), který umožňuje procesoru vysílat analogové signály úrovně napětí.
Kromě konvertorů obsahuje mnoho vestavěných mikroprocesorů také různé časovače. Jedním
z nejobvyklejších typů je programovatelný intervalový časovač (PIT), který slouží k odečtu od určité
hodnoty na nulu. Když dosáhne nulu, odešle na procesor mezeru, čímž signalizuje, že ukončil
odpočet. Je to užitečné např. v případě zařízení, jako jsou termostaty, které v pravidelných intervalech
kontrolují teplotu prostředí, aby rozpoznaly, kdy je potřebné zapnout klimatizaci, nebo topení, atd.
Přijímat a vysílat data pro sériovou komunikaci s malým zatížením CPU, umožňuje blok UART
(univerzální asynchronní přijímač/vysílač). Tento kousek hardwaru na čipu disponuje i možností
komunikovat s jinými zařízeními (čipy) v digitálních formátech, jako je I
2
C a sériové periferní rozhraní
(SPI).
Systém Arduino nabízí 14 digitálních I/O vývodů a 7 analogových I/O vývodů.
ROBOT AREXX ARDUINO
Obr. 1: Deska plošných spojů AAR