ESKÉ VYSOKÉ UENÍ TECHNICKÉ V PRAZE Fakulta elektrotechnická
BAKALÁSKÁ PRÁCE Jednotka mení GPS signálu s rozhraním CANaerospace
Autor práce:
Lukáš Kostka
Vedoucí práce:
Ing. Pavel Paes
V Praze 27. 5. 2010
1
estné prohlášení Prohlašuji, že jsem pedloženou práci vypracoval samostatn a že jsem uvedl veškeré použité informaní zdroje v souladu s Metodickým pokynem o dodržování etických princip pi píprav vysokoškolských závrených prací. Také bych chtl tímto podkovat všem lidem, kteí se podíleli na tom, aby tato práce vznikla. Po odborné stránce patí velké podkování vedoucímu mé práce ing. Pavlu Paesovi za jeho rady, podnty a pipomínky.
V Praze dne ………………….….
……….………………………………. Podpis autora práce
2
Obsah 1 Seznam použitých zkratek .......................................................................... 6 2 Úvod ........................................................................................................... 8 3 Synchronizaní známky dle IEEE 1588 ...................................................... 9 3.1 IEEE 1588 topologie sít ......................................................................... 9 3.2 Princip synchronizace .............................................................................. 9 4 Pijíma TYCO A1029-A/C ...................................................................... 10 4.1 Struná charakteristika .......................................................................... 10 4.2 Technická specifikace ............................................................................ 11 4.2.1 Podpora DGPS ................................................................................... 11 4.2.2 Udávaná pesnost ............................................................................... 11 4.3 Podporované protokoly .......................................................................... 12 4.3.1 Protokol NMEA 0183 .......................................................................... 12 4.3.2 VTG – Course Over Ground and Ground Speed ................................ 13 4.3.3 kGGA - Global Positioning System Fix Data ....................................... 14 5 Protokol CAN, CANaerospace .................................................................. 15 5.1 Komunikaní protokol ............................................................................ 15 5.2 CAN datové rámce ................................................................................. 15 5.3 Bitové rozhodování o priority zprávy ...................................................... 16 5.4 Obvodová realizace CAN sbrnice ........................................................ 17 5.5 CANaerospace....................................................................................... 17 5.6 Komunikaní vrstvy ................................................................................ 17 5.7 Struktura zprávy ..................................................................................... 19 5.7.1 Obecný formát zprávy ......................................................................... 19 5.8 Datové typy ............................................................................................ 20 5.9 Seznam zpráv použitých v realizaci GPS modulu .................................. 21 6 Realizace .................................................................................................. 22 6.1 Jednotka s GPS modulem ..................................................................... 22 6.1.1 Požadavky .......................................................................................... 22 6.1.2 Hardware ............................................................................................ 22 6.1.3 Software .............................................................................................. 24 6.1.4 Výsledek ............................................................................................. 24 6.2 Jednotka s mikrokontrolérem ................................................................. 25 6.2.1 Požadavky .......................................................................................... 25 6.2.2 Hardware ............................................................................................ 25 7 Softwarová realizace ................................................................................ 27 3
Ovení vlastností pijímae ........................................................................ 29 7.1 Urení chyby .......................................................................................... 29 7.2 Podmínky test ...................................................................................... 30 7.3 Výsledky test ........................................................................................ 31 8 Závr ......................................................................................................... 33 9 Rejstík píloh ............................................................................................ 34 9.1 Seznam obrázk .................................................................................... 34 9.1 Seznam graf......................................................................................... 34 9.2 Seznam tabulek ..................................................................................... 34 9.3 Seznam schémat ................................................................................... 35 9.3.1 Seznam použitých zdroj: ................................................................... 36
4
Anotace Jednotka mení GPS signálu s rozhraním CANaerospace Vedoucí: bakaláské práce: Ing. Pavel Paes Autor: bakaláské práce: Lukáš Kostka Klíová slova: Freescale HC12, Protokol NMEA, CANaerospace, GPS
Tato práce popisuje návrh, realizaci a mení vlastnosti modulu univerzálního GPS pijímae. Systém zpracovává GPS signál z externí antény a naviganí data jsou dále distribuována nkolika rznými komunikaní rozhraními jako je: UART, COM, CANaerospace. Modul se skládá z hlavních dvou ástí a to: GPS modulu od firmy TYCO a procesorové jednotky s mikrokontrolérem Freescale HC12.
Annotation GPS measurement unit with CANaerospace interface Thesis supervisitor: Ing. Pavel Paes Autor of the work: Lukáš Kostka Keywords: Freescale HC12, NMEA protocol, CANaerospace, GPS
This theisis describes the design, implementation and measurement a universal GPS receiver. The system processes the GPS signal from the external antenna
and
navigation
data
are
then
distributed
to
several
different
communication interfaces such as: UART, COM, and CANaerospace. The module consists of two essential parts, namely: GPS module Tyco and microprocessor module with Freescale HC12 microcontroller.
5
1 Seznam použitých zkratek GPS
(Global Positioning system) globální systém urování polohy.
CEP
(Circular Error Probable) je známá jako stední polohová chyba.
CAN
(Controller Area Network) je sériová sbrnice vyvinutá firmou Bosch GmbH. Je mezinárodn standardizovaná jako ISO 11898-1.
DGPS
(Differential Global Positioning Systém) je jeden ze zpsob, kterým lze zpesnit výsledky mení v systému GPS.
PPS
(Pulse Per Second) signál o period 1s, sloužící k synchronizaci.
ATM
(Anyone To Many) architektura sbrnice, kdy každý uzel mže komunikovat s více uživateli.
PTP
(Peer To Peer) architektura sbrnice, ve které spolu komunikují pímo jednotlivé uzly.
IEEE
(Institute
of
Electrical
and
Electronics
Engineers)
mezinárodní
organizace zabývající se elektroprmyslem a elektronikou. Popisuje normy v elektrotechnice. UDP
(User Data Protokol) internetový protokol, který používá jednoduché vysílání paket, bez nutnosti vytvoení speciálního vysílacího kanálu.
BDM
(Background Debug Mode) rozhraní pro programování a ladní vestavných mikroprocesor. Toto rozhraní podporuje firma Freescale.
fbnh
6
2 Úvod Práce se zabývá problematikou konstrukce naviganího modulu, který bude mít široké možnosti vyžití. Problém navigace se eší v mnoha oborech s rznými potebami. Tato práce se zabývá zpsobem navigace pomocí signálu GPS, který je voln dostupný na celém svt. Pro práci jsem obdržel GPS modul TYCO. Prvním krokem tedy bylo dkladn prozkoumat jeho specifikace a na základ poteb zkonstruovat vývojovou desku, která implementuje potebná rozhranní. Jelikož modul podporuje DGPS (Differential Global Positioning Systém), bylo provedeno jeho odzkoušení a vliv na pesnost urení pozice. Další krok v realizaci bylo propojení vývojové desky s modulem, který poskytuje výpoetní výkon na zpracování dat z GPS protokolem NMEA 0183 a jejich následné odesílání dál po sbrnici CAN. Jako tento výpoetní modul bylo použito již existující zaízení, které spluje všechny požadavky [7]. Pro tento modul jsou již implementované knihovny [8], které usnadnily realizaci firmware pro procesor. Úprava softwaru pro procesor spoívá v dopsání nkolika metod pro zpracování dat z GPS. Pi
další
realizaci
tohoto
projektu
je
poítáno
s generováním
synchronizaních známek. Tyto známky jsou vysílány v závislosti na píjmu synchronizaního pulsu PPS (Pulse Per Second) z GPS pijímae. Tím je docíleno celosvtové
synchronizace
s pesností
do
jednotek
μs.
Tento
systém
synchronizace je založen na protokolu PTP (Precision Time Protocol) podle standartu IEEE1588 [5]. Bakaláská práce v její tištné podob je jen ástený popis dané problematiky. Obsah práce nemže popisovat celé ešení problém, zejména v tvorb softwaru. Proto je text opaten pouze výtahy kód, které jsou dležité nebo jinak zajímavé. Celý zdrojový kód je na piloženém CD-ROM, na kterém jsou také všechny dokumenty, projekty, obrázky, schémata a datasheety použité pi realizaci projektu. V této práci jsou ásten použity zkratky a výrazy vycházející z anglického jazyka, protože je použití anglických originál mnohem strunjší a výstižnjší než nepesný peklad.
8
3 Synchronizaní známky dle IEEE 1588 Standard IEEE 1588 je také oznaován jako Precision Time Protocol dále již PTP. Popisuje synchronizaci asových základen dvou a více uzl v síti Ethernet. Jedná se aplikaní síový protokol který je obsažen v UDP (User Data Protokol). Aplikaní program poítá asový rozdíl mezi jednotlivými uzly a aktualizuje as uzlu slave tak aby souhlasil s asem master uzlu.
3.1 IEEE 1588 topologie sít Je vytvoena hierarchie sít typu master-slave, kde master uzel obsahuje pesné hodiny synchronizované vnjším zdrojem (nejastji pesným asovým signálem který poskytuje GPS). Uzly slave nastavují svoje vlastní asové základny pomocí periodicky vysílaných paket od master uzl.
Obr.1 Topologie sít IEEE 1588
3.2 Princip synchronizace Synchronizace probíhá na základ výmny paket po Ethernet síti. U paket je zaznamenáván as ve který byly pakety odeslány a pijaty. Na obr.2. je graficky popsána jak probíhá komunikace mezi master a slave uzlem. První uzel(dále již master) vysílá synchronizaní paket „sync“, který obsahuje oekávaný vysílací as (t1estim). Dále master vyšle další paket ve kterém je pesný vysílací as pedchozí zprávy. Na základ tchto dvou synchronizaních paket je schopen si druhý uzel (slave), za pomoci vlastní 9
Obr.2 Penos synchronizaních paket mezi dvma uzly
asové základny, vypoítat asové zpoždní paketu pi prchodu sítí. Toto asové zpoždní je periodicky zjišováno mezi master a slave každou vteinu. Pomocí této informace o zpoždní v síti je slave uzel schopen korekce vlastních hodin.
4 Pijíma TYCO A1029-A/C 4.1 Struná charakteristika Pijíma TYCO A1029-A/C je 12kanálový
GPS
modul
miniaturních
rozmr navržený pro použití v aplikacích OEM (Original Equipment Manufacture). Vyznauje se rychlým nábhem innosti, s maximální obnovovací frekvencí polohy 1 Hz a také nízkou spotebou elektrické energie. Velmi zajímavá je také podpora diferenciální navigace pomocí systém WAAS/EGNOS/MSAS.
10
4.2 Technická specifikace Tab. 1 Elektrické charakteristiky pijímae
4.2.1 Podpora DGPS Pijíma disponuje možností pijímat diferenciální korekce dvojího druhu: WAAS/EGNOS/MSAS, tak i korekce prostednictvím RTCM protokolu. DGPS v režimu WAAS je aktivováno automaticky, staí jej pouze povolit v konfiguraci pijímae a nastavit satelit ze kterého je korekní signál pijímán. Jestliže je zachycen signál korekního satelitu, pijíma upraví pozici a zmní její status na DGPS. Korekce polohy prostednictvím protokolu RTCM pedpokládá použití externího zaízení (GPRS modem), jehož sériový výstup je pipojen na sériový vstup oznaený jako Rx2.
4.2.2 Udávaná pesnost Pesnost udávaná výrobcem, bude ovena ve zkušebních testech zpsob vyjádení chyby ‘‘CEP 50%‘‘ je vysvtlen v kapitole Ovení vlastností pijímae.
Tab.2 Pesnost pijímae podle výrobce
11
4.3 Podporované protokoly Komunikace modulu s okolím probíhá pomocí seriové linky 3.3V CMOS kompatibilní. Penos odpovídá protokolu NMEA 0183.
4.3.1 Protokol NMEA 0183 Pod názvem NMEA 0183 (National Marine Electronics Association) se ukrývá komunikaní standart námoní spolenosti který obsahuje specifikaci pro komunikaci mezi palubními pístroji jako je nap.: kompas, anemometr, gps data, sonar,
autopilot.
Komunikace
probíhá
standardním
sériovým
protokolem
prostednictvím vt, které obsahují znaky ACSII. Každá vta zaíná znakem $ (dolar) a koní sekvencí
(0x0d, 0x0a hexadecimáln). Existují ti základní druhy vt: x vty od mluvího (talker sentences) x dotazovací vty (query sentences) x proprietární vty (proprietary sentences) Obecný formát vt ze strany mluvího je: $ttsss,d1,d2,....,*cc
První dva znaky za “$“ jsou identifikátor vysílae. Další trojice znak je specifikace typu vty. Následují datové položky oddlené “,” po znaku “ * ” je dvouciferný kontrolní souet v hexadecimálním tvaru. Kontrolní souet pedstavuje logickou operaci XOR všech znak umístných mezi znaky “$“ a “ * ” . Vta je ukonena znaky . Každá vta mže obsahovat nejvýše 80 znak plus "$" a , celkem tedy 83 bajt.
Obecný formát dotazovací vty je: $ttllQ,sss
První dva znaky za znakem dolar jsou identifikátorem toho, kdo podává žádost. Následující dva znaky oznaují dotazovaného: tedy toho, komu je žádost posílána. Pátým znakem je vždy písmeno "Q", které oznauje, že se jedná o dotazovací typ vty (query). Následuje típísmenná datová položka (sss) urující, o jaký typ vty se žádá.
12
Proprietální vty umožují uživatelskou konfiguraci zaízení. Sekvence vty zaíná "$P" následuje identifikace výrobce. Formát tchto vt je specifický pro každého výrobce. Avšak obecný formát vty musí být zachován. Výet všech možných proprietálních vt je uveden v [1].
Existuje velké množství vt. Nás však zajímají pouze ty, které zaínají dvou písmenným identifikátorem “GP“ oznaující že zprávy vysílá GPS pístroj. GPS modul A1029 který je použit je schopen vysílat následující typy zpráv, viz.[1] x $GPGGA Obecná naviganí zpráva obsahuje pozici, as, rychlost: Kap. 3.3.3 x $GPVTG Zpráva o smru a rychlosti Kap. 3.3.2 x $GPRMC Minimální doporuená konfigurace naviganích dat. x $GPGSA Informace o kvalit urení pozice, dále zobrazuje pozice a sílu signálu jednotlivých satelit, které jsou aktivní. x $GPGSV Zpráva obsahuje informace o pozicích všech satelit, které jsou ve výhledu.
4.3.2 Course Over Ground and Ground Speed Zpráva oznaená identifikátorem VGT nese informaci o rychlosti a smru (kurzu vzhledem k severnímu pólu) Tab. 3 Struktura VGT zprávy píklad: $GPVTG,169.3,T,,M,0.3,N,0.5,K,A*6B (1)
$GPVGT
Hlavika zprávy
(2)
169.3
Kurz trasy
(3)
T
Platnost kurzu (pokud obsahuje znak 'T', kurz je platný)
(4)
nepoužito
Magnetický kurz
(5)
M
Platnost magnetického kurzu (pokud obsahuje znak 'M', kurz je platný)
(6)
0.3
Rychlost v uzlech
(7)
N
Jednotka rychlosti (N = platnost rychlosti v uzlech )
(8)
0.5
Rychlost v kilometrech za hodinu
(9)
K
Jednotka rychlosti (K = platnost rychlosti v km/h)
(10)
A
Režim práce A = bžný mód, D = diferenní mód, E = bez signálu nebo Dead Reckoning
(11)
*6B
Kontrolní souet
13
4.3.3 Global Positioning System Fix Data GGA naviganí zpráva obsahuje informaci o uení 3D pozice, asu a potu satelit které má pijíma ve výhledu.
Zpráva také íká jaký je vliv
rozestavní družic na urení polohy.
Tab. 4 Struktura GGA zprávy $GPGGA,152145.000,4805.8193,N,01132.2317,E,1,04,2.5,607.75,M,47.6,M,,*67 (1)
$GPGGA
Hlavika zprávy
(2)
152145.000
as(UTC) pro který je vypotena pozice
(3)
4805.8193
Zempisná šika (48°05,8193')
(4)
N
Indikátor polokoule ( N = Sever, S = Jih)
(5)
01132.2317
Zempisná délka (011°32,2317')
(6)
E
Indikátor východní , západní délky(E = východ, W = západ)
(7)
1
Indikátor kvality( 0 = pozice neuena, 2 = ureno s DGPS )
(8)
04
Poet viditelných satelit
(9)
2.5
Vliv rozestavní družic na urení polohy (HDOP)
(10)
0607.75
Výška nad geoditem
(11)
M
Jednotky výšky ( m = metr)
(12)
47.6
Rozdíl mezi elipsoidem WGS-84 a geoditem
(13)
M
Jednotka pro pedchzí položku (m = metr)
(14)
nepoužito
Stáí poslední aktualizace DGPS, prázdné pokud DGPS není použito
(15)
nepoužito
Identifikaní íslo diferencialní stanice
(16)
*67
Kontrolní souet
14
1 = pozice uena,
5 Protokol CAN, CANaerospace CAN (Controroller Area Network) vyvinutá firmou Bosch v roce 1985 jako automobilová sbrnice. Jedná se o sériovou datovou sbrnici s vysokým stupnm zabezpeení a maximální teoretickou penosovou rychlostí 1 Mbit/s. CAN patí mezi prmyslové systémy sbrnic oznaovaných jako fieldbus.
5.1 Komunikaní protokol Penos dat po sbrnici CAN je založen na odesílání a pijímání rámc dat. Každá zpráva používá k penosu jeden rámec, který obsahuje penášená data a další pole nutná pro správu penosu. Obsah rámc a význam jednotlivých položek je vysvtlen v následujících kapitolách.
5.2 CAN datové rámce Jak už bylo eeno protokol CAN používá k penosu datové rámce. Vezmeme li v úvahu že vtšina používaných zpráv používá všech 8 datových byt. Výsledná délka rámce je tedy 64 datových bit + 44 bit které doplují rámec. Jejich význam je na obr.3.
Obr.3 Datový rámec sbrnice CAN
15
Pokud budeme poítat maximální kapacitu sbrnice pi penosové rychlosti 1Mb/s musíme k rámci pipoítat ješt 3 bity které jsou vyhrazeny mezi rámci a dalších asi 14 pídavných bit které slouží k synchronizaci sbrnice. Celková délka pro jednu zprávu je tedy (44 + 64 + 3 + 14) = 125 bit. Doba, za kterou je tedy sbrnice schopna penést zprávu, je 125 μs. Celková kapacita je tedy 8000 zpráv za vteinu.
5.3 Bitové rozhodování o priority zprávy Sbrnice CAN upednostuje odvysílání zpráv s nižším identifikátorem. Zárove ale také sbrnice zajišuje, že jakmile se zane vysílat zpráva která má nejvyšší prioritu, všechny ostatní uzly okamžit peruší pokusy o vysílání zpráv a pokají na uvolnní sbrnice. Zamezí se tak poškození zpráv o nižší priorit. Obr 4. Ukazuje systém který sbrnice používá po rozhodování o uzlu který bude vysílat ( bit arbitration ) Zahájí-li vysílání souasn nkolik uzl, pak pístup na sbrnici získá ten, který penáší zprávu s vyšší prioritou (nižším identifikátorem). Identifikátor je uveden na zaátku zprávy. Každý vysíla porovnává hodnotu práv vysílaného bitu s hodnotou na sbrnici a zjistí-li, že na sbrnici je jiná hodnota než vysílá (jedinou možností je, že vysíla vysílá recessive bit a na sbrnici je úrove dominant), okamžit peruší další vysílání. Tím je zajištno, že zpráva s vyšší prioritou bude odeslána pednostn a že nedojde k jejímu poškození, což by mlo za následek opakování zprávy a zbytené prodloužení doby potebné k penosu zprávy. [3]
Obr.4 Rozhodování sbrnice (bus arbitration) [3]. 16
5.4 Obvodová realizace CAN sbrnice Obvodové
ešení
sbrnice CAN musí obsahovat nkolik
souástí.Hlavní
souástí dnes
je
již
controller vtšina
mikroprocesor
který
výrobc
integruje
do
nkterých svých obvod. Není tedy za potebí dalších drahých obvod, které by se staraly o chod sbrnice. To adí sbrnici CAN
mezi
nízkonákladové.
Další obvod nutný pro provoz sbrnice je transceiver který je schopen naslouchat sbrnice a zárove pijímat data která mají být
vysílána.
Hlídá
také
dodržování napových úrovní na sbrnici.
Obr.5 Obvodové ešení CAN sbrnice
Chrání mikroprocesor ped zkratem nebo jiným nebezpeným stavem který by ho mohl poškodit. Transceiver je obvykle napájen kladnými 5V. Jako vedení sbrnice se nejastji používá kroucený pár, který musí být zakonen rezistory o hodnot asi 120 .
5.5 CANaerospace CANaerospace je vyšší vrstvový protokol založen na CAN. Byl vyvinut firmou Stock Flight Systems pro sbrnicové systémy používané v letectví a kosmonautice.
5.6 Komunikaní vrstvy Specifikace protokolu CANaerospace je rozdlena mezi rzné vrstvy odpovídající ISO/OSI referennímu modelu:
17
Obr. 6 Síový OSI/ISO model sbrnice CANaerospace
Sbrnice CANaerospace je pouze nadstavbou astji používané sbrnice CAN. Ta specifikuje pouze fyzickou a spojovací vrstvu. Fyzická vrstva se stará o napové specifikace budi, požívané konektory, vodie, detekci bitové úrovn, synchronizace penosu. Spojovací vrstva obsluhuje azení dat do rámc, detekce chyb, podporu obnovy ztracených dat. Bosch CAN specifikace dovoluje vysílání zpráv periodicky i neperiodicky ale už nepokrývá prezentaci dat a jejich adresování. Penos dat protokolem je založen na vysílání a pijímání rámc dat. Tyto rámce však nemají ureny žádnou adresu. Každá zpráva je opatena jedineným identifikátorem. Tento identifikátor uruje typ zprávy a zárove její prioritu pi pokusu odeslání na sbrnici. Zprávy s nižším identifikátorem mají vyšší prioritu. CAN je výhradn založen na ATM (Anyone To Many) komunikaci, což znamená, že každá zpráva je vždy pijata všemi stanicemi na sbrnici. Výhoda tohoto zpsobu komunikace je v pístupnosti dat všem zaízením. CANaerospace
definuje
další
vrstvy
ISO/OSI
modelu
podporující
adresování uzl, které jsou nezbytné pro komunikaci typu PTP (Peer To Peer). PTP komunikace dovoluje nastavit vztahy klient-server mezi individuálními
18
stanicemi trvale nebo doasn. Je tak možné, že jedno zaízení je nastaveno jako klient pro jednu operaci a jako server pro druhou operaci ve stejný as. Protože jsou poveleny dva typy komunikací (ATM, PTP) je teba definovat nástroj jak tuto komunikaci jednoznan oddlit. CANaerospace k tomu používá rozdlení zpráv do skupin podle identifikátor, jak ukazuje tab. 5.
Tab. 5 Rozdlení typ zpráv podle identifikátor
5.7 Struktura zprávy Každým rámcem je penášena jedna zpráva, které je vyhrazeno maximáln 8 byt. Zpráva obsahuje 4 bytovou hlaviku pro identifikaci a od 1 do 4 datových byt pro aktuální penášená data. Prezentace azení dat je ureno podle ‘‘Big edian‘‘ definice. Tedy nejvíce významný bit (MSB) je umístn nejvíce nalevo a je penášen po sbrnici jako první.
5.7.1 Obecný formát zprávy Na obr.7 je znázornn obecný formát zprávy, který využívá 4 bytovou hlaviku pro vlastní identifikaci zprávy. Pro normal operation data (NOD) jsou zbývající tyi byty využity pro vlastní data.
19
Obr. 7 Obecný formát CAN zprávy
Jednotlivé byty mají v hlavice následující význam: x Node ID: Pro ATM komunikaci, ID specifikuje vysílající uzel. Pro PTP Komunikaci uruje uzel, pro který je zpráva urena. Pro Node ID = 0 platí, že zpráva je urena všem uzlm v síti. x Data typ: Pedstavuje, jakým datovým typem jsou prezentována penášená data. Podrobný výpis datových typ je popsán ve specifikaci CANaerospace [2]. x Servisní kód: Pro normal operational data mže být použit pro penos speciálních dat. x íslo zprávy: Pro každou další zprávu je hodnota ísla zprávy zvtšena o jedniku. Po dosažení 255 se zaíná znovu od 0. Tento systém mže sloužit ke kontrolování, zda se nkterá zpráva neztratila a je nutné o ni znovu zažádat.
5.8 Datové typy Pro penos dat jsou požívány základní datové typy, které jsou detailn popsány v [2]. Je podporována vtšina bžných datových typ, které mají velikost 8 až 64 bit.
20
Tab. 6 Ukázka používaných datových typ
5.9 Seznam zpráv použitých v realizaci GPS modulu Protokol CANaerospace popisuje více než 100 zpráv které odpovídají naviganím údajm. Zdaleka ne všechny ale použitý GPS modul podporuje. V Tab.7 jsou všechny CAN zprávy které modul vysílá na sbrnici.
Tab. 7 CAN zprávy implementované v modulu.
21
6 Realizace
6.1 Jednotka s GPS modulem 6.1.1 Požadavky Toto zaízení má za úkol zprostedkovat první kontakt se pijímaem. Požadavkem je, aby se pomocí PC ovila funknost pijímae a zárove vyzkoušela konfigurace pomocí proprietálních NMEA vt. Realizace by mla obsahovat co nejvtší množství vstupn výstupních port pro kompatibilitu s mnoha zaízeními a budoucí použití. Pedpokládá se využití zaízení v terénu a rzných pohybujících se objektech. Z tohoto vyplývá požadavek na dostaten robustní realizaci
6.1.2 Hardware Hardwarová realizace vychází ze specifikace zapojení pijímae TYCO A1029-A/C a popisu jeho vstupn/výstupních pin. Popsané zapojení poskytuje všechna rozhraní, která jsou implementována na modulu. Jelikož napájecí naptí modulu je 3,3V, tak logické úrovn vstup/výstup odpovídají této logice. Proto bylo nutno pro vtší kompatibilitu okolních zaízení nutno požít napové pevodníky úrovn na 5V TTL. U vstupních pin je toto realizováno napovým dliem. Výstupní úrovn jsou pevádny pomocí logických hradel napájených 5V.
Obr. 8 Osazený GPS modul
22
Modul obsahuje dva sériové datové kanály, které jsou pevedeny do napových úrovní pro RS232 COM port. Jako zdroj elektrické energie je použito stabilizovaných 5V dostupných na konektoru USB (Universal Serial Bus), který je dnes souástí prakticky každého PC. Použitím tohoto zdroje je zachována plná mobilita zaízení (v pípad, že je použit notebook) a odpadá nutnost pídavných baterií, pi použití v terénu. Samotné zaízení je realizováno na jedné desce plošných spoj. Ve výsledném zaízení bude deska zabudována v kovové krabice, kde bude uchycena v drážkách. Deska je tedy osazena konektory na dvou protjších stranách. Dva sériové datové kanály jsou zakoneny obvyklým devíti pinovým female konektorem Canon. Anténní konektor je typu SMA female . Ostatní piny jsou kolíkové lišty s rozteí 2,54 mm.
Obr. 9 Modulové schéma GPS modulu
Modul je obsahuje následující rozhraní pro komunikaci s okolím: x RTCM port - Sériová linka, která odpovídá napovým úrovním RS232 pro píjem DGPS dat. x NMEA port - Sériová linka, která odpovídá napovým úrovním RS232. Více v kap. 4.3.1. x LOCK - Pin je aktivní (log 1) pokud jsou pijímána platná naviganí data. x 1PPS - Signál o period 1 sekunda, který je synchronizován pomocí GPS signálu. x ENABLE - Pin který aktivuje režim s malou spotebou. Pro normální chod musí být pipojen na napájecí naptí. x Forward/Reverse - Smr pohybu v režimu Dead Reckoning. x Gyroskop - Vstup pro naptí gyroskopu v režimu Dead Reckoning. 23
x Odometr - Vstup mení vzdálenosti v režimu Dead Reckoning.
6.1.3 Software Softwarovou ást tohoto zaízení tvoí PC. Pro získání dat ze pijímae nebo jeho nastavení je možno použít jakékoliv terminálové rozhraní, které obsluhuje sériový COM port poítae (nap. Hyperterminal). Zaízení komunikuje pomocí NMEA vt, které je možno také na port posílat. Pro zjednodušení komunikace je možno použít nkterý ze softwaru, který pímo dekóduje zprávy a data zobrazuje v grafickém uživatelském rozhraní. V mém pípad jsem použil: software SkyTraq ver. 0.4.453.
Obr.9 Konfiguraní Software SkyTrac
6.1.4 Výsledek Podailo se splnit poátení požadavky. Zaízení fyzicky existuje a plní svou funkci. Pomocí nj se ovila funknost pijímae a také možnost jeho konfigurace. Zaízení je schopno plnit funkci naviganího asistenta napíklad v automobilu. Ke svému provozu vyžaduje samozejm PC nebo jiný výpoetní hardware.
24
Obr.10 Hotové zaízení s periferiemi
6.2 Jednotka s mikrokontrolérem 6.2.1 Požadavky Modul s mikroprocesorem musí být schopen zpracovávat obousmrnou sériovou komunikaci s GPS jednotkou: píjem dat i konfigurace modulu. Dále pijmutá data zpracovávat pro další použití. Musí tedy být opaten základními periferiemi pro komunikaci s GPS, tedy RS232 a rozhraní CAN jako výstup ze zaízení. Mikroprocesor musí odpovídat požadavkm na minimální výpoetní výkon, který je nutný k zajištní tchto funkcí.
6.2.2 Hardware Pro realizaci byl použit Univerzální avionický modul [7] jehož základem je mikrokontrolér s jádrem HCS12 od firmy Freescale. Konkrétní typ mikroprocesoru osazený na desce je:MC9S12XDT512 [6] Modul obsahuje tyto komunikaní rozhranní: CAN, RS232. Modul sice poítá i s dalšími periferiemi(USB, SPI, ADC) 25
ale na modulu nejsou osazeny obvody nutné pro jejich funkci. Použitý procesor obsahuje dv výpoetní jádra taktované s maximální frekvencí 40 MHz a 80 MHz.
Obr. 11 Univerzální avionický modul
Obr. 12 Blokové schéma avionického modulu[7]
K programování
mikroprocesoru
(ve
smyslu
transportu
kódu
do
mikroprocesoru) je využit systém Background Debug Mode (BDM) jedná se o rozhranní, které umožuje nahrání kódu do mikroprocesoru a zárove jeho krokování a ladní. Byl použit BDM programátor od firmy Pemicro , který je zobrazen na obr.13. S tímto programátorem komunikuje použitý ladící program NoICE HC12. 26
Obr. 13 BDM programátor firmy Pemicro.
7 Softwarová realizace V této kapitole bude popsán návrh softwaru pro mikroprocesor. Není možné zde posta celý kód. Kompletní kódy vetn komentá jsou na piloženém CD-ROM. Jako programovací jazyk pro vývoj firmwaru mikroprocesoru je použit ANSI C. Zdrojový kód byl psán ve vývojovém prostení MS Visual studio a následn kompilován v ICC (ImageCraft Compiler), který umožnuje peklad programu pro mikroprocesory HCS12. Pi psaní kódu v jazyce C byla dobrým pomocníkem publikace [10]. Jako hlavní základ celého projektu byly využity stávající knihovny srcHC12lib [8], které
kompletn
obsluhují
základní
chod
mikroprocesoru jako je nastavení registr, vektor perušení, komunikace s periferiemi.
Obr. 14 Projekt Obsahující všechny zdrojové soubory
27
Obr. 15 Celkové zapojení všech použitých zaízení
28
Ovení vlastností pijímae Po uvedení modulu GPS pijímae do provozu byla provedeno nkolik test, které mají za úkol prokázat zda pesnosti které výrobce udává jsou dosažitelné. Pro mení dat byl použit NMEA výstup pijímae. Získaná data byla posílána pomocí COM portu do notebooku, kde byl ke zpracování použit program DNR Garmin ver. 5.4.1. Pro grafické zpracování výsledk jsem napsal skript v prostedí Matlab. Testy byly provádny pi rzných kvalitách pijímaného signálu, aby bylo možno pozorovat kvalitu signálu na pesnost urení pozice. Byl také vyzkoušen píjem korekních dat z geostacionárního satelitu systému SBAS viz. obr.16.
Obr.16 Propojení systém pi píjmu korekních dat pomocí SBAS[9].
7.1 Urení chyby Existuje nkolik zpsob urení nepesnosti pozice,.nebo tato veliina závisí na mnoha faktorech. GPS signál je velmi asov a prostorov nestálý a tak je poteba stanovit podmínky za jakých je chyba (nepesnost) urena. Pi urování se tedy asto používá mezní hodnota chyby a zárove jí odpovídající pravdpodobnost, s kterou této odchylky dosahuje. Nejastji se pro urení chyby horizontální polohy GPS používá formátu chyby CEP 50%. Toto vyjádení chyby je znázornno polomrem kruhu do kterého spadá 50% ze všech namených hodnot. Tento typ polohové chyby používají výrobci pro prezentaci pesnosti svých GPS pijíma. Dále se také používají formáty chyb CEP 95% a CEP 99%, které zvyšují pravdpodobnost výskytu v daném kruhu.
29
Urování vertikální chyby není tak asté, ani výrobci jen u svých výrobk asto neuvádí. Urení vertikální chyby nejde prostou aproximací vzorc pro urení horizontální polohy. Je zde více parametr které ovlivují pesné urení vertikální chyby dané pozice.
7.2 Podmínky test Pro urení horizontální pesnosti jsme zvolili obvyklý zpsob popsaný výše, tedy CEP 50%. Je zejmé že výsledek bude záležet na spoustu faktorech hlavn pak na kvalit signálu. Proto je mení rozdleno do nkolika kategorií podle potu satelit, které jsou na daném míst ve výhledu. Také je uvažováno zda jsou dostupná diferenciální korekní data i nikoliv. Prbh testu spoívá v mení pozice na testpointech u kterých jde jednoznan urit pesnou pozici. Byla vybrána místa, která jsou snadno definovatelná na elektronické map nebo jsou to pímo triangulaní body eského geodetického úadu. as po který je mení na jednom míst provádno, byl stanoven na 5min, což odpovídá 300 vzorkm. Z tohoto množství je již možno vyvodit statisticky platný výsledek. Vertikální pesnost mení pozice probíhala za stejných podmínek jako horizontální. Lišil se ale zpsob zpracování dat. Za chybu výšky je považován prostý aritmetický prmr ze všech namených vzork jedné pozice.
Kvalitativní úrovn signálu: x SLABÝ GPS SIGNÁL po celou dobu mení pijíma indikuje signál z minimáln 3 satelit, maximáln však z 6 satelit. Diferenciální korekní signál není dostupný. x ST EDNÍ GPS SIGNÁL po celou dobu mení pijíma indikuje signál z minimáln 5 satelit, maximáln však z 9 satelit. Diferenciální korekní signál není dostupný. x SILNÝ GPS SIGNÁL po celou dobu mení pijíma indikuje signál z minimáln 8 satelit, maximáln však z 12 satelit. Diferenciální korekní signál není dostupný. x SLABÝ DGPS SIGNÁL po celou dobu mení pijíma indikuje signál z minimáln 3 satelit, maximáln však z 6 satelit. Diferenciální korekní signál je dostupný. x ST EDNÍ DGPS SIGNÁL po celou dobu mení pijíma indikuje signál z minimáln 5 satelit, maximáln však z 9 satelit. Diferenciální korekní signál je dostupný. 30
x SILNÝ DGPS SIGNÁL po celou dobu mení pijíma indikuje signál z minimáln 8 satelit, maximáln však z 12 satelit. Diferenciální korekní signál je dostupný.
Seznam testovacích míst která byly použita pro mení: Planá kižovatka
49.56501° N , 14.22158° E
Planá náves
49.56468° N , 14.22285° E
Kluenice
49.55099° N , 14.22934° E
Praha Dejvice
50.10166° N , 14.39343° E
Praha v Zápolí
50.04767° N 14.46038° E
7.3 Výsledky test Namené hodnoty byly zpracovány pomocí programu GARMIN a Matlab. Výsledkem je tabulka, která zobrazuje chyby pijímae pi všech režimech které jsme si definovali.
Tab. 8 Výsledky mení pesnost
Vliv píjmu diferenního signálu je znaný. Pokud porovnáme stejné úrovn píjmu signálu, tak je prmrné zlepšení pesnosti o 26%. Pro píjem korekních dat byl použit satelit nacházející se 21,5° východn od nultého poledníku. Pro lepší pedstavu jsou na následujících obrázcích zobrazeny horizontální a vertikální chyby v grafické podob.
31
Stední kruhová chyba Sever 330
30
300
60
Východ
Západ 2 4
120
Smr chyby (°)
240 6 210
150 Jih Chyba (m)
Graf.1 Horizontální chyba na pozici „Planá kižovatka“ pi stedn silném signálu s aktivním DGPS.
Vertikální výšková chyba referenní výška:482 m n.m 8
6
Chyba (m)
4
2
0
-2
-4
0
100
200
300
Poet vzork
Graf.2 Chyba výšky na poloze „Planá kižovatka“ pi stedn silném signálu s aktivním DGPS. 32
8 Závr Zadáním práce byla realizace univerzálního modulu GPS s možností dalšího rozšíení o další potebné periferie. Zaízení bylo navrženo a následn úspšn realizováno a odzkoušeno. Pro GPS modul byla navržena nová deska plošných spoj implementující všechna rozhraní, která modul poskytuje. Jako výpoetní jednotka byla použita univerzální vývojová deska s procesorem HCS12, která disponuje rozhraními RS232 a CAN. Jednotka s GPS modulem byla oživena a následn testována její pesnost pi urování polohy. Byl také vyzkoušen píjem diferenních dat ze stacionárního satelitu pomocí systému EGNOS. Hlavní výsledky mení polohy pinesly tyto výsledky: pesnost mení horizontální polohy 0,98m CEP, pesnost mení výšky 5,31m. Oba dva údaje pocházejí z mení, pi kterém byl použit systém DGPS a pijíma ml možnost zpracovávat signál ze všech dvanácti satelit. Výsledky mení odpovídají specifikaci výrobce, který udává pesnost menší než 1m pi použití DGPS. Do budoucna je možné využití dalších funkcí, které pijíma nabízí. Jako napíklad. Píjem korekních dat pomoci portu a protokolu RTCM, který mže poskytovat pesnost až v ádech centimetr. Podmínkou však je pístup internetu pomocí mobilního modemu. Další využitelná funkce by mohlo být výpoet aktuální pozice za nepítomnosti signálu tzv. Dead Reckoning. Na mikroprocesorovém modulu byla realizována ást zpracování vt protokolu NMEA 0183 a následné vysílání vhodných údaj jako je pozice, rychlost, as po sbrnici CAN s protokolem CANaerospace. Pro mikroprocesor byl použit upravený firmware, který používá knihovny pro obsluhu periférií [8]. Byly naimplementovány nové metody sloužící k obsluze sériové linky, inicializace GPS modulu, rozdlení NMEA vt na jednotlivé parametry a metoda pro vysílání zpráv po sbrnici CAN. Na sbrnici CAN je vysíláno celkem 8 zpráv s frekvencí 1 Hz. Sbrnice pracuje na penosové rychlosti 100 kbit/s. Do budoucna se poítá s rozšíením firmwaru o knihovny, které podporují generování synchronizaních asových známek podle protokolu IEEE 1588 po síti Ethernet.
33
9 Rejstík píloh 9.1 Seznam obrázk Obr.1 Topologie sít IEEE 1588................................................................................ 2 Obr.2 Penos synchronizaních paket mezi dvma uzly ......................................... 3 Obr.3 Datový rámec sbrnice CAN ........................................................................... 8 Obr.4 Rozhodování sbrnice ( bus arbitration)........................................................ 10 Obr.5 Obvodové ešení CAN sbrnice .................................................................... 10 Obr. 6 Síový OSI/ISO model sbrnice CANaerospace ........................................... 11 Obr. 7 Obecný formát CAN zprávy ........................................................................... 13 Obr. 8 Osazený GPS modul ..................................................................................... 16 Obr.9 Konfiguraní Software SkyTrac .................................................................... 17 Obr.10 Hotové zaízení s periferiemi ...................................................................... 18 Obr. 11 Univerzální avionický modul ........................................................................ 19 Obr. 12 Blokové schéma avionického modulu[7] ..................................................... 20 Obr. 13 BDM programátor firmy Pemicro. ................................................................ 20 Obr. 14 Projekt Obsahující všechny zdrojové soubory ............................................. 21 Obr. 15 Celkové zapojení všech použitých zaízení ................................................. 22 Obr.16 Propojení systém pi píjmu korekních dat pomocí SBAS[9]. ................... 28
9.1 Seznam graf Graf.1 Horizontální chyba na pozici „Planá kižovatka“ pi stedn silném signálu s aktivním DGPS. .................................................................................................. 26 Graf.2
Chyba výšky na poloze „Planá kižovatka“ pi stedn silném signálu
s aktivním DGPS. .................................................................................................. 27
9.2 Seznam tabulek Tab. 1 Elektrické charakteristiky pijímae ................................................................. 4 Tab.2 Pesnost pijímae podle výrobce ................................................................... 4 Tab. 3 Struktura VGT zprávy ...................................................................................... 6 Tab. 4 Struktura GGA zprávy ..................................................................................... 7 34
Tab. 5 Rozdlení typ zpráv podle identifikátor...................................................... 12 Tab. 6 Ukázka používaných datových typ .............................................................. 14 Tab. 7 CAN zprávy implementované v modulu. ....................................................... 14 Tab. 8 Výsledky mení pesnosti. ........................................................................... 25
9.3 Seznam schémat a dokument Sch 1.Schéma zapojení desky s GPS modulem. Dok 1. Deska plošných spoj TOP GPS modulu Dok 2. Deska plošných spoj BOTTOM GPS modulu
35
9.4 Seznam použitých zdroj [1] GPS Firmware A1029 / A1035-C : User’s Manual [online], 2007 [cit. 2010-0504]. Dostupné z: www.opengpstracker.org/gpsa1035fw.pdf [2] CANaerospace : Interface specification for airborne CAN applications V 1.7 [online], 2006 [cit. 2010-05-04], Dostupné z: www.canaerospace.com. [3] Canbus.cz [online], 2006 [cit. 2010-05-13]. CAN-LAB s.r.o. Dostupné z: www.usb2can.wz.cz. [4] NMEA Reference Manual [online], 2008 [cit. 2010-05-24]. Dostupné z: http://www.usglobalsat.com/downloads/NMEA_commands.pdf. [5] EIDSON, John . Measurement, control, and communication using IEEE 1588 . USA . 2006. 235 s [6] MC9S12XDP512 Data Sheet [online]. [s.l.] : [s.n.], 2008 [cit. 2010-05-26]. Dostupné z: www.freescale.com. [7] PAES, Pavel. Freescale HC12 demo board - schéma zapojení [online] , 2009 [cit. 2010-05-26]. Dostupné z: www.pacespavel.net/Download/index.php [8] PAES, Pavel. Freescale HC12 Driver Library [online], 2009 [cit. 2010-05-26]. Dostupné z: <www.pacespavel.net/Download/index.php?soubor=Paces_srcHC12lib>. [9] EGNOS : HOW DOES EGNOS WORK?. In ESA EGNOS [online]. 2004 [cit. 2010-05-26]. Dostupné z: www.esa.int/egnos. [10] HEROUT, Pavel . Uebnice jazyka C.: Kopp, 2008. 431 s.
36
A
B
C
5
14
11
4
2
8
7
6
1
R2 5k9
R1 2k2
VCC+5V
11
100 nF
C7
OUT
4
3
2
8
7
6
Vcc3A
BC848CL Q1
2
L2
1
+
0H
4
C5
C1 0.1uF
0.1uF
VCC +3,3V
C2
100n
C3
Vcc3A
10
COM2 NMEA Protocol
9
1
C8 100n
100n
+
10 uF ESR
C6
VCC +3,3V
5
4
1
C10
VCC+5V
LE33CD
GND GND Res. GND GND INHIB
IN
CONN DSUB 9-R
J2 5
2 3 6 7
8
U5
VCC +3,3V
You can used one of these variants voltage sources for internal ADC.
10
COM1 NMEA Protocol
9
74HC4050/SO
15
U6F
3
2 1
CONN DSUB 9-R
5
74HC4050/SO
12
U6E
J6 11
CON2
J12
VCC+5V
4
C4 0.1uF
0.1uF
CON6
J9 6 5 4 3 2 1
16
1 3 4 5 2 6
10 11
13 8
R9 3k9
R8 2k2
1 2 3 4 5
3
R4 3k9
R3 2k2
T1OUT T2OUT
R1OUT R2OUT
R6 3k9
R5 2k2
MAX3232/SO
VCC
C1+ C1C2+ C2V+ V-
T2IN T1IN
R1IN R2IN
U3
CONN PCB 5
J3
VCC +3,3V
1PPS TX0 LOCK TX2 RX0 RX2
3
14 7
12 9
10
6
4
2
U6D
U6C
U6B
U6A
Vcc3A
VCC +3,3V
9
7
5
74HC4050/SO 3
10 11 12 13 14 15 16 17
1 2 3 4 5 6 7 8 9
2
1 2 3 4 5 6 7 8
Vcc3A AGND0 Odo F/R AGND1 Res.1 Res.2 AGND2
nRST LOCK Res.3 Vgyro Res.4 Res.5 Res.6 Res.7 TEST1
CON8
J13
MY1
2
L1
1
C11 100n
25 24 23 22 21 20 19 18
34 33 32 31 30 29 28 27 26
R12 0
R11 10k
VCC +3,3V
J5
0
VCC+5V
1 2 3 4 5 6 7 8
J11
CON8
Friday, January 22, 2010
Date:
Lukáš Kostka Document Number <>
Size B
Title
1
Sheet
1
of
1
If you don´t use active antenna resistor R13 is not used.
R13
SMAF_PCB
1
Rev
Gain select for LNA (GS) For low gain connect GS to High level For high gain connect GS to low level
nRST Do not pull low when in low power mode (ENABLE = LOW)
SW1
RESET
R7 5k9
VCC +3,3V
1
GPS breakout board for modul 1029
0H
ANTSTAT GS GNDANT0 ANT GNDANT1 AGND3 VANT AGND4
GPS Module A1029-A
1PPS Tx2 Rx2 Tx0 Rx0 TEST0 ENABLE Vcc GND
1PPS signal is valid only when LOCK signal HIGH
R10 10k
VCC +3,3V For normal operation, the pin ENABLE has to be on HIGH level
2
3 4
D
5
+
+
2 5
+
A
B
C
D