GPS-alap´ u nyomvonalk¨ ovet˝ o megval´ os´ıt´ asa DSP-n TDK dolgozat
Bencze Bal´ azs Ill´ es Gergely V´ egh Tam´ as
IV. ´evfolyamos villamosm´ern¨ok hallgat´ok
2008.
Konzulens: Moln´ ar K´ aroly M´ er´ estechnika ´ es Inform´ aci´ os Rendszerek Tansz´ ek
Tartalomjegyz´ ek 1. El˝ osz´ o
4
2. Bevezet˝ o 2.1. Nyomvonalk¨ ovet´es a mez˝ogazdas´agban . . 2.2. A megval´ os´ıtott nyomvonalk¨ovet˝o . . . . . 2.3. A GPS-rendszer . . . . . . . . . . . . . . . 2.3.1. Glob´ alis helymeghat´aroz´as . . . . 2.3.2. A GPS el˝ onyei . . . . . . . . . . . 2.4. A piacon tal´ alhat´ o megold´asok ´attekint´ese 2.4.1. EZ-Guide . . . . . . . . . . . . . . 2.4.2. Centerline 220 . . . . . . . . . . . 2.4.3. Landasin Sirio 2 . . . . . . . . . . 2.4.4. Landasin Skipper . . . . . . . . . . ¨ 2.4.5. Osszefoglal´ as . . . . . . . . . . . .
. . . . . . . . . . .
. . . . . . . . . . .
. . . . . . . . . . .
. . . . . . . . . . .
. . . . . . . . . . .
. . . . . . . . . . .
. . . . . . . . . . .
. . . . . . . . . . .
. . . . . . . . . . .
. . . . . . . . . . .
. . . . . . . . . . .
. . . . . . . . . . .
. . . . . . . . . . .
3. Rendszerterv
5 5 6 6 6 7 7 7 8 8 8 8 10
4. Hardver 4.1. DSP k´artya . . . . . . . . . . . . 4.2. GPS-vev˝ o . . . . . . . . . . . . . 4.3. Szintilleszt˝ o´ aramk¨ or . . . . . . . 4.4. Gyorsul´ asm´er˝ o . . . . . . . . . . 4.5. Gyorsul´ asm´er˝ o illeszt´ese DSP-hez
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
12 12 14 15 16 19
5. K´ alm´ an-sz˝ ur˝ o 5.1. Elm´eleti ´ attekint´es . . . . . . . . . . . . . . . . . 5.1.1. K´ alm´an-sz˝ ur´es megval´os´ıt´asa . . . . . . . 5.2. GPS poz´ıci´o jav´ıt´ asa K´alm´an-sz˝ ur˝ovel . . . . . . 5.3. Sz´or´ asok becsl´ese . . . . . . . . . . . . . . . . . . 5.4. Koordin´ atatranszform´aci´ o . . . . . . . . . . . . . 5.5. Szimul´aci´ os eredm´enyek . . . . . . . . . . . . . . 5.5.1. Szimul´aci´ o ide´ alis adatokon . . . . . . . . 5.5.2. Szimul´aci´ o val´os adatokon . . . . . . . . . 5.6. Steady State K´ alm´an sz˝ ur˝o megval´os´ıt´asa DSP-n 5.7. Interpol´ aci´ o . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . .
. . . . . . . . . .
. . . . . . . . . .
. . . . . . . . . .
. . . . . . . . . .
. . . . . . . . . .
. . . . . . . . . .
. . . . . . . . . .
. . . . . . . . . .
21 21 24 25 27 30 32 33 35 38 40
2
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
6. Szoftver 6.1. Haszn´ alati u ´ tmutat´ o . . . . . . . . . . . . . . . . . . . . . . . 6.2. Szoftver rendszerterv . . . . . . . . . . . . . . . . . . . . . . . 6.2.1. GPS interrupt . . . . . . . . . . . . . . . . . . . . . . 6.2.2. Timer 1 interrupt . . . . . . . . . . . . . . . . . . . . . 6.2.3. Timer 2 interrupt . . . . . . . . . . . . . . . . . . . . . 6.2.4. PC-interf´esz interrupt . . . . . . . . . . . . . . . . . . 6.3. Adatok fogad´ asa, t´ arol´asa, feldolgoz´ asa . . . . . . . . . . . . . 6.3.1. DSP input – az NMEA mondatok . . . . . . . . . . . 6.3.2. Koordin´ at´ak kinyer´ese, let´ arol´asa . . . . . . . . . . . . 6.3.3. Poz´ıci´oadat ´ertelmez´eseinek lehet˝os´egei . . . . . . . . 6.4. Nyomvonalk¨ ovet˝o m˝ uk¨od´esi m´odjai . . . . . . . . . . . . . . . 6.4.1. Egy nyomvonal ment´en t¨ort´en˝o halad´as . . . . . . . . 6.4.2. F¨ oldter¨ ulet p´ arhuzamos nyomvonalakon val´o bej´ ar´asa
. . . . . . . . . . . . .
. . . . . . . . . . . . .
42 42 46 46 47 47 47 49 49 49 52 58 58 59
7. A rendszer tesztel´ ese 7.1. F¨ oldter¨ ulet bej´ ar´ asa 4 sarokpont felv´etel´evel . . . . . 7.2. K´et pontra illesztett nyomvonal k¨ovet´ese . . . . . . . 7.3. Koordin´ at´ak korrekci´ oja K´alm´an-sz˝ ur˝ovel . . . . . . 7.4. Koordin´ at´ak korrekci´ oja interpol´al´o K´alm´an-sz˝ ur˝ovel 7.5. M´er´esi eredm´enyek ¨ osszefoglal´asa . . . . . . . . . . .
. . . . .
. . . . .
63 63 64 65 66 67
¨ 8. Osszefoglal´ as, kitekint´ es
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
68
1. fejezet
El˝ osz´ o TDK munk´ ank sor´an egy intelligens mez˝ogazdas´agi eszk¨ozt, egy GPS alap´ u nyomvonalk¨ ovet˝ot val´ os´ıtottunk meg. Miut´ an ´ attekintett¨ unk a kereskedelmi forgalomban kaphat´o ilyen eszk¨oz¨oket, u ´ gy d¨ ont¨ ott¨ unk, hogy egy saj´at eszk¨ozt hozunk l´etre egy DSP alap´ u fejleszt˝ oi k´artya ´es egy ´ atlagos k´epess´eg˝ u GPS vev˝ o seg´ıts´eg´evel. Egy-egy nagyobb pontoss´ agot ig´enyl˝ o feladathoz – mint amilyen a dolgozatunkban megval´os´ıtott nyomvonalk¨ ovet˝o – nem sz¨ uks´eges a sok esetben k´etszeres, h´ aromszoros ´aron beszerezhet˝ o nagyobb pontoss´ag´ u vev˝ ot megv´ as´arolni. Napjainkban a sz´eles k¨ orben elterjedt mikrokontrollerek, DSP-k olyan nagy sz´am´ıt´asi kapacit´ assal rendelkeznek, hogy bonyolultabb sz˝ ur˝oalgoritmusok is futtathat´oak rajtuk. A nyomvonalk¨ ovet´es els˝o l´ep´ese, hogy a j´arm˝ u poz´ıci´oj´ at pontosan ismerj¨ uk, adott esetben pontosabban, mint amennyire egy ´atlagos GPS–vev˝ o szolg´ altatni tudja. Ehhez egy tov´abbi szenzort – egy k´etir´any´ u gyorsul´ asm´er˝ot is felhaszn´altunk a poz´ıci´o ki´ert´ekel´es´ere. Ahhoz, hogy mindk´et szenzor m´er´esi eremdm´enyeit felhaszn´alhassuk, egy – a villamosm´ern¨ oki gyakorlatban sz´eles k¨orben haszn´alt – K´alm´an-sz˝ ur˝o megval´ os´ıt´ asa mellett d¨ ont¨ ott¨ unk. Ez az elj´ar´as egy optim´ alis becsl´est ad a val´os poz´ıci´ora a szenzorok m´er´esi eredm´enyeinek sz´or´as´anak pontos ismerete eset´en. A m´odszer arra is alkalmas, hogy az eredeti vev˝ oh¨oz k´epest sokkal nagyobb adats˝ ur˝ us´eggel szolg´ altat poz´ıci´oadatot, hi´anyz´ o adat eset´en megbecs¨ uli az aktu´alis poz´ıci´ot. A nyomvonalk¨ ovet˝o szoftver k´epes k´et pontra illesztett egyenest k¨ovetni, egy tetsz˝ oleges n´egysz¨ og alak´ u ter¨ uletre p´ aly´at tervezni ´es ezen a p´ aly´an v´egig ir´ any´ıtani egy j´ arm˝ uvet.
4
2. fejezet
Bevezet˝ o A korai ´ okorban m´ar sz´ amos helymeghat´aroz´asi t¨orekv´es l´etezett. Az utaz´ ok, felfedez˝ ok, hogy ne t´evedjenek el, megjel¨olt´ek a megtett utat, pl. u ´ tmenti k¨ovekkel, vagy fest´ekkel. Ha azonban az es˝o lemosta a fest´eket, vagy a h´ o belepte a k¨ oveket, a m´odszer meghi´ usult. K´es˝obb a tengereken m´ar haj´oztak, a felfedez˝ ok gyakran a csillagok seg´ıts´eg´et k´ert´ek” helyzet¨ uk meghat´aroz´as´ara. A tengeri ” navig´aci´ oval p´ arhuzamosan a t´erk´ep´eszet is folyamatosan fejl˝od¨ott. Egyre jobb t´erk´epeket k´esz´ıtettek, egyre nagyobb lett az ig´eny a m´er´esek pontoss´ag´anak n¨ ovel´es´ere. Ezek a meglehet˝osen nagy pontatlans´ag´ u m´er´esek a kor ig´enyeinek megfeleltek, de az id˝o el˝ orehaladt´aval m´as ter¨ uleteken is megmutatkozott a pontosabb glob´alis helymeghat´aroz´as ir´ anti ig´eny. Ma a glob´alis helymeghat´aroz´as egyik legelterjedtebb eszk¨oze a Glob´ alis Helymeghat´aroz´o Rendszer – a GPS (Global Positioning System) – az Amerikai V´edelmi Miniszt´erium ´ altal kifejlesztett m˝ uholdas helymeghat´aroz´o rendszer. Seg´ıts´eg´evel nagy pontoss´aggal m´erhet¨ unk id˝ot, 3 dimenzi´ os helyzetet, sebess´eget, illetve t¨ obb, ezekb˝ ol a m´ert adatokb´ol sz´armaztatott mennyis´eget. Mindezen n¨ ovekv˝ o ig´enyek hat´as´ara, a megl´ev˝ o technik´anak k¨osz¨onhet˝oen a m˝ uholdas helymeghat´aroz´as igen nagy teret h´ od´ıtott mag´anak. A helyzetmeghat´aroz´as egyik speci´ alis probl´em´ aja a nyomvonalk¨ovet´es. Az ember sz´ amos ter¨ uleten tal´ alkozik a nyomvonalk¨ovet´es probl´em´ aj´ aval, legyen sz´ o ak´ ar egy egyenes vonal, ak´ ar egy komplett p´ alya, ”mozg´asi terv” k¨ovet´es´er˝ ol. Egy egyenes p´ alya k¨ ovet´ese eset´en pontos poz´ıci´oadatok sz¨ uks´egesek a helyes ir´ anytart´ashoz. A halad´as k¨ozben az aktu´alis helyzetb˝ ol sz´am´ıtanunk kell a p´ aly´at´ol val´ o elt´er´es¨ unk m´ert´ek´et a p´ aly´antart´ashoz sz¨ uks´eges korrekci´o elv´egz´es´ehez. Az egyenes vonal´ u nyomvonalk¨ovet´esnek, p´eld´ aul a v´ızi k¨ozleked´esben elengedhetetlen szerepe van. A k´et pont k¨oz¨ott legr¨ovidebb u ´ t az egyenes” elvet ” alkalmazva – a tengerj´ ar´ o haj´ oknak nagy pontoss´aggal kell ismerni¨ uk aktu´alis helyzet¨ uket, mozg´ asukat, p´ aly´ajukr´ol val´o esetleges let´er´eskor a helyes ir´ anykorrekci´ ot.
2.1.
Nyomvonalk¨ ovet´ es a mez˝ ogazdas´ agban
A polg´ ari alkalmaz´asok k¨ oz¨ ul – a mez˝ogazdas´agban – a nyomvonalk¨ovet´esi alkalmaz´asra fektet¨ unk nagy hangs´ ulyt. Tekints¨ unk egy term˝ oter¨ uletet, amelyen
5
k¨ ul¨ onb¨ oz˝o g´epi munk´ alatokat kell folytatni a term´es betakar´ıt´as´aig. A n¨ov´enyek m˝ utr´ agy´az´as´ an´al, permetez´es´en´el nagy sz¨ uks´eg van az egyenes vonal´ u mozg´as betart´ as´ ara. Minimaliz´ alnunk kell a permetez´esnek egy adott s´avban t¨ort´en˝o ”´ atlapol´ od´as´ at”, azaz a p´ arhuzamos nyomvezet´es min´el pontosabban val´o biztos´ıt´ as´ at. Vegy¨ unk egy p´eld´ at: El kell ker¨ uln¨ unk, hogy a permetez˝ o traktor, vagy egy vet˝og´ep egy adott szakaszon k´etszer is ´atmenjen, vagy t´ ul k¨ozel ker¨ ulj¨on egy m´ar kor´ abban kezelt sorhoz. Ehhez sz¨ uks´eges, hogy pontosan ismerje az ´altala bej´ art p´ aly´at, ´es ahhoz a fordul´asokn´ al igazodni tudjon, esetleges menet k¨ozbeni p´ alyaront´ asokkor a helyes korrekci´ot a vezet˝o el tudja v´egezni.
2.2.
A megval´ os´ıtott nyomvonalk¨ ovet˝ o
Jelen dolgozatban bemutatunk egy saj´at fejleszt´es˝ u nyomvonalk¨ovet˝o eszk¨ ozt, amely GPS m´er´esen alapul. Poz´ıci´onk pontoss´ag´at K´alm´an-sz˝ ur˝ovel n¨ovelj¨ uk, ´ıgy a vev˝ oegys´eg ´ altal szolg´ altatott poz´ıci´oadatokb´ ol kiindulva egy u ´ j, pontosabb rendszert fejlesztett¨ unk ki. Ehhez sz¨ uks´eg van a mozg´as valamely jellemz˝ oj´et – a GPS vev˝ ot˝ol f¨ uggetlen¨ ul – m´er˝o szenzorra, eset¨ unkben egy gyorsul´ asm´er˝ ore. A m´odszer el˝ onye az is, hogy GPS koordin´ at´ak kimarad´asa eset´en is lehets´eges a poz´ıci´o becsl´ese. Az algoritmus a GPS–vev˝ o adats˝ ur˝ us´eg´en´el gyakrabban is k´epes becs¨ ult koordin´at´akat kisz´ am´ıtani. Az eszk¨ oz ´es a k¨ ulvil´ag – eset¨ unkben egy PC – k¨oz¨ott egy interf´eszt biztos´ıtunk, tekintettel a k´es˝ obbi tov´abbfejleszt´esre. Az interf´esz egy k´etir´any´ u soros kapcsolat, amellyel parancsokat adhatunk, v´altogathatunk az u zemm´ o ¨ dok k¨ oz¨ ott, illetve a k´es˝ obbi adatfeldolgoz´ast, fejleszt´est el˝oseg´ıtve logolhatjuk m´er´es¨ unket. Az eszk¨ oz rendszerterv´et l´asd a 3. fejezetben. A nyomvonalk¨ovet˝o hardverei a 4. Hardver fejezetben ker¨ ulnek bemutat´ asra, K´alm´an-sz˝ ur˝o ´es a szoftver r´eszletes ismertet´es´ere, az 5. ´es a 6. fejezetekben ker¨ ul sor.
2.3. 2.3.1.
A GPS-rendszer Glob´ alis helymeghat´ aroz´ as
A Glob´ alis helymeghat´aroz´as – idegen kifejez´essel ´elve GPS (Global Positioning System) – az Amerikai V´edelmi Miniszt´erium ´altal kifejlesztett m˝ uholdas helymeghat´aroz´o rendszer. Seg´ıts´eg´evel rendk´ıv¨ uli pontoss´aggal m´erhet¨ unk id˝ot, 3 dimenzi´ os helyzetet, illetve sebess´eget. A helymeghat´aroz´as 24 db m˝ uhold seg´ıts´eg´evel t¨ort´enik, amelyek egym´ ast´ ol j´ol elk¨ ul¨ on´ıtett p´ aly´an keringenek a F¨old k¨or¨ ul megk¨ozel´ıt˝oleg 20200 km magass´ agban (2.1. ´ abra). A tiszta ´egbolton egyszerre legal´ abb 7 m˝ uhold l´athat´o, de poz´ıci´onk meghat´aroz´as´ ara kevesebb is elegend˝o. A pontos koordin´at´at 3 m˝ uhold egy¨ uttes k¨ ozrem˝ uk¨ od´es´evel m´erhetj¨ uk meg, tengerszint feletti magass´ ag m´er´es´ehez egy tov´abbi m˝ uhold jelenl´et´ere van sz¨ uks´eg.[1] A helymeghat´aroz´as elve gyakorlatilag id˝om´er´esen alapul – ´ıgy az id˝om´er´es pontoss´ aga nagyr´eszt befoly´ asolja a bel˝ole sz´armaztatott poz´ıci´o m´er´es´enek pontoss´ ag´at. Ismerj¨ uk egy halad´o elektrom´ agneses hull´ am terjed´esi sebess´eg´et, azaz ha pontosan meg tudjuk hat´arozni az ad´as ´es a v´etel k¨oz¨ott eltelt id˝ot, onnan sz´ armaztathat´o az ad´o ´es a vev˝ o egym´ ashoz viszony´ıtott t´ avols´aga. Ez
6
2.1. ´ abra. A F¨ old k¨ or¨ ul kering˝ o 24 m˝ uhold ”fant´ aziarajza”.
ut´an a m´er´est t¨ obbsz¨ or elv´egezve a t´erben h´ arom ismert pontt´ol val´o t´ avols´ag ismeret´eben m´ar meghat´arozhat´o a poz´ıci´onk.
2.3.2.
A GPS el˝ onyei
A GPS rendszerrel t¨ ort´en˝o megval´os´ıt´as a k¨ovetkez˝o el˝ony¨okkel j´ar: • A m´er´es pontoss´ aga el´eri a 80-100 cm-t, amely m´eg tov´abb jav´ıthat´o pontoss´ agot n¨ ovel˝ o algoritmusok alkalmaz´as´aval (l´asd: 5. fejezet). • A m´er´es – az el˝ obb eml´ıtett pontoss´aggal – napszakt´ ol, id˝oj´ ar´ast´ ol szinte teljesen f¨ uggetlen. A m´er´est elv´egezhetj¨ uk olyan k¨or¨ ulm´enyek k¨oz¨ott is, ahol m´as m´er´esi m´odszerek kudarcba fulladnak. • Egy ´ atlagos GPS-vev˝ o mintav´eteli frekvenci´aja 1 Hz. Enn´el nagyobb frekvenci´aj´ u (10 Hz) vev˝ ok is rendelkez´esre ´allnak, amelyekkel pontosabb m´er´esek v´egezhet˝ok. • Ismerj¨ uk a kisz´ am´ıtott koordin´ata pontatlans´ag´at. Az NMEA (National Marine Electronics Association) mondatok k¨oz¨ ul a GGA mondat tartalmazza az u ´ gynevezett PDOP (position dilution of precision) ´ert´eket, melynek k´et komponense – a f¨ ugg˝oleges, illetve v´ızszintes – HDOP / VDOP (horizontal / vertical dilution of precision). Az eml´ıtett szabv´any r´eszletesebb t´ argyal´ as´ ahoz m´eg a k´es˝obbiekben visszat´er¨ unk (l´asd: a 6.3.1.).
2.4.
A piacon tal´ alhat´ o megold´ asok ´ attekint´ ese
A GPS-alap´ u berendez´esek alkalmaz´asa a mez˝ogazdas´agban az ut´obbi ´evekben nagy lend¨ uletet vett. Az al´abbiakban ismertet¨ unk n´eh´any berendez´est, amely a glob´alis helymeghat´aroz´as technol´ ogi´ aj´ ara ´ep¨ ul. Term´eszetesen nem csak nyomvonalk¨ ovet´esre haszn´alatos eszk¨oz¨ok vannak a piacon, de dolgozatunk keretei miatt csak azokat vizsg´aljuk.
2.4.1.
EZ-Guide
EZ-Guide 250 A Trimble – a vil´ ag vezet˝o mez˝ogazdas´agi GPS gy´ art´ oja – egyik term´eke az EZ Guide 250-es sorvezet˝o. USB csatlakoz´oval van ell´atva, ´ıgy a munka 7
befejezt´evel az adatok visszanyerhet˝ok, tov´abbi feldolgoz´ asra elmenthet˝ ok. LCD kijelz˝ovel rendelkezik, emellett LEDsorokkal is jelzi a k¨ovetend˝o halad´asi ir´ anyt. A gy´ art´ o specifik´ aci´ oja szerint 1 m´eter alatti pontoss´ag ´erhet˝o el haszn´alat´aval. Speci´ alis AG15 t´ıpus´ u antenna v´as´arl´as´aval 20 cm-es pontoss´agot ´ıg´ernek. A gy´ art´ o a k´esz¨ ul´ek el˝ onyek´ent eml´ıti az automatikus sorontart´ast, azaz fordul´ ok eset´en nem kell manu´ alisan bevinni az u ´ j nyomvonal param´etereit.[3] EZ-Guide 500 Err˝ol a t´ıpusr´ ol is eml´ıt´est kell tenn¨ unk, amely az el˝oz˝o (EZ–Guide 250) tov´abbfejlesztett v´altozata. Az alapkiszerel´es 30 cm-es pontoss´agot garant´ al EGNOS (European Geostationary Navigation Overlay Service) korrekci´o haszn´alat´ aval. Az egys´eg tov´abbi pontos´ıt´asokra is k´epes fizet˝ os szolg´ altat´ asok ig´enybev´etele eset´en. Robotpil´ ota csatlakoztathat´o az egys´eghez, amellyel – ´es az el˝ ofizet´eses OmniStarHP korrekci´o haszn´alat´aval – ak´ ar 5 cm pontoss´ag is el´erhet˝ o. Ezek term´eszetesen az alap´aron fel¨ uli t¨obbletk¨olts´egeket jelentenek. Ehhez aj´ anlott m´ar speci´ alis korm´anyautomatika haszn´alata is, amely az eszk¨oz ´ar´at nagy m´ert´ekben emeli.[4]
2.4.2.
Centerline 220
Egy ´ atlagos k´epess´eg˝ u sorvezet˝o rendszer. A munkasz´eless´eget 10 cm-es pontoss´ aggal lehet be´ all´ıtani 1m ´es 50m k¨oz¨ott. A nyomvonalak p´ arhuzamoss´ aga 60 cm-es tartom´ anyban tarthat´o. Az u ´ tvonalt´ol val´o elt´er´est LED-ekkel jelzik, 30 cm-es felbont´ asban. Emellett kijelzi a halad´asi sebess´eget is tized km/h pontoss´ aggal. K¨ ul¨ on¨ osebb tov´abbfejleszthet˝os´egi lehet˝os´eggel – mint pl robotkar, prec´ızi´os technik´ak – nem rendelkezik. [5]
2.4.3.
Landasin Sirio 2
Egy igen robosztus kijelz˝o rendszerrel ell´atott sorvezet˝o. A f´enyjelz´eseken k´ıv¨ ul hangjelz´essel is jelez a vezet˝onek a nyomr´ol val´o let´er´es elset´en. Az elt´er´est kijelzi m´eterben, emellett ir´ anysz¨og korrekci´os javaslatot is ad a vezet˝onek, amelyre k¨ ul¨ on vil´ ag´ıt´ o kijelz˝ok szolg´ alnak, rendelkezik ter¨ uletm´er˝o funkci´oval is. A berendez´es 30 cm-es pontoss´agot ´ır u ´ n. SkyGuard korrekci´oval biztos´ıtja, emellett k´epes g¨ orbe vonal´ u nyom k¨ovet´es´ere is.[6]
2.4.4.
Landasin Skipper
A fentebb eml´ıtett Sirio 2-es modellel p´ arhuzamosan forgalmazz´ ak a Skipper term´eket is, amelynek el˝ onye sokr´et˝ us´ege. Permetez˝o rendszer teljes k¨or˝ u vez´erl´es´ere k´epes d˝ ol´essz¨ og kompenz´aci´ oval, rendelkezik PC-s interf´esszel, k´epes a meg´all´asok t´ arol´ as´ ara is. A szoftver t¨obbfajta m´ert´ekegys´egben k´epes sz´am´ıt´asok elv´egz´es´ere, emellett automatikus korm´anyvez´erl´es csatlakoztathat´o hozz´ a. Pontoss´ aga 30 cm.[7]
2.4.5.
¨ Osszefoglal´ as
A fenti lista nem teljes, term´eszetesen t¨obb c´eg is foglalkozik GPS-alap´ u mez˝ogazdas´agban haszn´alatos eszk¨oz¨ok fejleszt´es´evel. A k¨ozel hasonl´ o pontoss´ aggal b´ır´ o eszk¨ oz¨ ok igen elt´er˝o ´arakon kaphat´ok. 8
T´ıpus EZ-Guide 250
Pontoss´ ag < 1m
+ AG15 antenna EZ-Guide 500
20cm 30cm
+ robotkorm´ any Centerline 220 Landasin Sirio 2
< 5cm 60cm 30cm
Landasin Skipper
30cm
Egy´ eb USB csatlakoz´o LCD kijelz˝o EGNOS korrekci´o LCD kijelz˝o b˝ ov´ıthet˝o LEDsoros kijelz´es LCD kijelz˝o LEDsoros kijelz´es hangjelz´es, SkyGuard LCD kijelz˝o PC-interf´esz t¨obbfajta m´ert´ekegys´eg kieg´esz´ıthet˝o
´ Ar 420 000 Ft. 516 000 Ft. 1 000 000 Ft.
2 020 000 Ft. 372 000 Ft. 474 000 Ft.
900 000 Ft.
Nem tal´ altunk 30 cm-es pontoss´agot meghalad´ o – egy´eb korrekci´ot nem haszn´al´ o – eszk¨ ozt. Az enn´el kisebb m´ert´ek˝ u hiba m´ar csak speci´ alis jav´ıt´o elj´ ar´ asokkal ´erhet˝ o el. Emellett a terepviszonyok tekintet´eben fontos a j´o l´athat´ os´ ag, teh´ at az LCD mellett fontos a LEDsoros kijelz˝o is. A legolcs´ obb term´ek eset´eben korl´atoz´asokkal ´ all´ıthat´o be a munkat´avols´ag, a t¨obbi modelln´el nem k¨ oz¨ oltek hasonl´ o megk¨ ot´est. A k´es˝ obbi elemz´esek szempontj´ ab´ol fontos egy PC-interf´esz az eszk¨oz¨on. A m´ert adatok ismeret´eben hat´ekonyabb´a tehet˝o a munka, emellett a nyomvonalk¨ ovet´es k¨ ozben el˝ ofordul´ o hib´ak is k¨onnyebben ´eszrevehet˝ ok. Elmondhatjuk, hogy a fent r¨oviden ismertetett eszk¨oz¨ok legf˝ obb er´enye a pontoss´ ag. A k´esz¨ ul´ekek 30 cm-es pontoss´ag alatt m´ar igen dr´ag´ak, tekintve, hogy ez m´ar csak egy u ´ j technol´ ogia (pl. DGPS) bevon´as´aval ´erhet˝o el. A DGPS (Differenci´alis GPS) egy olyan elrendez´es, amely k´et GPS vev˝ ot ig´enyel. Egyik egy referenciapontra elhelyezett – ´all´o helyzet˝ u – vev˝ o, a m´asik abba a j´ arm˝ ube ker¨ ul be´ep´ıt´esre, amelynek a helyzet´et pontosan m´erni szeretn´enk. A GPS poz´ıci´o sz´ or´ as´ anak egyik legszignifik´ ansabb forr´asa a GPS vev˝ o jelterjed´esi sebess´eg´enek bizonytalans´ aga, amely betudhat´ o a l´egk¨ori zavar´o hat´asoknak. Ha a referenciapont, ´es a mozg´o pont k¨ozel (1-2 km) vannak egym´ ashoz, azok ´ altal vett poz´ıci´o´ert´ekek sz´or´asai k¨oz¨ott kis elt´er´es tapasztalhat´o. Ha ismerj¨ uk a referenciapont pontos koordin´at´ait, kisz´ am´ıthatjuk a referenciapontra helyezett vev˝ o aktu´alis hib´ aj´ at, amely korrel´al a mozg´o vev˝ o hib´aj´ aval. Ekkor elv´egezve a sz¨ uks´eges poz´ıci´o korrekci´ot, pontosabb m´er´eseket v´egezhet¨ unk. A m´er´esekkel kapott differenci´at valamilyen kommunik´aci´ os csatorn´an ´at kell vinn¨ unk az ´ all´o helyzet˝ u GPS-vev˝ ob˝ol a mozg´o egys´egbe. Ez a m´er´esi elrendez´es egyik legbonyolultabb, legk¨ olts´egesebb pontja.
9
3. fejezet
Rendszerterv A nyomvonalk¨ ovet˝o rendszer elrendez´ese, a r´eszegys´egek ¨osszekapcsol´asai blokkv´azlat szinten a 3.1. ´ abr´ an l´athat´o.
Hyper Terminal PC-interfész
Globalsat BR-355 GPS-vevő
RS-232
PS/2
GPIO
PS/2 RS-232
Blackfin ADSP-BF537 EZ-KIT Lite
UART 0
TTL — RS-232 Szintillesztő
UART 1
RS232
RS-232 — TTL Szintillesztő
GPIO GPIO
TTL — RS-232 Szintillesztő
Analog Devices ADXL202 Gyorsulásmérő
3.1. ´ abra. A nyomvonalk¨ovet˝o rendszer egyszer˝ us´ıtett blokkv´azlata
• A nyomvonalk¨ ovet˝o alapj´at a BF-537-es DSP EZ-KIT Lite fejleszt˝ok´ artya k´epezi. Feladatait tekintve a k¨ovetkez˝oket v´egzi: 10
– Vez´erli a gyorsul´ asm´er˝ot. Meghat´arozott frekvenci´aval lek´erdezi az aktu´alis gyorsul´ as ´ert´eket, ´es k´es˝obbi feldolgoz´ as c´elj´ab´ol elt´ arolja azokat. – Fogadja a GPS–vev˝ o ´altal – a szintilleszt˝on kereszt¨ ul – k¨ uld¨ott NMEA mondatokat, a fogadott NMEA mondatokb´ol a kalkul´aci´ okhoz sz¨ uks´eges adatokat kinyeri. Fontos, hogy a fogad´ as on-line t¨ort´enjen, mert nem tudjuk a kommunik´aci´ o sebess´eg´et lelass´ıtani. Az GPS–vev˝ o 4800 baud ´atviteli sebess´eggel ad a PS/2 adatvonal´an, ha ezt nem tudjuk a v´eteli oldalon fogadni, nem ker¨ ulhetj¨ uk el az adatveszt´est. – Soros kommunik´aci´ os porton PC-s interf´eszt biztos´ıt a felhaszn´al´o ´es a rendszer k¨ oz¨ ott. – Nyomvonalk¨ ovet˝o algoritmus futtat. Az egys´egek elt´er˝ o fesz¨ ults´eg tartom´anyban kommunik´alnak, ´ıgy szintilleszt˝ o´ aramk¨ or beiktat´ asa sz¨ uks´eges. Ennek ismertet´es´et l´asd 4.3. pontban. • A GPS-vev˝ o (Globalsat BR-355) az aktu´alis poz´ıci´oadatot k¨ozli 1 m´asodperces adats˝ ur˝ us´eggel. – A jelszintjei nem felelnek meg a szabv´anyos RS-232 jelszinteknek. Ennek ´ atalak´ıt´ as´ a´ert a beiktatott szintilleszt˝o ´aramk¨or felel˝os; – 4800 baud sebess´eg˝ u soros egyir´any´ u aszinkron kommunik´aci´ o; – T´ apell´at´asa ut´an folyamatosan k¨ uldi a karakteres form´atum´ u NMEA mondatokat. • A gyorsul´ asm´er˝ o fejleszt˝oi k´artya (ADXL202 Evaluation Board) egy – a GPS-vev˝ ot˝ol f¨ uggetlen – m´er˝oeszk¨oz. – Saj´ at speci´ alis csatlakoz´on kereszt¨ ul kommunik´al; – K´etir´ any´ u kommunik´aci´ ot kell megval´os´ıtani, hiszen az aktu´alis gyorsul´ as ´ert´ek´et egy el˝ore specifik´ alt adat Byte k¨ uld´ese ut´an k´erhetj¨ uk le; – A jelszintek illeszt´es´ere sz¨ uks´eg van mindk´et ir´ anyba; – 9600 baud sebess´eg˝ u soros k´etir´any´ u aszinkron kommunik´aci´ o. • A PC-interf´esz felel˝ os a rendszerrel val´o kommunik´aci´ o biztos´ıt´as´a´ert. – RS-232 csatlakoz´on kereszt¨ ul kommunik´al; – K´etir´ any´ u kommunik´aci´ o; – A jelek szintilleszt´es´ere mindk´et ir´ anyban sz¨ uks´eg van, mert a BF537 DSP-k´arya UART1-es portj´ anak nincs ki´ep´ıtett kivezet´ese, ´ıgy – hasonl´ oan a gyorsul´ asm´er˝oh¨oz – IO l´abakon csatlakozik a DSP-hez. – 57600 baud sebess´eg˝ u soros k´etir´any´ u aszinkron kommunik´aci´ o.
11
4. fejezet
Hardver A DSP k´arty´ahoz h´ arom eszk¨oz kapcsol´odik (l´asd a 3. fejezetben), ´es mindh´arom perif´eria RS232 protokollt haszn´al. A panelen megtal´ alhat´ o integr´alt perif´eri´ak k¨oz¨ott van k´et UART, amelyeket a PC ´es a GPS vev˝ o lefoglalja. A harmadik eszk¨oz¨ unk egy gyorsul´ asm´er˝o. Ezt ´altal´ anos c´el´ u I/O l´abakon csatlakoztattuk a panelhez, ez´ert meg kellett ´ırni egy f¨ uggv´enyt, ami megval´ os´ıtja az UART feladat´ at. Az eszk¨ oz t´ apell´at´asa egy 12 V-os 1,3 Ah-´ as ´olomakkumul´atorr´ ol t¨ort´ent, biztos´ıtva a hordozhat´ os´ agot.
4.1.
DSP k´ artya
A nyomvonalk¨ ovet˝o megval´os´ıt´asa sor´an egy ADSP BF537 EZ-KIT Lite fejleszt˝ opanelt haszn´altunk.
4.1. ´ abra. ADSP BF537 EZ-KIT Lite fejleszt˝opanel A fejleszt˝opanel a k¨ ovetkez˝o kieg´esz´ıt˝okkel rendelkezik: • 64 MB (32M x 16) SDRAM, 4 MB (2 M x 16) FLASH memory • SMSC LAN83C185 10/100 PHY with RJ45 Connector 12
• CAN TJA1041 Transceiver with 2 RJ10 Connector • AD1871 96 KHz stereo ADC with 1/8” Jack Connector • AD1854 96 KHz stereo DAC with 1/8” Jack Connector • RS-232 UART line driver/receiver • National Instruments Educational Laboratory Virtual Instrumentation Suite (NI ELVIS) interface A panel m˝ uveletv´egz˝ o egys´ege egy Blackfin BF-537-es DSP, amelynek blokkv´azlata a 4.2. ´ abr´ an l´athat´o:
4.2. ´ abra. Blackfin BF-537-es processzor fel´ep´ıt´ese
A DSP param´eterei k¨ oz¨ ul a legfontosabbak: • 600 MHz-es ´ orajel • 132 Kb SRAM • 10 egys´eg hossz´ u RISC MCU/DSP pipeline • Rugalmas cache architekt´ ur´aja alkalmass´ a teszi soft-realtime alkalmaz´asokra, hard-realtime jelfeldolgoz´ asi feladatok ell´at´ as´ara • Full SIMD architekt´ ura, utas´ıt´ask´eszlete t´ amogatja a video- ´es k´epfeldolgoz´ asi alkalmaz´asokat • Be´ agyazott IEEE 802.3-at t´ amogat´o 10/100 Ethernet MAC • Controller Area Network (CAN) 2.0B interf´esz • Two-Wire Interface Controller 13
Ez a sebess´eg ´es DSP architekt´ ur´ab´ol sz´armaz´o tulajdons´ agok lehet˝ov´e teszik sz´ amunkra nagy mennyis´eg˝ u adat val´osidej˝ u feldolgoz´ as´at. A panel tov´abbi el˝ onye, hogy k´et UART perif´eri´at is kialak´ıtottak rajta. Az eszk¨oz¨ok k¨oz¨otti kommunik´aci´ ot ezek seg´ıts´eg´evel val´os´ıtottuk meg. Az eszk¨ oz t´ apell´at´asa 7-12V k¨oz¨ott lehets´eges. A t´ apvezet´ek egy v´ed˝o IC-re ker¨ ul, ami kisebb t´ ulfesz¨ ults´eg eset´en k´epes megv´edeni az ´aramk¨ort. Az ´ aramfelv´etele megk¨ ozel´ıt˝oleg 250 mA (norm´ al m˝ uk¨od´esi k¨or¨ ulm´enyek k¨ oz¨ ott), teh´ at eset¨ unkben akkumul´atoros t´ apl´ al´as lehets´eges, amely el˝ ony¨os kialak´ıt´ ast tesz lehet˝ ov´e – tekintve a k´es˝obbi felhaszn´al´asi k¨or¨ ulm´enyeket.
4.2.
GPS-vev˝ o
A felhaszn´alt GPS–vev˝ o berendez´es a 4.3. ´abr´ an l´athat´o.
4.3. ´ abra. GLOBALSAT BR-355 t´ıpus´ u GPS vev˝ o
NMEA 0183 protokollal rendelkezik, amely GGA, GSA, ´es RMC t´ıpus´ u mondatokkal kommunik´al. Enn´el j´oval t¨obb NMEA mondat l´etezik, a mi vev˝ onk azonban csak ezt a h´ armat k¨ uldi – a m´er´eshez elegend˝o. K´es˝obb m´eg kifejt´esre ker¨ ulnek az eml´ıtett form´atumok. PS/2-es csatlakoz´oval rendelkezik. T¨obbek k¨oz¨ott ez az egyik probl´ema, ami´ert az ´ altala szolg´ altatott adatokat nem tudjuk k¨ozvetlen¨ ul a DSP k´arty´aval feldolgozni. ´ Atlagos forr´o ind´ıt´ asi id˝o (hot start time) 1s. A m˝ uholdak p´ alyaadatai (Ephemeris adatok) nem r´egebbiek 1-2 ´or´asn´ al, a GPS vev˝ o a kor´abban haszn´alt m˝ uhold-adatok alapj´ an k´epes meghat´arozni poz´ıci´onkat. A vev˝ o kimeneti jelei 0-5 V k¨oz¨ottiek. – +3V alatti fesz¨ ults´eg´ert´ek logikai 1” – Mark szint; ” – -3V f¨ ol¨ otti fesz¨ ults´eg´ert´ek logikai 0” – Space szint. ” Adat´ atviteli sebess´ege fixen 4800 baud. Fontos megjegyezn¨ unk, hogy – mivel soros aszinkron adat´ atvitel t¨ort´enik – az ´atvitel sor´an csak ezen a sebess´egen tudjuk fogadni a vev˝ o adatait. T´ apell´at´asa – amit a PS/2-es csatlakoz´on kereszt¨ ul kap – 4,5V - 6,5V (DC) k¨ oz¨ ott aj´ anlatos. Hogy a t´ ap DC jelleg´et” meg˝orizz¨ uk, kondenz´atorokkal sz˝ ur” n¨ unk kell. A GPS–vev˝ o t´ apell´at´asa ut´an azonnal megkezdi a kommunik´aci´ ot az adatvonalon. Ind´ıt´ askor verzi´ oinform´aci´ ot k¨oz¨ol, amelyet szoftveresen le is k´erhet¨ unk (l´ asd: 6.1.), majd az aktu´alis poz´ıci´o adatait NMEA 0183 form´atumban. ´ Atlagos aramfelv´etele 80 mA. ´ 14
4.3.
Szintilleszt˝ o´ aramk¨ or
A komplett rendszer o all´ıt´as´an´al olyan probl´em´ ak is ad´odtak, hogy az ¨ssze´ eszk¨ oz¨ ok kimeneti jelei m´as fesz¨ ults´egszint˝ uek voltak (l´asd: a 4.4. ´abra), mint amit a DSP k´artya bemenetei fogadni tudtak. 10 V
10 V
5V
5V
0V
0V
-5V
-5V
- 10 V
- 10 V
4.4. ´ abra. A GPS–vev˝ o jelszintjei (balra) ´es az RS232-es szabv´any´ u jelszintek (jobbra) Els˝o probl´em´ at a GPS vev˝ o ´es a DSP k´artya illeszt´ese okozta. A GPS vev˝ ot a DSP szabv´anyos RS232-es soros portj´ ahoz csatlakoztattuk. Az´ert erre a portra esett a v´alaszt´as, mert a GPS ´altal k¨ uld¨ott nagy mennyis´eg˝ u adat v´etele GPIO l´abon f¨ ol¨ oslegesen t´ ul sok er˝ oforr´ast haszn´alt volna el. A GPS vev˝ o ´altal adott jelek logikai szintjei megfeleltek a protokollnak, de a 0–5V-os fesz¨ ults´egszintje j´oval alacsonyabb az elv´artn´al, ami ±10 V. A fesz¨ ults´egszintek n¨ovel´es´enek” ” ´erdek´eben ´ep´ıteni kellett egy szintilleszt˝o ´aramk¨ort. Vcc
C7 1nF
MAX232D 1 3 4
C9 1nF
5
C1+ C1C2+ C2-
Vcc Vs+ Vs-
16 C8 1nF
2 6
78HC14
CON2
CON3
3 2 1
11 1
2 10 13 8
1: GND 2: Vcc 3: Jel
15 C5 100nF
C11 10nF
T1 IN T2 IN R1 IN R2 IN
T1 OUT T2 OUT R1 OUT R2 OUT
14
1
7
2
12 9
GND C10 1nF
1: Jel 2: GND C6 100nF
GND
4.5. ´ abra. Szintilleszt˝o kapcsol´as MAX232 IC-vel
15
C12 10nF
Erre a legegyszer˝ ubb megold´as egy MAX232-es szintilleszt˝o IC, ami a bemeneti 0–5V-os fesz¨ ults´egb˝ ol ± 10V-os, jelet ´all´ıt el˝o. Mivel a szintilleszt˝o a jeleket invert´ alja, a jelet m´eg egyszer invert´ alnunk kell. Erre a c´elra a 74HC14-es invertert alkalmaztuk. A kapcsol´as a 4.5 ´abr´ an l´athat´o. A k´et IC, ´es a GPS vev˝ o t´ apell´at´as´ at egy 7805-¨ os stabiliz´atorral oldottuk meg (l´asd a 4.6. ´abr´ at!). PWR
Vcc
7805
CON1 D1 Diode
2
C1 100nF
C3 100nF
1 IN
OUT 3 GND
C4 100nF
2
1
C2 100nF LED1
1: GND 2: Adapter ~ 9V
GND GND R1 330Ω
GND
4.6. ´ abra. A 7805-¨ os stabiliz´ator IC-vel a t´ apfesz¨ ults´eg el˝oa´ll´ıt´asa A szintilleszt˝ o´ aramk¨ or egy p´eld´ anyban legy´ art´ asra ker¨ ult (l´asd 4.7. ´abra)
4.7. ´ abra. A szintilleszt˝o ´aramk¨or A m´asik k´et eszk¨ oz jelszintjeit is illeszteni kellett a DSP k´artya bemeneteihez, mert itt a kommunik´aci´ ot ´ altal´ anos c´el´ u I/O l´abakon t¨ort´enik. Az I/O l´abakon a kimen˝o jelszintek 0 – 3.3V k¨oz¨ott vannak. A gyorsul´ asm´er˝o, ´es a PC soros portja ±10V-os jelet ad. A szintilleszt˝o IC k´et csatorn´as, ´ıgy a k´et perif´eria illeszt´ese egy MAX232-es IC-vel megval´os´ıthat´o. Mindk´et szintilleszt˝ o eset´eben a jelf¨old ¨ossze van k¨otve az illesztett perif´eria ´es a fejleszt˝ok´ artya jelf¨ oldjeivel.
4.4.
Gyorsul´ asm´ er˝ o
Az felhaszn´alt gyorsul´ asm´er˝o fejleszt˝opanel egy Analog Devices ADXL202 Evaluation Board (4.8. ´ abra). A fejleszt˝oi k´arty´an lev˝o ADXL202 egy k´etdimenzi´os ´erz´ekel˝o, amely a m´er˝oeszk¨ oz¨ ok u ´ gynevezett MEMS (Micro Electro Mechanical Systems) csoportj´ aba tartozik. Ez azt jelenti, hogy a mechanikai - elektronikus jel´atalak´ıt´as mag´an
16
4.8. ´ abra. ADXL202 fejleszt˝oi k´artya
a szil´ıcium lapk´ an t¨ ort´enik. Jelen esetben nem k¨ozvetlen¨ ul gyorsul´ ast, hanem er˝ ot m´er. A szenzor m´er´esi eredm´enyeit m´odosulhatnak, ha a gravit´aci´ os gyorsul´ asnak van a m´er´esi ir´ annyal p´ arhuzamos ¨osszetev˝oje, ez´ert a pontos m˝ uk¨od´es csak v´ızszintes fel¨ uleten ´erhet˝ o el. A szenzorban dimenzi´ onk´ent tal´ alhat´o egy – egy kondenz´ator, melyeknek egyik fegyverzete r¨ ogz´ıtett, m´ıg a m´asik fegyverzete egy v´ekony, ´alland´ o rug´ oa´lland´ oj´ u szil´ıcium laprug´ ora van felf¨ uggesztve. (4.9. ´abra)
Si rugóra függesztett fegyverzet Si rugóra függesztett fegyverzet
4.9. ´ abra. ADXL202 MEMS ´erz´ekel˝o Amennyiben gyorsul az ´erz´ekel˝o, akkor a tehetetlens´eg k¨ovetkezt´eben elmozdul a rug´ ora szerelt fegyverzet, ez´altal megv´ altozik a kondenz´ator kapacit´ asa. C = 0 r A k¨ o vetkezt´ e ben. A k¨ o vetkez˝ o (4.10. a ´ bra) szeml´ e lteti a gyorsul´ a sm´ ed r´es mechanizmus´at: A kapacit´ as v´altoz´ asa a k¨ ovetkez˝ok´epp sz´am´ıthat´o: 1 1 ∆C = C1 − C0 = ε0 εr A − d1 d0 Felhaszn´alva a fenti ´ abra ¨ osszef¨ ugg´eseit, ´atalak´ıt´asok ut´an a kapacit´ as v´altoz´ asa a gyorsul´ asb´ ol:
17
ERŐ
GYORSULÁS
F = m·a
a
KAPATICÁS
KITÉRÉS
d1 =
F D
C =ε0·εr·
A d
4.10. ´ abra. A MEMS-re hat´o gyorsul´ ast´ ol a kapacit´ as megv´ altoz´ as´aig
D 1 + ∆C = −ε0 εr A m · a d0
ahol A a kondenz´ator lemezek fel¨ ulete, D a szil´ıcium laprug´ o rug´ oa´lland´ oja, εr a kondenz´ator lemezek k¨ oz¨otti anyag relat´ıv permittivit´asa, d0 a lemezek k¨ oz¨ otti t´ avols´ag nyugalmi ´ert´eke. Ezt a kapacit´ ast m´eri az Evaluation Boardon kialak´ıtott k¨ ornyezet. 3V to 5.25V CX SELF-TEST
X_FILT 13
14
V_DD
V_DD
3
12
R_FILT 32kΩ
X-SENSOR
X_OUT
DEMOD C_DC
DUTY CYCLE MODULATOR (DCM)
OSCILLATOR R_FILT 32kΩ
10
Y_OUT 9
DEMOD
C O U N T E R
μP
Y-SENSOR
4
7
COM
11
5
Y_FILT CY
R_SET
T2 A(g) = (T1/T2 - 0,5)/12,5% 0(g) = 50% DUTY CYCLE T2 = R_SET / 125MΩ
T1
4.11. ´ abra. ADXL-202 Evaluation Board fel´ep´ıt´ese A kondenz´atorokat egy oszcill´atorra kapcsoljuk, majd jelkondicion´al´as ut´an DCM-mel (Duty Cycle Modulator), azaz kit¨olt´esi t´enyez˝o modul´atorral digit´ alis jell´e alak´ıtjuk. (4.11. ´ abra) A kit¨olt´esi t´enyez˝o ´ert´eke a kimenete a szenzornak. Ahogy a 4.11. ´ abr´ an is fel van t¨ untetve, a kit¨olt´esi t´enyez˝ob˝ol a k¨ovetkez˝o formul´aval kapjuk meg a gyorsul´ as ´ert´ek´et [g]-ben: T1 T2 − 0.5 (4.1) a= 12.5% olt´esi t´enyez˝o ´ert´eke, a pedig a szenzorra hat´o gyorsul´ as ´ert´eke ahol TT21 a kit¨ – dimenzi´ oja [g]. 18
A k¨ ulvil´ag fel˝ ol a soros porton egy ’G’ ASCII karakterrel k´erdezhet˝ok le az aktu´alis gyorsul´ as ´ert´ekek. Ezeket n´egy Byte-ban kapjuk meg, melyb˝ol k´et Byte az x ´es k´et Byte az y ir´ any´ u gyorsul´ as. Az ´aramk¨or ´altal elk¨ uld¨ott kit¨olt´esi t´enyez˝o alaphelyzetben nem 50%, ´ert´eke er˝osen f¨ ugg a h˝ om´ers´eklett˝ol. Az ofszetet minden m´er´es ind´ıt´ asakor be kell ´all´ıtani, kalibr´ alnunk kell. Ezek ismeret´eben a 4.1. egyenletet m´odos´ıtanunk kell: T 10 T1 h i T 2 − T 20 · g m a= (4.2) 0.125 s2 os gyorsul´ as , ahol TT 2100 a nyugalmi kit¨olt´esi t´enyez˝o ´ert´eke, g a gravit´aci´ ´alland´ oja (pontosabb ´ert´eke 9.80665).
4.5.
Gyorsul´ asm´ er˝ o illeszt´ ese DSP-hez
A DSP ´ altal´ anos c´el´ u IO l´abait haszn´aljuk a gyorsul´ asm´er˝ovel val´o kommunik´aci´ o sor´an. A program k´et interruptot tartalmaz, az egyik egy I/O interrupt, a m´asik egy Timer interrupt. GPIO interrupt +tiltás
TIMER interrupt (9600Hz)
TIMER interrupt (9600Hz)
TIMER interrupt (9600Hz)
...
H L
TIMER interrupt (9600Hz)
Start D0
D1
D2
...
D7 Stop
RECEIVE = 1
RECEIVE = 0
RECEIVE = 0
4.12. ´ abra. Kommunik´aci´ o a RECEIVE (GPIO) vonalon V´eteli u ¨ zemm´odban az I/O interrupt akt´ıv, ami akkor okoz megszak´ıt´ast, ha a RECEIVE vonalon high”szint van. Ekkor enged´elyezi a Timer interruptban a ” RECEIVE vonalon j¨ ov˝ o adatok vizsg´alat´at (receive = 1), ´es letiltja mag´at. Ezt k¨ ovet˝oen a 9600 Hz-en m˝ uk¨ od˝o Timer interrupt 10 egym´ ast k¨ovet˝o alkalommal megvizsg´ alja a bemenet ´ert´ek´et ´es a m´ert ´ert´ekeket egy integer t´ıpus´ u v´altoz´ oba shifteli, majd u ´ jra enged´elyezi az I/O interruptot, ´es tiltja a v´etelt (receive = 0). (l´ asd a 4.12. ´ abr´ at) Mivel a DSP architekt´ ur´aj´ ab´ol ad´od´oan az eg´eszeket 32 biten ´abr´ azolja, ´ıgy a 10. bit ut´an a v´altoz´ ot egyel jobbra shifteli ´es maszkolja 0x000000FF-el. Az utols´ o nyolc bit sorrendj´enek megford´ıt´asa ut´an megkapjuk a sz´amunkra hasznos adatot. Ahhoz, hogy a gyorsul´ asm´er˝o adatot k¨ uldj¨on, utas´ıtani kell. Ezt a 0x47, azaz a G” karakter kik¨ uld´es´evel tehetj¨ uk meg. Ezt egy 9600 Hz-es sz´aml´al´o ” id˝oz´ıti. Ha ez a sz´ aml´al´ o el´eri a 100 -at, a Timer interruptban 10 alkalommal lefut a Send a Char(’G’) f¨ uggv´eny, ami 10 bitet ad ki: 1 start, 8 adat, 1 stop.
19
1 byte
ax_1 ax_2 ay_1 ay_2 1 byte
0x00 0x00 ax_1 ax_2
ax 0x00 0x00 ay_1 ay_2
ay 4.13. ´ abra. A gyorsul´ as-komponensek let´ arol´asa
Miut´ an kik¨ uldt¨ uk a 0x47-es adatot, a gyorsul´ asm´er˝o v´alaszol egy 4 Byte -os adatcsomaggal. Ahogy az a 4.13. ´abr´ an is l´athat´o, ennek a csomagnak az els˝o k´et Byte -ja az ax , utols´ o k´et Byte -ja az ay ´ert´eke kit¨olt´esi t´enyez˝ov´e ´atalak´ıtva. A kit¨ olt´esi t´enyez˝o ´ert´ek´et u ´ gy kapjuk meg, hogy a k´et Byte -os adat els˝o Byte -j´at balra shiftelj¨ uk 8 -cal, majd ¨osszeadjuk a m´asodik Byte-tal. Az ´ıgy kapott ´ert´ek egy 0 ´es 10000 k¨oz¨otti integer sz´am, ami ide´ alis esetben 0 gyorsul´ asn´ al 5000. A maxim´ alis m´erhet˝o ´ert´ek a gravit´aci´ os gyorsul´ as 4-szerese, azaz 39,24 m/s2 .
20
5. fejezet
K´ alm´ an-sz˝ ur˝ o 5.1.
Elm´ eleti ´ attekint´ es
K´ alm´an Rudolf a r´ola elnevezett sz˝ ur´esi technik´at 1960-ban publik´alta. A K´ alm´an-sz˝ ur˝o olyan matematikai m´odszer, amely k¨ ul¨onf´ele adatsorokb´ ol k´epes a m´er´esi hiba kisz˝ ur´es´ere, azaz k´epes a m´ert ´ert´ekekn´el pontosabb ´ert´ekeket becs¨ ulni. A rendszert le´ır´ o param´eterek becs¨ ult ´ert´eke egyr´eszt az adott id˝oponthoz tartoz´o m´er´esi eredm´enyek, m´asr´eszt a kor´abbi m´er´esek alapj´an v´egzett el˝ orejelz´esek egy¨ uttes figyelembe v´etel´evel hat´arozhat´ok meg. A K´ alm´an-sz˝ ur˝o az az´ota eltelt id˝oben meghat´aroz´o elem´ev´e v´alt a m´ern¨oki rendszereknek. A m´odszert ma m´ar sz´amtalan ter¨ uleten alkalmazz´ak a radarok c´elk¨ ovet´es´et˝ol a m˝ uholdas helymeghat´aroz´o rendszerekig, a k¨ozgazds´agi id˝osorelemz´esekt˝ol a meteorol´ ogiai el˝orejelz´esekig. A K´ alm´an-sz˝ ur˝ok elm´elet´eben a m´erend˝o objektum modellje egy line´aris, dinamikus rendszer, melynek ´ allapotegyenletes alakja az 5.1. ´abr´ an l´athat´o. A m´er´esi feladat a rendszer ´ allapotv´altoz´ o vektor´anak becsl´ese a zajjal fedett kimen˝ ojelek felhaszn´al´ as´ aval, mikor a rendszer bemen˝ojele egy determinisztikus gerjeszt´es mellett sztochasztikus komponenst (esetleg csak azt) is tartalmaz. Tov´abb´a a rendszer kezdeti ´ allapota egy val´osz´ın˝ us´egi vektorv´ altoz´ o.[12] v(k)
L(k) u(k)
B(k)
x(k+1)
w(k) x(k)
z-1
C(k)
A(k) 5.1. ´ abra. Liner´ aris dinamikus rendszer modellje
21
y(k)
x(k + 1) = A(k)x(k) + B(k)u(k) + L(k)v(k) y(k) = C(k) + w(k)
(5.1) (5.2)
Az 5.1. illetve az 5.2. egyenletek a line´aris, dinamikus rendszert le´ır´ o egyenletek. Amelyekben a bet˝ uk a k¨ovetkez˝oket jel¨olik: • u(k) a determinisztikus bemenet, • v(k) ´ allapotzajnak,a tov´abbiakban mi is ´ıgy nevezz¨ uk. Ezt a zajt az L m´atrix csatolja be a rendszerbe. • w(n) m´er´esi zajnak, a tov´abbiakban mi is ezt azt elnevez´est haszn´aljuk. Az elm´elet a zajokat nulla v´arhat´o ´ert´ek˝ u, feh´er Gauss zajk´ent tekinti, a tov´abbiakban mi is ezt felt´etelezz¨ uk az ´allapotzajr´ol ´es m´er´esi zajr´ol is. E {v(k)} = 0
E {w(k)} = 0
E v(k)v T (l) = Q(k)δ(k − l) E w(k)w T (l) = R(k)δ(k − l)
(5.3) (5.4)
Az 5.3. egyenletben Q(k) az ´allapotzaj kovarianciam´ atrixa, m´ıg az 5.3. egyenletben R(k) a m´er´esi zaj kovarianciam´ atrixa. Az 5.3. ´es az 5.4. egyenletekben δ(i) Dirac-f´ele delta f¨ uggv´enyt jelent, mely (i = 0) eset´en 1, k¨ ul¨onben 0. Az elm´elet szerint az el˝ obbieken t´ ul sz¨ uks´eges m´eg az ´allapotzaj ´es a m´er´esi uggetlens´ege, korrel´alatlans´aga zaj egym´ ast´ ol ´es a kezdeti ´ allapott´ ol, x(0) val´o f¨ is: E v(k)w T (l) = 0 E v(k)xT (0) = 0 E w(k)xT (0) = 0
∀k, l ∀k ∀k
A fentieken k´ıv¨ ul feltet´etelezz¨ uk, hogy a kezdeti ´allapot v´arhat´o ´ert´eke ´es a becsl˝ o-kovarianciam´ atrixa ismert: x ˆ (0) = E {x(0)} o n T ˆ(0)) (x(0) − x ˆ(0)) Pˆ (0) = E (x(0) − x A kiad´ od´o sz´ am´ıt´ asi elj´ ar´ as blokkv´azlat´ at az 5.2. ´abr´ an szeml´eltetj¨ uk. A K K´ alm´an-er˝ os´ıt´es a m´erend˝o rendszer ´es a m´er´esi elj´ar´asba ´ep´ıtett modell kimen˝o jeleinek k¨ ul¨ onbs´eg´evel korrig´alja a modell ´allapot´at. Az al´abb ismertetett becsl˝o ´es helyesb´ıt˝ o elj´ ar´ ast a kor´ abbi line´aris, dinamikus modellel p´ arhuzamosan, egy processzoron val´ os´ıtjuk meg. A K´ alm´an-sz˝ ur˝o egyenleteinek levezet´ese t¨obb forr´asban is megtal´alhat´o [10][12], terjedelmi okokb´ ol ett˝ ol itt eltekint¨ unk.
22
v(k)
L(k) u(k)
B(k)
x(k+1)
w(k) x(k)
z-1
y(k)
C(k)
A(k) x
Kalman-szűrő A(k)
B(k)
z x*(k+1)
K(k)
-1
ỹ
C(k) x*(k)
5.2. ´ abra. K´ alm´an-sz˝ ur˝ovel kieg´esz´ıtett rendszermodell
23
5.1.1.
K´ alm´ an-sz˝ ur´ es megval´ os´ıt´ asa
A K´ alm´an-sz˝ ur˝ot megval´ os´ıt´o l´ep´esek h´ arom csoportba oszthat´ok: 1. Becsl´es: Az el˝ oz˝o ´ allapotb´ ol ´es a zajos m´ert ´ert´ekekb˝ ol becsl´est adunk a k¨ovetkez˝o id˝opontbeli ´ allapotra: x∗ (k + 1) = A(k)ˆ x(k) + B(k)u(k)
(5.5)
atrix (P (k)) seg´ıtAz ´ allapotzaj(Q(k)) ´es az aktu´alis becsl˝o-kovarianciam´ s´eg´evel megbecs¨ ulj¨ uk a k¨ovetkez˝o u temre ´ e rv´ e nyes becsl˝ o-kovarianciam´ at¨ rixot (P(k)): P (k + 1) = AP (k)AT + Q
(5.6)
2. Sz˝ ur´es: A sz˝ ur´es l´ep´esben k´epezz¨ uk y˜(k)-t, amely a m´ert ´es a becs¨ ult ´ert´ekek k¨ ul¨ onbs´eg´et tartalmazza. y˜(k + 1) = y(k + 1) − Cx∗ (k + 1)
(5.7)
Meghat´ arozzuk az elt´er´esek kovarianci´ aj´ at(S) S(k + 1) = CP (k + 1)C T + R(k) 3. K´ alm´an-er˝ os´ıt´es friss´ıt´ese: Az el˝ oz˝o k´et l´ep´esben meghat´arozott adatok alapj´an ad´odik a jav´ıt´ashoz sz¨ uks´eges K´ alm´an-er˝ os´ıt´es(K) K(k + 1) = P (k + 1)C T S −1 (k + 1) A K´ alm´an-er˝ os´ıt´es ismeret´eben m´ar helyesb´ıthet˝oek a m´ert adatok: x ˆ (k + 1) = x∗ (k + 1) + K(k + 1)˜ y(k + 1)
(5.8)
A hiba kovarianciam´ atrixa ´es a K´alm´an-er˝ os´ıt´es m´eg akkor is id˝ovari´ansak, ha a modell id˝oinvari´ans, teh´at A, B, C, L m´atrixok konstansok, tov´abb´a v(k) ´es w(k) zajok stacion´ ariusak.[12] Azonban a K´alm´an-er˝ os´ıt´es(K) elemei ´alland´ osult ´ allapot- ´es m´er´esi zajt felt´etelezve konvergensek, ez´ert sok esetben elegend˝o az u ´ gynevezett Steady State K´alm´an-sz˝ ur˝o alkalmaz´asa, mikor K ´ert´eke ´ alland´ o, ´es offline m´odon el˝ore kisz´ am´ıthat´o [11]. Ekkor a fenti l´ep´esek k¨ oz¨ ul online m´odon csak 5.6-t 5.7-t ´es 5.8-t kell megval´os´ıtani, ami jelent˝ osen cs¨ okkenti a sz´ am´ıt´ asi ig´enyt.
24
5.2.
GPS poz´ıci´ o jav´ıt´ asa K´ alm´ an-sz˝ ur˝ ovel
A K´ alm´an-sz˝ ur˝o a GPS-vev˝ o pontos´ıt´as´ara alkalmas m´odszer, amennyiben van a GPS-vev˝ o m´er´es´et˝ol f¨ uggetlen, tov´abbi inform´aci´ onk is (m´ert ´ert´ek, a p´ alya alakja, stb.), amib˝ ol a k¨ ovetkez˝o u ulhet˝o. A ¨ tembeli ´allapot (poz´ıci´o) becs¨ mi eset¨ unkben a tov´abbi inform´aci´ o az Analog Devices ADXL202 EB gyorsul´ asm´er˝ oje ´ altal szolg´ altatott k´etdimenzi´os gyorsul´ as´ert´ek. M´er´esi tapasztalataink alapj´an haszn´alhat´o a Steady State m´odszer (b˝ovebben l´asd az 5.5. fejezetet). A K´alm´an-er˝ os´ıt´es meghat´aroz´as´ahoz sz¨ uks´eges uk a gyorsul´ asm´er˝o x ´es y ir´ any´ u sz´or´asainak ´allapotzajk´ent (v(k),w(k)) tekints¨ ´atlag´ at, ugyanis a gyorsul´ asm´er˝o ir´ anyai nem ´alland´ ok (b˝ovebben l´asd az 5.4. alfejezetben), m´er´esi zajk´ent pedig a gyorsul´ asm´er˝ o sz´or´as´at. Ekkor az 5.4. o kovarianciam´ atrix´at jelenti, melynek ´atl´ oj´ aban a egyenletben Q a GPS-vev˝ ´ GPS-vev˝ o Nyugat-Kelet ´es D´el-Eszak ir´ any´ u sz´or´asainak n´egyzetei tal´ alhat´ok, m´ıg az 5.3. egyenletben R a gyorsul´ asm´er˝o kovarianciam´ atrix´anak felel meg, melynek ´ atl´ oj´ aban az ´ atlagolt gyorsul´ as ´ert´ekek sz´or´asainak n´egyzetei tal´ alhat´ok. Ezen kovarianciam´ atrixok szemidefinit diagon´ alm´atrixok, azaz csak az f˝oa´tl´ oban tartalmaznak elemeket, melyek nem negat´ıvak. Modell¨ unk le´ır´ as´ ahoz a fizika t¨orv´enyei szerinti kapcsolatot haszn´altuk fel:
p(k + 1) = p(k) + v(k)t +
a(k) 2 t 2
v(k + 1) = v(k) + a(k)t
(5.9) (5.10)
A fenti (5.9, 5.10) egyenletekben szerepl˝ o jel¨ol´esek a k¨ovetkez˝o: • p(k) a k-adik id˝opillanatbeli poz´ıci´o. • v(k) a k-adik id˝opillanatbeli sebess´egvektor. • a(k) a k-adik id˝opillanatbeli gyorsul´ asvektor. • t k´et diszkr´et id˝opillanat k¨oz¨otti eltelt id˝o. A fentiek alapj´ an kialak´ıthat´o a felhaszn´aland´o modell ´allapotvektoros le´ır´asa:
25
px (k) vx (k) x(k) = py (k) vy (k) ax (k) u(k) = ay (k) anx (k) v(k) = any (k) 1 t 0 0 1 0 A= 0 0 1 0 0 0 t2 0 2 t 0 B= 0 t2
0 0 t 1
2
0
C=
1 0
t
0 0 0 1
0 0
Ahol az eddig m´eg nem szerepelt jel¨ol´esek a k¨ovetkez˝ok. A f¨oldrajzilag r¨ ogz´ıtett vonatkoztat´ asi rendszerben az x ir´ any megfelel a f¨oldrajzi Nyugat´ Kelet, m´ıg y a D´el-Eszak ir´ anynak. • px (k), py (k) a k-adik id˝opillanatbeli poz´ıci´o a r¨ogz´ıtett f¨oldrajzi vonatkoztat´ asi rendszer szerint. • vx (k), vy (k) a k-adik id˝opillanatbeli sebess´eg a r¨ogz´ıtett f¨oldrajzi vonatkoztat´ asi rendszer szerinti komponensei. • ax (k), ay (k) a k-adik id˝opillanatbeli gyorsul´ as a r¨ogz´ıtett f¨oldrajzi vonatkoztat´ asi rendszer szerinti ¨osszetev˝oi. anx (k) • an (k) = a k-adik id˝opillanatbeli ´allapotzaj (gyorsul´ asm´er˝o any (k) hib´ aja) a r¨ ogz´ıtett f¨ oldrajzi vonatkoztat´asi rendszer szerinti ¨osszetev˝oi. Az ´ allapotzajt mint a helyes gyorsul´ as´ert´ekek mellett addit´ıvan jelentkez˝o zajt tekintj¨ uk. Ekkor az 5.1. rendszeregyenletbe be´ırva a k¨ovetkez˝ot kapjuk: x(k + 1) = A(k)x(k) + B(k) (u(k) + an (k)) x(k + 1) = A(k)x(k) + B(k)u(k) + B(k)an (k)
(5.11) (5.12)
Amint az az 5.12. egyenletben l´athat´o az ´allapotzaj becsatol´ om´ atrixa( L) eset¨ unkben megegyezik a B m´atrixszal. A K´ alm´an-sz˝ ur˝o alkalmaz´as´anak tov´abbi el˝onye az is, hogy a GPS-vev˝ o 1 Hzes mintav´eteli frekvenci´aj´ ahoz igaz´ıtott sz´am´ıt´asi ´es kijelz´esi feladatok a GPSvev˝ o kisebb mintav´eteli frekvenci´aja helyett a gyorsul´ asm´er˝o nagyobb mintav´eteli frekvenci´aj´ ahoz id˝oz´ıthet˝ ok (b˝ovebben l´asd az 5.7. fejezetet), ´ıgy a GPS-vev˝ o gy´ ari mintav´eteli frekvenci´aj´ an´al nagyobb frekvenci´aval is sz´am´ıthat´o a poz´ıci´o. 26
5.3.
Sz´ or´ asok becsl´ ese
A K´ alm´an-sz˝ ur˝o alkalmaz´as´anak el˝ofelt´etele, hogy a m´er´esi sz´or´asok ismertek legyenek. Ezeket el˝ ozetes m´er´esek alapj´an becs¨ ulj¨ uk. A gyorsul´ asm´er˝o mozg´ as k¨ ozbeni sz´ or´ asa (helyes ´ert´ekt˝ol val´o ´atlagos elt´er´ese) nehezen megbecs¨ ulhet˝o, ugyanis nem ´ all rendelkez´esre a helyes gyorsul´ as ´ert´ek. Mivel az ´altalunk haszn´alt ADXL202 val´oj´ aban egy er˝om´er˝o, ez´ert a sz´or´as f¨ ugg az u ´t fel¨ ulet´enek min˝os´eg´et˝ol is (b˝ovebben l´asd a 4.4. pontban). A gyorsul´ asm´er˝o sz´ or´ asa ´ all´ohelyzetben m´erve az 5.3. ´abr´ an l´athat´o. Ezen k´et sz´or´as ´atlag´ at tekintj¨ uk a becs¨ ult sz´ or´ asnak, ugyanis a gyorsul´ asm´er˝o ir´ anyai v´altoznak a r¨ogz´ıtett f¨ oldrajzi ir´ anyokhoz k´epest, ami a rendszeregyenletekben x ´es y ir´ anyk´ent szerepel.
ax[m/s2]
0.2 0 −0.2 −0.4 0
5
10
15
20
25
15
20
25
t[s]
ay[m/s2]
0.4 0.2 0 −0.2 −0.4 0
5
10 t[s]
´ ohelyzetben m´ert gyorsul´ 5.3. ´ abra. All´ as´ert´ekek A GPS-vev˝ o egy helyben m´ert sz´or´as´ahoz 18 ´or´an ´at logoltuk a koordin´at´akat. Ezen m´er´es eredm´enye az 5.4. ´abr´ an l´athat´o.
pozíció y koordinátája [földrajzi fok]
47.534
47.533
47.532
47.531
47.53
47.529
47.528 18.9905 18.991 18.9915 18.992 18.9925 18.993 18.9935 18.994 18.9945 18.995 18.9955 pozíció x koordinátája [földrajzi fok]
´ ohelyzetben m´ert GPS koordin´at´ak 5.4. ´ abra. All´
27
Ezen adatsorokb´ ol sz´ am´ıtott sz´or´asok az al´abbiak:
σam =
0.04900 0.04900
m s2
σpm =
16.2185 20.5714
m
Az el˝ obbi m´er´eseink nem t¨ ukr¨ozik h˝ uen a sz´amunkra sz¨ uks´eges sz´or´asokat, tapasztalataink szerint ugyanis a GPS-vev˝ o sz´or´asa ´all´o helyzetben sokkal nagyobb, mint mozg´ as k¨ ozben, m´ıg a gyorsul´ asm´er˝o ´all´ohelyzet´eben m´ert sz´or´as´ahoz hozz´ aad´ odik a billeg´esb˝ ol ´es nem v´ızszintes mozg´asb´ ol ad´od´o zaj is. Amint az az 5.5. ´ abr´ an l´athat´o, ezekkel a sz´or´as ´ert´ekekkel a K´alm´an-sz˝ ur˝o az optim´ alisn´ al nagyobb s´ ullyal fogja figyelembe venni a gyorsul´ as´ert´ekeket. 60
korrigált pozíció mért pozíció
50
py [m]
40
30
20
10
0 0
10
20
30 p [m]
40
50
60
x
5.5. ´ abra. K´ alm´an-sz˝ ur˝o eredm´enye ´all´ohelyzetben m´ert sz´or´asokkal A fentiek miatt u ´ jabb m´er´eseket v´egezt¨ unk, imm´ ar a GPS-vev˝ o sz´or´as´at egy 800 m hossz´ u szakaszon 40 km/h-val halad´o g´epkocsival elv´egzett m´er´es alapj´an becs¨ ult¨ uk, ezen m´er´es eredm´enye az 5.6. ´abr´ an l´athat´o. A gyorsul´ as´ert´ekek sz´ or´ as´ anak menetk¨ ozbeni becsl´ese nagy m´ert´ekben f¨ ugg az u ´ t min˝os´eg´et˝ol is. Ez´ert a gyorsul´ asm´er˝ o sz´ or´ as´ at 1 nagys´ agrenddel megn¨ovelt¨ uk (b˝ovebben l´asd az 5.5. fejezetet). Az el˝ obbiek alapj´ an az ´ altalunk becs¨ ult sz´or´as´ert´ekek a k¨ovetkez˝oek:
σam =
0.4900 0.4900
m s2
σpm =
3.8919 5.4563
m
28
47.6491
y koordináta [földrajzi fok]
47.649 mért pozíció valós pozíció
47.6489 47.6488 47.6487 47.6486 47.6485
18.3089 18.309 18.3091 18.3092 18.3093 18.3094 18.3095 18.3096 x koordináta [földrajzi fok]
5.6. ´ abra. GPS vev˝ o sz´ or´ as´ anak m´er´ese 800 m hossz´ u egyenes ment´en 40 (r´eszlet)
29
km h -val
5.4.
Koordin´ atatranszform´ aci´ o
A gyorsul´ as ´es poz´ıci´o adatok o¨sszem´erhet˝os´eg´ehez koordin´atatranszform´aci´ o ´ is sz¨ uks´eges. Az ´ allapotegyenletekben a f¨oldrajzi Nyugat-Kelet az x ´es D´el-Eszak az y ir´ any. Azonban a gyorsul´ asm´er˝o x-tengelye nem mindig mutat a f¨oldrajzi Kelet ir´ any´aba. A j´ arm˝ uvekben viszonylag neh´ez megval´os´ıtani, hogy annak egy r´esze elfordul´ as eset´en is a kor´abbi ir´ anyban maradjon (nem lehetetlen, a haditechnik´aban m´ar l´etezik ilyen, l´asd a tankok tornya, vagy a rep¨ ul˝og´epek giroszk´opja). A GPS-vev˝ o vonatkoztat´asi rendszere ´alland´ o, ez a f¨oldrajzi vonatkoztat´ asi rendszer: a f¨ oldrajzi hossz´ us´ag ´es sz´eless´eg. A gyorsul´ asm´er˝o x ´es y ir´ anya azonban a j´ arm˝ u fordul´as´aval egy¨ utt v´altozik (az elfordul´as m´er´es´ehez giroszk´opra lenne sz¨ uks´eg), ezzel a rendszerrel az elfordul´ast nem tudjuk m´erni, csak az oldalir´ any´ u gyorsul´ ast. M´er´eseink sor´an biztos´ıtjuk, hogy a gyorsul´ asm´er˝ o x tengelye p´ arhuzamos legyen a j´arm˝ u halad´asi ir´ any´aval (x ir´ anyban gyorsul´ askor pozit´ıv, lass´ıt´ askor negat´ıv ´ert´eket kapunk, az y tengelyt pedig arra mer˝olegesen, jobbcsavar elv´en ir´ any´ıtjuk, azaz negat´ıv y ir´ any´ u gyorsul´ as bal, pozit´ıv y ir´ any´ u gyorsul´ as jobb kanyart jelent).
É
ayr |aym|cosa
aym
Vy
|axm|sina
a axr
Ny
v
a axm
Vx
K
|axm|cosa |axm|sina
D 5.7. ´ abra. Koordin´atatranszform´aci´ o Az 5.7. ´ abr´ an l´athat´oan az u ´ j gyorsul´ as ´ert´ekek meghat´aroz´as´ahoz az el˝oz˝o id˝opillanat sebess´egvektora (vx , vy ) tekinthet˝ o vonatkoztat´asi rendszernek, azaz felt´etelez´es¨ unk szerint az el˝ oz˝o pillanatbeli sebess´eg ir´ any´aba mutat a gyorsul´ asm´er˝ onk x tengelye. Ekkor a sebess´eg- ´es gyorsul´asvektort k¨oz¨os koordin´ atarendszerben ´ abr´ azolva megfigyelhet˝o, hogy k¨oz¨os orig´oj´ u, azonos l´ept´ek˝ u (azaz egym´ ashoz k´epest csak elforgatott) koordin´atarendszerekben a helyvektorok hossza azonos, teh´ at ez Pitagorasz t´etele szerint sz´am´ıthat´o: 30
|ar | = |am | =
q a2xm + a2ym
´ A GPS-vev˝ o Nyugat-Kelet, Eszak-D´ el f¨oldrajzi koordin´atarendszerben m˝ uany´aval, k¨ odik. A gyorsul´ asm´er˝ o x ir´ anya megegyezik a sebess´egvektor (v) ir´ m´ıg y ir´ anya arra mer˝olegesen, jobbcsavar szab´alya szerint helyezkedik el. A gyorsul´ asm´er˝ o f¨ oldrajzi koordin´atarendszert˝ol m´ert elfordul´asa legyen α. Ekkor α a sebess´egvektor argumentuma. A forgat´ ast az u ´ gy nevezett forgat´ o m´atrix uk el. Amint az az 5.7. ´abr´ an l´athat´o a m´ert gyorsul´ as (T ) seg´ıts´eg´evel v´egezz¨ ´abr´ azol´asa ´es ´ atsz´am´ıt´ as´ ahoz sz¨ uks´eges adatok a f¨oldrajzi koordin´atarendszerben: α = arctan(vy /vx ) axr = axm cosα − aym sinα ayr = axm sinα + aym cosα Mindez m´atrixokkal fel´ırva: cosα −sinα axm ax = aym sinα cosα ay A transzform´ al´ ashoz felhaszn´alt m´atrix a forgat´ om´ atrix: cosα −sinα T = sinα cosα
(5.13) (5.14) (5.15)
(5.16)
(5.17)
Annak ellen´ere, hogy (az 5.7. ´abra csak az els˝o s´ıknegyedbe es˝o v eset´et ´abr´ azolja), azonban az 5.17 egyenletben meghat´arozott forgat´ o m´atrix (T ) az osszes s´ıknegyedben ´erv´enyes. ¨
31
5.5.
Szimul´ aci´ os eredm´ enyek
A K´ alm´an-sz˝ ur˝o szimul´aci´ oja PC-s k¨ornyezetben, Matlabban ker¨ ult megval´ os´ıt´ asra. A val´ os adatokkal v´egezhet˝o szimul´aci´ o ´erdek´eben a szimul´alt m´er´esi eredm´enyeket f´ ajlokb´ ol olvassuk be. K¨ uls˝ oleg az egyszer˝ u sz¨ovegf´ajlok b´ arki ´altal m´odos´ıthat´ ok, ´ıgy t´ arolhat´o benn¨ uk ak´ ar szimul´alt, ak´ ar val´os m´ert ´ert´ek is.
A Kálmán−erõsítés nem 0 elemeinek értéke
1
K(0,0)(k) K(1,0)(k) K(2,1)(k) K(3,1)(k)
0.9
0.8
0.7
0.6
0.5
0.4 0
10
20
30
40 50 60 diszkrét idõ (k)
70
80
90
100
5.8. ´ abra. A K´ alm´an-er˝ os´ıt´es K ´ert´ekeinek konvergenci´aja A szimul´aci´ o sor´an megfigyelhet˝o az er˝os´ıt´esi m´atrix elemeinek konvergenci´ aja (5.8. ´ abra). Az er˝ os´ıt´esi m´atrix 4 × 2 dimenzi´ oj´ u, azonban az x ir´ any´ u jav´ıt´ as eset´en az y ir´ any´ u elt´er´es becsatol´ asa 0, m´ıg az y ir´ any´ u helyesb´ıt´es eset´en az x ir´ any´ u k¨ ul¨ onbs´eget nem vesz¨ uk figyelembe. Ez az x ´es y ir´ any´ u hib´ak f¨ uggetlens´eg´eb˝ol k¨ ovetkezik. A szimul´aci´ os tapasztalatok alapj´an eset¨ unkben alkalmazhat´o a Steady State ´allapot. A becsl˝o-kovarianciam´ atrixot P olyan alni, melynek elemei elegend˝oen diagon´ alm´atrixk´ent dim(P ) = 4 × 4 kell inicializ´ nagyok. Az el˝ oz˝oek miatt a becsl˝o-kovarianciam´ atrixot P = 100000 ∗ I ´ert´ek˝ unek inicializ´ altam.
32
5.5.1.
Szimul´ aci´ o ide´ alis adatokon
A szimul´alt adatok egy m´asik Matlab alkalmaz´assal k´esz¨ ultek. Egyenes ´es g¨ orbevonal´ u mozg´ ast is szimul´altunk. Az 5.9. ´abr´ an egy x ir´ any´ u egyenes vonal´ u egyenletesen gyorsul´ o, majd lassul´o mozg´as l´athat´o. A szimul´alt gyorsul´ as´ert´ekek az 5.10. ´ abr´ an tal´ alhat´ ok. Az ´abr´ akon az ide´ alis eset l´athat´o. 1 0.8
pozíció y koordinátája [m]
0.6 0.4 0.2 0 −0.2 −0.4 −0.6 −0.8 −1 0
10
20
30
40 50 60 70 pozíció x koordinátája [m]
80
90
100
2
x irányú gyorsulás [m/s ]
5.9. ´ abra. Szimul´alt egyenes ment´en val´o halad´as
1 0.5 0 −0.5 −1 0
5
10
15
20
25
15
20
25
2
y irányú gyorsulás [m/s ]
t[s] 1 0.5 0 −0.5 −1 0
5
10 t[s]
5.10. ´ abra. Gyorsul´ as´ert´ekek a szimul´alt egyenes ment´en val´o halad´as eset´en Az 5.11. ´ abr´ an a fenti mozg´as l´athat´o, az ide´ alis koordin´at´akhoz ´es gyorsul´ a33
s´ert´ekekhez Matlabban zajt adtunk hozz´ a. A gyorsul´ asm´er˝o sz´or´as´at a koordin´ at´akhoz k´epest lecs¨ okkentve l´athat´o a K´alm´an-sz˝ ur˝o hat´asa. Az 5.12. ´abr´ an ugyanerre az adatsorra lefuttatott Steady State ´allapot l´athat´o. 0.05
becsült pozíció mért pozíció valós pozíció
0.04 0.03 0.02
y
p [m]
0.01 0 −0.01 −0.02 −0.03 −0.04 −0.05 0
50
100
150
200 p [m]
250
300
350
400
x
5.11. ´ abra. Szimul´aci´ o egyenes ment´en K´alm´an-sz˝ ur˝ovel
0.05
becsült pozíció mért pozíció valós pozíció
0.04 0.03 0.02
y
p [m]
0.01 0 −0.01 −0.02 −0.03 −0.04 −0.05 0
50
100
150
200 p [m]
250
300
350
400
x
5.12. ´ abra. Szimul´aci´ o egyenes ment´en Steady State K´alm´an-sz˝ ur˝ovel
34
5.5.2.
Szimul´ aci´ o val´ os adatokon
A val´ os adatokon val´ o szimul´aci´ ohoz az ´ert´ekeket g´epkocsival bej´ art p´ aly´ar´ol szerezt¨ uk. Ezen l´ep´es legf˝ obb c´elja az optim´ alis sz´or´asok, ez´altal az optim´ alis ´alland´ osult,Steady State er˝ os´ıt´esi m´atrix meghat´ aroz´asa. A szimul´alt adatok alapj´ an m´ar csak az ´ alland´ osult Steady State szimul´aci´ ot futtatuk. Azonban sz¨ uks´eg¨ unk van az ´ alland´ osult ´allapot n´elk¨ uli szimul´aci´ ora is, a gyorsul´ asm´er˝o sz´ or´ as´ anak jobb becsl´es´ehez. A felt´etelezett sz´or´as n´egyzeteit Q-ba behelyettes´ıtve l´athat´ov´ a v´alik a K´ alm´an-er˝ os´ıt´es v´egtelenben vett hat´ar´ert´eke, amelyet majd a Steady State szimul´aci´ oban megadunk. Az al´abbi h´ arom ´abr´ an (5.13. 5.14. ´es 5.16.) a m´ert ´es a K´alm´an-sz˝ urt poz´ıci´ok l´athat´ok. L´ athat´o, hogy m´ıg az 5.13. ´ abr´ an a GPS-vev˝ o ´altal m´ert poz´ıci´o alig sz´am´ıt a becs¨ ult poz´ıci´o eset´en, a K´ alm´an-sz˝ ur˝o a gyorsul´ asm´er˝o adatait t´ ul nagy s´ ullyal veszi figyelembe. Az 5.14. ´ abr´ an a kanyarok k¨ozti egyenes vonal´ u mozg´asunk sor´an jav´ıtja poz´ıci´onkat, azaz sim´ıtja a GPS-vev˝ o hib´aj´ at. A harmadik, az 5.16. ´abr´ an, alig l´athat´o elt´er´es a GPS-vev˝ o ´altal m´ert poz´ıci´ ot´ol, azaz ebben az esetben a K´ alm´an-sz˝ ur˝o t´ ulzottan er˝ os´ıti a GPS-vev˝ o ´altal m´ert poz´ıci´ot, a gyorsul´ asm´er˝o adatait nagyon kis s´ ullyal sz´ am´ıtja a becsl´es sor´an. 60
korrigált pozíció mért pozíció
50
py [m]
40
30
20
10
0 0
10
20
30 px [m]
40
50
60
5.13. ´ abra. A m´ert ´es K´ alm´an-sz˝ urt adatok t´ ulzott gyorsul´ as er˝os´ıt´essel
35
60
korrigált pozíció mért pozíció
50 40
y
p [m]
30 20 10 0 −10 −10
0
10
20
30
40
50
60
px [m]
5.14. ´ abra. A m´ert ´es K´alm´an-sz˝ urt adatok megfelel˝o er˝os´ıt´esekkel
korrigált pozíció mért pozíció
36 34 32
py [m]
30 28 26 24 22 20 26.5
27
27.5
28
28.5
29 29.5 px [m]
30
30.5
31
31.5
5.15. ´ abra. A m´ert ´es K´ alm´an-sz˝ urt adatok megfelel˝o er˝os´ıt´esekkel, 5.14. ´abra r´eszlete)
36
60
korrigált pozíció mért pozíció
50
30
y
p [m]
40
20 10 0 −10 −10
0
10
20
30
40
50
60
p [m] x
5.16. ´ abra. A m´ert ´es K´ alm´an-sz˝ urt adatok t´ ulzott GPS koordin´ata er˝os´ıt´essel
37
5.6.
Steady State K´ alm´ an sz˝ ur˝ o megval´ os´ıt´ asa DSP-n
M´er´esi tapasztalataink alapj´an a DSP k´arty´an az ´alland´ osult (Steady State) K´ alm´an-sz˝ ur˝o ker¨ ult megval´ os´ıt´asra. Maga a k´od n´egy f¨ uggv´enyb˝ol ´all. A m´atrix szorz´ asok az ´ atl´ athat´os´ ag ´erdek´eben matematikai alapm˝ uveletekkel ker¨ ultek megval´ os´ıt´ asra. 1. Az Init_Arrays() f¨ uggv´eny a m´atrixokat inicializ´ alja (A, B, C, T ´es a K´ alm´an-er˝ os´ıt´es K) ezen fel¨ ul itt t¨ort´enik a kezd˝oa´llapot: x(0) (kezd˝o o sebess´eg) inicializ´ al´asa is. A kezd˝o ´allapot pontos ispoz´ıci´o) ´es v (kezd˝ meret´ehez sz¨ uks´eges a gyorsul´ asm´er˝o kezdeti ir´ any´anak ismerete is. Ez az adat a m´er´es kezdete ut´ani k=5 m´asodpercbeli m´ert poz´ıci´o ´es a k=0 id˝opillanatbeli poz´ıci´o k¨ ul¨ onbs´eg´eb˝ol sz´am´ıthat´o. Szint´en ebb˝ol sz´am´ıthat´o a kezd˝ osebess´eg, mely nem m´as, mint az els˝o 5 u ¨ tem alatti sebess´egek atlaga. ´ Az el˝ obbiekb˝ol k¨ ovetkez˝oen az Init_Arrays() f¨ uggv´eny megh´ıv´ asakor m´ar rendelkez´esre kell ´ alljanak a sz¨ uks´eges ´ert´ekek. 2. Az Init_Arrays_i() f¨ uggv´eny ugyanazt a feladatot l´atja el, mint a fent eml´ıtett Init_Arrays(), azonban ez a megfelel˝o m´atrixokat az interpol´al´o o m´odhoz igaz´ıtja, ekkor az interpol´aci´ os id˝o ti = fti , ahol t az interpol´aci´ n´elk¨ uli id˝oegys´eg, fi pedig az interpol´aci´ os frekvencia (b˝ovebben l´asd 5.7.). 3. Az Accconvert() f¨ uggv´eny a gyorsul´ asm´er˝ob˝ol bej¨ov˝ o ´atlagolt adatokat konvert´ al´ o program, a kit¨olt´esi t´enyez˝ok ´atlag´ at sz´amolja ´at SI rendszerbe, azaz sm2 -be. (l´ asd a 4.2. egyenletet). 4. A K´ alm´an-sz˝ ur´est megval´os´ıt´o Kalmanfilter() f¨ uggv´eny. A f¨ uggv´eny bemenetk´ent megkapja az aktu´alis GPS-vev˝ ob˝ol be´erkez˝o adatot ´es a gyorsul´ asm´er˝ ob˝ol j¨ ov˝ o a´tlagolt ´ert´eket. A gyorsul´ as´ert´ekek SI-be val´o atsz´am´ıt´ ´ asa ut´an a kor´ abbi id˝opillanat ´allapotvektora alapj´an megt¨ort´enik a gyorsul´ as´ert´ekek koordin´atatranszform´aci´ oja. Majd az ´allapotegyenletnek (5.12.) megfelel˝oen megbecs¨ ulj¨ uk a gyorsul´ asm´er˝o alapj´an a poz´ıci´onkat. Ezut´ an a GPS-vev˝ o ´altal m´ert poz´ıci´ot ¨osszehasonl´ıtjuk a becs¨ ult poz´ıci´oval (˜ y (k)). Az ismert elt´er´est a K´alm´an-er˝ os´ıt´esnek megfelel˝ o ar´ anyban figylembe vessz¨ uk a helyesb´ıt´es sor´an. A f¨ uggv´eny v´eg¨ ul vissza´ırja a helyesb´ıtett koordin´at´akat a nyers koordin´at´ak hely´ere a megfelel˝ o glob´alis v´altoz´ okba. Legv´eg¨ ul a f¨ uggv´eny kisz´ amolja ´es elt´ arolja a k¨ ovetkez˝o (k+1). id˝opillanatbeli koordin´atatranszform´aci´ ohoz sz¨ uks´eges forgat´ o m´atrixot (T ). A halad´asi ir´ any (α) ´es az abb´ol k¨ovetkez˝o forgat´ o m´atrix (T ) elemei a k¨ovetkez˝ok´epp sz´ am´ıthat´ ok: A halad´asi ir´ any(α) a sebess´egvektor k´et komponens´enek arkusztangens´eb˝ol sz´ am´ıthat´o. Vegy¨ uk ´eszre azonban, hogy a mi eset¨ unkben nincs sz¨ uks´eg mag´ara a sz¨ogre, a forgat´ o m´atrix (T ) sz´am´ıt´as´ahoz csak α szinusz´ ara ´es koszinusz´ ara. A DSP-n a trigonometrikus f¨ uggv´enyek kisz´ am´ıt´asa viszonylag nagy sz´ am´ıt´ asig´eny˝ u feladat, c´elszer˝ u teh´at olyan elj´ar´ast tal´ alnunk, amely n´elk¨ ul¨ ozi mag´anak a sz¨ognek a meghat´aroz´as´at. Amint az az 5.17. ´abr´ an v vx . Teh´at l´athat´o, hogy az α sz¨ og szinusza nem m´as, mint |v|y , koszinusza pedig |v| 38
mi k´et oszt´as m˝ uveletet hajtunk v´egre a sz¨ uks´eges sz¨ogf¨ uggv´enyek ´ert´ekeinek meghat´aroz´as´ ahoz. É
vy v |v|sinα α Ny
vx
K
|v|cosα D
5.17. ´ abra. T m´atrixhoz sz¨ uks´eges ´ert´ekek meghat´aroz´asa sz¨ogf¨ uggv´enyek n´elk¨ ul
39
5.7.
Interpol´ aci´ o
A K´ alm´an-sz˝ ur˝o alkalmaz´as´aval tov´abbi el˝ony´ev´e v´alik alkalmaz´asunknak az is, hogy a GPS-vev˝ o m´asodpercenk´ent k¨ uld¨ott adataihoz igaz´ıtott sz´am´ıt´asi ´es kijelz´esi feladatok a GPS-vev˝ o kisebb mintav´eteli frekvenci´aja helyett a gyorsul´ asm´er˝ o nagyobb mintav´eteli frekvenci´aj´ ahoz id˝ oz´ıthet˝ok. Interpol´aci´ o eset´en a K´ alm´an-sz˝ ur˝o f¨ uggv´eny alkalmazhat´o (az ´allapotegyenletes le´ır´ as ebben az esetben is haszn´alhat´ o), azonban ekkor a K´alm´an-er˝ os´ıt´es (K) ´ert´ekeit ´at kell ´ertelmezn¨ unk. ´ j poz´ıci´o becsl´ese sor´an csak akkor szabad figyeAz elt´er´eseket (˜ y (k)) az u lembe venni, amikor rendelkez´esre ´allnak ´erv´enyes u ´ j koodin´at´ak a GPS-vev˝ ot˝ol. Amennyiben csak a gyorsul´ asm´er˝ot˝ol rendelkez¨ unk u ´ j adattal, akkor az elt´er´es s´ uly´at a poz´ıci´o helyesb´ıt´es´en´el 0-ra kell ´all´ıtanunk. Az el˝oz˝o id˝opillanatbeli koordin´ at´at´ol val´ o elt´er´es figyelembe v´etele hib´at okozna az interpol´alt poz´ıci´ o meghat´aroz´asakor. Ebben az esetben k´et GPS koordin´ata k¨oz¨ott csak a fizika t¨ orv´enyeit haszn´aljuk fel a poz´ıci´o meghat´aroz´as´ara, nem ´all rendelkez´esre t¨ obblet inform´aci´ o, l´asd az 5.18. ´es 5.19. ´abr´ akat. A k¨ovetkez˝o GPS koordin´ ata be´erkez´esekor u ´ jra elv´egezhet˝o a korrekci´o a becs¨ ult ´es a m´ert poz´ıci´o k¨ oz¨ ott. M´er´esi tapasztalataink szerint azonban a kor´abbi koordin´at´at´ol val´o elt´er´es (˜ y (k)) figyelembe v´etele a sebess´eg eset´en jav´ıt´o hat´assal van a pontoss´egra. Felt´etelez´es¨ unk szerint ez a gyorsul´ asm´er˝o oldalir´ any´ u, azaz az y ir´ anyban m´ert gyorsul´ as hib´ aj´ at cs¨ okkenti, ez´altal pontosabban meghat´arozhat´o az interpol´ aci´ o sor´an a sebess´eg, ´es ez´altal a gyorsul´ asm´er˝o ir´ anya. 60
interpolált pozíció mért pozíció
50
30
y
p [m]
40
20 10 0 −10 −10
0
10
20
30
40
50
px [m]
5.18. ´ abra. K´ alm´an-sz˝ ur˝o alkalmaz´asa interpol´al´ assal
40
60
interpolált pozíció mért pozíció
40
py [m]
35
30
25
20
15 45
46
47
48
49 px [m]
50
51
52
5.19. ´ abra. K´ alm´an-sz˝ ur˝o alkalmaz´asa interpol´al´ assa
41
53
6. fejezet
Szoftver 6.1.
Haszn´ alati u ´ tmutat´ o
A nyomvonalk¨ ovet˝o soros porton kereszt¨ ul be´ all´ıthat´o, ´es szint´en ezen a soros porton kereszt¨ ul t¨ ort´enik a m´ert ´ert´ekek, utas´ıt´asok kijelz´ese a felhaszn´al´o fel´e. A PC oldal´ an erre a c´elra megfelel˝o a Microsoft Windows soros kommunik´aci´ os programja, a Hyper Terminal. Itt t¨ort´enik az adatok k¨ uld´ese, fogad´ asa 57600 baud adat´ atviteli sebess´eggel. Alapbe´ all´ıt´ ask´ent nem kapunk semmilyen karaktert a porton. Az els˝o billenty˝ u le¨ ut´esekor megjelenik egy parancssor, ahol utas´ıt´asainkat megadhatjuk. Minden parancs bevitele egy ENTER lenyom´ as´aval t¨ort´enik meg, amelyre mindenk´epp kapunk v´alaszt. Ha a parancs ´ertelmezhet˝o, akkor annak megfelel˝ot, de ha a parancs´ertelmez˝ o nem ismeri fel, akkor egy hiba¨ uzenetet kapunk. A BACKSPACE billenty˝ uvel van lehet˝os´eg¨ unk jav´ıt´asra, ekkor nem kell az eg´esz parancsot a param´etereivel – amely egyes esetekben igen hossz´ u–u ´ jb´ ol megadnunk. Fontos megeml´ıten¨ unk, hogy a parancs´ertelmez˝o ´allapotg´epk´ent m˝ uk¨odik. Az alap´allapotb´ ol kiindulva a legt¨obb ´allapot t¨obbnyire fa kialak´ıt´as´ u, azaz nem minden parancs ´erhet˝ o el b´ armely ´allapotb´ol. Az ESC billenty˝ u b´ armikori lenyom´ as´ aval visszaker¨ ul¨ unk alap´allapotba. Az al´ abbiakban felsoroljuk azokat a parancsokat, amelyek alap´allapotban haszn´alhat´ oak. help: A GUI szoftver tartalmaz egy bels˝o parancslist´at, amely arra az esetre ny´ ujt segt´ıs´eget, ha nincs k´ezn´el semmilyen le´ır´ as a parancsok pontos nev´er˝ ol. (6.1. ´ abra) reset: Egy ´ altal´ anos szoftveres alap´allapotot id´ez el˝o. Hat´ asa ugyanaz, mintha le¨ ut¨ ott¨ uk volna az ESC billenty˝ ut. ver: A nyomvonalk¨ ovet˝o verzi´osz´ am´ at ´ırja ki. ver all: Kieg´esz´ıt´esk´ent b˝ ovebb verzi´oinform´aci´ oval szolg´ al. A vev˝ oegys´eg bekapcsol´ asakor az NMEA mondatok k¨ uld´ese el˝ott elk¨ uldi saj´at adatait, verzi´ osz´ am´ at. Ennek a sikeres v´etele eset´en – amelynek felt´etele, hogy a bekapcsol´asakor a szoftver m´ar fusson – ki´ır´ asra ker¨ ulnek a vev˝ o adatai is. (l´ asd a 6.2. ´abr´ an!) 42
6.1. ´ abra. PC-interf´esz: help parancs
cal: A rendszerhez csatlakoz´o gyorsul´ asm´er˝o kalibr´ aci´ oj´ at v´egzi el. Ehhez az sz¨ uks´eges, hogy a kalibr´ aci´ o alatt az eszk¨oz mozdulatlanul, v´ızszintesen legyen. A parancs eredm´enyes v´egrehajt´ asa ut´an u ¨ zenetet kapunk, miszerint a kalibr´ aci´ o sikeres. ´ set: Altal´ anos be´ all´ıt´ o parancs, amelynek ¨onmag´ aban nincs hat´asa. set kalman on: Hat´ as´ ara bekapcsoljuk a K´alm´an sz˝ ur˝ot. set kalman i: Hat´ as´ ara bekapcsoljuk az interpol´al´o K´alm´an sz˝ ur˝ ot. Ha nem specifik´ aljuk az inerpol´aci´ o frekvenci´aj´ at, akkor alap´ertelmez´esk´ent 4Hz-en m˝ uk¨ odik. set kalman off: Hat´ as´ ara kikapcsoljuk a K´alm´an sz˝ ur˝ot. set frequency x: Ha az interpol´al´o K´alm´an sz˝ ur˝o akt´ıv, az interpol´aci´ o frekvenci´aja v´altoztathat´ o a paranccsal. A frekvenci´ at Hz-ben kell megadni. set mode 1: Az els˝o u ¨ zemm´odba ´all´ıtjuk az eszk¨ozt. Ekkor form´azott sorokban az interf´eszre megkapjuk a vev˝ o ´altal k¨ uld¨ott aktu´alis adatokat m´asodpercenk´ent. Logol´ asra haszn´alhat´o. A rendszer egy billenty˝ u lenyom´ asakor alap´allapotba ker¨ ul. set mode 2: A m´asodik u asra haszn´al¨ zemm´od, amelyet szint´en Logol´ hatunk. Ekkor egysoros t¨om¨or form´aban kapunk adatokat a k´eperny˝ore. Mivel nem f´er el minden adat egy sorba, ´ıgy nem tartalmaz mindent, csak a legfontosabbakat. A rendszer egy billenty˝ u lenyom´ asakor alap´allapotba ker¨ ul.
43
set mode 3: A harmadik, ´es egyben a legl´enyegesebb u ¨ zemm´od: a nyomvonalk¨ ovet˝o m´od. Itt v´alaszthatunk a h´ arom nyomvonalk¨ovet˝o u ¨ zemm´od k¨ oz¨ ul. Ezek n´ev szerint: Automatic: Automatikus u ¨ zemm´od, ahol a koordin´at´ak felv´etele a helysz´ınen zajlik. Single Track: Egy nyomvonal k¨ovet´ese, nincs fordul´o, csup´ an egy referencia egyenest˝ol val´o t´ avols´agot jelzi ki minden m´asodpercben. Az u asa sz¨ uks´eges. ¨ zemm´odban tov´abbi param´eterek megad´ Manual: az algoritmus ugyanaz, mint az els˝o – Automatikus – esetben, csup´ an annyiban k¨ ul¨onb¨ozik, hogy a param´etereket k´ezzel kell megadni.
6.2. ´ abra. PC-interf´eszen a verzi´oinform´aci´ o lek´erdez´ese Egyes almen¨ ukben param´etereket is meg kell adnunk, amelyek alapj´an m˝ uk¨ odtetj¨ uk a szoftvert. Most n´ezz¨ uk meg, hogy nyomvonalk¨ovet˝o u ¨ zemm´odban (mode 3) milyen param´etereket kell megadnunk, ´es milyen m˝ uk¨od´est v´arunk el! •
– Automatic u ulet n´egy sarokpontj´ at a helysz´ı¨ zemm´odban a f¨oldter¨ nen vihetj¨ uk be. Bevihetj¨ uk az aktu´alis poz´ıci´onkat [ENTER] lenyom´ as´ aval, vagy az utols´ o 20 m´ert poz´ıci´o ´atlagak´ent [av ENTER] parancsokkal. Ezek k¨oz¨ott tetsz˝ olegesen v´alaszthatunk mind a n´egy sarokpont bevitele eset´en. Pl: av – Ezt k¨ ovet˝oen meg kell adnunk a startpontot, ahonnan a nyomvonalk¨ ovet´es indul. Ezt megadhatjuk a starthelyen t¨ort´en˝o [ENTER] 44
lenyom´ as´ aval. Ekkor automatikusan a legk¨ozelebbi pontot ´all´ıja be kezd˝ opontnak, ´es a hosszabbik oldal ir´ any´aba ind´ıtja a nyomvonalk¨ovet´est. Ha ezt magunk szeretn´enk be´ all´ıtani, akkor haszn´aljuk ehelyett a [way kezd˝ opont|v´ egpont ENTER] parancsot. Az ´atrendezett pontok sorsz´amai el˝oz˝oleg ki´ır´ asra ker¨ ultek, ott kell kiv´ alasztani. Pl: way 23 – Utols´ o param´eterk´ent meg kell adnunk a nyomvonalak sz´eless´eg´et m´eterben. Ehhez haszn´aljuk a [w [sz´ eless´ eg] ENTER] parancsot. Pl: w 10.71 – Ez ut´an elkezd˝ odik a nyomvonal k¨ovet´ese. K¨ovetni kell a korrekci´os utas´ıt´ asokat, hogy a vonalhoz k¨ozel haladjunk. Ha fordul´oponthoz ´erkezt¨ unk, akkor a korrekci´os adatok k¨oz¨ott kapunk egy TURN u ¨ zenetet. Ekkor fordulnunk kell, ´es a rendszer m´ar az u ´ j nyomvonalt´ol val´ o elt´er´est m´eri eg´eszen a k¨ovetkez˝o fordul´oig, ´es ´ıgy tov´abb. •
– Simple Track u unk. Az egyenest ¨ zemm´odban egy egyenest k¨ovet¨ k´et referenciapontra illesztj¨ uk. Els˝o k¨orben a v´egpontot kell megadni, amelynek k´et m´odja is van. Megadhatjuk a helysz´ınen egy ENTER lenyom´ as´ aval, de megadhatjuk k´ezi bevitellel is a k¨ovetkez˝o paranccsal [p sz´ eless´ eg hossz´ us´ ag ENTER]. Pl: p 47.4728 19.0612 – Ez ut´an meg kell adnunk a kezd˝opont koordin´at´ait. Ahogy a v´egpont eset´eben, itt is k´et v´alaszt´asunk van a koordin´at´ak bevitel´ere. Pl: p 47.3200 19.8101 – Indulhat a nyomvonal k¨ovet´ese. (6.3. ´abra)
•
– Manual u ugy m˝ uk¨odik, mint Au¨ zemm´odban a rendszer szinte ugyan´ tomatic m´odban, csak minden param´etert k´ezzel kell bevinn¨ unk. El˝ osz¨ or 4 alkalommal meg kell adnunk a f¨oldter¨ ulet sarokpontjainak koordin´ at´ait a m´ar kor´abban megismert [p sz´ eless´ eg hossz´ us´ ag ENTER] paranccsal. Pl: p 46.947 18.422 – Ezt k¨ ovet˝oen a kezd˝opont koordin´at´ait kell bevinn¨ unk az el˝oz˝o anal´ogia szerinti [p sz´ eless´ eg hossz´ us´ ag ENTER] m´odon. Ez ut´an a program maga v´alasztja ki a nyomvonalat a hosszabbik oldallal p´ arhuzamos egyenes ment´en. Ugyancsak v´alaszthatunk az oldalak k¨oz¨ott a [way kezd˝ opont|v´ egpont ENTER] paranccsal. Pl: way 12
45
6.3. ´ abra. PC-interf´esz: nyomvonal k¨ovet´ese
– Szint´en meg kell adnunk a nyomt´ av sz´eless´eg´et a [w [sz´ eless´ eg] ENTER] paranccsal. Pl: w 0.97 – Ezek ut´an kezd˝ odhet a nyomvonalk¨ovet´es, az adatok m´asodpercenk´ent folyamatosan ´erkeznek a kijelz˝ore, ha TURN jelz´est kaptunk, fordulnunk kell a k¨ovetkez˝o jelz´esig.
6.2.
Szoftver rendszerterv
Az al´ abbiakban bemutatjuka DSP-n fut´o be´ agyazott szoftvert. A k´od szabv´anyos C nyelven k´esz¨ ult, az Analog Devices saj´at fejleszt´es˝ u Visual DSP++ 4.5 integr´alt fejleszt˝o k¨ ornyezet seg´ıts´eg´evel. Be´ agyazott rendszerr˝ ol l´ev´en sz´o, a rendszer akt´ıv kapcsolatban van k¨ornyezet´evel. Ez a kommunik´aci´ o interruptok r´ev´en t¨ort´enik (l´asd 6.4. ´abra)
6.2.1.
GPS interrupt
A GPS fel˝ ol 4800 bauddal ´erkez˝o adatok karakterenk´ent megszak´ıt´ast k´ernek (UART0). Az adatok egy glob´alis – b´ armely komponens sz´am´ ara el´erhet˝o t´ arba ker¨ ulnek k´es˝ obbi feldolgoz´ asra. A pufferel´est u ´ gy v´egezz¨ uk el, hogy az els˝o let´ arolt mondat GGA t´ıpus´ u legyen. Ezt k¨ovet˝oen megadott sz´am´ u karakter be´erkez´ese ut´an jelezz¨ uk, hogy a pufferben teljes mondatok vannak, elindulhat a hasznos adatok kinyer´ese, azok megfelel˝o form´atumra val´o konvert´ al´asa. Az ´ıgy kapott adatokr´ ol a k´es˝ obbiekben m´eg lesz sz´o, ´ıgy most nem t´er¨ unk ki ezek r´eszletes kifejt´es´ere. 46
TIMER 0 Interrupt (Gyorsulásmérő) 96 Hz
TIMER 1 interrupt Interpoláció frekvenciája
Interpoláló Kálmán-szűrő aktív?
n
GPS interrupt Adat érkezett
Aktuális gyorsulás-adat lekérdezése
c == ‘$’ && GGA mondat eleje?
PC-interfész interrupt Adat érkezett
n
i
i Kálmán szűrő algoritmus futtatása
Tárolás cirkuláris pufferben
Nyers pufferelés
n Leütött billentyű ENTER?
Nyers pufferelés
i Megérkezett minden adat?
Koordináta korrekció elvégzése
n
parancs és paraméterek értelmezése
i Értékes adatok kinyerése
n Parancs értelmezhető?
tárolás n elemű cirkuláris struktúra-tömbben
i Üzemmód váltás, végrehajtás
Megszakításra várunk
6.4. ´ abra. Alap´allapotban a szoftver m˝ uk¨od´ese
6.2.2.
Timer 1 interrupt
Az interpol´ aci´ o id˝oz´ıt´es´ere egy be´ep´ıtett Timert haszn´alunk (TIMER1). Ennek frekvenci´aja szoftveresen v´altoztathat´ o, alap´ertelmezett be´ all´ıt´as szerint 4Hz. Megszak´ıt´ as k´er´es eset´en megvizsg´ alja, hogy akt´ıv-e az interpol´al´o K´alm´ansz˝ ur˝o u ur˝ot, ¨ zemm´od. Akt´ıv u ¨ zemm´od eset´en futtatja az interpol´al´o K´alm´an-sz˝ m´as esetben nem hajt v´egre utas´ıt´ast.
6.2.3.
Timer 2 interrupt
A gyorsul´ asm´er˝ o adatainak lek´erdez´ese id˝oz´ıt´es szerint t¨ort´enik. M´ asodpercenk´ent 96 gyorsul´ as ´ert´eket k´erdez¨ unk le a gyorsul´ asm´er˝ot˝ol. Az adatokat elt´ aroljuk egy 300 m´eret˝ u cirkul´ aris pufferben. A puffer nagy m´erete el˝ony¨os, t¨ obbek k¨ oz¨ ott ´ atlagol´ as, kalibr´ al´as szempontj´ ab´ol.
6.2.4.
PC-interf´ esz interrupt
Tekints¨ uk a 6.4. ´ abr´ an ´ abr´ azolt PC interf´esz megszak´ıt´asi rutinj´at! Az interf´esz – ahogy majd a k´es˝ obbiekben b˝ ovebben kifejt´esre ker¨ ul – PC -s oldal´ an egy Hyper Terminal fut, amely 57600 baud aszinkron soros adat´ atviteli protokollon (UART) k¨ uldi a le¨ ut¨ ott billenty˝ uk ASCII azonos´ıt´oit. Ezeket a be´erkezett Byteokat ellen˝ orizz¨ uk, majd elt´ aroljuk.
47
Speci´ alis karakternek sz´ am´ıt a SPACE, amely mindig param´etereket v´alaszt el, ´es az ENTER, amelynek lenyom´ as´aval utas´ıtjuk a parancs´ertelmez˝ ot a parancs futtat´as´ ara. Ha ´ertelmezhetetlen parancs ´erkezett, vagy a param´eterek form´atuma, sz´ ama nem az elv´artnak megfelel˝oen alakul, akkor u uk a puffert, ¨ r´ıtj¨ ´es v´arunk egy u ´ j parancsra. ´ Ertelmezhet˝ o parancs eset´en u uk¨od´ese m´ar ¨ zemm´odot v´altunk, a szoftver m˝ nem kiz´ar´ olag az alap´allapotban foglaltak szerint zajlik. A kommunik´aci´ o az interf´eszekkel v´altozatlanul megmarad, de m´as algoritmusok is u ul¨ temez´esre ker¨ nek. A 6.5. ´ abr´ an a szoftver alap´allapot´an k´ıv¨ uli m˝ uk¨od´es´et foglaltuk ¨ossze. p [sz][h]
Pozíciónk nyomvonaltól való távolságának kijelzése
másodpercenként
Bővített GPS adatok kijelzése
Kezdőpont manuális bevitele p [sz][h]
set mode 1
Végpont manuális bevitele
billentyű leütése
Egysoros GPS adatok kijelzése
2
set mode 2
Alap állapot
billentyű leütése
Simple Track
set mode 3
Nyomkövető üzemmód választás
3 Manual
1
Automatic 4x
4x
4 sarokpont felvétele a helyszínen
pozíció adat
ENTER a megadott határokon belül vagyunk?
n
fordulás jelzése, újabb pozícióra várunk...
4 sarokpont manuális bevitele p [sz][h] értelmetlen irány (pl 1-3 átló)
Kezdőpont, vagy kezdő irány manuális bevitele
Kezdőpont felvétele a helyszínen
i
ENTER, way [k][v]
nyomvonaltól való távolság kiszámítása
p [sz][h], way [k][v]
Nyomtáv megadása
távolság ellenőrzése előjel, haladási irány szerint
Nyomtáv megadása
w [szélesség] korrekció kijelzése iránnyal: pl.: 1,5m BALRA
w [szélesség]
másodpercenként
nyomkövető algoritmus
Nyomkövető algoritmus futtatása
6.5. ´ abra. Az alap´allapoton k´ıv¨ uli ´allapotok ´ athat´os´ Atl´ agi okokb´ ol nem jel¨olt¨ uk be, hogy minden ´allapotb´ol ESC billenty˝ uvel alap´allapotba ker¨ ulhet¨ unk, ´es azt, hogy ´allapotok k¨oz¨ott csak megfelel˝o szintaktik´ aj´ u paranccsal l´ephet¨ unk. A m˝ uk¨od´esi u ¨ zemm´odokkal a k¨ovetkez˝o al48
fejezetben fogunk fogunk foglalkozni, ´ıgy azok t´ argyal´ as´ara most nem t´er¨ unk ki. Fontos megjegyezni, hogy az alap´allapotban ismertetett megszak´ıt´asok a t¨ obbi ´ allapotban is akt´ıvak, az ´allapotok k¨ozben is v´egrehajt´ asra ker¨ ulnek. Ez nem is t¨ ort´enhetne m´ask´epp, hiszen a poz´ıci´ok felv´etele ´es az u ¨ zemm´odok k¨oz¨otti v´alt´ asokkor is sz¨ oks´eg van a GPS ´es a gyorsul´ asm´er˝o egys´eg ´altal k¨ uld¨ott adatokra.
6.3. 6.3.1.
Adatok fogad´ asa, t´ arol´ asa, feldolgoz´ asa DSP input – az NMEA mondatok
A GPS vev˝ o egys´egek egy egys´eges kommunik´aci´ os form´at haszn´alnak a koordin´ ata adatok tov´abb´ıt´ asa sor´an. Karakteres u uldenek kime¨ zeneteket k¨ net¨ uk¨ on, u ´ gynevezett NMEA mondatokat. Az NMEA r¨ ovid´ıt´es – National Marine Electronics Association [8]. A form´atum t¨ obbf´ele mondatt´ıpust foglal mag´aba. Eset¨ unkben a vev˝ o a 0183-as protokollt haszn´alja, amelyben megtal´alhat´ok a k¨ovetkez˝o mondatok: GGA, GSA, RMC. Mind m´as t´ıpus´ u adatokat tartalmaz, a nyomvonalk¨ovet˝o algoritmus megval´ os´ıt´ as´ ahoz sz´ amunkra mindh´arom mondat hasznos inform´aci´ otartalommal b´ır. A k¨ ovetkez˝oben egy r¨ ovid ismeretet˝ot adunk ezen mondatok egyik´er˝ol, a GGA” mondatr´ ol. (A t¨ obbi mondat form´atuma is hasonl´ o fel´ep´ıt´es˝ u, ´ıgy nem ” foglalkozunk mindh´ arom k¨ ul¨ on-k¨ ul¨on val´o t´ argyal´as´aval) Egy szokv´ anyos GGA mondat tartalma sorfolytonosan a k¨ovetkez˝ok´epp n´ez ki: $GPGGA,153710.000,4728.3544,N, 01903.6025,E,1,04,2.6,147.8,M,41.1,M,,0000*56 A h´ arom mondat m´asodpercenk´ent ´erkezik a jelfeldolgoz´ o processzor UART bemenet´ere, amely megk¨ ozel´ıt˝oleg 170 karaktert jelent. Ezek 4800-as baud-dal ´erkeznek a vev˝ ob˝ol, ´ıgy egy teljes NMEA mondatcsomag be´erkez´ese igen sok ideig tart. Egy Byte a megadott UART interf´eszen (azaz 8 bit adat, nincs parit´as ellen˝ orz´es, 1 stop bit) 10 bit hossz´ u, ´erdemes kisz´ am´ıtani egy teljes ´ert´ek˝ u csomag ´erkez´es´enek az idej´et. A Byteok ´erkez˝ose k¨oz¨ott eltelik kb 3 bitid˝o, mindezek figyelembev´etel´evel egy teljes NMEA csomag be´erkez´ese megk¨ozel´ıt˝oleg: 13 · 170 = 0, 4604s 4800 ideig tart. A Byteok karakterek form´aj´ aban ´erkezik a soros porton, ezek ´erkez´es¨ ukkor megszak´ıt´ ast k´ernek a processzort´ol. A rutinban beolvassuk, ´ertelmezz¨ uk a karaktert, ´es sz´ am´ıt´ asokat v´egz¨ unk. Ezek fogad´ asa azonban nem ig´enyel nagy sz´ am´ıt´ asi kapacit´ ast.
6.3.2.
Koordin´ at´ ak kinyer´ ese, let´ arol´ asa
Egy NMEA mondat fel´ ep´ıt´ ese N´ezz¨ unk p´eld´ anak egy GGA t´ıpus´ u NMEA mondatot! A 6.6. ´abr´ an sorfolytonosan l´athat´o. 49
$GPGGA,153710.000,4728.3544,N,01903.6025,E,1,04,2.6,147.8,M,41.1,M,,0000*56
IDŐ
15
37
10
000
SZÉLESSÉG
47
28
3544
N
HOSSZÚSÁG
019
03
6025
E 04
147
8
MŰHOLDAK MAGASSÁG
6.6. ´ abra. Let´ arolt adatok egy GGA mondatb´ol.
A sz´ amunkra fontos adatok a k¨ovetkez˝ok: A 15:37:10 - kor ´erkezett poz´ıci´oadat: ´ Eszaki sz´eless´eg 47 fok 28,3544 sz¨ogperc Keleti hossz´ us´ag 19 fok 3,6025 sz¨ogperc A fenti koordin´ at´ak kisz´ am´ıt´as´ahoz 4 m˝ uhold ´allt rendelkez´esre. Jelenleg 147,8 m´eter magass´ agban vagyunk a tengerszint felett.
A let´ arol´ o algoritmus Mint m´ar kor´ abban eml´ıtett¨ uk: minden karakter be´erkez´ese megszak´ıt´ast k´er a DSP-t˝ ol. A f˝ oprogram megszak´ıt´asakor a megszak´ıt´asi rutin fut le, amely egy glob´alisan el´erhet˝ o t¨ ombben elkezdi let´ arolni a bej¨ov˝ o karaktereket u ´ gy, hogy minden karakterrel a t¨ omb els˝o elem´et fel¨ ul´ırja. Minden egyes ”fel¨ ul´ır´ as” sor´an megvizsg´ aljuk, hogy az ´erkezett kaarakter ”$” jel-e (l´asd 6.7. ´abra). Ha igen, egy szemafor szer˝ u logikai v´altoz´ ot ”true” ´ert´ekbe billent¨ unk, ´ıgy biztos´ıtjuk, hogy a t¨ omb egy eg´esz mondatot tartalmaz, m´egpedig az elej´et˝ol kezd˝od˝oen.
1. ütem
6
2. ütem
*
3. ütem
$
4. ütem
$
G
5. ütem
$
G
P
...
6.7. ´ abra. Az ´ atmeneti puffer tartalma ”¨ utemr˝ ol-¨ utemre”. Ha el´ert¨ unk a mondat elej´et˝ol sz´am´ıtva a hatodik let´ arolt karaktert is, akkor m´ar egy´ertelm˝ uen meghat´arozhatjuk, hogy milyen mondat is j¨ott. Tudjuk, hogy a vev˝ o´ altal k¨ uld¨ ott NMEA mondatok GGA – GSA – RMC sorrendben
50
k¨ ovetik egym´ ast, ´ıgy az els˝o let´ arolt mondatnak GGA t´ıpus´ unak kell lennie. ´ Ertelemszer˝ uen megvizsg´ aljuk, hogy a puffer 5. ´es 6. karaktere ”G” ´es ”A”-e. Ha igen, akkor folytatjuk a let´ arol´ast folytonosan. Ha nem, akkor nem GGA mondat ´erkezett, ´ıgy visszaugrunk a let´ arol´o algoritmus elej´ere, ´es v´arunk egy u ´ j mondatra. ´ertelemszer˝ uen nem kell ki¨ ur´ıten¨ unk a puffert, de a fut´o indexet 0-ra ´ all´ıtva az el˝ oz˝oek fel¨ ul´ır´ as´aval megt¨ort´enhet az u ´ j let´ arol´as. Mivel ismerj¨ uk az NMEA mondatok ´erkez´esi sorrendj´et, ´ıgy pontosan tudjuk, hogy GGA mondatot GSA mondat k¨ovet, amelyet egy RMC. A h´ arom mondatb´ol t¨ obb adatot is kinyer¨ unk, mint amennyi k¨ozvetlen¨ ul felhaszn´al´asra ker¨ ul. Ennek oka egyr´eszt az, hogy a PC fel´e min´el nagyobb infrm´ aci´ otartalmat jelezz¨ unk ki, m´asr´eszt gondolnunk kell a k´es˝obbi fejleszt´esi lehet˝os´egekre is, ahol fontoss´ a v´alhat t¨ obb – a mi sz´am´ıt´asainkban nem felhaszn´alt – adat. A k¨ ovetkez˝o adatok ker¨ ulnek kinyer´esre a vev˝ o ´altal k¨oz¨olt adatokb´ol: • Az inform´aci´ o pontos ideje: id˝o ´ora, perc, illetve m´asodperc. Fontos id˝ob´elyeggel ell´atni a poz´ıci´o inform´aci´ ot k´es˝obbi felhaszn´al´as c´elj´ab´ol, emellett egy´eb sz´ armaztatott mennyis´egek kisz´ am´ıt´as´ahoz is sz¨ uks´eg van r´a. (GGA) • Az id˝ob´elyeg m´asik – eset¨ unkben kev´esb´e fontos – adata, azaz a d´ atum: ´ev, h´ onap, nap. P´eld´ aul mez˝ogazdas´agi alkalmaz´asokkor munkanapl´o gener´ al´ as´ an´al fontos szerepe lehet. (RMC) • A poz´ıci´oadat sz´eless´egi ¨osszetev˝oje fokban m´erve: sz´eless´egi koordin´ata eg´eszr´esze, t´ızezred r´esze, illetve ´eszaki/d´eli sz´eless´eg. (GGA) • A poz´ıci´oadat hossz´ us´agi ¨osszetev˝oje szint´en fokban m´erve: hossz´ us´agi koordin´ ata eg´eszr´esze, t´ızezred r´esze, illetve Keleti/Nyugati hoszsz´ us´ag. (GGA) • A vev˝ o´ altal ´eppen l´athat´o m˝ uholdak sz´ama, azaz a poz´ıci´o meghat´aroz´asakor h´ any m˝ uhold adatait haszn´altuk fel. Nagyon fontos adat a pontoss´ag becsl´es´ehez. Igaz egy f¨ oldrajzi poz´ıci´o meg´allap´ıt´as´ahoz elegend˝o 4 m˝ uholdt´ol val´ o t´ avols´ag ismerete, tov´abbi pontos´ıt´asok ´erhet˝ok el, ha t¨obb m˝ uhold t´ avols´ag´ab´ol sz´ am´ıtjuk ki aktu´alis poz´ıci´onkat.(GGA) • Prec´ızi´os ´ert´ekek: HDOP, VDOP, PDOP (horizontal-, vertical-, position (3D) dilution of precision). Ez egy k¨oz´ephib´at szorz´ o t´enyez˝o, amely ford´ıtva ar´ anyos az ´ all´aspontb´ol az ´eszlelt m˝ uholdak fel´e mutat´ o egys´egvektorok cs´ ucspontjaib´ol kialak´ıtott test t´erfogat´aval (l´asd 6.8. ´abra). Fontos mennyis´eg, amelyet s´ ulyoz´o ´atlagol´ as eset´en felhaszn´alva pontos´ıthatjuk a poz´ıci´o adatot.[9] (GSA) • Tengerszint feletti magass´ ag. Eset¨ unkben mind¨ossze t¨obblet inform´aci´ ot hordoz aktu´alis helyzet¨ unkr˝ol. Sz´am´ıt´asn´ al nem haszn´aljuk fel, csup´ an informat´ıv jelleggel k¨ oz¨ olj¨ uk a karakteres interf´eszen kereszt¨ ul a felhaszn´al´oval. (GGA) • A mozg´ as sebess´ege. A poz´ıci´o ´ert´ekekb˝ ol ´es az id˝ob´elyegb˝ol sz´armaztatott sebess´eg mellett egy k¨ ul¨ on m´er´esi m´odszerrel megkapott sebess´eget is k¨oz¨ol vel¨ unk a vev˝ o. K´es˝ obbi fejleszt´esek ok´ an fontos lehet t¨obb, egym´ ast´ ol f¨ uggetlen poz´ıci´ora visszavezethet˝o mennyis´eg ismerete. (RMC)
51
H H
H H H
H
H
H
6.8. ´ abra. rossz PDOP (balra), ill. j´o PDOP (jobbra).
• A mozg´ as ir´ anysz¨ oge. Mozg´ asunk ir´ any´at is k¨ozli vel¨ unk a vev˝ o, ahol 0 (vagy 360) foknak felel meg az ´eszaki ir´ any. (RMC) Fontos, hogy az ´ıgy let´ arolt ´ert´ekek egy strukt´ ura t¨ombben – a tov´abbiakban pufferben – ker¨ ulnek t´ arol´ asra, 32 bites eg´esz, illetve 32 bites lebeg˝opontos ´ert´ekk´ent. Alapbe´ all´ıt´ ask´ent a cirkul´ aris puffer 20 teljes NMEA adatot tartalmaz egyszerre. A cirkul´ aris puffer az adatok egy speci´ alis elrendez´ese. Folyamatosan t¨oltj¨ uk az ”n” elem˝ u puffert, majd amikor megtelt, az ”n+1”-edik elemet a legr´egebben bet¨ olt¨ ott elem hely´ere tessz¨ uk, ezzel fel¨ ul´ırva azt. ´Igy biztos´ıtj¨ uk, hogy a pufferben mindig csak a legfrissebb ”n” db elem legyen.
6.9. ´ abra. ”n”-elem˝ u, t¨ obbdimenzi´ os t¨omb¨okb˝ ol ´all´o cirkul´ aris puffer. Ez a kialak´ıt´ as – ahogy a 6.9. ´abr´ an is l´atszik – el˝ony¨os, hiszen k´es˝obbi fejleszt´esek eset´ere is gondolunk. Nem ´ırjuk fel¨ ul a mondatok t´ arol´as´ara sz´ant ´atmeneti puffert, ´es a cirkul´ aris puffer m´erete is k¨onnyed´en megv´ altoztathat´ o.
6.3.3.
Poz´ıci´ oadat ´ ertelmez´ eseinek lehet˝ os´ egei
El¨ olj´ ar´ oban annyit megjegyz¨ unk, hogy a nyomvonalk¨ovet´es megval´os´ıt´ashoz nagyon pontosan kell t´ avols´agokat m´ern¨ unk, amely l´atsz´olag nem t˝ unik bonyolult feladatnak. Ehhez a koordin´at´ak egy olyan lek´epez´ese sz¨ uks´eges, amelyben 52
a k´es˝ obbi aritmetikai sz´ am´ıt´ asokat minim´alis hib´aval tudjuk elv´egezni. ´Igy tekints¨ uk az egyik – MATLAB-ban kidolgozott, ´es abban a k¨ornyezetben helyesnek bizonyult – modellt, a F¨ old g¨ombi modellj´et. A F¨ oldfelsz´ın g¨ omb-modellje
A α r O
b
c
c
b
β
a γ
B a
C
6.10. ´ abra. Koordin´at´ak a F¨old g¨omb modellje szerint. Ahogy eml´ıtett¨ uk, az algoritmusok kifejleszt´ese MATLAB k¨ornyezetben t¨ort´ent, majd csak az ut´an ker¨ ulnek implement´ al´asra a DSP k´arty´an. A k¨ ovetkez˝okben ´ att´er¨ unk g¨ombi geometri´ara[2]. Egy g¨omb fel¨ ulet´en k´et pont legr¨ ovidebb ¨ osszek¨ ot˝o vonala a f˝ ok¨ or´ıv, azaz egy olyan k¨or ´ıve, amelynek s´ıkja ´ atmegy a g¨ omb k¨ oz´eppontj´ an. Mind az oldalakat, mind a sz¨ogeket sz¨ og´ert´ekben fejezz¨ uk ki. Egy g¨ ombh´ aromsz¨og a, b, ´es c oldal´ an h´ arom, 180◦ -n´al kisebb sz¨ oget ´ert¨ unk, ahogy a 6.10. ´abr´ an is l´athat´o. Tekints¨ uk k´et pont – A ´es B – t´ avols´ag´at a modellben, amit egy k¨oz´epponti sz¨ og sz´ arai ´ altal a felsz´ınen k¨ozbez´art r sugar´ u g¨omb ´ıvhossz kisz´ am´ıt´as´aval kaphatjuk meg, azaz: SAB = νAB · r
(6.1)
,ahol SAB a k¨ or´ıv hossza, νAB a k¨or´ıv k¨oz´epponti sz¨oge radi´anban. G¨ ombi geometri´ aban is ´erv´enyesek a trigonometrikus ¨osszef¨ ugg´esek, ´ıgy a koszinuszt´etel az oldalakra: cos c = cos a cos b + sin a sin b cos γ
(6.2)
L´ athat´o, hogy az A ´es B pontok k¨ozti c sz¨oget keress¨ uk, ´ıgy C pontot, ez´altal γ sz¨ oget tetsz˝ olegesen v´altoztathatjuk. V´ alasszuk γ = 90◦ -ot, ekkor egy speci´ alis esethez jutunk, amelyet m´asn´even g¨ ombi Pithagorasz-t´etelnek is neveznek: cos c = cos a cos b
(6.3)
´ erve a mi anal´ogi´ Att´ ankra, ACB der´eksz¨og˝ u h´ aromsz¨og A ´es B cs´ ucsainak sz´eless´egi ´es hossz´ us´ agi komponensei a k¨ovetkez˝ok:
53
a = Ah − Bh
b = Asz − Bsz
Azaz a hossz´ us´ agi ´es sz´eless´egi koordin´at´ak k¨ ul¨onbs´egei. Ezt behelyettes´ıtve a 6.3 egyenletbe, a keresett k¨or´ıv k¨oz´epponti sz¨oge ´es a koordin´ at´ak k¨ oz¨ ott a k¨ ovetkez˝o ¨osszef¨ ugg´es van: cos νAB = cos(Ah − Bh ) · cos(Asz − Bsz )
(6.4)
Felhaszn´alva a cos(x − y) = cos(x) cos(y) + sin(x) sin(y) azonoss´agot, a 6.4 egyenlet a k¨ ovetkez˝ok´epp alakul: cos νAB = cos Ah cos Bh + sin Ah sin Bh · cos Asz cos Bsz + sin Asz sin Bsz (6.5) AB pontok ´ altal k¨ ozrez´ art k¨or´ıv hossza a 6.1 alapj´an a k´et pont koordin´at´aival kifejezve: SAB = = arccos
h
cos Ah cos Bh + sin Ah sin Bh
cos Asz cos Bsz + sin Asz sin Bsz
i r
Az egyenletben a A ´es B pontok sz´eless´egi, illetve hossz´ us´agi koordin´at´ai szerepelnek. Az elgondol´ askor nem vett¨ uk figyelembe, hogy a F¨old nem kifog´ astalanul g¨ omb alak´ u. Bolyg´ onk pol´aris sugara 6 356,752 km, m´ıg egyenl´ıt˝oi sugara 6 378,137 km. A k¨ ul¨ onbs´eg 21,358 km, amely – ha figyelembe vessz¨ uk, hogy a mez˝ogazdas´agi alkalmaz´asokkor az elmozdul´as p´ ar km – igen jelent´ektelen torz´ıt´ ast vinne bele a sz´ am´ıt´ asainkba. Fogalmazhatunk u ´ gy is, hogy pontatlanabb a GPS vev˝ onk, ´ıgy ”nem ´eri meg”, hogy ilyen t´eren korrekci´okat v´egezz¨ unk. A probl´ema – ami miatt nem ezt a m´odszert alkalmazzuk – azonban nem itt keresend˝o. Ahogy az el˝ obb eml´ıtett¨ uk a mez˝ogazdas´agi alkalmaz´asokkor kis t´ avols´agokr´ ol van sz´ o, azaz nagyon kis k¨oz´epponti sz¨oggel kell kisz´ am´ıtanunk azt a hib´at, amellyel let´ert¨ unk a p´ aly´ar´ ol. Vegy¨ uk szem¨ ugyre a 6.6. egyenletet, vizsg´aljuk meg, hogyan viselkedik kis k¨ oz´epponti sz¨ogek eset´en! Ha a k´et pont koordin´at´ai k¨ oz¨ ott kicsi az elt´er´es, akkor fenn´all a k¨ovetkez˝o: lim arccos(α) = 0
α→1
(6.6)
A C nyelvben az implement´ alt trigonometrikus f¨ uggv´enyek eset´eben 5 tag´ u Taylor polinommal k¨ ozel´ıtik a f¨ uggv´eny´ert´eket, amelyek az argumentum hat´arain igen nagy hib´ at okoznak. A 6.11. ´abr´ an l´athat´o, hogy ez a hiba igen nagy m´ert´ek˝ u. Sajnos nem tudunk ilyen kis k¨oz´epponti sz¨ogekre ilyen m´odon t´ avols´agokat sz´ amolni. Ha ragaszkodunk ehhez a megold´ashoz, akkor a k¨ovetkez˝o k´et lehets´eges megold´ast tehetj¨ uk. • Elk´esz´ıt¨ unk egy saj´ at arkusz koszinusz f¨ uggv´enyt, amelyet j´oval nagyobb foksz´ am´ u Taylor-polinommal k¨ozel´ıt¨ unk az intervallum hat´arok miatt. Ez a megold´as nem t´ ul sz´ am´ıt´asig´enyes, teh´at megoldhat´o. 54
acos(x) és annak 5 tagú Taylor polinomja 1.6
0.25
1.4
0.2 1.2
a hiba értéke
1 0.8 0.6
0.15
0.1
0.4
0.05 0.2 0
0.1
0.2
0.3
0.4
0.5 x
0.6
0.7
0.8
0.9
0 0.8
1
0.82
0.84
0.86
0.88
0.9 x
0.92
0.94
0.96
0.98
1
6.11. ´ abra. f (x) = arccos x f¨ uggv´eny ´es annak 5 tag´ u Taylor polinomja(balra). A k´et f¨ uggv´eny k¨ ul¨ onbs´ege(jobbra).
• K´esz´ıt¨ unk egy t´ abl´ azatot, amely a kis sz¨ogek arkusz koszinusz´ at tartalmazza. Ezek ut´an valamilyen interpol´aci´ os elj´ar´assal lehetne k¨ozel´ıteni a keresett ´ert´eket. A fenti megold´asok viszonylag bonyolultak, ´ıgy miel˝ ott elkezden´enk a hiba ilyen m´odon val´ o kik¨ usz¨ ob¨ ol´es´et, meg kell bizonyosodnunk arr´ol, hogy l´etezike alternat´ıv megold´as a poz´ıci´ok lek´epez´es´ere, ´es t´ avols´ag kis hib´aval t¨ort´en˝o sz´ am´ıt´ as´ ara. A F¨ oldfelsz´ın s´ık-modellje A k¨ ovetkez˝o modell¨ unk helyt´ all´os´ag´at arra a felt´etelez´esre alapozzuk, hogy mez˝ogadas´ agi alkalmaz´asok eset´en az elmozdul´as maximum 10 km. Tekints¨ uk egy nagy sugar´ u g¨ omb felsz´ın a´ltalunk bej´ arand´o r´esz´et s´ıknak, ´es n´ezz¨ uk meg, helyt´ all´o-e a koordin´ at´ak s´ıkbeli ´abr´ azol´asa! A C
l B
α O
6.12. ´ abra. A s´ıkmodell-beli t´ avols´ag elt´er´ese a g¨omb ´ıv´en lev˝o t´ avols´agt´ ol. Szimmetria okokb´ ol az esetet s´ıkban ´abr´ azoltuk (6.12. ´abra). Legyen l a k´et pont k¨ oz¨ otti val´ odi t´ avols´ag, azaz egy α k¨oz´epponti sz¨og˝ u k¨or´ıv hossza. Ekkor: l = 2rπ ·
α 2π
l=r·α 55
(6.7)
Hat´ arozzuk meg az AC szakasz hossz´ at! A k´et pont t´ avols´aga: |AC| = r · tan(α)
(6.8)
V´egezet¨ ul vizsg´aljuk meg, milyen o¨sszef¨ ugg´es van a s´ıkbeli modellben m´ert elmozdul´as, ´es a val´ os – g¨ omb fel¨ uleten t¨ort´en˝o – elmozdul´as k¨ ul¨onbs´ege k¨oz¨ott, azaz n´ezz¨ uk meg modell¨ unk mennyit t´eved” a val´os helyzethez k´epest! Fel” haszn´alva a 6.7 -t a k¨ ovetkez˝o formula ad´odik: l − |AC| = r · tan α − α (6.9) Kifejezve a 6.7 egyenletb˝ ol α k¨oz´epponti sz¨oget, a hiba a val´os koordin´at´ak szerinti t´ avols´ag alapj´ an: l l l − |AC| = r · tan − r r
(6.10)
8
Hiba a két modell között [m]
7 6 5 4 3 2 1 0 0
10
20
30 40 50 60 70 Elmozdulás a gömb modellen [km]
80
90
100
6.13. ´ abra. A k´et modell elt´er´ese. A 6.13. ´ abr´ an l´athat´o, hogy a F¨old sugar´ at 6372,797 km -nek v´eve 100 km elmozdul´as a s´ıkbeli ´es a g¨ ombi modellen mind¨ossze 8 m hib´at jelent. A s´ıkbeli ´ abr´ azol´as mez˝ogazdas´agi alkalmaz´asra megfelel˝onek bizonyul, az ´abr´ azol´as komplexit´ asa nem ig´enyel akkora sz´am´ıt´asi kapacit´ ast, mint a kor´abban kifejtett g¨ omb modell eset´eben. F¨ old s´ıkmodellje szerint sz´am´ıtunk t´ avols´agot u ´ gy, mint egy Descartes-f´ele koordin´ ata rendszerben. A koordin´at´ak s´ıkban kifesz´ıtve” – igaz kis hib´aval – ” j´ol modellezi a F¨ old (g¨ omb) felsz´ıni t´ avols´ag viszonyokat.
56
Figyelembe kell venn¨ unk a modell v´alaszt´as´an´al egy fontos t´enyez˝ot. Ha a koordin´ ata tengelyek oszt´asait felosztjuk fix t´ avols´ agokra, sz¨ uks´eg van kompenz´ aci´ ora, ugyanis – m´ıg a hossz´ us´agi k¨or¨ok ´alland´ o hossz´ uak, azaz nem v´altoznak – a sz´eless´egi k¨ or¨ ok ker¨ ulete v´altozik (cs¨okken) a sz´eless´egi koordin´ata f¨ uggv´eny´eben. Ha ezt a kompenz´aci´ ot elv´egezz¨ uk, akkor ezzel a modellel el˝ony¨osebben tudunk kis t´ avols´agokat sz´amolni. Az egyszer˝ us´eg kedv´e´ert szimmetriai okokb´ ol s´ıkban ´ abr´ azoljuk a kompenz´al´as m´odszer´et:
r’
K
P
x
β O
α r = 6378.137 km
T
6.14. ´ abra. A sz´eless´egi k¨or¨ok kompenz´aci´ oja s´ıkban. Ismerj¨ uk a F¨ old egyenl´ıt˝ oi sugar´ at. Ebb˝ol k¨onnyed´en kisz´ am´ıthat´o az egyenl´ıt˝ oi ker¨ ulet is, amely 40 075,02 km. A sz´eless´egi k¨or¨ok cs¨okken˝o sugara line´arisan cs¨ okken˝o ker¨ uletet is jelent, amellyel m´ar kompenz´alhat´o az egys´egnyi hossz´ us´agi koordin´ at´ara es˝ o t´ avols´ag kilom´eterben az adott sz´eless´egi k¨or¨on. A 6.14. ´ abra alapj´ an jel¨ olje α a sz´eless´egi koordin´at´at. Ekkor β ´ert´eke π2 − α. ´Igy az OP K der´eksz¨ og˝ u h´ aromsz¨ognek ismerj¨ uk β sz¨og´et, ´es OP ´atfog´oj´ anak hossz´ at – amelyet becs¨ ulhet¨ unk a F¨old k¨ozepes sugar´ aval. Ekkora a kompenz´alt sug´ ar (r0 ) a k¨ ovetkez˝o formul´aval sz´amolhat´ o ki: π − α) · r 2 Legyen k az adott α sz´eless´egi k¨or hossza! Ekkor: r0 = sin(
(6.11)
π − α) (6.12) 2 Ezek ut´an az u ´ j ker¨ uletet ismerve elv´egezz¨ uk a sz´eless´egi ´es a hossz´ us´agi k¨ or¨ ok hossz´ anak egy radi´anra t¨ort´en˝o leoszt´as´at, amely a k¨ovetkez˝ok´epp alakul: Legyen x az egy radi´an elmozdul´as m´ert´eke km-ben! Hossz´ us´agi k¨or¨ok eset´eben: k = 2rπ · sin(
h km i π π − α) = 6372, 797 · sin( − α) 2 2 rad Sz´eless´egi k¨ or¨ ok eset´eben: xh = r · sin(
xsz = r = 6372, 797
57
h km i rad
(6.13)
(6.14)
´Igy megkapjuk a der´eksz¨og˝ u koordin´atarendszer¨ unk oszt´asait, amelyekkel k¨ onnyed´en sz´ amolhatunk, ´es az eredm´enyt m´eterben kapjuk meg. Fontos megjegyezn¨ unk, hogy m´as, t¨obb t´ız kilom´eteres t´ avols´agot ´atfog´o alkalmaz´asok eset´en ki´elez˝odik a modellek k¨oz¨otti elt´er´esb˝ ol ad´od´o hiba, ´ıgy akkor m´ar az el˝ oz˝o – g¨ omb modell szerinti – m´odszer ad pontos ´ert´eket. A fent k¨ oz¨ olt ´ abr´ azol´asm´odot alkalmazva, egy olyan der´eksz¨og˝ u koordin´atarendszerhez jutunk, amelynek orig´oja az egyenl´ıt˝o ´es a Greenwich”-i hossz´ us´agi ” k¨ or metsz´espontj´ aban van, ´es a t´ avols´agok m´eterben ´ertend˝ oek. P´eldak´ent magyarorsz´ agi alkalmaz´as eset´en a poz´ıci´ok mindig 107 nagys´ agrendbe esnek. Tekintve az algoritmusok ´ altal haszn´alt 32-bites lebeg˝opontos sz´am´ abr´ azol´asm´odot, az ilyen nagy sz´ am´ert´ekek eset´en pontatlanok. Ennek oka, hogy nagy exponens ´ert´ek mellett a mantissza minim´alis megv´ altoz´asa is kev´es – eset¨ unkben – cm nagys´ agrend˝ u t´ avols´agok ´abr´ azol´as´ara. Ezen hiba kik¨ usz¨ ob¨ ol´ese miatt a koordin´atarendszer orig´oj´ at eltoljuk aktu´alis poz´ıci´onk k¨ ozel´ebe. Ezt k¨ onnyen megtehetj¨ uk, ha a bekapcsol´askor az els˝o vett poz´ıci´o ´ert´ek´et elt´ aroljuk, mint offszet vektort, amelyet minden u ´ jonnan vett ´ert´ekb˝ ol kivonunk. Az ´ıgy kapott t´ avols´agok nagys´ agrendje m´ar j´oval kisebb, ´es a sz´ am´ abr´ azol´asb´ ol ad´od´o pontatlans´agok kik¨ usz¨ob¨olhet˝ok.
6.4. 6.4.1.
Nyomvonalk¨ ovet˝ o m˝ uk¨ od´ esi m´ odjai Egy nyomvonal ment´ en t¨ ort´ en˝ o halad´ as
A mez˝ogazdas´agi alkalmaz´asokkor a legtipikusabb eset egy egyenes nyomvonal k¨ ovet´es´evel eljutni A pontb´ol B pontba.
PV
PK 6.15. ´ abra. Egy referencia egyenes ment´en t¨ort´en˝o halad´as. A megval´ os´ıt´ ast tekintve k´et referencia pontot kell felvenn¨ unk, amelyekre illesztett nyomvonal ment´en k´ıv´ anunk mozogni (6.15 .´abra ). Ezeknek megad´ asi sorrendje k¨ ot¨ ott (Pk a kezd˝ opontot, Pv a v´egpontot jel¨oli), hiszen a k´es˝obbi mozg´ as ir´ any´at ismern¨ unk kell ahhoz, hogy a helyes ir´ any´ u korrekci´ot jelezz¨ uk ki. • Megadhatjuk manu´ alisan a k´et referenciapontot. Ekkor egy megadott form´atumban kell bevinni az ´ert´ekeket. • Ha nem ismerj¨ uk a pontok koordin´at´ait, magunk is felvehetj¨ uk ˝oket a helysz´ınen. Amikor r´aa´lltunk a poz´ıci´ora, eld¨onthetj¨ uk, hogy azonnal felvessz¨ uk-e a pontot, vagy megv´ arjuk am´ıg 20 ´ert´ek beolvas´asra ker¨ ul ´es azok ´ atlag´ at vessz¨ uk fel. 58
El˝ osz¨ or a v´egpontot kell megjel¨olni, ezt k¨ovet˝oen a kezd˝opontot. A pontok felv´etele ut´an a program felveszi a nyomvonal egyenes´enek egyenlet´et, amelynek ismertet´es´ere m´eg visszat´er¨ unk, majd elkezd˝odik a t´ avols´ag folyamatos – m´asodpercenk´enti – kisz´ am´ıt´ asa. A pont referencia egyenest˝ ol val´o t´ avols´ag´anak sz´am´ıt´as´ara t¨obb elk´epzelhet˝o megold´as is lehets´eges, az al´ abbiakban k¨oz¨olj¨ uk azt, amely a nyomvonalk¨ovet˝oben megval´ os´ıt´ asra ker¨ ult. Legyen d a P (x0 , y0 ) pont t´ avols´aga az Ax + By + C = 0 alakban megadott egyenest˝ ol! Bizony´ıt´ as n´elk¨ ul a k¨ovetkez˝o formula ad´odik a t´ avols´agra: d=
Ax0 + By0 + C √ A2 + B 2
(6.15)
A norm´ alvektoros ´es az ir´ anyvektoros egyenlet egy¨ utthat´oi k¨oz¨ott a k¨ovetA C kez˝o ¨ osszef¨ ugg´esek ´ allnak fenn: a = − B ´es b = − B . Egyszer˝ us´ıts¨ unk le az egyenletben B-vel! Ekkor: d=
A B x0
q
+ y0 + A2 B2
C B
+1
Behelyettes´ıtve 6.15. egyenletbe az ir´ anyvektoros egy¨ utthat´okat, kis ´atalak´ıt´as ut´an a t´ avols´ag: d=
−a · x0 + y0 − b √ a2 + 1
(6.16)
A t´ avols´ag pozit´ıv, ha P (x0 , y0 ) az egyenes f¨ol¨ott van, negat´ıv, ha alatta. Ehhez mind¨ ossze ismern¨ unk kell a halad´as ir´ any´at – azaz n¨ovekv˝o, vagy cs¨okken˝o x-ek ir´ any´aban mozgunk-e – ´es ebb˝ol meg´allap´ıthat´o a korrekci´o ir´ anya – azaz hogy jobbra, vagy balra t´ert¨ unk el a referencia egyenest˝ol.
6.4.2.
F¨ oldteru arhuzamos nyomvonalakon val´ o bej´ a¨let p´ r´ asa
A nyomvonalk¨ ovet´es mez˝ogazdas´agi alkamaz´asainak legf˝ obb p´eld´aja egy f¨oldter¨ ulet p´ arhuzamos nyomokon val´o bej´ ar´asa. Ilyen mozg´ast v´egez egy komb´ ajn, vet˝og´ep, m˝ utr´ agy´az´o, stb. (6.16. ´abra) A feladat els˝o r´esze, meghat´arozni a ter¨ ulet sarokpontjait. A nyomvonalk¨ovet˝o n´egy sarokponttal hat´ arolt f¨oldter¨ ulet lek´epez´es´ere k´epes, azok sarokpontjait k´etf´elek´eppen vehetj¨ uk fel: • Manu´ alisan megadjuk a 4 sarokpont ´ert´ek´et fokban. Ehhez nyilv´anval´oan sz¨ uks´eges a f¨ oldter¨ ulet – m´ar kor´abban kim´ert – koordin´at´ai. Az interf´esz ezt megfelel˝o formul´aban k´eri megadni, p[sz][h] form´atumban. • Ha nincs el˝ ore kim´erve a sarokpontok pontos helyzete, u ´ gy is bevihetj¨ uk oket, hogy elnavig´alunk a helysz´ınre, ´es ott haszn´alunk egy erre haszn´a˝ latos funkci´ ot. Ekkor kb. 20 mp-ig ´all´o helyzetben kell lenn¨ unk, ugyanis a sarokpont koordin´ at´ait ´atlagol´ assal c´elszer˝ u bevinni. Ez term´eszetesen kihagyhat´ o, de aj´ anlatos a hat´arok pontos felv´etele. Az ´atlagol´ o bevitelre szolg´ al az ”av” parancs. 59
P3 w e34 e23
P4 P2
start e41 e12
P1
6.16. ´ abra. A param´eterekkel megadott f¨oldter¨ ulet startponttal, nyomvonallal, aktu´alis poz´ıci´onkkal.
A tov´abbiakban ´ att´er¨ unk a Descartes-f´ele koordin´ata rendszer jel¨ol´eseire, azaz a k´et v´altoz´ o y ´es x. Ekkor y-on a sz´eless´egi koordin´at´aval kompenz´alt egy fokra es˝ o t´ avols´agot, x-en pedig egy hossz´ us´agi foknyi t´ avols´agot ´ert¨ unk. Ha a pontok tetsz˝ oleges sorrendben val´o felv´etele megt¨ort´ent, ´atrendezz¨ uk ˝oket egy speci´ alis elrendez´esbe. Az elrendezett pontokat sorsz´ammal ell´atjuk, a sz´amoz´ast a d´elNyugatibb” pontt´ol kezdj¨ uk ´es az ´ora mutat´ o j´ar´as´aval ellent´etes ” ir´ anyba haladva folytatjuk a pontok sz´amoz´as´at. Az elrendez´es ut´an meghat´arozzuk a szomsz´edos pontokat ¨osszek¨ot˝o egyenesek egyenleteit. Legyen egy egyenes egyenlete y = a · x + b alak´ u, az egyenes k´et pontja legyen P1 ´es P2 ! A param´etereket meghat´arozhatjuk a k¨ovetkez˝o formul´ak szerint: a=
P2,y − P1,y P2,x − P1,x
b = P1,y − a · P1,x
(6.17)
(6.18)
A hat´ arol´ o egyenesek kisz´ am´ıt´asa ut´an meg kell adnunk t¨obb param´etert, miel˝ ott elkezden´enk mag´at a nyomvonalk¨ovet´est. • Meg kell adnunk a p´ arhuzamos nyomvonalak sz´eless´eg´et, hiszen fordul´asn´ al ezt a t´ avols´agot fogjuk tartani a referencia-nyomvonalak” k¨oz¨ott. ” Ez ´ altal´ aban a komb´ ajn sz´eless´ege, vagy egy´eb tetsz´es szerint be´ all´ıthat´o ´ert´ek lehet. A fenti ´ abr´ an l´athat´o, hogy a nyomvonal az e34 egyenest˝ol megadott w t´ avols´agra van. • Emellett fontos, hogy honnan kezdj¨ uk a bej´ ar´ast, ´es melyik oldal ment´en. A szoftver t¨ obb lehet˝ os´eget is ny´ ujt ennek meghat´aroz´as´ara. 60
– Automatikusan az aktu´alis pontb´ol kisz´ am´ıtja, melyik sarokponthoz vagyunk a legk¨ ozelebb, ´es onnan kezdj¨ uk a bej´ ar´ast. Ha engedj¨ uk, a program automatikusan v´alaszt az oldalak k¨oz¨ ul. Kevesebb fordul´ot jelenthet az, ha a hosszabb oldal ment´en indulunk el, de ennek a lehet˝ os´egnek a v´alaszt´asa opcion´alis. A fenti ´abr´ an ugyancsak l´athat´ o, hogy mivel |P4 P3 | > |P4 P1 |, ´ıgy az e34 oldallal p´ arhuzamosan kezdt¨ uk el a bej´ ar´ ast. – Manu´ alisan megadhatjuk, melyik oldal ment´en k´ıv´ anunk elindulni ´es milyen ir´ anyba. Ez mag´aba foglalja a kezd˝opontot, ´es a referencia egyenes¨ unk meredeks´eg´et is. A program ezek ut´an automatikusan kisz´ am´ıtja a nyomvonal egyenes egyenlet´enek param´etereit. Legyen a nyomvonal egyenlete: yref = aref · x + bref ! Fordul´ asok eset´en az egyenes meredeks´ege (aref ) nem v´altozik, viszont bref igen. Ezek a k¨ ovetkez˝ok´epp ker¨ ulnek meghat´aroz´asra: aref = a
(6.19)
bref = b + t · b0
(6.20)
ahol t a fordul´ ok sz´ ama.
α
w b’ 90-α
w b’ α
6.17. ´ abra. A nyomvonalegyenlet b’ egy¨ utthat´oj´ anak sz´am´ıt´asa Mivel az egyenes meredeks´ege α = arctan aref , ´ıgy b0 -re – a 6.17. ´abra alapj´an – a k¨ ovetkez˝o formula ´erv´enyes: b0 = ±
w
cos arctan(aref )
(6.21)
ahol w a nyomt´ av sz´eless´ege. Az el˝ojelet az aktu´alis oldal helyzete alapj´an el˝ ore defini´altuk, azaz a nyomvonal ´eszakra” vagy d´elre” tol´ odik annak ” ” f¨ uggv´eny´eben, hogy melyik oldal ment´en kezdt¨ uk el a bej´ ar´ast. 61
A pontok el˝ ore defini´alt helyzeteinek k¨ovetkezt´eben tudjuk, hogy aktu´alis poz´ıci´onknak az egyes egyenesektt˝ol merre kell, hogy essenek ahhoz, hogy meg´allap´ıtsuk: bel¨ ul vagyunk-e a hat´arokon, vagy sem. Vegy¨ unk egy p´eld´ at, ´es a fenti ´abr´ ab´ol kiindulva vizsg´aljuk meg az el˝obbi felt´eteleket! Legyen aktu´alis poz´ı−−−→ ci´ onk koordin´ at´ai P ix ´es P iy ! Tudjuk, hogy ir´ anyunk P3 P 4 (l´asd a 6.16. ´abra jelz´eseit), ´ıgy a k¨ ovetkez˝o k´et felt´etelt kell kiel´eg´ıten¨ unk: P iy > a12 · P ix + b12 ol¨ ott” vagyunk-e, ´es vagyis e12 f¨ ” P ix <
P iy − b23 a23
vagyis e23 -t´ ol Nyugatra vagyunk-e. Ha a k´et felt´etel teljes¨ ul, akkor m´eg nem kell fordulnunk. Ha valamelyik felt´etel nem teljes¨ ulne, akkor ir´ anyt kell v´altanunk, a nyomvonal egyenes´et el kell tulnunk, ´es m´as – eset¨ unkben e41 ´es e12 – egyenesekhez val´o poz´ıci´onkat kell vizsg´alni egy u ´ jabb fordul´ oig.
62
7. fejezet
A rendszer tesztel´ ese A m´er´eseket olyan helysz´ınen v´egezt¨ uk, ahol szabad r´al´at´as van a m˝ uholdakra, azaz nem volt a k¨ ozelben nagy ´ep¨ ulet.
7.1.
F¨ oldteru ar´ asa 4 sarokpont felv´ etel´ e¨ let bej´ vel
Egy tetsz˝ oleges f¨ oldter¨ uletet p´ arhuzamos nyomvonalakon bej´ arunk. A m´er´esn´el csak a GPS vev˝ o´ altal k¨oz¨olt koordin´at´ak szerint v´egezt¨ uk a korrekci´okat, nem haszn´altunk K´ alm´an-sz˝ ur´est. A m´er´es sor´an az Automatic u ¨ zemm´odot haszn´altuk. Param´eterk´ent 5 m´eteres sork¨ozt ´all´ıtottunk be. A bej´ ar´ast a P2 −−−→ pontt´ol kezdt¨ uk ´es a P2 P3 egyenessel p´ arhuzamosan haladtunk. 47,4536
P3
Szélességi koordináták
47,4535
P4 47,4534 47,4533
GPS álal mért pozíció Célterület
47,4532 47,4531 47,453
P2
P1 47,4529 47,4528 18,9446
18,9447
18,9448
18,9449
18,945
18,9451
18,9452
18,9453
Hosszúsági koordináták
7.1. ´ abra. P´ arhuzamos sorvezet´es tesztel´ese n´egy felvett sarokpont alapj´an A felvett sarokpontok a k¨ovetkez˝ok: P1: 47,452985 18,94484 P2: 47,45297 18,94521 P3: 47,45352 18,94502 63
P4: 47,453435 18,944708 A koordin´ at´ak els˝o tagja a sz´eless´egi, m´asodik a hossz´ us´agi fokok. Ezek ut´an a nyomvonalk¨ ovet˝ot˝ol a GUI-n kereszt¨ ul kapott utas´ıt´asokat k¨ovett¨ uk. A TURN utas´ıt´ asn´ al fordultunk. A vez´erelt bej´ ar´as nyomvonal´at a 7.1. ´abr´ an l´athatjuk: A 7.1. ´ abr´ an l´athat´o, hogy a szoftver kisz´ am´ıtja a referenciaegyenest, ´es jelzi az att´ ol val´ o elt´er´est a vezet˝onek. A ter¨ ulet hat´arain jelzi a fordul´ot, majd a referenciaegyenest eltolja w sort´avval. Az algoritmus mindig a halad´asi ir´ annyal szemben lev˝o k´et oldalt tekinti hat´ arvonalnak, amelyek elhagy´asakor fordul´ot jelez. Ekkor a referenciaegyenest eltolja w nyomt´ avols´aggal, ´es ´at´all´ıtja a m´asik k´et szemben lev˝o oldalt hat´arvonalnak. Ez j´ ol l´athat´o a fordul´ok eset´eben, hiszen egyszer el´ert¨ uk a ter¨ ulet hat´ ar´ at, de az u ´ j nyomvonalra val´o r´aa´ll´as k¨ozben nem jelez u ´ j fordul´ot, csak a szemk¨ ozti hat´ arvonal ´ atl´ep´esekor.
7.2.
K´ et pontra illesztett nyomvonal k¨ ovet´ ese
Simple Track u ¨ zemm´odban k´et pontra (kezd˝o- ´es v´egpontokra) illesztett egyenes nyomvonalat k¨ ovet¨ unk. Kezd˝o ´es v´egpont felv´etele megt¨ort´ent, ezek koordin´ at´ai: P start: 47,407135 19,020453 P stop: 47,40763 19,021714
47,4077 47,4076
Pstop
47,4075 GPS koordináták
47,4074 47,4073 47,4072
Pstart
47,4071 19,0202 19,0204 19,0206 19,0208
19,021
19,0212 19,0214 19,0216 19,0218
7.2. ´ abra. K´et pontra illesztett egyenes nyomvonal k¨ovet´ese A 7.2. ´ abr´ an l´athat´oak a halad´as k¨ozben m´ert GPS koordin´at´ak ´es a kezd˝o´es v´egpontokra illesztett egyenes. A mozg´as k¨ozben a t´ avols´agok a 7.3. ´abr´ an l´athat´ok. A t´ avols´agok el˝ ojelesen ´ertend˝ ok. Mivel n¨ovekv˝o hossz´ us´agi fokok fel´e t¨ort´enik a halad´as, ´ıgy pozit´ıv ´ert´ek eset´en a korrekci´ot balra, negat´ıv ´ert´ek eset´en jobbra kell elv´egezni. A t´ avols´ag algoritmus kor´abban a 6.4.1. pontban kifejt´esre ker¨ ult. 64
Távolság a referencia-egyenestől [méterben] 3 2,5 2 Távolság a referenciaegyenestől [méterben]
1,5 1 0,5 0 -0,5
0
5
10
15
20
25
30
35
40
45
-1
7.3. ´ abra. K´et pontra illesztett egyenes nyomvonal k¨ovet´ese
A mozg´ as g´epkocsival t¨ ort´ent, mez˝ogazdas´agi alkalmaz´asokhoz hasonl´ o – 10 − 20km/h – sebess´eggel. A GPS vev˝ o a halad´as sor´an ´atlagosan 9-10 m˝ uholddal kommunik´alt, teh´ at az adatok pontoss´aga el´eri az eszk¨oz le´ır´ as´aban specifik´ alt ´ert´eket.
7.3.
Koordin´ at´ ak korrekci´ oja K´ alm´ an-sz˝ ur˝ ovel
A 7.1 ´es 7.2 pontokban a nyomvonalk¨ovet˝o algoritmus tesztel´es´ere ker¨ ult sor, amely bemenetk´ent kapott aktu´alis poz´ıci´o´ert´ekeket, majd azok alapj´an sz´ am´ıtott korrekci´ ot. Ebben a pontban bekapcsolt K´alm´an-sz˝ ur˝ovel becs¨ ulj¨ uk a koordin´at´akat. Mivel az el˝ oz˝o pontokban a nyomvonalk¨ovet˝o algoritmus tesztel´ese sikeres volt, a tov´abbiakban nem t´er¨ unk ki annak K´alm´an-sz˝ urt poz´ıci´oadatokkal val´o tesztel´es´ere. 47,47134
47,47133
47,47132
47,47131
47,4713
47,47129
47,47128 19,0618
19,0619
19,062
19,0621
GPS-vevő pozícióadatai
19,0622
19,0623
19,0624
19,0625
Kálmán-szűrt pozícióadatok
7.4. ´ abra. Egy p´ alya bej´ ar´ asa k¨ozben felvett poz´ıci´oadatok ´es jav´ıt´asaik
65
A szoftverbe be´ep´ıt´esre ker¨ ult egy fejleszt˝o u ¨ zemm´od, amely haszn´alatakor a GPS-poz´ıci´okat ´es azok K´ alm´an-sz˝ urt becsl´eseit egyid˝ oben r¨ogz´ıteni tudjuk. A tov´abbi m´er´eseket ezen u uk. ¨ zemm´od haszn´alat´aval v´egezt¨ A bej´ art p´ alya egy szakasza nagy´ıtva a 7.4. ´abr´ an l´athat´o. B´ar a GPS–vev˝ o ´es a K´ alm´an-sz˝ ur˝o ´ert´ekei nagyon hasonl´ oak – p´ ar helyen az ´ert´ekek kiss´e elt´ernek. L´ athat´o, hogy a GPS bizonyos pontokban elt´er az u ´ tvonalr´ ol (p´eld´ aul a 47,47130785 sz´eless´egi, 19,06227459 hossz´ us´agi ponton). A mozg´as egyenletesen t¨ ort´ent, ahogy az a 7.5. ´ abr´ an l´athat´o gyorsul´ as´ert´ekek mutatj´ ak. Gyorsuláskomponensek mozgás közben 0,4 0,3 0,2
m/s^2
0,1 0 -0,1
1
2
3
4
5
6
7
8
9
10
11
12
-0,2
a_x a_y
-0,3 -0,4 -0,5 -0,6
7.5. ´ abra. A kijel¨ olt szakaszon mozg´o j´arm˝ u gyorsul´ askomponensei A komponensek (ax ´es ay ) a j´arm˝ u saj´at koordin´ata rendszer´eben ´ertend˝ oek. Mivel a mozg´ as Kelet-Nyugati ir´ any´aban t¨ort´ent – azaz a 7.4. ´abr´ an jobbr´ ol ” balra” – ´ıgy a 4. gyorsul´ as´ert´ekn´el t¨ort´ent a GPS koordin´ata kisz´ or´asa. Nem t¨ort´ent ir´ anyv´alt´ as, ´ıgy a K´ alm´an-sz˝ ur˝ovel becs¨ ult koordin´ata nem k¨oveti a GPS– vev˝ o´ altal k¨ oz¨ olt ´ert´eket. Fontos megjegyezni, hogy a K´alm´an-sz˝ ur´es csak a gyorsul´ asm´er˝o helyes kalibr´aci´ oja eset´en m˝ uk¨ odik megfelel˝oen. Ellenkez˝o esetben a gyorsul´ as ´ert´ekek egy addit´ıv offszet zajjal lesznek terhelve, amelyb˝ ol t´eves k¨ovetkeztet´eseket lehet levonni az aktu´alis sebess´eget illet˝oen.
7.4.
Koordin´ at´ ak korrekci´ oja interpol´ al´ o K´ alm´ ansz˝ ur˝ ovel
Az el˝ oz˝o (7.3.) pontban tesztelt¨ uk a K´alm´an sz˝ ur˝ot, annak poz´ıci´okra adott – a GPS-vev˝ on´el pontosabb – becsl´es´et. Interpol´ aci´ o alkalmaz´as´ aval a GPS–vev˝ o ´altal k¨ uld¨ott k´et poz´ıci´oadat k¨oz¨ott is tudunk becsl´est adni aktu´alis helyzet¨ unkre. Ennek s˝ ur˝ us´ege az interpol´aci´ o frekvenci´aj´ aval v´altoztathat´ o. A 7.6. ´ abr´ an kinagy´ıtott p´ alyaszakaszon j´ol l´athat´ o, hogy a becs¨ ult poz´ıci´o nagyobb s˝ ur˝ us´eggel ´ all rendelkez´esre, mintha csak a GPS-vev˝ ot haszn´aln´ ank.
66
Ugyanakkor gyors ir´ anyv´alt´ asokn´ al az interpol´aci´ o nem m˝ uk¨odik t¨ok´eletesen, ennek jav´ıt´ asa m´eg nem t¨ ort´ent meg. 0
2
4
6
8
10
12
14
3,5 3 2,5 2 1,5 1 0,5 0 GPS pozícióadatai
Kálmán-szűrő interpolált becslései
7.6. a´bra. Interpol´alt ´ert´ekek
7.5.
M´ er´ esi eredm´ enyek ¨ osszefoglal´ asa
A poz´ıci´obecsl´es K´ alm´an-sz˝ ur˝ovel jav´ıtott v´altozata sikeres volt. M´er´esekkel igazoltuk, hogy nagyobb pontoss´agot ´er¨ unk el, mintha csak a GPS-vev˝ o nyers adat´ at haszn´aln´ ank. Az interpol´al´o K´alm´an-sz˝ ur´es m´eg jav´ıt´ast ig´enyel, ez nem m˝ uk¨ od¨ ott m´eg t¨ ok´eletesen. A nyomvonalk¨ ovet˝o algoritmus mind Single Track, Manual ´es Automatic u ok´eletesen m˝ uk¨od¨ott a GUI-n kereszt¨ ul. Sikeresen megval´os´ıtja ¨ zemm´odban t¨ a nyomvonalk¨ ovet´es feladat´ at.
67
8. fejezet
¨ Osszefoglal´ as, kitekint´ es Dolgozatunkban egy GPS-alap´ u nyomvonalk¨ovet˝o DSP-n t¨ort´en˝o megval´os´ıt´ as´ at mutattuk be. A rendszer – a mozg´as egyik jellemz˝ oj´enek GPS-t˝ol f¨ uggetlen m´er´es´evel – egy gyorsul´ asm´er˝ o adataib´ol K´alm´an-sz˝ ur˝o alkalmaz´as´aval pontosabb poz´ıci´o becsl´es´ere k´epes. A GPS-vev˝ o illeszt´ese a DSP EZ-KIT k´arty´ahoz megt¨ort´ent. A GPS adatok alapj´ an a nyomvonalk¨ ovet˝o algoritmust futtat´o szoftver elk´esz¨ ult, tesztel´ese megt¨ ort´ent. A szintilleszt˝ o ´ aramk¨or¨ok k¨oz¨ ul egy legy´ art´ asra ker¨ ult, a m´asik szintilleszt˝ ot tesztpanelen val´ os´ıtottuk meg. A PC-interf´esz megval´ os´ıt´ as´aval tov´abbfejleszt´esi lehet˝os´egek ny´ıltak, hiszen tetsz˝ oleges soros kommunik´aci´ oval u ´ j eszk¨oz a rendszerhez csatlakoztathat´o. A rendszer a mez˝ogazdas´agi alkalmaz´asokhoz m´erten kiel´eg´ıt˝o pontoss´ag´ u. A Steady State K´ alm´an-sz˝ ur˝o szoftverbe t¨ort´en˝o implement´ al´asa, tesztel´ese megt¨ ort´ent. Egyenes vonal´ u p´ aly´an a sz˝ ur˝o helyes korrekci´okat v´egzett – amely megfelel a jelenlegi alkalmaz´as c´elj´anak. A korrekci´os elj´ar´asnak kosz¨onhet˝oen pontatlanabb GPS-vev˝ okkel is alkalmazhat´o a rendszer. A K´ alm´an-sz˝ ur´es term´eszetesen nem csak gyorsul´ asm´er˝ovel alkalmazhat´o. A k¨ ozelj¨ ov˝ oben tervez¨ unk m´as – szint´en a GPS-vev˝ o m´er´eseit˝ ol f¨ uggetlen – szenzor implement´ al´ as´ at a rendszerbe, amellyel a pontoss´ag tov´abb n¨ovelhet˝o. P´eld´ aul giroszk´oppal meg´allap´ıthat´ o az aktu´alis d˝ ol´es sz¨oge, ´ıgy kik¨ usz¨ob¨olhet˝o a gyorsul´ asm´er˝ o billeg´es´eb˝ol ad´od´o addit´ıv zaj. Emellett digit´ alis ir´ anyt˝ u alkalmaz´as´aval – ellent´etben a jelenlegi megval´os´ıt´assal – nem csak mozg´as k¨ozben, hanem ´all´o helyzetben is kapunk inform´aci´ ot a halad´as ir´ any´ar´ol. Ezen megval´os´ıtand´o komplexebb rendszerek alapj´ at szint´en a K´alm´an-sz˝ ur´es adn´a. A tov´abbfejleszt´esi lehet˝ os´egek k¨oz¨ ul a legb´ıztat´ obb egy saj´at DGPS rendszer kifejleszt´ese, amellyel cm-es pontoss´ag is el´erhet˝o. Ehhez sz¨ uks´eg van egy r´adi´ o kommunik´aci´ os interf´esz illeszt´es´ere, illetve egy ´all´o helyzet˝ u referenciapontot megval´ os´ıt´ o rendszerre. Rem´elj¨ uk, hogy dolgozatunkban bemutatott nyomvonalk¨ovet˝o rendszer hasznos alapj´ at fogja k´epezni a j¨ ov˝ obeni – nem csak a mez˝ogazdas´agi c´elra t¨ort´en˝o – fejleszt´eseknek.
68
Irodalomjegyz´ ek [1] Glob´ alis helymeghat´aroz´o rendszer – Wikipedia http://hu.wikipedia.org/wiki/GPS [2] G¨ ombi Geometria – Wikipedia http://hu.wikipedia.org/wiki/G¨ ombi geometria [3] EZ-Guide 250 http://www.trimble.com/agriculture/ez-guide-250.aspx?dtID=overview [4] EZ-Guide 500 http://www.trimble.com/agriculture/ez-guide-500.aspx?dtID=overview [5] Centerline 220 http://www.teejet.com/hungarian/home/products/precision-farmingproducts/gps-guidance/centerline-220.aspx [6] Landasin Sirio 2 http://www.agrogazda.hu/termek.cgi?id=2 [7] Landasin Skipper http://www.agrogazda.hu/termek.cgi?id=47 [8] NMEA standard http://www.gpsinformation.org/dale/nmea.htm [9] GPS helymeghat´aroz´o rendszer http://lazarus.elte.hu/tajfutas/magyar/archiv/dg/3.htm [10] Dr. Uwe Kiencke: Methoden der Signalverarbeitung Skript Universit¨at Karlsruhe [11] Bernard Friedland Advanced Conrol System Design Prentice-Hall International [12] Schnell L´ aszl´ o Jelek ´es rendszerek m´er´estechnik´ aja I. M˝ uegyetemi Kiad´ o
69