Az előző
hetekben elég sok hozzászólás érkezett GPS óra ügyben, és
egyre érett bennem az elhatározás, hogy írok egy kis
háttéranyagot ehhez, persze nem tudományos alaposságút.
Vannak ismereteim, de nem vagyok szakértője a témának, ezt
azért közlöm előre, nehogy valaki elővegye a Duning-Krüger
hatást. (ha érdekel mi ez, keress rá a nagy G-n)
A GPS rendszer
alapjait az 1970-es évek végén az USA védelmi minisztériuma
fejlesztette ki katonai célokra. Eleinte véletlenszerű hibát
tettek a rendszer adataiba, hogy idegen hatalmak ne tudják
azt használni, ismereteim szerint ezt ma már nem teszik.
Kétféle frekvencián (L1, L2) sugározzák ki a GPS műholdak
(31 db) az információt. Nem katonai felhasználásra csak az
L1 frekvencián van lehetőség, de itt az információ
„sűrűsége” alacsonyabb, mint az L2-n, nyilván a katonai
felhasználás a fő irány. A műholdak kb. 20.000 km
magasságban keringenek, rajtuk atomóra biztosítja, hogy a
pontos időt ki tudják sugározni, amiket a földről időnként
frissítenek. A műholdak periodikusán kisugározzák a saját
azonosítójukat, az atomórájuk idejét, a föld feletti
magasságukat, és a hosszúsági, szélességű koordinátájukat,
valamint még az összes műhold hozzávetőleges helyzetét. Ez
utóbbi adat sokáig érvényben marad, mert a műholdak mozgása
előre „elrendezett”, a bekapcsolt GPS vevő az – előző
működésekor – eltárolt adatok előre számításából tudja, hogy
mely műholdakra kell számítson. Ha pl. autóval elmegyünk
1.000 km-t, vagy 3-4 hónapig nem kapcsoljuk be a GPS vevőt
(ekkor már elévülhetnek az adatok), akkor sokkal több időbe
telik, amíg megtalálja a műholdak jelét.
Most írok néhány
műszak információt is, hátha valakit érdekel, majd
magyarázom is:
GPS
sensitivity (érzékenység)
Acquisition (keresés) -148 dB (deci Bell)
Tracking
(követés) -160 dB
A GPS vevőkben
egy nagy teljesítményű 32 byteos RISC processzor végzi a
rádiófrekvenciás vevőből érkező jelek detektálását és
értelmezését, amit statisztikai alapon végez, hiszen „tudja”
miféle jeleket keres. Amikor már megtalálta a műholdak
jeleit és csak arra kell figyeljen, el ne veszítse őket
(követés), akkor elegendő, ha a bejövő jelben 100 milliószor
nagyobb a zaj, mint a jel, ezt fejezi ki a -160 DB
(=20*log(jel/zaj)). Azért ízlelgessük egy kicsit, ez az
arány azonos azzal, mintha az 1 mm-t 10 km távolsággal
osztanánk! A műholdak keresése közben a zaj/jel arány nem
lehet nagyobb, mint 25 millió.
A holdak
megtalálása nagyobb számítási kapacitást igényel, emiatt
nagyobb fogyasztása ekkor a GPS chipnek, sőt, ha rosszak a
vételi viszonyok, szűk kanyon, párás ködös, felhős az idő,
akkor is nő a fogyasztás.
Hogyan is
kalkulálja ki a GPS vevő azt, hogy hol vagyunk? A dekódolt
jelekből tudja egy adott műholdról, hogy az hol van, az
atomóra jeléből tudja, hogy mikor sugározta azt ki a hold, a
saját órája alapján kiszámítja a különbséget, amennyi idő
alatt ért el hozzá a jel, ebből a két adatból (meg a fény
terjedési sebességéből) meghatározza a műhold távolságát, de
ez nem elegendő a vevő térbeli elhelyezkedésének
megállapításához, mert legalább 4 műhold adataira van
szüksége, hogy a saját helyét kiszámítsa (minél több
műholdat lát, annál pontosabb lehet a helymeghatározása). A
pontosságot az is befolyásolja, hogy a műholdak milyen szög
alatt látszanak, pl. ha közvetlen felettünk van 4 műhold, az
rosszabb eredményt ad, mintha ezek a horizont felett
lennének.
Mi befolyásolja
jelentősen a GPS pontatlanságát:
A műhold
atomórájának pontossága : 1,5 m
Pályahiba :
2,5 m
Ionoszféra :
5,0 m
Troposzféra : 0,5
m
A fény terjedési
sebességét vákuumban adják meg, viszont a légkör nem vákuum,
emiatt itt lassabban haladnak a rádióhullámok, de az
összetételtől (pl. vízgőz) függően is változik a fény
terjedési sebessége.
Ezek a
pontatlanságok is statisztikai számok, tehát pillanatról
pillanatra változnak, emiatt a GPS vevő által számolt
pozíció is változik minden másodpercben, még akkor is, ha a
vevő nem mozog. Ha mozog, akkor ezek a hibák hozzáadódnak a
számolt értékhez. Ha a sebességünkre vagyunk kíváncsiak,
akkor pl. másodpercenként (t1-t0=1) megnézzük mi a pozíciónk
(P), és a P1(x,y,z,t1)-P0(x,y,z,t0)/(t1-t0) képlettel
kiszámítjuk. A P(x,y,z,t) kifejezés azt adja, hogy az x,y,z
pozíciónk a t pillanatban éppen micsoda.
Igen ám, de a P1
és a P0 érték is hibával terhelt, emiatt áll elő az a
helyzet, hogy azt mondja az egyszeri felhasználó: „szar a
GPS” mert ugrálnak az értékek.
Igen ugrálnak,
de nem szar a GPS, mert ezeket az ugrálásokat lehet a
feldolgozó szoftverben simítani, de csak egy határig
(kijelezni nem a másodpercenkénti értékekből számolt adatot
kell, hanem hosszabb időszak átlagolt adatait kell erre
használni, persze nem lehet 20-30 mp a simítás ideje, mert
akkor a kijelzőn nem változnának az értékek). Ha a hibák
mértéke megnő, mert kevés műholdat lát (szűk kanyon), nagyon
legyengül a jel (párás idő, a lombok árnyékoló hatása
miatt), akkor jól szűrő szoftver esetén is ugrálni fog nem
csak a sebesség, de a meredekség értéke is. A sebesség
ugrálás kiküszöbölésére lehet feltenni kerékfordulat
jeladót, amivel a sebesség jel legalább pontosabb lesz.
Ebből is kétféle van, az egyik - a régebbi – a
kerékfordulatot egy mágnes, és egy érzékelő segítségével
detektálja , a másik – az újabb fajta – gyorsulásérzékelős.
Ez utóbbiról
szólnék pár szót. Ahogy általános iskolában tanultuk, a
forgó mozgás, sugár irányú gyorsulást hoz létre, amit
centripetális gyorsulásnak neveznek. Ezt hivatott érzékelni,
mérni a gyorsulás érzékelős kerékfordulat mérő. Na, de
hogyan csinálja ezt? Mielőtt ezt elmondanám, először
képzeljük el, hogy a bringát az oldalára fektetjük úgy, hogy
az első tengelye függőleges legyen (azt feltételezem, hogy
az első agyra van rögzítve az érzékelő). Ha ekkor
megforgatjuk a kereket, akkor az érzékelő csak azt „érzi”,
hogy a gyorsulás nullától eltérő, de szinte állandó, csak a
forgás csillapodása miatt lép fel egy kis gyorsulás
(lassulás). Ugyan nem próbáltam ki, de a működési elv miatt
ekkor nem kellene semmit mutatnia a jeladó jeleit vevő
GPS-es bringás órának. Viszont, ha a tengely vízszintes
lesz, a forgás síkja pedig függőleges, akkor az érzékelő más
a földi gravitációs gyorsulást is bele fogja mérni a forgás
által okozott gyorsulásba. Ennek hatására, amikor a földhöz
közelebb lesz a jeladó, akkor a gravitációs gyorsuláshoz
hozzáadódik a forgásból adódó gyorsulás, amikor fél kör
múlva a kör felső holtpontján lesz a jeladó, akkor a
forgásból eredő gyorsulásból levonódik a gravitációs
gyorsulásból. Ezt a változást pedig nem nehéz detektálni,
azt kell nézni, hogy egy maximum és egy minimum között
periodikusan változik a mért érték. Hurrá, már van is egy
egyszerű eszközünk, amivel pompásan lehet a kerék forgását
detektálni és még mágnest sem kel a küllőre rögzíteni. Hát,
nem éppen. A nem éppen az egyszerű eszközre és a pompásan
lehet kijelentésre is vonatkozik. Mert hát, lássuk be az
utak nem teljesen simák, emiatt a kerék nem csak forog,
hanem fel-le úgrál, hullámzik. Az így keletkező
gyorsulásokat a szenzor érzékeli – hiszen honnan tudná, hogy
azt nem kell – és a kiértékelő kis mikrokontroller máris
bajba kerülhet, ha a forgásból eredő jelet az út
egyenetlenségei miatti zavarjel jelentősen megváltoztatja.
Ezt megint szoftveresen lehet szűrni, nyilván itt is
többféle hatékonyságú, és számításigényű szűrés lehetséges.
Ha a GPS-es kütyü tervezője költségcsökkentési okból kisebb
számítási kapacitással jellemezhető – így olcsóbb - „agyat”
tervez az eszközbe, máris csak az egyszerűbb, de kisebb
hatékonyságú szűrést lehet megvalósítani. Ez is lehet az oka
egyes „óráknál”, hogy az 5 km/h alatti sebességnél már nem
mutatja a sebességet. Egy 2 m kerületű kerék esetén ez azt
jelenti, hogy kb. 0,7 fordulatot tesz meg a kerék, ilyenkor
már a forgásból eredő gyorsulás igen alacsony érték, nehéz
eldönteni, hogy forog-e a kerék, vagy nem, mert az út
egyenetlenségeiből adódó gyorsulás már nagyobb lehet a
forgásból eredőnél.
Ezen kis kitérő
után nézzük meg is mérünk meredekséget? Megmérjük, hogy
időegység alatt mennyi volt a szint változás (dH, ez a
GPS-ből, vagy a magasságmérőből jövő adat) , megmérjük
mennyit haladtunk (dZ, ez a GPS-ből, vagy a kerék jeladóból
származó adat) és a meredekség a dH/dZ összefüggéssel
számolható. Igen ám (újra), de a GPS pillanatnyi
magasságmérési hibája nagyobb, mint az x-y síkban fellépő
mérési hiba, ezt úgy próbálták kiküszöbölni, hogy nem a GPS
magasságmérését veszik alapul a pillanatnyi magasság
meghatározásakor, hanem barometrikus magasságmérőt
használnak erre a célra, ami a légnyomás változásából
számítja ki a magasság változását. Ekkor újabb nyűg lép elő
a sötétből, hiszen a légnyomás alapú magasságmérőnek meg
kell valahogy adni a kezdő magasságot, mert a user szeretné
látni nemcsak a meredekséget, de a konkrét magasságot is.
Kétféleképpen
lehet megadni a barometrikus magasságmérőnek a kezdő
magasságot:
1. kézzel,
2. ha már van
GPS-ünk, akkor az is megadhatja bekapcsolás után, ha már
elegendő adata van erre.
Sajnos a
légnyomás még egy adott ponton sem állandó az időben, függ
az időjárás változásától, mindenki látott már barométert,
amire szépen felrajzolták a nagyobb nyomású tartományba,
hogy szép idő, az alacsonyabb nyomású tartományba, hogy eső.
A
magasságmérésre a barometrikus mérés sem csodaszer, mert
ehhez meg kell még a hőmérséklet ismerete is, viszont a
környezet hőmérsékletét nehéz jól mérni, mivel pl. a
napsütés felmelegíti az eszközt, és máris nem a levegő
hőmérsékletét méri. Ha menet közben érkezik egy front, akkor
a légnyomás változni fog akkor is, ha éppen a Hortobágyon
tekerünk. Ha esik egy zápor, akkor a levegő sűrűsége is
változik a vízpára miatt.
Ezekből talán
látható, hogy ez a tenyérben elférő kis kütyü (GPS-es
bringás óra), a háttérben piszok bonyolult és sok
problémával terhelt, a komfortos működés erősen függ a
hardver és a szoftver jóságától is. Az, hogy melyiket
tekintjük jónak, használhatónak erősen függ a felhasználó
elvárásaitól is.
Még talán annyi
infó, hogy egy GPS chip, ami képes a műholdak által
kisugárzott jelek vételére, dekódolására, a hely
meghatározására, kb. 2.000 Ft, egy barometrikus magasságmérő
chip kb. 500-1.500 Ft, egy mikrokontroller, ami az egész
működését összehangolja, kb. 2.000 Ft, kijelző kb. 2-5.000
Ft, az akku 1.000 Ft, a doboz lehet talán újabb 1.000 Ft.
Joggal merül fel a kérdés, hogy mi kerül ezen a vackon
30-200.000 Ft-ba (aki nem ismeri, nézze meg a ”Mi kerül ezen
a fotelon 7.200 Ft-ba” című jelenetet Márkus Lászlóval).
Nyilván vannak még szoftver fejlesztők, akiknek a bére –
főleg, ha USA gyártmány – akkor nem kevés, van még reklám,
szállítás, a kiskereskedelmi árrése, és az ÁFA. Meg persze a
gyártó nyeresége, ami a legnagyobb rész benne, hiszen az
ilyen jellegű eszközök vásárlói hajlandóak sok pénzt
kifizetni a hobbijuk kiteljesedéséért, egy olyan
készülékért, ami az adatok iránti vágyakat ki tudja
elégíteni, mert ne felejtsük el, hogy sokkal több adatot tud
szolgáltatni egy ilyen eszköz, mint a szokásos vezetékes
kerékpáros óra.
Véleményem
szerint két GPS-t használó eszköz között nem csak a hardver
különbsége miatt lehet használati értékbeli különbség, hanem
a szoftverek fejlesztőinek tudása és koncepciók
különbözősége miatt.
Aki ezt
végigolvasta, az magáénak vallhatja azt a manapság elterjedt
mondást, miszerint: „régen minden jobb volt”. Igen, a faék
egyszerűségű dolgok nem szoktak elromlani, de lássuk be, a
faék egy nagyon unalmas dolog, a GPS meg érdekes és
izgalmas, a térképes támogatással pedig bőven túlnő a múlt
eszközein. Még egy dolog jutott eszembe, ami nem ide
tartozik, de ideírom. Amikor az amerikaiak, meg az oroszok a
világűr meghódítására készültek, felmerült az amikban, hogy
kellene egy olyan toll, ami gravitáció hiányában, nagyon
alacsony hőmérsékleten is tud írni, aminek kifejlesztésére
több millió dollárt elköltöttek, de a fáradozást siker
koronázta. Az oroszok grafit ceruzát használtak…