Selbstbau GPS-Track Recorder


Letztes Update: 16.03.2008

01/2008 KrasserMann (km AT krasser-mann.com)


Sämmtliche bestandteile dieses Projekts sind mein geistiges Eigentum
die Schaltung darf zum Persönlichen Gebrauch von jedermann nachgebaut und angepasst werden.
Das gleiche gilt für den Software Quellcode!

Eine GEWERBLICHE Nutzung ist untersagt!



Ich stelle auf dieser Webseite alle zum Nachbau benötigten Informationen zur Verfügung
gebe aber weder eine Funktionsgarantie, noch übernehme ich irgendeine Haftung für durch
eventuelle Fehlfunktionen verursachte Schäden.



Beschreibung:

Die hier veröffentliche Schaltung dient zur Aufzeichnung von Bewegungsdaten auf eine SD-Karte
Im gegensatz zu dem oben gezeigten Foto veröffentliche ich nur eine Version OHNE LCD Display!

Die Schaltung benötigt eine Betriebsspannung von 3.3V wegen der SD-Karte, dies ist bei der
auswahl des GPS Empfängers zu berücksichtigen!
Grundsätzlich kann jeder GPS Empfänger verwendet werden der folgende Kriterien erfüllt:

  • Arbeitet mit 3.3V
  • Serielle Schnittstelle TTL
  • NMEA Datensätze GPGGA + GPVTG
  • Bei SIRF-III muss STATIC NAVIGATION Deaktiviert sein / werden




Zum Betrieb der Schaltung muss eine FAT16 Formatierte SD-Karte an das System angeschlossen werden
dazu besorgt man sich am besten eine passende Fassung. Diese gibt es z.B. bei Reichelt.
Alternativ schlachtet man einen alten Cardreader aus.

Nach einschalten der Elektronik geht die LED für 3sec an.
Nachdem sie erloschen ist versucht das System einen Satelliten FIX herzustellen.
Wie schnell, und gut dies gelingt hängt nur vom verwendeten Empfänger ab.

Solange das System keinen FIX hat blinkt die LED im Rythmus 1x alle 2 Sek.
in dieser Zeit findet keine Aufzeichnung statt.

Sobald ein gültiger FIX vorliegt wechselt der Blinkrythmus zu einem "Doppelblitz" alle 2 Sek.
Nun läuft auch die Aufzeichnung auf die SD-Karte.

Wenn nicht vorhanden wird eine Text Datei namens "Track.log" erstellt.
Jeder Wegpunkt wird als Komma getrennte Zeile dieser Datei hinzugefügt.
Besteht die Datei beim Einschalten schon, so werden die Daten einfach angehängt.
Es wird nichts gelöscht oder überschrieben.


Format der Zeile:

WegpunktNr,Gültigkeit,Zeit,Lat,Lon,Geschwindigkeit,Kurs,Höhe,Abstand zum vorausgegangenen WP, Gesamtstrecke seit WP0

  • Die WegpunktNr beginnt nach jedem Einschalten bei 0
  • Die Zeit ist UTC
  • Die Wegstrecke ist in m angegeben


Wenn der Empfang zwischenzeitlich aussetzt stopt die Aufzeichnug und wird automatisch fortgesetzt wenn der FIX wieder da ist.


Anwendungsbeispiele:




Anklicken für vergrößerte Version (Achtung > 300kb)

Schaltplan:



Anklicken für vergrößerte Version (Achtung > 300kb)

Stückliste

  • 1* ATMEGA32L (L ist wichtig! Wegen der Betriebsspannung von 3.3V)
  • 1* GPS Empfänger mit 3.3V + TTL Ausgang z.B: von http://www.hanobox.de der Navilock NL-501ETTL Sirf3 TTL Modul 60410
  • 1* Quarz 11.0592Mhz
  • 2* Kondensator 22pf
  • 1* Widerstand 4,7k Ohm
  • 1* Widerstand 91 Ohm
  • 1* Led
  • 1* Sockel/Halterung für SD Karte
  • Je nach dem Spannungsregler, div Kabel / Steckverbinder/ Gehäuse

ACHTUNG: Der in der Stückliste erwähnte GPS Empfänger hat eine Baudrate von 9600 dies muss in
dem Bascom Programm auch geändert werden dort steht $baud=4800 es muss dann $baud=9600 heißen.


Software:

Bascom Quellcode
Compilierter HEX Code für ATMEGA32 @ 11.0592 Mhz


Hinweise:

Im Bascom Quellcode werden die Dateien:

  • CONFIG_MMC.bas
  • Config_AVR-DOS.bas

eingebunden. Diese Dateien kann ich nicht mitliefern da MCSELEC dort die Rechte dran hat.

Die Dateien findet Ihr bei Bascom im Samples/AVR-DOS Verzeichniss

In der Datei "Config_MMC" müsst Ihr die Pinbelegung der SD-Karte einstellen:

Am Anfang der Datei das ganze auf "SOFT SPI" einstellen: "Const Cmmc_soft=1"

Dann die Section Soft-SPI anpassen:

' --------- Start of Section for Soft-SPI --------------------------------------

' Chip Select Pin => Pin 1 of MMC/SD
Config Pina.0 = Output
Mmc_cs Alias Porta.0
Set Mmc_cs

' MOSI - Pin => Pin 2 of MMC/SD
Config Pina.1 = Output
Set Pina.1
Mmc_portmosi Alias Porta
Bmmc_mosi Alias 1

' MISO - Pin => Pin 7 of MMC/SD
Config Pina.3 = Input
Mmc_portmiso Alias Pina
Bmmc_miso Alias 3

' SCK - Pin => Pin 1 of MMC/SD
Config Pina.2 = Output
Set Pina.2
Mmc_portsck Alias Porta
Bmmc_sck Alias 2

' --------- End of Section for Soft-SPI ----------------------------------------



Da der ATMEGA32 nicht der Speicher Riese ist müsst ihr in der Datei "Config_AVR-Dos" die
Dateisystem Parameter auf minimalen Speicherbedarf einstellen:

  • const cfilehandles = 1
  • const csepfathandle = 0


Die AVR Fuse Bits sollten nicht vergessen werden:

  • Externer Quarz
  • Evtl. Clock DIV aus
  • JTAG AUS


Probleme:


Es passiert gar nix:
  • Spannungsversorgung?
  • Fuse Bits
  • Quarzbeschaltung
LED blinkt nach einschalten sehr oft:
  • SD-Karte macht Probleme
  • Anschluss der Karte Prüfen
  • Config_MMC Datei Prüfen
  • Karte FAT16 formatiert?
LED geht 3sec an, dann aus und dann passiert nix mehr:
  • GPS Empfänger liefert keine Daten
  • RX / TX Vertauscht
Kein GPS Fix
  • Abwarten ggf. andere Postion mit freier Sicht zum Himmel suchen
  • Keine Fehlfunktion der Schaltung
Kein korrekte Datenaufzeichnung bei niedrigem Tempo
  • Vermutich nutzen sie einen Empfänger mit SIRF3 Chipsatz
  • Bei diesem Chipsatz muss das Feature "Static Navigation" deaktiviert werden





FAQ:

F: Gibt es das Programm auch in C / Assembler etc?
A: Nein, kann ich leider nicht.

F: Welchen GPS Empfänger kann ich verwenden?
A: Siehe Text oben!

F: Ist die Datei Track.Log direkt Google Earth Kompatibel?
A: Nein, sie ist Komma getrennt. Sie kann ich Excel importiert werden und ggf. für GE Konvertiert werden.

F: Womit kann die datei für GE Konvertiert werden?
A: Das Tool heist "GPSBABEL"

F: Gibt es das Ding fertig / als Bausatz .........?
A: Nein!

F: Kannst du mir diese/jene Änderung am Programm machen?
A: Nein, für meine Zwecke genügt das. Versuch es selbst, man lernt viel dabei!

F: Kann ich einen Bauplan füer die Version mir LCD haben?
A: Nein! , aber das schaffst du sicher selber! www.google.de hilft gern!

So nun aber viel Spaß beim Nachbau und ausprobieren!