Mobiltelefon szenzorainak méréstechnikai alkalmazása

Méret: px
Mutatás kezdődik a ... oldaltól:

Download "Mobiltelefon szenzorainak méréstechnikai alkalmazása"

Átírás

1 BUDAPESTI MŰSZAKI ÉS GAZDASÁGTUDOMÁNYI EGYETEM TUDOMÁNYOS DIÁKKÖRI KONFERENCIA DOKUMENTÁCIÓ Mobiltelefon szenzorainak méréstechnikai alkalmazása Készítette: Nagy Márton Tamás O0HK4S Konzulens: Dr. Samu Krisztián BME MOGI november 5.

2 Kivonat Kivonat A mobiltelefonok technológiai fejlődésével és globális elterjedésével lehetőség nyílt arra, hogy azok szenzorait egyszerű méréstechnikai feladatok elvégzésére bárki alkalmazza. A dolgozat ezen szenzorokat és alkalmazási lehetőségeit elemzi, konkrét mérések tapasztalatai alapján. A dolgozat alapvető filozófiája az, hogy a telefont szenzorként kezeljük, a mért adatokat pedig egy kommunikációs csatornán, valós időben közvetítjük egy feldolgozó számítógépnek. A piaci részesedése alapján legnépszerűbb Android platformú telefonokat alkalmaztam a mérések során, a feldolgozó szoftver pedig az ipari standard LabVIEW platformon alapszik. A dolgozat keretében elkészítésre került számos Android alkalmazás, melyek különböző szenzorok jeleit továbbítják a feldolgozóegységnek. Az elkészített LabVIEW elemzőprogram pedig képes arra, hogy a szenzorok jeleit fogadja, és valós időben feldolgozza. Ezek használatával végeztem el a méréseket, melyek eredményei alapján értékelni lehet a szenzorok alkalmazhatóságát a méréstechnika területén. A dolgozatban kifejtésre kerül a szenzor és a feldolgozóegység szerepe a mérések során, a dolgozat filozófiájának szellemében bemutatásra kerül az információ útja a mérendő mennyiségtől a mérési eredményig. Részletes bemutatásra kerülnek a felhasznált szenzorok és az elvégzett mérések. Minden mérésről mérési jegyzőkönyv is rendelkezésre áll, melyekben megtalálhatóak a nyers mérési adatok, a mérési elrendezések részletes leírása, illetve a mérési eredmények és az ahhoz felhasznált összefüggések. A téma keretében elvégzett mérések a következők: mobiltelefon megvilágításmérőjének kalibrálása, gyorsulásmérő jeléből személyautó motorja fordulatszámának mérése valós időben, mikrofon jelének valós idejű frekvenciaanalízise, mobiltelefon kamera képének felhasználása objektumkövetésre. Továbbá, a téma kitér az Android platform lehetőségire a szenzorok kezelésével kapcsolatban, a LabVIEW-ban történő adatfeldolgozás sajátosságaira, a telefon és a feldolgozó számítógép közötti adatkommunikáció felépítésére. Megemlítésre kerül annak a lehetősége is, hogy több, különböző szenzor jelét oly módon használjuk fel, hogy azok egymást pontosítsák, egy jobb szenzort kapjunk a fúzióból (Sensor Fusion). Demonstrálásra kerül egy ilyen, már meglévő megoldás, és ennek alapján a módszer további alkalmazási lehetőségei is megemlítésre kerülnek. 1

3 Abstract Abstract Due to the rapid development and global spread of mobile phones, their sensors can be utilized by anyone to perform simple measurement tasks. The goal of this paper is to provide insight into the sensors of mobile phones, and to research their possible applications in the field of measurement technology, based on the results of various measurements. The main philosophy of the paper is the following: the phone is used as a sensor, and the raw measured data is sent in real-time to the processing computer, via data communication. The phones used in the research are running Android, the processing software uses the powerful LabVIEW platform. Several Android applications were created for this research in order to send sensor data to the processing computer. A LabVIEW analyzer program was coded, which receives the data and processes it in real-time. The measurements during the research were performed using these applications. The paper elaborates the role of the sensor and the processing unit, and presents the way data flows, in the spirit of the philosophy of the research. The sensors used in the measurements and the measurements themselves are presented in detail. The following measurements were performed during research: calibration of a mobile phone s lux sensor, real-time measurement of the RPM of a car engine using accelerometer data, real-time frequency analysis of microphone signals, object tracking using mobile phone camera. Furthermore, the paper mentions the possibilities the Android platform gives developers regarding sensor utilization, the usage of LabVIEW to process data, and the specifications of the data communication used to link the two. The possibility of using two or more sensors to enhance each other (Sensor Fusion) is presented as well, with an example already used in practice. 2

4 TARTALOMJEGYZÉK Tartalomjegyzék 1. Bevezetés Igény a telefonnal történő mérésekre Kutatási előzmények Az Android használata a mérések során A LabVIEW használata a mérések során A mérések során felhasznált eszközök Információáramlás a mérések során Telefon és szerepe A szenzorok A szenzorok és az Android rendszer kapcsolata A telefon kommunikációja a feldolgozó egységgel Hálózati kapcsolat és szerepe A kommunikációs csatorna fizikai megvalósítása A kommunikációs protokoll Feldolgozóegység és szerepe A mérési adat fogadása a feldolgozóegységen A mérési adat feldolgozása Az Android méréstechnikai alkalmazása Felhasználói felület A szenzorok elérése Időzítés megvalósítása Mikrofonkezelés Kamerakezelés Hálózatkezelés A LabVIEW használata a mérések során Szenzoradatok fogadása, a TCP szerver Szenzoradatok feldolgozása LabVIEW képfeldolgozás Motor fordulatszámának mérése gyorsulásmérővel A mérési elrendezés

5 TARTALOMJEGYZÉK 5.2. Mérési adatok felvétele Az adatsor frekvencia analízise Első mérési sor analízise Hatodik mérési sor analízise A mérési eredmény Következtetések Objektumkövetés mobiltelefon kameraképe alapján A mérési elrendezés A mérés menete A hálózati késleltetés mérése x240 felbontással A mérési eredmény Az elméleti háttér A mérési eredmények táblázatosan Következtetések Mobiltelefon megvilágításmérőjének kalibrálása A mérési elrendezés A mérés menete Szenzorok kalibrálása Kalibrált szenzorral való mérések Következtetések Mobiltelefon mikrofon jelének frekvencia analízise A mérési elrendezés A mérés menete Az adatsor frekvencia analízise Következtetések Sensor Fusion Bevezető Orientáció meghatározása Sensor Fusion segítségével [6] Orientáció meghatározásának módjai A Sensor Fusion alkalmazása Pozíciómeghatározás Sensor Fusion segítségével

6 TARTALOMJEGYZÉK Pozíció meghatározása gyorsulásmérő jeléből és orientációból Pozíciómérés kamera képe alapján A Sensor Fusion alkalmazása Összegzés Konklúzió Végszó A téma folytatása Köszönetnyilvánítás Mellékletek 55 5

7 1. BEVEZETÉS 1. Bevezetés 1.1. Igény a telefonnal történő mérésekre A mobiltelefonok technológiai fejlődősével a bennük található szenzorok is egyre fejlettebbek lettek. A manapság forgalomba kerülő telefonokon szériafelszereltség a gyorsulásmérő, a mikrofon, a kamera, és számos egyéb szenzor. Alapvető méréstechnikai feladatokat egy telefon működése során folyamatosan végez: a gyorsulásmérő jelének folyamatos vizsgálatával változtatja a kép orientációját, a megvilágításmérővel a képernyő fényerejét, a közelségmérő segítségével pedig telefonálás közben sötétíti el a képet a készülék. A rendszeren kívül az alkalmazások is használják a készülék teljes szenzorpalettáját. Elég csak az ezernyi játékra gondolni, amelyek irányítására a gyorsulásmérő vagy a giroszkóp használatos. Ezen alkalmazások mögött méréstechnikai feladatok állnak: valós időben kell a telefon állapotát mérni, a mérési adatokat rögzíteni kell, azokból pedig következtetéseket kell levonni, és az alapján cselekedni. A felhasználó tudatosan a kamerát és a mikrofont használja leggyakrabban. Léteznek alkalmazások, melyek a kamera képét torzítják, vagy éppen a mikrofon segítségével készítenek hang állományt. A dolgozat célkitűzése az, hogy bemutassa a telefonnak, mint szenzornak az alkalmazását egyszerű méréstechnikai feladatok elvégzésére. A telefonnak így csupán a szenzorai lesznek használva, a feldolgozásért egy külön feldolgozóegység felel, amelyhez a telefon hálózati kommunikáció segítségével juttatja el a nyers mérési adatokat. A dolgozat ezen szenzorokat és alkalmazási lehetőségeit elemzi, konkrét mérések tapasztalatai alapján Kutatási előzmények Mint az előbbiekben ismertetésre került, a mobiltelefonok szenzorait elsősorban a készülék állapotának mérésére használjuk, hogy ez alapján változtassuk meg a telefon működését, ami lehet a kép orientációjának megváltoztatása, vagy esetleg egy játék karakterének irányítása. Ennek tudatában nyilvánvalóvá válik, hogy a szenzorok ismerete nélkülözhetetlen a mobiltelefonra történő fejlesztés során. Okostelefonok esetében rendelkezésre állnak rendszerhívások ahhoz, hogy a szenzorok adatait elérjük. 6

8 1. BEVEZETÉS Számottevő kutatási előzmények: Getting High Precision Timing on Android [4] A mintavételezéshez pontos időzítés szükséges, a tanulmány ennek leírásával foglalkozik. Motion recognition with Android devices [5] Mozgás felismerésének módjait leíró tanulmány, számos gesztus érzékelése gyorsulásmérővel. Sensor Fusion [6] Orientáció pontosított meghatározására szolgáló módszer. Object Recognition With OpenCV and Android [7] Objektum felismerése Androidon, kamerakép alapján. A dolgozat merít a fenti tanulmányokból, illetve a Sensor Fusion bemutatására külön fejezet szolgál: bemutatásra kerül az alapkoncepció és megvalósítása orientáció mérésére, illetve ismertetésre kerül egy további alkalmazási mód is Az Android használata a mérések során Manapság az Android a legelterjedtebb mobiltelefon platform, egyre növekvő népszerűséggel [8]. Az Android egy Linux kernelen alapuló, nyílt forráskódú operációs rendszer, legelterjedtebben mobiltelefonokban használatos. A dolgozatban használt mobiltelefonok ezt az operációs rendszert futtatják. Ennek okai a következőek: Ingyenes fejlesztőkörnyezet (Android Studio) Ingyenes szoftverfejlesztés a platformra Kiterjedt Sensor framework a szenzorok adatainak kezelésére A rendszer a leggyakrabban előforduló szenzorokat támogatja, a legtöbb telefonban pedig ezek megtalálhatóak Az Android platformra magas szinten Java nyelven programozhatunk, így szinte a teljes Java paletta is rendelkezésünkre áll. Ennek okán a hálózati kommunikáció is akadálytalanul megvalósítható a platformon. Ehhez kliensoldali TCP Socket áll rendelkezésünkre a telefonon, amivel a feldolgozóegységnek tudjuk továbbküldeni az adatokat. 7

9 1. BEVEZETÉS 1.4. A LabVIEW használata a mérések során A mérési adatokat tehát egy TCP Socket kapcsolaton keresztül juttatjuk el a feldolgozó egységnek. Ez a feldolgozó egység egy számítógép, mely egy LabVIEW programmal elemzi a beérkező adatokat, valós időben. A LabVIEW (Laboratory Virtual Instrument Engineering Workbench) egy rendszer tervező platform és fejlesztő környezet a National Instruments vizuális programozási nyelvéhez (G nyelv). A G nyelv egy adatfolyam programozáson alapuló nyelv. Az utasításokat a blokk diagram struktúrája határozza meg, melyen a fejlesztő függvénycsomópontokat vezetékez egymáshoz, kijelölve az adatfolyam irányát. Egy utasítás akkor hajtódik végre, hogyha az összes kellő adat megérkezik csomópontjaihoz. Ez a programozási módszer jelentősen gyorsítja és könnyíti a fejlesztést a platformra. Egy LabVIEW programot (ez lehet például egy függvény megfelelője) egy VI (Virtual Instrument) jelképez. A VI-nak vannak be- és kimenetei, ahova a megfelelő vezetékeket bekötve adhatjuk meg a paramétereket és nyerhetjük ki a visszatérési értéket. 1. ábra. Egyszerű matematikai művelet kódja LabVIEW-ban A LabVIEW platformot számos, jelfeldolgozásért felelős könyvtár erősíti, ezekből a dolgozatban felhasználtak: Signal Processing Toolkit Advanced Signal Processing Toolkit Vision and Motion Ezen könyvtárak segítségével végeztem el a szenzorok jeleinek Fast Fourier Transzformációját, illetve a képelemzést. Egyéb fontosabb könyvtárak: Data Communication 8

10 1. BEVEZETÉS Mathematics Ezen könyvtárak a telefon-számítógép hálózati kapcsolat és az alapvető matematikai műveletek elvégzését szolgálják A mérések során felhasznált eszközök A dolgozat során két telefont és egy számítógépet használtam fel: Nokia X Android alapú okostelefon Sony Xperia SP Android alapú okostelefon Dell Latitude E6530 Számítógép Készülék Operációs rendszer Verzió Nokia X Android (CyanogenMod) Sony Xperia SP Android 4.3 (Hivatalos Sony ROM) Dell Latitude E6530 Windows 7 Professional, SP1 Egyéb felhasznált eszközök: MS-1500 Digitális megvilágításmérő (VOLTCRAFT) Opel Astra V Club személyautó HP TFT MONITOR Felhasznált szoftverek: Saját fejlesztésű feldolgozószoftver (LabVIEW 2014) Saját fejlesztésű Android szoftverek a szenzorok kezelésére és adattovábbításra (Android Studio) OriginPro 8.5 a kalibrációs görbék meghatározásához Adobe Photoshop CS6, TexMaker (L A TEX) a dokumentáció elkészítéséhez 9

11 2. Információáramlás a mérések során 2. INFORMÁCIÓÁRAMLÁS A MÉRÉSEK SORÁN Lényeges tisztában lenni azzal, hogy az információ hogyan áramlik a mérések során, mivel így felvázolhatjuk, hogy a mérések során milyen csomópontokon halad át információ, illetve ezen csomópontoknak mi a szerepe az információ feldolgozásában és továbbításában. 2. ábra. Az információáramlás szemléltetése Az 2. ábrán szemléltetésre kerül az információáramlás folyamata a dolgozatban elvégzett mérések során. Az ábra alapján az információ áramlása a következőképpen írható le: A mérendő fizikai rendszer jelei közül kiválasztott mért mennyiséget mérjük A mért mennyiség a telefon egy szenzorával villamos jellé alakítódik A telefon a villamos jelet AD átalakítással digitális jellé alakítja. A telefon a digitális jelet szükség szerint kalibrációs görbére illeszti, ezzel megkapjuk a mérési adatot. A mérési adat egy kommunikációs csatornán valós időben továbbításra kerül a feldolgozó egységhez. A feldolgozó egység fogadja a mérési adatokat, azokat pedig (valós időben) feldolgozza. Így jutunk el a mérési eredményig. A mérések szempontjából három fontos csoportot alkothatunk: 10

12 2. INFORMÁCIÓÁRAMLÁS A MÉRÉSEK SORÁN A telefon A kommunikációs csatorna A feldolgozóegység A fejezet további részei a fenti három csoporttal foglalkoznak. Ismertetésre kerül a csoportok felépítése, szerepe az információáramlásban Telefon és szerepe Mint az már említésre került, a telefont, mint szenzort alkalmazzuk a mérések során. Így a telefont három részre kell osztanunk: A beépített szenzorokra Az Android rendszer és a szenzorok kapcsolatrendszerére A telefon hálózati kommunikációja a feldolgozó egységgel A szenzorok Az Android rendszer a következő szenzorokat támogatja (Android 4.0-tól): Gyorsulásmérő, ambiens hőmérséklet mérő, gravitáció szenzor, giroszkóp, megvilágításmérő, lineáris gyorsulás, iránytű, orientációmérő, nyomásmérő, közelségszenzor, páratartalom mérő, rotációs vektor mérő, hőmérsékletmérő Ezeken kívül elérhető a kamera és mikrofon jele is. A félkövérrel szedett szenzorok a dolgozat kidolgozása során felhasználásra kerültek. A szenzorokat három csoportba sorolhatjuk [9]: Mozgás szenzorok: Ezen szenzorok gyorsulási és rotációs erőt mérnek, három tengely mentén. Ide tartoznak a gyorsulásmérők, gravitáció szenzorok, giroszkópok és rotáció vektor szenzorok. Környezeti szenzorok: Környezeti paraméterek mérésére használatos szenzorok, például: külső hőmérséklet és nyomás, megvilágítás, páratartalom. Pozíció szenzorok: Ezen szenzorok a készülék fizikai pozícióját mérik. Ebbe a kategóriába tartoznak az orientációmérők és a mágnese iránytű. 11

13 2. INFORMÁCIÓÁRAMLÁS A MÉRÉSEK SORÁN Ezen szenzorok szerepe az, hogy a mérendő rendszer valamely valós fizikai jelét (a mért mennyiséget) valamilyen módszerrel elektromos jellé alakítsa, hogy azt a telefon operációs rendszere analóg digitális átalakítással digitális jellé alakítsa. A digitális jel ezután egy kalibrációs görbével kalibrációra kerül. Ezzel kialakul a mérési adat. A szenzorok hardver szintű felépítésével és az alacsony szintű folyamatokkal, mint az AD átalakítás vagy a telefonba beépített kalibráció a dolgozat nem foglalkozik A szenzorok és az Android rendszer kapcsolata Android rendszer esetén a mérési adatok elérésére egy kiterjedt Sensor Framework áll rendelkezésre. A kamera és a mikrofon elérésétől eltekintve a SensorManager osztály használatos a szenzorok kezelésére. Ezzel az osztállyal a készüléken megtalálható szenzorokra iratkozhatunk fel, hogy jeleiket elérjük. A szenzorokat kezelő Java osztályokkal és azok használatával egy későbbi fejezet foglalkozik részletesen A telefon kommunikációja a feldolgozó egységgel Rendelkezésünkre állnak tehát a mérési adatok, melyeket valós időben el kell juttatni a feldolgozóegységhez, hogy az adatfeldolgozás megtörténhessen. Az Android platformra magas szinten Java nyelven programozhatunk, így szinte a teljes Java paletta is rendelkezésünkre áll. Ennek okán a hálózati kommunikáció is akadálytalanul megvalósítható a platformon. Ehhez kliensoldali TCP Socket áll rendelkezésünkre a telefonon, amivel a feldolgozóegységen futó szerverhez tudjuk továbbküldeni az adatot. Ennek konkrét megvalósításával a következő fejezet foglalkozik Hálózati kapcsolat és szerepe A mérési adatokat közvetíteni kell a telefon és a feldolgozó számítógép között. Két lényeges dolgot kell eldönteni: A kommunikációs csatorna fizikai megvalósítását A kommunikációs protokollt 12

14 2. INFORMÁCIÓÁRAMLÁS A MÉRÉSEK SORÁN A kommunikációs csatorna fizikai megvalósítása A mérés során a felhasznált feldolgozó számítógép (Dell Latitude E6530) beépített Wifi jeladóját használtam fel arra, hogy egy ad hoc vezeték nélküli kapcsolatot hozzak létre, amire a telefonnal fel lehet csatlakozni. Windows rendszer alatt a megvalósítás parancssorral történik: netsh wlan set hostednetwork mode=allow ssid=name key=pwrd netsh wlan start hostednetwork netsh wlan stop hostednetwork Ezzel rendelkezésre áll egy kommunikációs csatorna, amelyen keresztül vezeték nélkül, a számítógép körülbelül 5 méteres környezetében létesíthetünk kapcsolatot a két eszköz között. Az átlagos válaszidő 60 [ms]. Ezzel a kommunikációs csatornával megvalósíthatóak olyan mérések, melyeknél elengedhetetlen a telefon szabad mozgása (pl. rezgések mérésénél, kamerás méréseknél), a feldolgozóegységnek nem kell a szenzor közvetlen közelében lennie, és az adatkommunikáció illetve a feldolgozás valós időben kell történnie. Ezen tulajdonságok alapján a csatorna teljes körűen megfelel a dolgozat során elvégzett mérések adatkommunikációval kapcsolatos elvárásainak A kommunikációs protokoll A választott kommunikációs protokoll a TCP (Transmission Control Protocol). A TCP protokollnak számos előnye van a mérési adatok közvetítésénél: A mérési adatok biztosan megérkeznek a feldolgozó egységhez A mérési adatok helyes sorrendben érkeznek meg (helyes sorrendiség garantált) A mérési adatok helyesen érkeznek meg (hibakeresés) A megvalósítása egyszerű bármely platformon Egy alternatív protokoll lehet az UDP (User Datagram Protocol), azonban ott nem garantált minden mérési adat megérkezése a feldolgozó számítógépnek, illetve lehetnek hibás mérési adatok, mivel hibakeresés nincsen. Ezzel szemben lecsökkent késleltetési idő jellemzi ezt a protokollt. Alternatívát ez csupán a kamerakép közvetítésénél jelentene, a dolgozatban viszont azt is a TCP protokollal valósítottam meg. A hálózati kommunikáció létrejöttével már csupán a feldolgozó számítógép alapvető elvi vázlatát kell lefektetni ahhoz, hogy a szoftverek konkrét megvalósításáról tudjunk beszélni mind a telefon, 13

15 2. INFORMÁCIÓÁRAMLÁS A MÉRÉSEK SORÁN mind a feldolgozó oldalon Feldolgozóegység és szerepe A feldolgozó egység egy személyi számítógép, melyen egy LabVIEW adatfeldolgozó program fut. A feldolgozó egység szerepét két alapvető részre kell bontanunk: Az adat fogadása Az adat feldolgozása A mérési adat fogadása a feldolgozóegységen A telefon és a feldolgozó számítógép között fennálló vezeték nélküli (WiFi) csatornán a kommunikáció protokollja a TCP. A LabVIEW platformon minden eszköz rendelkezésre áll, hogy ezt a kapcsolatot szoftver szinten megvalósítsuk. Ezen az oldalon működik a TCP szerver, amelyhez kapcsolódik a telefon oldali TCP Socket. A LabVIEW platformon a TCP kommunikációra a Data Communication csomag használatos, mely tartalmazza a TCP Server VI-t is. A szoftvert fel kell készíteni különböző adattípusok fogadására, mivel a mérések során nem csupán egyszerű valós számokat használunk, hanem esetenként tömböket illetve kép állományokat is A mérési adat feldolgozása A mérési adatokat fogadásuk után fel kell dolgozni. A feldolgozás alapvetően a mérési adatok megjelenítése, rögzítése, azokkal való műveletek elvégzése, illetve az így kapott mérési eredmény megjelenítése és rögzítése. A mérési adatok megjelenítésére rendelkezésre állnak a mérnöki munka során előszeretettel alkalmazott grafikonok, ezen felül pedig egyszerű numerikus indikátorokat is alkalmazhatunk. Az adatok rögzítésére az összes hagyományos módszer rendelkezésre áll a platformon: menthetünk szöveges és bináris fájlba is, továbbá számos szabványos formátum is választható, például a comma separated values (.csv). A grafikonok adatait is exportálhatjuk. A számszerű adatok elemzésére számos műveletre van szükség. Az alapvető matematikai műveletekre a LabVIEW Mathematics könyvtára áll rendelkezésre, a frekvencia tartománybeli 14

16 3. AZ ANDROID MÉRÉSTECHNIKAI ALKALMAZÁSA elemzésre és egyéb transzformációkra a Signal Processing Toolkit és az Advanced Signal Processing Toolkit használható. A frekvencia tartomány ábrázolására és csúcskeresésre természetesen rendelkezésre állnak eszközök a platformon. A valós idejű képfeldolgozásra a Vision and Motion toolkitet alkalmaztam a mérések során. Ez a csomag igen hatékony képfeldolgozó algoritmusokat tartalmaz, melyeket a képek szegmentálására használtam, szín alapú objektumfelismerés megvalósítására. Ezzel rendelkezésre áll a mérési eredmény, tehát elérkeztünk az információ áramlásának végére. A fent említett funkciók konkrét megvalósításának egy külön fejezetet szentel a dolgozat. 3. Az Android méréstechnikai alkalmazása A fejezet betekintést ad abba, milyen eszközeink vannak a szenzorok felhasználására Android platform alatt. Továbbá, a hálózati kommunikáció megvalósítása is bemutatásra kerül. Számos kódrészlet ad programozástechnikai példákat, a teljes forráskód pedig egy működő példát demonstrál, a téma keretén belül ezeket a szoftvereket alkalmaztam a mérések elvégzésekor. A dolgozat keretében készített programok és forráskódjaik (MIT Licence alatt) a mellékletek között megtalálhatóak, és szabadon felhasználhatóak (a licencben foglaltak betartása mellett) Felhasználói felület Az okostelefonokra készített alkalmazások egyik igen fontos eleme a felhasználói felület. Android platformon lehetőség van egy felületet.xml formátumban leírni, és a felület elemeit Java kódban elérni. Ez jelentősen megkönnyíti a felhasználói felületek megvalósítását a platformon. Mivel ez nem a téma szerves része, ezért a megvalósítás bemutatásától eltekintek. A felhasználói felület felépítésénél figyelembe kell venni azt, hogy ezek az alkalmazások méréstechnikai célra készülnek. Számos Android applikáció készült, de mindegyik felülete rendelkezik az alábbi, mérésekhez szükséges eszközökkel és funkcionalitással: A képernyő forgatása le van tiltva (az alkalmazás objektumai és felülete ilyenkor újjáépítésre kerülnek, ami szüneteltetheti a mérést) A képernyő elsötétedése le van tiltva (hasonló okokból, mint a forgatásnál) 15

17 3. AZ ANDROID MÉRÉSTECHNIKAI ALKALMAZÁSA Szerepelnek olyan adatbeviteli mezők, melyekkel specifikálhatjuk a feldolgozó számítógép IP címét és a kommunikációs portot a hálózaton Connect gombbal csatlakozhatunk a feldolgozó egységhez Valamilyen formában megjelenítésre kerül a mérési adat Specifikálni lehet a mérési adat küldésének frekvenciáját Send Sensor Data gombbal elkezdhetjük a küldését az adatnak Lehetőség van szöveges adatokkal való kommunikációra a feldolgozóegységgel Továbbá, a felület egyes elemei nem elérhetőek bizonyos esetekben: A Send Sensor Data gomb nem aktiválható, ha nincs felállítva a hálózati kapcsolat Az adatküldés frekvenciája nem módosítható az adat küldése közben Az IP és Port beviteli mezők nem módosíthatóak a hálózati kapcsolat fennállása közben 3.2. A szenzorok elérése Ezen alfejezet a következő szenzorok elérésével foglalkozik: Gyorsulásmérő, ambiens hőmérséklet mérő, gravitáció szenzor, giroszkóp, megvilágításmérő, lineáris gyorsulás, iránytű, orientációmérő, nyomásmérő, közelségszenzor, páratartalom mérő, rotációs vektor mérő, hőmérsékletmérő 3. ábra. A felhasználói felület A félkövéren szedett szenzorokat használó applikációk elkészítésre kerültek a dolgozat keretein belül. Az alábbiakban a szenzorok kezelését a gyorsulásmérő példáján fogom bemutatni, mivel az összes többi (fent felsorolt) szenzor elérése és adatainak kezelése azzal analóg módon történik. Az Android platformon a SensorManager osztállyal érhetjük el a szenzorokat. Elérése: private SensorManager sensormanager; sensormanager = (SensorManager) getsystemservice(context.sensor_service); 16

18 3. AZ ANDROID MÉRÉSTECHNIKAI ALKALMAZÁSA Ennek az objektumnak a segítségével érhetjük el a telefon szenzorait, az alábbi módon: private Sensor sensoracc; sensoracc = sensormanager.getsensorlist(sensor.type_accelerometer).get(0); Ezzel kapunk egy példányosított, gyorsulásmérőt reprezentáló objektumot. Ahhoz, hogy a szenzor által mért adatokat elérjük, regisztrálni kell azt: sensormanager.registerlistener(sensorhandler, sensoracc, SensorManager.SENSOR_DELAY_FASTEST); A függvény második argumentuma a regisztrálni kívánt szenzor objektum, a harmadik pedig definiálja a szenzorfrissítési frekvenciát. A választható labelek és a hozzájuk tartozó jellemző (mért) mintavételezési frekvenciák a 4. ábrán találhatóak. Megjegyzésül: a frekvenciák készülék specifikusak, az Xperia SP készülékkel 200Hz-es mintavételezési frekvencia is megvalósítható a tapasztalataim szerint. 4. ábra. A szenzorkésleltetési idők, X10 mini [5] Az első argumentuma a registerlistener függvénynek egy SensorEventListener listener, mely interfészt egy SensorHandler osztállyal valósítottam meg: public class SensorHandler implements SensorEventListener { // accelerometer vector private float[] accel = new float[3]; // listener that we send the data to private SensorDataListener mstatuslistener = null; 17

19 3. AZ ANDROID MÉRÉSTECHNIKAI ALKALMAZÁSA public SensorHandler(SensorDataListener listener){ mstatuslistener=listener; } public float[] getrawaccdata(){ return accel; public void onsensorchanged(sensorevent event) { Sensor sensor = event.sensor; if (sensor.gettype() == Sensor.TYPE_ACCELEROMETER) { System.arraycopy(event.values, 0, accel, 0, 3); } mstatuslistener.getdata(); public void onaccuracychanged(sensor sensor, int accuracy) { } } public interface SensorDataListener{ } public void getdata(); A SensorEventListener interfész onsensorchanged és onaccuracychanged függvényeit meg kell valósítani. Az utóbbi számunkra nem releváns, az előbbiből viszont kinyerhetőek a szenzor adatok, az argumentumban kapott event példányból. A kódrészletben bemutatásra kerül az adatok kinyerésének módja. Az onsensorchanged akkor hívódik meg, amikor új szenzor mintavételezési adat érhető el. A SensorDataListener interfész megvalósításával egy osztály értesül arról, hogy új szenzor érték érhető el. A téma keretein belül készített programokban ezt az interfészt a MainActivity implementálja. Hogyha nem kívánjuk továbbra is elérni a szenzorok adatait, akkor le kell iratkoznunk róluk. Ez az alábbi módon zajlik: sensormanager.unregisterlistener(sensorhandler); Ezt energia és erőforrás takarékossági szempontból kell megtennünk. 18

20 3. AZ ANDROID MÉRÉSTECHNIKAI ALKALMAZÁSA 3.3. Időzítés megvalósítása Mivel a pontos, meghatározott frekvenciájú mintavételezés nem megoldott az előbbiekben bemutatott szenzorkezeléssel, megoldást kell találni arra, hogy meghatározott időlépésenként küldjük a mérési adatokat a feldolgozó egységnek. Az Android platformon erre lehetőséget kínál a Timer osztály. A Send Sensor Data gomb megnyomására egy ilyen időzítő lép működésbe, amely egy általunk milliszekundumban meghatározott időlépéssel küldi a mérési adatot a feldolgozó egységnek. Timer mytimer = new Timer(); mytimer.schedule(new TimerTask() public void run() { if(isconnected&&issendingdata&&mtcpclient!=null){ //send bytes try { mtcpclient.sendbytes(accvector[0]); mtcpclient.sendbytes(accvector[1]); mtcpclient.sendbytes(accvector[2]); } catch (IOException e) { e.printstacktrace(); } } if(!issendingdata!isconnected mtcpclient==null) this.cancel(); } }, 0, Integer.parseInt(refreshEditText.getText().toString())); 3.4. Mikrofonkezelés A mikrofon kezelésére az AudioRecord osztály használatos. A mikrofon beállításánál számos lehetőségünk van: audiosource : a mérések során a beépített mikrofont használom samplerateinhz : a mintavételezési frekvencia, 44100Hz garantáltan működik minden készüléken, ezen felül elérhető 22050, 16000, 11025Hz egyes készülékeken channelconfig : a CHANNEL IN MONO minden készüléken támogatott, a CHANNEL IN STEREO is elérhető néhány készüléken 19

21 3. AZ ANDROID MÉRÉSTECHNIKAI ALKALMAZÁSA audioformat : ENCODING PCM 8BIT, ENCODING PCM 16BIT, és ENCODING PCM FLOAT buffersizeinbytes : annak a tömbnek a mérete, melybe az audio adatot írjuk A megvalósítás: //settings public static final int SAMPPERSEC = 44100; private int audioencoding = AudioFormat.ENCODING_PCM_16BIT; private int channelconfiguration = AudioFormat.CHANNEL_IN_MONO; int buffersizebytes=audiorecord.getminbuffersize(samppersec, channelconfiguration, audioencoding)*5; //create the recorder class private AudioRecord ar = new AudioRecord( MediaRecorder.AudioSource.MIC, SAMPPERSEC, channelconfiguration, audioencoding, buffersizebytes); Egy bufferbe a következőképpen tudunk mintavételezési adatokat menteni: private static short[] buffer; private int msamplesread;//how many samples buffer = new short[buffersizebytes/2]; msamplesread = ar.read(buffer, 0, buffersizebytes/2); Ezt a műveletet egymás után elvégezhetjük, így folytonos mintavételezést kapunk. A buffer tömböt elküldve a feldolgozó egységnek, különböző műveleteket tudunk elvégezni az adatsoron, a legkézenfekvőbb a frekvencia tartományra bontás, ami a mérés során is alkalmazásra kerül Kamerakezelés Ahhoz, hogy kép stream-et küldjünk a feldolgozó egységnek, először szükségünk van egy kamera objektumra. private Camera mcamera = getcamerainstance(); private Camera getcamerainstance() { Camera camera = null; try { camera = Camera.open(); } catch (Exception e) { // cannot get camera or does not exist } 20

22 3. AZ ANDROID MÉRÉSTECHNIKAI ALKALMAZÁSA } return camera; A kamera előnézeti képéből tudjuk kinyerni az elküldendő képeket. Fontos tudni a támogatott képfelbontásokat: List<Camera.Size> supportedpreviewres; Camera.Parameters params = mcamera.getparameters(); supportedpreviewres = params.getsupportedpreviewsizes(); //setting important parameters: params.setpreviewsize(supportedpreviewres.get(0).width, supportedpreviewres.get(0).height); params.setfocusmode(camera.parameters.focus_mode_continuous_video); mcamera.setparameters(params); A képkockák eléréséhez egy callback objektum áll rendelkezésünkre, ezeket a képkockákat jpeg formátumra konvertáljuk, és így küldjük el a feldolgozó egységnek: Camera.PreviewCallback mpreview = new Camera.PreviewCallback() public void onpreviewframe(byte[] data, Camera camera) { //get image data... //get image format... //convert to jpeg... //send jpeg via tcp } } Az algoritmus komplexitása miatt nem kerül részletes bemutatásra a dolgozat keretein belül, azonban a mellékletek között a teljes forrás megtalálható Hálózatkezelés Az előzőekben ismertetésre került az, hogyan érhetőek el Android platformon a szenzorok adatai. Ezeket az adatokat továbbítani kell a feldolgozóegység felé, jelen alfejezet ezzel foglalkozik. Mint már említésre került, a hálózati kommunikáció a TCP protokoll szerint zajlik. Ezért a funkcióért a TCPClient osztály felel. Ennek megvalósítására először egy Socket objektumra van szükségünk: 21

23 3. AZ ANDROID MÉRÉSTECHNIKAI ALKALMAZÁSA Socket socket = new Socket(); socket.connect(new InetSocketAddress(serverIP, serverport), 2000); Ezek után a szöveges adatok ki- és bevitelén, valamint a mérési adatok bájtként történő továbbítását kell megoldani az alábbi módon: PrintWriter outstring; BufferedReader in; DataOutputStream outbytes; //send the message to the server outstring = new PrintWriter(new BufferedWriter( new OutputStreamWriter(socket.getOutputStream())), true); outbytes=new DataOutputStream(socket.getOutputStream()); //receive the message which the server sends back in = new BufferedReader(new InputStreamReader(socket.getInputStream())); A MainActivity-nek valamilyen módon kommunikálnia kell a TCPClient objektummal. Erre két interfészt használtam: OnMessageReceived : A szervertől (feldolgozóegység) kapott szöveges adat közvetítése TCPStatusListener : A TCP kapcsolat állapotáról tájékoztatja a MainActivity-t public interface OnMessageReceived { public void messagereceived(string message); } public interface TCPStatusListener { public void onconnect(int flag); public void onclose(); } //flags public static int SUCCESSFUL = 1; public static int ERROR = -1; A szervertől való adatok fogadásáról az alábbi ciklus gondoskodik: while (mrun) { servermessage = in.readline(); if (servermessage!= null && mmessagelistener!= null) { //call the method messagereceived from MyActivity class mmessagelistener.messagereceived(servermessage); } servermessage = null; } 22

24 3. AZ ANDROID MÉRÉSTECHNIKAI ALKALMAZÁSA A mérési adatok és szöveges üzenetek küldéséről az alábbi függvények gondoskodnak: //send text messages public void sendmessage(string message){ if (outstring!= null &&!outstring.checkerror()) { outstring.println(message); outstring.flush(); } } //send the measurement data in bytes public void sendbytes(byte[] b) throws IOException { //send the size of the byte array first outbytes.writeint(b.length); outbytes.flush(); outbytes.write(b); outbytes.flush(); } A TCPClient objektumot a következőképpen inicializáljuk a MainActivity-ből, külön szálban: public class connecttask extends AsyncTask<String,String,TCPClient> protected TCPClient doinbackground(string... message) { String ip=ipedittext.gettext().tostring(); String portstring= portedittext.gettext().tostring(); int port = Integer.parseInt(portstring); //we create a TCPClient object and mtcpclient = new TCPClient(new TCPClient.OnMessageReceived() //here the messagereceived method is implemented public void messagereceived(string message) { //this method calls the onprogressupdate publishprogress(message); } },MainActivity.this, ip, port); mtcpclient.run(); return null; protected void onprogressupdate(string... values) { super.onprogressupdate(values); //in the textview we add the messaged received from server linetextview.settext(values[0]); 23

25 4. A LABVIEW HASZNÁLATA A MÉRÉSEK SORÁN } } A külön szálból való működés azért indokolt, mert ellenkező esetben az objektum működése a felhasználói felületért felelős szálból futna, így blokkolná az alkalmazás felületét. Először létrehozzuk a TCPClient objektumot, majd elindítjuk a mtcpclient.run(); hívással. A szervertől kapott üzenetek fogadásáért az onprogressupdate függvény felel, ezzel pedig a felhasználói felületen megjelenítjük az üzenetet: linetextview.settext(values[0]). 4. A LabVIEW használata a mérések során Az előző fejezetben bemutatásra került az, hogyan lehet Android alapú mobiltelefonon elérni a szenzorokat és adataikat, ez a fejezet pedig megmutatja, hogyan lehet LabVIEW oldalon fogadni, feldolgozni, rögzíteni és prezentálni a mérési adatot. A dolgozat keretében készített programok és forráskódjaik (MIT Licence alatt) a mellékletek között megtalálhatóak, és szabadon felhasználhatóak (a licencben foglaltak betartása mellett) Szenzoradatok fogadása, a TCP szerver A Android oldalról bájtonként küldött mérési adatokat fogadnunk kell LabVIEW oldalon. A TCP kapcsolatért felelős szerver ezen az oldalon fut, ennek megvalósítása a 5. ábrán látható. A TCP 5. ábra. TCP szerver megvalósítása LabVIEW-ban szerver VI-nak a következő bemenetei vannak: Port: a kapcsolat portja Timeout: Az az idő, amennyit a kliens kapcsolódásáig vár a VI, ezután Exception-t dob Error in: input a bemenő hibának A kimenetek: 24

26 4. A LABVIEW HASZNÁLATA A MÉRÉSEK SORÁN Connection reference: A felépített kapcsolatot megadó érték, ami majd az adatot kiolvasó VI bemenete lesz Error out: ha a VI futása során hiba keletkezett, akkor a dobott hiba ezen a kimeneten lesz elérhető A kliens oldalról több formátumban érkezik adat: unsigned int számhármasok, short számok, single tömbök, jpeg kép állományok. Ezek fogadására külön-külön fel kell készíteni a feldolgozó programot. A különböző adattípusok között egy Mode kapcsolóval válthat a felhasználó. A többféle adat fogadásának megvalósítása a tcp2data.vi VI-al valósul meg. Ennek bemenete a fent említett Connection reference, illetve a szintén tárgyalt Mode állapota. A megvalósítás a megvilágításmérő jelének fogadására a 6. ábrán látható. 6. ábra. TCP szerver megvalósítása LabVIEW-ban A TCP kapcsolatból kiolvasó VI bemenete a kapcsolatot jellemző referencia, továbbá a kiolvasandó bájtok száma, a timeout intervallus, illetve a bemenő hiba. Látható, hogy az adatkimenet String formátumú, ezt át kell konvertálni (explicit cast) a megfelelő típusba, ami jelen esetben single. Ezzel megvan a feldolgozásra kész mérési adat. A különböző Mode-okhoz tartozó adatfogadási algoritmusokat a mellékelt forráskódban lehet megtalálni, a dolgozat keretein belül nem részletezem. Tehát rendelkezésre áll a feldolgozó oldalon a mérési adat, amit fel kell dolgozni, hogy eljussunk a mérési eredményig. Az adatfeldolgozással a következő alfejezet foglalkozik Szenzoradatok feldolgozása A dinamikusan változó adat egyik jellegzetes feldolgozási formája a frekvencia analízis. Ezt a módszert alkalmazhatjuk a gyorsulásmérő, giroszkóp és a mikrofon jelére. Az első két esetben a frekvenciatartomány valamilyen mozgás frekvenciáját adja vissza, tehát mérhetővé válnak rezgések 25

27 4. A LABVIEW HASZNÁLATA A MÉRÉSEK SORÁN frekvenciái, motorok fordulatszáma, stb. A mikrofon jeléből megkaphatjuk a felvett hanghullám hangmagasságát. Ezt a frekvencia elemzést a LabVIEW-ban Fast Fourier Transzformációval (FFT) valósíthatjuk meg. A transzformáció elvi hátterével a dolgozat nem foglalkozik, a LabVIEW megvalósítás az alábbi képen látható: A transzformációhoz Waveform typusú adat kell, amely egy adattömbből (Y) és 7. ábra. TCP szerver megvalósítása LabVIEW-ban egy időlépésből (dt) áll. Az FFT VI kimenete a Fourier transzformált valós és komplex része. Ezek egy (adott frekvenciához tartozó amplitúdókból álló) adattömbből, frekvencialépésből és kezdő frekvenciából állnak. A két komponens egyesítésének módja az 7. ábrán látható. A mérési adatok és mérési eredmények grafikus prezentálására számos lehetőség adódik a Lab- VIEW platformon, a dolgozat ezeket nem részletezi, de az elemzőprogram forráskódjában ezek alkalmazásra kerültek, így az jó példát szolgáltathat. A mérési adatot lehetőségünk van fájlba menteni, illetve a grafikonról közvetlenül is exportálhatjuk tartalmát.s 4.3. LabVIEW képfeldolgozás A LabVIEW platformon a képfeldolgozásért a Vision and Motion csomag felel. Ez egy igen erőteljes eszköz a képfeldolgozásra, komplexitása miatt nem részletezem a használatát a dolgozatban. A dolgozatban megtalálható forráskódban jelen van ez a technológia. A felhasználása a képfeldolgozásnak szín alapú szegmentálás. Ezt azt jelenti, hogy különböző feltételeknek megfelelő pixelek csoportját egy objektumnak tekintjük. Ebben az esetben a feltételek a színre vonatkoznak: az LHS (Luminance-hue-saturation) színtér paramétereire adott korlátok határozzák meg, hogy egy pont megfelelő-e a kritériumnak. Megadható a ponthalmaz méretére vonatkozó minimum és maximum érték is. 26

28 5. MOTOR FORDULATSZÁMÁNAK MÉRÉSE GYORSULÁSMÉRŐVEL Az algoritmus végén megkapjuk az objektum méretét pixelben, illetve az objektum súlypontjának x és y koordinátáit. Ezt az algoritmust egy színes objektum kamerakép alapján való követésére használom fel a dolgozat során. 8. ábra. Szegmentálás a LabVIEW programban Köszönettel tartozom Nagy Balázsnak és Papp Máténak, továbbá a MOGI Ethorobotikai laborjának LV2-es csoportjának azért, mert rendelkezésemre bocsátották a zöld színre kereső szegmentáló VI-t. A képfeldolgozási folyamat érdekes különlegessége, hogy a TCP-n átküldött jpeg képet először a feldolgozó oldalon a program a fájlrendszerbe/ramdisc-re menti, majd innen tölti be az IMAQ képfeldolgozó formátumába. Ezt azért kell megtenni, mert a Vision and Motion csak így képen jpeg fájlt betölteni a képfeldolgozó rendszerbe. Ezzel befejeződött a mérések elvi és gyakorlati megalapozása, így a továbbiakban a ténylegesen elvégzett mérések és azok tapasztalatai kerülnek bemutatásra. 5. Motor fordulatszámának mérése gyorsulásmérővel A mérés teljes mérési jegyzőkönyve, mely tartalmazza az összes mérési adatot, a mellékletek között megtalálható. A gyorsulásmérő a modern telefon egyik legalapvetőbb szenzora, legtöbb készülék esetében azonban helytelenül van kalibrálva. Ettől eltekintve, a szenzor alkalmas arra, hogy jelét frekvencia tartományra bontsuk, így pedig elvégezhetünk egyszerű fordulatszámmérést is. A mérés során egy személyautó motorjának fordulatszáma kerül mérésre, úgy, hogy a gyorsulásmérőből eredő 27

29 5. MOTOR FORDULATSZÁMÁNAK MÉRÉSE GYORSULÁSMÉRŐVEL adatokat FFT felhasználásával frekvenciatartományra bontjuk, és az eredményt összevetjük a fordulatszámmérő óráról leolvasott értékekkel. A feladat során felhasználtam a saját készítésű Android programot (AccOverTCP), mellyel a LabVIEW elemző programhoz továbbítjuk a szenzor adatokat. A szoftverek megvalósításával az előző fejezetek foglalkoznak A mérési elrendezés A mérés célja egy személyautó motorjának fordulatszámának mérése egy telefon beépített gyorsulásmérőjének jeléből. További cél az eljárás használhatóságának elemzése, a mérés értékelése, következtetések levonása. A mérés során az alábbi eszközök kerültek felhasználásra: Sz. Megnevezés Gyártó Mérési tart. Felbontás Gyári szám ST gyorsulásmérő Sony Xperia SP AccOverTCP Android program Labview elemzőprogram ST Microelectronic [ m s 2 ] 0,01 [ m s 2 ] Nagy Márton T Nagy Márton T Opel Astra V Club Opel [ ] [ ] 5. Opel Astra fordulatszámmérő órája Opel , ford perc 100 ford perc 6. Dell Latitude E6530 Dell A végrehajtandó feladatok: Az AccOverTCP Android szoftvert használva, a mérendő motorról a mérendő adatok felvétele. A motor fordulatszámmérő óráján mutatott értékek felvétele. A LabVIEW elemzőprogram segítségével elvégezzük a real-time frekvencia elemzést, melyből a motor fordulatszámára következtethetünk. Mérési adatok és a mérés eredményének rögzítése. Következtetések levonása, a mérés értékelése. - 28

30 5. MOTOR FORDULATSZÁMÁNAK MÉRÉSE GYORSULÁSMÉRŐVEL 5.2. Mérési adatok felvétele A mérési adatokat az AccOverTCP Android programmal rögzítjük, és a LabVIEW elemzőprogrammal végezzük a real time frekvencia analízist. A mérés során a telefont a motorhoz rögzítjük, hogy a mérési adatok pontosabbak legyenek. A mérést akkor végezzük el, amikor a motor fordulatszámát sikerült állandóra állítani. A gyorsulásmérő beállításai a következőek: Mintavételezési frekvencia: Buffer méret: 5 Hz vagy 10 Hz (mérésnél részletezve) 500 minta (2, 5 [s] vagy 5 [s]) Több ilyen, 500 mintából álló sor frekvencia analízise lesz elvégezve. A mérési sorok adatai: Sorszám [ Fordulatszámmérő 100 ford perc ] Mintavételezés frekvenciája [Hz] 1. 7, Az adatsor frekvencia analízise A LabVIEW elemzőprogram segítségével elvégezhetjük az adatsor frekvencia analízisét. Ehhez a LabVIEW beépített Fast Fourier Transform VI-ját használjuk. Az elemzés történhet valós időben, folyamatosan, azonban ezen mérés során csupán egy adatsorra végezzük el az analízist. A FFT eredményéből csúcskereséssel meg kell határozni a csúcsok frekvenciáját és amplitúdóját. A csúcskeresést a LabVIEW beépített csúcskereső VI-jával végezzük el. A csúcsok között találhatóak olyanok, melyek nem a motor fordulatszámából adódnak, ki kell választani azt a csúcsot, amely a fordulatszámot adja. A Fast Fourier transzformáció [Hz]-ben adja meg a csúcsok frekvenciáját, míg a személyautó fordulatszámmérője [ ford min ] dimenziójú. A kettő közötti átváltás: y ford min = 60 y Hz 29

31 5. MOTOR FORDULATSZÁMÁNAK MÉRÉSE GYORSULÁSMÉRŐVEL A következőkben csak az első és a hatodik mérési sor elemzése kerül kifejtésre, a többi a mellékletek között megtalálható mérési jegyzőkönyvben megtalálható Első mérési sor analízise A fordulatszámmérőről leolvasott érték: 7, 5 [ 100 ford ] perc A gyorsulásmérő jelének FFT értékeire vett csúcskeresés eredménye: [ ] Sorszám Frekvencia [Hz], ford perc Amplitúdó [ ] m s ,59, 1595,4 0, ,60, 696,2 0,11 A legnagyobb amplitúdójú komponens a motor rezgésének első felharmonikusát adja, amiből a mért fordulatszám: n = 1595, 4 ford perc 2 = 797, 7 ford perc Az alapfrekvencia zajos, de a második legnagyobb csúcsot ott mértük. A mérési eredmény legyen a kettő átlaga: n final = 797, , 2 ford 2 perc = 747ford perc [ 9. ábra. 750 ford perc ] Hatodik mérési sor analízise A fordulatszámmérőről leolvasott érték: 30 [ 100 ford ] perc A gyorsulásmérő jelének FFT értékeire vett csúcskeresés eredménye: 30

32 5. MOTOR FORDULATSZÁMÁNAK MÉRÉSE GYORSULÁSMÉRŐVEL Sorszám Frekvencia [Hz], [ ] ford perc Amplitúdó [ m s 2 ] 1. 2,65, 159 3,1 Ezen a fordulatszámon már nincsen értékelhető eredménye a mérésnek. [ 10. ábra ford perc ] 5.4. A mérési eredmény Az előzőek összegzésére szolgál az alábbi táblázat: ] Sorszám Fordulatszámmérő [ ford perc Gyorsulásmérő FFT-ből , , , , , [ ] ford perc 5.5. Következtetések A mérés alapján a következő következtetések vonhatóak le: A szenzor alkalmas alapvető, frekvencia analízisre épülő mérnöki és méréstechnikai feladatok ellátására. A standard kommunikációs protokoll a szenzor (telefon) és a feldolgozóegység (számítógép) között, illetve a valós idejű mérés lehetősége számos alkalmazási lehetőséget kínál. A buffer méret növelése növeli a mérési pontosságot, a csökkentése viszont a valós idejűséget javítja. A mérési tartománya az elrendezésnek hozzávetőlegesen 0 35 [Hz]. 31

33 6. OBJEKTUMKÖVETÉS MOBILTELEFON KAMERAKÉPE ALAPJÁN A mintavételezési frekvencia minimális értéke 5 [ms], mely maximálisan 100 [Hz] frekvenciájú rezgés mérését teszi lehetővé. 6. Objektumkövetés mobiltelefon kameraképe alapján A mérés teljes mérési jegyzőkönyve, mely tartalmazza az összes mérési adatot, a mellékletek között megtalálható. Manapság igen sok helyen alkalmaznak különböző képfeldolgozó eljárásokat, így meg kell vizsgálnunk a telefon ezen érzékelője képességeit is. A mérés során a telefon kamerájának képkockáit jpeg stream formájában küldjük a feldolgozóegységhez, ahol a LabVIEW program Vision and Motion csomag felhasználásával azt valós időben elemzi. Kérdéses a képkockák késleltetésének mértéke és a képfrissítési ráta. Ezeket különböző felbontásokon vizsgálja a mérés. Ezen kívül a módszer felhasználási körének behatárolása is feladata a mérésnek A mérési elrendezés A mérés célja - egy telefon kameraképének felhasználásával történő - objektumkövetés vizsgálata. Az objektumkövetés késleltetésének mérése, a kamera képfrissítésének meghatározása, különböző felbontások esetén. Továbbá, az eljárás alkalmazási körének behatárolása, következtetések levonása, a mérés értékelése. A mérés során használt eszközök az alábbiak: Sorsz. Megnevezés Gyártó Mérési tart. Felbontás Gyári szám 1. hátsó kamera Sony Xperia SP Sony Mobile CamOverTCP Android program Nagy Márton T Labview elemzőprogram Nagy Márton T HP TFT MONITOR HP Dell Latitude E6530 Dell

34 6. OBJEKTUMKÖVETÉS MOBILTELEFON KAMERAKÉPE ALAPJÁN 6.2. A mérés menete A végrehajtandó feladatok: A hálózati késleltetés mérése. Mérési adatok felvétele három felbontáson. A LabVIEW feldolgozóprogrammal való real time elemzése a mérési adatoknak. Az eredmények átlagolása, táblázatba foglalása. Következtetések levonása, a mérés értékelése. A mérés előtt meg kell határozni a hálózat késleltetésének a mértékét, ahhoz, hogy el tudjuk különíteni a képfeldolgozásból adódó késleltetést a hálózatétól. A mérés során a telefont egy ad hoc wifi hálózattal összekötjük a LabVIEW programot futtató számítógéppel. A telefon kamerájával egy monitoron körmozgást végző pontot követünk. A pontról készült felvételek alapján a zöld színű objektumot behatároljuk a LabVIEW programmal, és kinyerjük annak X és Y koordinátáit a képen. Ezt az [XY] pontot és a referencia kört egy koordinátában ábrázoljuk, innen pedig a fáziskésésből meghatározzuk a mérés eredő késleltetését. Hogyha a mért pontokból adott számút (10db) ábrázolunk, a csóvához tartozó szög alapján képfrissítési időt mérjük. Három felbontáson végzendő el a mérés: 320x240, 640x480, 960x720[px]. A mérés paraméterei: A mérésről készült két videó felvétel: Referencia kör szögsebessége: 5 rad s A csóvában lévő mérési pontok száma: 10 Referencia kör színe az ábrákon: Mérési eredmény színe az ábrákon: A LabVIEW programról készült felvétel, ami megmutatja a felhasználói felület alapvető működését A mérési elrendezésről készült live action felvétel A két videó fájl a mellékletek között megtalálható. kék zöld 33

35 6. OBJEKTUMKÖVETÉS MOBILTELEFON KAMERAKÉPE ALAPJÁN A hálózati késleltetés mérése A hálózati késleltetést a Windows ping -t parancsával mérjük, a mérési eredményt az alábbi kép tartalmazza: 11. ábra. Hálózati késleltetés mérése Tehát az átlagos hálózati késleltetés 57 [ms]. A továbbiakban a 320x240 pixel felbontással elvégzett mérés eredményei kerülnek részletezésre, a 640x480 és a 960x720 pixeles felbontásokkal készített mérések eredménye a jegyzőkönyvben megtalálható. 34

36 6. OBJEKTUMKÖVETÉS MOBILTELEFON KAMERAKÉPE ALAPJÁN x240 felbontással A három mérés: (a) Első mérés (b) Második mérés (c) Harmadik mérés 12. ábra. Mérési eredmények 320x240[px] felbontáson, ω = 5 rad s Mérés sorsz. Fáziskésés φ [rad] Csóvához tartozó szög θ [rad] 1. 0,51 3, ,03 3, ,24 2,97 Átlag: 0,93 3, A mérési eredmény Az elméleti háttér A fáziskésésből az eredő időkésleltetés t delay [s]: φ = ω t delay 35

37 6. OBJEKTUMKÖVETÉS MOBILTELEFON KAMERAKÉPE ALAPJÁN t delay = φ ω Ahol: ω = 5 rad s : a kamerázott objektum körfrekvenciája φ [rad] : fáziskésés Levonva a hálózat késleltetését: t dprocessing = t delay t dnetwork [s] Ahol t dnetwork = 0, 057 [s] A 10 mérési pontból álló csóvához tartozó szög és az átlagos képfrissítés kapcsolata: θ = 10 θ avg θ avg = ω t refresh Ahol: θ [rad] : a teljes csóvához tartozó középponti szög θ avg [rad] : átlagos középponti szög két képfrissítés között t refresh [s] : a képfrissítési idő ω = 5 rad s : a kamerázott objektum körfrekvenciája Tehát: A képfrissítés frekvenciája: t refresh = F P S = θ 10 ω 1 t refresh [Hz] A számításokhoz az adott felbontáshoz tartozó mérések átlagolt értékét használjuk fel A mérési eredmények táblázatosan Mérés t delay [s] t dprocessing FPS [Hz] 320x240 0,19 0,13 15,8 640x480 0,21 0,15 16,3 960x720 1,13 1,07 12,9 36

38 7. MOBILTELEFON MEGVILÁGÍTÁSMÉRŐJÉNEK KALIBRÁLÁSA 6.4. Következtetések A mérés alapján a következő következtetések vonhatóak le: A szenzor alkalmas alapvető objektumkövetési feladatok ellátására A LabVIEW képfeldolgozó real-time képes feldolgozni a beérkező képeket A felbontás növelésével a képfrissítési frekvencia nem változik jelentősen, azonban 640x480 felbontás felett a késleltetési idő jelentősen nő. A LabVIEW képfeldolgozó rendszerével tetszőleges színű és alakú objektumot tudunk követni. 7. Mobiltelefon megvilágításmérőjének kalibrálása A mérés teljes mérési jegyzőkönyve, mely tartalmazza az összes mérési adatot, a mellékletek között megtalálható. A mobiltelefonok számottevő részében található megvilágításmérő, melyet a rendszer általában arra használ, hogy - a környezet megvilágítottságának függvényében - megváltoztassa a képernyő megvilágítását. A szenzor adatait elérhetjük az Android rendszer alatt, így megvizsgálhatjuk a telefonok megvilágításmérőjének méréstechnikai falhasználását. A mérés lényege az, hogy összehasonlítsunk két különböző típusú készülék megvilágításmérőjének kalibrálását. Ezzel bemutatásra kerül egyrészt az, hogy milyen méréstechnikai alkalmazásai lehetségesek a szenzorral, másrészt pedig megvilágításra kerül a telefonokban megtalálható szenzorok sokfélesége A mérési elrendezés A mérés célja két mobiltelefon megvilágításmérő szenzorának kalibrálása, kalibrált megvilágításmérőt használva. Továbbá, a kalibráció értékelése, és a kalibrált szenzorokkal való kontroll mérések elvégzése, kiértékelése. A mérés során használt eszközök: 37

39 7. MOBILTELEFON MEGVILÁGÍTÁSMÉRŐJÉNEK KALIBRÁLÁSA Sorsz. Megnevezés Gyártó Mérési tart. Felbontás Gyári szám 1. MS-1500 Digitális megvilágításmérő VOLTCRAFT [lux] 0.01[lux] Light Sensor [-] Sony Mobile Sony Xperia SP (saját egység) 1[-] - 3. LTR559 Light Sens [-] LiteOn Nokia X (saját egység) 1[-] - 4. OriginPro 8.5 adatelemző program OriginLab LuxOverTCP Android program Nagy Márton T Labview elemzőprogram Nagy Márton T Dell Latitude E6530 Dell A mérés menete A végrehajtandó feladatok Mérési adatok felvétele a három készülékkel. OriginPro felhasználásával lineáris regresszió a mérési adatokra, mindkét kalibrálandó készülékre. A lineáris regresszió adatainak implementálása az Android szoftverbe. A kalibrált szenzorokkal való kontroll mérések elvégzése. Következtetések levonása, a kalibráció értékelése. A mérési adatok felvétele előtt rendelkezni kell a LuxOverTCP Android alkalmazással, illetve a mérési adatok egyszerű gyűjtése érdekében az adatgyűjtő LabVIEW programmal. A mérés során figyelni kell arra, hogy diffúz felületre irányítsuk a szenzorokat (pl. plafon). A mérőeszközöket szorosan egymás mellé kell helyezni, hogy a lehető leghitelesebb legyen a mérési sor. A méréseket természetes megvilágítással végezzük (napfény). Különböző szobákban, különböző fényviszonyok mellett (más napszakban) végzünk méréseket. 38

40 7. MOBILTELEFON MEGVILÁGÍTÁSMÉRŐJÉNEK KALIBRÁLÁSA Xperia SP Nokia X Luxmeter [1] [1] [lux] Range: 1024 Resolution: 1 Range: Resolution: 1 Range: Resolution: 0.01 Light Sensor LTR559 Light Sensor (Sony Mobile) (LiteOn) Voltcraft MS-1500 A mérési adatok a jegyzőkönyvben megtalálhatóak Szenzorok kalibrálása A kalibrációs egyeneseket az OriginPro programmal veszem fel. Először keresem az összes adatra illeszthető egyenest. A (0,0) pontot rögzítem, csak a meredekség a kérdés. A keresett egyenesek y = m x alakúak. (a) Xperia SP (b) Nokia X 13. ábra. Lineáris regresszió a teljes adatsorra Az OriginPro programmal az alábbi meredekségek adódtak: m SP = 9, m X = 1, A regresszió további adatai illetve az OriginPro projekt fájl megtalálható a mellékletben. 39

41 7. MOBILTELEFON MEGVILÁGÍTÁSMÉRŐJÉNEK KALIBRÁLÁSA Az 14a. ábrán látható, hogy az Xperia SP szenzora esetében az alacsony értékekre nagyobb meredekségű egyenes illesztésével pontosabb kalibrációt kaphatunk. Az Xperia SP adatsorát kettéválasztva, két regresszióst egyenest kapunk. Ezekből pedig megkapjuk a kalibrációs egyenest. (a) Xperia SP alacsony értékeire (b) Xperia SP magas értékeire 14. ábra. Lineáris regresszió az Xperia SP adatsorára Az alacsony értékekre applikált egyenes alakú, míg a magas értékekre az egyenes alakja y = m SPlow x y = m SPhigh x + b SPhigh A program alapján kapott értékek: m SPlow = 16, m SPhigh = 5, 1791 b SPhigh = 1590, Keressük a két egyenes metszéspontját, az alábbi egyenletrendszerből: y 0 = m SPlow x 0 y 0 = m SPhigh x 0 + b SPhigh 40

42 7. MOBILTELEFON MEGVILÁGÍTÁSMÉRŐJÉNEK KALIBRÁLÁSA A megoldás: x Így fel tudjuk írni a kalibrációs görbéket a két készülékre. Xperia SP: Nokia X: 16, x, if x 138 y(x) = 5, 1791 x , 65929, if x > 138 y(x) = 1, x Ahol: y [lux] : a kalibrált lux érték x [ ] : a kalibrálatlan érték, a szenzor saját egységében kifejezve A kalibrációs görbék implementálásra kerülnek a LuxOverTCP programba, hogy kontrollméréseket lehessen elvégezni Kalibrált szenzorral való mérések A kalibrált eszközökkel három mérést végeztem el, különféle fényviszonyok mellett. A mérési eredményt a 15. ábra mutatja. 15. ábra Látható, hogy a két kalibrált készülék csak nagyságrendileg pontos, így felhasználhatósága igen korlátozott. 41

43 8. MOBILTELEFON MIKROFON JELÉNEK FREKVENCIA ANALÍZISE 7.5. Következtetések A mérés alapján a következő következtetések vonhatóak le: A szenzorok igen különbözőek a két készülékben: a kalibrált meredekségek és mérési tartományok igen eltérőek A szenzorok kalibráltan is alkalmatlanok méréstechnikai feladat ellátására A szenzorok alkalmasak a megvilágítottság hirtelen változásának mérésére A szenzorok alkalmasak egyszerűbb és nagy pontosságot nem igénylő mérések elvégzésére, mint például egy szoba megvilágításának nagyságrendileg helyes mérésére 8. Mobiltelefon mikrofon jelének frekvencia analízise A mérés teljes mérési jegyzőkönyve, mely tartalmazza az összes mérési adatot, a mellékletek között megtalálható. A telefonok mindegyikében található beépített mikrofon, melynek jelét felhasználhatjuk méréstechnikai célokra. Jelen mérés során a mikrofon jelét valós időben bontjuk frekvenciatartományra, hogy ezzel meghatározzuk a rögzített hang (a mérés során zenei A) magasságát A mérési elrendezés A mérés célja egy mobiltelefon beépített mikrofon jelének valós idejű frekvencia analízisének elemzése, az eljárás alkalmazási lehetőségeinek feltárása. A mérés során használt eszközök: 42

44 8. MOBILTELEFON MIKROFON JELÉNEK FREKVENCIA ANALÍZISE Sz. Megnevezés Gyártó Mérési tart. Felbontás Gyári szám 1. Beépített mikrofon [-] Sony Mobile Sony Xperia SP (saját egység) 1[-] - 2. MicOverTCP Android program Nagy Márton T Labview elemzőprogram Nagy Márton T Sony MDR-EX 15 LP [Hz] Sony hangforrás (névleges) Dell Latitude E6530 Dell A végrehajtandó feladatok: A MicOverTCP Android szoftvert használva, külső forrásból eredő hang felvétele. A LabVIEW elemzőprogram segítségével elvégezzük a real-time elemzést. Mérési adatok és a mérés eredményének rögzítése. Következtetések levonása, a mérés értékelése A mérés menete A mérési adatokat a MicOverTCP Android programmal rögzítjük, és a LabVIEW elemzőprogrammal végezzük a real time frekvencia analízist. A hangforrás egy gumiharangos fülhallgató. A gumiharangot használjuk arra, hogy a zajokat kiszűrjük a mérésből. Az szolgáltatást használva egy 440 Hz-es zenei A hangot elemzünk. A mikrofon beállításai a következőek: Mintavételezési frekvencia: Encoding: Csatorna konfiguráció: Buffer méret: Hz PCM 16 bit Channel in Mono minta (0, 2322 [s]) Az adatsor normalizálásra kerül, így a mért adatok tartománya [ ]. Egy ilyen, mintából álló sor frekvencia analízise lesz elvégezve. A nyers mérési adatok a mellékletek között megtalálhatóak. 43

45 8. MOBILTELEFON MIKROFON JELÉNEK FREKVENCIA ANALÍZISE 8.3. Az adatsor frekvencia analízise A LabVIEW elemzőprogram segítségével elvégezhetjük az adatsor frekvencia analízisét. Ehhez a LabVIEW beépített Fast Fourier Transform VI-ját használjuk. Az elemzés történhet valós időben, folyamatosan, azonban ezen mérés során csupán egy adatsorra végezzük el az analízist. Az FFT analízis nyers eredménye a mellékletek között megtalálható. (a) FFT eredménye 5000Hz-ig (b) Néhány további felharmonikus 16. ábra. Lineáris regresszió a teljes adatsorra A FFT eredményéből csúcskereséssel meg kell határozni a csúcsok frekvenciáját és amplitúdóját, mivel ezek mérése a mérés célja. A csúcskeresést a LabVIEW beépített csúcskereső VI-jával végezzük el. Csúcs (és nem völgy) keresése a cél, továbbá a zaj kiszűrése érdekében egy ös amplitúdó treshold alkalmazandó. Ezzel a beállítással az alapfrekvencia két további oktávját is mérni lehet. Alacsonyabb treshold értékkel további felharmonikusokat mérhetünk, azonban a zaj szűrése kevésbé lesz hatékony. Magasabb treshold-dal kizárólag az alaphang mérése lehetővé válik. A csúcskeresés és a mérés eredménye: Frekvencia [Hz] Amplitúdó [-] 439,35 0, ,03 0, ,34 0, Következtetések A mérés alapján a következő következtetések vonhatóak le: A szenzor alkalmas alapvető, frekvencia analízisre épülő mérnöki és méréstechnikai feladatok ellátására. 44

46 9. SENSOR FUSION A standard kommunikációs protokoll a szenzor (telefon) és a feldolgozóegység (számítógép) között, illetve a valós idejű mérés lehetősége számos alkalmazási lehetőséget kínál. A buffer méret növelése növeli a mérési pontosságot, a csökkentése viszont a valós idejűséget javítja. 9. Sensor Fusion 9.1. Bevezető A sensor fusion lényege az, hogy különböző szenzorok adatait kombinálva a kapott eredmény pontosabb, teljesebb, vagy megbízhatóbb, mint ha a szenzorok adatait külön használnánk fel. A következőkben egy, már kidolgozott módszer kerül ismertetésre, amely pontosabb orientáció mérést tesz lehetővé [6], illetve ez alapján egy másik lehetséges alkalmazását mutatom be a sensor fusionnek, amivel a pozíciót lehet pontosabban meghatározni az orientáció, a gyorsulásmérő és egy külső kamera képe alapján. Az orientációt meghatározó algoritmust implementáltam Android platformon, és a LabVIEW feldolgozóprogramot is felkészítettem a sensor fusion orientáció adatok fogadására. Egy 3D animáció segítségével lehet szemléltetni a telefon orientációját, valós időben. A pozíciómérés nem került megvalósításra a dolgozat keretein belül, csak az elvi háttér és az alapvető megfontolások. Azonban, mivel a téma kidolgozása során minden, a megvalósításhoz kellő algoritmust implementáltam mind Android, mind LabVIEW platformon, a forráskód pedig a mellékletek között szerepel, így nem okozhat nehézséget a pozíció meghatározás algoritmusának megvalósítása. A téma egyik gyümölcsöző folytatása lehet ez, és más hasonló sensor fusion módszer elemzése, mobiltelefon szenzorait felhasználva Orientáció meghatározása Sensor Fusion segítségével [6] Orientáció meghatározásának módjai A három, a készülék orientációját jellemző szöget általában a gyorsulásmérő és a magnetométer (iránytű) jeléből állítjuk elő. A gyorsulásmérő jeléből meghatározható, hogy merre mutat a gravitációs vektor, a magnetométer pedig iránytűként funkcionál, a telefont körülvevő mágneses térből 45

47 9. SENSOR FUSION meghatározza, hogy a Föld északi pólusa a telefonhoz képest milyen szögben van. Ezzel a két eszközzel elméletileg meghatározható a készülék orientációja. Azonban mindkét szenzor pontatlan, ráadásul a magnetométer sok zajjal is terhelt, valamint a válaszideje is nagy. A készülékekben található giroszkóp sokkal nagyobb pontosságú, és a frissítési ideje is nagyobb. A giroszkóp szögsebesség adatokat szolgáltat három tengely mentén. Hogy ebből orientációt tudjunk számolni, az értékeket idő szerint integrálni kell. Ez úgy történik, hogy a szögsebesség adatot megszorozzuk az előző adat beérkezése óta eltelt idővel. Ezzel egy rotáció inkrementumot kapunk, ezeket összegezve pedig megkapjuk a készülék abszolút orientációját. φ i = ω i t Ahol: φ = n i=1 φ i φ i [rad] : az i-edik elemi rotáció inkrementum vektor ω i [ rad ] : az i-edik pillanatnyi szögsebességvektor s t [s] : az i 1 és i-edik időpillanat között eltelt idő φ [rad] : a készülék orientációját jellemző abszolút rotáció vektor A folyamat során az összes iterációnál apró hibák lépnek fel a mérési adatokban (zajos a szenzor). Hogyha ezt a zajt integráljuk, konstans ütemben változik az így mért orientáció (giroszkóp drift, 17. ábra), akkor is, hogyha a telefon valós helyzete nem változik A Sensor Fusion alkalmazása Az előzőekben leírtak alapján látható, hogy mindkét, orientáció mérésére alkalmazható módszernek vannak hibái: a gyorsulásmérő és magnetométer jeléből előállított orientáció zajos és lassú, a giroszkóp jelét integrálva viszont szembesülünk a drift jelenségével. Azonban látható, hogy a két módszer előnyeit egyesítve egy pontosabb és jobban használható orientáció mérési módszert kapunk. A megoldás konkrét szoftveres megvalósítására a dolgozat nem tér ki (az alfejezet címében található hivatkozás tartalmazza, illetve a mellékletek között megtalálható (nyílt forráskódú) SensorFusionOverTCP Android alkalmazásban implementáltam az algoritmust), viszont az alapvető algoritmus bemutatásától nem lehet eltekinteni. 1. A gyorsulásmérő és a magnetométer jeléből elő kell állítani az orientációt (accmagorientation) 46

48 9. SENSOR FUSION 17. ábra. Giroszkóp drift szemléltetése [10] 2. A giroszkóp jelét idő szerint integrálva elő kell állítani az orientációt (gyroorientation) 3. Az accmagorientation-re alul áteresztő, a gyroorientation-re felül áteresztő szűrőt alkalmazva összegezzük a két orientáció jelet, hogy megkapjuk a korrigált orientációt. 18. ábra. [6] Az alul áteresztő szűrővel a magnetométer és gyorsulásmérő jeléből előállított orientációnak csak a lassan változó vagy konstans részét kapjuk meg, a felül áteresztő szűrő pedig a giroszkóp integrálásából eredő orientáció dinamikáját adja vissza. Ezeket összegezve egy olyan orientáció jelet kapunk, mely jó dinamikai képességekkel rendelkezik, jól reagál, nem jellemzi a drift kevésbé zajos A 19. ábra szemléletesen mutatja be a sensor fusion ezen alkalmazását. 47

49 9. SENSOR FUSION 19. ábra. [6] 9.3. Pozíciómeghatározás Sensor Fusion segítségével Az előzőekben bemutatásra került orientációmérés módszerrel analóg módon lehetőség van a készülék pozíciójának mérésére is felhasználni a sensor fusion-t. Jelen alfejezet taglalja a pozíciómérés módszereit, azok előnyeit és hátrányait, illetve bemutatja, hogy (felhasználva az előző alfejezetben bemutatott, javított orientációmérési eljárást is felhasználva) miként lehet - a mobiltelefonok szinte teljes szenzorpalettája felhasználásával - javítani a pozíciómérés pontosságát Pozíció meghatározása gyorsulásmérő jeléből és orientációból A pozíció meghatározásának egyik módja a gyorsulásmérő jelének kétszeres integrálása idő szerint. A gyorsulásmérő nyers jele azonban nem használható, mivel azt a gravitáció terheli: nem ad valós képet a telefon gyorsulásából a világ koordináta rendszerben. Ennek kiküszöbölésére a telefon koordináta rendszerében (ξ, η, ζ) elérhető nyers gyorsulásmérő adatokból álló a ξ,η,ζ vektort át kell transzformálni a világ koordináta rendszerbe (x, y, z). Ezt követően a z koordinátát terhelő g gravitációs gyorsulást ki kell vonni a kapott, (x, y, z) rendszerben lévő gyorsulásvektorból, hogy megkapjuk a készülék lineáris gyorsulását a világ koordináta rendszerben: a lin,x,y,z A transzformációs mátrix felírásához szükségünk van a telefon abszolút orientációjára. Az előző alfejezetben ismertetésre került egy módja a pontosított orientációmérésnek a sensor fusion alkalmazásával, itt is ez kerül alkalmazásra. 48

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

Bosch Recording Station. Telepítési kézikönyv Bosch Recording Station hu Telepítési kézikönyv Bosch Recording Station Tartalomjegyzék hu 3 Tartalomjegyzék 1 Biztonsági tudnivalók 6 1.1 Alkalmazott biztonsági jelölések 6 1.2 Telepítés/konfigurálás

Részletesebben

URL-LEL ADOTT OBJEKTUM LETÖLTÉSE (1) URL-LEL ADOTT OBJEKTUM LETÖLTÉSE

URL-LEL ADOTT OBJEKTUM LETÖLTÉSE (1) URL-LEL ADOTT OBJEKTUM LETÖLTÉSE Programozás III HÁLÓZATKEZELÉS A hálózatkezeléshez használatos java csomag: java. net Hol találkoztunk már vele? Pl.: URL cim = this.getclass().getresource("/zene/valami_zene.wav"); De pl. adott URL-ről

Részletesebben

Objektumorientált programozás C# nyelven

Objektumorientált programozás C# nyelven Objektumorientált programozás C# nyelven 3. rész Tulajdonságok Indexelık Kivételkezelés Hallgatói tájékoztató A jelen bemutatóban található adatok, tudnivalók és információk a számonkérendı anyag vázlatát

Részletesebben

EMTP, EGY ÚJ LEVELEZÕ PROTOKOLL ÉS IMPLEMENTÁCIÓJA

EMTP, EGY ÚJ LEVELEZÕ PROTOKOLL ÉS IMPLEMENTÁCIÓJA EMTP, EGY ÚJ LEVELEZÕ PROTOKOLL ÉS IMPLEMENTÁCIÓJA Iványi Tibor, ivanyit@tigris.klte.hu Csukás Levente, csukasl@fox.klte.hu Kossuth Lajos Tudományegyetem Informatikai és Számító Központ Abstract The well

Részletesebben

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

eseményvezérelt megoldások Vizuális programozás 5. előadás Programozási architektúrák, eseményvezérelt megoldások Vizuális programozás 5. előadás Komponens-alapú programozás Kezdelteges formája, az első komponensek: DLL-ek Black box ujrahasznosítható kód Függvényeket

Részletesebben

Using the CW-Net in a user defined IP network

Using the CW-Net in a user defined IP network Using the CW-Net in a user defined IP network Data transmission and device control through IP platform CW-Net Basically, CableWorld's CW-Net operates in the 10.123.13.xxx IP address range. User Defined

Részletesebben

Java bevezet o Kab odi L aszl o Kab odi L aszl o Java bevezet o

Java bevezet o Kab odi L aszl o Kab odi L aszl o Java bevezet o Miért Java? széleskörben elterjedt Micro Edition - beágyazott rendszerek, régi telefonok Standard Edition - PC, android ezen alapul Enterprise Edition - vállalati programok, web service-ek multiplatform

Részletesebben

Objektumorientált programozás C# nyelven

Objektumorientált programozás C# nyelven Objektumorientált programozás C# nyelven 1. rész Osztályok és objektumok Mezık és metódusok Konstruktor és destruktor Névterek és hatókörök Láthatósági szintek Osztály szintő tagok Beágyazott osztályok

Részletesebben

A HV-PCI6 VIDEODIGITALIZÁLÓ KÁRTYA ÉS ALKALMAZÁSAI (HV-PCI6 Video Digitizing Card and its Applications)

A HV-PCI6 VIDEODIGITALIZÁLÓ KÁRTYA ÉS ALKALMAZÁSAI (HV-PCI6 Video Digitizing Card and its Applications) A HV-PCI6 VIDEODIGITALIZÁLÓ KÁRTYA ÉS ALKALMAZÁSAI (HV-PCI6 Video Digitizing Card and its Applications) Ladányi Zoltán, Ladányi Péter, Máthé József, Nagy Ferenc, Nagy Tamás, Patkó Tamás Hexium Műszaki

Részletesebben

1. mérés - LabView 1

1. mérés - LabView 1 1. mérés - LabView 1 Mérést végezte: Bartha András Mérőtárs: Dobránszky Márk Mérés dátuma: 2015. február 18. Mérés helye: PPKE Információs Technológiai és Bionikai Kar A mérés célja: Ismerkedés a Labview

Részletesebben

C# nyelv alapjai. Krizsán Zoltán 1. Objektumorientált programozás C# alapokon tananyag. Általános Informatikai Tanszék Miskolci Egyetem

C# nyelv alapjai. Krizsán Zoltán 1. Objektumorientált programozás C# alapokon tananyag. Általános Informatikai Tanszék Miskolci Egyetem C# nyelv alapjai Krizsán Zoltán 1 Általános Informatikai Tanszék Miskolci Egyetem Objektumorientált programozás C# alapokon tananyag Tartalom Bevezetés Lokális változó Utasítások Szójáték Why do all real

Részletesebben

FIATAL MŰSZAKIAK TUDOMÁNYOS ÜLÉSSZAKA

FIATAL MŰSZAKIAK TUDOMÁNYOS ÜLÉSSZAKA FIATAL ŰSZAKIAK TUDOÁNYOS ÜLÉSSZAKA Kolozsvár, 1999. március 19-20. Zsákolt áruk palettázását végző rendszer szimulációs kapacitásvizsgálata Kádár Tamás Abstract This essay is based on a research work

Részletesebben

NYOMÁSOS ÖNTÉS KÖZBEN ÉBREDŐ NYOMÁSVISZONYOK MÉRÉTECHNOLÓGIAI TERVEZÉSE DEVELOPMENT OF CAVITY PRESSURE MEASUREMENT FOR HIGH PRESURE DIE CASTING

NYOMÁSOS ÖNTÉS KÖZBEN ÉBREDŐ NYOMÁSVISZONYOK MÉRÉTECHNOLÓGIAI TERVEZÉSE DEVELOPMENT OF CAVITY PRESSURE MEASUREMENT FOR HIGH PRESURE DIE CASTING Anyagmérnöki Tudományok, 39/1 (2016) pp. 82 86. NYOMÁSOS ÖNTÉS KÖZBEN ÉBREDŐ NYOMÁSVISZONYOK MÉRÉTECHNOLÓGIAI TERVEZÉSE DEVELOPMENT OF CAVITY PRESSURE MEASUREMENT FOR HIGH PRESURE DIE CASTING LEDNICZKY

Részletesebben

Széchenyi István Egyetem www.sze.hu/~herno

Széchenyi István Egyetem www.sze.hu/~herno Oldal: 1/6 A feladat során megismerkedünk a C# és a LabVIEW összekapcsolásának egy lehetőségével, pontosabban nagyon egyszerű C#- ban írt kódból fordítunk DLL-t, amit meghívunk LabVIEW-ból. Az eljárás

Részletesebben

Robotot vezérlő szoftverek fejlesztése Developing robot controller softwares

Robotot vezérlő szoftverek fejlesztése Developing robot controller softwares Robotot vezérlő szoftverek fejlesztése Developing robot controller softwares VARGA Máté 1, PÓGÁR István 2, VÉGH János 1 Programtervező informatikus BSc szakos hallgató 2 Programtervező informatikus MSc

Részletesebben

Tartalom. Történeti áttekintés. Történeti áttekintés 2011.03.23. Architektúra DCOM vs CORBA. Szoftvertechnológia

Tartalom. Történeti áttekintés. Történeti áttekintés 2011.03.23. Architektúra DCOM vs CORBA. Szoftvertechnológia Tartalom D Szoftvertechnológia előadás Történeti áttekintés Architektúra D vs CORBA 2 Történeti áttekintés 1987 Dynamic Data Exchange (DDE) Windows 2.0-ban Windows alkalmazások közötti adatcsere Ma is

Részletesebben

Adatbázis alapú rendszerek gyakorlat Adatbázis alapú alkalmazásfejlesztés Java, C# környezetben

Adatbázis alapú rendszerek gyakorlat Adatbázis alapú alkalmazásfejlesztés Java, C# környezetben Adatbázis alapú rendszerek gyakorlat Adatbázis alapú alkalmazásfejlesztés Java, C# környezetben Java GUI készítése, Oracle kapcsolódás JDBC-vel A jelen anyagban egy egyszerűsített megközelítéssel vizsgáljuk

Részletesebben

Objektumorientált programozás C# nyelven III.

Objektumorientált programozás C# nyelven III. Objektumorientált programozás C# nyelven III. Kivételkezelés Tulajdonságok Feladatok Készítette: Miklós Árpád Dr. Kotsis Domokos Hallgatói tájékoztató A jelen bemutatóban található adatok, tudnivalók és

Részletesebben

Bonobo: A GNOME CORBA alapú komponens-megoldása Unixokra

Bonobo: A GNOME CORBA alapú komponens-megoldása Unixokra Bonobo: A GNOME CORBA alapú komponens-megoldása Unixokra Érdi Gergő 2000.09.25. Kivonat A Unix rendszerek alapvető segédprogramjait jellemző tegyél egy dolgot, de azt helyesen, és

Részletesebben

Access adatbázis elérése OLE DB-n keresztül

Access adatbázis elérése OLE DB-n keresztül Access adatbázis elérése OLE DB-n keresztül Készítsünk egy grafikus felülető alkalmazást, ami lehetıvé teszi egy Access adatbázisban tárolt hallgatói adatok (EHA, Név, e-mail cím) lekérdezését (összes

Részletesebben

3. Gyakorlat Ismerkedés a Java nyelvvel

3. Gyakorlat Ismerkedés a Java nyelvvel 3. Gyakorlat Ismerkedés a Java nyelvvel Parancssori argumentumok Minden Java programnak adhatunk indításkor paraméterek, ezeket a program egy tömbben tárolja. public static void main( String[] args ) Az

Részletesebben

AUGMENTED REALITY KITERJESZTETT VALÓSÁG TARTALOMJEGYZÉK. Czéhner Tamás

AUGMENTED REALITY KITERJESZTETT VALÓSÁG TARTALOMJEGYZÉK. Czéhner Tamás AUGMENTED REALITY KITERJESZTETT VALÓSÁG Czéhner Tamás A Kiterjesztett valóság (Augmented Reality röviden AR) napjaink egyik legdinamikusabban fejlődő kutatási területe. Az AR a valódi fizikai környezetet,

Részletesebben

Hello World Servlet. Készítsünk egy szervletet, amellyel összeadhatunk két számot, és meghívásakor üdvözlőszöveget ír a konzolra.

Hello World Servlet. Készítsünk egy szervletet, amellyel összeadhatunk két számot, és meghívásakor üdvözlőszöveget ír a konzolra. Hello World Servlet Készítsünk egy szervletet, amellyel összeadhatunk két számot, és meghívásakor üdvözlőszöveget ír a konzolra. Hozzunk létre egy Dynamic Web projectet File New Other itt a következőket

Részletesebben

P-GRADE fejlesztőkörnyezet és Jini alapú GRID integrálása PVM programok végrehajtásához. Rendszerterv. Sipos Gergely sipos@sztaki.

P-GRADE fejlesztőkörnyezet és Jini alapú GRID integrálása PVM programok végrehajtásához. Rendszerterv. Sipos Gergely sipos@sztaki. P-GRADE fejlesztőkörnyezet és Jini alapú GRID integrálása PVM programok végrehajtásához Rendszerterv Sipos Gergely sipos@sztaki.hu Lovas Róbert rlovas@sztaki.hu MTA SZTAKI, 2003 Tartalomjegyzék 1. Bevezetés...

Részletesebben

A SZEMCSEALAK ALAPJÁN TÖRTÉNŐ SZÉTVÁLASZTÁS JELENTŐSÉGE FÉMTARTALMÚ HULLADÉKOK FELDOLGOZÁSA SORÁN

A SZEMCSEALAK ALAPJÁN TÖRTÉNŐ SZÉTVÁLASZTÁS JELENTŐSÉGE FÉMTARTALMÚ HULLADÉKOK FELDOLGOZÁSA SORÁN Műszaki Földtudományi Közlemények, 83. kötet, 1. szám (2012), pp. 61 70. A SZEMCSEALAK ALAPJÁN TÖRTÉNŐ SZÉTVÁLASZTÁS JELENTŐSÉGE FÉMTARTALMÚ HULLADÉKOK FELDOLGOZÁSA SORÁN SIGNIFICANCE OF SHAPE SEPARATION

Részletesebben

Széchenyi István Szakképző Iskola

Széchenyi István Szakképző Iskola A SZAKKÖZÉPISKOLAI SZAKMACSOPORTOS ALAPOZÓ OKTATÁS EMELT SZINTŰ ISKOLAI PROGRAMJA 11-12. évolyam Érvényes a 2003-2004-es tanévtől felmenő rendszerben Átdolgozva, utolsó módosítás: 2004. április 26. Az

Részletesebben

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.

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. Mérési útmutató A/D konverteres mérés 1. Az A/D átalakítók főbb típusai és rövid leírásuk // Első lépésként tanulmányozzuk a digitális jelfeldolgozás előnyeit és határait. Csoportosítás polaritás szempontjából:

Részletesebben

A WEB programozása - JSP1 dr.gál Tibor. 2010. őszi félév

A WEB programozása - JSP1 dr.gál Tibor. 2010. őszi félév Általános jellemzők JavaServer Pages (JSP) Java utasításokat helyezetünk el a HTML lapon Ezket a Java utasításokat a kiszolgáló végrehajtja Az ügyfél felé generált tartalom: statikus HTML kód + Java utasítások

Részletesebben

Hálózati protokoll tervezése

Hálózati protokoll tervezése Hálózati protokoll tervezése A gyakorlat célja: Hálózati protokoll tervezésének a megvalósítása Elméleti bevezető: Ahhoz, hogy a hálózatba kötött gépek kommunikálni tudjanak egymással, szükség van egy

Részletesebben

Java VI. Egy kis kitérő: az UML. Osztály diagram. Általános Informatikai Tanszék Utolsó módosítás: 2006. 03. 07.

Java VI. Egy kis kitérő: az UML. Osztály diagram. Általános Informatikai Tanszék Utolsó módosítás: 2006. 03. 07. Java VI. Öröklődés Miskolci Egyetem Általános Informatikai Tanszék Utolsó módosítás: 2006. 03. 07. Java VI.: Öröklődés JAVA6 / 1 Egy kis kitérő: az UML UML: Unified Modelling Language Grafikus eszköz objektum

Részletesebben

Proxer 7 Manager szoftver felhasználói leírás

Proxer 7 Manager szoftver felhasználói leírás Proxer 7 Manager szoftver felhasználói leírás A program az induláskor elkezdi keresni az eszközöket. Ha van olyan eszköz, amely virtuális billentyűzetként van beállítva, akkor azokat is kijelzi. Azokkal

Részletesebben

Webes alkalmazások fejlesztése 8. előadás. Webszolgáltatások megvalósítása (ASP.NET WebAPI)

Webes alkalmazások fejlesztése 8. előadás. Webszolgáltatások megvalósítása (ASP.NET WebAPI) Eötvös Loránd Tudományegyetem Informatikai Kar Webes alkalmazások fejlesztése 8. előadás (ASP.NET WebAPI) 2016 Giachetta Roberto groberto@inf.elte.hu http://people.inf.elte.hu/groberto A webszolgáltatás

Részletesebben

Bánsághi Anna anna.bansaghi@mamikon.net

Bánsághi Anna anna.bansaghi@mamikon.net ESEMÉNYVEZÉRELT PROGRAMOZÁS Bánsághi Anna anna.bansaghi@mamikon.net 2. ELŐADÁS - C# ÁTTEKINTÉS - 2 2015 Bánsághi Anna 1 of 64 TEMATIKA I. C# ÁTTEKINTÉS II. WPF III. Modern UI 2015 Bánsághi Anna 2 of 64

Részletesebben

BBS-INFO Kiadó, 2013.

BBS-INFO Kiadó, 2013. BBS-INFO Kiadó, 2013. Bártfai Barnabás, 2013. Minden jog fenntartva! A könyv vagy annak oldalainak másolása, sokszorosítása csak a szerző írásbeli hozzájárulásával történhet. A betűtípus elnevezések, a

Részletesebben

Teleoperáció Robot vezérlése IP-hálózaton

Teleoperáció Robot vezérlése IP-hálózaton Teleoperáció Robot vezérlése IP-hálózaton Simon Csaba Z56IGL Konzulens: dr. Kiss Bálint Önálló laboratórium 1. Beszámoló 2009. MÁJUS. 17. 1. Bevezetés Önálló laboratóriumi feladatom alapgondolata az volt,

Részletesebben

OBJEKTUMORIENTÁLT TERVEZÉS ESETTANULMÁNYOK. 2.1 A feladat

OBJEKTUMORIENTÁLT TERVEZÉS ESETTANULMÁNYOK. 2.1 A feladat 2. Digitális óra 28 OBJEKTUMORIENTÁLT TERVEZÉS ESETTANULMÁNYOK 2.1 A feladat Ebben a fejezetben egy viszonylag egyszerő problémára alkalmazva tekintjük át az OO tervezés modellezési technikáit. A feladat

Részletesebben

117. AA Megoldó Alfréd AA 117.

117. AA Megoldó Alfréd AA 117. Programozás alapjai 2. (inf.) pót-pótzárthelyi 2011.05.26. gyak. hiányzás: kzhpont: MEG123 IB.028/117. NZH:0 PZH:n Minden beadandó megoldását a feladatlapra, a feladat után írja! A megoldások során feltételezheti,

Részletesebben

Intelligens közlekedés: a járműipar és járműirányítás IKT igényei, a VehicleICT projekt. Lengyel László lengyel@aut.bme.hu

Intelligens közlekedés: a járműipar és járműirányítás IKT igényei, a VehicleICT projekt. Lengyel László lengyel@aut.bme.hu Intelligens közlekedés: a járműipar és járműirányítás IKT igényei, a projekt Lengyel László lengyel@aut.bme.hu Az IT ma Havonta 850 millió aktív felhasználó a facebookon Az előadásom alatt 1,400,000 tweet

Részletesebben

DR. SZABÓ LÁSZLÓ 1 DOBOS GÁBOR 2

DR. SZABÓ LÁSZLÓ 1 DOBOS GÁBOR 2 Szolnoki Tudományos Közlemények XIII. Szolnok, 2009. DR. SZABÓ LÁSZLÓ 1 DOBOS GÁBOR 2 JAK-52 OKTATÓ REPÜLŐGÉP EGY KONSTRUKCIÓS PROBLÉMÁJÁNAK MEGOLDÁSI LEHETŐSÉGEI FESTO FLUIDSIM SZOFTVER FELHASZNÁLÁSÁVAL

Részletesebben

A fafeldolgozás energiaszerkezetének vizsgálata és energiafelhasználási összefüggései

A fafeldolgozás energiaszerkezetének vizsgálata és energiafelhasználási összefüggései Pályázati azonosító: FAENERGH (REG-ND-09-2009-0023) A fafeldolgozás energiaszerkezetének vizsgálata és energiafelhasználási összefüggései VARGA Mihály 1, NÉMETH Gábor 1, KOCSIS Zoltán 1, BAKKI-NAGY Imre

Részletesebben

C# osztályok. Krizsán Zoltán

C# osztályok. Krizsán Zoltán C# osztályok Krizsán Zoltán Fogalma Önálló hatáskőrrel rendelkező, absztrakt adattípus, amely több, különböző elemet tartalmazhat. Minden esetben a heap-en jön létre! A programozó hozza létre, de a GC

Részletesebben

Elektromágneses hullámok terjedési sebességének mérése levegőben

Elektromágneses hullámok terjedési sebességének mérése levegőben Elektromágneses hullámok terjedési sebességének mérése levegőben Dombi András Babeş-Bolyai Tudományegyetem, Fizika Kar, Fizika - Informatika szak, 3. évfolyam Témavezetők: Dr. Néda Zoltán egyetemi professzor

Részletesebben

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

Mérési útmutató a Mobil Kommunikáció és Kvantumtechnológiák Laboratórium méréseihez 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

Részletesebben

PARAMÉTERES GÖRBÉK ALKALMAZÁSA VALÓSIDE- JŰ DIGITÁLIS HANGFELDOLGOZÁS SORÁN

PARAMÉTERES GÖRBÉK ALKALMAZÁSA VALÓSIDE- JŰ DIGITÁLIS HANGFELDOLGOZÁS SORÁN Multidiszciplináris tudományok, 3. kötet. (2013) sz. pp. 251-258. PARAMÉTERES GÖRBÉK ALKALMAZÁSA VALÓSIDE- JŰ DIGITÁLIS HANGFELDOLGOZÁS SORÁN Lajos Sándor Mérnöktanár, Miskolci Egyetem,Ábrázoló geometriai

Részletesebben

VHR-23 Regisztráló műszer Felhasználói leírás

VHR-23 Regisztráló műszer Felhasználói leírás VHR-23 Regisztráló műszer Felhasználói leírás TARTALOMJEGYZÉK 1. ÁLTALÁNOS LEÍRÁS... 3 1.1. FELHASZNÁLÁSI TERÜLET... 3 1.2. MÉRT JELLEMZŐK... 3 1.3. BEMENETEK... 4 1.4. TÁPELLÁTÁS... 4 1.5. PROGRAMOZÁS,

Részletesebben

Rétegezett architektúra HTTP. A hálózatfejlesztés motorját a hálózati alkalmazások képezik. TCP/IP protokoll készlet

Rétegezett architektúra HTTP. A hálózatfejlesztés motorját a hálózati alkalmazások képezik. TCP/IP protokoll készlet HTTP Hálózat Rétegezett architektúra felhasználók Alkalmazási Web, e-mail, file transfer,... Szállítási Internet Hálózat-elérési Végponttól végpontig terjedő átvitel, Megbízható átvitel, sorrendbe állítás,

Részletesebben

Java programozási nyelv 10. rész Input/output kezelés

Java programozási nyelv 10. rész Input/output kezelés Java programozási nyelv 10. rész Input/output kezelés Nyugat-Magyarországi Egyetem Faipari Mérnöki Kar Informatikai Intézet Soós Sándor 2005. szeptember A Java programozási nyelv Soós Sándor 1/28 Tartalomjegyzék

Részletesebben

Eseményvezérelt alkalmazások fejlesztése II 12. előadás. Objektumrelációs adatkezelés (ADO.NET) Giachetta Roberto

Eseményvezérelt alkalmazások fejlesztése II 12. előadás. Objektumrelációs adatkezelés (ADO.NET) Giachetta Roberto Eötvös Loránd Tudományegyetem Informatikai Kar Eseményvezérelt alkalmazások fejlesztése II 12. előadás Objektumrelációs adatkezelés (ADO.NET) Giachetta Roberto A jegyzet az ELTE Informatikai Karának 2014.

Részletesebben

Bluetooth mérési útmutató 1. mérés

Bluetooth mérési útmutató 1. mérés Mobil Távközlési és Informatikai Laboratórium BME-HIT Bluetooth mérési útmutató 1. mérés Mérés helye: Híradástechnikai Tanszék Mobil Távközlési és Informatikai Laboratórium I.B.113 Összeállította: Schulcz

Részletesebben

A CAN mint ipari kommunikációs protokoll CAN as industrial communication protocol

A CAN mint ipari kommunikációs protokoll CAN as industrial communication protocol A CAN mint ipari kommunikációs protokoll CAN as industrial communication protocol Attila FODOR 1), Dénes FODOR Dr. 1), Károly Bíró Dr. 2), Loránd Szabó Dr. 2) 1) Pannon Egyetem, H-8200 Veszprém Egyetem

Részletesebben

Konfigurációkezelés (2B)

Konfigurációkezelés (2B) Budapesti Műszaki és Gazdaságtudományi Egyetem Intelligens rendszerfelügyelet (VIMIA370) Konfigurációkezelés (2B) Házi feladat Horányi Gergő (IMJ7FZ) 2011. április 9. 1 Bevezető A házi feladat során egy

Részletesebben

54 481 01 1000 00 00 CAD-CAM

54 481 01 1000 00 00 CAD-CAM Az Országos Képzési Jegyzékről és az Országos Képzési Jegyzékbe történő felvétel és törlés eljárási rendjéről szóló 133/2010. (IV. 22.) Korm. rendelet alapján. Szakképesítés, szakképesítés-elágazás, rész-szakképesítés,

Részletesebben

Java felhasználói felület

Java felhasználói felület Java felhasználói felület Alapfogalmak Komponens alapok Elek Tibor GUI-val kapcsolatos fogalmak Eseményvezérelt program Program futás: - induló állapot (induló UI) megjelenítése, - eseménykezelő végtelen

Részletesebben

Jövő Internet - kutatások az elmélettől az alkalmazásig. Eredménykommunikációs kiadvány

Jövő Internet - kutatások az elmélettől az alkalmazásig. Eredménykommunikációs kiadvány Jövő Internet - kutatások az elmélettől az alkalmazásig Eredménykommunikációs kiadvány Jövő Internet kutatások az elmélettől az alkalmazásig Szerkesztő: Dr. Adamkó Attila, Dr. Almási Béla, Dr. Aszalós

Részletesebben

Programozási nyelvek Java

Programozási nyelvek Java Programozási nyelvek Java Kozsik Tamás előadása alapján Készítette: Nagy Krisztián 13. előadás Throwable Error Exception RuntimeException IOException Saját (általában) Nem ellenörzött kivételek (Unchecked

Részletesebben

CREATE TABLE student ( id int NOT NULL GENERATED ALWAYS AS IDENTITY PRIMARY KEY, name varchar(100) NOT NULL, address varchar(100) NOT NULL )

CREATE TABLE student ( id int NOT NULL GENERATED ALWAYS AS IDENTITY PRIMARY KEY, name varchar(100) NOT NULL, address varchar(100) NOT NULL ) Célok: a Java DB adatbázis-kezelő rendszer használatának ismertetése, adatbázisok használata Java alkalmazásokban - kétrétegű architektúra, egyszerű kliens-szerver architektúra használata hálózati alkalmazásokhoz.

Részletesebben

SZOFTVEREK A SORBANÁLLÁSI ELMÉLET OKTATÁSÁBAN

SZOFTVEREK A SORBANÁLLÁSI ELMÉLET OKTATÁSÁBAN SZOFTVEREK A SORBANÁLLÁSI ELMÉLET OKTATÁSÁBAN Almási Béla, almasi@math.klte.hu Sztrik János, jsztrik@math.klte.hu KLTE Matematikai és Informatikai Intézet Abstract This paper gives a short review on software

Részletesebben

WebSphere Adapters. 6. változat 2. alváltozat. WebSphere Adapter for SAP Software felhasználói kézikönyv 6. változat 2. kiadás

WebSphere Adapters. 6. változat 2. alváltozat. WebSphere Adapter for SAP Software felhasználói kézikönyv 6. változat 2. kiadás WebSphere Adapters 6. változat 2. alváltozat WebSphere Adapter for SAP Software felhasználói kézikönyv 6. változat 2. kiadás Megjegyzés Az információk és a tárgyalt termék használatba vétele előtt feltétlenül

Részletesebben

A JAVA FUTTATÁSAKOR ELŐFORDULÓ HIBA-

A JAVA FUTTATÁSAKOR ELŐFORDULÓ HIBA- A JAVA FUTTATÁSAKOR ELŐFORDULÓ HIBA- ÜZENETEK ÉS AZOK KIKERÜLÉSE Jelen jegyzet az ÉTDR Java platformon futtatható alkalmazásainak betöltésekor esetlegesen előugró hibaüzenetek kikerülése végett készült.

Részletesebben

TECHNIKAI RENDSZEREK ÁLLAPOTLEÍRÁSÁNAK KÉRDÉSEI QUESTIONS REGARDING THE DESCRIPTION OF THE STATE OF TECHNICAL SYSTEMS

TECHNIKAI RENDSZEREK ÁLLAPOTLEÍRÁSÁNAK KÉRDÉSEI QUESTIONS REGARDING THE DESCRIPTION OF THE STATE OF TECHNICAL SYSTEMS űszaki tudományos közlemények 2. XV. űszaki Tudományos Ülésszak, 2014. Kolozsvár, 235 241. http://hdl.handle.net/10598/28544 TCHNIKAI RNDSZRK ÁLLAPOTLÍRÁSÁNAK KÉRDÉSI QUSTIONS RGARDING TH DSCRIPTION OF

Részletesebben

A földi ellenôrzô berendezésekben alkalmazott programozási technikák

A földi ellenôrzô berendezésekben alkalmazott programozási technikák A földi ellenôrzô berendezésekben alkalmazott programozási technikák BALAJTHY KÁLMÁN KFKI Részecske és Magfizikai Kutatóintézet, balajthy@rmki.kfki.hu LIPUSZ CSABA, SÓDOR BÁLINT, SZALAI SÁNDOR SGF Kft.,

Részletesebben

A ROBOTIKA ALKALMAZÁSÁNAK LEHETŐSÉGEI A HAD- ÉS BIZTONSÁGTECHNIKAI MÉRNÖK KÉPZÉSBEN

A ROBOTIKA ALKALMAZÁSÁNAK LEHETŐSÉGEI A HAD- ÉS BIZTONSÁGTECHNIKAI MÉRNÖK KÉPZÉSBEN IV. Évfolyam 1. szám - 2009. március Tibenszkyné Fórika Krisztina Zrínyi Miklós Nemzetvédelmi Egyetem tibenszkyne.forika.krisztina@zmne.hu A ROBOTIKA ALKALMAZÁSÁNAK LEHETŐSÉGEI A HAD- ÉS BIZTONSÁGTECHNIKAI

Részletesebben

Deep Learning a gyakorlatban Python és LUA alapon Felhasználói viselkedés modellezés

Deep Learning a gyakorlatban Python és LUA alapon Felhasználói viselkedés modellezés Gyires-Tóth Bálint Deep Learning a gyakorlatban Python és LUA alapon Felhasználói viselkedés modellezés http://smartlab.tmit.bme.hu Modellezés célja A telefon szenzoradatai alapján egy általános viselkedési

Részletesebben

PHP5 Új generáció (2. rész)

PHP5 Új generáció (2. rész) PHP5 Új generáció (2. rész)...avagy hogyan használjuk okosan az osztályokat és objektumokat PHP 5-ben. Cikksorozatom elõzõ részében képet kaphattunk arról, hogy valójában mik is azok az objektumok, milyen

Részletesebben

FATERMÉSI FOK MEGHATÁROZÁSA AZ EGÉSZÁLLOMÁNY ÁTLAGNÖVEDÉKE ALAPJÁN

FATERMÉSI FOK MEGHATÁROZÁSA AZ EGÉSZÁLLOMÁNY ÁTLAGNÖVEDÉKE ALAPJÁN 4. évfolyam 2. szám 2 0 1 4 101 107. oldal FATERMÉSI FOK MEGHATÁROZÁSA AZ EGÉSZÁLLOMÁNY ÁTLAGNÖVEDÉKE ALAPJÁN Veperdi Gábor Nyugat-magyarországi Egyetem, Erdômérnöki Kar Kivonat A fatermési fok meghatározása

Részletesebben

Tartalomjegyzék 3 TARTALOMJEGYZÉK

Tartalomjegyzék 3 TARTALOMJEGYZÉK Tartalomjegyzék 3 TARTALOMJEGYZÉK Bevezető... 15 1. Alapvető tudnivalók... 17 1.1. A számítógép... 17 1.2. Az adatok tárolása... 18 1.2.1. Lemezegység azonosítás... 21 1.2.2. Állományok azonosítása...

Részletesebben

SEAGUARD. Integrált Biztonság-felügyeleti Rendszer

SEAGUARD. Integrált Biztonság-felügyeleti Rendszer Integrált Biztonság-felügyeleti Rendszer Totális Biztonságtechnika Beléptetõ Rendszer Digitális CCTV Tûzjelzõ Behatolás-védelem Integrált Biztonság-felügyeleti Rendszer Épületek, Épületcsoportok, Országos

Részletesebben

ÓBUDAI EGYETEM Neumann János Informatikai Kar Informatikai Rendszerek Intézet Témavezető: Bringye Zsolt

ÓBUDAI EGYETEM Neumann János Informatikai Kar Informatikai Rendszerek Intézet Témavezető: Bringye Zsolt Témavezető: Bringye Zsolt Diplomamunka/szakdolgozat címe: X64 szerver virtualizáció technológiai kérdéseinek áttekintése, kereskedelmi termékekben történő megvalósításuk elemzése (funkcionalitás, teljesítmény,

Részletesebben

ANTENNARENDSZEREK KUTATÁSA

ANTENNARENDSZEREK KUTATÁSA ANTENNARENDSZEREK KUTATÁSA R12A - ANTENNARENDSZEREK ANTENNÁK HARDVERELEMEK VIZSGÁLATA R1 - A TÉRBELI RÁDIÓFREKVENCIÁS AZONOSÍTÁS LEHETŐSÉGEINEK KUTATÁSA BUDAPEST, 2013 Tartalomjegyzék 1. A DOKUMENTUM POZICIONÁLÁSA...

Részletesebben

1. Legfontosabb tulajdonságok. 2. A lejátszó leírása

1. Legfontosabb tulajdonságok. 2. A lejátszó leírása 1. Legfontosabb tulajdonságok 1,5 colos TFT képernyő MP3, WMA, FLAC, APE audio formátumok támogatása MPEG-4 (AVI) video formátum támogatása Beépített FM rádió A zeneszámok szövegének egyidejű kijelzése

Részletesebben

1. Gyakorlat: Telepítés: Windows Server 2008 R2 Enterprise, Core, Windows 7

1. Gyakorlat: Telepítés: Windows Server 2008 R2 Enterprise, Core, Windows 7 1. Gyakorlat: Telepítés: Windows Server 2008 R2 Enterprise, Core, Windows 7 1.1. Új virtuális gép és Windows Server 2008 R2 Enterprise alap lemez létrehozása 1.2. A differenciális lemezek és a két új virtuális

Részletesebben

Segédanyag: Java alkalmazások gyakorlat

Segédanyag: Java alkalmazások gyakorlat Segédanyag: Java alkalmazások gyakorlat Készítette: Szabó Attila 2009/2010-2 félév, 2. gyakorlat 1 Osztályok és objektumok default, public, protected, private láthatóság a metódusokra és adattagokra (első

Részletesebben

libgdx alapok, első alkalmazás

libgdx alapok, első alkalmazás A libgdx letöltésének, telepítési lépéseinek bemutatása, projekt létrehozása, első libgdx alkalmazás elkészítése képernyőképekkel, magyarázatokkal. libgdx alapok, első alkalmazás Android játékfejlesztés

Részletesebben

Department of Software Engineering

Department of Software Engineering Tavasz 2016 UNIVERSITAS SCIENTIARUM SZEGEDIENSIS UNIVERSITY OF SZEGED Department of Software Engineering Számítógép-hálózatok 2. gyakorlat Wireshark Bordé Sándor S z e g e d i T u d o m á n y e g y e t

Részletesebben

Adatbázis-kezelés ODBC driverrel

Adatbázis-kezelés ODBC driverrel ADATBÁZIS-KEZELÉS ODBC DRIVERREL... 1 ODBC: OPEN DATABASE CONNECTIVITY (NYÍLT ADATBÁZIS KAPCSOLÁS)... 1 AZ ODBC FELÉPÍTÉSE... 2 ADATBÁZIS REGISZTRÁCIÓ... 2 PROJEKT LÉTREHOZÁSA... 3 A GENERÁLT PROJEKT FELÉPÍTÉSE...

Részletesebben

Szakmai program 2015

Szakmai program 2015 2015 Célok és feladatok a szakközépiskolai képzésben A szakközépiskolában folyó nevelés-oktatás továbbépíti, kiszélesíti és elmélyíti az általános iskolai tantárgyi követelményeket. A szakközépiskolában

Részletesebben

DWL-G520 AirPlus Xtreme G 2,4GHz Vezeték nélküli PCI Adapter

DWL-G520 AirPlus Xtreme G 2,4GHz Vezeték nélküli PCI Adapter Ez a termék a következő operációs rendszereket támogatja: Windows XP, Windows 2000, Windows Me, Windows 98SE DWL-G520 AirPlus Xtreme G 2,4GHz Vezeték nélküli PCI Adapter Előfeltételek Legalább az alábbiakkal

Részletesebben

Teszt topológia E1/1 E1/0 SW1 E1/0 E1/0 SW3 SW2. Kuris Ferenc - [HUN] Cisco Blog -

Teszt topológia E1/1 E1/0 SW1 E1/0 E1/0 SW3 SW2. Kuris Ferenc - [HUN] Cisco Blog - VTP Teszt topológia E1/1 E1/0 SW1 E1/0 E1/0 SW2 SW3 2 Alap konfiguráció SW1-2-3 conf t interface e1/0 switchport trunk encapsulation dot1q switchport mode trunk vtp domain CCIE vtp mode transparent vtp

Részletesebben

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

ERserver. iseries. Szolgáltatási minőség ERserver iseries Szolgáltatási minőség ERserver iseries Szolgáltatási minőség Szerzői jog IBM Corporation 2002. Minden jog fenntartva Tartalom Szolgáltatási minőség (QoS)............................ 1

Részletesebben

Térbeli folyamatok elemzése WiFi alapú virtuális szenzor hálózattal

Térbeli folyamatok elemzése WiFi alapú virtuális szenzor hálózattal Térbeli folyamatok elemzése WiFi alapú virtuális szenzor hálózattal Gál Zoltán 1 Balla Tamás 2 Sztrikné Karsai Andrea 3 Kiss Gábor 4 1 IT igazgató, Debreceni Egyetem TEK, ZGal@unideb.hu 2 PhD hallgató,

Részletesebben

Hálózatkezelés Szolgáltatási minőség (QoS)

Hálózatkezelés Szolgáltatási minőség (QoS) System i Hálózatkezelés Szolgáltatási minőség (QoS) 6. verzió 1. kiadás System i Hálózatkezelés Szolgáltatási minőség (QoS) 6. verzió 1. kiadás Megjegyzés Jelen leírás és a tárgyalt termék használatba

Részletesebben

II. év. Adatbázisok és számítógépek programozása

II. év. Adatbázisok és számítógépek programozása II. év Adatbázisok és számítógépek programozása A programozási ismeretek alapfogalmai a) algoritmus b) kódolás c) program a) algoritmus: elemi lépések sorozata, amely a következı tulajdonságokkal rendelkezik:

Részletesebben

Számítógép labor V. Egyszer Web szerver. Dokumentáció. Készítette: Ács Gergely (K4C03M) 2003.04.29

Számítógép labor V. Egyszer Web szerver. Dokumentáció. Készítette: Ács Gergely (K4C03M) 2003.04.29 Számítógép labor V. Egyszer Web szerver Dokumentáció (K4C03M) 2003.04.29 Egyszer Web szerver Feladat: Egyszer Web szerver Feladat sorszám: 17 Leírás: Készítsen egy egyszer Web szervert, amely képes statikus

Részletesebben

Ismétlődő műveletek elvégzésének automatizálása

Ismétlődő műveletek elvégzésének automatizálása Ismétlődő műveletek elvégzésének automatizálása Adatfeldolgozás közben gyakran előfordul, hogy Önnek ugyanazt, az elemi lépésekből álló, összetett műveletsort kell sokszor, esetleg nagyon sokszor és ami

Részletesebben

Objektumorientált programozás C# nyelven

Objektumorientált programozás C# nyelven Objektumorientált programozás C# nyelven 1. rész Osztályok és objektumok Mezık és metódusok Konstruktor és destruktor Láthatósági szintek Névterek és hatókörök Osztály szintő tagok Beágyazott osztályok

Részletesebben

Summer of LabVIEW The Sunny Side of System Design

Summer of LabVIEW The Sunny Side of System Design Summer of LabVIEW The Sunny Side of System Design 30th June - 18th July 1 Előadás célja I. Bemutatkozás II. III. IV. Keretrendszerről általánosan Mi az Szemlélet? ( Model) Az Framework és eszközei I. Hívási

Részletesebben

SZEMLÉLETES RÉSZINFORMÁCIÓK INTEGRÁCIÓS PROBLÉMÁINAK VIZSGÁLATA A VIRTUÁLIS VALÓSÁGOT TEREMTŐ SZIMULÁTOROK ALAPJÁN

SZEMLÉLETES RÉSZINFORMÁCIÓK INTEGRÁCIÓS PROBLÉMÁINAK VIZSGÁLATA A VIRTUÁLIS VALÓSÁGOT TEREMTŐ SZIMULÁTOROK ALAPJÁN Cser Ádám ZMNE KMDI adam.cser@ge.com SZEMLÉLETES RÉSZINFORMÁCIÓK INTEGRÁCIÓS PROBLÉMÁINAK VIZSGÁLATA A VIRTUÁLIS VALÓSÁGOT TEREMTŐ SZIMULÁTOROK ALAPJÁN Absztrakt Az ember környezetét érzékszervein keresztül

Részletesebben

!!" KÉSZÍTK: ERDÉLYI LAJOS KOLLÁR NÁNDOR WD6OGW BUK8Y7

!! KÉSZÍTK: ERDÉLYI LAJOS KOLLÁR NÁNDOR WD6OGW BUK8Y7 !!" KÉSZÍTK: ERDÉLYI LAJOS KOLLÁR NÁNDOR WD6OGW BUK8Y7 #$%#&'( 1. Bevezet... 4 1.1. Feladatkiírás:... 4 1.2. Specifikáció... 4 2. A kidolgozás munkafázisai, szakaszai... 6 3. Fejlesztési irányelvek...

Részletesebben

Villamos jelek mintavételezése, feldolgozása. Mérésadatgyűjtés, jelfeldolgozás 9. előadás

Villamos jelek mintavételezése, feldolgozása. Mérésadatgyűjtés, jelfeldolgozás 9. előadás Villamos jelek mintavételezése, feldolgozása (ellenállás mérés LabVIEW támogatással) Számítógépes mérőrendszerek Mérésadatgyűjtés, jelfeldolgozás 9. előadás Dr. Iványi Miklósné, egyetemi tanár Schiffer

Részletesebben

Kivételek kezelése (exception handling) Hibakezelés old style. Kivételkezelés

Kivételek kezelése (exception handling) Hibakezelés old style. Kivételkezelés Kivételek kezelése (exception handling) Hibakezelés old style class Szamolo { void szamol( String s, int i ) { int d; if (i!= 0) d = (i+1)/i; else if (s!= null) d = s.length(); else if (i > 10) // applikációs

Részletesebben

KÜLSÕ CÉGEK TÁMOGATÁSÁVAL MEGVALÓSÍTOTT, 4GL ÉS CASE ESZKÖZÖKRE ALAPOZOTT KÉPZÉS A SZÉCHENYI ISTVÁN FÕISKOLÁN

KÜLSÕ CÉGEK TÁMOGATÁSÁVAL MEGVALÓSÍTOTT, 4GL ÉS CASE ESZKÖZÖKRE ALAPOZOTT KÉPZÉS A SZÉCHENYI ISTVÁN FÕISKOLÁN KÜLSÕ CÉGEK TÁMOGATÁSÁVAL MEGVALÓSÍTOTT, 4GL ÉS CASE ESZKÖZÖKRE ALAPOZOTT KÉPZÉS A SZÉCHENYI ISTVÁN FÕISKOLÁN dr. Kovács János, kovacsj@rs1.szif.hu Hartványi Tamás, hartvany@rs1.szif.hu Széchenyi István

Részletesebben

Bevezetés a Symbian operációs rendszerbe

Bevezetés a Symbian operációs rendszerbe 1. FEJEZET Bevezetés a Symbian operációs rendszerbe Napjainkban a mobilkommunikáció szerepe és piaca átalakulóban van. A pusztán távközlésre kialakított eszközből a technológiai fejlődés, a felhasználói

Részletesebben

KERÉKPÁR MOZGÁSI JELLEMZÔINEK MEGHATÁROZÁSA ISKOLAI PROJEKTFELADATBAN

KERÉKPÁR MOZGÁSI JELLEMZÔINEK MEGHATÁROZÁSA ISKOLAI PROJEKTFELADATBAN KERÉKPÁR MOZGÁSI JELLEMZÔINEK MEGHATÁROZÁSA ISKOLAI PROJEKTFELADATBAN Beke Tamás Nagyasszonyunk Katolikus Ált. Isk. és Gimn., Kalocsa A tanév végén azt a feladatot adtam a 9. évfolyamon, hogy a tanulók

Részletesebben

Java és web programozás

Java és web programozás Budapesti M szaki Egyetem 2013. szeptember 11. Jó hír Jó hír Java lesz! Tárgyismertet Elérhet ségek: Kovács Kristóf: kkovacs@math.bme.hu Rimay Zoé: zrimay@math.bme.hu, Követelmények: Év végi beadandó (facebook):

Részletesebben

Book Template Title. Author Last Name, Author First Name

Book Template Title. Author Last Name, Author First Name Book Template Title Author Last Name, Author First Name Book Template Title Author Last Name, Author First Name I. rész - Szoftver technológia 1. fejezet - Esettanulmány Bevezetés Az alkalmazás fejlesztésére

Részletesebben

Számítógépes hálózatok

Számítógépes hálózatok Számítógépes hálózatok 3.gyakorlat Harmadik gyakorlat forgalomszűrés, DNS, HTTP forgalom elemzés Laki Sándor Hálózati forgalom elemzése 1/3 Különböző célok miatt szükség lehet a hálózati forgalom megfigyelésére

Részletesebben

Alap számológép alkalmazás

Alap számológép alkalmazás Első Androidos programom - Egyszerű műveleteket használó számológép elkészítése Android Developer Tools (ADT) segítségével Alap számológép alkalmazás Android programfejlesztés Tompos Szabolcs Tartalom

Részletesebben

Cloud computing. Cloud computing. Dr. Bakonyi Péter.

Cloud computing. Cloud computing. Dr. Bakonyi Péter. Cloud computing Cloud computing Dr. Bakonyi Péter. 1/24/2011 1/24/2011 Cloud computing 2 Cloud definició A cloud vagy felhő egy platform vagy infrastruktúra Az alkalmazások és szolgáltatások végrehajtására

Részletesebben

VoIP (Voice over IP)

VoIP (Voice over IP) VoIP (Voice over IP) Analog Telephone Adapter (ATA) Public Switched Telephone Network (PSTN) Private Branch exchang (PBX) Interactive Voice Response (IVR) Helyi hálózatok tervezése és üzemeltetése 1 Történelem

Részletesebben

TEE - Adásvételi szerződés keretében informatikai kutatási eszközök és szoftverek beszerzése a Pázmány Péter Katolikus Egyetem számára

TEE - Adásvételi szerződés keretében informatikai kutatási eszközök és szoftverek beszerzése a Pázmány Péter Katolikus Egyetem számára TEE - Adásvételi szerződés keretében informatikai kutatási eszközök és szoftverek beszerzése a Pázmány Péter Katolikus Egyetem számára Közbeszerzési Értesítő száma: 2015/146 Beszerzés tárgya: Árubeszerzés

Részletesebben