Mérési útmutató a Mobil Kommunikáció és Kvantumtechnológiák Laboratórium méréseihez



Hasonló dokumentumok
Mérési útmutató a Mobil Kommunikáció és Kvantumtechnológiák Laboratórium méréseihez

Mérési útmutató. A/D konverteres mérés. // Első lépésként tanulmányozzuk a digitális jelfeldolgozás előnyeit és határait.

LEVELEZÉS BEÁLLÍTÁSA

IP sorozat NVR FELHASZNÁLÓI KÉZIKÖNYV

DUALCOM SIA IP TELEPÍTÉSI ÉS ALKALMAZÁSI ÚTMUTATÓ. V és újabb modulverziókhoz. Dokumentum verzió:

A SZOFTVER TELEPÍTÉSE ELŐTT TELEPÍTÉS WINDOWS KÖRNYEZETBEN TELEPÍTÉS MACINTOSH KÖRNYEZETBEN HIBAKERESÉS

FELHASZNÁLÓI LEÍRÁS a DIMSQL Integrált Számviteli Rendszer Készlet moduljának használatához

Hálózatkezelés: Távoli elérés szolgáltatások - PPP kapcsolatok

KÉPZETT VILLANYSZERELŐ SZAKEMBER

Gate Control okostelefon-alkalmazás

AHT-0405KA 4 csatornás AHT-0810KA 8 csatornás AHT-1620KA 16 csatornás

Felhasználói leírás v1.0

ERserver. iseries. Szolgáltatási minőség

Router konfigurációs útmutató

GSM Gate Control Pro 20 GSM Gate Control Pro 1000

Kiterjedt hálózatok. 8. Hálózatok fajtái, topológiájuk. Az Internet kialakulása 1

ProCOM GPRS ADAPTER TELEPÍTÉSI ÉS ALKALMAZÁSI ÚTMUTATÓ. v1.0 és újabb modul verziókhoz Rev

PROGRAMOZÓI KÉZIKÖNYV

KETTŐS KÖNYVELÉS PROGRAM CIVIL SZERVEZETEK RÉSZÉRE

Vezeték nélküli, elosztott rendszerű jelzőlámpás forgalomirányítás

Symbol P360/P460 Felhasználói kézikönyv v 1.0

Vezeték nélküli eszközök (csak egyes típusoknál) Felhasználói útmutató

A számítóőép Őelépítése Kiviteli eőyséőek: nyomtatók és csatlakoztatásuk

Telepítési és felhasználói kézikönyv. EC-11 Ethernet Átalakító

AC1600 intelligens WiFi router

Számlakészítés a SPRINT programmal

FELHASZNÁLÓI KÉZIKÖNYV

GM-900 GSM/GPRS modem. Alkalmazási útmutató

N900 vezeték nélküli, kétsávos Gigabit router

Hálózati útmutató. A biztonságos és megfelelõ kezelés érdekében használat elõtt olvassa el az Általános Beállítási Útmutató biztonsági információit.

W-DMX. DMX512 - RF és RF - DMX512 Interfész. Kezelési útmutató. Tartsa kéznél, a jövőben szüksége lehet rá! rev /08/27

MAGYAR POSTA BEFEKTETÉSI ZRT. e-befektetés. Felhasználói kézikönyv

A mutatóeszközök és a billentyűzet Felhasználói útmutató

M12 GSM kommunikátor Telepítői kézikönyv

GT64 GSM/GPRS modem. Alkalmazási útmutató

Vezeték nélküli eszközök (csak egyes típusokon) Felhasználói útmutató

Bevezetés az Arduino mikrovezérlők programozásába

BGSM-A v ábra. DSC Hungária 1

Digitális bemenetek: 2 darab 0-5V jelszintű digitális bemenet Pl. nyitásérzékelők, risztóközpontok, mozgásérzékelők, átjelzők, stb.

HOLDPEAK 856A SZÉLSEBESSÉG MÉRŐ

Felhasználói kézikönyv. Magyar. APC Smart-UPS SC. 420/620 VA 110/120/230 Vac. Torony kivitelű szünetmentes tápegységhez

EITK1000. Általános leírás

Magyar. APC Smart-UPS SC. 1000/1500 VA 110/120/230 Vac. Toronykivitelű vagy 2U magas, RACK-be szerelhető szünetmentes tápegységhez

Bosch Recording Station. Telepítési kézikönyv

Első lépések Compaq Notebook sorozat

PROGRAMOZÓI KÉZIKÖNYV

SA-GPCOM. Telepítési leírás. Ipari GPRS átjelző. Dokumentum verzió szám: v1.0 HUN. SA-GPCOM telepítési leírás

IBM i. Szerviz és támogatás 7.1

Aronic Főkönyv kettős könyvviteli programrendszer

Közigazgatási szerződés

HU Használati utasítás DM85

FELHASZNÁLÓI ÚTMUTATÓ

ecoline SIA IP Adapter

Áttekintés 2. Műszaki adatok 3. A műszer beállítása 4. Műveletek 7. Üzenetkódok 9. A pontosság ellenőrzése 10. Karbantartás 13.

WIFI ajtócsengő HASZNÁLATI ÚTMUTATÓ

TC-DVR MN30xx. Digitális videó rögzítő. Felhasználói kézikönyv

Felhasználói kézikönyv. Alkalmazáslap

Vezeték nélküli eszközök (csak egyes típusoknál) Felhasználói útmutató

Felhasználói útmutató

FELHASZNÁLÓI KÉZIKÖNYV

HP ProtectTools Felhasználói útmutató

EverLinkBusSetup. Beléptető, munkaidő nyilvántartó és parkoló rendszer konfiguráló program felhasználói leírása rendszergazdák részére

IBM Business Process Manager változat 8 alváltozat 5. Munkaerő-felvételi oktatóanyag

Multimédia Felhasználói útmutató

Meghajtók Felhasználói útmutató

T A R T A L O M J E G Y Z É K

eseményvezérelt megoldások Vizuális programozás 5. előadás

Z2400 Series használati útmutató

Az Ön kézikönyve HP D325 MICROTOWER DESKTOP PC

1. BEVEZETÉS A RENDSZER ELEMEI, ARCHITEKTÚRÁJA... 5

HP Deskjet F4500 All-in-One series. Windows Súgó

komplex védelem Letöltő szoftver ismertető V1.61 Azonosító: EP Budapest, február

E-ÉPÍTÉSI NAPLÓ KÉZIKÖNYV

Enigma IP2. Távfelügyeleti Vevő

ENIGMA II. Távfelügyeleti Vevő

TERC V.I.P. Összevont Épít ipari Költségvetés-készít Programrendszer

, Klarstein multifunkciós robotporszívó Cleantouch/Cleanrazor. Használati útmutató

TVR 40 Rövid áttekintés

Symbol - PDT 8100 mobil adatgyűjtő Főbb jellemzők

Szakmakódok jegyzéke V

Magyar Nemzeti Bank. ERA Postaláda szolgáltatás. Felhasználói segédlet

A CityGuard rendszer

Mérési utasítás Mikrokontroller programozás 2.sz. mérés

A oldal leírása látogatóknak v1.0

Budapesti Műszaki- és Gazdaságtudományi Egyetem Villamosmérnöki és Informatikai Kar MIT. Nagyteljesítményű mikrovezérlők tantárgy [vimim342]

KELE3. Felhasználói kézikönyv

ER-320F Az Euró előírásoknak megfelelő, környezet barát (ROHS), újrahasznosítható pénztárgép. Felhasználói kézikönyv

Erasmus+ Elektronikus pályázati űrlap. Technikai útmutató pályázók részére

Általános szerződési feltételek

ICN 2005 ConferControl

TC-DVR SS3016. Digitális videó rögzítő. Felhasználói kézikönyv

X10 mini pro. Kibővített használati útmutató

loop() Referencia:

Multimédia Felhasználói útmutató

Samsung Portable SSD T3

A B C D E F. F: 4. LAN port LED G: Táp csatlakozó H: 4. LAN port I: 3. LAN port J: 2. LAN port

L7000 típusú Ujjlenyomatos ajtózár. Használati útmutató

TELL DR Távfelügyeleti Vevő. Telepítői Kézikönyv

Jövő Internet Az innováció motorja a XXI. században

Átírás:

Mérési útmutató a Mobil Kommunikáció és Kvantumtechnológiák Laboratórium méréseihez Internet of Things, avagy a Dolgok Internete Bevezető mérés Mérés helye: Hálózati Rendszerek és Szolgáltatások Tanszék Mobil Kommunikáció és Kvantumtechnológiák Laboratórium (MCL) I.B.113. Összeállította: Knapp Ádám A dokumentum utolsó módosítása: 2016. április 11.

1. Bevezetés A mérés célja, hogy megismertesse a hallgatókat a Dolgok Internete koncepció és a szenzorhálózatok alapjaival az Arduino kompatibilis Moteino szenzor node-ok használatával. A mérés során a hallgatók megtanulják felprogramozni az eszközöket, valamint a beépített szenzorok és perifériák segítségével egy egyszerű vezetéknélküli szenzorhálózatot alakítanak ki. A Dolgok Internete (angolul Internet of Things, IoT) az elmúlt néhány évben az infokommunikációs szektor egyik nagy hívószava lett, és szorosan összefonódik olyan más témákkal, mint az Okos Otthon (Smart Home), Okos Város (Smart City), gépek közötti kommunikáció (Machine to Machine/M2M Communication), valamint a mobil, vezetéknélküli és szenzorhálózatokkal. Az IoT lényege, hogy minden dolgot egy nagy hálózatba kapcsolunk össze. Ilyen dolog gyakorlatilag bármi lehet, viselhető eszközök, háztartási gépek, mérőeszközök, közlekedési eszközök, villanyoszlopok stb. Ezt különböző kommunikációs technológiák teszik lehetővé, akár vezetékes, akár vezetéknélküli kapcsolatról beszélünk. Egy fontos tényezőt érdemes kiemelni ezen a téren, mégpedig az IPv6 hálózati protokollt, amit egy közös platformként lehet elképzelni. Ezt az IPv6 óriási címtartománya és különböző felderítési, biztonsági és egyéb funkciói teszi lehetővé. Valójában az IoT arról szól, hogy kényelmesebbé és biztonságosabbá tegye a mindennapi életünk azáltal, hogy rengeteg kisebb-nagyobb tevékenységet automatizálunk. Ez a folyamat általában a környezet monitorozásával kezdődik, melyeket az eszközök a különböző szenzorok segítségével végeznek. Ezután a keletkezett adatokat összegyűjtik/feldolgozzák/elküldik attól függően, hogy éppen milyen az adott rendszer működése. Ezeket az adatokat végül arra használja a rendszer, hogy szükség esetén beavatkozhasson, illetve lehetőséget biztosítson manuális beavatkozásra. Az adatok feldolgozása történhet lokálisan vagy a keletkezési helyüktől távol is, pl. egy szerveren vagy felhőben, valamint a vezérlés is lehet helyből vagy távolról. 2. Felkészülés a mérésre Figyelmesen olvasd el ezt a dokumentumot, melyben a méréssel kapcsolatos legfontosabb információkat találod! Elevenítsd fel a C programozási nyelvvel kapcsolatos tudásod [1]! Válaszold meg az ellenőrző kérdéseket! 3. Mérési elrendezés A hallgatók a mérést önállóan végzik. A méréshez rendelkezésére áll egy PC, egy Moteino szenzor node [2] és egy USB-UART átalakító. A mérés elvégzéséhez a PC-n használandó programok a következőek: PuTTY kliens, Arduino IDE. A PuTTY klienssel többek között a soros portra csatlakoztatott Moteino node-dal lehet kapcsolatot kialakítani. Az Arduino IDE az Arduino kompatibilis eszközök programozásához készített nyílt forráskódú fejlesztői környezet.

3.1. Moteino szenzor node RFM69 RF chip Moteino egy olcsó, kis teljesítményű, nyílt forráskódú Arduino kompatibilis fejlesztő platform [2]. A panelje tartalmaz egy ATMega328-as mikroprocesszort, egy RFM69 RF chipet, illetve számos lábat, melyekre különféle szenzorok csatlakoztathatók. A mikrokontroller soros porton keresztül programozható egy USB-s interfész segítségével. Részletesebb leírások a szenzor node-ról [2]-ben, az RFM69 RF chipről [3] és [4]-ben található. A PC-vel való kommunikációhoz és a felprogramozáshoz egy USB-UART átalakítót használunk, ami a node működéséhez szükséges 5V-os tápfeszültséget is szolgáltatja. Az 1. ábra a Moteino szenzor node-ot ábrázolja alulról és felülről. A 2. ábra a részben hardveresen, részben az általunk is használt könyvtár által definiált csomag struktúrát mutatja. 1. ábra: Moteino szenzor node [2] 3.2. PuTTY kliens 2. ábra: RFM69 csomag formátuma [4] A PuTTY kliens egy ingyenes SSH és Telnet kliens. A mérés során a soros portra csatlakoztatott Moteino szenzor node-dal való kommunikációra használjuk. A 3. ábra a PuTTY alkalmazás felületét jeleníti meg.

Csatlakozás lépései a Moteino-hoz: 3. ábra: PuTTY kliens felülete 1. Ellenőrizze melyik soros portra csatlakozik a Moteino! 2. A Terminal fülön állítsa át a Line discipline options alatt a Local echo és Local line editing opciókat Forced on beállításra! 3. A Session fülön állítsa át a Connection type opciót Serial-ra! 4. Írja be a soros port számát, illetve a megfelelő átviteli sebesség értéket a Serial line és Speed mezőkbe! 5. Kattintson az Open gombra! 3.3. Arduino IDE Az Arduino IDE az Arduino kompatibilis eszközök programozásához készített nyílt forráskódú fejlesztői környezet. Két alapvető funkciója van: egyrészt támogatja a C nyelvű forráskódok elkészítését, másrészt képes az eszközök számára értelmezhető gépi kódot előállítani és ezt nagyon egyszerűen feltölteni az eszközökre. Mielőtt lefordítanánk a forráskódot, ellenőrizzük a következő beállításokat (elég egyszer az Arduino IDE indítása után): Tools/Board - Arduino Uno Tools/Port - a csatlakoztatott Moteino eszköz portja Tools/Programmer - AVRISP mkii A program feltöltésének lépései (4. ábra): 1. Az elkészített forráskódot lefordítjuk/ellenőriztetjük az Arduino IDE-vel! Ehhez kattintsunk egyszerűen a Verify ikonra vagy használjuk a Ctrl+R billentyűkombinációt! 2. Ha sikeres volt a fordítás (lehetőség szerint a figyelmeztetések okait is szüntessük meg a forráskód módosításával), az Upload ikonra kattintva vagy a Ctrl+U billentyűkombináció segítségével tölthetjük fel a programot!

4. ábra: Arduino IDE Ezen kívül az Arduino IDE még egy funkcióját érdemes kiemelni, amit Serial Monitor-nak nevezünk. A Serial Monitor segítségével kapcsolatot lehet létrehozni a soros porton a felprogramozott eszközzel, gyakorlatilag ez a funkció megegyezik a PuTTY-éval. A Serial Monitor a Tools/Serial Monitor menüre kattintva vagy a Ctrl+Shift+M billentyűkombináció leütése után jelenik meg egy külön ablakban. Figyeljünk arra, hogy a megfelelő átviteli sebesség (baudrate) érték legyen kiválasztva a legördülő listából (5. ábra)! 5. ábra: Serial Monitor

4. Arduino programozás Az Arduino eszközöket beágyazott rendszerekként foghatjuk fel, azok minden előnyével és hátrányával együtt. A beágyazott rendszerek tulajdonságai közül kiemelnénk a korlátozott számítási- és memóriakapacitást, amiket figyelembe kell vennünk a programok elkészítése során. Szerencsére a mai fejlett fordítóknak köszönhetően nincs szükség arra, hogy gépi kódban készítsük el a programokat, ezért ezekhez az eszközökhöz uc nyelven lehet forráskódot írni, illetve annak egy speciális, Arduino-hoz kidolgozott változatán [1]. Ennek ellenére lehetőség szerint takarékoskodjunk a változókkal és próbáljuk meg úgy tömöríteni a forráskódot, hogy a funkcionalitás még ne szenvedjen kárt. Az alábbiakban áttekintjük azokat a nyelvi elemeket, függvényeket, könyvtárakat, amikkel a mérésen, illetve Moteino szenzor node használata során találkozhatunk. Részletesebb leírások [1] és [4]-ben találhatók. 4.1. Arduino programok felépítése Az Arduino forráskódot három fő szakaszra lehet felbontani. Az első szakasz az előfeldolgozónak (preprocessor) szóló utasításokat tartalmazza. Ez a szakasz nem kötelező, viszont a gyakorlatban szinte minden esetben be kell töltenünk az adott eszköz programozásához szükséges API-kat. A második szakasz az inicializáláshoz tartozó utasításokat tartalmazza. Ezek bekapcsolás (tápfeszültségre csatlakoztatás) után hajtódnak végre és az a feladatuk, hogy egy jól definiált alapállapotba állítsák az eszközt. Az inicializálást a void setup() prototípusú eljárásban kell kötelezően megadni. Végül a harmadik szakasz azokból az utasításokból áll, melyeket ismétlődően hajt végre az eszköz. Az utasításokat a void loop() deklarációjú eljárásban kell kötelezően megadni. Természetesen a kód egyszerűbb strukturálása és újrafelhasználhatósága érdekében létrehozhatunk egyéb függvényeket, eljárásokat, könyvtárakat a hagyományos C nyelvhez hasonlóan. 4.2. Előfeldolgozónak szóló utasítások Két általános és nagyon gyakran használt utasítással fogunk találkozni a mérés a során: #include <file> #define constantname value 4.3. Kommunikáció függvénykönyvtárak, API-k betöltése konstans definiálása A Moteino eszközök RF chippel szereltek, illetve a felprogramozásukhoz egy USB-UART átalakítót használunk, ami biztosítja, hogy a soros porton kapcsolatot létesítsünk a PC-vel. Ezek miatt két interfészen is képesek kommunikálni az eszközök. A soros portot felprogramozásra, hibakeresésre, utasítások kiadására, illetve adatok megjelenítésére használjuk. Az alábbi táblázat a soros portos kommunikációhoz kapcsolódó fontosabb függvényeket tartalmazza: byte Serial.available() void Serial.begin(baudrate) byte Serial.print(val,format) byte Serial.println(val,format) byte Serial.read() long Serial.parseInt() Soros portról olvasható bájtok száma Soros port inicializálás adott átviteli sebességre Szöveg vagy változó kiíratása a soros porton keresztül Ugyanaz, mint az előző, csak egy kocsivissza és egy újsor karaktert is kiír Egy bájt kiolvasása a soros portról A soros porton beolvasott szám long típusú változóba töltése

A rádiós interfészt az eszközök közötti kommunikációhoz használjuk. Az alábbi táblázat az RF kommunikációhoz kapcsolódó fontosabb utasításokat és függvényeket tartalmazza: RFM69 radio; bool radio.initialize( byte freqband, byte ID, byte networkid=1); void radio.send( byte toaddress, const void* buffer, byte buffersize, bool requestack=false); bool radio.sendwithretry( byte toaddress, const void* buffer, byte buffersize, byte retries=2, byte retrywaittime=15); bool radio.ackreceived( byte fromnodeid); RFM69 típusú rádió objektum példányosítása Rádió inicializálása; paraméterek: frekvenciasáv, azonosító, hálózatazonosító Adatcsomag küldése; paraméterek: címzett ID-ja, adat, az adat mérete, nyugta kérése Adatcsomag küldése újraküldéssel; paraméterek: címzett ID-ja, adat, az adat mérete, újraküldések maximális száma, újraküldések közötti várakozási idő Nyugta vételének ellenőrzése; paraméter: eszköz ID-ja void radio.promiscuous( Minden rádiós csomag vétele és feldolgozása; bool onoff=true); paraméter: be-kikapcsolás bool radio.receivedone(); Rádiós csomag vételének ellenőrzése byte radio.senderid; Küldő címének tagváltozója byte radio.datalen; Vett adatok hosszának tagváltozója ( 61) byte radio.data[datalen]; Vett adatokat tartalmazó tömb 4.4. Perifériák és szenzorok kezelése A mérés során a Moteino eszközön elérhető LED-et, az RF chip hőmérő szenzorát és a szintén az RF chipből kinyerhető RSSI adatokat használjuk. A Radio Signal Strenght Indicator (RSSI) a vett jel erősségét jellemző paraméter, amiből következtethetünk a rádiós csatorna minőségére. A LED-et a következő utasításokkal vezérelhetjük (a LED a 9-es PIN-en található): void delay(unsigned long ms) void digitalwrite(byte pin, value) void pinmode(byte pin, mode) Késleltetés; paraméter: milliszekundum Magas vagy alacsony feszültségű állapotba állítja a PIN-t; paraméterek: PIN száma, érték: HIGH/LOW PIN konfigurálása ki-bemenetté; paraméterek: PIN száma, mód: INPUT/OUTPUT/INPUT_PULLUP A hőmérőből az alábbi függvénnyel nyerhetjük ki a mért adatokat: byte readtemperature(byte calfactor=0); Hőmérséklet kiolvasása; paraméter: felhasználó által megadott korrekciós tényező Az RSSI értékeket a következő függvénnyel kérdezhetjük le az RF chiptől: int readrssi(bool forcetrigger=false); RSSI kiolvasása; paraméter: azonnali kiolvasás kényszerítése

5. Protokoll specifikáció A mérés egyik célja, hogy implementáljunk C nyelven egy egyszerű protokollt, mellyel vezérlőutasítások és adatok küldhetőek a Moteino eszközök alkotta szenzorhálózatban. A mérésen kialakítandó szenzorhálózatban három féle entitást különböztetünk meg, melyeket manuálisan konfigurálunk a felprogramozás során: Szolga/Slave: feladata, hogy a szenzorjai által mért adatokat elküldje két másodpercenként (az első másodpercben az hőmérsékletet, a másodikban az RSSI-t), illetve reagáljon a vezérlő utasításokra Gyűjtő/Aggregator: hasonlóan működik, mint a szolga, csak összegyűjti a saját és a kapcsolódó szolgák mérési eredményeit és továbbítja a mester felé, illetve a mestertől jövő utasításokat továbbítja a megfelelő szolgának Mester/Master: hasonlóan működik, mint a gyűjtő, viszont a mérési adatok a soros porton keresztül megjeleníti a PC-n, valamint a PC-ről jövő vezérlő utasításokat továbbítja a megfelelő gyűjtő vagy szolga felé. A protokoll csomagformátuma a következő: Fejléc 1 bájt Célcím 1 bájt Adat 1. bájt Adat 2. bájt Adat 3. bájt 6. ábra: Saját protokoll csomagformátuma Adat 4. bájt Ezt a csomagot a 2. ábra adatmezőjébe ágyazva visszük át. A csomag 6 bájt hosszú fixen, ezért hosszúságot jelző bájtokra külön nincs szükségünk (egyébként a hordozó RFM69-es csomagban fejléce tartalmaz ilyen mező). Kétféle adat lehet adatmezőkben: hőmérséklet, illetve RSSI. A fejléc értéke az alábbi táblázat szerint befolyásolja a működést: Fejléc bájt értéke Működés 1 Adatmezőben hőmérséklet érték van 2 Adatmezőben RSSI érték van 10 LED folyamatosan ég (adatmező bájtjai 0 értékűek) 11 LED nem ég (adatmező bájtjai 0 értékűek) 12 LED villog fél másodpercenként (adatmező bájtjai 0 értékűek) 20 Hőmérséklet szenzor bekapcsolása 21 Hőmérséklet szenzor kikapcsolása (nem olvassuk ki az értékét) 22 RSSI szenzor bekapcsolása 23 RSSI szenzor kikapcsolása (nem olvassuk ki az értékét) 6. Mérési feladatok 1. feladat Ismerkedés a Moteino szenzor node-dal: csatlakoztatás PC-hez, az első program elkészítése és feltöltése. Portszám? 2. feladat Kommunikáció a soros porton a PC-vel: adatok bekérése és megjelenítése, utasítások bekérése.

3. feladat A Moteino-n elérhető LED és szenzorok kezelése: LED ki-bekapcsolás, ill. villogtatás; hőmérséklet és RSSI adatok kinyerése. 4. feladat a) Üzenetküldés a rádiós interfészen: rádiós interfész inicializálása; csomagküldés és -fogadás b) Egyszerű szenzorhálózati protokoll implementálása: csomagstruktúra összeállítása; csomagok küldése és fogadása a rádiós interfészen; csomagok kezelése, feldolgozása. 5. feladat Hálózat(ok) kialakítása és az implementált funkciók tesztelése. 7. Ellenőrző kérdések Milyen modulációs eljárást (típus, állapotok száma, egyéb jellemzők) használ a Moteino szenzor node-hoz csatlakoztatott RFM69 rádiós chip? (RFM69 specifikációjában található) Milyen vivőfrekvenciákat támogat az RFM69 rádiós chip? (RFM69 specifikációjában található) Definiáljon C nyelven egy struktúrát, mely egy bájt fejlécből és 7 bájt adatmezőből áll! Milyen függvényekkel lehet lekérdezni a Moteino szenzor node RSSI és hőmérséklet értékeket? Mi az a két alapvető C függvény, melyeket Arduino alapú beágyazott rendszerek helyes működéséhez el kell készíteni? Referenciák, további információk: [1] Arduino Language Reference, https://www.arduino.cc/en/reference/homepage [2] All about Moteino, http://lowpowerlab.com/moteino/ [3] RFM69 ISM TRANSCEIVER MODULE V1.3, http://mcl.hu/?q=hu/laboratory/usrp [4] RFM69 library, http://lowpowerlab.com/blog/2013/06/20/rfm69-library/