Forum: Mikrocontroller und Digitale Elektronik GPS Datenstrom filtern ? (vorzugsweise MSP430)


von Wolfgang (Gast)


Lesenswert?

Den Datenstrom einer GPS -maus kann mit UART eines MSP430 empfangen und
auf einer Speicherkarte abspeichern. Aus dem Datenstrom möchte ich
bestimmte Daten wie z.B. Uhrzeit und Geschwindigkeit herausfiltern und
auf einer LC-Anzeige darstellen.
Der dafür interessante Datensatz beginnt mit der Zeichenfolge $GPRMC,
gefolgt von Uhrzeit, Längengrad, Breitengrad, Geschwindigkeit, usw.
getrennt durch jeweils ein Komma. Die letzten Zeichen eines Datensatzes
sind 0Dh 0Ah. Bei dem o.g. Datensatz steht die Geschwindigkeit immer
nach dem 7. Komma.
Hat jemand ein Programmschnipsel für mich, mit dem bestimmte Daten aus
einem laufenden Datenstrom herausgefiltert werden können?
Bitte keine Antworten: gibt es als fertiges Gerät, klein und handlich
o.ä.
MfG
Wolfgang

von Rainer (Gast)


Lesenswert?

Hallo Wolfgang,

wenn du schon so viel über den Datensatz weisst sollte es doch ein
leichtes sein diesen auszuwerten.
Zuerst musst du den anfang eines Frames detektieren ($GPRMC),
anschliessend startest du einen Zähler, und zählst alle eintreffenden
Kommas. Nach dem siebten Komma kommt dann, wie du schon oben schreibst
die Geschwindigkeit.
Bei den GPS Mäusen ist auch interessant das diese auch direkt die
Himmelsrichtung... ausgeben. Tolle dinger die kleinen kästchen.

Darf ich mal fragen was du damit machen willst?

Gruß Rainer

von horst (Gast)


Angehängte Dateien:

Lesenswert?

Hallo Wolfgang,

anbei eine kleine Routine fuer dein Problem

gruss
       horst.

von Wolfgang (Gast)


Lesenswert?

@Rainer
Soweit war ich auch schon. Nur wie macht man das programmtechnisch. Um
ein einzelnes Zeichen herauszufischen, da würde mir (als
Programmierlaie) noch etwas einfallen, aber wie macht man es bei einer
Zeichenkette. Hier würde ich doch gern schon etwas „Fertiges“ als
Beispiel nehmen.
Was soll es werden? Meine Tochter (ich auch) möchte gern wissen, wie
schnell sie beim Skifahren ist. Da man an einem Ski keinen
Geschwindigkeitszähler anbauen kann, ich aber eine GPS –maus habe und
mir das Speicher von Daten auf eine Smart Media Karte problemlos
gelingt, zeichne ich die Daten z. Z. auf einer Karte auf, um sie dann
am Laptop abzuspielen. Nun wollte ich aber auch schon während der Fahrt
die Geschwindigkeit ablesen (und Uhrzeit, damit man rechtzeitig zum
Kaffeetrinken  kommt, usw.)
MfG
Wolfgang

von Wolfgang (Gast)


Lesenswert?

Hallo Horst,
danke für dein Programmschnipsel.
Wie schon gesagt, ich hätte gern etwas „Fertiges“, aber das ist für
mich (Programmierlaie) doch gleich wieder „zu hoch“. Das beginnt schon
mit Zeile 9
u08 Ti[]__attribute__((progmem))= {"$GPRMC,"}; die ich  überhaupt
nicht verstehe. Wahrscheinlich ist dies für einen bestimmten µC - Typ
geschrieben?
Falls sich keine weiteren Interessenten melden, und du einverstanden
bist, würde ich gern weitere Einzelheiten per e-Mail klären. Vielleicht
kapier ich es dann doch noch.
MfG
Wolfgang

von Kahn (Gast)


Lesenswert?

Hallo Wolfgang,
ich habe keine Ahnung, wie du Datenstrom einer GPS -maus empfängst.
Aber ich interessiere mich sehr dafür.
Kannst du mir bitte das Prinzip erklären?
Gruß.
Kahn.

von Wolfgang (Gast)


Lesenswert?

Dies ist relativ einfach.
Ich hatte mir eine GPS- Maus mit serieller (RS232) Schnittstelle
zugelegt. Die Maus an die serielle Schnittstelle des PC hängen und mit
Hyper Terminal kann man den Datenstrom empfangen und sichtbar machen.
Baudrate (zumeist 4800) einstellen.

Also Maus mit 5V versorgen  und schon kommt der Datenstrom an RS232 an.
Wenn der Datenstrom von einem µC empfangen werden soll, dann mit einem
MAX232 o.ä. den Pegel wandeln und an UART hängen.
Wie es mit einer GPS- Maus für USB funktioniert – keine Ahnung
MfG
Wolfgang

von peter (Gast)


Lesenswert?

ja das stimmt. für den pc gibt es ja fertige freeware, um mit hilfe
einer maus quasi ein komplettes gps-navigationssystem in den händen
hat. nur wer nimmt schon das notbook auf die piste mit??? ;-)

von Axel R. (Gast)


Lesenswert?

Soll ich hier nochmal antworten?!?

von Sebastian Mathar (Gast)


Lesenswert?

Ja, würde mich auch interessieren, ob jemand so etwas schon mal
erfolgreich umgesetzt hat. :-) Im Prinzipi ist das ja nicht schwer. Ich
habe sowas mal als m-File in Matlab gemacht, das ließe sich vielleicht
portieren ...

Dort habe ich ein NMEA-File eingelesen und anschließend verschiedene
Berechnungen gemacht: Durchschnitts-, Min-, Max-Geschwindigkeit
errechnet, Strecke und Geschwindigkeit über Zeit geplottet, fehlende
Werte (Bäume im Weg, keine Satelliten usw.) linear interpoliert etc.

Bei Interesse könnte ich das noch mal rauskramen ...

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.