Alapok
Mi is pontosan az az Arduino?
Az Arduino egy az Atmel AVR mikrovezérlő családra épülő,
szabad szoftveres elektronikai fejlesztőplatform, arra tervezve, hogy a
különböző projektekben az elektronikus eszközök könnyebben hozzáférhetőek,
kezelhetőek legyenek. Széles tömegek számára elérhető, mivel olcsó, könnyen
beszerezhető, egyszerűen programozható, és csatlakoztatható más eszközökhöz. A
fejlesztői platform az úgynevezett IDE-ből (integrált fejlesztői környezet), és
az Arduino Board-okból áll. Előbbi segítségével programokat írhatunk és
tesztelhetünk számítógépen, utóbbi pedig egy előre összeszerelt elektronikus
eszköz, amelyre az előzőleg elkészített programokat feltölthetjük USB porton
keresztül, majd elektronikus eszközöket vezérelhetünk a segítségével.
Milyen szoftver van rajta?
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. Az induláshoz a fejlesztőeszköz több mintaprogramot tartalmaz,
amelyek segítségével egyszerűen megtanulhatjuk, hogyan tudunk LED-et
villogtatni, fényerőt szabályozni, vagy a számítógéppel kommunikálni USB-n
keresztül. Az Arduino programokat egy C/C++ alapú programozási nyelven
írhatjuk, így az ezeket a nyelveket ismerők könnyen kiismerhetik magukat a
környezetben. AZ IDE-hez tartozik a "Wiring" nevezetű C/C++
programkönyvtár, amellyel egyszerűen végezhetjük el a leggyakoribb input/output
műveleteket.
Shield-ek
Az Arduino-k funkcionalitását könnyedén kiegészíthetjük az
úgynevezett Shield-ekkel, amelyek a Board-okhoz egyszerűen illeszthető
elektronikai áramkörök. Ezek segítségével azt Arduino-t akár közvetlenül az
internetre csatlakoztathatjuk, motorokat vezérelhetünk vele, vagy WiFi
hálózatra kapcsolódhatunk. A jelenlegi hivatalos Arduino Shield-ek:
· Arduino
Ethernet Shield
· Arduino WiFi
Shield
· Arduino
Proto Shield
· Arduino GSM
Shield
· Arduino
Motor Shield
Ezeken kívül több cég gyárt világszerte Arduino kompatibilis
Shield-eket, különböző célokra.
Arduino Duemilanove részei
A Duemilanove 2009-es modell, ATmega168 típusú vagy
ATmega328 típusú mikrokontrollerrel felszerelt verzióban létezik. 14 digitális
ki-/bemenete van amiből 6 speciális PWM funkciót is képes ellátni, 6 analóg
bemenettel rendelkezik, valamint egy 16 MHz-es osszcillátorral, egy USB, egy
hálózati és egy ICSP csatlakozóval rendelkezik. Egy reset (újraindító) gomb is
található rajta. Minden alkatrészt tartalmaz, ami a mikrokontroller működéséhez
szükséges, így ha csatlakoztatjuk USB kábelünkkel (5V) a számítógéphez,
megkezdhetjük használatát, de akár elemet, akkumulátort vagy AC-to-DC adaptert
(a nagyfeszültséget átalakítja kisfeszültségű egyenárammá) dughatunk a hálózati
csatlakozójába, ezek ajánlott feszültség értéke maximum 12V lehet. A DC a
Direct Current rövidítése, ami kisfeszültségű egyenáramot jelent, ezzel fogunk
dolgozni.
A Duemilanove adatai:
Mikrokontroller típusa: ATmega 168 vagy ATmega 328
Működtető feszültségérték: 5V
Bementi feszültség – ajánlott értéke: 7-12V
Bemeneti feszültség – határ értéke: 6-20V
Digitális ki-/bemeneti pinek száma: 14, ebből 6 PWM.
5V-on működnek, mindegyik rendelkezik egy belső felhúzó (pull-up)
ellenállással, ami egy speciális paranccsal bekapcsolható (alap állapotban ki
van kapcsolva), értéke 20-50 kOhm lehet.
Analóg bemeneti pinek száma: 6, ezek 10 bites felbontáson
tudnak egy értéket felvenni 0-1023 között.
Az egyes pinekre jutó áramerősség értéke: 40mA
A 3.3V elnevezésű pinre jutó áramerősség értéke: 50mA
Flashmemória mérete: 16KB (ATmega168), 32KB (ATmega328)
amiből 2KB-ot a bootloader foglal el. A flashmemória egy olyan
újraprogramozható, adattárolásra alkalmas eszköz, aminek nincs szüksége
tápfeszültségre ahhoz, hogy megtartsa a benne tárolandó adatot. A bootloader
magyarul rendszer betöltő program, ezzel képes elindulni az eszköz.
SRAM mérete: 1 KB (ATmega168), 2 KB (ATmega328).Ez egy
statikus memória, amiben a tárolt adat a tápfeszültség megszűnéséig marad meg.
EEPROM mérete: 512 byte (ATmega168), 1 KB
(ATmega328).Elektronikusan törölhető és újraírható, azaz programozható tároló
memória. Olyan mint a flashmemória.
Órajel sebessége: 16 MHz. Ez egy olyan jel, amely két
vagy több áramkör tevékenységét koordinálja, szinkronizálja. Egy alacsony és
egy magas jelszint között osszcillál.
Áramot kezelő pinek:
Vin: bemeneti feszültség, ha külső áramforrást használunk
az üzemeltetéshez.
Gnd: földelés.
5V: értelemszerűen 5V jön belőle.
3V3: az alaplapra szerelt FTDI chip által termelt 3,3 V
feszültség.
Némelyik pin speciális funkciók ellátására is képes, ezeket
a későbbiekben használat közben ismerjük meg.
Speciális funkciókkal ellátott pinek:
Digitális 0(RX) és 1(TX): Ezek a pinek össze vannak kötve
a FTDI USB-to-TTL nevű soros chip megfelelő részeivel, ezért soros port
kommunikációhoz használhatjuk őket. Az RX fogadja, a TX pedig küldi az adatot.
Digitális 2 és 3 pin külső megszakításhoz: a csatlakozón
fellépő fel- vagy lefutó él hatására fellépő megszakításkéréshez használható,
ez a mikrovezérlő valamelyik bemenetének értékváltozására generálódik. Az
attachInterrupt() funkcióval használjuk.
Digitális PWM pinek: 3, 5, 6, 9, 10, és 11 (pulse width
modulation = impulzus-szélesség moduláció). Az analogWrite() paranccsal 8 biten
küldhetünk rá adatot.
SPI pinek:10 (SS), 11 (MOSI), 12 (MISO), 13 (SCK), SPI
busz (Serial Peripheral Interface = soros periféria illesztő) kommunikációhoz
használhatjuk, az SPI Library meghívásával.
LED 13 pin: a beépített LED van ide kivezetve ide.
Analóg A4 (SDA) és A5 (SCL) pinek: I2C (TWI) busz
kommunikációra alkalmasak, Wire Library meghívásával.
Egyéb pinek:
AREF pin: Alapvetően az analóg pinek 0-5V között mérik a
bementi adatot. Ennek felső értéke ezzel a pinnel és az analogReference()
paranccsal megváltoztaható.
Reset pin: ha a shieldet használunk és van rajta reset
gomb, akkor használjuk ezt a pint. LOW-ra állítva működik.
Nincsenek megjegyzések:
Megjegyzés küldése