Arduino

Arduino je open-source platforma založená na mikrokontroléri ATMega od firmy Atmel a grafickom vývojovom prostredí, ktoré vychádza z prostredia Wiring (podobný projekt ako Arduino, teda doska s mikrokontrolérom a IDE[1]) a Processing (prostredie pre výuku programovania).[2] Arduino môže byť použité k vytváraniu samostatných interaktívnych zapojení alebo môže byť pripojené k softvéri na počítači (napr. Macromedia Flash, Processing, Max/MSP, Pure Data, SuperCollider). Momentálne možno kúpiť verzie, ktoré sú už skompletované; schéma a návrh plošného spoja je dostupná pre tých, ktorí si chcú postaviť Arduino sami.

Arduino Uno R3 SMD

Projekt Arduino získal ocenenie v kategórii digitálnych komunít na Prix Ars Electronica 2006.[3]

Prehľad základných hardvérových modulov

Označenie modulu [4] Mikrokontrolér Napájacie napätie Flash
KiB
EEPROM
KiB
SRAM
KiB
Digitálne
I/O Piny
PWM kanály Analogové
vstupy
Komunikačné

rozhrania

Rozmery
[mm]
Nano[5] ATmega328 (8-bit) 5V 32 1 2 14 6 8 Mini-B USB, I²C, SPI 43 × 18
Diecimila[6] ATmega168 (8-bit) 5V 16 0,5 1 14 6 6 USB 68,6 × 53,3
Duemilanove[7] ATmega168 (8-bit) 5V 16 0,5 1 14 6 6 USB, SPI, ICSP, I²C 68,6 × 53,3
Uno[8] ATmega328[9] (8-bit) 5V 32 1 2 14 6 6 USB, SPI, ICSP, I²C 68,6 × 53,3
Ethernet[10] ATmega328 (8-bit) 5V 32 1 2 14* 4 6 Ethernet, SD card, SPI, TWI 68,6 × 53,3
Mega[11] ATmega1280 (8-bit) 5V 128 4 8 54 14 16 USB, SPI, ICSP, I²C, 4 UART 101,6 × 53,3
Mega2560[12] ATmega2560 (8-bit) 5V 256 4 8 54 14 16 USB, SPI, ICSP, I²C, 4 UART 101,6 × 53,3
Mega ADK[13] ATmega2560 (8-bit) 5V 256 4 8 54 14 16 USB, SPI, ICSP, I²C, 4 UART 101,6 × 53,3
LilyPad[14] ATmega168V oder
ATmega328V (8-bit)
2,7-5,5 V 16 0,5 1 14 6 6 USB ( FTDI Basic Breakout required ) ø 50
BT (Bluetooth)[15] ATmega328 (8-bit) 5V 32 1 2 14 4 6 Bluegiga WT11 Bluetooth, TWI, I²C, SPI 81,2 × 53,3
Leonardo[16] ATmega32U4[17] (8-bit) 5V 32 1 2,5 20 7 12 USB, ICSP, TWI, I²C, 1 UART 68,6 × 53,3
Micro[18] ATmega32U4 (8-bit) 5V 32 1 2,5 20 7 12 USB, ICSP, TWI, I²C, 1 UART 48,3 × 17,8
Esplora[19] ATmega32U4 (8-bit) 5V 32 1 2,5 - - - Micro USB, ICSP, Tinkerkit- konektory, TFT-konektor (LC-Display)
Yún[20] ATmega32U4 (8-bit),
Atheros AR9331 (32-bit)
5V 32,
16 MB
neobsahuje 16,
400
14 6 12 USB, SPI, ICSP, I²C 68,6 × 53,3
Due[21] AT91SAM3X8E[22] (32-bit) 3,3V 512 neobsahuje 96 54 12 12 USB, CAN, ICSP, 2 TWI, 2 I²C, 4 UART, 2 DAC 101,6 × 53,3
Zero[23]** ATSAMD21G18[24] (32-bit) 3,3V 256 0-16 emulácia 48 14 10 6 USB, ICSP, TWI, I²C, UART, DAC 68,6 × 53,3

* Niektoré z týchto 14 pinov sú rezervované.

** V roku 2015 došlo k rozkolu medzi autormi Arduina. Následne vznikli dve spoločnosti. Obe vyrábajú tento model, sú však navzájom nekompatibilné vďaka prehodeniu digitálnych pinov 2 a 4. Nekompatibilné verzie majú názvy Arduino M0 a Arduino M0 Pro.

Software

Arduino Software IDE
Základné informácie
VývojárArduino Software
Posledná stabilná verzia1.8.13 (16. jún 2020)
Operačný systémViacplatformový softvér
LokalizáciaC, C++
Typ softvéruJava IDE
LicenciaGPL alebo LGPL
Ďalšie odkazy
Webová stránkaarduino.cc

Pozri aj Informačný portál

Vývojové prostredie Arduina (IDE) je viacplatformová aplikácia, naprogramovaná v Jave. Je navrhnuté tak, aby umožnilo programovať aj ľuďom, ktorí nemajú veľké skúsenosti s programovaním. Obsahuje editor kódu s bežnými vlastnosťami ako farebné označovanie syntaxe, automatické zarovnávanie a párovanie zátvoriek. Je schopné program skompilovať a nahrať do Arduina jedným kliknutím tlačidla. Program pre Arduino sa pomenúva anglickým slovom sketch.[25]

Programy pre Arduino sa píšu v jazyku Wireing (ktorý je založený na programovacom jazyku C a C++). IDE obsahuje knižnicu funkcií, ktoré uľahčujú písanie najzákladnejších operácii s hardvérom. Užívateľ musí definovať iba dve funkcie, aby sa získal spustiteľný program:

  • setup(): funkcia, ktorá sa spúšťa iba raz na začiatku programu a používa sa na nastavenie parametrov
  • loop(): funkcia, ktorá je periodicky spúšťana, pokiaľ je mikrokontrolér pripojený ku zdroju elektrickej energie

Typický prvý program pre Arduino je program na blikanie LED diódou. Program môže vyzerať takto:[26]

#define LED_PIN 13

void setup () {
  pinMode (LED_PIN, OUTPUT); // Povoliť pin 13 ako digitálny výstup
}

void loop () {
  digitalWrite (LED_PIN, HIGH); // Zapnúť LED
  delay (1000); // Čakať jednu sekundu (1000 milisekúnd)
  digitalWrite (LED_PIN, LOW); // Vypnúť LED
  delay (1000); // Čakať jednu sekundu
}

Užitočnou konštrukciou typickej dosky pre Arduino je prítomnosť LED diódy a predradného rezistora medzi pinom 13 a zemou, preto je možné tento príklad vyskúšať priamo na doske.

IDE

Na vývoj je možné použiť niekoľko verzií IDE. Je vhodné používať najaktuálnejšiu verziu, pretože v starších IDE nie sú vykonávané žiadne úpravy.

  • Arduino PRO - Táto vývojová verzia je v alfa verzii. Je postavená nad modernejšími technológiami. Využíva Electron a vzhľadom sa podobá na Visual Studio Code alebo PlatformIO. Na rozdiel od predchádzajúcich verzií ponúka napríklad debugger pre dosky s čipmi SAMD.
  • 1.9.X - Táto vývojová vetva je v beta verzii. Mala by priniesť oddelenie AVR jadra od vývojového prostredia. Po úprave bude IDE dodávané bez neho a jadro sa bude inštalovať len pomocou Manažéra dosiek.
  • 1.8.X - Táto vývojová vetva vznikla po ukončení sporov medzi firmami Arduino LLC a Arduino SRL[27]. Obsahuje podporu pre všetky dosky oboch výrobcov.
  • 1.7.X - Táto vývojová vetva bola vytvorená firmou Arduino SRL počas sporu o vlastníctvo obchodnej značky Arduino. Vyššia verzia mala naznačovať, že sa jedná o modernizovanú verziu. Nepodarilo sa jej ale na svoju stranu získať podporu vývojárov a v podstate sa sústredila iba na programovanie podpory pre dosky tejto firmy. Samotné IDE ostávalo nezmenené.
  • 1.6.X - Umožňuje programovať aj novšie moduly, ktoré sú založené na mikrokontroléroch AT91SAM3X8E alebo ATSAMD, aj všetky predchádzajúce. Napríklad Arduino Due alebo Zero. Pri niektorých knižniciach (vydávaných mimo oficiálnej distribúcie) nie je zaručené, že ich autori prispôsobili, vtedy je nutné použiť nižšiu verziu IDE.
  • 1.0.X - Umožňuje programovať iba moduly, ktoré sú založené na mikrokontroléri ATmega. Najbežnejšie je Arduino Uno.

IDE umožňuje programovať aj ďalšie mikrokontroléry. Napríklad mikrokontroléry ESP8266 so zabudovanou podporou Wi-Fi. Je to vďaka otvorenej architektúre, umožňujúcej pridávať ľubovoľné balíky programov (nazývané toolchain), ktoré vedia skompilovať program pre konkrétny cieľový mikrokontrolér.[28]

Knižnice

Programovanie Arduina uľahčuje existencia obrovského množstva knižníc. Knižnice je ucelený zdrojový kód, ktorý je obvykle umiestnený na serveri GitHub. Okrem zdrojového kódu v C++ je doplnená metaznačkami, ktoré umožňujú IDE indexovať tieto zdrojové kódy a poskytovať ich na pohodlnú inštaláciu prostredníctvom Manažéra knižníc. Knižnica obvykle poskytuje ucelenú sadu funkcií alebo tried, určených na ovládanie konkrétneho hardvéru.

Online nástroje

Arduino je možné programovať v cloude pomocou editora Arduino Web Editor na stránke Arduino Create. Obsahuje editor zdrojového kódu, úložisko pre vlastné programy, ktoré možno zdieľať s ostatnými užívateľmi a nainštalované knižnice. Programovanie v editore funguje tak, že v prehliadači sa upravuje zdrojový kód, ktorý sa odošle na preklad na virtuálny server. Z virtuálneho servera sa vráti preložený program v binárnom tvare, ktorý sa následne nahrá do Arduina pomocou programu, ktorý musí byť nainštalovaný v počítači a ktorý slúži ako prenosový mostík medzi cloudom a fyzickým hardvérom, pripojeným k počítaču.

Referencie

  1. Hernando Barragán. About Wiring [online]. [Cit. 2011-07-05]. Dostupné online. (anglicky)
  2. Daniel Shiffman. Interview with Casey Reas and Ben Fry [online]. [Cit. 2011-07-05]. Dostupné online. (anglicky)
  3. ARS Electronica. Prix Ars Electronica 2006 [online]. [Cit. 2011-07-05]. Dostupné online. (nemecky)
  4. Arduino
  5. Nano
  6. Diecimila
  7. Duemilanove
  8. Uno
  9. ATmega328P
  10. Ethernet
  11. Mega
  12. Mega2560
  13. Mega ADK
  14. LilyPad
  15. BT (Bluetooth)
  16. Leonardo
  17. ATmega32U4
  18. Micro
  19. Esplora
  20. Yún
  21. Due
  22. SAM3X8E
  23. Zero
  24. ATSAMD21G18
  25. Programming Arduino Getting Started with Sketches [online]. McGraw-Hill. Dostupné online.
  26. Vzorový príklad Blink
  27. Spor o obchodnú značku Arduino
  28. Zoznam podporovaných dosiek iných výrobcov

Zdroj

  • Tento článok je čiastočný alebo úplný preklad článku Arduino na českej Wikipédii.

Externé odkazy

This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.