mikrocontroller.net

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


Autor: Wolfgang (Gast)
Datum:

Bewertung
0 lesenswert
nicht 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

Autor: Rainer (Gast)
Datum:

Bewertung
0 lesenswert
nicht 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

Autor: horst (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Wolfgang,

anbei eine kleine Routine fuer dein Problem

gruss
       horst.

Autor: Wolfgang (Gast)
Datum:

Bewertung
0 lesenswert
nicht 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

Autor: Wolfgang (Gast)
Datum:

Bewertung
0 lesenswert
nicht 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

Autor: Kahn (Gast)
Datum:

Bewertung
0 lesenswert
nicht 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.

Autor: Wolfgang (Gast)
Datum:

Bewertung
0 lesenswert
nicht 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

Autor: peter (Gast)
Datum:

Bewertung
0 lesenswert
nicht 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??? ;-)

Autor: Axel R. (axelr) Flattr this
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Soll ich hier nochmal antworten?!?

Autor: Sebastian Mathar (Gast)
Datum:

Bewertung
0 lesenswert
nicht 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 ...

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.