System nawigacji satelitarnej GPS

Transkrypt

System nawigacji satelitarnej GPS
+ ++
Projekty AVT
2955
System nawigacji
satelitarnej GPS
Prezentowany układ to kompletny system
nawigacji satelitarnej GPS. Układ umożliwia odczytanie pozycji geograficznej (szerokość i długość geograficzna wraz z kierunkiem: północ – N, południe – S, wschód
– E, zachód – W), wysokości nad poziomem
morza oraz liczby satelitów, na podstawie których dokonano pomiaru wszystkich parametrów. Dodatkowo układ wyświetla czas UTC
(Universal Time Coordinated), umożliwia
zaprogramowanie punktu docelowego podróży (wraz z nadaniem nazwy) oraz obliczenie
odległości (w prostej linii) do tego punktu od
aktualnej pozycji.
Urządzenie współpracuje z zewnętrznym
modułem GPS. Moduł ten wysyła dane nawigacyjne poprzez interfejs RS232 w standardzie NMEA0183. Standard NMEA0183 określa jednoznacznie to, w jaki sposób odbiornik
GPS wysyła dane (wysokość i szerokość
geograficzna, prędkość poruszania się, wysokość nad poziomem morza itp.). Standard ten
został utworzony przez Marine Electronics
Association w celu łatwiejszej współpracy
wszystkich urządzeń służących do nawigacji.
Standard NMEA0183 opiera się na następujących założeniach:
• dane wysyłane są w sposób tekstowy,
• nagłówek linii określa jednoznacznie jaki
rodzaj danych jest przesyłany,
• każdy nagłówek zaczyna się znakiem $ a
kończy znakiem <CR><LF>,
• każda informacja oddzielona jest w danej
linii przecinkiem,
• długość każdej z linii nie może przekraczać
82 znaków.
Standard NMEA0183 dopuszcza także
wartości ułamkowe, które zawierają kropkę, jako znak oddzielający część całkowitą
od ułamkowej. Te informacje pozwalają na
prostą budowę odbiornika GPS; wystarczy
bowiem z całej ramki NMEA wybrać informację – parametr, który nas interesuje, a
następnie sformatować w sposób wygodny
do odczytu i wyświetlić. W skład kompletnej informacji NMEA wchodzi zestaw kilku
mniejszych ramek, poprzedzonych nagłówkami. W dalszej części artykułu pod pojęciem ramki będę rozumiał linię tekstu, która
zaczyna się znakiem $ oraz nazwą nagłówka.
Prezentowane urządzenie wykorzystuje tylko
ramkę (linię tekstu) z nagłówkiem $GPGGA.
W tej ramce zawarte są wszelkie kluczowe
informacje dotyczące pozycji geograficznej.
Więcej informacji dotyczących standardu
NMEA0183 można znaleźć w Internecie.
E l e k t r o n i k a d l a Ws z y s t k i c h
Wrzesieñ 2010
Opis ramki $GPGGA
Informacje poniższe zaczerpnąłem ze strony
http://home.mira.net/~gnb/gps/nmea.html.
Proponowany odbiornik wykorzystuje
tylko ramkę $GPGGA do ustalenia pozycji
geograficznej. W tej jednej ramce zawarte są
wszystkie informacje konieczne do ustalenia pozycji geograficznej. Ułatwia to znacznie pisanie oprogramowania, które dekoduje
tylko jedną ramkę $GPGGA.
Ramka ta składa się z następujących pozycji podanych w kolejności występowania od
nazwy nagłówka:
1. Czas UTC. Podawany w formie sześciu
cyfr, bez znaków oddzielających np. 182706
oznacza 18 godzinę, 27 minutę i 6 sekundę
czasu UTC.
2. Szerokość geograficzna wraz z określeniem
kierunku (kierunek północny – N, kierunek
południowy – S). Podawana w
formie ośmiu cyfr rozdzielonych kropką. Po ostatniej cyfrze
występuje przecinek rozdzielający pola oraz litera określająca
kierunek szerokości geograficznej, np.: 5132.4335,N.
3. Długość geograficzna wraz z
określeniem kierunku (kierunek
wschodni – E, kierunek zachodni – W). Podawana w formie
9 cyfr rozdzielonych kropką,
stopnie długości geograficznej mogą przyjmować wartości większe od 99, przez co
wymagana jest dodatkowa cyfra, której nie
ma w przypadku szerokości geograficznej (90 do +90°). Następnie występuje przecinek
rozdzielający pola oraz litera kierunku, np.:
02101.3868,W.
Sposób zapisu szerokości i długości geograficznej wymaga dodatkowego komentarza. Posłużę się tu bezpośrednio przykładem z punktu 2. Z wartości 5132.4335,N
można bezpośrednio odczytać wartość stopni
i minut szerokości geograficznej oraz jej kierunek. Liczba stopni oraz minut podana jest
w pierwszych czterech cyfrach; w naszym
przykładzie to 51 stopni oraz 32 minuty.
Kolejne cztery cyfry oznaczają ułamkową
część minut (czyli sekundy kątowe i ich setne
części). Wygodniejszym sposobem zapisu jest
przedstawienie użytkownikowi pozycji geograficznej w formie: stopnie.minuty.sekundy.
ułamki_sekund niż w formie stopnie.minuty.
ułamki_minut. Konwersja z wartości wysyłanych przez odbiornik GPS do postaci wygodnej dla użytkownika opiera się o zależność:
1 minuta = 60 sekund. W programie dokonywane jest stosowne przeliczenie z systemu
NMEA do formatu stopnie.minuty.sekundy.
ułamki_sekund. Funkcja realizująca stosowne
przeliczenie pokazana jest na listingu 1.
4. Sposób ustalenia pozycji geograficznej:
występowanie cyfry 1 oznacza, że pozycja
15
Projekty AVT
void lcdlon(char x, char y)
{
float ln=0;
float ms=0;
char minuty=0;
//deklaracja zmiennych
float sekundy=0;
char lonstopnie=0;
char ltemp[14];
lcdxy(x,y);
//ustaw pozycje kursora na wyświetlaczu
ln=atof(lon);
//konwersja z ciągu znaków na wartość typu float
//lon - ciąg znaków odczytany z modułu GPS (dł geogr)
ln=ln*0.01;
//przesunięcie przecinka o dwie pozycje w lewo
lcdtxt(„Lon „);
//wyświetlenie tekstu „Lon „ na wyświetlaczu
lonstopnie=ln;
//pobranie części całkowitej ze zmiennej ln (stopnie)
itoa(lonstopnie,ltemp,10);
//konwersja na ciąg znaków (char)
lcdtxt(ltemp);
//wyświetlenie stopni dł geogr.
lcdtxt(„.”);
//wyświetlenie kropki
ln=ln-lonstopnie;
//odjęcie stopni od wartości dł geogr.
ms=ln*100;
//przecinek o dwie pozycje w prawo
minuty=ms;
//odczytanie minut
ms=ms-minuty;
//odjęcie minut od wartości dł geogr.
ltoa(minuty,ltemp,10);
lcdtxt(ltemp);
//wyświetlenie minut
lcdtxt(„’”);
sekundy=ms*60;
//obliczenie liczby sekund z wartości ms
dtostrf(sekundy,4,2,ltemp);
//konwersja wartości double na ciąg znaków
lcdtxt(ltemp);
//wyświetlenie sekund i ich części ułamkowej
lcddata(34);
//znak „
lcddata(lond[1]);
//wyświetlenie kierunku
lcdtxt(„ „);
//puste pola aż do końca linii
lonsek=(unsigned long)3600*lonstopnie+(unsigned long)60*minuty+sekundy;
//oblicz liczbę sekund - służy do obliczenia odległości do miejsca docelowego Listing 1
}
wykorzystano systemu DGPS.
Suma kontrolna ma wartość
75.
Odczyt każdej ramki następuje w procedurze przerwania
UART-u mikroprocesora. W
przypadku obecności sygnału
z co najmniej trzech satelitów
GPS przerwanie to pojawia się
co sekundę. Jeśli urządzenie nie
odbiera odpowiedniego sygnału
z systemu GPS, przerwanie to
pojawia się co dwie sekundy,
lecz w wysyłanych danych nie
występują informacje o pozycji geograficznej, odbierany jest
natomiast czas UTC. Procedurę
odczytu danych oraz znalezienia ramki $GPGGA w całym
ciągu danych wysyłanych przez
odbiornik GPS przedstawia list-
została ustalona na podstawie systemu GPS. DGPS. To pole jest puste, jeśli system nie ing 2.
Kolejne linijki programu wczytują dane
Cyfra 2 oznacza ustalenie pozycji za pomocą korzysta z systemu DGPS. W przypadku
systemu DGPS (system GPS wspomagany pracy z systemem DGPS, w tym polu zawarta wysyłane po nagłówku GPGGA. Następnie
stacjami naziemnymi, pozwalający na zwięk- jest liczba sekund od ostatniej aktualizacji program liczy kolejne przecinki i przepisuje
dane zawarte pomiędzy kolejnymi przecinkaszenie precyzji pomiaru). Cyfra 0 oznacza pozycji za pomocą systemu DGPS.
niepoprawne ustalenie pozycji.
10. Identyfikator stacji DGPS. To pole jest mi do konkretnych zmiennych. Wiadomo, że
5. Liczba satelitów, na podstawie których puste, jeśli system nie korzysta z systemu pomiędzy pierwszym a drugim przecinkiem
została ustalona pozycja geograficzna. Liczba DGPS. W przypadku pracy z systemem ramki $GPGGA zawarty jest czas UTC, a
ta ma poprzedzające zero w przypadku liczby DGPS w tym polu zawarta jest czterocyfrowa pomiędzy trzecim i czwartym przecinkiem
satelitów mniejszej od 10. Przykładowo 07 liczba identyfikująca stację DGPS. Model zawarta jest informacja o kierunku szerokości
oznacza 7 satelitów.
prezentowany w artykule nie korzysta z syste- geograficznej i tak dalej.
6. Parametr HDOP (ang. Horizontal Dilution mu DGPS. Osoby zainteresowane systemem
of Precision) określa precyzję ustalenia sze- DGPS mogą znaleźć stosowne informacje w Określenie odległości do
rokości geograficznej. Wysoka wartość tego Internecie oraz instrukcjach obsługi sprzętu obiektu docelowego
parametru oznacza duży błąd w ustaleniu GPS (np. firmy Garmin).
Pomiar odległości do miejsca docelowego
pozycji. Precyzyjne pomiary powinny mieć 11. Suma kontrolna, służąca do stwierdzenia realizowany jest w przestrzeni 2-wymiarowspółczynnik HDOP poniżej 3. Parametr ten poprawności transmisji danych przez łącze wej. Wysokość obiektu nad poziomem morza
określany jest na podstawie rozmieszczenia RS232. Powstaje ona jako liczba heksadecy- nie została uwzględniona. Jest to oczywiście
satelitów systemu GPS. Jeśli satelity umiesz- malna sumy XOR znaków pomiędzy symbo- źródło błędów, ale znacznie upraszcza pisanie
czone są blisko siebie, to precyzja pomiaru lami $ i *.
oprogramowania. Ideę pomiaru odległości
Przykładowa ramka $GPGGA ma nastę- od aktualnej pozycji do miejsca docelowemaleje (brak dużych różnic w odbiorze sygnału GPS). Takie „zbiorowisko” satelitów może pującą postać:
go ilustruje rysunek 1. Pomiar odległości
$GPGGA,170834,4124.8963,N,08151.68 do miejsca docelowego opiera się o dwie
być traktowane jako jeden satelita.
7. Wysokość nad poziomem morza. Wysyłana 38,W,1,05,1.5,280.2,M,-34.0,M,,,*75
właściwości: stałą długość południków oraz
Dekodując ramkę zgodnie z punktami 1– zmienną długość równoleżników. Na rysunku
w ramce $GPGGA w formie liczby pełnych metrów nad poziomem morza oraz, 11, można uzyskać następujące informacje:
1 długość a oznacza długość południkową
Czas UTC aktualnej pozycji geogra- pomiędzy aktualnym punktem, w którym się
oddzielonej kropką, wartości ułamkowej.
Przykładowo 211.3 określa wysokość 211.3 ficznej: 17:08:34. Szerokość geograficzna
m n.p.m. Długość tego pola ulega zmianie 41º 24.8963’ N (po przeliczeniu 41º24’54” Rys. 1
wraz ze zmianą wysokości. Warto zaznaczyć, N). Długość geograficzna 81º51.6838’ W
że przy małej liczbie satelitów (<5) pomiar (po przeliczeniu 81º51’41” W). Pozycja
wysokości jest obarczony bardzo dużym błę- określona na podstawie systemu GPS (bez
dem, a przy liczbie satelitów równej 3 pomiar DGPS). Liczba satelitów, na podstawie których określono pozycje: 5. Wartość HDOP
wysokości jest całkowicie bezużyteczny.
8. Wysokość geoidy nad elipsoidą standardu 1.5. Wysokość nad poziomem morza: 280,2
WGS84. Parametr niewykorzystywany w m. Wysokość geoidy – 34m. Kolejne dwa
urządzeniu. Stanowi on informację o różni- pola są puste, do określenia pozycji nie
cy pomiędzy elipsoidą odniesienia systemu
Listing 2
WGS84 a geoidą znak=recvrs232();
//odbierz znak z układu UART
//jeśli odebrany znak to $ i krok dekodowania=0 to
stanowiącą przybli- if ((znak==36) && (krok==0)) krok=1;
if (znak==42) krok=0;
//jeśli odebrany znak to *, to koniec ramki, wyzeruj krok dekodowania
żenie powierzchni if ((krok==1) && (znak==71)) krok=2;
//jeśli krok=1 oraz znak = G to kolejno
if ((krok==2) && (znak==80)) krok=3;
//sprawdź czy znak P
Ziemi.
if ((krok==3) && (znak==71)) {krok=4; znak=0;} //sprawdź czy znak G, ustaw znak=0
9. Czas ostatniej if ((krok==4) && (znak==71)) krok=5;
//sprawdź czy znak G
((krok==5) && (znak==65)) {krok=6; znak=0;} //sprawdź czy znak A, znak=0
poprawki systemu if
if (krok==6) {
//kolejne dane to zawartość ramki GPGGA
//program odczytywania kolejnych informacji z ramki //GPGGA
16
Wrzesieñ 2010
E l e k t r o n i k a d l a Ws z y s t k i c h
Projekty AVT
liczodleglosc(void)
i przed zastosowa- float
{
niem zakupionego char temp[12]; //zmienna pomocnicza
cosinus; //wartość kosinusa
modułu GPS warto double
long x=0,y=0;
//zmienne do obliczenia odległości
się upewnić, czy y=latsek-dssek; //obliczenie różnic pozycji geogr.
x=lonsek-ddsek;
wysyła on dane w //zmienne
x oraz y zawierają różnice w poz. geogr wyrażone w sek
standardzie NMEA cosinus=1000*cos(latstopnie*3.1415/180); //radiany na stopnie
korekcja związana ze zmienna długością równoleżników.
(moduł wykorzysta- //
x=x*cosinus;
//korygowanie wyniku
x=x*0.001;
//usunięcie mnożnika 1000
ny w modelu ma
x=x*x;
//obie wartości podnieść do kwadratu
możliwość wysyła- y=y*y;
//i wyciągnąć pierwiastek
nia danych w stan- odleglosc=sqrt(x+y);
odleglosc=odleglosc*0.03; //0.03 = 40000km/(360*60*60)
dardzie NMEA oraz if (abs(x) >150000000) odleglosc=-1; //jeśli za duże wartości
binarnym – w for- if (abs(y) >150000000) odleglosc=-1;// to zwróć -1.
return odleglosc;
mie zer i jedynek) }
Listing 3
oraz czy w ciągu
wyjściowym obecna jest ramka $GPGGA. dawane są w formie płytki drukowanej ze
Test modułu GPS najwygodniej przeprowa- zintegrowaną anteną. Autor testował opisany
dzić, wpinając go bezpośrednio do portu model z dwoma modułami GPS i moduł ostaCOM komputera PC. Należy mieć na uwa- tecznie użyty w urządzeniu wykazywał się o
dze, aby wpiąć tylko linię TX modułu GPS do wiele większą czułością niż moduł GPS typu
linii RX złącza COM komputera. Podłączenie OEM. Poprawę odbioru sygnału GPS można
linii TX złącza COM komputera z linią RX uzyskać, stosując zewnętrzną antenę (jeśli
modułu może doprowadzić do uszkodzenia moduł ma zewnętrzne wejście antenowe) lub
modułu GPS (linia TX złącza COM kompu- przesuwając moduł GPS w pobliże okna.
tera PC ma znacznie wyższe napięcia pracy
niż moduł GPS). W moim przypadku do Montaż i uruchomienie
pierwszego testu modułu GPS wykorzysta- Układ można zmontować na płytce widocznej
łem przejściówkę USB-RS232. Przejściówka na rysunku 3. Montaż jest klasyczny, ale
zapewni od razu dopasowanie poziomów ze względu na obecność rezystorów SMD
i wyeliminuje ryzyko uszkodzenia modułu wymagana jest spora precyzja w montażu.
GPS. Podczas testów w pomieszczeniach Do złączy oznaczonych S1–S4 należy przymoże się okazać, że moduł GPS nie potrafi lutować przyciski służące do obsługi odbiorodebrać sygnału GPS, przez co wysyłane nika. Dodatkowo, jeśli wyświetlacz LCD
ramki będą puste – wysyłane będą tylko ma podświetlanie, to należy je podłączyć do
nazwy nagłówków (w ramce $GPGGA poja- gniazda oznaczonego PODSW, a przycisk
wi się jedynie czas UTC). Dotyczy to szcze- służący do jego włączenia należy przylutować za
gólnie modułów GPS typu OEM, które sprze- pomocą odcinka przewodu do gniazda POD_S.
Układ najlepiej
Rys. 2
zamknąć w stosownej obudowie.
S5
W modelu wyko2
rzystano obudowę
R3
T1
1
Z44,
która okazaBC237
VCC
2.2k
ła się najlepszym
IC1
1
2
1
23
wyborem. Koszyk
PC6(/RESET)
PC0(ADC0)
3
24
PC1(ADC1)
na 4 baterie AA
4
1
22
25
AGND
PC2(ADC2)
VCC 21
5
2
26
należy przykleAREF
PC3(ADC3)
6
3
20
27
AVCC
PC4(ADC4/SDA)
ić do jednej ze
4
2
28
PC5(ADC5/SCL)
1
LCD_CTR ścian obudowy.
9
LCD_DATA R1
PB6(XTAL1/TOSC1)
Trzeba dodatkoZAS
10
2
10k VCC wo wyciąć otwór
PB7(XTAL2/TOSC2)
PD0(RXD)
2
4
6
8
10
6.8k
S4
LCD_DATA
LCD_CTR
S5
22
1
2
4R
R1
C2
1
2
MEGA8-P
S3
S3
POD_S
22
R4
1
2
POD_S
S2
47u
1
3
5
7
9
k8.6
BC237
T1 1 2 3 2R IC1
1C
PODSW
JP1
1
2
S1
n001
MEGA8-P
14
15
16
17
18
19
S2
Rys. 3
k2.2
2
1
PB0(ICP)
PB1(OC1A)
PB2(SS/OC1B)
PB3(MOSI/OC2)
PB4(MISO)
PB5(SCK)
1
2
ZAS
VCC
VCC
7
S1
PODSW
47u
100n
GND
3
4
5
6
11
12
13
VCC
R2
C1
+
C2
8
PD1(TXD)
PD2(INT0)
PD3(INT1)
PD4(XCK/T0)
PD5(T1)
PD6(AIN0)
PD7(AIN1)
3R
Schemat odbiornika GPS zamieszczono na rysunku 2. Układ składa się z
mikroprocesora AVR, który z ramek
NMEA0183 pozyskuje informacje o
lokalizacji oraz modułu GPS, który takie
ramki wysyła. Informacje o lokalizacji
są następnie przedstawiane na wyświetlaczu LCD. Tranzystor T1 z elementami
R2 i R3 sprzęga łącze RS232 modułu
odbiorczego GPS z UART-em procesora.
Potencjometr R1 służy do regulacji kontrastu wyświetlacza LCD. Rezystor R4
ogranicza prąd podświetlania wyświetlacza LCD. Można go dobrać w zależności
od potrzeb – im mniejszy, tym większy
pobór prądu, ale większa jasność podświetlania wyświetlacza. Układ wykorzystuje gotowy moduł odbiorczy GPS,
który nie wymaga żadnej ingerencji
użytkownika. Po podłączeniu zasilania
moduł odbiorczy GPS od razu wysyła ramki w standardzie NMEA0183.
Możliwa jest konfiguracja modułu GPS,
ale w układzie nie została wykorzystana
– standardowe ustawienia okazały się
optymalne. Sposób konfiguracji modułu
GPS zależy od producenta urządzenia
VCC
Opis układu
VCC
znajduje urządzenie (punkt X), a punktem
docelowym (punkt Y). Długość a liczona
jest przez program jako różnica szerokości geograficznej aktualnej pozycji i miejsca
docelowego. Różnica ta wyrażona jest w
sekundach kątowych. W celu wyrażenia długości a w metrach lub kilometrach jest ona
wymnażana przez 0,03. Współczynnik 0,03
powstał poprzez podzielenie obwodu Ziemi
(sumy długości dwóch południków) przez
liczbę sekund kąta pełnego: 360º. Długość
dwóch południków to około 40 000km a
ilość sekund kątowych w kącie pełnym to
360*60*60=1296000. Oznacza to, że urządzenie przyjmuje długość 30 metrów jako jedną
sekundę kątową (ale tylko dla południków,
które mają stałą długość, dla równoleżników
ta wielkość jest dodatkowo korygowana przez
funkcję kosinus). Odległości b oraz c nie są
równe. Wraz z oddalaniem się od równika
długość równoleżników maleje z kosinusem
kąta szerokości geograficznej, osiągając wartość 0 dla biegunów (cos90º=0). Długość o
liczona jest w następujących krokach:
1. Obliczenie różnicy w pozycji geograficznej, zarówno dla szerokości geograficznej jak
i dla długości geograficznej. Wyrażenie tych
różnic w sekundach kątowych.
2. Obliczenie długości b, zależnej od aktualnej szerokości geograficznej (uwzględnienie
kosinusa szerokości geograficznej).
3. Obliczenie przybliżonej odległości pomiędzy punktami X oraz Y ze wzoru:
o | 0,03 a 2 b 2
Funkcja realizująca te obliczenia przedstawiona jest na listingu 3.
10k
S4
JP1
STK200
STK200
E l e k t r o n i k a d l a Ws z y s t k i c h
Wrzesieñ 2010
17
Projekty AVT
na wyświetlacz LCD oraz niewielkie otwory do przymocowania przycisków. Można
spróbować podgrzać końcówki przycisków
lutownicą i wtopić je w obudowę tak, aby
przeszły na wylot obudowy. Z boku obudowy
zamocowano wyłącznik urządzenia. Pomocą
w pracach mechanicznych mogą być fotografie modelu. Do gniazda oznaczonego S5
należy doprowadzić łącze RS232 z modułu
GPS. Moduł ten musi mieć ustawione następujące parametry:
1. szybkość transmisji 4800b/s,
2. 8 bitów danych, brak kontroli parzystości
3. musi wysyłać ramkę $GPGGA – układ
właśnie z niej odczytuje informacje dotyczące pozycji geograficznej.
W modelu zastosowano moduł przeznaczony
do użytku w samochodach, oparty na układzie
SIFR STAR III, który doskonale radzi sobie z
ustaleniem pozycji nawet w pomieszczeniach.
Od parametrów tego modułu zależą parametry
całego urządzenia. Warto więc wyposażyć się
w możliwie jak najczulszy moduł odbiorczy.
Jak pisałem wyżej, należy stanowczo unikać
modułów GPS typu OEM.
Prezentowany model powinien być zasilany
z 4 akumulatorków NiMH AA o pojemności
2100mA, co wystarcza na ciągłą pracę urządzenia przez co najmniej 20 godzin – pobór
prądu wynosi 80mA oraz 110mA przy włączonym podświetlaniu. Nie należy stosować
do zasilania układu czterech jednorazowych baterii AA, gdyż napięcie świeżych
baterii często przekracza 1,5V, co może spowodować uszkodzenie procesora oraz modułu
odbiorczego.
Program sterujący pracą całego układu został napisany w środowisko WinAVR
– można go ściągnąć z Elportalu. Jest to
mój pierwszy program w C i zapewne nie
jest napisany optymalnie. Osoby bardziej
doświadczone mogą oprogramowanie napisać
same, szczególnie jeśli wiadomo, w jaki sposób należy odczytywać dane lokalizacyjne z
ramek $GPGGA protokołu NMEA0183. Przy
konfiguracji fusów mikroprocesora należy
pamiętać, aby włączyć wewnętrzny oscylator
i ustawić jego częstotliwość na 1MHz.
Obsługa
Urządzenie po włączeniu oczekuje na poprawne informacje z modułu GPS. Czas wstępnego oczekiwania zależny jest od rodzaju
modułu i określany jest jako zimny start. Czas
ten zależny jest także od liczby satelitów, które w danym
momencie „widzi” odbiornik. Model w pomieszczeniu
potrzebuje około 45 sekund na
wyświetlenie danych nawigacyjnych. Po otrzymaniu tych
danych układ jest gotowy do
pracy.
Do obsługi urządzenia służą
cztery przyciski. Umożliwiają
one programowanie współrzędnych geograficznych miejsca, do którego chcemy określić naszą aktualną odległość, nadanie nazwy
temu miejscu oraz sprawdzenie odległości od
naszej aktualnej pozycji do zaprogramowanego miejsca. Jeśli interesują nas wyłącznie
nasze aktualne współrzędne geograficzne, to
nie potrzebujemy korzystać z przycisków,
tylko po prostu włączyć urządzenie.
Aby wprowadzić nową lokalizację miejsca, do którego będzie liczona odległość,
należy nacisnąć przycisk opisany jako Nowa
Lok (patrz fotografie modelu). Po naciśnięciu przycisku, na wyświetlaczu pojawi
się komunikat o wprowadzeniu szerokości geograficznej. Przyciskami oznaczonymi jako ST, MIN, SEK należy wprowadzić szerokość geograficzną. Wpisaną
wartość zatwierdza się przyciskiem Enter.
Po zatwierdzeniu szerokości geograficznej należy, sposobem opisanym powyżej,
wprowadzić długość geograficzną. Na sam
koniec trzeba wprowadzić nazwę wpisanego
miejsca (np. nazwę miasta). Zmiany litery
dokonujemy przyciskami oznaczonymi A,
B, C... oraz Z, Y, X... Nazwę można wykasować i wpisać ponownie, naciskając jednocześnie oba przyciski (CLEAR). Każdą
wpisaną literę zatwierdzamy przyciskiem
opisanym OK. Po wpisaniu nazwy układ
wróci do wyświetlenia aktualnych współrzędnych geograficznych. W modelu nie
można zaprogramować kierunku geograficznego. Programowana odległość musi leżeć
na półkuli północnej w kierunku wschodnim od południka głównego. Odległość do
miejsca, które zostało zaprogramowane,
można sprawdzić, naciskając przycisk ODL.
Odległość wyświetlana jest z rozdzielczością
10 metrów, aczkolwiek dokładność jej określenia wynosi ok. 40 metrów i jest zależna
od liczby satelitów, na podstawie których
została określona nasza pozycja. Układ aktuR
18
E
K
L
A
M
Wykaz elementów
Rezystory
R1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10kΩ PR
R2 . . . . . . . . . . . . . . . . . . . . . . . . . .6,8kΩ SMD 1206
R3 . . . . . . . . . . . . . . . . . . . . . . . . . .2,2kΩ SMD 1206
R4 . . . . . . . . . . . . . . . . . . . . . . . . . . . 22Ω SMD 1206
Kondensatory
C1 . . . . . . . . . . . . . . . . . . . . . . . . . .100nF SMD 1206
C2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .47μF/16V
Półprzewodniki
IC1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ATmega8
T1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . BC237
Pozostałe
Podstawka DIP28
5 sztuk przycisków
Wyświetlacz 4x20 znaków
Koszyk na cztery baterie AA
Moduł GPS – zgodnie z opisem
Komplet podzespołów z płytką jest dostępny
w sieci handlowej AVT jako kit szkolny AVT-2955
(moduł GPS nie wchodzi w skład zestwu).
alizuje pozycję co sekundę, ale aby do tego
doszło, moduł musi „poczuć”, że się porusza.
Oznacza to, że układ może nie zareagować,
jeśli przemieścimy się tylko o 30 czy 50
metrów, dlatego podczas testów najlepiej
wsiąść na rower i przejechać się razem z
włączonym układem, obserwując wskazania. Poruszanie się powoduje aktualizację
naszego położenia co sekundę. Dokładność
wyznaczenia pozycji według danych producenta modułu wynosi 5 metrów. Dużą
pomocą w testach modułu może okazać się
program Google Earth, który podaje pozycję
geograficzną wraz z wysokością nad poziomem morza. Wskazania przyrządu można
zatem porównać z tym, co podaje program.
Innym sposobem jest posiadanie dobrego
fabrycznego odbiornika i porównanie wskazań obu przyrządów.
Rafał Stępień
[email protected]
A
Wrzesieñ 2010
E l e k t r o n i k a d l a Ws z y s t k i c h