. : New eShop! - Mobilní verze - Pandatron.cz - Pandatron.sk - Diskuzní fórum - Zakázkový vývoj : .
 
GPS Data Logger
8. ledna 2010 - 8:33 | Pandatron | GPS Data Logger | Komentářů: 21  

GPS Data Logger

Konstrukce GPS záznamníku s mikrokontrolérem a 4 Mbit Flash pamětí umožňuje periodický záznam aktuální polohy po dobu až pěti dnů.

Následující konstrukce GPS datového záznamníku je určena především jako demonstrace snadného použití modulů pro satelitní navigaci a sestavena byla i pro ověření přesnosti výpočtu navigačních souřadnic.

GPS Data Logger je zařízení, určené pro pravidelný záznam aktuální polohy z GPS modulu do Flash paměti. V uvedeném zapojení je použita klasická 4 Mbit Flash typu M25P40, která v uvedené konfiguraci umožňuje záznam více než 6 000 souřadnic (zpráv NMEA). Při výchozím intervalu zjišťování polohy a ukládání dat - 30 sekund je tak umožněn zápis po dobu více než 44 hodin. Uvedené parametry jsou však pouze výchozí a není problém je upravit, jak bude uvedeno dále, v popisu programu.

Pro vyčítání nasbíraných dat je k dispozici sériový port s přenosovou rychlostí 115200 Bd, na desce s plošnými spoji zastoupený piny pro připojení USB/RS232 převodníku PU232R. Veškerá uložená data jsou do počítače odeslána po stisku tlačítka Tl1 a jejich příjem a následné uložení do souboru je možné buď dále dostupným jednoduchým programem, nebo i klasickým Hyperterminálem. Pomocí volně dostupných programů je poté možné jejich převod a zobrazení například v Google Earth či jejich použití pro simulaci dráhy pohybu.

Základní technické vlastnosti:

  • Napájecí napětí: 3,8 - 4,7 V
  • Odebíraný proud: typ. 48 mA
  • Délka záznamu: 6144 zpráv NMEA
  • Interval záznamu: 1s až neomezeně (výchozí cca. 30s)
  • Rozhraní k PC: Sériový port TTL 115200 Bd, USB
  • Provozní teplotní rozsah: -40 °C až +85 °C

Schéma zapojení:
Na následujícím obrázku je uvedeno schéma zapojení jednoduchého GPS logovacího zařízení s mikrokontrolérem rodiny ATmega.


Obr. 1: Schéma zapojení

Základem konstrukce je prakticky libovolný GPS modul se sériovým výstupem dat v úrovních TTL s komunikační rychlostí 4800 Bd, 8, N, 1 (v jiném případě je potřeba modifikovat nastavení uložené v mikrokontroléru). Modul je na schématu označen pouze blokově a k desce s plošnými spoji je připojen prostřednictvím klasické jednořadé lišty J4. Jelikož jsou běžně dostupné GPS moduly konfigurovány tak, že automaticky v pravidelných (cca. 1s) intervalech odesílají všechny dostupné informace, je k použití modulu dostačující pouze jeden datový vodič.

Řídicí mikrokontrolér je typu ATmega48 (IO1), taktovaný krystalem o baudové frekvenci 7,3728 MHz (X1). Načtená data jsou ukládána do externí paměti flash typu M25P40 (IO2) o kapacitě 4 Mbit (512 kB).

Pro spojení s počítačem je k dispozici výstupní pin interního modulu UART (pin č. 3 obvodu IO1), který je přes konfigurační propojku J5 typu Jumper veden na převodník USB/RS232(TTL). Na schématu zakreslen jako IO3 s USB konektorem. Propojkou J5 je možné zvolit zdroj GPS dat odesílaných do počítače a to buď mezi mikrokontrolérem (signál ATMTX) a nebo přímo z GPS modulu (signál GPSTX). V tom případě je však potřeba mít na paměti skutečnost, že data z GPS modulu mají přenosovou rychlost 4800 Bd, kdežto zaznamenaná data z mikrokontroléru jsou odesílána rychlostí 115200 Bd.

Tlačítko Tl1 slouží k zahájení odeslání uložených dat, nebo k úplnému vymazání paměti. Jeho funkce je podrobně popsána dále.

Pro napájení GPS Data Loggeru jsou použity tři NiMH tužkové články s nominálním napětím 1,25V. Ty spolu tvoří napětí zhruba 3,75V, což je o nějakých 50mV méně, než kolik vyžaduje použitý GPS modul. Ovšem jak bylo prakticky ověřeno, je to dostatečné napětí pro spolehlivý provoz alespoň v této jednoduché konstrukci.

Konstrukce:
Na následujících obrázcích je uveden možný motiv desky s plošnými spoji a rozmístění součástek.


Obr. 2: Rozmístění součástek - TOP
 
Obr. 3: Rozmístění součástek - BOTTOM
     

Obr. 4: Plošný spoj (pro originál 600dpi klikněte)
- TOP
 
Obr. 5: Plošný spoj (pro originál 600dpi klikněte)
- BOTTOM

Deska byla navržena jako oboustranná, pro použití mikrokontroléru a konektorů v klasickém provedení a paměti včetně blokovacích kondenzátorů v provedení SMD.

Seznam součástek
R1             10k
C1             47u/6V CB
C2,C3          22p
C4,C5,C6,C7    100n
X1             7,3728 MHz
Tl1            PB1720
IO1            ATmega48-20PU
IO2            M25P40-VMN6P
IO3            PU232R modul

Použitý mikrokontrolér typu ATmega 48 vyžaduje naprogramování. To je možné přímo v aplikaci, prostřednictvím konektoru J3, jehož rozložení pinů odpovídá oblíbenému programátoru PRESTO.
Zdrojový kód, včetně souboru HEX je ke stažení na konci článku. Na následujícím obrázku je uvedeno nastavení konfiguračních pojistek.


Obr. 6: Nastavení konfiguračních pojistek mikrokontroléru ATmega48

Firmware:
Program pro mikrokontrolér ATmega48 je napsán v jazyce C s použitím kompilátoru GCC (WinAVR) a v paměti mikrokontroléru zabírá zhruba polovinu dostupné kapacity.

Po spuštění obvodu je provedena konfigurace jednotky UART pro rychlost 4800 Bd, rozhraní SPI s připojenou pamětí M25P40 a následně je povoleno přerušení. Následně jsou v přerušení přijímána data z připojeného GPS modulu a po nastavený interval jsou ignorovány. Tento interval je řešen velice jednoduše a to počítáním příchozích NMEA zpráv a porovnáván s hodnotou konstanty MESWTDEL. Ta je nyní nastavována pouze v souboru main.h, avšak do budoucna není vyloučena možnost použití registru a volné konfigurace. Ve výchozím stavu má konstanta MESWTDEL hodnotu 100 DEC, což s použitým GPS modulem znamená interval přibližně 26s.

Po uplynutí tohoto intervalu je z následně příchozích NMEA zpráv vybrána pouze zpráva typu GPRMC a ta je uložena do bufferu v interní paměti RAM pro pozdější uložení do externí paměti flash IO2. Automaticky, vždy po naplnění bufferu třemi NMEA zprávami. Ukládání pouze zprávy GPRMC bylo zvoleno z důvodu omezené kapacity paměti. GPRMC obsahuje základní minimum pro určení polohy, tedy přesný čas, GPS souřadnice a několik doplňujících informací podle následující tabulky.


Tab. 7: Struktura ukládané GPRMC zprávy

Modifikace pro ukládání i jiných NMEA zpráv, případně všech, je možné úpravou podmínky ve funkci main();, nacházející se v souboru main.c.

Přenos uložených dat do počítače je aktivováno stiskem tlačítka Tl1, kdy dojde k přepnutí interní jednotky UART v mikrokontroléru na rychlost 115200 Bd a odeslání všech NMEA dat, uložených v paměti flash (IO2).

Případné vymazání této paměti je možné provést odpojením napájecího napětí, stiskem tlačítka Tl1 a připojením napájecího napětí. Po inicializaci mikrokontroléru je ihned spuštěna funkce vymazání paměti, která u typu M25P40 trvá cca. 6 sekund.

Software:
Jelikož jsou uložené zprávy NMEA textového formátu, základní vyčtení dat je možné provést například i s obyčejným Hyperterminálem ze systému Windows.

Aby se však i tato činnost maximálně zjednodušila, byl vytvořen jednoduchý software - GPS Reader. Ten je dostupný včetně zdrojových kódů pod licencí GNU/GPL v.3 ke stažení na konci článku a je určen pro přijmutí zaznamenaných dat a jejich následné uložení do textového souboru.


Obr. 8: GPS Reader s načtenými daty z GPS Data Loggeru

Program je napsán v moderním jazyce C# s použitím volně dostupného vývojového prostředí Microsoft Visual C# 2010. Pro svou činnost vyžaduje .NET Framework, který je již součástí většiny moderních operačních systémů.

Zpracování dat a praktické zkušenosti:
Uložená NMEA data je možné dále zpracovat libovolným software, použít k simulaci pohybu či provést jejich zakreslení do mapy. K jejich zobrazení například v Google Earth je potřeba provést jejich konverzi do .KML souboru. K tomu je možné s výhodou použít například i online konvertory, dostupné v odkazech pod článkem či pod google heslem "nmea to kml". Výsledný soubor, uložený s koncovkou .KML, je možné otevřít přímo v Google Earth.


Obr. 9: Příklad exportovaných dat, kdy v jejich detailu je patrný 30s interval záznamu
 
Obr. 10: Příklad dat s využitím nadmořské výšky (či relativní rychlosti), získaný programem MB-GPS2KML

Díky pravidelnému ukládání aktuálních GPS souřadnic je možné, při ponechání GPS Data Loggeru po delší dobu na jednom místě, získat přehled o relativní přesnosti získaných dat. Podmínkou je samozřejmě vyvýšené místo s dobrým výhledem na oblohu do všech směrů. Následující snímek představuje záznam po dobu cca. 12h, což je oběžná doba GPS satelitů (tedy polovina hvězdného dne). Do snímku byla následně vyznačena skutečná poloha GPS Data Loggeru a měřítko z Google Earth pro 10m (žlutá linka vlevo od okna pravítka).


Obr. 11: Snímek záznamu tolerance výpočtu GPS polohy

Podobně byl pořízen i následující snímek, kdy byl GPS Data Logger umístěn na okno s výhledem pouze na jednu světovou stranu. Je na něm patrná reálná odchylka, vznikající například u navigací při použití v automobilu nebo jiném zastíněném místě. Do snímku byla opět vyznačena skutečná poloha GPS Data Loggeru a zvýrazněné měřítko z Google Earth pro 10m (žlutá linka vlevo od okna pravítka).


Obr. 12: Snímek záznamu tolerance výpočtu GPS polohy při umístění přijímače na okno

Závěr:
Uvedený GPS Data Logger představuje jednoduchou konstrukci, demonstrující snadné použití GPS navigačních modulů v libovolné aplikaci. Díky volné dostupnosti veškerých zdrojových kódů je možná i jeho libovolná modifikace a následně i praktická aplikace.

GPS moduly z produkce RF Solutions jsou k dostání například u distributora pro lokální trh, firmy Farnell.

Odkazy & Download:
Domovská stránka výrobce GPS modulu
Board Level GPS Receiver Modules
Datasheet modulu GPS-320FW

NMEA to KML converter
NMEA to KML converter 2
Microsoft Visual C# 2010
Program pro mikrokontrolér včetně zdrojových kódů - DOWNLOAD
Ovládací software včetně zdrojových kódů - DOWNLOAD







GooglePlus1 FaceBook Twitter del.icio.us DiGG Google StumbleUpon Google Buzz Email RSS PDF Tisk
Příbuzné články:
GPS moduly RF Solutions
GPS Data Logger

Komentáře (21):

Zobrazit starší 30 dnů (21)...

host
21. Dne 04. 02. 2011 v 21:09 zaslal host
spájkovanie
zdravím, zaujimalo by ma ako sa spajkuju tie suciastky na zadnej strane kedze tam ziadne dierky v plosaku asi nemaju byt zislo by sa aj video diky


Název příspěvku: Vaše jméno: host
                 
  Zakázat formátování [Zakáže kódování a nahrazování smajlíky.]
Připojit soubory
reklama:
PLA8 MODUL - Logický analyzátor pro USB
Logický analyzátor pro USB 2.0, klon Saleae, 8-bitová verze s 10 GS a integrovanou analýzou rozhraní.
Skladem od 825 Kč

Informace uvedené v článcích jsou platné v době jejich vydání a samotné články jsou určeny pouze jako zdroj informací. Autor článku ani správce webu nenesou žádnou zodpovědnost za případné újmy na majetku a zdraví. Názvy společností a výrobků, loga a další multimediální materiál mohou být ochrannými známkami příslušných společností.
RSS kanály: | |
+420 723 846 377
info@pandatron.cz
Všechna práva vyhrazena | mobilní verze | © Copyright 2000 - 2016 ISSN 1803-6007