Arduino [čítaj Arduíno] je v informatike názov malého jedno-doskového počítača založeného na mikrokontroléri ATmega od firmy Atmel. Svojim návrhom sa snaží podporiť výučbu informatiky v školách a oboznámiť študentov s tým, ako sú pomocou počítačov riadené rôzne zariadenia (napr. mikrovlnná rúra, automatická práčka a iné stroje).
Nejedná sa teda o počítač v zmysle stolného počítača alebo smartfónu. Nemožno preto k nemu ľahko priamo pripojiť monitor ani klávesnicu či myš, ale je pripravený na pripojenie LED diód, displeja z tekutých kryštálov, servomotorov, senzorov, osvetlenia atď.
Charakteristika
Arduino je otvorená platforma s grafickým vývojovým prostredím, ktoré vychádza z prostredia Wiring (podobný projekt ako Arduino, teda doska s mikrokontrolérom a IDE) a Processing (prostredie pre výučbu programovania). Arduino bolo prvýkrát predstavené v roku 2005. Môže byť použité na vytváranie samostatných interaktívnych zapojení alebo môže byť pripojené na softvér na počítači (napr. Adobe Flash, Processing, Max / MSP, Pure Data, SuperCollider). Momentálne možno kúpiť verzie, ktoré sú už skompletizované alebo schémy a návrhy plošných spojov sú dostupné pre tých, ktorí si chcú postaviť Arduino sami.
Na rozdiel od Raspberry Pi nie je Arduino zamýšľané ako plnohodnotný stolný počítač. Riadiaci program je vyvíjaný zvlášť (na stolnom počítači) a do Arduina je potom nahraný a spustený. Vo vnútri Arduina je potom spustený len tento program, ktorý typicky obsahuje slučku, ktorá sa neustále opakuje (Arduino neustále zisťuje stav svojho okolia a na zmeny reaguje). Vďaka tomu má nízku spotrebu (je možné napájanie malou batériou) a hodí sa napríklad pre riadenie dronov, robotov a podobne.
Arduino história
Projekt vznikol v roku 2005 v Taliansku v meste Ivrea. Jeho cieľom bolo vytvoriť jednoduchú prototypovaciu platformu pre študentov, ktorá umožní rýchly vývoj a jednoduché používanie. Projekt zaznamenal veľký úspech a neskôr začali vznikať jeho ďalšie, novšie verzie. Do februára 2010 sa údajne predalo viac ako 120 tisíc kusov.
Zakladatelia Massimo Banzi a David Cuartielles pomenovali projekt po Arduinovi Ivrejskom, významnej historickej postave mesta. Projekt Arduino získal ocenenie v kategórii digitálnych komunít na Prix Ars Electronica 2006. V roku 2010 vyšla, zatiaľ posledná, verzia Arduino dosky s označením Uno, ktorá nahradila svojho predchodcu Duemilanove. Od roku 2012 sú v predaji dosky Due (s procesorom ARM) a Leonardo a tiež nová revízia Una R3.
Filozofia
Projekt Arduino je už od svojho počiatku voľne dostupný (open-source) všetkým používateľom, ktorí ho chcú používať a / alebo vylepšovať. Dokumentácia a referenčná príručka jazyka a externých knižníc je potom väčšinou vydávaná pod licenciou Creative Commons. Vďaka tomu sú k dispozícii všetky zdrojové súbory a je dodržiavaná určitá kompatibilita (či už pomocou jazyka Java, v ktorom je napísané vývojové prostredie (IDE) alebo vďaka použitiu USB-to-RS-232 prevodníkového čipu, ktorý zaisťuje virtuálne sériovú linku a pre ktorý sú bežne dostupné ovládače na väčšinu platforiem).
Arduino sa tiež snaží byť dostupné aj cenovo, to dosahuje použitím lacnej pracovnej sily v Taliansku. Pre svoje univerzálne uplatnenie je Arduino vyhľadávané predovšetkým domácimi kutilmi. Možnosti jeho využitia sú rozsiahle. V Českej a Slovenskej republike sa začína postupne rozširovať. Existuje niekoľko elektronických obchodov, ktoré dovážajú už hotovú dosku a vznikajú aj weby a články venované práve Arduinu.
Platforma
Dosky Arduino obsahujú 8-bitové mikrokontroléry z rodiny AVR od firmy Atmel a množstvo ďalších podporných obvodov. Oficiálne vydanie Arduino, ktoré vyrába a predáva Talianska firma Smart Projects, používajú čipy ATMega8, ATMega168, ATMega328, ATMega1280 a ATMega2560. Arduino Due obsahuje 32-bitový ARM procesor Atmel SAM3X8E. Každá doska má väčšinu I/O pinov prístupných cez štandardizované pätice, do ktorých sa jednoducho pripájajú ďalšie obvody, ktorým sa vo svete Arduino hovorí SHIELD. Na doskách býva niekoľko diód, resetovacie tlačidlo, konektory pre ICSP programovanie, napájací konektor, oscilátor a obvod sprostredkujúci komunikáciu po USB. Základná verzia Arduina (Arduino Uno), poskytuje celkom 14 I/O digitálnych pinov a 6 pinov analógových. Šesť digitálnych pinov je tiež možné použiť na softvérovo riadený PWM výstup.
Hlavný mikrokontrolér, ktorý je užívateľsky programovateľný, už má bootloader (kód, ktorý sa po spustení postará o základné nastavenia mikrokontoléru, ako sú interné časovače, nastavenie rozhrania USART a ďalšie) a nastavenie potrebných fuses bajtov (tými sa nízkoúrovňovo nastavujú niektoré vlastnosti čipu). Vďaka tomu sa používateľ nemusí starať o detaily a svoje programy píše v jazyku podobnom C / C ++.
Hoci je Arduino pripojené k počítaču pomocou rozhrania USB, je softvérovo simulovaná sériová komunikácia cez linku RS-232. V starších doskách, ako je napríklad Duemilanove alebo Diecimila, sa pre tieto účely používali FTDI čipy, v doske Uno toto obstaráva ATMega8U2 s predprogramovaným firmware (ten je, ako všetko ostatné, voľne dostupný v podobe zdrojových kódov).
Vďaka otvorenosti celého projektu vzniká množstvo klonov od ďalších firiem aj jednotlivcov. Samotné Arduino možno jednoducho poskladať aj z jednotlivých súčiastok na nepájivom kontaktnom poli. Z klonov, ktoré sú s pôvodným Arduinom kompatibilné, sú napríklad:
- “FreeDuino” Free klon Arduino - v súčasnosti v1.16, klon Diecimila.
- “LABduino” Český klon Arduino vytvorený z otvorenej elektronickej stavebnice MLAB.
- “Bare Bones Board” Arduino - kompatibilné, vyrábané a predávané ako kit firmou Modern Device Company.
- “Runtime” Arduino - kompatibilná doska, vyrábané a predávané ako kit firmou NKC Electronics.
- “Boarduino” lacnejší klon Arduino Diecimila s piny pre zapojenie rovno do nepájivého poľa.
- “Arduelo Libero” mierne vylepšený český Free klon Arduino Diecimila.
- “Seeeduino” SMD verzia 1.0b kompatibilná s Arduino Diecimila.
Typy Arduino dosiek
Označenie modulov |
Mikrokontrolér | Flash KiB |
EEPROM KiB |
SRAM KiB |
Digitálne I/O piny |
PWM kanály |
Analógové vstupy |
Komunikačné rozhrania |
Rozmery [mm] |
---|---|---|---|---|---|---|---|---|---|
Diecimila | ATmega168 | 16 | 0.5 | 1 | 14 | 6 | 6 | USB | 68.6 x 53.3 |
Duemilanove | ATmega168 ATmega328 |
16 32 |
0.5 1 |
1 2 |
14 | 6 | 6 | USB, SPI, ICSP, I2C | 68.6 x 53.3 |
Uno | ATmega328 | 32 | 1 | 2 | 14 | 6 | 6 | USB, SPI, ICSP, I2C | 68.6 x 53.3 |
Due* | ATMEL SAM3X8E | 512 | 0 | 96 | 54 | 12 | 12 | USB, CAN, ICSP, 2x TWI, 2x I2C, 4x UART, 2x DAC |
101.6 x 53.3 |
Mega | ATmega1280 | 128 | 4 | 8 | 54 | 14 | 16 | USB, SPI, ICSP, I2C, 4x UART |
101.6 x 53.3 |
Mega2560 | ATmega2560 | 256 | 4 | 8 | 54 | 14 | 16 | USB, SPI, ICSP, I2C, 4x UART |
101.6 x 53.3 |
Leonardo | ATmega32u4 | 32 | 1 | 2.5 | 20 | 7 | 12 | USB,ICSP, TWI, I2C, 1x UART |
68.6 x 53.3 |
Ethernet | ATmega328 | 32 | 1 | 2 | 14 | 4 | 6 | Ethernet, SD card, SPI, TWI |
40.6 x 27.9 |
Nano | ATmega168 v2.x ATmega328 v3.x |
16 32 |
0.5 1 |
1 2 |
14 | 6 | 8 | Mini-B USB, I2C, SPI |
43.0 x 18.0 |
LilyPad | ATmega168V ATmega328V |
16 32 |
0.5 1 |
1 2 |
14 | 6 | 6 | žiadne (FTDI) | ø 50 |
Yún | Atheros AR9331 (ATmega32u4) |
16 MiB (32KiB) |
1 | 64 MiB DDR2 (1KiB) |
20 | 7 | 12 | USB, SPI, CSP, I2C | 68.6 x 53.3 |
* na rozdiel od väčšiny Arduino dosiek Arduino Due doska beží na 3.3V. Maximálne napätie, ktoré I/O piny znesú je 3.3V. Pri vyššom napätí ako 3.3V na I/O pin by mohlo poškodiť mikrokontrolér!
Kde kúpiť Arduino
Dá sa kúpiť samozrejme na originálnych stránkach store.arduino.cc, ale počítajte pre našinca s premrštenou cenou. Najčastejšie dosky Arduino sa nakupujú v čínskych eShopoch ako napríklad www.aliexpress.com a to hlavne kvôli dostupnej cene. Ja osobne tiež tam objednávam a zatiaľ som veľmi spokojný. Zbierka príslušenstva a množstva senzorov na rôzne (aj testovacie) projekty sa každým mesiacom rozrastá. Ďalšie informácie o doske Arduino UNO nájdeš v ďalšom článku.