GSM alapú helymeghatározás alapadatállományának tömörítése Májer Julianna Pázmány Péter Katolikus Egyetem Információs Technológiai Kar Konzulensek: Tihanyi Attila, laborvezető Dr. Takács György, egyetemi docens
2010.
Alulírott Májer Julianna, a Pázmány Péter Katolikus Egyetem Információs Technológiai Karának hallgatója kijelentem, hogy ezt a diplomatervet meg nem engedett segítség nélkül, saját magam készítettem, és a diplomamunkában csak a megadott forrásokat használtam fel. Minden olyan részt, melyet szó szerint, vagy azonos értelemben, de átfogalmazva más forrásból átvettem, egyértelműen a forrás megadásával megjelöltem. Ezt a Diplomamunkát más szakon még nem nyújtottam be. 2010. május 17.
…………………………. Aláírás
Tartalomjegyzék Abstract (Tartalmi kivonat) ........................................................................................................ 6 Tartalmi kivonat ......................................................................................................................... 7 1. Bevezetés (a feladat értelmezése, a tervezés célja, a feladat indokoltsága, a diplomaterv felépítésének rövid összefoglalása) ............................................................................................ 7 2.
Feladatkiírás (részletes leírás) ............................................................................................ 8
3.
Műholdas helymeghatározás .............................................................................................. 9
4.
3.1.
GPS (Global Positioning System) .............................................................................. 9
3.2.
A-GPS (Assisted GPS)[Helymeghatározás mobillal, T.GY.] .................................. 10
Helymeghatározás mobiltelefonnal .................................................................................. 10 4.1. GSM hálózat felépítése.................................................................................................. 10 4.2. Bázisállomás alapú helymeghatározás (hiba leírása, =elhelyezkedés).......................... 11 4.2.1. Leszármaztatott autonóm helymeghatározás (DR-Dead Reckoning)..................... 12 4.2.2. Helymeghatározás bázisállomás-azonosítóik alapján (Cell-ID, Signal Signature) 12 4.2.3. Helymeghatározás ívmetszéssel (Trilateration)...................................................... 12 4.2.4. Helymeghatározás a háromszögelés elvével (AOA – Angle of Arrival)................ 14 4.2.5. Helymeghatározás elve az észlelt időkülönbség mérése alapján (OTD – Observed Time Difference) .............................................................................................................. 14 6. Egyetemi módszer ............................................................................................................ 15 6.1. GSM adatokat tartalmazó adatbázis .......................................................................... 16 6.2. Statisztikus helymeghatározási modell...................................................................... 18 6.3.
Modell....................................................................................................................... 21
6.4.
PDCA ciklus modell................................................................................................. 21
6.5.
A pontosságbecslési eljárás megvalósítása............................................................... 23
6.5.1.
ODBC interfész ................................................................................................ 23
6.5.2.
Adatok lekérdezése........................................................................................... 26
6.5.3.
Adatok rendezése, átszámolása ........................................................................ 27
6.5.4.
GSM adatok ábrázolása .................................................................................... 30
6.5.5.
A pontosságbecslés tesztelése adatokkal .......................................................... 36
7.
Adatbázis tömörítése lehetősége ...................................................................................... 44
8.
Értékelés, kritikai elemzés, továbbfejlesztési lehetőségek ............................................... 45
9.
Összefoglalás.................................................................................................................... 46
10.
Köszönetnyilvánítás ..................................................................................................... 46
11.
Irodalomjegyzék (vázlatos) .......................................................................................... 47
Abstract (Tartalmi kivonat)
Tartalmi kivonat Ez a dolgozat bemutatja a világon jelenleg használt helyzet meghatározási módszereket, és ezek előnyeit, hátrányait, és pontosságát. A GPS rendszer használatával érhetjük el a legpontosabb eredményeket. A folyamatosan rádiójelet sugárzó műholdak segítségével határozza meg a pontos földrajzi koordinátát. A GPS rendszeren túlmenően lehetőség van földi rádióadók vételi körzetének meghatárzásával földfelszíini pozisó meghatározására. Amennyiben kis területet besugározni képes rádiós rendszer jeleinek terjedésére alapozzuk ezt a módszert nagy pontosságú helymeghatározási rendszerépíthetünk. A rádiótelefon cella rendszere (GSM) éppen ilyen tulajdonságokkal rendelkezik. A bázisállomás alapú helymeghatározási módszert a GSM szolgáltatók által tudjuk csak igénybe venni. Ehhez szükséges a bázisállomások helyének pontos ismerete, ezeknek csak a szolgáltatók vannak birtokában. A dolgozat bemutatja továbbá az új, egyetemi módszert, a statisztikus helymeghatározási módszert. Az ilyen típusú helymeghatározáshoz nincs szükség GPS kapcsolatra, így ennek hátrányait kiküszöböli, és az adatok, amelyeket felhasznál, minden mobilkészülék rendelkezésére áll, így nem tartozik a GSM szolgáltatók felé fizetési kötelezettséggel. A felhasznált adatok a bázisállomások azonosítására szolgáló adatok, és a bázisállomások vételi szint eloszlása. Bemutatásra kerülnek a modell megvalósításának lépései, és az elkészült eljárás használata, amelynek segítségével a modell használható helymeghatározásra és az eredmények elemzésére. Az eredmények elemzésével lehetőség nyílik összehasonlítani a dolgozatban bemutatott és jelenleg használt többi helymeghatározási módszerrel. Jelenleg a helymeghatározáshoz szükséges adatokat egy adatbázisban tároljuk. A későbbi tényleges helymeghatározáskor, amikor egy mobilkészülék segítségével szeretnénk a helyzetünket meghatározni, egy olyan adatbázisra lenne szükség, amely minimális mérettel rendelkezik, csak a helymeghatározáshoz szükséges legkevesebb adatot tárolja. Ezáltal a mobilkészüléken kisebb helyet foglalna, illetve ha egy szerveren tárolnánk, a letöltést gyorsítaná meg.
1.
Bevezetés (a feladat értelmezése, a tervezés célja, a feladat
indokoltsága, a diplomaterv felépítésének rövid összefoglalása) A tervezés célja, hogy a statisztikus helymeghatározási módszer pontosságát megismerjük, ezáltal összehasonlíthassuk a jelenleg használt módszerekkel és egy olyan adatbázis
létrehozása, amelyben csak a helymeghatározáshoz szükséges adatokat tároljuk, a jelenlegi adatbázis tömörített változta. Ezt az adatbázist a mobilkészülék egy szerveren keresztül elérheti, vagy magán a készüléken tárolnánk. A dolgozat első felében bemutatom a jelenleg használt helymeghatározó módszereket. Az egyik típus a műholdas helymeghatározás. A GPS rendszer a műholdak segítségével határozza meg a földrajzi koordinátákat. Az A-GPS, a mobiltelefonnal segített GPS, egy szerver segítségével, amely ismeri a telefon által kapott és küldött adatokat, segíti a helymeghatározást. A másik típus a GSM alapú helymeghatározás. Ezek a bázisállomások elhelyezkedése alapján határozzák meg a helyzetünket. A GSM alapú helymeghatározás megértéshez bemutatom a GSM rendszer felépítését. A jelenleg használt helyzet meghatározó módszerek bemutatása után ismertetem az egyetemi módszert. Ez a statisztikus helymeghatározási módszer. A mobiltelefon által kibocsátott adatok alapján határozza meg a helyzetet. Az ehhez szükséges adatokat a GSM adatbázisban tároljuk, ennek tulajdonságait és felépítését részletesen ismertetem. Bemutatom a módszer egyes lépéseit. Bemutatom modellként, milyen bemeneti adatok és paraméter szükségesek, hogy meghatározza a pontos helyzetünket. A modell a PDCA ciklus modellhez illeszthető, a két modell közti kapcsolat is bemutatásra kerül. A következő fejezetben a statisztikus helymeghatározási módszer megvalósítása, az adatbázishoz való csatlakozás ODBC kapcsolaton keresztül, a szükséges adatok letöltése, elrendezése, a mértékegységek átszámolása,
és
a
módszer
megvalósítása.
Az
algoritmus
megvalósítása
után a
helymeghatározás elemzéséhez készült ábrákat bemutatom be részletesen, melyiken mit láthatunk, majd az adatbázisban található mérési adatokkal tesztelem az eljárást. A következő fejezetek az adatbázis tömörítési lehetőségét vizsgálják, végül a módszer eredményeinek értékelése, és az összefoglalás következik.
2.
Feladatkiírás (részletes leírás)
A világon jelenleg használt helyzet meghatározó módszerek áttekintése. Az egyik típus a GPS rendszer, amely a műholdak segítségével határozza meg a pontos földrajzi koordinátát. A másik típus a GSM alapú helymeghatározás, és ezen belül a bázisállomások elhelyezkedésén alapú helyzet meghatározási módszerek. Az új, egyetemi módszer a statisztikus helymeghatározási módszer. Ez a bázisállomások azonosítására szolgáló adatokat és a bázisállomások vételi szint karakterisztikáit használja fel a helymeghatározásra. Az adatokat egy erre a célra létrehozott adatbázisban tároljuk. A feladat, a modell megismerés és megvalósítása egy eljárásban. Az eljárás segítségével lehetőség nyílik a helymeghatározásra,
az eredmények megtekintésére és elemzésére, amihez segítséget nyújtanak szemléletes ábrák, amelyek a helymeghatározás során felhasznált adatokat jelenítik meg. A modell pontosságelemzés után összehasonlítható válik az eredménye a jelenleg használt többi módszerrel. A pontosságbecslés alapján az adatbázis tömörítésére nyílna lehetőség. A tömörített adatbázis adataival végzett helymeghatározás eredményei pontosságának is meg kell felelnie az eredeti adatbázis pontosságával.
3.
Műholdas helymeghatározás
3.1.
GPS (Global Positioning System)
A jelenleg használt GPS rendszert az Egyesült Államok kormánya fejlesztette ki, NAVSTAR GPS néven. Több ország is megvalósította, vagy tervezi a megvalósítását hasonló rendszernek, az amerikaiaktól való függőség megszüntetésére. Az Európai Unió a Galileo projekt megvalósításával, Oroszország a GLONASSZ rendszer segítségével, továbbá Kína és India is fejleszti a saját navigációs rendszerét. A GPS rendszer földi vezérlőrendszerekből, vevőkészülékekből és Föld körüli pályákra állított műholdakból áll. Az Egyesült Államok az első műholdat 1978-ban állította pályára. A végleges rendszerben 24 található. Ezek szabályos pályán keringenek a Föld körül. A helymeghatározás a távolságmérésen alapszik. A számításhoz szükséges az idő, és a műholdak helyzetének pontos ismerete. Előbbiek jeleket küldenek a vevőkészülékek felé, amelyek adataiból és az üzenet megérkezésének idejéből kiszámítható a készülék pontos helyzete. A műholdakban atomórák találhatóak, az idő meghatározásához, melyek egymáshoz szinkronizáltak. A GPS rendszer által történő helymeghatározás pontosságát több tényező is befolyásolja. Többek között a több utas terjedés és a GPS vevő környezete. A műholdak pályája aszerint van meghatározva, hogy a Föld bármely pontjáról legalább négy műhold látható legyen. A pontos helymeghatározáshoz elég 3 objektum jelét venni, ha a tengerszint feletti magasságra nincs szükség. A GPS rendszer egyik nagy hátránya, hogy például nagyvárosokban magas épületek között, ahol kevés műholdat lát a készülék és a jel többszörösen visszaverődve érkezik meg, a helymeghatározás pontatlanná válhat, illetve bekapcsolásnál hosszabb ideig is eltarthat, amíg a vevőkészülék a rendszerrel összekapcsolódik. Ezekből következően alagútban és épületen belül ez a típusú helymeghatározás nem használható.
3.2.
A-GPS (Assisted GPS)[Helymeghatározás mobillal, T.GY.]
A mobiltelefonnal segített GPS a hagyományos GPS rendszer hibáinak kiküszöbölését segíti elő. Az A-GPS rendszerben található egy Assistance Server (AS), amely elősegíti a pontosabb helymeghatározást. −
A szerver jó közelítéssel tudja a telefon helyzetét a cella azonosítója alapján.
−
Az Assistance Server-nek vannak jó vételi helyen elhelyezett vevői, az ott vett adatokból pontosan tudja a GPS holdak aktuális pozícióját, ezt le tudja küldeni a mobiltelefonnak, amely ezek ismeretében könnyebben, gyorsan kapcsolódhat.
−
A pontosan bemért helyzetű mérővevői által vett jelek alapján hibakorrekcióhoz is tud adatokat szolgáltatni.
−
A szerverben hatalmas számítási erőforrások állnak rendelkezésre, így pontosabban és gyorsabban elvégzi a helymeghatározáshoz és hibakorrekcióhoz szükséges számításokat, mint a mobiltelefon, ezzel a telepét is kíméli. A kiszámolt pontos adatokat pedig elküldi a mobiltelefonnak.
4.
Helymeghatározás mobiltelefonnal
A GSM (Global System for Mobile Communications) hálózatot 1990-ben vezették be. Azóta minden évben a nyilvántartott mobil előfizetők száma egyre nő, tulajdonosaik a mobil eszközeiket körülbelül kétévente lecserélik szebbre és okosabbra. A mai mobiltelefonok nagy teljesítményűek és a mobilszolgáltatók számos új szolgáltatásra adnak lehetőséget. A TMobile a belföldi és külföldi telefonáláson és az üzenetküldésen kívül további szolgáltatásokat is nyújt. Lehetőség van havidíj ellenében a mobilunkon internetezni, tévét nézni, számos vásárlást is elintézhetünk a mobilunk segítségével. Akár lottót szeretnénk feladni, buszjegyet, állatkerti belépőt, mozijegyet vásárolni, esetleg parkolást fizetni, ezeket mind-mind könnyen elintézhetjük a mobilunk segítségével. A T-Mobile egyik szolgáltatása üzleti ügyfeleknek a Flotta Helymeghatározó szolgáltatás, amellyel a mobiltelefon helyét egy elektronikus térképen lehet megjeleníteni. Ezt a szolgáltatást csak vállalati előfizetők rendelhetik meg. (még Pannon, Vodafone helymeghatározási lehetőség) Vásárolhatóak mobil készülékek, amelyek GPS navigációra képesek, nagyobb havidíjért cserében. A szolgáltatók általi helymeghatározás a GSM hálózat adottságainak kihasználásán alapszik.
4.1. GSM hálózat felépítése Magyarországon a három mobil szolgáltató (T-Mobile, Pannon, Vodafone) egymástól független GSM hálózatokat építettek ki. A mobil hálózatok bázisállomás rendszerekből (BSS,
Base Station System) épülnek fel, található bennük bázisállomás vezérlő (BSC, Base Station Controller), amely több bázisállomás működéséért felelős, és bázisállomás (BST, Base Station Transceiver). 2009 augusztusában 11 836 885 mobil előfizetőt regisztráltak. Magyarország népessége 2009. január 1-jén 10 030 975 fő volt. Országunk minden lakosára jut legalább egy mobiltelefon készülék. A mobiltelefonok számának növekedésével a szolgáltatóknak egyre több és nagyobb kapacitású bázisállomásokat kell építeniük, hogy a megnövekedett igényeket ki tudják szolgálni. A telefon technikában már régóta kötelezően betartandó szabványnak tekintik a 3GPP dokumentumokat. Ezek szerint működnek a szolgáltató és a felhasználó készülékei, berendezései. A 3GPP dokumentumokban található szabványok betartásával a szolgáltatók és a készülékek gyártói együtt tudnak működni. A GSM készülékek a 900 MHz, 1800 MHz és 1900 MHz sávokat használják. Ezeket a frekvenciasávokat kell elosztani a cellák között úgy, hogy egymás jelét ne zavarják. Egy cella egy bázisállomás által besugárzott területet reprezentál. Elvileg a cella egy hatszög alakú terület, közepén a bázisállomással, amely egyenletesen sugároz minden irányban. Az egyre növekvő forgalom kiszolgálása érdekében a cellák alakja és mérete eltér egymástól a gyakorlatban. Léteznek cellák, melyek átfedik egymást. A bázisállomások pedig nem csak körsugárzók lehetnek, hanem kettő, vagy akár három irányban is sugározhatnak. A bázisállomások tervezéshez két modellt használnak fel. Városokban, ahol nagyobb a forgalom, kisebb méretű cellákat, ez akár pár száz méter is lehet, hoznak létre az OkumuraHata modellt alkalmazva. Falvakban, ritkán lakott területen a cellaméret egészen nagy, akár több kilométeres kiterjedésű is lehet, ezeken a helyen az Ikagami-Walfish modellt használják. A szomszédos bázisállomások más-más frekvenciát használnak, hogy egymást jelét ne zavarják. Hatósugarukat a teljesítményükkel szabályozzák, így lehetséges a frekvenciákat minél közelebbi cellákban újrafelhasználni.
4.2. Bázisállomás alapú helymeghatározás (hiba leírása, =elhelyezkedés) A mobiltelefonnal történő módszerek egyike, amikor a bázisállomás segítségével határozzák meg a mobiltelefon helyzetét. Az ilyen típusú módszerhez ismerni kell a bázisállomások pontos földrajzi koordinátáit, amelyet csak a telepítők, vagy a szolgáltatók (T-Mobile, Pannon, Vodafone) ismernek, mindegyik a saját hálózatában található adótornyokat. A következőkben bemutatom a bázisállomás alapú helymeghatározási módszereket.
4.2.1. Leszármaztatott autonóm helymeghatározás (DR-Dead Reckoning) Feltesszük, hogy a vándorló objektum (mobiltelefon) egy ismert helyről indul, amelyet például egy GPS módszerrel határozott meg. Az ismert kiinduló ponttól kezdve folyamatosan méri a mobiltelefon a pillanatnyi gyorsulását, annak nagyságát és irányát. A mozgás pillanatnyi gyorsulásából kiintegrálható az eltelt idő alapján az aktuális helyzet. Ehhez hasonlóan meghatározhatóak az újabb és újabb helyzetek az idő múlásával. A mérési hibák halmozódnak ismétlődő továbbszámolásoknál. A módszer előnye, hogy a mobiltelefon akkor is képes tovább mérni és számolni a helyzetét, amikor kapcsolata megszakadt a GPS vagy mobil hálózattal. Az újabb telefonok rendelkezhetnek gyorsulásmérővel is, amely érzékeli a gyorsulás nagyságát és irányát, pontos óra található bennük, elvileg képesek ilyen elvű helymeghatározásra. 4.2.2. Helymeghatározás bázisállomás-azonosítóik alapján (Cell-ID, Signal Signature) A bázisállomások azonosítóját (Cell-ID) az adó kisugározza és a mobiltelefon (vevő) veszi és felhasználja működése során. A cellaazonosítóhoz a hálózatüzemeltető (további paramétereket figyelembe véve, országkódot, hálózat kódot, a terület kódját) egy olyan földrajzi koordinátát tud hozzá rendelni, amely az bázisállomás által besugárzott terület, cella közepét jelöli. Ez a terület nem feltétlenül egyezik meg a bázisállomás helyével. Ezen módszer esetén a helyváltoztatás során vett cellaazonosítók követésével tovább finomítható a helymeghatározás. A mozgás irányát, és sebességét is bele tudja kalkulálni a rendszer és ezzel a cellaméretnél pontosabb becslés adható a pillanatnyi helyzetre. Nagyvárosokban, ahol a cellaméret csak pár száz méter, a helymeghatározás nagyobb pontosságot érhet el. 4.2.3. Helymeghatározás ívmetszéssel (Trilateration) Ha meg tudjuk határozni tényleges távolságunkat két bázisállomástól, helyzetünk két körív mentén adódik, amelyek két pontban metszik egymást, egy harmadik bázisállomástól meghatározva távolságunkat, kiválasztjuk a megfelelő pontot, amelyen tartózkodunk (1. ábra). A bázisállomásoktól való távolságunkat kétféle elv alapján határozhatjuk meg.
1. ábra Helymeghatározás ívmetszéssel •
Távolságmérés a vett jel szintje alapján
A vevő által vett rádiófrekvenciás jel szintje függ az adó és a vevő távolságától, az adó teljesítményétől, az adóantenna nyereségétől, iránykarakterisztikától, a vevőantenna nyereségétől és a terjedést befolyásoló tényezőktől. Városi környezetben az Okumura-Hata modellt használjuk a terjedési veszteség kiszámítására. A modell segítségével kiszámítható az adó és vevő közötti távolság, a számításhoz szükséges adatok mind ismertek, vagy kiszámíthatóak. Az Okumura-Hata modellt a terjedési veszteség kiszámítására használják (1. képlet). Szereplő konstansok PL, a terjedési veszteség dB-ben, f, a frekvencia, d, az adó és vevő közötti távolság, ht az adóantenna magassága méterben, hr a vevőantenna magassága méterben, és
c(hr), korrekciós tényező, melynek értéke nagyvárosban, városban és elővárosban különböző értékű.
1. képlet Okumura-Hata modell terjedési vesztesége
•
Távolságmérés a vett jel késleltetése alapján (Time of Arrival, TOA)
Ha az adó és a vevő szinkronizált, a vett jel késleltetése az adó és a vevő távolságától függ (a terjedési sebesség ismert). A mobilrendszerekben nincs akadálya annak, hogy a bázisállomás utasítására a mobilkészülék felküldjön neki egy jelcsomagot, amelyet vesz a bázisállomás és a beérkezési idő alapján kiszámolható a távolság. Több bázisállomástól mért távolság esetén meghatározható a pontos helyzetünk. 4.2.4. Helymeghatározás a háromszögelés elvével (AOA – Angle of Arrival) A különböző bázisállomásokon megmérik, hogy a keresett mobilkészülék jele milyen irányból érkezik. Két mérésből elvileg már meghatározható, a háromszög két szögének (α1 és α2) és egy oldalának (d) ismerete alapján, de további mérésekkel a hiba mértéke csökkenthető. Ilyen típusú helymeghatározást alkalmaznak a kalózadók beméréshez is. A 2. ábra szemlélteti az ilyen típusú helymeghatározást.
2. ábra Helymeghatározás a háromszögelés elvével 4.2.5. Helymeghatározás elve az észlelt időkülönbség mérése alapján (OTD – Observed Time Difference) Tegyük fel, hogy a bázisállomások órái szinkronizáltan működnek. A mobilkészülék egyszerre küld több bázisállomásnak egy adott jelsorozatot. Ezek a sorozatok távolságtól függő időkéséssel érkeznek meg. A mobiltelefon saját pontos, de nem szinkronizált órája alapján ugyanazt a jelsorozatot generálva korrelációs módszerrel, kellő pontossággal meg tudja mérni, hogy a különböző bázisállomásokról elküldött jelsorozatot milyen időeltéréssel veszi. A bázisállomások földrajzi koordinátáit ismeri a hálózatüzemeltető. Azok a pontok, amelyeknek távolságkülönbsége egy bázisállomás-pártól állandó, egy hiperbola mentén helyezkednek el. A készülék a hiperbolák metszéspontjában található (3. ábra). Az időkülönbség fordított irányú terjedés alapján is meghatározható. Ebben az esetben a mobilkészülék által kisugárzott jelet a
különböző bázisállomások különböző időpontokban veszik, ami alapján a rendszer kiszámolja a mobiltelefon helyzetét. A módszer neve TDOA (Time Difference of Arrival).
3. ábra Helymeghatározás az észlelt időkülönbség alapján
6. Egyetemi módszer Az 4.2. fejezetben bemutatott módszerekkel történő helymeghatározás pontosságának egyik fontos befolyásoló tényezője a bázisállomások geometriai elhelyezkedése. Vannak elrendezések, amelyek esetén a helymeghatározás jelentősen pontatlanná válhat. Az egyetemen kidolgozott helymeghatározási módszer a következő tényezőkön alapszik. A bekapcsolt mobiltelefon a hálózathoz csatlakozik. Ez szükséges ahhoz, hogy a mobilunkkal hívást kezdeményezhessünk és elérhessenek bennünket. A mobiltelefon mindig ismeri a környezetét, a bázisállomások az azonosítóikat a környezetükben levő készülékek tudomására hozzák a jelzési csatornánk keresztül. Egyértelműen azonosíthatóak az azonosítóik alapján. A mobilkészülék egy belső algoritmus alapján saját maga dönt a cellaválasztásról. Ez az algoritmus a 3GPP TS 05.08-ban leírt rádióterjedési viszonyoknak megfelelően választ. Az optimális vételi szinttel rendelkező bázisállomáshoz kapcsolódik, ha gyengül a jel, a belső algoritmusa alapján keres egy erősebb vételi szinttel foghatót. A bázisállomások azonosítóinak ismerete szükséges még egyik cellából a másikba való átlépéshez, tehát telefonálás közbeni mozgáshoz. Ezt a folyamatot handovernek nevezik. 2009 augusztusában 11 836 885 mobil előfizetőt regisztráltak. Magyarország népessége 2009. január 1-jén 10 030 975 fő volt nyilvántartva. Az egyre több mobil előfizető miatt a
szolgáltatóknak a bázisállomásaik számát és kapacitásukat is növelniük kell. Városokban, nagyvárosokban az adótornyok száma nő, egy-egy bázisállomás által lefedett terület különböző nagyságú, alakú és különböző teljesítménnyel sugároznak, amely befolyásolja a mobillal érzékelhető vételi szintjüket. Az egy-egy földrajzi koordinátát a bázisállomások és vételi szintjeik sokszínűsége jellemez, amely alapján lehetséges ilyen típusú helymeghatározás kellő pontossággal. Az egyetem keretein belül zajló GSM helymeghatározási projekt résztvevői kifejlesztettek egy rendszert, amely a hálózat pillanatnyi sugárzási karakterisztikáját használja fel. A GPS rendszer üzemeltetési bizonytalansága (Egyesült Államok tulajdona), és a készülékek magas ára nem okozna problémát. A GSM hálózat segítségével történő helymeghatározáskor a szolgáltatást igénybe vevőknek nem jelentene többlet költséget. Ez a módszer a szolgáltatók igénybevétele nélkül megvalósítható. 6.1. GSM adatokat tartalmazó adatbázis A jelen dolgozatban bemutatásra kerülő és a további helymeghatározó algoritmus kifejlesztése, megvalósítása és tesztelése szempontjából szükséges adatok gyűjtése. Ezeket az adatokat egy megfelelően tervezett adatbázisban kell tárolni, hogy a későbbiekben az adatokat felhasználhassuk. Az adatok összegyűjtésére egy olyan készüléket használnak, amely az egyetemi projekt keretein belül készült. A készülék kis fogyasztású kisméretű, ami által nagyobb méréseket is el lehet végezni. Egy GPS és egy GSM modul is található benne, a GPS és GSM információk vételének érdekében. Az adatgyűjtővel választható a hálózat, amelyen a mérést szeretnék végezni. A GPS vevőtől másodpercenként érkezik NMEA üzenet, amelyben a készülék megkapja a különböző adatokat a mérési pontról. Ezek az adatok többek között a mérés időpontja, a földrajzi szélesség és hosszúság, a földfelszín feletti magasság, látott műholdak száma, érzékelt cellák azonosítói és vételi szintjeik. A megérkezett információkat feldolgozzák és egy SD kártyán tárolják. Egy MySql típusú adatbázisban tárolják az adatgyűjtő eszközzel mért adatokat. Az átláthatóság, a későbbi könnyebb módosíthatóság érdekében az információkat külön táblákban tárolják. Ezek egymással kapcsolatban állnak, gyorsan és egyszerűen elérhetőek és lekérdezhetőek az ismert szabványos SQL lekérdezés segítségével. Az adatbázis szerkezete a 4. ábrán látható.
4. ábra GSM adatbázis szerkezete A GSM nevű adatbázisban összesen hét táblában tárolják a helymeghatározáshoz szükséges adatokat. A mérés időpontja, ami fontos lehet, a measurement táblában található, ezen tábla segítségével kaphatjuk meg az egy mérési adathalmazhoz tartozó mérési pontjainkat. A comments táblában található például a helyszín, a napszak és az időjárás. A mérési pontok a gps táblában találhatóak, amelyeket a földrajzi szélesség, hosszúság, a látott műholdak száma és a tengerszint feletti magasság jellemez. A gsm táblában a vételi szint és a hozzá kapcsolódó információkat tárolják. A cell táblában a cella tulajdonságait találhatjuk meg. Egy cellát egyértelműen a következő azonosítók jellemeznek: •
MCC (Mobil Country Code, Mobil országkód), ennek hossza 3 számjegy, egyértelműen azonosítható a mobil előfizető hálózata szerinti országkód. Ezeket a kódokat az ITU jelöli ki. Magyarország mobil országkódja 216.
•
MNC (Mobile Network Code, Mobil hálózati kód), ez az előfizető hálózatát adja meg. A kódot a hatóság jelöli ki, külön jogszabályban foglalt feltételekkel. Magyarországon 3 szolgáltató létezik. A T-Mobile mobil hálózati kódja 30, Pannon 20, Vodafone 70. Az MCC és az MNC együtt azonosítja az előfizető hálózatát.
•
LAC (Location Area Code), amely egy nagyobb területet azonosít, amely több cellát foglal magában. Az azonosító 4 számjegyből áll.
•
CI (Cell Identifier, cella azonosító) 4 hexadecimális számjegyből áll. A LAC és a CI segítségével elméletileg már egyértelműen azonosítható a bázisállomás.
•
FREQ (Frekvencia), az a frekvencia, amin az adó sugároz. Az egymás mellett levő bázisállomások más-más frekvencián sugároznak.
Az adatbázisba történő adatfeltöltéshez egy intelligens internetes kezelőfelület nyújt lehetőséget (5. ábra). A feltöltő program PHP nyelven van megvalósítva, amely biztosítja a platformfüggetlenséget. Egy HTML felületen keresztül elérhető, ahol a feltölteni kívánt
adathalmaz tulajdonságai beállíthatóak. Például, hogy a mérés kültérben vagy beltérben történt, és az időjárási körülmények milyenek voltak. A feltöltő felület helye: http://mobilhely.itk.ppke.hu/~kelmi/data.php.
5. ábra Az adatbázis intelligens feltöltő felülete 6.2. Statisztikus helymeghatározási modell Főként a városokban a szolgáltatók rengeteg bázisállomást telepítettek, amelyek az egyes pontokban különböző jelerőséggel lehet venni. Egy mérési pontban több bázisállomás jele is fogható más-más vételi szintekkel. Ez a sokszínűség biztosít lehetőséget a GSM alapú helymeghatározásra. A következőkben bemutatott modell is a bázisállomások és jelerősségük alapján adja meg a pontos helyzetünket. Tegyük fel, hogy van egy tér, amelyen helymeghatározást szeretnénk végezni. A teret négyzethálókkal fedjük le (6. ábra). Ezen négyzetháló minden pontjához rendelhető egy valószínűség, amely az adott pontban érzékelhető bázisállomások vételi szintjeit adja meg. Ezt a valószínűségi értéket a tér egy pontjával, az ott látható bázisállomásokkal és vételi szintjeikkel definiálhatjuk.
6. ábra A tér felosztása Ha a tér pontjairól vannak mérési adataink, az ott látott bázisállomások és vételi szintjeik, és ismerjük az adott pontra jellemző fenn ismertetett valószínűségi értéket, akkor a helyzetünk a legnagyobb valószínűségi pontban adódik. Egy mérési ponthoz több bázisállomás tartozik. Ezeknek a valószínűségi értékeik kiszámolása után a kapott eredményeket összeszorozva számíthatjuk ki a valódi valószínűséget. Ezt azért tehetjük meg, mert az egyes bázisállomásokhoz tartozó valószínűségi értékek egymástól függetlenek, aminek következtében összeszorozhatjuk őket. A valószínűségek kiszámolásához a teret lefedjük egy négyzethálóval. A négyzetháló minden egyes pontjára készítünk statisztikát. Ez azt jelenti, hogy egy-egy mérési pontot a megfelelő négyzet mind a négy sarokpontjához beszámítunk (7. ábra). A beszámítás mértéke a távolságtól fordítottan arányos. Minél közelebb van a háló egy adott pontjához, annál nagyobb mértékben változtatja meg a kiszámolandó értékeket.
7. ábra Mérési pontok besorolása a négyzet pontjaihoz A statisztika abból áll, hogy a háló minden egyes pontjához, minden oda tartozó bázisállomásra kiszámítjuk a várható értéket és a szórást, a távolságot is belekalkulálva. Az egyes bázisállomásokhoz tartozó jellemzők, várható értek és szórás Gauss eloszlású. A projektben résztvevők készítettek egy egyhelyben álló mérést, aminek az adathalmazát elemezve az egyes bázisállomásokra jellemző térerő eloszlások megfelelnek a Gauss sűrűségfüggvénynek. (centrális határeloszlás tétel jön még ide) Egy mérés helyének meghatározásakor a statisztika alapján kiszámoljuk a legvalószínűbb helyet, ahol a mérés történhetett. A kapott eredmény a háló egy pontja lesz, amely a négyzetháló pontjainak távolságától függő pontosságú lesz. A háló pontjai minél távolabb vannak egymástól a mérés annál pontatlanabb lehet. Ennek a hibának a kiküszöbölésére, az eredmény további finomításának céljából a végleges koordináta becslésébe beleszámítjuk a legnagyobb valószínűségű rácspont 8 szomszédját is (8. ábra). Az új koordináta a 9 szomszéd által kapott súlyozott átlag lesz. Ha valamelyik szomszédja is nagy valószínűséggel lehet a keresett hely, akkor az ő irányukba mozdul el a végleges pont.
8. ábra Mérési pont helyének pontosítása 9 szomszédja segítségével
6.3.
Modell
Az általam megvalósított, ebben a dolgozatban bemutatásra kerülő modell, az 6.1. fejezetben reprezentált statisztikus helymeghatározási modellre épül. A modell bemenő adatai a GSM adatbázisból származnak. A bázisállomások és azok vételi szintjének értékét használja csak fel az eredmények kiszámolásához, vagyis a helymeghatározáshoz. GPS koordinátákat használunk referencia adatként. Használhatnánk location típusú adatokat (város, utca, házszám) is, de a GPS koordinátákkal egyszerűbb volt a megvalósítás. A kapott eredmények pontosságát, ezen értékekhez viszonyítjuk. Ezáltal a modell pontossága nagymértékben függ a GPS rendszer pontosságától. A modell két fő részre osztható. Az első részben a rendelkezésre álló adatokból statisztikát készít, amelynek segítségével a következő részben meghatározza a pontos helyzetét a bemenő adatoknak. Az eredmények pontossága függ a modell paraméterétől, amelyet méterben adunk meg. Ez az érték határozza meg a statisztika szerkezetét.
6.4.
PDCA ciklus modell
A 6.3. fejezetben bemutatott modell fejlesztéséhez a PDCA ciklus modell alkalmazható. A PDCA ciklus bármilyen műveletre, tevékenységre, folyamatra, rendszerre, működtetésre, koncepcióra,
elgondolásra
vonatkoztatható,
zárt
hatásláncú,
folytonosan
ismétlődő
körfolyamat-elv. A nemzetközi szakirodalomban Deming ciklusnak (Deming's Cycle) PDCA keréknek (PDCA Wheel), PDCA ciklusnak (PDCA Cycle) vagy PDCA huroknak (PDCA Loop) is nevezik.[]
9. ábra A PDCA ciklus Egy PDCA ciklus a következő lépésekből áll: P – Plan (Tervezés) D – Do (Megvalósítás) C – Check (Ellenőrzés) A – Act (Intézkedés) A PDCA ciklus jelentése: P - Tervezd meg! D - Valósítsd meg! C - Ellenőrizd az eredményeket! A - Intézkedj az eredmények alapján! Ismételd a PDCA-t![] A GSM készüléket akkor tudjuk használni, amikor legalább 1 bázisállomás jelét fogja. Általában, főleg lakott területen belül, nagyvárosban több bázisállomás jelét is érzékeli. A projekt keretein belül használt készülék maximum 7 cellát képes tárolni. Egy mérési helyszínt pontosabban tudunk azonosítani, ha a lehető legtöbb bázisállomással tudjuk jellemezni. A pontosság növelése érdekében kiválogattuk azon mérési pontokat, ahol legalább 4 cella jele fogható volt, és csak ezen adatokat használtuk fel a statisztikához és a mérés helyének meghatározásához.
Kezdetben a bázisállomásokat csak a cella azonosító alapján különböztettük meg. Előfordulhat, hogy egy cella azonosítót több cellára is használnak, ezért a cellák megkülönböztetésére felhasználtuk továbbá a location area code-ot (LAC) is. Így egy bázisállomást már egyértelműen tudunk azonosítani. Igen kicsi annak a valószínűsége, hogy létezik két location area-n belül, két megegyező azonosítóval rendelkező cella. A mérés során észlelhetjük olyan bázisállomások jeleit, amelyekhez nem lehet azonosítót rendelni.
Ha
ezeket
a
bázisállomásokat
nem
használjuk
fel
az
eljárásban
a
helymeghatározáshoz, akkor egyes helyeken a hiba nagysága jóval kisebb lehet. Az ismeretlen azonosítóval rendelkező bázisállomásokat nem tudjuk egymástól megkülönböztetni, előfordulhat, hogy egy location area-n belül több ilyen bázisállomás is létezik, ezért, ha ezeket nem használjuk fel a helymeghatározáshoz, javulhat a pontosság.
6.5.
A pontosságbecslési eljárás megvalósítása
A pontosságbecslési eljárás a 6.3. fejezetben bemutatott modellt valósítja meg, továbbá az eljárás segítségével lehetőség nyílik az eredmények elemzésére, a hiba és az adatok ábrázolására. Ebben a fejezetben, sorban bemutatom az eljárás megvalósításának menetét. 6.5.1. ODBC interfész A helymeghatározási modellt megvalósító eljárásnak adatokat kell letöltenie a GSM adatbázisból. Ehhez a letöltéshez szükséges egy ODBC interfész, amelyen keresztül kapcsolatba lehet lépni az adatbázissal. A MySql adatbázis több programozási nyelvből is elérhető, például Java, Smalltalk, C, C++, C#. Az eléréshez egyedi illesztő felületekre van szükség. A projekt keretein belül használt adatbázis phpMyAdmin felületen keresztül tölthető fel adatokkal, amely nyílt forráskóddal rendelkezik. A használt adatbázis lehetőséget nyújt VARCHAR és Unicode karakterek használatára. Lehetőség van az eljárások tárolására, adatbázis triggerek, view adatbázisok használatára. Támogatja INFORMATION_SCHEMA, SSL és egymásba ágyazott SELECTek használatát. A MySql típusú adatbázisokhoz létezik MyODBC nevű beépített ODBC interfész, amely az ODBC-t kezelő nyelvek számára is hozzáférhetővé teszi az adatbázis-kezelőt. A Microsoft Corporation fejlesztette ki az ODBC-t (Open Database Connectivity), amely egy szabványos adatbázis hozzáférési metódus. Ennek a kapcsolatnak a segítségével lehetővé válik adatok elérése, függetlenül az adatoktól, az adatbázis típusától és az alkalmazástól. Az ODBC az adatbázis és az alkalmazás között helyezkedik el. Feladata, hogy az alkalmazás kéréseit
átalakítsa, az adatbázisnak megfelelő formába. Ebből következően az alkalmazásnak és az adatbázisnak is rendelkeznie kell ODBC adatkapcsolat támogatással. Az általam megvalósított program Matlab programozási nyelven készült. Itt lehetőség van kommunikálni MySql adatbázissal JDBC és ODBC kapcsolatokon keresztül. A Matlab az 10. ábrán levő lehetőségeket nyújtja a kapcsolat felépítéséhez. Az ODBC driveren történő kapcsolat felépítés csak Windows platformon lehetséges, JDBC-n keresztüli Unix platformon is. Nekünk a Windows alapú teljesen megfelel.
10. ábra ODBC kapcsolat típusai A
GSM
adatbázis
és
a
Matlab
közötti
kapcsolat
felépítéséhez
a
http://www.mysql.com/products/connector/ weboldalról letölthető egy ODBC driver, amely minden számítógépre szükséges, amelyen az eljárást szeretnénk használni. A letöltés és telepítés után ODBC adatforrást hozunk létre. Ezt úgy tehetjük meg, hogy megnyitjuk a Microsoft Windows Vezérlőpultját, ezek után a Felügyeleti eszközökre duplán kattintunk, majd az Adatforrások (ODBC) ikonra. Kiválasztjuk a Felhasználói DSN lapot, ez látható a 11. ábrán. Előzetesen már telepített illesztő programhoz új adatforrást a Hozzáadás gomb segítségével definiálhatunk.
11. ábra ODBC driver beállítása Új adatforrás hozzáadásához kiválasztjuk a megfelelő illesztő programot, esetünkben a MySql ODBC 5.1 Driver-t. Ez látható a 12. ábrán.
12. ábra Az új adatforrás beállítása
13. ábra A helymeghatározás nevű adatforrás paramétereinek beállítása Az adatforrás létrehozása után beállítjuk a megfelelő paramétereket (13. ábra). Az adatfolyam neve helymeghatározás, ezt kell mindig megadni, mivel a program ezen a néven ismeri fel. Ezek után a megfelelő helyre beírjuk a szerver helyét, amely a mobilhely.itk.ppke.hu-n található, a port számot, ami MySql esetén mindig 3306, megadjuk a felhasználó nevet és jelszót, majd végül az adatbázis nevét. Ezzel sikeresen létrehoztuk az ODBC adatforrást.[4] 6.5.2. Adatok lekérdezése A kapcsolat felépítése után egy szabványos SQL lekérdezés segítségével az adatbázisban található táblákat összekapcsoljuk. Így lehetőség nyílik egy feltételt megadva, tetszőleges adatok hozzáféréséhez. Egy általános SQL lekérdezés a következőképpen néz ki: SELECT
FROM WHERE GROUP BY HAVING ORDER BY ;
A select után közvetlenül megadhatjuk a lekérdezni kívánt oszlopok neveit, a from részben pedig a lekérdezéshez szükséges táblák neveit. A where parancs segítségével egy logikai kifejezés alapján feltételt fogalmazhatunk meg. A group by az eredmény tábla sorait csoportosítja, a having segítségével egy újabb logikai kifejezés szerint adhatunk meg feltételt és az order by lehetőséget nyújt a megjelenítendő oszlopok rendezésére.(5) Ezekből a parancsszavakból csak a select, from, where és order by utasításokat használjuk fel. A kezelőfelületen megadott feltétel kerül be a where utasításhoz. Ahol a GPS vevő készülék még nem inicializálódott a GPS koordináták helyett 0 értékeket adna. Az ilyen mérési pontokat kiszűrjük a lekérdezésnél. 6.5.3. Adatok rendezése, átszámolása Az eljárás használatához az adatbázisból egy-egy mérési adathalmazt kérdezünk le. Ez tartalmazza a GPS koordinátákat (földrajzi szélesség és hosszúság), egy nagyobb terület azonosítóját (LAC), a cella azonosítóját (cell id), és a cellák vételi szintjeit. Az adatok letöltése után változókban tároljuk őket. Az ábrák készítéséhez és a helyzet meghatározáshoz az adatokat megfelelő formába kell rendezni a könnyebb kezelhetőség érdekében. A cellák között találhatóak olyanok, amelyeket a vevő készülék, amellyel az adatokat gyűjtötték, nem tud azonosítót rendelni. Ezeket megfelelően kell kezelni, egy FFFF azonosítót állítunk be az üres adatok helyére. Az ilyen típusú cellákat nem tudjuk megkülönböztetni egymástól, ezért végeztünk olyan teszteléseket is, amelyekben az ilyen azonosítóval rendelkező cellákkal nem foglakozunk, kidobjuk a mérési adathalmazból. Egy-egy cellát egyértelműen a Mobil országkód (MCC), a Mobil hálózati kód (MNC), egy nagyobb terület azonosítója (LAC) és a cellaazonosító (cell id) segítségével azonosíthatunk. Esetünkben a LAC és a cellaazonosító is elég az egyértelmű azonosításhoz, ezért csak ezt a kettő tulajdonságot vesszük figyelembe. Az egyszerűség érdekében összevonom a két azonosítót egy szöveges string-be. Az adatbázisban minden egyes mérési pontot egy rekord jelöl a gps táblában. Ha kétszer ugyanazon a koordinátán történik mérés, az két külön rekordot jelent. Ezt a szerkezetet átrendezzük, minden mérési pont csak egyszer szerepeljen, és ezekhez hozzárendeljük az abban a pontban látott cellákat a vételi szintjükkel. Ezzel megkönnyítjük a későbbi számításainkat. A GSM adatbázisban a rögzített GPS koordináták fok decimális perc formátumban találhatóak meg. A későbbi helymeghatározás egyszerűsítése érdekében
átváltjuk méterbe ezeket a koordinátákat. Az ábrázolás szempontjából lényegtelen, milyen mértékegységben tároljuk az adatokat. Az ábrák készítéséhez ismernünk kell a mérés folyamán észlelt cellák azonosítóit. Így lehetőség nyílik eldönteni, mely cellák vételi szint változásai érdekelnek. Egy egyszerű kódrészlettel megkeressem, milyen cellák fordultak elő az adathalmazban, majd ezeket megjeleníti az eljárás a felhasználó számára. A kiválogatott cellaazonosítók segítségével elrendezem az adatokat a megjelenítés számára. Az eljárás 5 ábrázolási forma közül nyújt lehetőséget a választásra. Ezeket a 6.5.4. fejezetben részletezem. A helymeghatározási modell megvalósítása két részre osztható. Első lépésként az elmentett adatokból statisztikát készít az eljárás, majd a mérési pontok helyét meghatározza. A letöltött adatok közül csak azokkal dolgozunk tovább, amely mérési pontokban legalább 4 bázisállomás jele fogható volt. Egy-egy mérési pontról minél több információval rendelkezünk, annál jobban megkülönböztethetők egymástól. Egy egyszerű módszerrel (modulo 10) meghatározzuk, melyekből készüljön a statisztika és melyeket használjuk fel a méréshez. Minden 10. mérési pont tartozik majd a méréshez. A bejárt útvonalból ez által egyenletesen választom ki a pontokat, amely biztosítja, hogy mindenhol legyen statisztika. A statisztika készítéséhez a létrehozunk egy hálót, amellyel lefedjük a teret. A háló pontjai között a távolság tetszőlegesen beállítható. A GPS koordináták méterben vannak tárolva, ezáltal definiálható és a későbbiekben módosítható a négyzetrács pontjai közötti távolság. A statisztika készítésére elkülönített adatok egy-egy mérési pontját azon négyszög mind a 4 sarokpontjához hozzárendeljük, amelyben elhelyezkedik. A háló egyes pontjaihoz több cella is tartozik és a cellák 4 rácsponthoz sorolódnak be. Minden cellát két tulajdonsággal jellemzünk, a súlyozott átlaggal és a szórással. A megfelelő súly kiszámításához a távolság inverzét használjuk, mivel a mérési pont a legközelebbi sarokponthoz számítson a legnagyobb értékben, a távolság itt a legkisebb és a legtávolabbi sarokponthoz a legkisebb mértékben, itt a legnagyobb a távolság. Minden távolságot átszámolunk a 2. képlet alapján. Ez a képlet akkor is megfelelő, ha a mérési pont koordinátája pontosan megegyezik annak a hálópontnak a koordinátájával, amihez hozzárendeljük.
2. képlet A háló minden pontjának minden odatartozó cellájához a 3. képlet szerint kiszámoljuk a súlyozott átlagát. A cella vételi szintjét és a háló adott pontjától vett távolságot felhasználva.
3. képlet A szórás értékét nem számítjuk ki, mivel kevés adat áll rendelkezésre a jelen adathalmazokból egy-egy cella jellemzésére. Az egyetemen, a GSM helymeghatározás projekt keretén belül végzett, egy helyben álló mérés adatait elemezve állapítottunk meg egy szórás értéket, amelyet minden cellára alkalmazunk. Több cella sűrűségfüggvényét vizsgálva, Gauss eloszlásra lehet következtetni, 1 szórás értékkel. A statisztika elkészülése után, amely a háló pontjainak definiálása és a cellák ezekhez rendelése valamint súlyozott átlaguk kiszámítása és a szórás fix értékre állítása után a mérési pontok helyének meghatározása következik. A mérési pontokhoz tartoznak bázisállomás azonosítók és vételi szint érték párok. Ezekre a párokra számol az algoritmus valószínűség értékeket Gauss eloszlást és a statisztikát felhasználva, a 4. képlet alapján.
4. képlet
Egy mérési pont helyének meghatározásánál a háló minden pontjára számolunk valószínűségi értéket. A háló pontjainak valószínűsége a mérési ponthoz tartozó összes cellára kiszámított valószínűség szorzata lesz. A valószínűségi értékeket összeszorozhatjuk, mivel ezek egymástól független események. A független események bekövetkezésének valószínűségek a külön-külön vett valószínűségek szorzata. Ha a mérési ponthoz tartozó valamelyik cella nem szerepel a statisztikai háló adott pontjában, akkor annak értékét sem szabad teljesen figyelmen kívül hagyni, ezért egy igen kicsi értéket (10-10) állítunk be helyette. Miután kiszámoltuk a háló egyes pontjai mekkora valószínűséggel lehet a keresett mérési pont helyzete, a legnagyobb valószínűségűt és a 8 szomszédját vizsgáljuk tovább. Ha a háló legnagyobb valószínűségű pontjának hiányzik valamely szomszédja, helyette nem használunk feltételezett értéket. Ilyen esetben nem 8 szomszéddal számolunk, hanem csak azokkal, amelyekről van információnk (miért?). Az ismert szomszédok segítségével tovább finomítjuk a mérési pont helyét. A háló 9 pontjának súlyozott átlagának segítségével pontosítjuk az eredményeket. A súlyok a valószínűségek lesznek.
A mérési pontokhoz tartozó GPS koordináták és az eredmények közötti távolságot kiszámolva, megkapjuk a hiba nagyságát. Hisztogram formájában megjelenítjük. A hibák előfordulási valószínűségeit kiszámoljuk, majd megjelenítjük. Ezen ábrák segítségével elemezzük a modell pontosságát. 6.5.4. GSM adatok vételi jeszintjeinek ábrázolása A helymeghatározási modell pontosságbecsléséhez szükséges szemléletes ábrák készítése. Az ábrák a pontosságbecsléshez, az eredmények elemzéséhez, és megértéséhez nyújtanak segítséget. Ebben a fejezetben bemutatom az ábrázolási lehetőségeket. Mindegyik ábra ugyanazokat az adatok jeleníti meg, más-más stílusban. Az adatok a GSM adatbázisból származnak, ezeket használjuk fel a pontosságbecsléshez is. Az eljárás rendelkezik egy kezelőfelülettel (14. ábra), amely segítségével kiválaszthatjuk, mely adathalmazt szeretnék elemezni. A Where feltétel panelen megadott feltétel beágyazódik az előre megírt SQL lekérdezésbe, amellyel az adatokat kérjük le az adatbázisból. Az adatok letöltése után kiválaszthatjuk a cellákat, amelyeket szeretnénk megjeleníteni. Például az egyik cellát a következővel azonosítjuk: 0044-2a2c. Az első karaktersorozat a 0044, egy nagyobb terület azonosítóját jelöli (LAC) és a 2a2c a cella azonosítója. Ezáltal az is láthatóvá válik, a mérés mennyi location area-t érint. Tetszőleges számú cella válaszható ki, egy vagy akár az összes is. Ezek után az ábrázolási stílusok közül a számunkra megfelelő megjelölésével megjelennek az elkészült ábrák.
14. ábra Az eljárás kezelőfelületének egy részlete Az egyik ábrázolási stílus egy térképet ad eredményül. Erre példa a 14. ábrán látható, amely egy Szigony utcai mérést ábrázol. A Szigony utcáról indulva, az Egyetem épülete mögötti parkolóból, a Baross utcán végighaladva, a József körút egy részéig. (Baross utcán magas házak miatt ugrált a jel, József körút szélesebb). A vízszintes tengelyen a földrajzi hosszúság, a függőleges tengelyen a földrajzi szélesség található. Mindkettő méterben megadva. Az adatbázisban eredetileg fok decimális perc formátumban találhatóak meg a GPS koordináták, a későbbi számítások érdekében volt szükséges az átalakítás. Az ábrázolás szempontjából a mértékegység nem releváns.(ha nincs az összes cella kiválasztva, mérés melyik részén)
15. ábra Szigony utcai mérés térképe A 15. ábrán szintén az előbbi Szigony utcai mérés látható időbeli reprezentációban. A mérés 744 mérési pontból áll. Vízszintesen az egyes sorok a bázisállomásokat vételi szintjeit mutatják a mérés folyamán. A skálán látható a jel erőssége. A sötétkék szín azt jelenti, nagyon gyenge volt a jel, vagy egyáltalán nem volt. A narancssárgás illetve piros szín jelzi, hogy a bázisállomás jele igazán jól fogható volt. Az ábráról leolvasható, hogy ez csak néhány mérési pontban és bázisállomásnál fordul elő. Megfigyelhető továbbá, hogy minden mérési pontban legfeljebb 7 cella jele volt fogható, a készülék is csak ennyit tud érzékelni maximálisan. Az ábráról leolvasható, hogy a 600. mérési pont környékén igen gyenge volt az összes bázisállomás jele, míg a 450. mérési pontok környékén 3-4 bázisállomás jele is erősen érzékelhető volt.
16. ábra Szigony utcai mérés időbeli reprezentációja A 16. ábra a Debrecen-Budapest vonatút egy részét ábrázolja. Pontosabban az első 30 mérési pontot. Hat különböző cellaazonosító vételi jeleinek vizsgálata lehetséges. A különböző színek a különböző bázisállomásokat jelölik. Az oszlopok magassága az egyes bázisállomások vételi szintjeinek megfelelő. Látható, hogy az első 3 cella vételi szintje közel azonos értéken marad, miközben a másik 3 kiválasztott cella sugárzási szintje igen alacsony értéken marad.
17. ábra Manhattan féle ábrázolás A 17. ábrán a bázisállomások vételi szintjei egy-egy mérési pontban összegezve láthatóak. A különböző színek a különböző bázisállomásokat jelölik. Az ábra a Szigony utcai mérés egy részletét ábrázolja. Egy mérési adathalmazt vizsgálva azonnal látható, a mérés mely részen megfelelőek a vételi viszonyok, ahol több bázisállomás magasabb jelszinttel fogható és melyek gyengébbek, ahol kevés bázisállomás alacsony jelszinttel fogható. A mérés 240- 260 mérési pontjai között csak 3-4 bázisállomás jele fogható, alacsony vételi szinttel. A 340-360 mérési pontokon már 7 bázisállomás jele is fogható volt, jelentősen magasabb jelszinttel. Ezen a környéken valószínűleg a bázisállomások közelében lehettünk.
18. ábra Vételi szint összegzése egy-egy mérési pontban A 18. ábrán a bázisállomások különböző színű szalaggal vannak reprezentálva. Szintén a Szigony utcai mérés adatait ábrázolja. Az egész adathalmaz és a mérés folyamán látott összes bázisállomás jele megjelenik. Kevesebb cellát kiválasztva, jobban láthatóvá válik az egyes bázisállomások vételi szintjeinek változása. Az ábráról leolvasható, hogy a mérés elején, közepén és végén egyes cellák jele igen magas jelszinttel fogható, míg a többi részen viszonylag alacsonyabb.
19. ábra Bázisállomások vételi szintjei a mérés folyamán 6.5.5. A pontosságbecslés tesztelése adatokkal A GSM adatbázisban található adatokkal teszteltem a helymeghatározási algoritmust. Ezen adatok az egyetem környékéről származnak. Az egyik adathalmaz, amelyet vizsgáltam, az Üllői út – Haller utca egy részéről származik. A továbbiakban ezt az adathalmazt 1. mérési adathalmaznak nevezem. 1237 mérési pontot tartalmaz, ebből csak azokkal foglalkozom, amely pontokban legalább 4 cella jele fogható volt. Ezen pontok száma 499, amelyből 450-et használok fel a statisztika készítéséhez, a többi, 49 pontnak meghatározom a helyét. Az első esetben a statisztika készítésekor létrehozott háló pontjai közötti távolság 20 méter. Ekkor a legnagyobb hibaérték 28.3 méter. Az átlagos hibaérték 13.6 m. Ha a háló pontjai közötti távolságot 10 m-re csökkentjük a legnagyobb hibaérték 13.6 m-re csökken, az átlagos hibaérték 6.8 m-re. A háló pontjai közötti távolságot 5 m-re csökkentve a maximális hiba és az átlagos hiba értéke is alacsonyabb értéket vesz fel. A legnagyobb értékű hiba 7.6 m lesz, az átlagos hiba 3.4 m. Ezen a mérési területen az utcák viszonylag szélesek, a magas épületek távolabb találhatóak egymástól, ezáltal a GPS koordináták is pontosabbak ezen a területen. Sok bázisállomás található, kis cellamérettel, sok átfedéssel, amely magyarázata lehet a pontos eredményeknek. A 3 vizsgált esetben a hibák eloszlása egyenletes, csak az 5m-es grid esetén látható (20. ábra), hogy a mérés második felében, a Haller utcán 1-2 méteres különbséggel jobb eredményeket kaptunk, mint az Orczy úton.
20. ábra Budapest, Üllői út-Haller utcai mérés hibáinak nagysága, 5m-es grid esetén A 2. mérési adathalmaz, amelyet részletesebben bemutatok, Ferihegy környékéről származik. Ritkábban lakott terület jellemzi, amely miatt kevesebb bázisállomás található, ritkábban fedik át egymás besugárzási területét. Ezáltal a helymeghatározás is pontatlanabb lesz. A három vizsgált esetben, amikor a grid mérete 20m, 10m, illetve 5 m, nem kapunk pontosabb eredményeket. Mindhárom esetben közel azonos értékű hibák fordulnak elő az egyes mérési helyeken. Átlagosan a hiba 40 m érték körüli, amely azért még így is elég pontos, és a maximális hiba 100 m környékén található. A 466 rendelkezésre álló mérési pontból csak 120at tudtunk felhasználni az eljáráshoz, mivel a többi helyen csak 3, illetve kevesebb bázisállomás jele volt fogható. A helymeghatározás tovább nehezíti, hogy az adathalmaz nem összefüggő, hanem több különálló részből áll (21. ábra). Hasonló eredményeket kaphatunk, mint ennél a mérésnél, ha vonatútvonalon, illetve autópályán haladva szeretnénk a helyzetünket meghatározni. Az ilyen helyeken hasonló a bázisállomások elhelyezkedése.
21. ábra Budapest Ferihegyi mérés térképe A 3. mérési adathalmaz, amit bemutatok, a Szigony utcán kezdődik, majd a Baross utcán folytatódik, végül a mérés utolsó része a József körúton található. 744 mérési pontból áll, amelynek 85%-át, vagyis 630 pontot tudunk felhasználni. Ezeken a helyeken érzékelte a készülék legalább 4 bázisállomás jelét. Ezen a rövid mérési szakaszon 25 cella jele volt fogható. 567 mérési pontot használtam fel a statisztikához, a többi 63-nak meghatároztam a helyzetét. A 3 esetet megvizsgálva, ahogy csökken a grid mérete, úgy kapunk egyre pontosabb eredményeket. A 20m-es grid esetén a mérési pontok 9%-ánál fordult elő 100m-nél nagyobb hiba, és ez az érték 162 m volt. Ha eltekintünk ezektől a viszonylag magas hibáktól, akkor a 20m-es grid esetén átlagosan 16m-es hibák fordultak elő. A grid méretét 10m-re csökkentve (22. ábra), az átlagos hiba 9.7m-re csökken. Ebben az esetben a mérési pontok 6%-ánál fordult elő 100m-nél nagyobb hiba, és ez nem volt nagyobb, mint 163 m. Az 5m-es grid esetén (23. ábra) is előfordulnak 100m-nél nagyobb hibák, az esetek 3%-ában, és nem haladja meg a 155m-t. Ha eltekintünk a 100m-nél nagyobb hibáktól, akkor átlagosan 6m-es hibák fordulnak elő. A vizsgált 3 esetben a 100m-nél nagyobb hibák a mérés elején figyelhetőek meg a Szigony utca Baross utca felé levő végén. A grid méretét csökkentve, egyre kevesebb mérési pontban fordult elő, hogy nagy hibával tudtuk csak meghatározni a pontos helyzetet.
22. ábra Budapest Szigony utcai mérés, 10 m-es grid
23. ábra Budapest Szigony utcai mérés, 5 m-es grid
A 4. mérési adathalmaz, amelyet részletesebben bemutatok, a Baross utcán kezdődik és egészen a Blaha Lujza térig tart. 996 mérési pontból áll, amelyből csak 538-at, 54%-át tudjuk csak felhasználni, mivel ezekben a pontokban érzékelte a készülék 4 cella jelét. Ebből 485-t elkülönítek a statisztika készítéséhez, a többi 53 pontnak meghatározom a helyét. Ezen mérés folyamán 21 bázisállomás jele volt látható. Elsőként a 20 m-es grid beállításával történő helymeghatározáskor egyetlen mérési pont volt, amely meghaladt a 100 m-t. Ez 462 m volt. A többi mérési pont átlagos hibája 18 m volt. A grid méretét 10 m-re csökkentve a legmagasabb hibaérték 238 m-re redukálódott. Az átlagos értéke a hibának 11,5 m. A 24., illetve a 25. ábrán a 10 m-es és 5 m-es grid esetén történő helymeghatározás hibái láthatóak. A 10 m-es grid esetén még előfordul 200 m-nél nagyobb értékű hiba, de ha a grid méretét 5 m-re állítjuk be, ez a mérési pont sokkal pontosabban becsülhető. Az 5 m-es grid esetén már nem fordul elő 40 m-nél nagyobb hiba sem.
24. ábra Budapest, Baross utcai mérés hibáinak nagysága, 10 m-es grid esetén
25. ábra Budapest, Baross utcai mérés hibáinak nagysága, 5 m-es grid esetén Az eljárás a hibák kiszámolása mellett egy grafikonon megjeleníti, milyen valószínűséggel fordulnak elő a különböző nagyságú hibák. A következőkben bemutatott eredmények az összes vizsgált adathalmazra jellemzőek. A Baross utcai mérés hibáinak valószínűségeit ábrázolják a következő képek. A 20 m-es grid esetén legnagyobb valószínűséggel 20 méter körüli hibák fordulnak elő a legnagyobb valószínűséggel (26. ábra). Természetesen előfordul ennél kisebb, illetve nagyobb értékű hiba is. Ugyanakkora valószínűséggel fordulhat elő 10 méternél kisebb hiba, mint 30, 40 vagy akár 50 méteres hiba is.
26. ábra Baross utcai mérés hibáinak valószínűsége 20 m-es grid esetén A helymeghatározást 10 méteres grid segítségével végezve a 10 méter körüli hibák fordulnak elő a legnagyobb valószínűséggel. A legkisebb valószínűséggel a 30 méter körüli hibák. Ez a 27. ábrán látható.
27. ábra Baross utcai mérés hibáinak valószínűsége 10 m-es grid esetén A grid méretét tovább csökkentve, 5 méterre, az ennél nagyobb hibák valószínűsége minimálisra csökken. Leggyakrabban 5 méter körüli hibák fordulnak elő (28. ábra). Minden vizsgált mérési adathalmazra jellemző, hogy a grid méretének megfelelő nagyságú hibák fordulnak elő a legnagyobb valószínűséggel. Ez alól kivétel a Ferihegyi adatokat tartalmazó mérés. Ez szinte teljesen különbözik a többi mérési adathalmaztól.
28. ábra Baross utcai mérés hibáinak valószínűsége 5 m-es grid esetén
7. Adatbázis tömörítése lehetősége A helymeghatározáshoz szükséges adatokat egy adatbázisban tároljuk. Egyenlőre csak teszteljük az eljárást, PC-n, illetve laptopon használva, amelyeknek jóval nagyobb a számítási és tárolási kapacitása, mint egy mobil készüléknek. Ezáltal gyorsabbak is. Ha az eljárást egy mobil készüléken szeretnénk a későbbiekben használni, az adatbázis méretét minimálisra kell csökkenteni, anélkül, hogy a helymeghatározás pontossága nagyobb mértékben csökkenne. A tömörítés lényege az kell, legyen, hogy az adatbázisban csak a kívánt pontosság eléréséhez legszükségesebb adatokat tároljuk. Olyan adatokat, amelyek rontottak a helymeghatározás pontosságán elhagyjuk. Eldönteni azt, hogy milyen adatok szerepeljenek az adatbázisban, függ a mérési helyszín típusától. Például nagyvárosban, ritkábban lakott területen, illetve lakott területen kívül valószínűleg különböző mennyiségű adat szükséges a pontos helyzet meghatározásához. Tovább az is fontos, mennyire pontosan eredményeket szeretnénk. Nagyvárosban pontosabb eredmények szükséges, de például az autópálya mentén nagyobb pontatlanság engedhető meg, mint Budapest belvárosában.
8. Értékelés, kritikai elemzés, továbbfejlesztési lehetőségek A statisztikus helymeghatározási modell sikeres megvalósítása után bizonyíthatóvá vált, hogy a helymeghatározás kívánt pontossága beállítható. Egy bizonyos beállított értékhez közelít a hiba. A 3 vizsgált esetben, amikor a grid méretét 20, 10 illetve 5 m-re állítva vizsgáltuk, az eredmények hibaérték a grid értékének közelében volt. Az eredményeket a GPS rendszerrel kapott értékekhez viszonyítottuk és úgy vizsgáltuk a pontosságot. Ekkor természetesen a helymeghatározás pontossága attól is függ, mennyire mért pontosan az adott helyen a GPS készülék. A GPS rendszerrel lehet ma a világon a legpontosabban helymeghatározást végezni, a pár métertől akár a milliméteres pontosságot is elérhetjük. A statisztikus helymeghatározási modellel ilyen pontosság nem érhető el. A GSM hálózat segítségével végzett helymeghatározási módszerek, amelyek a bázisállomások alapján határozzák meg a helyzetet kevésbé pontosak az ebben a dolgozatban bemutatott módszernél. Az egyik ilyen módszer, amikor a szolgáltató határozza meg a telefonkészülék helyzetét. A szolgáltatók rendelkeznek a telepített bázisállomásaik pontos helyének ismeretével, ezáltal a készülék pontos helyzetét meg tudják határozni. A mobiltelefon által küldött, és a szolgáltató saját hálózata által biztosított adatok alapján. Ezzel a módszerrel, a sűrű bázisállomásokkal lefedett területeken, például nagyváros, belváros, akár 10 méter alatti pontosság is elérhető. A második legelterjedtebb módszer, amikor a mobilkészülék által érzékelt bázisállomások és egy korábban felépített bázisállomás-adatbázis segítségével történik a helymeghatározás. Ez a módszer is a bázisállomásokkal sűrűn lefedett területeken működik jól, de itt nagyon sok függ attól, hogy mennyire részletes és pontos az adatbázis. Itt 100-1000 méter pontosság érhető el. A statisztikus helymeghatározási módszerrel akár 5 méteres pontosság is elérhető. A modell másik nagy előnye a pontossága mellett, hogy a PDCA ciklus alapján fejleszthető. A ciklusok újabb és újabb végrehajtásakor az eredmények pontossága javult. Első lépésként az adatokat kiválogattunk, melyeknél látta a készülék legalább 4 bázisállomás jelét. Ezáltal pontosabb eredményeket kaptunk. A következő ciklusban a bázisállomások azonosításához nem csak a cella azonosítót használtuk fel, hanem a location area azonosítját is. Így egyes mérési pontokban a hiba értéke csökkent. A további ciklusban azon bázisállomás adatait, melyekhez a készülék nem tudott azonosítót rendelni, ezáltal nem lehet egymástól megkülönböztetni őket, kihagytuk. Ezáltal az eredmények pontosabbak lettek. A modell a PDCA ciklus segítségével tovább fejleszthető.
9. Összefoglalás A bemutatott statisztikus helymeghatározási módszer egyik legnagyobb előnye, hogy meglévő eszközöket, mint például mobil készülék és GSM hálózat használ fel a helymeghatározáshoz. A szolgáltatók bevonása nélkül megvalósítható, így nem tartozna hozzá fizetési kötelezettség. Az adatok, amelyeket felhasznál a helyzet meghatározásához, a bázisállomások azonosítói és vételi karakterisztikái, minden mobilkészülék rendelkezésére áll. Jelenleg a modell által felhasznált adatokhoz a GPS koordinátákat használjuk referenciaként, ezért a módszer pontossága függ a GPS rendszer pontosságától. A modellt egy olyan eljárás valósítja meg, amelyhez tartozik egy kezelőfelület, amelyet a projekt résztvevői tudnak használni, a különböző funkciókat kihasználva. Kiválaszthatjuk az adathalmazt, amelyen a módszert szeretnénk alkalmazni. Különböző megjelenítési stílusok közül válogathatunk, amelyek megjelenítik az adatokat, ezzel segítséget nyújtanak a helymeghatározás elemzéséhez. A bemenő adatok helyzetének meghatározásakor az eredmény hibáinak megtekintésére nyílik lehetőség különböző formákban. A helymeghatározáshoz szükséges adatokat egy adatbázisban tároljuk, amelyet időnként frissíteni szükséges. A végleges adatbázis, amelyet a mobilkészüléken tárolnánk, vagy egy szerveren keresztül érhetne el, minimálisnak kell lennie, hogy a helyfoglalása a készüléken a lehető legkisebb legyen, és így a lehető leggyorsabban határozhassuk meg a helyzetünket. Ehhez tömörítésre van szükség, amely segítségével csak a kellő pontossághoz szükséges adatokat tartanánk meg és azokat, amelyekkel jó eredményeket értünk el.
10. Köszönetnyilvánítás
11. Irodalomjegyzék (vázlatos) [1] Bányai B., Feldhoffer G., Tihanyi A., Helymeghatározás GSM hálózat felhasználásával [2] Takács Gy., Helymeghatározás mobil telefonnal és mobil hálózattal [3] P. László. (2003.06.23) A technika új csodája: a globális helymeghatározás. [Online]. http://www.mindentudas.hu/mindentudasegyeteme/pap/20030623paplaszlo.html [4] Ádám J, Bányai L, Borza T, Busics Gy, Kenyeres A, Krauter A, Takács B., Műholdas helymeghatározás. Műegyetem Kiadó, 2004. [5] 3GPP. Technical Specification 05.08 2001.08. [6] Matlab help [7]Kelemen Mihály, Mérnöki tervezés [8]Székely Szabolcs, Diplomamunka [9]Bányai Balázs, Diplomamunka [10] 7-es jelzés rendszer specifikációja .. http://www.nhh.hu/dokumentum.php?cid=10750 [11] Bércesné Novák Ágnes,Database Systems [12] Takács György előadások