Top Banner

of 12

Arduino Uvod

Mar 08, 2016

Download

Documents

Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
  • TEHNIKA)KOLA)PULA)))))MIKRORAUNALA+

    MIKROPUPRAVALJAI+))))))ARDUINO)KROZ)JEDNOSTAVNE)PRIMJERE)6)LABORATORIJSKE)VJEBE)6))))LABORATORIJSKA+VJEBA+0+

    5+UPOZNAVANJE+S+ARDUINOM+5+))))))PAOLO)ZENZEROVI)))))))))PULA,)2015.) )

  • ) 2)

    Uvod%u%mikrokontrolere%i%Arduino%)Ve)smo)nekoliko)puta)spomenuli)mikrokontrolere,)a)zapravo)nismo)pojasnili)to)su)to)mikrokontroleri.)Postoje)razne)definicije,)ali)najjednostavnije)reeno)mikrokontroler)je)raunalo) u) malom.) Mikrokontroleri) su) mala) raunala) smjetena) na) jedan) integrirani)sklop.)Na)sljedeoj)slici)prikazan)je)mikrokontroler)s)kojim)emo)mi)raditi)u)ovoj)knjizi))njegov)naziv)je)ATMEGA328)a)proizvodi)ga)tvrtka)ATMEL.)))

    +)Za) poetak)moete)mikrokontroler) zamisliti) kao) crnu) kutiju) s) desetak) izvoda.) Izvodi)mikrokontrolera)slue)kako)bismo)na)njega)mogli)spajati)neke)elektronike)elemente)i)s)njima)upravljati)pomou)mikrokontrolera.))Da)bi)mikrokontroler)znao)to)zapravo)treba)raditi)i)kako)da)upravlja)s)onime)to)smo)na) njega) spojili) za) njega) moramo) napisati) program) a) potom) taj) program) moramo)prebaciti)u)mikrokontroler.)))Kako) bi) cijeli) taj) postupak) koritenja) mikrokontrolera) ) spajanja) elektronikih)komponenti) na) njega,) njegovog) programiranja) te) koritenja) bio) to) jednostavniji)osmiljeni)su)razni)alati)koji)nam)olakavaju)njihovo)koritenje.)Jedan)od)najpoznatijih)alata)koji)se)u)svijetu)najvie)koristi)upravo)za)uenje)i)poetak)rada)s)mikokotrolerima)je)Arduino,)pa)emo)tako)i)mi,)kroz)ove)laboratorijske)vjebe)savladati)mikrokontrolere)upravo)pomou)Arduina.))Arduino) platforma) je) skup) elektronikih) i) programskih) dijelova) koji) se) mogu)jednostavno) povezivati) u) sloenije) cjeline) s) ciljem) izrade) zabavnih) i) pounih)elektronikih)sklopova.))Cijela)Arduino)platforma)napravljena)je)i)objavljena)kao)otvoreni)sustav))to)znai)da)su)sve" sheme" i" izvorni" kd" programa" kojega" emo" korititi" za" programiranje" Arduina"besplatno)dostupni)svima)za)preuzimanje)i)modificiranje)sa)slubene)stranice)Arduino)platforme))www.arduino.cc.)Mi) emo)u)ovoj)knjizi) koristiti) jednu)od)Arduino)ploica)pod)nazivom))Arduino)UNO.)Ploica)je)prikazana)na)sljedeoj)slici.)

    ))

  • ) 3)

    Instalacija%Arduino%IDE%programa%%i%upoznavanje%)Kako) bi) zapoeli) s) radom,) moramo) preuzeti) i) instalirati) Arduino) IDE) ) program) za)pisanje)programa)za)Arduino)mikrokontrolere.)Program)moete)besplatno)preuzeti)na)web6adresi)www.arduino.cc.))Nakon)preuzimanja)programa)pokrenite) instalaciju.)Nakon)nekoliko)pritisaka)na)tipku)next) uspjeno) ste) instalirali) Arduino) IDE.) Pri) instalaciji) svakako) omoguite) uitavanje)svih)drivera) koje) Vam) instalacija) nudi,) kako) biste) nesmetano)mogli) raditi) sa) Arduino)sklopovljem)koje)ete)prikljuivati)na)raunalo.))Kada)ste)instalirali)program)pokrenite)ga)i)pogledajte)osnovni) izgled)i) funkcije)koje)su)dostupne)u)programu.)Prikaz)programa)moemo)podijeliti)na)tri)osnovna)dijela)kako)je)prikazano)na)sljedeoj)slici.)))

    ))Gornji)dio)programa)ini)alatna)traka)sa)standardnim&izbornikom&te&dodatnim&gumbima&za#brzi#dolazak#do#esto#koritenih#opcija.#Srednji#dio#programa#rezerviran#je#za#pisanje#kda,& dok& je& u& donjem& dijelu& smjetena& konzola.& Konzola& slui& za& prikaz& statusa&programa)te)za)poruke)uspjenosti)prijenosa)napisanog)programa)u)mikrokontroler)ili)za)poruke)o)detektiranim)grekama)u)napisanom)programu.))) )

  • ) 4)

    Na)sljedeoj)slici)prikazan)je)izbornik)s)preacima.)))

    ))Prije) poetka) rada) bitno) je) podesiti) neke) od) parametara) Arduino) IDE) programa.)Moramo) odabrati) koju) Arduino) ploicu) koristimo,) na) koji) je) prikljuak) raunala) ona)spojena) te) na) koji) nain) elimo) slati) programe) na) mikrokontroler.) Ova) je) podeenja)dovoljno)napraviti)jednom)ako)ne)mijenjate)ploicu)ili)koriteni)prikljuak)raunala.)Za)odabir) ploice) klikite) na) Tools) u) gornjem) izborniku,) potom) na) Boards) i) odaberite)Arduino1UNO.))

    )1)) )

  • ) 5)

    Za) odabir) prikljuka) raunala) kliknite) na)Tools) u) gornjem) izborniku,) potom) na) Serial1port)te)odaberite)serijski)prikljuak)na)kojem)je)spojena)vaa)ploica.)))

    ))U) novijoj) verziji) Arduino) IDE) programa,) kada) prikljuite) Arduino) ploicu) uz) ) broj)serijskog)porta)(COM)porta))na)kojem)je)detektirana)ploica)pisati)e)i)naziv)ploice)koja)je)detektirana.)Na)taj)nain)moete)raspoznati)na)koji)je)port)ploica)spojena.))% %

  • ) 6)

    Osnovna%znanja%)Nakon) to) smo) instalirali) i) upoznali) Arduino) IDE) program) vrijeme) je) da) malo) bolje)upoznamo)mikrokontrolere.)))Kao)to)smo)ve)rekli,)mikrokontroler)za)poetak)moemo)zamisliti)kao)crnu)kutiju)koja)ima)odreen)broj)izvoda)kojima)je)mogue)upravljati)pomou)programa)kojeg)korisnik)napie)na)raunalu)i)koji)se)onda)izvodi)na)samom)mikrokontroleru.)))Izvodi)mikrokontrolera)su)na)Arduino)UNO)ploici)spojeni))na)crne)konektore)na)samom)rubu)ploice.)Svaki)izvod)ima)svoje)jedinstveno)ime)koje)je)napisano)kraj)njega.)Tako)na)konektoru)s)gornje)strane)imamo)izvode)0,1,2,3)itd.)do)13.)Sa)donje)strane)Arduino)UNO)ploice) dodatno) nalazimo) izvode) koji) se) nazivaju) A0,) A1,) A2) itd.) do) A5.) Dodatno) u)donjem)dijelu)ploice)postoje)i)VCC)(+5V))i)GND)izvodi.)Osim)ovih)izvoda)na)ploici)su)oznaeni)i)drugi)izvodi)ali)nam)oni)za)sada)nisu)vani.))

    )2812.png1Izvodi) mikrokontrolera) slue) za) spajanje) mikrokontrolera) s) vanjskim) elektronikim)elementima.) Mogu) se) koristiti) za) upravljanje) raznim) ureajima) (svjetleim) diodama,)motorima) itd.)) ili) za) oitavanje) stanja) s) razliitih) senzora) (tipkala,) sklopke,) senzori)temperature)itd.).)Tako)kaemo)da)izvodi)mogu)raditi)na)dva)naina)rada))izlazni)nain)rada)i)ulazni)nain)rada.))Takoer,) izvode)moemo)podijeliti)na)digitalne)i)analogne.)Digitalni) izvodi)mogu)biti)u)samo)jednom)od)dva)mogua)stanja))nisko) logiko)stanje) i)visoko) logiko)stanje.)Kod)niskog) stanja) na) izvodu) je) napon) od) 0V,) a) kod) visokog) logikog) stanja) na) izvodu) je)napon) od) 5V.) Kod) analognih) izvoda)mogue) je) oitavati) ili) regulirati) napon) bilo) koje)vrijednosti)izmeu)0V)i)5V.)) %

  • ) 7)

    Prvi%program%)Jedna)od)velikih)prednosti)Arduino)platforme) je)to)postoji)vrlo)velik)broj)ve)gotovih)primjera) koje) moemo) iskoristiti) za) uenje) i) stvaranje) vlastitih) ureaja.) Kako) bi) na)samom)poetku)mogli) vidjeti) radi) li) naa)Arduino)UNO)ploica) i) kako) bi) nauili) kako)prebaciti)program)s)raunala)u)mikrokontroler)iskoristit)emo)jednostavan)program)iz)primjera) u) Arduino) IDE) programu.) Klikom) na) izbornik) File) i) odabirom) kategorije)Examples)pojavljuju)se)kategorije)dostupnih)primjera.)Pod)kategorijom)Basics1nalazi)se)program)Blink.1) )

    ))Otvorimo)ga)i)pogledajmo.))

    ))

  • ) 8)

    Cilj)ovoga)programa) je)ukljuivati) i) iskljuivati)svjetleu)(LED))diodu)koja)se)nalazi)na)samoj) Arduino) UNO) ploici.) Naime,) kako) bi) mi) kao) korisnici) ploice) odmah) nakon)instalacije)mogli) isprobati)njezinu)funkcionalnost)na)samu)je)ploicu,)na)izvod)broj)13,)spojena)jedna)svjetlea)dioda.)Kako)biste)prebacili)napisani)program)u)mikrokontroler)moete)iskoristiti)drugu)ikonu)u)traci)s)preacima))Upload)ikonu.)Prebacimo)program)u)mikrokontroler)i)pogledajmo)to)se)dogaa.))Svjetlea)dioda)se)naizmjenino)ukljuuje)i)iskljuuje))blinka.))Prouimo)program)da)vidimo)kako)je)to)postignuto.))/* Blink Turns on an LED on for one second, then off for one second, repeatedly. 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://arduino.cc This example code is in the public domain. modified 8 May 2014 by Scott Fitzgerald */ // the setup function runs once when you press reset or power the board void setup() { // initialize digital pin 13 as an output. pinMode(13, OUTPUT); } // the loop function runs over and over again forever void loop() { digitalWrite(13, HIGH); // turn the LED on (HIGH is the voltage level) delay(1000); // wait for a second digitalWrite(13, LOW); // turn the LED off by making the voltage LOW delay(1000); // wait for a second } )Svaki) od)Arduino)programa) (engleski) naziv) sketch)) sastoji) se) od) tri) osnovna)dijela.)U)prvom)dijelu)programa)govorimo)mikrokontroleru)na)koji)smo)izvod)to)spojili)odnosno)definiramo) varijable,) u) drugom) dijelu) programa) govorimo) na) koji) nain) koristimo)pojedine) izvode# te# piemo# onaj# dio# kda# koji# se# izvodi# samo# jednom# na# poetku,# pri#pokretanju) mikrokontrolera,) a) u) treem) dijelu) programa) piemo) to) zapravo)mikrokontroler)mora)raditi.)))U) ovome) primjeru) u) prvom) dijelu,) koji) see) do) setup) dijela) programa,) nemamo) nita)osim)komentara.)Komentari)su)u)Arduino)IDE)programu)prikazani)sivom)bojom)i)slue)samo)za)prijenos) informacija)korisnicima,)kao)nain)da)autor)pojasni)korisnicima)koji)koriste)ovaj)program)to)program)radi.)Komentari)se)esto)koriste)kako)bi)se)pojasnile)funkcije)i)pojedine)naredbe)u)programu.))))))

  • ) 9)

    /* Blink Turns on an LED on for one second, then off for one second, repeatedly. 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://arduino.cc This example code is in the public domain. modified 8 May 2014 by Scott Fitzgerald */ Kao)to)vidite,)komentari)moraju)zapoeti)znakovima)/*)i)zavriti)znakovima)*/)kako)bi)Arduino) IDE) program) znao) da) je) to) komentar.) Kada) komentari) stanu) u) jednu) liniju)mogue)je)komentar)zapoeti)sa)//)kao)to)vidite)u)sljedeem)programskom)odlomku.)Tada)se)sav)tekst)od)znakova)//)do)kraja)linije)smatra)komentarom.))Unutar)drugog)dijela))kojeg)nazivamo) setup1dijelom)rekli) smo)mikrokontroleru)da) je)izvod) broj) 13,) na) kojem) je) spojena) svjetlea) dioda) izlaznog) tipa.) To) znai) da)mikrokontroler)upravlja)ukljuivanjem)i)iskljuivanjem)svjetlee)diode.)))// the setup function runs once when you press reset or power the board void setup() { // initialize digital pin 13 as an output. pinMode(13, OUTPUT); } )Kao) to) vidimo) za) postavljanje) naina) rada) pojedinog) izvoda) koristimo) naredbu)pinMode(nazivizvoda,) nainrada).) Ova) naredba) ima) dva) argumenta) (argumenti) su)podatci)koje)upisujemo)u)zagrade)kod)naredbi)))nazivizvoda1definira)na)koji)se) izvod)odnosi) naredba) a) nainrada1definira) je) li) taj) izvod) ulaznog) ili) izlaznog) tipa.) Kako)mi)elimo) upravljati) svjetleom) diodom) onda) postavljamo) izvod) u) izlazni) nain) rada)koristei)kljunu)rije)OUTPUT.))U) treem) dijelu) programa) ) takozvanom) loop! dijelu' koji' se' stalno' ponavlja' dok'mikrokontroler*radi*napisali*smo*dio*kda*koji*ukljuuje*diodu,*nakon*toga*eka*jednu*sekundu,)pa)iskljuuje)diodu)te)ponovno)eka)jednu)sekundu.)))// the loop function runs over and over again forever void loop() { digitalWrite(13, HIGH); // turn the LED on (HIGH is the voltage level) delay(1000); // wait for a second digitalWrite(13, LOW); // turn the LED off by making the voltage LOW delay(1000); // wait for a second } )Za) ukljuivanje) i) iskljuivanje) svjetlee) diode) koristimo) naredbu) digitalWrite.) Ova)naredba) takoer) ima) dva) argumenta) digitalWRITE(nazivizvoda,1 stanje).1 Argument)nazivizvoda1definira) na) koji) se) izvod) odnosi) naredba) a) stanje) definira) postavljamo) li)izvod)u) visoko) ili) nisko) stanje.)Kada) se) izvod)nalazi) u) stanju)visoko) svjetlea) je)dioda)ukljuena,)a)kada)je)stanje)nisko)svjetlea)je)dioda)iskljuena.))

  • ) 10)

    Naredba) delay(vrijeme)) koristi) se) za) zaustavljanje) rada) odnosno) ekanje) odreenog)vremenskog)perioda.)Argument)vrijeme1govori) nam)koliko)dugo) treba) zaustaviti) rad) i)izraava) se) u) milisekundama.) Naredba) delay) (1000)) e) zaustaviti) rad) na) 1000)milisekundi)tj.)jednu)sekundu.)))Budui&da&se&dio&kda&koji&ukljuuje&i&iskljuuje&svjetleu&diodu&nalazi&unutar&loop)dijela)programa)koji)se)stalno)ponavlja)dobivamo)efekt)blinkanja1svjetlee)diode.)))Zadatak:) Na) mikrokontroler) spojite) jednu) svjetleu) diodu.) Napiite) program) koji) e)diodu)ukljuivati) i) iskljuivati) u) intervalima)od)pola) sekunde)kako)biste)postigli) efekt)blinkanja.))Na)sljedeim)slikama)prikazana)je)elektrina)shema)te)nain)spajanja)svjetlee)diode)na)eksperimentalnoj)ploici:))

    )384.png1)

    ))

  • ) 11)

    Iz)gornje)sheme)i)prikaza)spajanja)vidljivo) je)da)smo)odabrali) izvod)broj)2)za)spajanje)svjetlee)diode.)Ovo) je)naravno)na)odabir,)nita)nas)ne)obvezuje)da)koristimo)upravo)taj)izvod))mogli)smo)iskoristiti)bilo)koji)drugi)digitalni)izvod.))Kada) smo) uspjeno) spojili) svjetleu) diodu) na) mikrokontroler) moemo) zapoeti) s)programiranjem.))int led = 2; //definiraj led = 2 void setup() { pinMode(led, OUTPUT); //postavi led kao izlazni digitalWrite(led, LOW); //iskljui LED diodu - poetno stanje } void loop() { digitalWrite(led, HIGH); //ukljui LED diodu delay(500); //ekaj 500 ms - pola sekunde digitalWrite(led, LOW); //iskljui LED diodu delay(500); //ekaj 500 ms - pola sekunde } )Gornji'programski'kd'je'rjeenje'prvoga'zadatka.'))U)prvom)dijelu)programa)definirali)smo)da) je) led)dioda)spojena)na) izvod)broj)2.)Za) to)smo)iskoristili)varijablu)koju)smo)nazvali)led.)Varijable)su)zapravo)memorijske)lokacije)na) koje) moemo) upisati) neku) vrijednost) koja) se) moe) mijenjati) tijekom) izvoenja)programa.) Svaka) varijabla) ima) svoj) naziv) i) svoju) vrijednost.) U) ovom) sluaju) naziv)varijeble) je) led! a" njezina" vrijednost" je" 2." Koritenjem" ove" varijable" olakali" smo" si"pisanje(i(itanje(kda(jer(moemo(korisititi(njezin(naziv(umjesto)broja)izvoda)pri)radu)sa)izvodom.))Nakon)toga,)u)setup)dijelu)pomou)naredbe)pinMode)postavili)smo)izvod)koji)nazivamo)led) ) odnosno) izvod)broj) 2) kao) izlazni) jer) pomou)njega) elimo)upravljati) svjetleom)diodom.)Odmah) nakon) toga) iskoristili) smo) naredbu) digitalWrite) kako) bismo) iskljuili)svjetleu)diodu.)U)ovome)sluaju)ovo)nije)nuno)ali)je)dobra)praksa)na)kraju)setup)dijela)postaviti)sva)poetna)stanja)svih)izvoda)s)kojima)neime)upravljamo,)kako)bi)tono)znali)u)kojem)e)nam)stanju)biti)ti)izvodi.))Unutar) loop) dijela) programa) ukljuujemo) i) iskljuujemo) svjetleu) diodu) svakih) 500)milisekundi)odnosno)pola)sekunde.))Prebacite) program)u)mikrokontroleru) i) provjerite) radi) li) zaista) svjetlea) dioda) onako)kako)ste)zamislili.))) )

  • ) 12)

    Odvijanje%laboratorijskih%vjebi%)Laboratorijske) vjebe) odvijati) e) se) u) ciklusima) po) dva) termina.) U) prvom) terminu)laboratorijskih)vjebi)biti)e)prikazane)nove)komponente)i)nain)njihova)koritenja.)Na)drugom) ete) terminu) koritenjem) prethodno) steenih) znanja) morati) samostalno) (u)grupama)po)dvoje))rijeiti)postavljeni)zadatak.))Tipian)zadatak)traiti)e)od)Vas)da)na)Arduino)ploicu)spojite)neko)vanjsko)sklopovlje)koritenjem) eksperimentalne) ploice) te) da) napiete) program) prema) zadatku) u)laboratorijskoj)vjebi.) )Takoer,)moe)se)traiti)da)nacrtate)elektroniku)shemu)vjebe)koju)ste)spojili.))Rjeenje) zadatka) koje) ponudite) vrednovati) e) se) zajedno) s) provjerom) vaeg)razumijevanja)sklopovlja)i)napisanog)programa)za)mikrokontroler.))Dokumenti)za)pokazne)laboratorijske)vjebe)biti)e)unaprijed)dostupni)na)web)adresi:)www.paolozenzerovic.info/hr/nastava.))Zadatak)koji)e)se)ocjenjivati)dobiti)ete)na)samim)laboratorijskim)vjebama.))