2. Tartalom
• Az Arduino Története
• Arduino Előnyei és Hátrányai
• Panelek Felépítése - Általánosan
• Arduino IDE Fejszetői Környezet
• Programozás Főbb Részei
• Felhasznált források
2Oktató: Erdei Timotei István Készítette: Molnár Zsolt & ETI
3. Arduino története
3
2005-ben egy olasz mérnők Massimo Banzi és mérnők
csapata hozta létre az ARDUINO mikrokontrollert, azzal
az indíttatással, hogy elérhető áron széles körben
használható interaktív technológiát juttasson el az
emberekhez.
Oktató: Erdei Timotei István Készítette: Molnár Zsolt & ETI
4. 4
Arduino Előnyei és Hátrányai
Az Arduino sikere az alábbiakban keresendő:
• - alkalmazási területének sokszínűség,
• - könnyű fejleszthetőségi lehetőségek,
• - egyszerű logikus kialakítása,
• - könnyű programozás,
• - ingyenes fejlesztési környezet,
• - nyílt szabályrendszer,
• - kompatibilitás más eszközökkel,
• - hardver tervezési információ biztosítása
Oktató: Erdei Timotei István Készítette: Molnár Zsolt & ETI
5. 5
Panelek Felépítése - Általánosan
A hardver egy nyílt forráskódú 8 vagy 32 bites Atemel AVR
mikrokontrollerből áll, amely lehetővé teszi a programok feltöltését, oly
módon, hogy közben nem vesz igénybe chip programozó eszközt. Arduino
panel a PC-hez egy USB kábellel csatlakoztatható, a tápellátás ezen keresztül
történik, illetve a mikrovezérlő programozása és a számítógéppel való
kommunikáció is. A panel mikrovezérlője több ezerszer újraprogramozható
és az Arduino-ra jellemző integrált fejlesztési környezete egy (C++
egyszerűsített változata) kereszt-platformos JAVA nyelv, amely sok beépített
könyvtárat tartalmaz.
Oktató: Erdei Timotei István Készítette: Molnár Zsolt & ETI
7. 7
Arduino IDE Fejszetői Környezet
Az Arduino IDE egy kereszt-platformos Java nyelven írt
fejlesztőkörnyezet, amely segítségével Arduino programokat
készíthetünk, tesztelhetünk, majd az Arduino Board-okra
tölthetjük. A fejlesztői környezetet az Arduino weblapjáról
tölthetjük le (http://www.arduino.cc/)
Oktató: Erdei Timotei István Készítette: Molnár Zsolt & ETI
8. 8
A programot először elindítva az alábbi képernyő fogad
Oktató: Erdei Timotei István Készítette: Molnár Zsolt & ETI
Arduino IDE Fejszetői Környezet
Mielőtt az Arduino panelt elkezdenénk használni, ahhoz hogy
programozni tudjuk, az Eszközök/Alappanel menüpontban be
kell állítani, hogy milyen típusú panelt használunk.
9. 9
Az Eszközök/Soros port menüpontban pedig azt kell beállítani hogy a panel melyik COM
portra van csatlakoztatva. Ezek beállítások után válik a panel programozható
Oktató: Erdei Timotei István Készítette: Molnár Zsolt & ETI
Arduino IDE Fejszetői Környezet
10. 10
Arduino IDE Fejszetői Környezet
Az eszközsorban az alábbi 6 gomb található
- Ellenőrzés: mielőtt a programot az Arduino panelba töltenénk, le kell fordítanunk. Ezzel a gombbal fordítható
le a kód és ellenőrizhető, hogy a programunk hibamentes-e.
- Új: új projektet létrehozása
- Megnyitás: korábban létrehozott projek megnyitása
- Mentés: a jelenlegi projekt elmentése
- Feltöltés: a lefordított kód feltöltése az Arduino-ba
- Soros Monitor: az Arduino panel által küldött soros adatok megjelenítése egy terminálablakban
11. 11
Programozás Főbb Részei
Arduino panel programozásához nem kell ismerni a panelen található
AVR mikrovezérlő működését, mert a fejlesztőkörnyezet elfedi előlünk a
hardvert. Ez a kezdő felhasználók dolgát segíti, mivel az ismerkedés
elkezdéséhez nem szükséges a mikrovezérlők és a bennük integrált
perifériák működésének regiszter ismerete. A perifériák működtetése
legtöbbször néhány egyszerű paranccsal megoldható (pl. PWM, ADC,
soros kommunikáció szinte egy utasítással megoldható).
Oktató: Erdei Timotei István Készítette: Molnár Zsolt & ETI
12. 12
Változók – megadása
Oktató: Erdei Timotei István Készítette: Molnár Zsolt & ETI
Programozás Főbb Részei
Az Arduino programban használt változókat és azok típusát kell
ebben a program részben megadni. Bármelyik Arduino lábat
átnevezhetjük, továbbá a programban lehetőség van rá, hogy egy
egyedi névvel hivatkozzunk rá.
13. 13
A kapcsos zárójelen belül lévő kód az Arduino bekapcsolása után csak
egyetlen egyszer fut le, mielőtt a programunk fő ciklusa elindulna. Így csak
setup( ) részben adhatjuk meg a fő beállításokat, általános utasításokat,
eszköz inicializálásokat (itt megadhatjuk, hogy mely lábak legyenek BE/KI
menetek, valamint a soros kommunikáció sebességét is). Alapértelmezettként
minden láb bemenet, ezért csak a kimeneteket definiáljuk.
Oktató: Erdei Timotei István Készítette: Molnár Zsolt & ETI
Programozás Főbb Részei
Setup(){ }
14. 14
Főprogram része a Loop (){}. Ebben a program részben
adjuk meg az Arduino-nak, hogy milyen konkrét
lépéseket végezzen el. Ez a rész a setup() lefutása után
indul és folyamatosan ismétlődik mindaddig, amíg az
Arduino panel működik.
Loop(){}
Programozás Főbb Részei
Oktató: Erdei Timotei István Készítette: Molnár Zsolt & ETI
15. 15
A Setup részben minden egyes digitális láb a pinMode() parancs
használatával külön-külön beállítható bemenetnek (INPUT) vagy
kimenetnek (OUTPUT). Az Arduino-n a digitális jel logikai magas (HIGH)
vagy logikai alacsony (LOW) szintű lehet. Attól függetlenül hogy a láb
kimenet vagy bemenet, ha a láb 5V-os feszültségszinten van, akkor
magas logikai szintnek értelmezzük, és ha 0V-on van (föld / GND), akkor
pedig logikai alacsony szintnek tekintjük.
Oktató: Erdei Timotei István Készítette: Molnár Zsolt & ETI
Programozás Főbb Részei
pinMode(láb, mód)
16. 16
Az Arduino többfajta különböző jelet tud érzékelni és kiadni. A jeleket
alapvetően két csoportra szoktuk osztani: analóg és digitális jelekre. A
digitális jel csak kétfele értéket vehet fel: 0V vagy +5V. Az analóg jel
ellenben bármilyen feszültségérték lehet 0V és +5V között.
Oktató: Erdei Timotei István Készítette: Molnár Zsolt & ETI
Programozás Főbb Részei
Analóg és Digitális Jelek
17. 17
A digitális kimenetekkel azt tudjuk megadni, hogy a kimeneti lábon magas
szint (5V) vagy alacsony (0V) legyen. Így vezérelhetünk különféle eszközöket
az Arduino-val. Azt azért figyelembe kell venni, hogy az Arduino lábanként
maximum 40mA-es áramot képes felvenni vagy leadni, ezért a lábakra kötött
eszközöket is ennek megfelelően kell megválasztani (nem köthetünk
közvetlenül az Arduino-ra nagy áramigényű eszközöket pl. a robot
meghajtását szolgáló villanymotorokat).
Oktató: Erdei Timotei István Készítette: Molnár Zsolt & ETI
Programozás Főbb Részei
digitalWrite(láb, érték)
18. Felhasznált források
18
• http://www.arduino.cc/
• http://hobbirobot.hu/
• http://hu.wikipedia.org/wiki/Arduino
• Ábrák, képek: Google képkereső
Oktató: Erdei Timotei István Készítette: Molnár Zsolt & ETI