Konzulens: Tihanyi Attila - Pázmány Péter Catholic...
Transcript of Konzulens: Tihanyi Attila - Pázmány Péter Catholic...
Pázmány Péter Katolikus Egyetem Információs Technológiai Kar
GSM alapú helymeghatározás
Készítette: Farkas Csanád
Konzulens: Tihanyi Attila
Nyilatkozat
Alulírott Farkas Csanád a Pázmány Péter Katolikus Egyetem Információs Technológiai
Karának hallgatója kijelentem, hogy ezt a szakdolgozatot meg nem engedett segítség nélkül,
saját magam készítettem, és a munká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 szakdolgozatot más szakon
még nem nyújtottam be.
2012. december 4.
……...………................................
Aláírás
1
1 Tartalom
2 Ábrajegyzék ........................................................................................................................ 2
3 Előszó .................................................................................................................................. 3
4 Bevezetés ............................................................................................................................ 4
5 Abstract............................................................................................................................... 5
5.1 GPS ............................................................................................................................. 6
5.2 GSM ........................................................................................................................... 8
5.2.1 Bázisállomások működése [2] .......................................................................... 10
5.2.2 Cellás elv .......................................................................................................... 11
6 Meglévő GSM-es helymeghatározások [5] ...................................................................... 12
6.1 Leszármaztatott autonóm helymeghatározás ............................................................ 12
6.2 Helymeghatározás bázisállomások azonosítója alapján ........................................... 12
6.3 Helymeghatározás háromszögeléssel ....................................................................... 12
6.4 Helymeghatározás GPS-GSM-PostgreSQL adatbázis segítségével ......................... 13
7 Felhasznált programok ..................................................................................................... 13
7.1 Java [6] ..................................................................................................................... 13
7.2 GoogleEarth ( kml ) [7] ............................................................................................ 14
7.3 PgAdmin ( PostgreSQL ) .......................................................................................... 15
7.4 Screenshooter ........................................................................................................... 15
7.5 Notepad++ ................................................................................................................ 15
8 Kezdeti kísérletek: ............................................................................................................ 16
9 Adatbázis felépítése: ......................................................................................................... 17
9.1 SQL adatbázis: .......................................................................................................... 18
9.1.1 Táblák felépítése: .............................................................................................. 18
10 Adatbázis felépítése, táblák kapcsolata ........................................................................ 19
10.1.1 Legfontosabb táblák: ........................................................................................ 20
11 Hibaforrások a mobiltelefonos helymeghatározásban .................................................. 25
12 Több utas terjedés és Fading ........................................................................................ 25
13 Rendszerintegritások: ................................................................................................... 26
13.1 GPS hibák: ................................................................................................................ 27
13.2 Torony láthatósági zavarok ...................................................................................... 29
14 Hullámterjedés vizsgálat............................................................................................... 33
15 Konklúzió ..................................................................................................................... 39
2
16 Köszönetnyilvánítás ..................................................................................................... 41
17 Irodalomjegyzék ........................................................................................................... 42
18 Mellékletek ................................................................................................................... 44
2 Ábrajegyzék
1. ábra GPS működése ................................................................................................................ 7
2. ábra GSM rendszer modellje és funkcionális felépítése ......................................................... 9
3. ábra Bázis állomások elhelyezési logikája............................................................................. 10
4. ábra GSM antenna működése .............................................................................................. 10
5. ábra Cellás elv felépítése ...................................................................................................... 11
6. ábra GoogleEarth .................................................................................................................. 14
7. ábra Bejelentkezés az adatbázisba ........................................................................................ 17
8. ábra Adatbázis felépítése [9] ................................................................................................ 19
9. ábra GPS tábla ...................................................................................................................... 20
10. ábra Koordináta átváltó ...................................................................................................... 20
11. ábra GSM tábla ................................................................................................................... 21
12. ábra CELL tábla ................................................................................................................. 22
13. ábra Comments tábla .......................................................................................................... 23
14. ábra Measurement tábla ...................................................................................................... 24
15. ábra Device tábla ................................................................................................................ 24
16. ábra Zavaró tényezők vezeték nélküli hálózatoknál [11] ................................................... 25
17. ábra Vételi jelszint változása távolság arányában [11] ....................................................... 26
18. ábra GPS adatok méréseknél .............................................................................................. 27
19. ábra GPS jel eltérések *19+ ................................................................................................. 28
20. ábra GPS jel elvesztése *19+ ................................................................................................ 29
21. ábra Telefon által látott tornyok száma .............................................................................. 30
22. ábra Vezeték nélküli csatorna [11] ..................................................................................... 30
23. ábra Integritás összegzés .................................................................................................... 31
24. ábra Adatbázis View-okkal lsd. 8-as ábra .......................................................................... 32
25. ábra Szabadtéri hullámterjedés [13] ................................................................................... 33
26. ábra Pathloss függvény ....................................................................................................... 33
27. ábra Haversine függvény [14] ............................................................................................ 33
28. ábra haversin (alfüggvény) [14] ......................................................................................... 34
29. ábra Távolság függvény haversin formulával [14] ............................................................. 34
30. ábra Teljesítmény illetve távolság függvény a Javaban ..................................................... 34
31. ábra Java függvények meghívása ....................................................................................... 34
32. ábra 2B53 torony bejárása/sugárzása ................................................................................. 36
33. ábra 2B53 torony mérési adatai .......................................................................................... 37
34. ábra 27F1 torony mérési adatai .......................................................................................... 37
3
3 Előszó Az emberek mindig is sokat vándoroltak, utaztak. Ehhez szükségük volt valamilyen
tájékozódásra, ami az ókorban valószínűleg valami nagyobb dolog lehetett, mely távolról is
látható volt, ugyanakkor fix a pozíciója. Viszont, ha távolabbra akar menni az ember, szüksége
van más tájékozódási pontokra is. Ezt a problémát hamar abszolválták, amint felfedezték a
csillagok rendszerét. Megnézték hogyan állnak és térképek segítségével, majd az iránytű
felfedezése után még pontosabb és jobb helymeghatározást értek el.
A technika fejlődésével, azon belül is a katonai haditechnológia fejlesztéséből jött létre a GPS
technológia. Először csak katonai célokra használták, majd rájöttek mennyire hasznos a civil
szférában. Erre a rendszerre épül számos útvonal tervező és egy-két bátor telefonszolgáltató is
használja a GPS műholdakat a cellák pontosítására. Ez veszélyes, hiszen a GPS az USA
tulajdona és bármikor megszüntethetik a világ felé a szolgáltatást és akkor ezen rendszerek
használhatatlanná válnak. Ilyenkor egy átlagember megtanulja újra használni a térképet, de
egy erre épülő rendszer szemétté válik.
A navigáció elsősorban valamilyen jármű vagy kiránduló úti céljának megkönnyítésére
szolgál. Hiszen egy nagyvárosban, vagy ahol az ember először jár ott nagyon könnyű
eltévedni, vagy kerülő úton menni. Ehhez hatalmas segítség a GPS, hiszen miután bemérte a
helyzetét és lockolta a műholdakat, folyamatosan frissíteni tudja az állapotát, melyet egy
térképre rajzolva jelentősen megkönnyíti a tájékozódást. Visszatérve a nagyvárosokhoz, itt ha
bemegyünk egy alagútba vagy egy épületen belül akarunk tájékozódni, a GPS jelre nem
számíthatunk, hiszen ez kizárólag külterületen működik. Itt lehet használni egyéb mobil
jeleket, többek között a WLAN hálózatot, vagy GSM hálózatot. Ezekkel pedig úgy lehet
helyzetet meghatározni, hogy a GSM torony által sugározott jelhez viszonyítjuk a távolságot.
Ha több van, akkor ezek metszés pontja.
A dolgozat témája a GSM-es helymeghatározás, előzetes mérések és algoritmusok
alapján, melynek célja, hogy egy egyszerű, ugyanakkor elfogadható normál használatú pozíció
meghatározást legyen képes elvégezni a GSM tulajdonságait kihasználva egyszerű
eszközökkel és algoritmusokkal. Habár az algoritmus képes lesz akár bel térben is pozíciót
meghatározni, mely előny a GPS el szemben viszont ezen adatbázison alapuló rendszer csak
ott működik ahol van mérés, továbbá a GPS technológia pontosságát csak megközelíteni
tudjuk. Ezen két fő rendszer bemutatása miatt szó lesz még a GSM-ről( Global System for
Mobile.), továbbá a GPS-ről Global Positioning System.
4
4 Bevezetés A dolgozat alapja egy olyan fejlesztés, mely offline módban képes helyzetet meghatározni
GSM adótornyok jele alapján egy viszonylag kis adatbázis és egy jól definiált algoritmus
alapján. Az offline mód azt jelenti, hogy nincs szükség internetes kapcsolatra, adatbázis
eléréséhez vagy egyéb adatcserére, illetve a számításokat is helyben a készülék végzi el. Ezzel
kímélve a felhasználót a adatforgalommal járó költségektől illetve a sebesség se lassul emiatt.
Hátránya viszont, hogy lokálisan tárolni kell egy kisebb adatbázist.
Az egész rendszer egy GPS alapon felvett referencia hálózat és egy GSM vételi jelszint térkép
összevetésére alapul. Az adatgyűjtés során különböző eszközökből és különböző módokon
keletkezett adatok kerültek egy “mobilhely” nevű adatbázisba. Az adatbázis GSM adatainak
felhasználásával kell módszert találni a fizikailag közel eső pontok keresésére. Mivel az
adatbázis már jelenlegi formájában is sok rekordot tartalmaz, ha megtalálunk egy jól
használható és paraméterezhető „távolság” fogalmat leíró rendszert, annak segítségével
pozíciót meghatározni is lehet, de alkalmas az adatbázis tömörítésére is. A feladat
megközelítése során kihasználjuk a GSM terjedésről tanultakat, az analízis ismeretek alapján
megpróbálunk veszteségesen tömöríteni valamilyen ismert módszerrel, és a megkívánt
eredmény felől közelítve, előre meghatározott mérési ponthalmazok között teszünk
különbséget. A saját módszereink és mások eredményeinek összevetéséből határozzuk meg a
tovább követendő irányt. Ehhez szükség van már meglévő rendszerek mélyebb
megismeréséhez, továbbá ezen rendszerek elemeinek bevonására.
A dolgozatban bemutatásra kerül az adatbázis felépítése, illetve az adatbázis integritási
problémák keresése, valamint lehetséges javítása, továbbá a GSM hullámterjedés vizsgálata
belvárosi környezetben, és ezzel különböző algoritmusok segítségével távolság meghatározása
a sugárzó torony és a GSM vevő között.
5
5 Abstract People always used to wander and travel a lot. In order to do so there had been a need for
orientation, which in the old-world is likely to be kind of big thing that could have been seen
faraway and it’s position had been fix as well. Though one intends to take further distance he
needs to have other orientation points too. This problem had been solved as soon as the system
of stars had been discovered. Their stand had been studied and by the aid of cartography and
the tracing of needle people could achive more accurate location.
By the progress of technology, especially the due to the developement of field engineering the
GPS came into existence. GPS initially used to be put in practice for military purposes then it
came into use in civvy sphere thanks to the number of utilities it has. This system is being
used by route organizers and some bold telecommunication company also uses the GPS
satellites for the refinement of cells. It is though regarded dangerous since GPS is the property
of the USA which might cease the service any time toward the world and in such a scenario
these systems get useless. In a case like that a laymen pick up again how to use ordinary maps,
but systems built on this technology can be put into trash.
Navigation principally is being used to mitigate the destination of any sort of vehicle or a
picnicker. In a metropolis or in places first set step one get lost easily or taking the longer way
then necessary. GPS appears to be a great help to avoid that since after having set the location
and locked the satellites the actual stead can be upgraded continuosly which displayed on a
screen facilitates the orientation. Turning back to metropolicies if we find ourselves in a tunnel
or inside a building we cannot reckon on GPS signal, because it is operated solely outside.
Other mobile signals can be used here such as WLAN or GSM networks. With these networks
location can be determined by correlating to the source of the taken signal. If there is several
of them then the intersection is to be taken.
The topic of the theory is the GSM-location by prior measures and algorithms and words will
be mentioned about GSM (Global System for Mobile) and GPS (Global Positioning System)
as well.
The bottom line of the script is a development which is able to locate, in offline mode
according to signals of GSM towers by a relatively small database and a well defined
algorithm.
The whole system is rest on the comparison of a reference network based on GPS and a GSM
map of pickup signal. In the course of data collection datas gained with different methods and
tools have been archived into a database called ’mobilhely’. Using the GSM datas of the
database need to find a manner for the seek of points fisically being close together. Since the
6
database in its current format contains plenty of records, and if we manage to find a system
that describes the ’távolság’ notion which could be used effectively and could be parametered
then that enables us to localize a position and could be suitable to upset the database as well.
Approaching the task the studied of GSM sweep shall be used up , based ont he knowledge of
analysis we are trying to upset …. with a known method, and approaching from the requested
result we make a distinction between predefined point agglomeration. Comparing our own
method with the results of others the next step is to be determined. So as to do so we will need
to get deeper knowlegde of already existing systems and additionaly the involvment of the
elements of these systems.
5.1 GPS
A GPS [1] egy műholdakon alapuló helymeghatározó rendszer, mely a föld bármely
pontján képes meghatározni a pozíciót, kivéve épületen belül, föld alatt és egyéb „fedett”
helyeken. A GPS fejlesztése a II. Világ Háborúban kezdődött el katonai célokból, később
rájöttek, hogy a civil életben is nagyon hasznos. Összesen 27 műhold kering folyamatosan a
föld körül nagyjából 19300 km-es magasságban. Ebből összesen 24 műhold van használatban
(3 tartalék), melyek úgy vannak beállítva, hogy pontosan két kört tesz meg naponta
mindegyik, továbbá bármelyik pillanatban a Föld bármely pontján lehessen látni legalább 4
műholdat. A vevő meghatározására úgynevezett háromszögeléses matematikai módszert
alkalmaznak. Ez egy térbeli háromszögelés, melyet síkban könnyű elképzelni. Képzelje el,
hogy Magyarországon van. Béla azt mondja Budapesttől 58 km-re van. Ez eddig egy elég
nagy kör. János azt mondja, hogy Gyulától 170 km-re van, így ahol metszi a két kör egymást
ott van két pontunk, végül Marci azt mondja, hogy Kecskeméttől pedig 15,5 km-re vagyok. Ez
esetben meglenne a pontos pont. De mivel az időt senki nem tudta megmondani, hogy ezek az
adatok pontosan mikor voltak, ezért szükség van a 4 adatra, amellyel ezt a hibát korrigáljuk. A
GPS műholdak is ugyanígy működnek, csak mivel azok térben számolnak, körök helyett
gömbök metszését kalkulálják.
7
1. ábra GPS működése
Egy normális GPS vevő átlagosan 40-50 másodperc alatt képes meghatározni a jelet,
ha nincs rendelkezésére álló segítő eszköz ( AGPS = Assisted GPS ). Ekkor még csak az első
koordináta van meg, de még le kell tölteni ezen adatok mellé a műholdak pályaadatait, amely
még több időt vehet igénybe. Egy ilyen adatforgalom nagyjából 50b/sec-os sebességgel
történik.
Ahhoz, hogy ezen letöltésre ne legyen szükség és ezzel időt spóroljon a rendszer, szükség van
ezekre az adatokra valami más forrásból. Erre az Assisted GPSHiba! A hivatkozási forrás
nem található. erre lett kifejlesztve, melynek feladata a GPS támogatása adatokkal és
számításokkal. Az AGPS feladata, hogy Wifi, vagy 3G-s hálózatról letöltse a következő 7
napra a műholdak pontos helyzetét. Működése négy fő pontból áll:
- A mobilkészülékben található GPS vevő, ami egy „durva” gyors helyzet-
meghatározást végez, mely pontatlan és ezt elküldi a szolgáltató felé.
- a szolgáltatónak a műholdas vétel szempontjából előnyös helyen, stabilan kiépített
GPS-vevője van, valamint elegendő számítási kapacitása, ami a telefontól kapott
információ alapján gyorsan kiszámítja a műholdak helyzetét.
- a mobilkészülék a szolgáltatótól megkapja a műholdak pontosan kiszámított adatait.
- majd a mobilkészülék végül gyorsan kiszámolja a szolgáltatótól kapott adatok alapján
a helyzetét.
Előnye, hogy gyorsabb, kevesebb CPU igénye van, tehát energiában is kifizetődőbb,
ugyanakkor mivel internetes kapcsolat kell hozzá, nem minden telefon előfizető érheti el és
azoknak is kell fizetni valamilyen formában az adatforgalmi díjat. Célunk szintén egy hasonló
elképzelés létrehozása, mely akár offline-ban is működik egy megfelelően tömörített adatbázis
és egy jól definiált algoritmus telefonba való beépítésével.
8
5.2 GSM
A világ mobil távközlési infrastruktúrájának legkorszerűbb hálózata a GSM (Global System
for Mobile Communications) celluláris digitális mobil rádiótelefon-szolgáltatás. A rendszer
kiépítése először természetesen a fejlett országokban kezdődött meg az 1970-es években. Ezek
a hálózatok mind nemzeti szabványok szerint készültek el, így hatósugaruk csak az
országhatárokig tartott. Így először egy „vendég telefont” egy ország nem tudott kiszolgálni,
hiszen a legkisebb eltérés is elég volt ahhoz, hogy ne működjön. Ez a probléma egyre
gyakrabban merült fel. Így felmerült a „határok nélküli mobilszolgáltatás” igénye.
1982 –ben az Európai Országok Postai és Távközlési Szervezeteinek Konferenciája
(CEPT) kijelölt egy nemzetközi szakértői csoportot a probléma megoldására, melynek neve
Groupe Spéciale Mobile volt, ebből ered a GSM rövidítés. Elsődleges feladat tehát az volt,
hogy kidolgozza a páneurópai mobil rádiótelefon-rendszer minden országra kötelező
előírásait, továbbá tartani és bővíteni a régi elvárásokat:
jó hangminőség,
nemzetközi roaming támogatása,
sávszélesség hatékony kihasználása,
alacsony szolgáltatási/kiépítési díj
ISDN támogatása
Handover támogatás
A handover másnéven körzetátadás, akkor hajtódik végre ha a készülék kilép egy körzet
hatósugarából és átlép egy másik körzetbe. Ez úgy történik meg, hogy a fogadó cella
valamelyik forgalmi csatornájára kell áthangolódnia, anélkül, hogy ezt a felhasználó észre
vegye. Tehát hibamentesen és észrevétlenül illetve a szétkapcsolási valószínűséget kevesebb
mint 1% alá szorítani.
A GSM-rendszer rövid idő alatt kinőtte Európát, és a "global" jelzőnek megfelelően az egész
világra kiterjedő, világméretű hálózattá fejlődött. A közép-európai országok közül elsőként
Magyarországon 1990-ben jelent meg az analóg mobiltelefon rendszer, melyet 1993-ban már
digitális hálózatot használó GSM-rendszerek kiépítése követett. Ezek eredetileg csak
hangalapú szolgáltatást nyújtottak. 1993-ban indult GSM tesztrendszer és néhány hónap
múlva a kereskedelmi szolgáltatás. Az első nem európai ország, amely 1992-ben a GSM-
rendszer megvalósítása mellett döntött, Ausztrália volt. Ausztráliát követte Kína, Hong-Kong,
Új-Zéland, Szingapúr, több Arab-öböl menti ország, és a balti államok is a GSM-rendszert
választották a legkorszerűbb mobil rádiótelefon-szolgáltatások bevezetésére.
A GSM-es működés lényeges része a következő ábrán látszódik:
9
2. ábra GSM rendszer modellje és funkcionális felépítése
Jelenleg a számításokhoz szükség van az első kettő részre, melyben a felhasználó a maximum
7 bázis állomásból amit láthat fogadja a jeleket. Megméri milyen erősen fogja a jeleket és
ezekből próbálja majd meghatározni a pozícióját.
A GSM rendszernek lényegében tehát három fő része van. Kapcsoló rendszer ( Network
System ), Bázis Állomás Alrendszer ( Base Station Subsystem ) és a készülék, amellyel
beszélünk.
A Mobil Kapcsoló Központ ( MSC = Mobil Switching Center ) a szíve az egésznek. Az MSC
felel tulajdonképpen mindenért, a hívó és a hívott fél összekapcsolásáért, szétkapcsolásáért,
megszakítás kezeléséért, számlázásért stb. Továbbá össze lehet kötni egy hálózaton belüli
másik MSC-hez, illetve más GSM hálózathoz is.
Két fő adatbázis kapcsolódik az MSC-hez: HLR ( Home Location Register ), illetve a VLR (
Visitor Location Register ). A HLR az előfizetőről tárol adatokat az előfizetői szintekről,
helyzetéről, kiegészítő szolgáltatásokról. Ha egy hívást intéznek az előfizető felé, akkor
mindig a HLR-rel kezdődik el a folyamat, hiszen itt található meg a helyzete és csak így lehet
összekapcsolni a feleket.
A VLR azokról a GSM előfizetői készülékekről tárol információkat, melyek a szolgáltatási
területen az MSC körzeten belül tartózkodnak, de nem tartoznak az adott körzet regisztrált
előfizetői közé. Tehát amikor a felhasználó „bolyong” ( roaming ) a VLR adatok folyamatosan
cserélődnek, és ha a lokációs terület megváltozott, még akkor is, ha a világ másik felén van az
Mobilkészülék Bázisállomás Kapcsoló rendszer
10
előfizető, ehhez viszont szükség van természetesen szerződésre az ottani szolgáltatónak az
előfizető által használt szolgáltatójával.
5.2.1 Bázisállomások működése [2]
A mobiltelefonos beszélgetések alappillérei a bázisállomások. A bázisállomások és a
mobilkészülékek közötti szakaszok közti kapcsolatot elektromágneses hullámokkal jön létre.
Ez egyben megadja a mozgásszabadságot is a felhasználónak, hiszen mozoghat bármerre, ha
pedig kiérne a cella körzetéből, akkor átkerül egy másikba anélkül, hogy a felhasználó
észrevenné. A mobil kommunikáció elképzelhetetlen bázisállomások nélkül.
A bázisállomások kis teljesítményű (néhány 10 watt) adó és vevő
berendezések, ellentétben a nagy teljesítményű TV-adók vagy
URH-rádiók (több 100.000 watt) hatalmas teljesítményével,
viszont hatósugaruk is jóval kisebb. Egy bázisállomás 8
felhasználót tudsz egyszerre kiszolgálni, tehát nagyon sokat kell
kiépíteni belőle. A 900 MHz-es tartomány nagyon telítődik, ezért
hozták be az 1800 MHz-es tartományt is, melynek több frekvencia
tartománya van, amit ki lehet használni, viszont kisebb területet képes lefedni, de ezért
kiválóan alkalmas sűrűn lakott területek lefedéséhez. Átlagosan 1000-1500 új
felhasználónként szükséges új bázisállomás kiépítése. Ez a hátrány számunkra nagy előny,
hiszen minél több a bázisállomás, annál pontosabb a helymeghatározás. Az állomások
elektromágneses hullámait mindig valami magasabb pontra szerelik fel épületek vagy
tartóárbócokra. Fontos megjegyezni, hogy ezek az antennák mindig irányítottak, általában 3
antenna van egy helyen, melyek 120o -ban vannak elhelyezve körben.
Az antennák irányítottan egy kicsit lefele vannak vezérelve, hiszen az antenna magasan, a
mobil készülék pedig alacsonyan van általában. Az antenna intenzitása a távolság arányában
négyzetesen csökken.
3. ábra Cellás elv 3. ábra Bázis állomások elhelyezési logikája
4. ábra GSM antenna működése
11
5.2.2 Cellás elv
A mobil hálózat akkor teljesíti az előírt elvárásokat az előfizetők felé, ha azok mozgás közben
is tudnak telefonálni zavartalanul. Ez csak akkor lehetséges, ha a cellák hézagmentesen lefedik
egymást. Ez a megoldás, ha nagy az átlapolódás az egyes cellák között nagyon gazdaságtalan,
tehát úgy kell megoldani, hogy a lehető legkisebb legyen a méretük. Természetesen tökéletes
lefedés nincsen, tehát csak megközelíteni lehet ezeket az elvárásokat. Magyarországon a
lefedés nagyjából 99%-os [3]. A lefedettségi területeket hatósági előírások szablyák meg,
hiszen nem elég a sűrűn lakott nagy bevételt jelentő területek lefedése és jó kiszolgálása,
kötelező kiépíteni, ha van igény az üdülő szövetkezeteken, ritkán lakott területeken, vagy
éppen vízi útvonalakon is a mobiltelefonos hálózatot [4]. Ebből kifolyólag szinte bárhol lehet
valamilyen helymeghatározást végezni GSM segítségével, viszont előfordulhat az az előbb
említett helyeken, ahol nagy a cella mérete ott a pontatlanság akár több száz méter is lehet.
5. ábra Cellás elv felépítése
A cellás hálózatokban a hívó és a hívott fél mindig egy bázis állomással (BSC) tartja a
kapcsolatot. Továbbá bolyongás közben séta vagy autó, amely gyorsabb, tehát sűrűbben lehet
szükség váltásra. Fontos követelmény, hogy úgy adják át a mozgó mobiltelefont, hogy közben
ne szakadjon meg a hívás. Az elfogadható szétkapcsolás bőven 0.5% alattinak kell lennie.
Ahhoz, hogy minél jobb legyen a hívásveszteség aránya, nagyobb átlapolódás kell a cellák
között, ez jobb lefedettséget is eredményez, de az ára is megnő, továbbá az átlapolódó cellák
zavarhatják egymást. A jó frekvencia felhasználás elengedhetetlen, hiszen korlátozott az
erőforrás és nagyon drága. A frekvencia felvásárlási harc már a mobil telefonok előtt is nagy
volt, hiszen egy-egy rádió is hatalmas árakat fizetett.
A GSM a 900 MHz-et kapta meg illetve az 1800 MHz-et. A 900 MHz-es tartományban 128
rádiófrekvencia jutott, ahol minden egyes rádiófrekvencián 8 darab csatorna fér el, tehát 8
beszélgetést lehet egyszerre végezni rajta. Ez azt jelenti, hogy ha minden frekvenciát egy
12
időben csak egy helyen használnak fel, akkor egész Magyarországon egyszerre csak
8x124=992 csatorna működhetne. Viszont ez nagyon kevés, hiszen statisztikailag legalább
35.000- 40.000 darab beszéd csatorna kell Magyarországra, hiszen minden 20-30 előfizetőre
szükség van egy beszéd csatornára. Ezt viszont csak úgy lehet elérni, ha a frekvenciákat újra
felhasználják. Egy frekvenciát természetesen újra fel lehet használni, de csak úgy, ha az
azonos frekvenciát használó cellák a lehető legkisebb mértékben látják egymást, így a zavarási
lehetőség minimális legyen.
6 Meglévő GSM-es helymeghatározások [5]
A mobiltelefonos helymeghatározást már régóta fejlesztik és már sok meglévő hasznos modell
létezik, melynek nagy részét csak úgy lehet használni, ha tulajdonunkban van nagyon sok
titkos adat, mint például a tornyok helye és sugárzási tulajdonságai.
A mobil helymeghatározó rendszerek lehetnek végberendezés alapúak, illetve hálózat alapúak,
továbbá ennek a kettőnek a kombinációja.
6.1 Leszármaztatott autonóm helymeghatározás
Ez egy egyszerűbb modell, melyben nincs is szükség GSM-es adatokra. Ezt a
módszert használták régen a tengerészek is. Tudjuk a kezdő pontunkat, legyen az GPS
koordináta vagy egy speciális pont. Elindulunk, mérjük a sebességet mellé, az eltelt időt,
továbbá nézzük az irányt és ezen adatokból kialakuló görbéket egyenesekkel közelítjük és így
létrejön az útvonal, valamint kiszámoljuk az aktuális helyzet. Ehhez természetesen, ha
mobiltelefonra akarjuk tenni, akkor a telefonnak rendelkeznie kell sebességmérővel, mely
megtalálható az újabb telefonokban, de erre nem lehet építeni. Természetesen nagy előny,
hogy így nincs szükség GPS jelekre, így működik föld alatt és épületek belsejében is.
6.2 Helymeghatározás bázisállomások azonosítója alapján
Szintén egy egyszerű modell, viszont pontossága változó, hiszen függ egy állomás
lefedettségi méretétől, és ha még kicsi, akkor is nagyon pontatlan. Viszont szintén nagyon
gyors és egyáltalán nincs szükség GPS jelre még az elején sem. Működése nagyon egyszerű, a
telefon fogja a bázis állomás jelét felismeri azonosító alapján amelyiket látja, majd lekérdezi
annak a toronynak a koordinátáját és megtudja melyik körzetben van. Egy kis tovább
fejlesztéssel, ha mozgunk vele, akkor többet is láthatunk, esetleg átlagsebességet, illetve irány
meghatározást.
6.3 Helymeghatározás háromszögeléssel
Lényege, hogy különböző helyeken megvizsgálják, hogy a keresett mobilkészülék jele
melyik irányból érkezik az adótornyok felé. Ezt a módszert használták régen a kalózrádiók
beméréshez is, hiszen ott is rádiós jeleket bocsájtottak ki, melyet így nagyon egyszerűen akár
13
két méréssel is be lehet mérni. Viszont nagyobb pontosság érdekében érdemes több mérést
alkalmazni, több pozícióból.
6.4 Helymeghatározás GPS-GSM-PostgreSQL adatbázis segítségével
Ahogy a bevezetésben lehetett olvasni, itt egy jól használható offline alkalmazás
építhető ki ezen elemek kombinációjaként. Lényege, hogy mérések alapján GPS koordinátákat
rendelünk GSM adatokhoz. Ezeket rendezetten elmentjük egy adatbázisba, majd integritás
ellenőrzés és mérések után egy jól definiált képlet alapján meghatározzuk GSM adatokból az
aktuális pozíciót. A továbbiakban ezen lépésekről lesz szó.
7 Felhasznált programok
7.1 Java [6]
A Java nyelv a C++ nyelvből született meg. Számos helyen lett egyszerűsítve, illetve
esetenként bővítve szerkezete. A Java a C++-hoz hasonlóan objektumorientált programozás.
A dolgozat írásához főleg az adatbázis elérésének támogatását, illetve fájl feldolgozási, illetve
matematikai művelet támogatása lesz igénybe véve. Az adatbázis eléréséhez JDBC drivert
kellet használni, mellyel a megfelelő beállításokkal nagyon gyorsan tudta a program elérni
SQL parancsokkal a mérési eredményeket, majd ezeket feldolgozva Excel (csv) fájlokba
mentette. Valamint Googlemaps (kml) formátumba is kimentette az adatokat, ezzel
lehetőséget adva a térképes megjelenítésre.
14
7.2 GoogleEarth ( kml ) [7]
A Googlemaps által támogatott formátum a kml. A KML egy szabványos térinformatikai
szerkezet. Létrehozása egyszerű. Hasznos funkciók, hogy lehet színezni a jelölőket, illetve
más ábrát is lehet rá tenni. Az ábrán látható jelölést a következő kód hozza létre.
6. ábra GoogleEarth
<?xml version = "1.0" encoding = "UTF-8" ?> <kml> <Document> <Folder>
<Placemark><Style><IconStyle><Icon><href>http://maps.google.com/mapfiles/kml/pal4/ico
n59.png</href></Icon></IconStyle></Style><Point><coordinates>19.071513333333332,47.4
9212166666666</coordinates></Point></Placemark>
<Placemark><Style><IconStyle><color>00000</color></IconStyle></Style><Point><coordi
nates>19.071513333333332,47.49212166666666</coordinates></Point></Placemark>
<Placemark><Style><IconStyle><Icon><href>http://maps.google.com/mapfiles/kml/pal4/ico
n59.png</href></Icon></IconStyle></Style><Point><coordinates>19.071513333333332,47.4
9212166666666</coordinates></Point></Placemark>
<Placemark><Style><IconStyle><color>c3910091</color></IconStyle></Style><Point><co
ordinates>19.071513333333332,47.4921577027027</coordinates></Point></Placemark>
<Placemark><Style><IconStyle><color>c3910091</color></IconStyle></Style><Point><co
ordinates>19.071513333333332, 47.492085630630626</coordinates></Point></Placemark>
<Placemark><Style><IconStyle><color>c3910091</color></IconStyle></Style><Point><co
ordinates>19.071566397806667,47.49212166666666</coordinates></Point></Placemark>
<Placemark><Style><IconStyle><color>c3910091</color></IconStyle></Style><Point><co
ordinates>19.071460268859997,47.49212166666666</coordinates></Point></Placemark>
<Placemark><Style><IconStyle><color>c3910091</color></IconStyle></Style><Point><co
ordinates>19.071550478464665,47.492146891891885</coordinates></Point></Placemark>
<Placemark><Style><IconStyle><color>c3910091</color></IconStyle></Style><Point><co
ordinates>19.071476188202,47.49209644144144</coordinates></Point></Placemark>
<Placemark><Style><IconStyle><color>c3910091</color></IconStyle></Style><Point><co
ordinates>19.071550478464665,47.49209644144144</coordinates></Point></Placemark>
<Placemark><Style><IconStyle><color>c3910091</color></IconStyle></Style><Point><co
15
ordinates>19.071476188202,47.492146891891885</coordinates></Point></Placemark>
<Placemark><Style><IconStyle><color>c3910091</color></IconStyle></Style><Point><co
ordinates>19.07153986557,47.492152657657655</coordinates></Point></Placemark>
</Folder></Document></kml>
7.3 PgAdmin ( PostgreSQL )
Hiba! A hivatkozási forrás nem található. A legnépszerűbb, illetve legmodernebb
OpenSource program postreSQL adatbázis eléréséhez illetve fejlesztéséhez. A következő
operációs rendszereket támogatja: Linux, FreeBSD, Solaris, Mac OSX és Windows, mely
azért fontos, mert a mobilhely adatbázis, melyben az adatok tárolva vannak linux alatt futnak,
ugyanakkor a mérések során a többi programot windows alatt kerül futtatásra.
7.4 Screenshooter
Egy nagyon egyszerű program, mely az F9 segítségével lefényképezi a képernyőn kijelölt
területet és egyből feltölti egy internetes adatbázisba, és ezen képeket nagyon egyszerű
továbbküldeni, illetve egyes méréseket gyorsan dokumentálni.
7.5 Notepad++
[8]Notepad++ egy a Windows jegyzettömbhöz hasonlító szövegszerkesztő, mely sokkal több
szolgáltatást nyújt. Számos programozási nyelv szintaxisát támogatja, ezzel az
áttekinthetőséget jelentősen megkönnyíti.
Notepad++ egyszerű, gyors, könnyen kezelhető, kevés erőforrást igényel. Támogatott
programnyelvek: C, C++, Java, C#, XML,KML, HTML, PHP, CSS, makefile, ASCII art
(.nfo), doxygen, ini file, batch file, Javascript, ASP, VB/VBS, SQL, Objective-C, RC resource
file, Pascal, Perl, Python, Lua, TeX, TCL, Assembler, Ruby, Lisp, Scheme, Properties, Diff,
Smalltalk, Postscript, VHDL, Ada, Caml. AutoIt, KiXtart, Matlab, Verilog, Haskell,
InnoSetup, CMake
16
8 Kezdeti kísérletek: A adatbázisrendszer PostreSQL-ben lett kiépítve mivel ehhez a keretrendszerhez
létezik a Postgis kiegészítő, mely kiválóan alkalmas földrajzi adatbázisok kezelésére, mivel
számos jól használható beépített függvénye van.
Mivel mások is foglalkoztak a témával és nem lett volna célszerű, ha mindenki a
szerveren próbálkozik a megoldásaival, ami addig nem lenne gond amíg mindenki csak és
kizárólag jó megoldásokat talál ki, de több oka is volt annak, amiért szükség volt egy SQL fájl
készítésére, mely betöltése után bárki tudott OFF-line-ban dolgozni. Ezután mindenkinek
lehetősége nyílt a saját gépen local host-on dolgozni, esetleges hibák nem zavarták a többiek
adatbázisát és Online kapcsolatra sem volt szükség. A jó adatokat, táblákat, függvényeket
pedig bármikor fel lehetett tölteni az aktív adatbázisra a következőképpen:
Az adatbázis neve:GSM
Címe : mobilhely.itk.ppke.hu
Port: 5432
username(admin) : postgres
jelszó : 123qwe
17
7. ábra Bejelentkezés az adatbázisba
9 Adatbázis felépítése: [9]Egy két szóban a régi adatbázisról. Az adatbázist az utóbbi pár évben különböző
eszközökön való mérések alapján töltötték fel több mint 250 000 adattal. Három eszközzel
készítették a méréseket. Először egy SAMBA 75 GSM/GPRS modem, mely egy notebookra
volt kötve. Ez a szerkezet 7 bázisállomást mért GPS koordinátával, továbbá ellátott minden
mérést egy id-val.
Így két fajta mérést végeztek mozgó és úgynevezett helyhez kötöttet (hosszú
méréseket). Ez sokban hasonlított az előző mérésekhez is, csak itt nem volt GPS koordináta.
Két fő okból. Mivel fedett térben nem vehető a GPS jel, továbbá nem sok értelme van több
héten át egyhelyben maradó egységnek a GPS koordinátáit is külön bevinni. Az
RxLevFull,RxLevSub, RxQual, RxQualFull, RxQualSub, Idle TS paramétereket, melyek
elsősorban hívás közben kapnak szerepet.
Míg a későbbiekben, amikor többek között a mi csapatunk is mért, a Maczák Balázs
féle androidos mobil méréssel mértek és mérünk sokat [10]. Ez egy mobil androidos software,
mely majdnem minden androidos telefonon működik kisebb hibákkal. Ennek továbbfejlesztése
18
és bugok kijavítása folyamatban van. Legnagyobb hibája a telefon kapacitásának gyengesége,
mivel egy-egy mérés nagyon sok adatot foglal magába.
9.1 SQL adatbázis: Az adatbázisunk természetesen teljesen ugyanolyan felépítésű, mint a régebbi MySQL
adatbázis.
Összesen hét tábla van, melyben a legfontosabb adatok a GPS és a GSM táblák tartalmazzák.
Minden táblában megtalálható az ID, mellyel jól össze van kapcsolva, így könnyen meg lehet
találni az adatokat.
9.1.1 Táblák felépítése: A következő pár sorban a táblák felépítéséről, valamint a fontosabb mezőik
tulajdonságairól lesz szó. Így a későbbi eligazodás is könnyebbé válik. A következő oldalon
látható a táblák felépítése és kapcsolati rajza.
19
10 Adatbázis felépítése, táblák kapcsolata
8. ábra Adatbázis felépítése [9]
20
10.1.1 Legfontosabb táblák:
Ezen táblák már az átírt PostgreSQL táblák.
GPS:
9. ábra GPS tábla
id: saját ID minden GPS mérési bejegyzéshez
mid measure ID – Device táblázohz kapcsoló melyik mérőműszerrel készült ->
lat latitude, azaz É-D hosszúsági fok
lng longitude, azaz K-NY szélességi fok
sats a GPS vevő által látott műholdak száma. Egy pontos meghatározáshoz,
legalább 4 műhold látására van szükség. De akár 3 is elfogadható ha
nincsenek egy síkban.
alt altitude, azaz tengerszint feletti magasság
Az adatbázis egyik legfontosabb táblája, az id, ami egy egyedi azonosító, mely azonosítja a
rekordokat. A lat és a lng mező kombinációja adja meg GPS koordinátákat, melyek négyes
tagolási formában vannak. Ezen adatokat Google maps kompatibilissá kell hozni ahhoz,
hogy ábrázolni lehessen és a feldolgozás megkönnyítése végett. Ezen feladatot a következő
programrészlet végzi el:
10. ábra Koordináta átváltó
21
GSM:
11. ábra GSM tábla
id egyedi azonosító minden bejegyzéshez
gid GPS ID, kapcsolódási pont a GPS táblához
cid Cell table ID, kapcsolódási pont a CELL táblához (nem a cell_id! mely a cella
azonosítója)
rxlev rssi, a vett rádió jel erőssége (0..63 dBm között)
Szintén egy id-val van azonosítva minden rekord. Az aktuális rekord GPS adatait a gid
segítségével lehet elérni, továbbá a szükséges cella információkért a cid felel. Az rxlev mező
a vételi jel teljesítményét tárolja dBm-ben.
22
CELL:
12. ábra CELL tábla
id minden bejegyzéshez egyedi azonosító
mcc Mobile Country Code: mobil országkód, melynek hossza 3 számjegy, és
egyértelműen meghatározza a mobil előfizető hálózata szerinti országot. A
mobil
országkódokat az ITU jelöli ki. Magyarország mobil országkódja: 216.
Jelenleg csak Budapesti mérések kellenek, ezért csak a 216-os országkódos
mérések maradtak, valamint az egyéb helyeken a komment tábla
segítségével lettek kiszűrve. (lsd. rendszerintegritások).
mnc Mobile Network Code: mobil hálózati kód, melynek hossza két számjegy.
Az
MNC az MCC-vel együtt egyértelműen meghatározza a mobil rádiótelefon
szolgáltatást igénybe vevő végberendezés vagy előfizető honos hálózatát. Az
MNC az
MCC-vel együtt, a mobil szolgáltatást nyújtó hálózatokkal jelzéstechnikailag
kompatibilis szolgáltatás nyújtása céljából egyértelműen azonosíthat helyhez
kötött
telefonhálózatot vagy hálózat csoportot is. A mobil hálózati kódot a hatóság
jelöli ki.
A kijelölés feltételeit külön jogszabály tartalmazza.
lac : Location Area Code: A 4 számjegyből álló azonosító, ami egy nagyobb
terület azonosítására szolgál.
ci : Cell Identifier: 4 hexadecimalális számjegyből álló azonosító, ami
azonosítja a
cellát, mely szintén alkalmas egy már kisebb terület azonosítására.
23
bsic Base station identity code: a mobil készüléket segíti a különböző
szomszédos
bázisállomások megkülönböztetésében. A BSIC egy úgy nevezett „színkód",
ami azt
jelenti, hogy a szomszédos cellák más képzeletbeli színnel vannak jelölve, és
nem
lehet egymás mellett két azonos színű cella.
freq az a frekvencia, amin az adótorony sugároz ( 900 Mhz/1800 Mhz ).
Ezeket az adatokat kell később felhasználni a távolságok kiszámításához az
Okamura-Hata modell segítségével.
10.1.1.1 További fontosabb táblák:
Comments:
13. ábra Comments tábla
id egyedi azonosító.
mid összekapcsoló pont a measurement táblázathoz.
string maga a comment. Itt főleg időjárási adatok találhatók. Fontos adat, mivel
számottevő különbségek voltak például esős, ködös, illetve tiszta időben mért
jelerősségek között. Ködös időben akár 20 %-kal erősebb lehet a csillapítás.
24
Measurement:
14. ábra Measurement tábla
id egyedi azonosító
did kapcsoló pont a a device táblához
date a mérési dátum időpontja
Ez a tábla kapcsolja össze a Device( Eszköz ) táblát a mérésekkel., továbbá ellátja őket egy
dátum bélyeggel.
Device:
15. ábra Device tábla
id egyedi azonosító
name a mérőműszer neve
Nagy szükség van a mérőműszereket és a velük való méréseket összekötni, hiszen ha
felfedezünk egy hibát egy műszerben, akkor egyszerűen tudjuk lokalizálni az azonosítójával
az adatbázisban.
Minden eszköz egyedi tulajdonságú, hiszen bármilyen eltérés az antennában, vagy a műszer
szerkezetében megváltoztathatja a jel vett erősségét, illetve pontosságát. Ezért, ha egy mérés
után kiderül, hogy az eszköz hibás volt, akkor könnyen lehet csak a rossz méréseket javítani,
vagy törölni az adatbázis többi részének piszkálása nélkül.
25
11 Hibaforrások a mobiltelefonos helymeghatározásban A következőkben bemutatom feladatom második részét, melyben lehetséges hibákat
kutattam, majd azokat igyekeztem kiszedni az adatbázisból.
Az első részben a vezeték nélküli csatorna legfőbb ellenségeit mutatom be. Majd ezek után a
rendszerintegritások keretében az adatbázisból kiszűrt adatokkal foglalkozom.
12 Több utas terjedés és Fading Látható, hogy nagyon sok különböző mérés típus van, melyből a későbbi munkához
csak olyanok kellenek, melyeket lehet használni és megfelel elvárásoknak. Továbbá mint
minden mérőműszer, ezeknek is vannak mérési hibái. Tehát olyan GPS koordinátákra van
szükség, melyek lockolva vannak, tehát pontosságuk elfogadható és a GSM jelerősségi
adatok, melyeket nem, vagy csak elfogadható mértékben zavarnak a fading és a több utas
terjedéses zavaró jelenségek.
Látható, hogy a jelszint a távolsággal nagyjából arányos, ha kevés a zavaró tényező, de a
következő ábrákon viszont kitűnik, hogy a valóságban nem ilyen szép a jel terjedési képe.
16. ábra Zavaró tényezők vezeték nélküli hálózatoknál [11]
A három legfontosabb zavaró tényező a következő három:
– Reflections / reflekció
– Scattering / szóródás
– Diffraction / elhajlás
26
17. ábra Vételi jelszint változása távolság arányában [11]
A fenti ábra pedig a fading jelenséget mutatja be a távolság arányában. Megfigyelhető, hogy
ugyan a távolsággal csökken átlagban, de semmi egyéb információt nem tudunk róla és ez
sajnos minden mérés során előfordul.
Ezért foglalkoztam sokat a második feladatommal, melyben rendszerintegritásokat kerestem,
többek közt az ilyen hibák és anomáliák csökkentése érdekében.
13 Rendszerintegritások: Egy rendszer akkor jó, ha minél gyorsabban eléri a kívánt célt, továbbá nem
tartalmaz, illetve nem ad fel hibás adatokat. Előzőekben láthattuk, hogy a vezeték nélküli
méréseknél számos zavaró tényezővel állunk szemben. Ezen károk adatbázisunk
minőségének romlásával jár. Ezeket az adatokat jelentősen csökkenteni kell.
Jelen helyzetben egy hely meghatározása nem tarthat sokáig, hiszen ha a felhasználó utazik a
buszon vagy bármilyen járműben és az adatok túl sok ideig utaznak, majd a rendszer
lassúsága miatt a feldolgozás is lassú mire visszaér a felhasználóhoz, az eredménnyel
valószínűleg már elavult lesz. Ha nagyjából 50 km/h–val utazik, és az adat 8-10 mp alatt
érkezik meg, addig akár 100 métert is megtehet, mely elég ahhoz, hogy későn szálljon le a
buszról, vagy rossz helyen forduljon le. Természetesen ezt nem csak az adatbázis lassúsága,
illetve az adatok feldolgozási ideje határozza meg, hanem a kapcsolódási idő, ezért kell
ezeket a tényezőket eltüntetni, vagy minimalizálni. Így szükség van a rendszert mindig
javítani, gyorsítani.
27
Szükséges a rendszer integritásokat vizsgálni, melyek a rendszer hibáit vagy a rendszerben
fölösleges adatokat szűri ki. Továbbá ezen javításokból új view-ok létrehozása a cél.
Az adatbázisban a mérési adatok úgy voltak eltárolva, hogy az egy mérésnél látható
maximum 7 cella azonosító egyenként külön rekordban voltak elmentve azonos id-val. Az
adatbázis hosszban legalább 5-6-szoros méretett okozott. Ezen adatokat Réti Dániel egy
sor/oszlop transzformációval egy rekordba transzformálta, így az adatbázis tömörebb lett és
az azonos adatok egy rekordba kerültek adatvesztés nélkül [12]. Az integritási vizsgálatban
ezen adatbázis volt felhasználva.
13.1 GPS hibák: Először is azokat kell kiemelni, mely méréseknél nincsen GPS jel, mivel ha nincs pozíció a
méréshez kapcsolva, nem lehet számításokat végezni vele. Ilyen mérésből összesen 9711
van.
18. ábra GPS adatok méréseknél
Az adatbázisban 1994 cella id van és összesen 1991 kerül felhasználásra GPS-hez, tehát van
3 olyan, ami nem használ felesleges adatot. Ezek valószínűleg törölt adatok után maradtak
meg.
Továbbá a mérőműszerek hibáiból kifolyólag számos pontatlansági hibát fedeztem fel.
Ilyenek például irreális helyzetek és az útvonal pontatlan meghatározása. Ez várható volt,
hiszen az útvonaltervező programok is használnak útra igazítást, továbbá útvonal
egyenesítést.
25758
9711
GPS adatok
GPS ON
GPS OFF
28
A következő képeken látható, hogy a GPS pontossága elég széles skálán mozog. Hiszen egy
belvárosi mérésnél a magas vasbeton alapú épületek nagyon erősen fogják és torzítják a
jeleket. Ahogy a képen látható, általában az út mellé teszi a pozíciót. Ez annak köszönhető,
hogy a műhold „ferdén lát rá” a vevőre, így arról az oldalról reflektálódik vissza a jel és ezért
tolódik el a pozíció a másik irányba. Ezeket a hibákat a GPS-es programok egy egyszerű útra
húzással oldják meg, mely egyszerűen a legközelebbi útra teszi a felhasználót.
19. ábra GPS jel eltérések [19]
29
Valamint, ha elmegy a GPS jel a rendszer
továbbra is halad az eddigi irányba addig, amíg
nem fogja be újra a jelet, mert ekkor jönnek a
nyílegyenes irányok, jobb esetben a NULL GPS
jelű mérések.
13.2 Torony láthatósági zavarok Vannak olyan mérések, ahol feltehetően mérési hibák miatt vagy egyéb zavarok miatt túl sok
torony tartozik egy méréshez (7+), ez azért probléma, mert a mérőműszer maximum hetet
tud látni, ebből összesen 59 mérés van. Ignorálva lettek azok az esetek, ahol azért van több
torony, mert egy helyben végeztünk a mérést, így esetleges toronyváltozások miatt lett több
objektum látható.
A másik véglet a tornyok láthatóságában, ha kevés látszik, mert így a meghatározás
pontossága jelentősen csökken. Ha öt, hat vagy hét tornyot észlelünk, azt fogadjuk el.
Összesen 35469 ilyen mérés van mely <=5 és <=7, továbbá kiszűrhetjük azokat a cellákat,
melyek ötnél kevesebb és hétnél több tornyot látnak. Előbbiből 5672 van, míg az utóbbiból
az előzőekben olvashatjuk, hogy 59, ez összesen 5731.
20. ábra GPS jel elvesztése [19]
30
21. ábra Telefon által látott tornyok száma
22. ábra Vezeték nélküli csatorna [11]
Mint minden vezeték nélküli rendszernél, itt is előjön a legveszélyesebb zavaró tényező, a
fading. Először is az alacsony RX level-ket szűrjük ki, melyek 0 közeliek, nagyjából kisebb,
mint 3. Ebből 595 adat van, míg a túl nagy RX-level> 63, mely szintén a fading miatt
történhet, mivel a mérőműszer eleve nem tud akkora számot tárolni. Ilyenből 453 adatunk
van.
Tehát rossz RX level miatt a használhatatlan adatok száma: 1048.
Nagyon hasznos adat a Local Area Cell_ID, amely adattal eleve egy kis területre szűkítjük a
számításainkat. Méréseink alapján ilyenből 47 egyedi létezik, melyek közül 9 budapesti
(csak Budapesten számolunk egyelőre).
5672
35469
59
Látható tornyok száma
<=5
<5, <7 // Számolásraalkalmas
>=7
Vezeték nélküli csatorna
31
.
Összefoglalva 9711+59+5672+595+453 = 16472 adat van, melyre nincs szükség, tehát ezek
nélkül létre kell hozni egy view-t, így csökkentve az adatokat, növelve a sebességet.
Helyes és használható adatból pedig 35469+47 áll rendelkezésre.
Az új view-ok létrehozásával, melyben már az eddig felismert hibáktól mentesek, mértéke
nagyjából 26% volt, ezek elkészültek és további mérési és számítási munkákra alkalmasak.
Látható, hogy ez egy elég nagy arány és valószínű, hogy a későbbi bővítések során is
szükség lesz további integritás keresésekre.
23. ábra Integritás összegzés
Budapest; LAC; 9
Egyéb; LAC; 38
Budapest
Egyéb
35516
16472
Sum
Értékes adat
Felesleges adat
32
24. ábra Adatbázis View-okkal lsd. 8-as ábra
33
14 Hullámterjedés vizsgálat A hullámterjedés vizsgálata során továbbra is a PostgreSQL-t adatbázis adataira volt szükség. A
lekérdezésekhez Java-t, a programozáshoz és a fájlok és adatok feldolgozásához, megjelenítéshez
Excel táblák kerültek alkalmazásra grafikonok ábrázolásának segítségével.
Első lépésben azokat a tornyok kerültek megvizsgálásra, melyek nagyon sok mérésünkben láthattunk,
így elegendő adatunk volt eldönteni az algoritmusunkról, hogy megfelelő-e.
Ezen tornyok főleg a nyolcadik kerületben voltak az egyetem környékén. A szabadtéri rádiós
hullámterjedés teljesítménye a távolság arányában, melyet komm. rendszerek tanulmányaim során
tanultam, majdnem tökéletesen lefedték méréseinket, minimális eltéréseket észleltünk.
A képlet:
25. ábra Szabadtéri hullámterjedés [13]
PT = átviteli teljesítmény / transmitted power
Ae = antenna tényleges mérete / effective area of antenna
G = antenna nyereség / gain of antenna
λ = hullámhossz / wavelength
A path loss (veszteség) képlete:
26. ábra Pathloss függvény
A bázisállomás (adótorony) helyzete nem ismert és nem is nyilvános adat a szolgáltatók részéről. A
torony helyzetét mindig a legerősebb mérési pontnak feltételeztük, és az ahhoz képesti távolságok
kiszámolása a haversine formula segítségével lehetséges [10].
27. ábra Haversine függvény [14]
.
34
Ahol a haversin függvény :
28. ábra haversin (alfüggvény) [14]
Ahol az a szélességi fokok, a hosszúsági fokok, ”r” a föld sugara, „d” pedig a
távolság:
29. ábra Távolság függvény haversin formulával [14]
Ezen két képlet kombinációjára volt szükség ahhoz, hogy ki lehessen számolni a várt, illetve a mért
teljesítményt a tornyok körzetében, melyet a következő Java kód hajt végre:
30. ábra Teljesítmény illetve távolság függvény a Javaban
Következőképpen lehet meghívni:
31. ábra Java függvények meghívása
Egy ciklus segítségével megy végig a program a mérési ponton, ahol a „tmp” változik és az „r” mindig
az aktuális torony legerősebb pontja, mely tornyonként fix. Erre az „r” adatra és a hozzá tartozó
teljesítményre, illetve a két koordinátára lesz csak szükség a későbbiekben, ha az algoritmus
35
megfelelően működik. A többi adat, mely tornyonként változó, de átlagosan 95% fölött van, ki lehet
dobni.
Miután megvoltak a távolságok, illetve a hozzátartozó teljesítmények, már meg lehetett nézni, hogy
simulnak rá a pontok a várható görbénkre. Eleinte csak pár toronyra néztem meg, kb 20-ra, és amikor
láttuk, hogy működik és csupán a torony azonosítója és a jelszint értékével akár 5-10 méteres
pontosságot tudtunk elérni, mely megfelel egy GSM alapú helymeghatározásunkhoz egyelőre.
A számolások menete eleinte úgy ment, hogy kézzel kiszedtem egy számomra szimpatikus torony
adatait, azokat exportáltam egy Excel táblába, majd feldolgoztam egy Java programban. Fontos
megjegyezni, hogy minden mérésnél az egyes tornyok sugárzását mindig gömbsugárzónak lettek
beállítva, mivel a megfelelő algoritmus még nincs meg arra, hogy el lehessen dönteni, hogy szektor
vagy gömbsugárzó. A kettő sugárzó között az a különbség, hogy a szektor sugárzó egy vonalban
sugároz erősen, mely a távolság arányában nagyjából négyzetesen csökken, míg oldal irányban kisebb
ható sugárral, illetve sokkal rosszabb a jel csökkenése a távolság arányában. Ilyeneket tesznek
sugárutakra vagy körutakra, autópályák mellé. Míg a gömbsugárzó egy kör alakban sugároz, ez a
legelterjedtebb. Ebből az okból kifolyólag lehet feltételezni, hogy minden torony gömbsugárzó,
illetve, ami nem felel meg a gömbsugárzó tulajdonságainak vagy éppen nagyon eltér a mérésektől
egyszerűen ki lehet dobni, hiszen rengeteg bázis állomás van, főleg a sűrűn lakott Budapesten. A
mérések és a számítások két dimenzióban lettek kalkulálva. Úgy lett megoldva, hogy 360o-ban a
pontok síkra lettek hajtva két fő tengelyre bontva, mely a távolság illetve teljesítmény. Ennek az a
hátránya, hogy nem lehet tudni, hogy a toronyhoz viszonyítva az adat melyik irányban található, de ez
nem is olyan fontos, hiszen elég az is, hogy nagyjából milyen messze van a toronytól. Elvégre sok
torony van sok adattal, így lehet használni az ívmetszéses vagy a háromszögeléses algoritmusokat a
helyzet meghatározásához. A következő képen látható a 2B53-as torony feltételezett középpontja,
mely a legerősebb mért jelhez lett beállítva, továbbá sárga jelzéssel a mért adatok. A piros kör sugarak
a torony besugárzási területét határozná meg. Azonban ez nem jó, mert ezen ábráknál a kör sugara
függ a teljesítménytől, ami négyzetesen csökken, továbbá, ha nincs több mérés, akkor leáll a további
sugarakat készítő függvény, tehát ezek a körök csak a jobb átláthatóságot biztosítják.
36
32. ábra 2B53 torony bejárása/sugárzása
Egy-egy torony adatairól több statisztika készült. Vannak táblák, melyekben minden adat fel lett
sorolva, többek között a várt értékek 0-1000 méterig, mellette a méréseink koordinátákkal, távolsággal
a legerősebb ponttól, teljesítménye, eltérése számításainktól. Utóbbi a legfontosabb, hiszen ezen
alapján tudjuk, mennyire vagyunk pontosak. A számítás a következőn alapul: integráltam az összes
négyzetes különbségnek a gyökét. Ezek mellet volt egy olyan tábla, ami „kellemesebb” a szemnek,
melyben csak a lényeges adatok vannak, így elvárás, mérési adat, eltérés. A következő ábrák olyan
Excel táblákból készültek, melyeknek négy fő oszlopa volt. A piros vonal a várható adatok. Ezek a
legerősebb jelszinti koordinátához képest kiszámoltunk a fent említett képlettel milyen jelerősséget
várunk el egyre növekvő távolságnál. A kék vonal pedig a mért adatok az adatbázisból, melyek a
táblázatban egy távolság az imént említett legerősebb ponttól és a teljesítmény értéke a fenti képlettel.
Ezen két görbe egymásra illesztésével jöttek létre a grafikonok.:
37
33. ábra 2B53 torony mérési adatai
Látható, hogy a mért (kék) adatok ráilleszkednek a várt (piros) adatok által generált logaritmikus trend
vonalra. Megfigyelhető, hogy nem „folytonos” a mért pontok halmaza. A kisebb szünetek
valószínűleg a bolyongás közben olyan helyzetek, ahol nagyobb házak vagy fal lehet, mely
leárnyékolta az aktuális tornyot, illetve az is előfordulhat, hogy egyszerűen egy másik toronynak
erősebb volt a jele, és kiesett a 7 torony listájából, melyet a telefon tárol a környező tornyokról. Ilyenre
egy másik példa a 27F1 toronyból készített grafikon, mely 50-100 méter között eltűnik az aktuális
mérésnél.
34. ábra 27F1 torony mérési adatai
Megfigyelhető, hogy a várható illetve a mért adatok logaritmikus trendvonala, majdnem egymásra
illeszkedik, csak nagyobb távolság esetén kezd eltérni.
-40
-30
-20
-10
0
10
20
0 100 200 300 400 500 Várt
Mért
Log. (Várt)
-30
-20
-10
0
10
20
30
0 50 100 150 200
Várt
Mért
Log. (Várt)
Log. (Mért)
38
Ezek alapján, ha egy jól körülmért helyen, ahol legalább 4-5 torony található az adatbázisban
megfelelő adatokkal és azok mind körsugárzók. Akkor, ha a teljesítmény számoló függvényből
kifejezzük a távolságot, akkor ezen függvény segítségével meg lehet határozni, hogy az egyes
tornyoktól milyen messze van a készülék, majd ívmetszéses algoritmus segítségével meg lehet
határozni elfogadható mértékben a pozíciót.
Az távolság függvény a következő:
√
Ahol a Tx az adó teljesítménye, amely adatot az adatbázisból lehet kiszedni azonosító alapján, az Rx a
vevő teljesítménye, melyet a telefon mér. A lambda a hullámhossz a hullámhossz lehet 7,5 illetve 15
cm, illetve a pl(x)a csillapítás mértéke (lásd [24]-es ábra).
Ez természetesen messze nem pontos, de egy civil felhasználásra, ha 10-20 méteres pontatlanságot el
lehet fogadni, és további mérésekkel és adatgyűjtéssel lehet pontosítani, illetve a lefedettséget növelni.
39
15 Konklúzió A mobilhely adatbázis vizsgálata során, számos értékes adatot sikerült felfedezni. Melyek nagy részét
egyből lehetett használni, egy-egy adatot pedig konvertálni kellet ahhoz, hogy a jelen mérések során
fellehessen használni. Ilyenek voltak a GPS koordináták melyek 49xx.xxxx illetve 19xx.xxxx
formátumba voltak. Viszont a Google Earth KML formátumot használ mely a 19.xxxxx és 49.xxxxx
formátumot támogatja így a [10]-es ábrán látható konvertáló KML kompatibilissé alakította.
Miután az összes fontos attribútum össze lett válogatva következhetett az integritás ellenőrzés. Hiszen
az adatbázisban eddig csak „ömlesztve” voltak az adatok. Nem volt probléma, ha hibás, vagy esetleg
hiányos. Utóbbi legsűrűbben akkor fordult elő amikor a GPS vevő még nem fogta be a pozíciót,
ellenben viszont a GSM adatok már folyamatosan tárolódtak. Ilyenkor a GPS koordináták nullák
voltak, ezek tesztelésen kivételével semmire sem jók, tesztelésre is csak akkor, ha tudjuk, hogy hol
készült a mérés. A hibás adatok pedig számos helyen előfordulhattak a jel torzult, vagy az eszköznek
voltak hibái. Nagy problémát okozhatott például, egy hibás vételi jelszint. Hiszen volt több olyan adat
mely kimutatott a mérési tartományon és ha ezek az adatok bent maradtak volna ezen hibás adatok
bírtak volna a legnagyobb súllyal és teljesen eltérítették volna a helyzet meghatározást az aktuális
pontokon. Az ilyen hibák vagy hiányosságok az adatbázis több mint 25%-át tették ki. Ezeket sikerült
elhárítani, és új viewokat létrehozni. Az új viewok segítségével már sokkal jobb méréseket lehet
végezni, hiszen mentesek az összes integritási hiba melyet sikerült felfedezni az adatbázisban, továbbá
a mérete is kisebb mint az eredeti tábla, bár az SQL olyan gyors, hogy ezt a növekedés csak minimális.
A hullámterjedés vizsgálata során az legfőképpen az Okumura-Hata modell, illetve a Dr. Takács
György Infocom System című előadásait tanulmányoztam [13]. Végül az utóbbi előadás sorozatban
található képlet felhasználásával (lásd: [25]-as ábra ) melyben a távolság kiszámításához, a haversine
függvény segítségével ( lásd [29]-es ábra ) . Ezen algoritmus finomításával foglalkoztam, hogy a
lehető legjobb meghatározást lehessen elérni az adatbázis adatainak segítségével. Itt készítettem az
összes celláról egy várható érték sorozatot méterre és teljesítményre lebontva, továbbá a mért adatokat
is konvertáltam a megfelelő formátumban és ezeket szintén méter és teljesítmény párokba
kigyűjtöttem. Ezen adatokat egy külön excel fáljba kigyűjtöttem, majd ábrázoltam őket.
Ezen ábrákon sikerült még megfigyelni, a terjedési körülményeket belvárosi viszonyokban, ahol
nagyon sok helyen megfigyelhető volt, hogy az adott cella jele egy bizonyos szakaszon eltűnt. Ezek
valószínűleg mindig valamilyen nagyobb épületek takarása miatt jöhettek elő. Ilyen zavaró tényezők
vidéken sokkal ritkábban fordultak elő, hiszen ott sokkal homogénebb a környezet és ritkább a
vasbeton szerkezet.
Azt is sikerült megfigyelni, hogy a szektor sugárzókat érdemes, egy az egyben kiszedni a méréseknél,
hiszen azok olyan hosszú területet képesek besugározni egyenletesen az sugárban, míg a szélességben
40
minimálisan, továbbá éppen elegendő körsugárzó áll rendelkezésre, hogy ne kelljen hiányolni a
szektorsugárzókat.
Végül az ábrázolt ábrákon látszódik, hogy a várható illetve a mért görbék minimális eltérést mutatnak,
így ha a teljesítmény függvényből kifejezzük a távolságot akkor, ezek után ha megvan a cella
azonosító továbbá a hozzátartozó vételi jelszint. Akkor ha a készülékben megtalálható egy csökkentett
adatbázis mely áll az összes cella azonosítójából, a hozzá tartozó legerősebb jelszinttel, továbbá a
legerősebb jelszint vételi koordinátája. Akkor már meglehet határozni, hogy hány méterre van az adott
cellától.
A kutatások során végül, az adatbázisból sikerült kiszedni a helytelen adatokat, illetve a
hullámterjedés vizsgálata során sikerült találni egy jó algoritmus, mellyel egy várható görbét sikerült
létrehozni minden egyes cellához a távolság függvényében, és ezekre jól rásimult a mért adatokra. Ezt
kihasználva, az adatbázisból lehet készíteni egy olyan kisebb adatbázist, melyben csak a cellák vannak
benne azonosítóval, a hozzátartozó legerősebb vett jellel illetve a pozíciójával. Továbbá ha ez az
adatbázis meg van akkor, ha egy programba implementáljuk a távolság algoritmust illetve hozzáférést
biztosítunk az új adatbázishoz akkor képesek leszünk helyzetet meghatározni ott ahol elegendő cella
információ van.
Nagy előnye az, hogy bel téren is működhet internet kapcsolat nélkül, akár gyorsan is. Hátránya
viszont az, hogy sokkal pontatlanabb lesz valószínűleg, mint a GPS, továbbá csak azokon a helyeken
működik ahol ki van mérve. Továbbá fenn áll annak is a veszélye, hogy a cellát átalakítják, és ezzel
esetleg megszűnik a régi és egy újat állítanak be, akkor tovább csökkenhet a hatákonyásg. Az utóbbi
problémákat meglehetne, úgy oldani, hogy a készülék folyamatosan gyűjtene adatokat, ha rendelkezik
GPS vevővel és a felhasználó engedélyezi, és ha elegendő adat összegyűlt akkor a felhasználó
engedélyével folyamatosan lehetne bővíteni az adatbázist. Majd az új adatokat az eddigi módszerekkel
meg kell még tisztítani illetve az adatokat betömöríteni az új adatbázisba. Ezzel a módszerrel
dinamikusan nőhet a lefedettségi területünk.
41
16 Köszönetnyilvánítás Elsősorban köszönöm szépen a családomnak a támogatást.
Tihanyi Attilának a nagyon sok segítséget a konzultációk során illetve, azt hogy bármikor
felkereshettem problémákkal illetve mindig ellátott jó tanácsokkal.
Szabó Dánielnek, aki segített helyesírási hibákat javítani.
Továbbá azoknak, akik szintén hasonló témákkal foglalkoztam különböző megközelítéssel, hogy
sikerült jó csapatot létrehozni, és ha probléma volt, vagy tanács kellet lehetett egymáshoz fordulni
42
17 Irodalomjegyzék
[1] Pápai Attila. (2009, Apr.) PDAplus. *Online+. http://pdaplus.hu/content/view/3567/67/
[2] Telekom. (2012) A mobil technológia műszaki háttere.
http://www.telekom.hu/static/sw/download/a_mobil_technologia_muszaki_hattere.pdf.
[3] T-mobile. (2012) t-mobile.hu. [Online]. http://www.t-
mobile.hu/lakossagi/ugyintezes/lefedettseg/gsm
[4] Takács György, Távközlő hálózatok tervezése, 2012, Előadás.
[5] Takács György, "Helymeghatározás mobiltelefonnal és mobil hálózattal," Pázmány Péter
Katolikus Egyetem, Információs Technológiai Kar, 2008.
[6] Oracle, Java SE Tutorial, 2012, http://docs.oracle.com/javase/tutorial/.
[7] Google, KML Documentation, 2012, https://developers.google.com/kml/documentation/.
[8] Don Ho. (2011) notepad-plus-plus. [Online]. http://notepad-plus-plus.org/
[9] Kelemen Mihály, GSM alapú helymeghatározás Nagy mennyiség adat rögzítése, tárolása,
valamint megjelenítése GSM alapú helymeghatározáshoz , 2010.
[10] Maczák Balázs, GSM alapú helymeghatározó alkalmazás készítése Andrioid környezetben, 2010.
[11] Oláh András, Introduction to Wireless Communication Networking Technologies, 2011.
[12] Réti Dániel, "Turisztikai alkamazás készítése GSM alapú helymeghatározáshoz," PPKE-ITK,
Önállólabor beszámoló 2011.
[13] Takács György, Infocom Systems, 2011, előadás.
[14] M. and Stegun Abramowitz, , Irene A. Stegun Milton Abramowitz, Ed. New York, Dover: Dover
Books on Mathematics, 1972, p. 18.
[15] u-blox. (2012, november) u-blox. [Online]. http://www.u-blox.com/en/assisted-gps.html
[16] OpenSource, pgAdmin, http://www.pgadmin.org/index.php.
[17] dr Tanszer István, Telekommunikációs rendszerek, 2000.
[18] ismeretlen. (2012, november) GSM felépítése.
[19] iGo, http://www.igonavigation.com/, Navigációs program.
43
[20] Bob Chamberlain. (2002) Finding distances based on Latitude and Longitude.
http://andrew.hedges.name/experiments/haversine/.
[21] Gergely Feldhoffer, Attila Tihanyi, György Takács Balázs Bányai, "A New Positioning Concept in
GSM Networks," 2009.
44
18 Mellékletek A mellékelt CD-n megtalálhatók a JAVA programok melyek az adatfeldolgozáshoz használtam
Tartalmazza a Database.java-t, mely az adatbázisból gyűjti ki a megfelelő cella adatokat és a
hozzájuk tartozó egyéb információkkal együtt, az Excel táblákba.
A Main.java mely különböző osztályok segítségével feldolgozza az előbb említett fáljokat és
készít belőlük egy KML fáljt, melyet meglehet nyitni Google Earth-el, továbbá készít egy elemezést,
hogy az adott cellának, milyenek a jelerősségi adatai. Vizsgálja, mik lehetnek a várható értékek
különböző távolságok mellet, illetve mellé illeszti az adatbázisból kivett mért adatok jelerősségét.
Majd ezen adatokat egymás mellé illeszti, melyből lehet grafikonokat készíteni.
A CD-n továbbá megtalálhatók a fáljok melyeket a program készített, illetve azon fáljok, melyeket
kézzel készítettem. Előbbiből több mint 3000 db van, míg utóbbiból készítettem egy
„osszevalogatott” Excel fálj melyben több cella van kigyűjtve grafikonokkal ellátva.