Forum: Mikrocontroller und Digitale Elektronik Mikrocontroller und GPS


von Martin K (Gast)


Lesenswert?

Hallo zusammen,

ich habe eine prinzipielle Frage bezüglich Mikrocontroller. Vorab muss 
ich noch sagen, dass ich auf diesem Gebiet wirklich keine Ahnung habe, 
aber beabsichtige dies in Zukunft noch zu ändern.

Wäre mit einem Controller, welcher Art auch immer, folgende Aufgabe zu 
lösen.

Ein GPS-Empfänger gibt seine Daten seriell in Form eines so genannten 
NMEA Satzes weiter. Dieser setzt sich unter anderem aus den Koordinaten 
und der Geschwindigkeit zusammen. Siehe 
http://de.wikipedia.org/wiki/NMEA_0183
Ich würde nun gerne diesen NMEA Satz in ein von der Geschwindigkeit 
abhängiges Rechtecksignal umrechnen. Bei einer Geschwindigkeit von 1 
km/h sollte die Frequenz ca. 35 Hz betragen)
Der GPS-Empfänger hat eine Updaterate von 5Hz. Mit dieser Frequenz 
sollte dann auch das Rechtecksignal berechnet werden.

Ist dies von Seiten der Hardware überhaupt Möglich?

Vielen Dank für eure Antworten

Martin

von Roman (Gast)


Lesenswert?

Die Antwort hängt ein bisschen von der Komplexität Deiner Formel zur
Berechnung der Ausgabefrequenz ab. Ich vermute es geht um eine Art
Tachoimpuls-Simulierung? Ein Mikrocontroller sollte mehr als genügend
Zeit haben, um Deine Aufgabe zu erledigen:

- Parsing des richtigen Strings mit der Geschwindigkeit
- Umwandeln der Geschwindigkeit (ASCII) in eine Zahl
- Anwenden Deiner Formel
- Ausgabe der Frequenz (vermutlich mit PWM)

Gruss
Roman

von pacer (Gast)


Lesenswert?

soviel ich jetzt erkennen konnte, ist dem Datenstrom keine 
Geschwindigkeitsangabe. Man muss sich die Geschwindigkeit errechnen aus 
dem Längen und Breitengrad sowie der Ausrichtung.

Danke das sit der schwierigere Teil. Für die Frquenz müsste man 
eigentlich nur einen Timer verwenden.

von Roman (Gast)


Lesenswert?

Das ist nicht ganz richtig, es kommt auf das GPS Gerät an. Viele GPS 
unterstützen z.B. den VTG Satz, der die Geschwindigkeit in Knoten und 
km/h ausgibt !

Der Wiki Link ist nicht das komplette NMEA protocol.

Gruss
Roman

von Bernhard (Gast)


Lesenswert?

Auszug aus Wiki

Jedes NMEA-Gerät muss mindestens den Recommended Minimum Sentence C 
(empfohlener Mindestdatensatz C, RMC) Datensatz ausgeben können. Er 
folgt folgendem Aufbau:

$GPRMC,162614,A,5230.5900,N,01322.3900,E,10.0,90.0,131006,1.2,E*13
$GPRMC,HHMMSS,A,BBBB.BBBB,b,LLLLL.LLLL,l,GG.G,RR.R,DDMMYY,M.M,m*PP



Symbol      Bedeutung
HHMMSS      Zeit (UTC)
A           Status (A für OK, V bei Warnungen)
BBBB.BBBB   Breitengrad
b           Ausrichtung (N für Nord, nördlich; S für South, südlich)
LLLLL.LLLL  Längengrad
l           Ausrichtung (E für East, östlich; W für West, westlich)
GG.G        Geschwindigkeit in Knoten
RR.R        Richtung in Grad
DDMMYY      Datum
M.M         magnetische Abweichung
m           Ausrichtung der Abweichung (E oder W)
PP          hexadezimale Darstellung der Prüfsumme


GG.G sollte doch die Geschwindigkeit in Knoten wiedergeben?

von Martin K (Gast)


Lesenswert?

Ja es geht um so was ähnliches wie einen Tachoimpuls. Bis jetzt verwende 
ich zu Geschwindigkeitsmessung einen Radarsensor. Dieser gibt über eine 
Strecke von 100m ca. 13000 Impules (in Abhängigkeit von allem) aus.
Der GPS Empfänger hat noch eine zusätzliche Signalleitung, auf der alle 
0,2 Sekunden in Impuls (keine Ahnung welcher) ausgegeben wird.
Laut Wikipedia ist der siebte Abschnitt das Datenstrom die 
Geschwindigkeit in in Konten.

Denkt Ihr man kann diese Aufgabe mit einem Mikrocontroller 
bewerkstelligen?

mfg
Martin

von pacer (Gast)


Lesenswert?

kurz gesagt, ja. Stichwort wäre PWM
allerdings hab ich das Wikipedia nicht ganz verstanden:
*Recommended Minimum Sentence C
*Datum Reference
*Global Positioning System Fix Data

werden alle 3 Datensätz übertragen, oder können die Geräte jeweils nur 
eins dieser Protokolle?

von Roman (Gast)


Lesenswert?

Ich vermute mal die 0.2 Sekunden Impulse könnten mit den 5 Hz zu tun 
haben!?

Meiner Meinung nach ist das sehr gut mit einem Mikrocontroller lösbar. 
Dieser braucht nichtmal sehr schnell oder gut zu sein, er braucht 
lediglich:
- Serielle Schnittstelle (USART z.B.)
- PWM Ausgabe

Und sogar dafür gibt es Alternativen (Soft-PWM).

Gruss
Roman

von Roman (Gast)


Lesenswert?

@pacer: viele GPS übertragen jede Menge verschiedene Datensätze. Einige 
GPS kann man sogar noch dazu bringen, weitere Datensätze zu senden 
(indem man ein Kommando seriell zum GPS schickt).

von Stefan B. (stefan) Benutzerseite


Lesenswert?

Martin K wrote:

> Ich würde nun gerne diesen NMEA Satz in ein von der Geschwindigkeit
> abhängiges Rechtecksignal umrechnen. Bei einer Geschwindigkeit von 1
> km/h sollte die Frequenz ca. 35 Hz betragen)

Wobei diese Randbedingungen einen Haken haben und das zuerst mit einem 
GPS-Empfänger ausprobiert werden sollte.

1 km/h sind 0,28 m/s bzw. 0,56 kt. Das ist zwar von der Auflösung her im 
NMEA Datensatz drin (GG.G, d.h. eine Nachkommastelle) aber i.A. nicht in 
der Genauigkeit der GPS-Position.

Selbst wenn der GPS-Empfänger still steht, gibt es eine zeitliche 
Änderung in der Positionsanzeige, die grösser ist, als die Strecke bei 
einer Geschwindigkeit von 1 km/h.

Am ehesten wäre das noch den Navis für Wanderer oder Radfahrer 
zuzutrauen. Weiss jemand, wie die arbeiten? Vielleicht mit 
Zusatzhardware (Beschleunigungssensoren, Schrittzähler, Kompass) zur 
Unterstützung des GPS-Signals oder vielleicht per Software (Glättung, 
Berechnung aus Wegstrecke/Zeit)?

von Martin K (Gast)


Lesenswert?

Soweit ich weiß kann mit einem guten GPS-Empfänger mit WAAS 
Unterstützung eine Geschwindigkeit ab 0,3 km/h bestimmt werden. Größere 
Ungenauigkeiten treten dagegen bei der Positionsbestimmung auf. Diese 
werden durch atmosphärische Störungen hervorgerufen 
(Ausbreitungsgeschwindigkeit der Funkwellen ändert sich bei hohem 
Wasseranteil in der Luft). Da Wetteränderungen aber in der Regel träge 
ablaufen, hat dies keinen Einfluss auf die Geschwindigkeit. Bitte 
korrigiert mich wenn ich falsch liege.

von Stefan B. (stefan) Benutzerseite


Lesenswert?

WAAS musste ich erst bei Wikipedia nachschlagen.
http://de.wikipedia.org/wiki/WAAS

Ich befürchte, WAAS ist keine Hilfe bei deinem Problem.

Mit WAAS kann eine Position auf 0.3 bis 1 m genau bestimmt werden, 
über Geschwindigkeit steht bei Wikipedia nichts. Die Schwankung in der 
Position ist ausserhalb des abgesteckten notwendigen Gebietes.

Und der Empfang des WAAS Signals ist nicht einfach: "Der Empfang von 
WAAS-/EGNOS-Signalen ist meist nur auf Anhöhen oder offener See möglich.

Mir ist auch noch nie ein basteltaugliches GPS-Modul mit WAAS 
untergekommen.

von pacer (Gast)


Lesenswert?

Gibt es denn überhaupt eine Anforderung in Bezug auf die 
Positionsgenauigkeit? Wenn ja, müsste man tatsächlich drüber nachdenken, 
ob GPS das Mittel zum Zweck ist. Wenn nicht, dann einfach machen, oder?

von Martin K (Gast)


Lesenswert?

Mal sehen. Anforderungen an die Position gibts es keine. Es würde nur 
die Geschwindigkeit ausgewertet.

von Daniel F. (df311)


Lesenswert?

Martin K wrote:
> Mal sehen. Anforderungen an die Position gibts es keine. Es würde nur
> die Geschwindigkeit ausgewertet.

in welcher art fahrzeug soll denn das ganze zum einsatz kommen bzw. bei 
welchen geschwindigkeiten?
und welche genauigkeit ist für die umwandlung notwendig?

von pacer (Gast)


Lesenswert?

Okay, anders gefragt: Wie genau soll den Geschwindigkeit sein, bzw. 
welche Abweichungen sind zulässig?
Ohne Beantwortung der Frage kann mn ja noch lange diskutieren um dann am 
Ende festzustellen, dass alles sinnlos war, weil das Messsystem nicht 
hinreichend genau ist.

von oha (Gast)


Lesenswert?

Die normale Updaterate eines Garmin ist 1 Hz. Ich wuerde mal annehmen 
dass auch noch etas Rauschen drauf ist, dh die Werte nicht linear durch 
Null gehen. Irgendwann versinkt man im Rauschen. Es gibt Leute, die 
werten auch dieses Rauschen in 2 Dimensionen aus und Mitteln lange 
genug. Ob das beides fuer diese Applikation passt, muesste man erst 
durch einen Test herausfinden.

von Stefan B. (stefan) Benutzerseite


Lesenswert?

oha wrote:

> Die normale Updaterate eines Garmin ist 1 Hz. Ich wuerde mal annehmen
> dass auch noch etas Rauschen drauf ist, dh die Werte nicht linear durch
> Null gehen.

Da vermutest du richtig. Bei einem normalen MNEA-GPS kann man sich das 
Rauschen (und die Sat-Positionen) z.B. mit der Freeware VisualGPS 3D 
anzeigen lassen. In meinen bisherigen versuchen mit stationärem GPS gab 
es immer einen Drift, der nach Stunden/Tagen gelegentlich zurück zum 
Ursprung kam.

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.