Arduino je open-source platforma koju je stvorio SmartProjects i bazirana je na Atmelovu mikrokontroleru atmega328p. Ideja je nastala 2005. godine u Italiji u kafiću Arduino, po kojem je i sama pločica dobila ime.
Zašto je postao toliko popularan?
Originalna Arduino pločica s RS323
Arduino je među prvim pločicama koje su na sebi imale Atmelov mikrokontroler i dio za komunikaciju s računalom, koja je ostvarena preko USB priključka, a prije toga se komunikacija vršila preko serijskog porta RS323. RS323 je „izumro“ još prije 10-ak godina te se nije više ugrađivao na prijenosna, ali ni na stolna računala.
Programiranje takvih mikrokontrolera zadavalo je glavobolju sve dok se nije pojavio Arduino s konverterom RS323-USB. Svojom cijenom od 20-ak eura za model UNO bio je poprilično prihvatljiv za entuzijaste. Open-source platforma tip je platforme u kojem je javno dostupna sva dokumentacija, od shematskih prikaza do programskih kodova.
Što se može s takvom pločicom?
Mogućnosti su neograničene. Dodavanjem raznih senzora možete zaprimati podatke iz okoline poput temperature, vlažnosti zraka, količine svjetlosti, udaljenosti itd. Također možete i upravljati raznim uređajima većih snaga poput rasvjetnih tijela i elektromotora pomoću releja.
Ali dodavanjem raznih shieldova, odnosno dodataka koji se spajaju direktnim dodavanjem na pločicu možete svoj Arduino povezati s vanjskim svijetom preko interneta ili GSM mreže. Također na njemu možete držati i manju web stranicu. WOW! Zbrojivši samo neke od opcija, čini se da je Arduino zbilja neograničen u mogućnostima.
Kako se programira?
Programiranje je poprilično jednostavno i radi se pomoću programa koji je napravila ekipa iz Arduina, a programski jezik malo je modificirana verzija jezika C. Sintaksa je poprilično jednostavna čak i ako se prvi put susrećete s njim. Brojni kodovi već su integrirani u samom programskom jeziku te ih lako možete upotrijebiti iz alatne trake, a odlični su za učenje i razumijevanje.
U tom segmentu ipak je za mrvicu teži od micro:bita jer on, iako se programira u Javi, ima mogućnost odabira blokovskog koda koji se slaže poput lego kockica.
Na početku programskog koda uključujemo biblioteke koje će nam trebati (eng. libraries). One se koriste kod nekih senzora i shieldova jer imaju već unaprijed definirane funkcije koje kasnije možemo pozvati bez potrebe da svaki put pišemo što one rade. Osim biblioteka, na početku koda definiraju se varijable.
Naprimjer, const int LED=2; varijablu LED definirat ćemo da nam to bude digitalni pin 2. Za analogni pin bismo dodali A ispred broja pina, što bi u ovom slučaju bilo A0.
Void loop: je petlja koja se konstantno izvršava u programu dok naš Arduino radi
„Void setup“ izvršava se samo jednom i to prilikom pokretanja programa. U njemu definiramo smjerove naših pinova; pinMode(LED,OUTPUT); ali također i definiramo početak komunikacije, koju može ostvariti na razne načine poput Bluetootha ili direktno s računalom.
„Void loop“ je petlja koja se konstantno izvršava u programu dok naš Arduino radi. Ako stavite ispitivanje vrijednosti analognog ulaza A1, program će to cijelo vrijeme izvršavati u beskonačnoj petlji. Kombinacijom fotootpornika i ledice možete napraviti jednostavan kod koji će ledicu paliti kada ne bude svjetlosti. A kako bi to izgledalo?
Verzije?
Postoje razni klonovi Arduina koji doslovno nemaju nikakve razlike jer su više-manje identično napravljeni te se čak programiraju iz istog programskog koda. Njihova je cijena manja 3-10 puta! Osječka ekipa iz e-radionice napravila je vlastitu verziju Arduina i nazvala ga Croduino.
Cijena je 100 kn za osnovni model i samim time postaje apsolutno prihvatljiva za sve. Iz Kine možete dobiti i za 25 kn, provjereno radi! Većina verzija Arduina pokreće s Atmelovim procesorom 328p, ali ako vam on nije dosta, postoji MEGA. S 54 digitalna ulaza/izlaza i procesorom Atmega2560, svakako će vas zadovoljiti.
Arduino Mega je dobra opcija za veće projekte jer nudi više od Una
Primjena:
Kao što smo već i naveli, mogućnostima nema granica. Prije nekoliko brojeva pokazali smo vam kako napraviti SmartHouse za par stotina kuna. Upravljati trošilima, primati podatke od senzora i sve to pomoću pametnog telefona. Budući da je Arduino open-source platforma, na internetu možete pronaći mnoštvo gotovih projekata. Automatizirano navodnjavanje biljaka, kućanski aparati, CNC strojevi itd. Ako ostanete bez ideje, ne brinite – sigurni smo da ćete na internetu pronaći nešto zanimljivo.
Tehničke specifikacije modela UNO:
Ulazni napon napajanja kreće se u rasponu 6-20 V, dok je radni napon 5 V. Pločica sadrži 14 digitalnih ulaza/izlaza od kojih je 6 PWM izlaza, dok je analognih ulaza/izlaza 6. Maksimalna struja na izlazu je 20 mA, što nije dovoljno da se pokrene relej, nego će se morati koristiti vanjsko napajanje kao i za većinu složenijih senzora.
Iako se navedeni Atmel vrti na 16 MHz uparen s 32Kb FLASH i 2Kb SRAM memorije, ne dajte da vas malene brojke zavaraju. Ovaj procesor može izvršavati i neke zahtjevnije stvarčice, pa i 500-tinjak linija koda. Za primjer ćemo vam dati našu pametnu kuću koju smo izradili prije nekoliko brojeva. Upravljanje rasvjetom i prikupljanje podataka iz senzora Bluetoothom su povezani s pametnim telefonom, a naravno da postoji još hrpa prostora za nadogradnju. Tko bi rekao!