SlideShare a Scribd company logo
Arduino programiranje
Merni sistemiu računarstvu, http://automatika.etf.bg.ac.rs/sr/13e053msr
Dr Nadica Miljković, vanredni profesor kabinet 68, nadica.miljkovic@etf.bg.ac.rs
Prezentacija za ovu vežbu je delimično pokrivena knjigom Alan G. Smith,
Introduction to Arduino: A piece of cake!, [Online],
https://www.introtoarduino.com/downloads/IntroArduinoBook.pdf, 2011.
GENERALNO
Arduino softver
• Preporučena literatura za osnove programiranja u Arduino programskom
okruženju je knjiga u kojoj se koristi hardver UNO R3:
– Alan G. Smith, Introductionto Arduino:A piece of cake!, [Online],
https://www.introtoarduino.com/downloads/IntroArduinoBook.pdf,2011.
– I drugi materijali na internetu i na sajtu predmeta
• Arduino softver je napisan u Java, C i C++. Operativni sistemi na kojima je
moguće instalirati Arduino softver i programirati u njemu su: Windows,
macOS i Linux, https://en.wikipedia.org/wiki/Arduino.
– Arduino je veoma sličan C++ programskom jeziku.
• NAPOMENA: Nisu sve funkcije dostupne za UNO R3 hardver. Neke funkcije
iako postoje u softverskom okruženju su specifično nemenjene za hardver
koji se koristi. Potrebno je pogledati uputstvo za odgovarajuću funkciju.
Arduino programiranje 2020 skripta za.pdf
Par zanimljivosti ...
By NicholasZambetti - http://www.arduino.cc/, CC BY-SA 3.0,
https://commons.wikimedia.org/w/index.php?curid=9182627
...
Slikalevo:
By oomlout - Flickr: Wingshield on Arduino- ARSH-05-WI, CC BY-SA 2.0,
https://commons.wikimedia.org/w/index.php?curid=15911319.
Slikadesno:
By Marlon J. Manrique- Flickr: Arduino ProtoboardShield, CC BY-SA 2.0,
https://commons.wikimedia.org/w/index.php?curid=15916962.
...
By en:User:Fulladder - en:Image:Breadboard counter.jpg,Copyrighted free use,
https://commons.wikimedia.org/w/index.php?curid=1776425.
Fritzing, http://fritzing.org/home/
Slikagore: By LA2 - Own work, CC BY-SA 3.0,
https://commons.wikimedia.org/w/index.php?curid=22714341.
Slikadole: By LA2 - Own work, CC BY-SA 3.0,
https://commons.wikimedia.org/w/index.php?curid=22714342.
PROMENLJIVE I STRUKTURE
Promenljive. Kako ih definisati?
• Ako su globalne:
– Pre setup() funkcije. Mogu i pre loop() funkcije, ako se ne pozivaju u
setup() funkciji.
– Na slici je dato za celobrojne vrednosti (broj digitalnog pina).
– Uobičajeno bi konstante trebalo da počinju slovom “c” kako je i
prikazano na slici.
• Ako su lokalne:
– Unutar funkcije (setup(), loop() ili neke druge koju korisnik definiše)
Kontrolne strukture (tok programa)
• Tipovi kontrolnih struktura su
prikazani u tabeli.
• Detalje možete pogledati na:
https://www.arduino.cc/en/Referen
ce/HomePage.
if struktura
• Prikazana je na slici.
• Početak i kraj se označavaju vitičastim zagradama “{}”.
if else struktura
• Prikazana je na slici.
• Početak i kraj se označavaju vitičastim zagradama “{}”.
• Automatsko popunjavanje koda: kada se ukuca početak strukture tj.
“{” i pritisne taster ENTER za prelazak u novi red, onda se
automatski generiše i kraj strukture tj. “}”.
switch struktura
• Primer korišćenja ove strukture je prikazan na slici.
• Prikazan je deo ugrađenog koda u fajlu switchCase.ino.
while petlja
• Primer while petlje je prikazan na slici.
• Pokazan je ugrađen primer WhileStatementConditional.iso.
• Kakva se petlja dobija ako je uslov while(1)?
• Kakva se petlja dobija ako je uslov while(303)?
for petlja
• Primer for petlje je prikazan
na slici.
• Šta je rezultat koda sa slike?
• Kod je prezet iz knjige: Kod
je pruzet iz knjige: Alan G.
Smith, Introduction to
Arduino: A piece of cake!,
[Online],
https://www.introtoarduin
o.com/downloads/IntroArd
uinoBook.pdf, 2011.
Šta je rezultat koda sa slike?
• Kod je pruzet iz knjige:Alan G. Smith, Introductionto Arduino:A piece of cake!,
[Online], https://www.introtoarduino.com/downloads/IntroArduinoBook.pdf,
2011.
• Na slici nije prikazana setup() funkcija, ni definisanje globalnihpromenljivihtj.
prikazanje samo deo koda.
• Moguće je da ovakavzadataki sl. bude dat na ispitu sa ciljem da studenti/kinje
opišu funkciju koda ili da predvide izlaz programa!
OPERATORI
Aritmetički operatori i poređenja
• Operatori su prikazani na slikama.
• Više o operatorima na sajtu: https://www.arduino.cc/reference/en/
• Celobrojno deljenje se realizuje sa znakom ”/” ako su imenilac i
brojilac celobrojne vrednosti.
Logički i složeni (eng. compound) operatori
• Operatori su prikazani na slikama.
• Više o operatorima na sajtu:
https://www.arduino.cc/reference/en/
Šta je rezultat koda sa slike?
• Kod je pruzet iz knjige: Alan G. Smith, Introduction to Arduino: A
piece of cake!, [Online].
https://www.introtoarduino.com/downloads/IntroArduinoBook.
pdf, 2011.
• LOW i HIGH su podrazumevane logičke promenljive koje imaju
vrednosti FALSE i TRUE.
TIPOVI PODATAKA
Tipovi podataka
• Tipovi podataka su prikazani u tabeli.
• Detalje studenti mogu pogledati na:
https://www.arduino.cc/en/Reference/HomePa
ge.
• Konverzija se postiže primenom odgovarajućih
funkcija.
UGRAĐENE FUNKCIJE
Promena rezolucije
• Nije moguća na mikrokontrolerskim pločama koje se koriste na
laboratorijskim vežbama (UNO R3 i sličnim).
• Međutim, moguća je na Arduino Due, Arduino Zero i drugim
mikrokontrolerskim pločicama.
• Koristi se funkcija analogReadResolution().
– Više o ovoj funkciji na
https://www.arduino.cc/en/Reference/AnalogReadResolution (slikaje takođe
preuzeta sa ovog sajta).
• U principu, kod neće javiti grešku ako se povećava rezolucija iznad
hardverskih granica, ali će ti bitovi biti prazni.
– Ovakavkod ima smisla pisati kadase planirapovećanjehardverskog
kapaciteta.
PWM
Pulse Width Modulation
• Umesto digitalWrite() koristi se analogWrite() funkcija. Funkcija
digitalWrite() je korišćena kod Blink.iso primera.
• Na pločici piše pored digitalnih pinova PWM (pogledati sliku).
• To znači mogućnost da se upravlja sa duty cycle.
PWM definicija
• “Pulse Width Modulation (PWM) is a fancy term for describing a
type of digital signal. Pulse width modulation is used in a variety of
applications including sophisticated control circuitry” (izvor:
https://learn.sparkfun.com/tutorials/pulse-width-modulation).
• “Pulse-width modulation (PWM), or pulse-duration
modulation (PDM), is a modulation technique used to encode
a message into a pulsing signal“ (izvor:
https://en.wikipedia.org/wiki/Pulse-width_modulation).
• “Pulse Width Modulation, or PWM, is a technique for getting
analog results with digital means. Digital control is used to create a
square wave, a signal switched between on and off. This on-off
pattern can simulate voltages in between full on (5 Volts) and off (0
Volts) by changing the portion of the time the signal spends on
versus the time that the signal spends off” (izvor:
https://www.arduino.cc/en/Tutorial/PWM).
PWM u praksi
Slika:By Thewrightstuff - Own work, CC BY-SA 4.0,
https://commons.wikimedia.org/w/index.php?curid=72876123.
PWM vrednosti 0-255 na 0-5 V
• Linearna skala je prikazana na slici.
• Skala je nacrtana u R-u (https://www.r-project.org/about.html).
• Opseg od 0 do 255 se odnosi na duty cycle tj. faktor ispunjenosti impulsa.
analogWrite() primer
• Ugrađeni primer Fade.iso je
prikazanna sclici.
• Šta je funkcija ovog primera?
• Kada se koristi analogWrite()
funkcija, nije potrebno
koristiti pinMode() funkciju.
• Koristi se za kontrolu
osvetljenosti(intenziteta
svetlosti na diodi), ali i za
kontrolumotora.
NEKE ARDUINO ZANIMLJIVOSTI
Ugrađena dioda
• Na pinu 13 kod UNO R3 mikrokontrolerskepločice se nalazi ugrađena crvena SMD
dioda(oznaka “L” na pločici).
• Na slici je prikazanašema UNO pločice, gde je pokazanoda je ugrađena diodana
pinu 13, https://www.arduino.cc/en/uploads/Main/Arduino_Uno_Rev3-
schematic.pdf sa oznakom “L”.
• Podrazumevanopin 13 je ON. Više do kraja semestra i na
https://www.arduino.cc/en/Tutorial/DigitalPins.
• Da li postoji ugrađen otpornikkoji služi da ograniči struju kroz ovu diodu?
• Da li je potrebno da se doda otpornik, ako se vezuje eksterna dioda na pin 13?
Arduin od Ivreje
• Bio je kralj Italije od 1002. do 1014.
godine.
• Jedan bar u Ivreji nosio je ime kralja
Arduina u kome su se kreatori projekta
okupljali.
• Zato su svoju mikrokontrolersku pločicu
nazvali Arduino.
• Ideja ovog projekta je bila da se omogući
studentima i amaterima da jednostavno
mogu da koriste senzore i aktuatore.
• Većina Arduino pločica se sastojiod
Atmelovih 8-bitnih mikrokntrolera
(ATMega8, ATmega168,ATmega328,
ATmega1280ili ATmega2560), a 32-bitni
Arduino Due je zasnovanna Atmel
SAM3X8Emikrokontroleru.
• Više na
https://en.wikipedia.org/wiki/Arduino
Slika: CC BY-SA 3.0, https://commons.wikimedia.org/w/index.php?curid=17242, crkva Sv. Arhangela Mihajla u Paviji u kojoj je
Arduin proglašen za kralja.
Arduino kompatibilnost
• Koliko je Arduino popularan svuda, a ne samo u nastavi i za hobiste,
pokazuju i drugi proizvođači hardvera
• Na primer, STM32 je familija 32-bitnih mikrokontrolera sa 32-bitnim
ARM procesorom
– ARM je skup instrukcija koju je razvija kompanija ARM Holding za
procesore sa RISC arhitekturom. Poznato?
• STM32 je proizvod kompanije STMicroelectronics
(https://www.st.com/content/st_com/en.html) koja je osnovana
1957. sa sedištem u Ženevi u Švajcarskoj
• Njihovi proizvodi imaju Arduino kompatibilnost – u smislu
rasporeda pinova i za korišćenje šildova
• Pogledati Nucleo proizvode,
https://www.st.com/en/ecosystems/stm32-nucleo.html
mBED okruženje
• Pored Arduino okruženja na kome se rade laboratorijske vežbe na
MSR predmetu, mogu se koristiti i druga okruženja za programiranje
• Free and open – source okruženje za programiranje mikrokontrolera
je mBED, https://os.mbed.com/
• Ovo je online editor i kompajler za programiranje mikrokontrolera i
posebno sa namenom u IoT sistemima
• Napisan je u C i C++
• Podržava preko 150 mikrokontrolera
• Prošle godine su ga studenti koristili na Izazovu
• IoT, poznato?
– Na sledećim slajdovima objašnjeno je šta je IoT, a slajdovi su preuzeti iz
prezentacije "IoT & električna merenja" održane 26. marta 2019.
tokom EESTech Challenge-a na ETF-u u Beogradu.
Internet stvari
(IoT)
• Dostupnost internetaje
omogućila direktnovezivanje
objekatana mrežu tzv. Internet of
Things (IoT).
• IoT, po definiciji,čini mrežu
svakodnevnihobjekatakoji su
umreženi sa računarimai
mobilnimuređajima
(https://en.wikipedia.org/wiki/Int
ernet_of_things, 23.03.2019.).
• PopularneIoT primene su kućna
automatizacija(eng. home
automation, domotics, smart
home, smart house,
https://en.wikipedia.org/wiki/Ho
me_automation,23.03.2019.) i
sigurnosni nadzor.
By MJN123 - http://www.newtonnet.co.uk/catfeeder, CC BY 3.0,
https://commons.wikimedia.org/w/index.php?curid=8630690.
Stvari?
• Šta?
– Kućna tehnika (frižider, šporet, mikser, bojler, televizor, …)
– Senzori (kamera, senzor pokreta, senzor temperature,
senzor vlažnosti, …)
– …
• Gde?
– U kući
– Na poslu
– Na ulici
– U automobilu
– Na kućnim ljubimcima
– …
• Automatizacija dosadnih poslova
• Komfor
• Igračka
• Zabava
• Nadzor
• Sigurnost
• Zdravlje
• Industrija
• …
Zašto?
By Ring - https://ring.com/press, CC BY-SA 4.0, https://commons.wikimedia.org/w/index.php?curid=58940160.
Ali i biljke.
Na slici je prikazano rešenje IZAZOVA u 2018. godini pod nazivom Auto Botaničar na 13E053MSR predmetu
koje su radili Jovana Uskoković i Nikola Milenić.
SLEDEĆEG PUTA: STRINGOVI
Primer
• Na slici je prikazanprimer ispisa poruke na serijskom portu.
• Dve osnovne funkcije za rad sa stringovima su Serial.print() i Serial.println().
• Šta bi bilo da je iskorišćena funkcija Serial.print()?

More Related Content

PDF
Uvod u elektroniku - Mikrokontroleri
PPTX
Svet senzora put ka digitalnoj inovaciji.pptx
PPTX
svet_senzora_put_ka_digitalnoj_inovaciji.pptx
PDF
PWM control of LED-diodes on the MSP430x series development board
PDF
Pages from plc 1
PPT
1.cas
DOC
Programabilne logicke mreze n
PDF
Design and development of microcontroller in car industry
Uvod u elektroniku - Mikrokontroleri
Svet senzora put ka digitalnoj inovaciji.pptx
svet_senzora_put_ka_digitalnoj_inovaciji.pptx
PWM control of LED-diodes on the MSP430x series development board
Pages from plc 1
1.cas
Programabilne logicke mreze n
Design and development of microcontroller in car industry

Similar to Arduino programiranje 2020 skripta za.pdf (15)

PPTX
Upravljanje racunarom
PDF
FNT 2015 CodeEU Zanimljiva informatika - 03 Jovan Krstic Android_glasovna_kon...
PPTX
EWB prezentacija electronic workbench.pptx
PDF
zavrsni
PPT
C++ za 90 minuta
PDF
C++ za 90 minuta
PDF
Cn cglodanje haas
PPT
Uvod U Racunarstvo - Martin Jovanovic
PPTX
Milioner DS (1).pptxdigitalni svet, skreč, mikrobit, kviz
PPTX
Biblioteka++
PDF
Razvoj Android aplikacija 1 - Uvod
DOCX
PPT
Uvod u digitalnu elektroniku, nacini polaganja ispita...
PDF
Razvoj Android aplikacija 2 - Praktičan primer
PPTX
06.-08. CIKLICNE ALGOR STRUKTURE FOR.pptx
Upravljanje racunarom
FNT 2015 CodeEU Zanimljiva informatika - 03 Jovan Krstic Android_glasovna_kon...
EWB prezentacija electronic workbench.pptx
zavrsni
C++ za 90 minuta
C++ za 90 minuta
Cn cglodanje haas
Uvod U Racunarstvo - Martin Jovanovic
Milioner DS (1).pptxdigitalni svet, skreč, mikrobit, kviz
Biblioteka++
Razvoj Android aplikacija 1 - Uvod
Uvod u digitalnu elektroniku, nacini polaganja ispita...
Razvoj Android aplikacija 2 - Praktičan primer
06.-08. CIKLICNE ALGOR STRUKTURE FOR.pptx
Ad

Arduino programiranje 2020 skripta za.pdf

  • 1. Arduino programiranje Merni sistemiu računarstvu, http://automatika.etf.bg.ac.rs/sr/13e053msr Dr Nadica Miljković, vanredni profesor kabinet 68, nadica.miljkovic@etf.bg.ac.rs Prezentacija za ovu vežbu je delimično pokrivena knjigom Alan G. Smith, Introduction to Arduino: A piece of cake!, [Online], https://www.introtoarduino.com/downloads/IntroArduinoBook.pdf, 2011.
  • 3. Arduino softver • Preporučena literatura za osnove programiranja u Arduino programskom okruženju je knjiga u kojoj se koristi hardver UNO R3: – Alan G. Smith, Introductionto Arduino:A piece of cake!, [Online], https://www.introtoarduino.com/downloads/IntroArduinoBook.pdf,2011. – I drugi materijali na internetu i na sajtu predmeta • Arduino softver je napisan u Java, C i C++. Operativni sistemi na kojima je moguće instalirati Arduino softver i programirati u njemu su: Windows, macOS i Linux, https://en.wikipedia.org/wiki/Arduino. – Arduino je veoma sličan C++ programskom jeziku. • NAPOMENA: Nisu sve funkcije dostupne za UNO R3 hardver. Neke funkcije iako postoje u softverskom okruženju su specifično nemenjene za hardver koji se koristi. Potrebno je pogledati uputstvo za odgovarajuću funkciju.
  • 5. Par zanimljivosti ... By NicholasZambetti - http://www.arduino.cc/, CC BY-SA 3.0, https://commons.wikimedia.org/w/index.php?curid=9182627
  • 6. ... Slikalevo: By oomlout - Flickr: Wingshield on Arduino- ARSH-05-WI, CC BY-SA 2.0, https://commons.wikimedia.org/w/index.php?curid=15911319. Slikadesno: By Marlon J. Manrique- Flickr: Arduino ProtoboardShield, CC BY-SA 2.0, https://commons.wikimedia.org/w/index.php?curid=15916962.
  • 7. ... By en:User:Fulladder - en:Image:Breadboard counter.jpg,Copyrighted free use, https://commons.wikimedia.org/w/index.php?curid=1776425.
  • 8. Fritzing, http://fritzing.org/home/ Slikagore: By LA2 - Own work, CC BY-SA 3.0, https://commons.wikimedia.org/w/index.php?curid=22714341. Slikadole: By LA2 - Own work, CC BY-SA 3.0, https://commons.wikimedia.org/w/index.php?curid=22714342.
  • 10. Promenljive. Kako ih definisati? • Ako su globalne: – Pre setup() funkcije. Mogu i pre loop() funkcije, ako se ne pozivaju u setup() funkciji. – Na slici je dato za celobrojne vrednosti (broj digitalnog pina). – Uobičajeno bi konstante trebalo da počinju slovom “c” kako je i prikazano na slici. • Ako su lokalne: – Unutar funkcije (setup(), loop() ili neke druge koju korisnik definiše)
  • 11. Kontrolne strukture (tok programa) • Tipovi kontrolnih struktura su prikazani u tabeli. • Detalje možete pogledati na: https://www.arduino.cc/en/Referen ce/HomePage.
  • 12. if struktura • Prikazana je na slici. • Početak i kraj se označavaju vitičastim zagradama “{}”.
  • 13. if else struktura • Prikazana je na slici. • Početak i kraj se označavaju vitičastim zagradama “{}”. • Automatsko popunjavanje koda: kada se ukuca početak strukture tj. “{” i pritisne taster ENTER za prelazak u novi red, onda se automatski generiše i kraj strukture tj. “}”.
  • 14. switch struktura • Primer korišćenja ove strukture je prikazan na slici. • Prikazan je deo ugrađenog koda u fajlu switchCase.ino.
  • 15. while petlja • Primer while petlje je prikazan na slici. • Pokazan je ugrađen primer WhileStatementConditional.iso. • Kakva se petlja dobija ako je uslov while(1)? • Kakva se petlja dobija ako je uslov while(303)?
  • 16. for petlja • Primer for petlje je prikazan na slici. • Šta je rezultat koda sa slike? • Kod je prezet iz knjige: Kod je pruzet iz knjige: Alan G. Smith, Introduction to Arduino: A piece of cake!, [Online], https://www.introtoarduin o.com/downloads/IntroArd uinoBook.pdf, 2011.
  • 17. Šta je rezultat koda sa slike? • Kod je pruzet iz knjige:Alan G. Smith, Introductionto Arduino:A piece of cake!, [Online], https://www.introtoarduino.com/downloads/IntroArduinoBook.pdf, 2011. • Na slici nije prikazana setup() funkcija, ni definisanje globalnihpromenljivihtj. prikazanje samo deo koda. • Moguće je da ovakavzadataki sl. bude dat na ispitu sa ciljem da studenti/kinje opišu funkciju koda ili da predvide izlaz programa!
  • 19. Aritmetički operatori i poređenja • Operatori su prikazani na slikama. • Više o operatorima na sajtu: https://www.arduino.cc/reference/en/ • Celobrojno deljenje se realizuje sa znakom ”/” ako su imenilac i brojilac celobrojne vrednosti.
  • 20. Logički i složeni (eng. compound) operatori • Operatori su prikazani na slikama. • Više o operatorima na sajtu: https://www.arduino.cc/reference/en/
  • 21. Šta je rezultat koda sa slike? • Kod je pruzet iz knjige: Alan G. Smith, Introduction to Arduino: A piece of cake!, [Online]. https://www.introtoarduino.com/downloads/IntroArduinoBook. pdf, 2011. • LOW i HIGH su podrazumevane logičke promenljive koje imaju vrednosti FALSE i TRUE.
  • 23. Tipovi podataka • Tipovi podataka su prikazani u tabeli. • Detalje studenti mogu pogledati na: https://www.arduino.cc/en/Reference/HomePa ge. • Konverzija se postiže primenom odgovarajućih funkcija.
  • 25. Promena rezolucije • Nije moguća na mikrokontrolerskim pločama koje se koriste na laboratorijskim vežbama (UNO R3 i sličnim). • Međutim, moguća je na Arduino Due, Arduino Zero i drugim mikrokontrolerskim pločicama. • Koristi se funkcija analogReadResolution(). – Više o ovoj funkciji na https://www.arduino.cc/en/Reference/AnalogReadResolution (slikaje takođe preuzeta sa ovog sajta). • U principu, kod neće javiti grešku ako se povećava rezolucija iznad hardverskih granica, ali će ti bitovi biti prazni. – Ovakavkod ima smisla pisati kadase planirapovećanjehardverskog kapaciteta.
  • 26. PWM
  • 27. Pulse Width Modulation • Umesto digitalWrite() koristi se analogWrite() funkcija. Funkcija digitalWrite() je korišćena kod Blink.iso primera. • Na pločici piše pored digitalnih pinova PWM (pogledati sliku). • To znači mogućnost da se upravlja sa duty cycle.
  • 28. PWM definicija • “Pulse Width Modulation (PWM) is a fancy term for describing a type of digital signal. Pulse width modulation is used in a variety of applications including sophisticated control circuitry” (izvor: https://learn.sparkfun.com/tutorials/pulse-width-modulation). • “Pulse-width modulation (PWM), or pulse-duration modulation (PDM), is a modulation technique used to encode a message into a pulsing signal“ (izvor: https://en.wikipedia.org/wiki/Pulse-width_modulation). • “Pulse Width Modulation, or PWM, is a technique for getting analog results with digital means. Digital control is used to create a square wave, a signal switched between on and off. This on-off pattern can simulate voltages in between full on (5 Volts) and off (0 Volts) by changing the portion of the time the signal spends on versus the time that the signal spends off” (izvor: https://www.arduino.cc/en/Tutorial/PWM).
  • 29. PWM u praksi Slika:By Thewrightstuff - Own work, CC BY-SA 4.0, https://commons.wikimedia.org/w/index.php?curid=72876123.
  • 30. PWM vrednosti 0-255 na 0-5 V • Linearna skala je prikazana na slici. • Skala je nacrtana u R-u (https://www.r-project.org/about.html). • Opseg od 0 do 255 se odnosi na duty cycle tj. faktor ispunjenosti impulsa.
  • 31. analogWrite() primer • Ugrađeni primer Fade.iso je prikazanna sclici. • Šta je funkcija ovog primera? • Kada se koristi analogWrite() funkcija, nije potrebno koristiti pinMode() funkciju. • Koristi se za kontrolu osvetljenosti(intenziteta svetlosti na diodi), ali i za kontrolumotora.
  • 33. Ugrađena dioda • Na pinu 13 kod UNO R3 mikrokontrolerskepločice se nalazi ugrađena crvena SMD dioda(oznaka “L” na pločici). • Na slici je prikazanašema UNO pločice, gde je pokazanoda je ugrađena diodana pinu 13, https://www.arduino.cc/en/uploads/Main/Arduino_Uno_Rev3- schematic.pdf sa oznakom “L”. • Podrazumevanopin 13 je ON. Više do kraja semestra i na https://www.arduino.cc/en/Tutorial/DigitalPins. • Da li postoji ugrađen otpornikkoji služi da ograniči struju kroz ovu diodu? • Da li je potrebno da se doda otpornik, ako se vezuje eksterna dioda na pin 13?
  • 34. Arduin od Ivreje • Bio je kralj Italije od 1002. do 1014. godine. • Jedan bar u Ivreji nosio je ime kralja Arduina u kome su se kreatori projekta okupljali. • Zato su svoju mikrokontrolersku pločicu nazvali Arduino. • Ideja ovog projekta je bila da se omogući studentima i amaterima da jednostavno mogu da koriste senzore i aktuatore. • Većina Arduino pločica se sastojiod Atmelovih 8-bitnih mikrokntrolera (ATMega8, ATmega168,ATmega328, ATmega1280ili ATmega2560), a 32-bitni Arduino Due je zasnovanna Atmel SAM3X8Emikrokontroleru. • Više na https://en.wikipedia.org/wiki/Arduino Slika: CC BY-SA 3.0, https://commons.wikimedia.org/w/index.php?curid=17242, crkva Sv. Arhangela Mihajla u Paviji u kojoj je Arduin proglašen za kralja.
  • 35. Arduino kompatibilnost • Koliko je Arduino popularan svuda, a ne samo u nastavi i za hobiste, pokazuju i drugi proizvođači hardvera • Na primer, STM32 je familija 32-bitnih mikrokontrolera sa 32-bitnim ARM procesorom – ARM je skup instrukcija koju je razvija kompanija ARM Holding za procesore sa RISC arhitekturom. Poznato? • STM32 je proizvod kompanije STMicroelectronics (https://www.st.com/content/st_com/en.html) koja je osnovana 1957. sa sedištem u Ženevi u Švajcarskoj • Njihovi proizvodi imaju Arduino kompatibilnost – u smislu rasporeda pinova i za korišćenje šildova • Pogledati Nucleo proizvode, https://www.st.com/en/ecosystems/stm32-nucleo.html
  • 36. mBED okruženje • Pored Arduino okruženja na kome se rade laboratorijske vežbe na MSR predmetu, mogu se koristiti i druga okruženja za programiranje • Free and open – source okruženje za programiranje mikrokontrolera je mBED, https://os.mbed.com/ • Ovo je online editor i kompajler za programiranje mikrokontrolera i posebno sa namenom u IoT sistemima • Napisan je u C i C++ • Podržava preko 150 mikrokontrolera • Prošle godine su ga studenti koristili na Izazovu • IoT, poznato? – Na sledećim slajdovima objašnjeno je šta je IoT, a slajdovi su preuzeti iz prezentacije "IoT & električna merenja" održane 26. marta 2019. tokom EESTech Challenge-a na ETF-u u Beogradu.
  • 37. Internet stvari (IoT) • Dostupnost internetaje omogućila direktnovezivanje objekatana mrežu tzv. Internet of Things (IoT). • IoT, po definiciji,čini mrežu svakodnevnihobjekatakoji su umreženi sa računarimai mobilnimuređajima (https://en.wikipedia.org/wiki/Int ernet_of_things, 23.03.2019.). • PopularneIoT primene su kućna automatizacija(eng. home automation, domotics, smart home, smart house, https://en.wikipedia.org/wiki/Ho me_automation,23.03.2019.) i sigurnosni nadzor. By MJN123 - http://www.newtonnet.co.uk/catfeeder, CC BY 3.0, https://commons.wikimedia.org/w/index.php?curid=8630690.
  • 38. Stvari? • Šta? – Kućna tehnika (frižider, šporet, mikser, bojler, televizor, …) – Senzori (kamera, senzor pokreta, senzor temperature, senzor vlažnosti, …) – … • Gde? – U kući – Na poslu – Na ulici – U automobilu – Na kućnim ljubimcima – …
  • 39. • Automatizacija dosadnih poslova • Komfor • Igračka • Zabava • Nadzor • Sigurnost • Zdravlje • Industrija • … Zašto? By Ring - https://ring.com/press, CC BY-SA 4.0, https://commons.wikimedia.org/w/index.php?curid=58940160.
  • 40. Ali i biljke. Na slici je prikazano rešenje IZAZOVA u 2018. godini pod nazivom Auto Botaničar na 13E053MSR predmetu koje su radili Jovana Uskoković i Nikola Milenić.
  • 42. Primer • Na slici je prikazanprimer ispisa poruke na serijskom portu. • Dve osnovne funkcije za rad sa stringovima su Serial.print() i Serial.println(). • Šta bi bilo da je iskorišćena funkcija Serial.print()?