Za one ultra lijene stvorove slijedi sažeti opis potrebnog hardvera i softvera. Za sve vas ostale koji želite pročitati više detalja, preskočite ovaj uvod i nastavite čitati ispod crte!

Da biste počeli raditi sa Arduinom treba vam neka Arduino kompatibilna pločica,nešto senzora i ostalih komponenti, ovisno o projektu. Nakon toga potrebno je instalirati drivere (upravljačke programe) za vaš Arduino i nakon toga softver za pisanje programa.  I to je to- ukratko.


 

A sada za sve vas ostale idemo polako. Od sada pa nadalje pretpostavljam da imate volju nešto naučiti i da ste otprilike svjesni čemu Arduino služi. Isto tako pretpostaviti ću da imate neku Arduino pločicu, pa možemo krenuti dalje.

Za nastavak/početak rada trebati ćete učiniti sljedeće:

  1. Preuzeti (skinuti,downloadati) Arduino razvojno okružje
  2. Spojiti Arduino na računalom putem USB kabela i instalirati drivere (upravljačke programe)
  3. Pokrenuti Arduino aplikaciju/program i otvoriti primjer “Blink”
  4. Odabrati svoju pločicu (UNO, Mega….) i serijski port na koji je pločica spojena
  5. Uploadati (učitati,snimiti,upucati) svoj prvi sketch

Bez brige,možda izgleda komplicirano,ali zaista je prilično jednostavno. Zapravo, male su šanse da nešto krene po zlu, pogotovo ako slijedite kvalitetne upute, poput ovih 🙂

 

Instalacija softvera

Prva stvar koju trebate napraviti je preuzimanje i instalacija Arduino softvera. Pošto Arduino tim manje-više redovito izbacuju noviju verziju programa, ovdje ću staviti link na glavnu stranicu za download. Nalazi se na adresi: https://www.arduino.cc/en/Main/Software

Da se ne lažemo previše,Windows je najpoznatiji i najrašireniji operativni sustav za osobna računala stoga će svi primjeri biti napravljeni na Windows OS-u.

Arduino softver možete skinuti i za ostale operativne sustave, ali ih ja vrlo vjerojatno neću ovdje previše spominjati. Dakle,ako koristite Linux ili Mac OS X također možete skinuti Arduino softver.

Sa gornjeg linka skinite verziju softvera koja odgovara vašem operativnom sustavu i instalirajte ga na svoje računalo. Neki korisnici Windows 10 OS-a javljaju da instalaciju treba pokrenuti kao administrator,inače ne radi. Osobno nisam imao taj problem,ali vi ćete možda imati,pa vas stoga obavještavam o mogućem problemčiću.

Kada je sve instalirano,pokrenite Arduino aplikaciju. Nakon pokretanja dočekati će vas otprilike ovakav prozor.

 

arduino_softver

Ukoliko vam engleski baš i ne odgovara,program možete prebaciti na hrvatski jezik na sljedeći način:

Izbornik File–>Preferences–>Editor Language. Ovdje odaberite “Hrvatski” i kliknite OK. Nakon toga ugasite i ponovo pokrenite Arduino aplikaciju.
Svi moji primjeri prikazani u aplikaciji biti će na engleskom jeziku. Oprostite ako vam to smeta,ali ja sam tako navikao.

Sada je vrijeme da otvorimo svoj prvi primjer,odnosno sketch (skeč) kao ga autori nazivaju. Dakle, idemo: File –>Examples –>1.Basics –>Blink

U programu trebao bi se naći ovaj kod:

Da bi vidjeli efekt/rezultat ovog kôda, potrebno je ovaj kôd zapisati (snimiti/upucati/uploadati) u vaš Arduino. Da bi softver pravilno bio prebačen u Arduino najprije je potrebno odabrati vašu pločicu sa popisa. Iz izbornika Tools odaberite Board (Alati –> Pločica) ,a zatim pločicu koju posjedujete. U našim primjerima koristimo Arduino Uno.

odabir_ploce

 

Preostaje nam još samo jedna postavka koju je potrebno podesiti i možemo nastaviti dalje. Preostalo nam je odabrati port na koji je Arduino spojen. To ćemo također učiniti u izborniku Tools (Alati) –>Port. Na prethodnoj slici možete vidjeti da je opcija “Port” nedostupna (sive boje). To znači da najprije morate priključiti svoj Arduino,a zatim odabrati port. U našem slučaju to je port COM3. Najčešće ćete imati samo jedan port u ponudi,stoga vam odabir neće biti težak.

odabir_porta

Kada smo sve podesili vrijeme je da nešto i napravimo.

 

Upload prvog sketcha

Kada ste instalirali drajvera,IDE i točno podesili/odabrali pločicu i port,možete uploadati  ovaj sketch  u Arduino. Ako sve prođe kako treba možemo početi sa ozbiljnijim projektima. Ukoliko ste pažljivo pogledali ovaj primjer koda, na početku u komentaru stoji ovaj tekst:

Most Arduinos have an on-board LED you can control. On the Uno and Leonardo, it is attached to digital pin 13. If you’re unsure what pin the on-board LED is connected to on your Arduino model, check
the documentation at http://www.arduino.cc

 

Ovo znači da većina Arduino pločica ima već ugrađenu LED-icu koja je spojena na pin 13 što je dovoljno za naš primjer.  Ukoliko imate pločicu bez LED diode,skoknite na našu prvi projekt gdje se nalazi shema i sve ostalo što vam je potrebno  za izradu ovog projekta.

Pošto bi sketch “Blink” već trebao biti otvoren u vašoj Arduino aplikaciji potrebno ga je samo upucati u Arduino. Da biste to učinili jednostavno kliknite na ikonu/gumb “Upload” (druga tipka slijeva na desno-izgleda kao strelica koja pokazuje u desnu stranu). Ukoliko koristite hrvatski jezik, tada će to biti “Prenesi”.  Klikom na tu ikonu Arduino IDE prikazati će poruku “Compiling sketch . . .” koji će se kasnije promijeniti u  “Uploading . . .”. Nadalje diode RX i TX trebale bi početi treptati (bljskati/blinkati) što je znak da je prijenos podataka sa računala u Arduino u tijeku.

Kada je prijenos podataka završen diode RX i TX prestaju svijetliti,a Arduino aplikacija pkazuje poruku “Done uploading”.

Nekoliko sekundi kasnije LED-ica bi trebala početi treptati .

 

Još jedna prilično važna obavijest za sve vas koji počinjete ulaziti u Arduino svijet. Pokušajte naučiti osnove engleskog jezika, jer će vam tako život biti jednostavniji. Lakše ćete shvatiti kôd programa,a i velike većina primjera na internetu napisana je na engleskom jeziku.

Hardver

Za sve što radimo potreban nam je hardver. Što je dobro imati za početak?

Za početak vam treba samo Arduino pločica i USB kabel (pretpostavljam da računalo imate). Ovdje ću nabrojati sve što nam je potrebno za projekte koje planiram ovdje prikazati. Projekti koje u trenutku pisanja ovog teksta nisam predvidio, možda će trebati još nešto dodatnih komponenti,ali o tome ćete ionako biti na vrijeme obaviješteni. Što se količine ovih komponenti tiče…od viška glava ne boli. Dakle,ako si možete priuštiti, nabavite koji komad više. Ali nemojte poslije reći da vam je račun u minusu zbog mene 🙂

Nazivi senzora biti će na engleskom jeziku, jer ćete ih tako kasnije lakše pronaći.


  1. Arduino UNO R3, breadboard, jumper wires, USB cable
    arduino-  breadboard  zice usb_kabel


  2. ADXL345 acceleration sensor
    ADXL345jpg


  3. Ultrasonic distance sensor (HC-SR04)
    HC-SR04-Ultrasonic-Sensor


  4. IR Receiver Hx1838
    hx1838


  5. Remote controller
    daljinac


  6. PS2 joystick module
    ps2_joystick


  7. Relay
    relej


  8. Stepper Motor
    450px-Stepper_motor


  9. UNL2003 stepper motor driver module
    Stepmotordiver1



  10. DHT11/ DHT22 Temperature & Humidity sensor
    dht22


  11. LED Bar Graph
    ledbar


  12. Active Buzzer
    aktivni_buzzer


  13. Passive Buzzer
    passive_buzzer_12mm_3_0_vo_p


  14. PIR Movement Sensor
    pir_senzor


  15. Servo
    servo


  16. Analog temperature sensor (Thermistor)
    termistor-ntc-ntc-640-10k-obrazek-1


  17. Breadboard power supply Module
    napajanje_ploce


  18. 4×4 Matrix Keyboard
    matrix4x4


  19. DC Motor
    dc_motor


  20. L9110 DC Motor Driver
    L9110


  21. LCD1602
    lcd1602


  22. Dot-Matrix Display
    $_35


  23. 7-segment display
    7segment


  24. 4-bit 7-segment display
    4-bit_segment


  25. NE555 Timer
    ne555


  26. 74HC595
    74hc595


  27. Light Sensor (Photoresistor)
    photoresistors


  28. Tilt switch
    Ball-Tilt-Switch


  29. Switch
    prekidac


  30. RGB LED
    rgb-led


  31. LED diode (u raznim bojama) crvene,zelene,žute,plave bijele
    Set of color 8 mm LED diodes isolated on white background


  32. Resistor (otpornik) u raznim vrijednostima. Najčešće će vam biti potrebni otpornici od 220Ω, 1kΩ, 10kΩ. No,slobodno ih nabavite u svim mogućim vrijednostima. Ovo je najjeftinija komponenta.
    otpornici


  33. Potentiometer 10kΩ
    potencimetar


  34. Capacitor (104) (keramički kondenzator)
    keramicki


  35. Capacitor 10 μF (elektrolitski kondenzator)
    elektrolitski


  36. Buttons with caps (tipkala sa kapicama, u raznim bojama i veličinama)
    tipkala


  37. NPN Transistor 8050
    8050


  38. PNP Transistor 8550
    8550


  39. Diode 1N4148
    1n4148


  40. Diode 1N4001
    1n4001


  41. Battery Holder
    drzac_baterija


  42. Header (40 pin)
    header_pin


    Na početku ovog popisa (broj 1) nalaze se četiri stavke. Pošto je Arduino pločica već opisana, smatram potrebnim malo detaljnije objasniti ostale tri stavke,tek toliko da ne tražite predugo prilikom kupnje.

Breadboard ili prototipna pločica…

….služi za izradu “na brzinu”. U njezine rupice se umeću elementi i međusobno spajaju žicama (kratkospojnicima). Ova pločica dolazi u više veličina i izgleda,a neke izvedbe je moguće i međusobno fizički povezivati da biste dobili veću pločicu.
Nekoliko slika:

  • Mala prototipna pločica

bb1

  • Velika prototipna pločica
    breadboard
  • Pločica sa elementima i običnim žicama koje služe za spajanje
    bb2
  • Pločica sa elementima,Arduinom i originalnim žicama
    bb4

 

Jumper wires (žice)

Što se žica tiče i one postoje u različitim dimenzijama,bojama i izvedbama. Preporučam nabaviti duljine žice od 10 cm i od 20 cm. Trebati će vam i jedne i druge.

  • Muško-ženske
    musko-zenske
  • Muško-muške (ove ćete vjerojatno najviše koristiti, stoga ih nabavite malo više)
    musko-muske
  • Žensko-ženske (ove ćete koristiti dosta rijetko,ali ih svejedno nabavite,jer kad vam zatrebaju teško ih je zamijeniti nečim drugim,a i nisu skupe).
    zensko-zenske

USB kabel

Kada govorimo o Arduino Uno pločici tada u 99,9% slučajeva trebate USB A–>B kabel. Ukoliko imate Arduino nano tada ćete trebati Mini USB kabel. Uz većinu pločica ide i kabel,no svakako provjerite prije kupovine,

 

  • USB A–>B kabel
    usb_ab
  • USB–> USB mini kabel
    usb_mini

Za sada su ovo sve komponente koje ćemo trebati. Možemo krenuti sa izradom projekata.

UVOD:

Ovom lekcijom započinjemo putovanje u Arduino svijet i svijet elektronike općenito. Za većinu projekata koristiti ćemo Arduino UNO pločicu,tako će biti i u ovom primjeru. Pošto je ovo prva lekcija,možda će biti nešto detaljnije opisana od budućih lekcija,ali to je stoga što ste na početku. Tako mora biti! Ako su vam neki dijelovi teksta dosadni,jednostavno ih preskočite,ako smatrate da su suvišni. Buduće lekcije biti će kraće, sa manje popratnog teksta,neke će čak biti toliko “ogoljene” da ćete dobiti samo shemu i popis materijala  🙂

 

U ovoj lekciji naučiti ćemo kako postići da LED-ica trepće/blinka. I onako,usput, malo objasniti što su otpornik i LED dioda.

MATERIJAL:

  • 1x Arduino UNO
  • 1x USB kabel
  • 1x Otpornik 220Ω
  • 1x LED dioda
  • 1x Prototipna pločica
  • 2x žice za spajanje

NAPOMENA:

Kôd programa koji ćemo koristiti u ovom projektu ponešto se razlikuje od “Blink” primjera koji možete pronaći u Arduino softveru. U biti ovdje je izbačeno sve što bi vas moglo zbuniti,inače jedan i drugi primjer rade isti posao.

Kôd programa:

 

Shema:

Arduino UNO R3

 

Ukoliko koristite Arduino Nano,tada to izgleda otprilike ovako:

treptajuca LED-ica_nano

 

Princip rada:

U ovoj lekciji programirati ćemo Arduinov GPIO izlaz da šalje/pali i gasi napon od 5V, te na taj način omogući LED-ici koja je priključena na GPIO Arduina. Ovisno o napisanom programu dioda će treptati u određenom ritmu.

 

Što je LED dioda?

LED je kratica/skraćenica koja na engleskom jeziku znači Light Emiting Diode. Na hrvatskom to bi bila svijetleća dioda. LED ima dvije elektrode (pozitivnu i negativnu),a svijetli samo ako je pravilno priključena. Odnosno, ne radi na principu klasične žarulje kojoj je svejedno kako joj priključite žice. LED se obično proizvodi u nekoliko boja. Najčešće su to: crvena,žuta,zelena,plava i bijela. Boja LED-ice ovisi o materijalu od kojeg je napravljena.

U osnovi struja potrebna za rad LED-ice najčešće se kreće u rasponu od 5-20mA. Stoga u praksi uz LED najčešće ide dodatni otpornik koji ograničava struju, te na taj način čuva LED diodu.

Na slici ispod nalazi se prikazan simbol LED diode kakav se nalazi na shemama i kratki prikaz vanjskog izgleda diode.

led_shema

Fotografije dioda različitih oblika i boja:

led_vrste

LED diode proizvode se i u SMD izvedbama (vidi sliku ispod),ali zbog malih dimenzija i nepraktičnosti nećemo ih koristiti.

smd

Što je otpornik ?

Glavna namjena otpornika je ograničavanje struje. U shemama otpornik se označava slovom R , a mjerna jedinica za otpor je ohm (om). Simbol za otpor je grčko slovo omega Ω.

U ovoj lekciji koristiti ćemo “obični” otpornik. Postoje različite vrste i vrijednosti otpornika. Kolika je vrijednost otpora pojedinog otpornika,možemo utvrditi mjerenjem ili očitavanjem boja prstenova koji se nalaze na otporniku. Svaka boja ima svoju vrijednost,a njihova međusobna kombinacija može se dobiti korištenjem tablice na slici ispod. Također na internetu možete pronaći dosta programa koji će ovaj posao odraditi za vas, kao što je ovaj:

http://www.dannyg.com/examples/res2/resistor.htm ili ovaj ovdje: http://www.hobby-hour.com/electronics/resistorcalculator.php

Ili ako više volite programe; evo i jedan program za Android: https://play.google.com/store/apps/details?id=com.adit.aditr  ili za Windowse: Resistor Calculator.

tablica_otpora

Simboli za otpornik:

Kao što vidite,Amerikanci i Japanci koriste drugačiji simbol za otpornik

otpornik_simboli

LED ćemo na Arduino spojiti prema slijedećoj shemi:

led_shema_1

Prema gore prikazanoj shemi, anoda (+) LED-ice spojena je na Arduinov GPIO preko otpornika,a katoda (-) LED-ice je spojena na GND (minus,masu). Kada se napon pojavi na GPIO (odnosno na pinu br. 13) LED-ica će svijetliti sve dok se napajanje na pinu 13 ne prekine.

Vrijednost otpornika za ovu LED-icu izračunavamo pomoću Ohmovog zakona koji kaže da se vrijednost otpora dobije dijeljenjem napona i struje. Pošto su nam ti podaci poznati idemo to obaviti:

R=U/I  

R= otpor, U=napon, I=struja

Pošto LED-icu napajamo sa 5V,a znamo da je struja koja ide kroz diodu 5-20mA, tada dolazimo do slijedeće računice da je vrijednost otpornika između 250 i 1000 ohma. Pošto imamo namjeru da nam LED-ica svijetli što jače,otpor tada mora biti što manji. Odlučili smo se za otpornik od 220Ω, jer LED-ica ima još neki unutarnji otpor. Naravno da možete odabrati bilo koji veći otpornik,ali tada LED-ica neće svijetliti tako intenzivno.

Ključne funkcije

 

setup()

Funkcija setup() poziva se prilikom pokretanja skeča. Koristi se za inicijalizaciju varijabli,pin modova, pokreće knjižnice (libraries) itd… Funkcija setup() pokreće se samo jednom nakon svakog uključivanja ili resetiranja Arduina.
loop()

Nakon kreiranja setup() finkcije,koja inicijalizira i podešava početne vrijednosti. funkcija loop() radi ono što joj samo ime kaže (na engleskom = petlja) i ponavlja se uzastopno dozvoljavajući vašem programu da se mijenja i odgovara. Koristite je za aktivno upravljanje Arduinom.

pinMode()

Konfigurira određeni pin da se ponaša kao ulaz ili izlaz.
U Arduinu od verzije 1.0.1 mogu se omogućiti interni pullup otpornici u modu INPUT_PULLUP. Osim toga INPUT mod izričito onemogućuje interne pullup otpornike.

digitalWrite()
Zapisuje vrijednosti HIGH ili LOW za neki određeni pin.

Ako je pin konfiguriran kao OUTPUT (izlaz) korištenjem pinMode() finkcije, tada će njegov napon biti podešen na odgovarajuću vrijednost od 5V (ili 3,3V na nekim 3,3V pločama) kada je vrijednost HIGH. Kada pin konfiguriramo kao LOW tada je napon 0V.

delay()
Ova funkcija pauzira (privremeno zaustavlja) program na neko određeno vrijeme (u milisekundama) naznačeno kao parametar. (Jedna sekunda ima 1000 milisekundi).
I to je to za prvu lekciju. Sada je potrebno spojiti sve prema ponuđenoj shemi, iskopirati kôd programa i prebaciti u Arduino.

 

IMG_20160503_210824

 

Video 1 :

Spojeno na Arduino Uno pločicu (Adeept)

Video 2 :

Spojeno na Arduino pločicu nepoznatog proizvođača

Video 3 :

Spojeno na Arduino Nano pločicu