GPS-Position in WinCE als Weiterschaltbedingung nutzen

Für alles, was in den übrigen Lazarusthemen keinen Platz, aber mit Lazarus zutun hat.
Antworten
dking
Beiträge: 4
Registriert: Fr 16. Jul 2010, 13:42

GPS-Position in WinCE als Weiterschaltbedingung nutzen

Beitrag von dking »

Hallo Zusammen,
zu meinem Vorhaben. Ich bin im Motorsport aktiv. Um genau zu sein in der RCN am Nürburgring. Während des Rennens gibt es verschiedene "Aufgaben" die man zu erfüllen hat. Setzzeiten fahren, Tankrunde einhalten, Fahrerwechsel oder Sprintrunden fahren. Da kann man als Fahrer schonmal den Überblick verlieren.

Dazu hab ich mir folgendes Projekt ausgedacht.
Ich will mein altes Navi, ein Becker 7914 mit WinCE4.2, als Rundenanzeige im Fahrzeug einsetzen. Habe dazu auch schon in Lazarus ein Programm geschrieben, welches mir ganz einfach "Runde 1", "Runde 2", "Tankrunde", etc. anzeigt. Da während der Fahrt nicht wirklich Zeit zum Tippen ist, oder man tippt einmal zuviel auf's Display mit den Handschuhe, um sich die Anzeige umzuschalten, will ich die Weiterschaltbedingung gerne an eine GPS-Position koppeln. Wenn diese bestimmte Position dann erreicht ist, als Beispiel die Start-/Ziellinie, soll das Navi automatisch von der Anzeige "Runde 1" auf "Runde 2" springen. Leider hat man mir nie beigebracht, wie man mit Com-Ports o.ä. arbeitet. Habe mir bereits CPort von dejan runtergeladen und zusätzlich eine Datei von Christian hier aus dem Forum " http://www.lazarusforum.de/viewtopic.ph ... ort#p20338" onclick="window.open(this.href);return false; " namens "ucomport.pas".

Leider bin ich zur Zeit nicht in der Lage diese Sache zu handeln und hoffe, dass mir jemand etwas helfen könnte, wie ich die GPS-Daten vom Empfänger auslese und mit meiner Soll-/ bzw. Weiterschalt-Koordinate vergleiche.


Mit freundlichen Grüßen

dK

PS.: Der Empfänger des Gerätes arbeitet laut INI-Datei auf Portnummer 1 mit der Baudrate von 9600

Socke
Lazarusforum e. V.
Beiträge: 3178
Registriert: Di 22. Jul 2008, 19:27
OS, Lazarus, FPC: Lazarus: SVN; FPC: svn; Win 10/Linux/Raspbian/openSUSE
CPU-Target: 32bit x86 armhf
Wohnort: Köln
Kontaktdaten:

Re: GPS-Position in WinCE als Weiterschaltbedingung nutzen

Beitrag von Socke »

Mit WinCe kenne ich mich (noch) nicht aus, aber ...
Mit Synapse (http://synapse.ararat.cz/doku.php) kann man auf serielle Schnittstellen zugreifen.
Im Wiki gibts auch einen Artikel dazu (http://wiki.freepascal.org/Hardware_Acc ... munikation).
Wie das genau geht, können dir andere besser erklären als ich.

Mich würd viel mehr interessieren, was für Hardware in deinem Navi steckt (ARM/x86)....
MfG Socke
Ein Gedicht braucht keinen Reim//Ich pack’ hier trotzdem einen rein

dking
Beiträge: 4
Registriert: Fr 16. Jul 2010, 13:42

Re: GPS-Position in WinCE als Weiterschaltbedingung nutzen

Beitrag von dking »

Hi,
danke für deine Antwort. Ich werde mir die Bib mal ansehen und berichten, ob ich damit weiter komme.

Das Navi selbst ist ein Becker Traffic Assist 7914 ...Maße (B x H x T): 127 x 81,2 x 49,4 / 200 MHz Prozessor CISC-Architektur / 128 MB Flash Speicher / 64 MB SD-RAM / Externer GPS-Anschluss / Interne GPS-Antenne / Kopfhörer-Anschluss / SD-Karten-Steckplatz: Unterstützung bis 2 GB (keine SDHC) / USB 1.1 Schnittstelle, USB Kabel: MINI USB / Mood Lamp abschaltbar / 3,5" TFT Touch-Screen / Interner Lautsprecher: 2 Watt


Falls die CPU dieses Systems zu langsam sein sollte, versuche ich es auf einem Navigon 2100:

Prozessor Samsung 2443 - 400 MHZ
Microsoft Windows CE 5.0
Eingebauter TMC- Empfänger Silicon Labs
64 MB ROM
64 MB RAM
4,3 Zoll WQVGA Display, transmissiver Farb-TFT-Touchscreen
Voll integrierter NEMERIX GPS-Chip, 42 Kanal, Antenne
Eingebauter, wieder aufladbarer 1200 mAh Lithium-Ion-Akku
Größe: 122 x 77 x 19 mm
Mit eingebautem Lautsprecher
USB 1.1 Anschluss und Antennenbuchse für externe GPS Antenne
Steckplatz für SD-Karte SDHC tauglich (getestet mit 8 GB)

MfG
dk

Socke
Lazarusforum e. V.
Beiträge: 3178
Registriert: Di 22. Jul 2008, 19:27
OS, Lazarus, FPC: Lazarus: SVN; FPC: svn; Win 10/Linux/Raspbian/openSUSE
CPU-Target: 32bit x86 armhf
Wohnort: Köln
Kontaktdaten:

Re: GPS-Position in WinCE als Weiterschaltbedingung nutzen

Beitrag von Socke »

dking hat geschrieben:200 MHz Prozessor CISC-Architektur
[...]

Falls die CPU dieses Systems zu langsam sein sollte, versuche ich es auf einem Navigon 2100:

Prozessor Samsung 2443 - 400 MHZ
CISC-Architektur hat eine Bedeutung darüber, wie viele Assembler-Befehle zur Verfügung stehen (und ggf. wie diese ausgeführt werden). Ist das eine x86-CPU?
Das Navigon 2100 hat einen ARM9 Prozessor (genauer: ARM920T). Der ist nahe dran an meinem ARM926T und ich kann keine funktionierende Programm erstellen (kann bei dir aber wieder vollkommen anders sein).
MfG Socke
Ein Gedicht braucht keinen Reim//Ich pack’ hier trotzdem einen rein

dking
Beiträge: 4
Registriert: Fr 16. Jul 2010, 13:42

Re: GPS-Position in WinCE als Weiterschaltbedingung nutzen

Beitrag von dking »

Hey Socke,

in den System Properties vom Becker 7914 steht unter Prozessortyp, dass es ein ARM sei.
Für die Kompilierung von WinCE-Programmen mit Lazarus hab ich die folgenden Einstellungen verwendet:

"http://www.vhpd.de/allgemein/tutorial-mit-lazarus-fur-windows-ce-programmieren"


MfG
dK

Socke
Lazarusforum e. V.
Beiträge: 3178
Registriert: Di 22. Jul 2008, 19:27
OS, Lazarus, FPC: Lazarus: SVN; FPC: svn; Win 10/Linux/Raspbian/openSUSE
CPU-Target: 32bit x86 armhf
Wohnort: Köln
Kontaktdaten:

Re: GPS-Position in WinCE als Weiterschaltbedingung nutzen

Beitrag von Socke »

Wenn du WinCE hast, hast du vielleicht auch eine gpsapi.dll. In dem Falle kommst du mit dieser Unit http://www.lazarus.freepascal.org/index ... pic=7146.0 recht einfach an die Daten. Dann musst du auch nicht alles selbst Parsen.

Wenn du nur Zugang zum COM-Port hast, musst du zwar noch alles selber parsen. Beim Lesen, kannst du mit dieser Unit http://www.luisdigital.com/programacion/fpc/serial.pp ein bisschen Arbeit sparen.

Aber immerhin weißt du schon, wie du an deine Daten drankommst. Ich weiß bei meinem Navi ja nicht mal das.
MfG Socke
Ein Gedicht braucht keinen Reim//Ich pack’ hier trotzdem einen rein

dking
Beiträge: 4
Registriert: Fr 16. Jul 2010, 13:42

Re: GPS-Position in WinCE als Weiterschaltbedingung nutzen

Beitrag von dking »

Na,
das ist mal ein echt nützlicher Tipp gewesen!
Vielen Dank!

Was hast du für ein Navi? Kommst du nicht ins Windows, oder wo liegt das Problem?

Socke
Lazarusforum e. V.
Beiträge: 3178
Registriert: Di 22. Jul 2008, 19:27
OS, Lazarus, FPC: Lazarus: SVN; FPC: svn; Win 10/Linux/Raspbian/openSUSE
CPU-Target: 32bit x86 armhf
Wohnort: Köln
Kontaktdaten:

Re: GPS-Position in WinCE als Weiterschaltbedingung nutzen

Beitrag von Socke »

Ich hab ein Siemssen Strato PJ63517 (Werbegeschenk) mit einem nur spärlich Dokumentiertem ARM926T. In den Explorer komme ich auch hinein. Ich hab einfach keine Ahnung, wie ich an die GPS-Daten heran komme.
Die gpsapi.dll von Windows ist nicht vorhanden, nur ähnliche DLLs mit den Namen gps.dll, gpsapiextension.dll, NaviAPI.DLL und NaviService.DLL (die vielversprechendsten Namen).
Von verschiedenen Navi-Softwares (die auch mal funktioniert hatten), nehme ich an, dass sie auf COM7 (Baudrate 9600) oder COM2 (Baudrate 4800) suchen. Die original Software (COM2) meldet auch, dass ein GPS-Empfänger gefunden wurde, aber keine Signal zur Verfügung steht.
Die COM-Ports mit CreateFile() zu öffnen, liefert bei jedem Port nur -1 (INVALID_HANDLE_VALUE) zurück.
MfG Socke
Ein Gedicht braucht keinen Reim//Ich pack’ hier trotzdem einen rein

Antworten