Autor urządzenia zakupił swego czasu używany odbiornik GPS Amstrad gp1000. (Nie)stety, urządzenie było na tyle uszkodzone, że nie była możliwa jego naprawa, więc autor postanowił wykorzystać elementy urządzenia do budowy czegoś nowego. I tak zrodziła się idea zaprojektowania przenośnego rejestratora GPS.
Uzyskany z zakupionego urządzenia odbiornik sygnału GPS zasilany jest napięciem 3,3V i wykorzystuje protokół NMEA w wersji 2.2 (prędkość 9600 bodów, 8 bitów danych, brak kontroli parzystości, jeden bit stopu) z częstotliwością odświeżania do 1 Hz i z wykorzystaniem 16 kanałów. Autor postanowił także wykorzystać ponownie akumulator litowo-polimerowy o pojemności 1500 mAh, część elementów pasywnych i złącz.
Schemat całości można zobaczyć poniżej:
Opisywane urządzenie powstało więc w całości z ponownie wykorzystanych części, dodatkowo potrzebne były jedynie dwa przyciski, układ MAX1811 do kontroli ładowania akumulatora oraz układ przetwornicy podwyższającej DC/DC typu LTC3440. Układ LTC3440 zasilany z jednokomorowego akumulatora litowo-polimerowego dostarcza napięcia rzędu 3,5V. Opisywane urządzenie nie posiada "sprzętowego" przycisku zasilania, całość kontrolowana jest programowo. Po odłączeniu - za pomocą tranzystora Q1 - zasilania od karty SD i odbiornika GPS, mikroprocesor wchodzi w tryb uśpienia. Jako że programatory procesorów pracują zwykle na napięcie 5V, reszta elementów może być odłączona od zasilania na czas programowania procesora.
Oryginalnie odbiornik GPS wykorzystywał jeszcze 3-woltową baterię litowo-jonową jako zasilanie podtrzymujące - w przedstawionym projekcie autor zastąpił ją diodą Schottky'ego połączoną z zasilaniem. Port AN0 procesora wykorzystywany jest do monitorowania poziomu naładowania akumulatora, zarówno w czasie normalnej pracy jak i ładowania. Układ MAX1811 posiada wyprowadzenie służące do sygnalizowania rozpoczęcia i zakończenia procesu ładowania. Pobór prądu w trybie uśpienia wynosi około 1,5 mA, podczas normalnej pracy wzrasta do wartości od 60 do 70 mA.
W czasie montażu całości najtrudniejszym zadaniem jest przylutowanie układu LTC3440 - odległości między jego wyprowadzeniami wynoszą zaledwie 0,5 mm. Było to możliwe z wykorzystaniem taśmy papierowej, którą autor zalepiał pozostałe, nie lutowane w danej chwili, wyprowadzenia. Płytka drukowana została wykonana metodą termotransferu i nie ma naniesionej soldermaski.
Po zmontowaniu obwodów odpowiadających za zasilanie urządzenia i ładowanie akumulatora należy sprawdzić poprawność ich funkcjonowania. Do montowania anteny odbiornika GPS i wyświetlacza LCD doskonale nada się pistolet klejowy.
Kod procesora został napisany w MikroPascalu. W trakcie obsługi, wciśnięcie na dłużej niż 2 sekundy przycisku "select" powoduje wyjście z trybu uśpienia. Procesor sprawdza następnie napięcie akumulatora - jeśli wynosi ono poniżej 3V, układ jest automatycznie wyłączany. W czasie uruchamiania urządzenia wartość napięcia wskazywana jest w dolnej części wyświetlacza. Następnie mikroprocesor powoduje przyłączenie do zasilania odbiornika GPS i karty SD, na której sprawdza też system plików FAT16. Jeśli karta nie jest zgodna z FAT16, wyświetlane jest ostrzeżenie i urządzenie wyłącza się. Kartę można sformatować za pomocą wyboru odpowiedniej funkcji z menu. W trakcie przerwania dane GPGGA i GPRMC wysyłane za pomocą protokołu NMEA zapisywane są co sekundę w dwu tablicach. Układ sprawdza także cały czas obecność sygnału GPS i odpowiednio steruje główną pętlą programu. Komendy zapisane w głównej pętli programu kontrolują proces rejestrowania danych, ale ma to miejsce jedynie wtedy, kiedy odbierany jest sygnał GPS, włączona jest funkcja rejestrowania, a urządzenie znajduje się w ruchu. Urządzenie zapisuje dane w sektorach, co jest o wiele szybsze od normalnego zapisu, a prędkość zapisywania nie zależy silnie od wielkości pliku. Po każdym uruchomieniu na karcie tworzony jest nowy plik o rozmiarze 6,5 MB, który pozwala na zapis danych zebranych na przeciągu nawet 10 godzin. Nazwa pliku tworzona jest na podstawie schematu: ddmmyyhh.txt (gdzie dd oznacza dzień, mm - miesiąc, yy - rok, hh - godzinę).
Na ekranie urządzenia pokazywane są najważniejsze informacje. W pierwszym rzędzie wskazywana jest obecność sygnału GPS, ilość satelitów, stan rejestrowania danych i poziom baterii. W momencie zapisu danych na kartę SD, koło ikony baterii wyświetlany jest symbol "+". Poziom naładowania baterii jest stale monitorowany. Jeśli spadnie on poniżej wartości 3,17 V, urządzenie będzie generowało sygnał ostrzegawczy co każde 5 minut, a ikona baterii będzie migać. Jeśli napięcie spadnie do poziomu 3 V, urządzenie wyłączy się. W ostatniej linii na wyświetlaczu pokazywane są informacje dotyczące czasu letniego i aktualna data. Krótkie wciśnięcie któregokolwiek z przycisków powoduje aktywację trybu kompasu. Wskazywana jest także wartość kąta zmierzonego przez kompas. Wciśnięcie przycisku na dłużej niż 1,5 sekundy spowoduje wyświetlenie menu. W menu można dezaktywować tryb zapisu, np. przy konieczności zmiany karty pamięci, dostosować kontrast wyświetlacza, sformatować kartę pamięci czy wyłączyć urządzenie. Jeśli żaden przycisk nie zostanie wciśnięty przez następne 15 sekund, menu zostanie zamknięte, a na wyświetlaczu pojawią się ostatnio pokazywane dane. Więcej szczegółów dotyczących obsługi urządzenia można poznać, ściągając ze strony źródłowej oprogramowanie dla rejestratora.
Do wizualizowania zarejestrowanych danych autor wykorzystuje program GPSVisualizer oraz mapy Google. Za pomocą programu można prezentować zarejestrowane trasy, przypisując np. kolory do wartości przebytej odległości, wysokości, prędkości czy ilości satelitów. Poniżej można zobaczyć kilka wizualizacji zarejestrowanych tras - spacerów autora po mieście.
Poniżej można zobaczyć też film prezentujący działanie urządzenia.
Na stronie źródłowej można znaleźć m.in. wzmiankowane pliki projektu czy linki do oprogramowania.
Fajne? Ranking DIY
