PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : GPS genauigkeit steigern?!



andihas
15.04.2007, 23:03
Hi @ all !

ich benötige eine genauere positionsbestimmung für ein mobiles fahrzeug! die normalen gps empfänger haben abweichungen von ca 2-10 m

daher meine überlegung:

ich möchte mir eine basistation mit gps und funkmodul aufbauen!
im fahrzeug soll ebenfalls ein baugleiches gps modul und ein funkmodul eigebaut werden!

das ganze soll ähnlich wie ein DGPS (Differential GPS) System funktionieren!

Die Basistation stellt die referenz GPS daten zur verfügung und sendet sie an das fahrzeug. nun wird die Position von der station mit der position des fahrzeuges verglichen! eigentlich müsste sich die genauigkeit so steigern lassen

nun meine Frage:

ist es möglich oder arbeiten die die GPS module zu ungenau? welche genauigkeit ist erreichbar? giebt es jemanden der soetwas schon realisiert hat?

mfg Andi

plusminus
15.04.2007, 23:56
Wie bekommst du die genauen GPS-Koordinaten deiner Basis-Station überhaupt raus ?

Wenn du die auf irgendeine Weise genau bestimmen könntest UND dann noch dazu kommt, dass die beiden GPS-Sender im absolut 100% gleichen Moment das GPS-Signal abtasten UND dass das eintreffende Signal exakt gleich verfälscht wurde (also die örtliche Ungenauigkeit genau um den gleichen Wert springen sollte), dann dürfte das zu machen sein...

btw, habe Kopfweh (wegen überhöhter Sonneneinstrahlung) also keine Garantie ob alle logischen Schlüsse korrekt sind =(

voidpointer
16.04.2007, 09:14
Es sollte möglich sein, sowas zu bauen. Aber wahrscheinlich hat es hier im Forum noch niemand versucht.

Die erreichbare Genauigkeit ist - nach dem was ich gehört und gelesen habe - so um die 50 cm. Es gibt Verfahren zur Analyse der Row-Daten des GPS-Empfängers, welche die Genauigkeit live auf 10cm und in der Nachberechnung sogar auf 1cm bringen. Die sind aber rechenintensiv und teuer.

Die genaue Position der Basisstation kann durch Mitteln der Messungen über einen längeren Zeitraum (mehrere Stunden) bestimmt werden. Sie ist nur dann wichtig, wenn das Fahrzeug eine absolute Positionsgenauigkeit benötigt. Wenn es aber nur "relativ" genau sein soll, d.h., den eigenen Startpunkt mit hoher Genauigkeit wieder erreichen soll, dann genügt m.E., dass die Basisstation die Abweichung gegenüber einer willkürlichen Position sendet.

Die GPS-Empfänger sollten dazu möglichst baugleich sein, eine ausreichende numerische Auflösung bieten und nicht zu weit auseinanderstehen. Wenn möglich, sollten sie beide dieselben Satelliten empfangen. Dann könnte es durchaus funktionieren. Viele GPS-Module haben auch schon einen Eingang für Korrektursignale, den man dann nutzen könnte.

Gruß, Achim.

plusminus
16.04.2007, 16:54
@voidpointer sowas würd ich sehr sehr gerne mal sehen... hast du da nen link oder so :?:
50cm klingen ja noch realistisch, aber 10cm oder 1 cm o_O

Damit das ganze klappen könnte, musst du davon ausgehen, dass du Signale von genau den selben Satelliten empfängst, d.h. das die Signale die selben atmosphärischen Störungen durchlaufen haben sollten.
Dazu wie gesagt absolut baugleiche empfänger-module, am besten noch gleich getaktet...

Dann kannst du den Fehler zur statistisch ermittelten Position der BasisStation ermitteln und bei der Mobil-Einheit ""abziehen""

Vitis
16.04.2007, 21:01
Heutzutage wird die Landvermessung per DGPS gemacht
und da gehts definitiv im cm-Bereich.

andihas
16.04.2007, 21:22
hi!

danke für eure schnelle antworten!

@ Roboter1: glaube auch nicht das sich empfänger gegenseitig stören können! :-)

@ voidpointer: benötige keine absolute positon (absolute position auf der erde) sondern lediglich die relative position von meiner basisstation zu meinem fahrzeug (diese jedoch so genau wie möglich).

@ plusminus: möchte das statistische ermittlen der positon vermeinden da ich keine absolute position benötige nur die relative von der basisstation, mein gedanke ist der das beide gps modue am gleichen zeitpunkt die selbe abweichung aufweisen! die differenz müsste "theoretisch" die relative positon von der basistation sein "ohne" abweichung (50 cm wären okay)

schade das noch keiner einen versuch gestartet hat!

das die beiden gps module immer die gleichen sateliten anpeilen sollten leuchtet mir ein! wird jedoch nicht immer möglich sein!

kennt jeman ein sehr gnaues (hohe auflösung, geringe abweichung) GPS-Modul oder Maus wenn möglich mit rs232 , NEMA Protokoll?

würde mich über weiteres feedback und denkanregungen freuen! :-)

mfg Andi

andihas
16.04.2007, 21:28
hi
@ Vitis: DGPS ist sehr genau jedoch nicht billig wenn ich mich nicht irre benötigt man eine lizenz oder giebt es irgenwo ein dgps modul das ich mir leisten kann? :-)

Christian H
16.04.2007, 22:43
Hallo,


Der Versuch einfach die Positionen der GPS - Mäuse zu nehmen und zu subtrahieren ist zum kläglichen Scheitern verurteilt.
Gründe:
GPS-Empfänger berechnen ihre Position, selbst wenn sie unmittelbar nebeneinander stehen, aus den Daten verschiedener Satelliten. Ursache hierfür sind z.B. stark schwankende Signalstärken infolge von Interferenzen. Jedes GPS berechnet mit statistischen Methoden aus seinen Daten seine wahrscheinlichste Position. D.h. die Positionen zweier unmittelbar benachbarter GPS korrelieren praktisch nicht. Dieses "poor man DGPS" ist schlechter als auf DGPS zu verzichten und die Positionsbestimmung durch Mittelung zweier GPS an einem Ort zu verbessern.



Ich habe letzte Jahr Versuche zu DGPS gemacht. Verwendet habe ich 2 GPS-Mäuse von Conrad GPS RECEIVER 16 KANAL CR4 (USB) Artikel-Nr.: 989777 - 62 für je 61 Euro. Der Chipsatz ist ein LEA-LA von U-Blox.


Primär ist als Anschluss ans Notebook ein USB Kabel vorhanden. Freudige Überraschung nach Aufschrauben der GPS-Maus und Studium des Datenblattes war ein UART Aus- und Eingang. NEMA- und Raw -Datensätze ließen sich damit z.B. direkt in einen ATmega32 übertragen.

Mitgeliefert wird eine umfangreiche Software zum Programmieren der GPS-Maus. Z.B. kann festgelegt werden welche der zahlreichen Daten ausgegeben werden. D.h. man programmiert vorab mit einem Notebook über USB die GPS-Maus, um festzulegen, welche Daten später über die UART-Schnittstelle ausgegeben werden.



2. positive Überraschung war, dass auch die Rohdaten ausgegeben werden.
Von den Rohdaten sind Carrier Phase und Pseudorange zu unterscheiden.

Pseudorange gibt quasi eine Entfernung in km zu den Satelliten an und ist bereits bei normalen Empfangsbedingungen zu erhalten. Genauigkeiten wie bekannt bei GPS : mehrere m.

Carrier Phase gibt die Zahl der empfangenen Phasen des Satellitenasignals an. Hierzu ist ein hohes Eingangssignal erforderlich, welches in der Regel nur unter optimalen Bedingungen im Freien zu erhalten ist. Im Status phased lock wird jeder aufgenommene Wellenzyklus erfasst und gezählt.

Erhält man in 2 GPS-Empfängern von mindestens 3 Satelliten die Carrier Phase, läßt sich durch Subtraktion dieser Carrier Phase x Wellenlänge und trigonometrischen Funktionen die relative Position der GPS-Mäuse auf cm genau bestimmen. (Berücksichtigt müsse werden müssen noch die s.g. Doppler - werte und der Zeitpunkt der Messungen um Gangunterschiede der GPS-Uhren auszugleichen). Die Berechnungen erfordern einen PC.


So weit, so gut. Nur für den praktischen Einsatz ist das ganze absolut untauglich.

Hauptproblem: Mehrfachausbreitung der GPS-Signale. Selbst bei 2 fast benachbarten GPS-Empfängern kann durch Interferenz das GPS-Signal unterschiedliche Wege durch Reflexion genommen haben. Diese Ausbreitung ändert sich ständig. Jeder Baum, jede Hauswand stört. Dies hat u.a. zur Folge dass die kontinuierliche Aufnahme eines GPS-Signals, bzw. das phase lock verloren geht. Um diesen Ausfall zu überbrücken, müssen immer mehr aus 3 Satelliten mit besten Signal empfangen werden. Korrekturwerte für die Zeit des Signalausfalls müssen kalkuliert und einberechnet werden. Durch plötzliche Änderung des Ausbreitungsweges von GPS-Signalen treten Sprünge in den Ortsangaben auf.


Empfehlenswert ist die website www.precision-gps.org. Als kostenlosen Download gibt´s Programme um Rohdaten (z.B. Rinex) auszuwerten, umzuwandeln und DGPS -Daten zu erhalten. O.g. GPS-Empfänger von Conrad sind aber hierfür nicht ausreichend. Geeignete GPS sind in der website angegeben.




Ich bin gerade erst über diesen Beitrag gestoßen. Die Antwort ist deshalb vielleicht etwas chaotisch. Ich müßte mich halt erst wieder mit der Materie beschäftigen. Bei weiterhin bestehenden Interesse kann ich demnächst mein BASIC-Programm zu DGPS wieder ausgraben und hier reinstellen.


Mit freundlichen Grüssen


Christian

plusminus
16.04.2007, 23:56
Das was wir schon vermutet hatten etwas didaktisch aufbereitet und 10x fundierter :-b

Danke für die Infos

voidpointer
17.04.2007, 13:28
Hallo,

danke an Christian für den Erfahrungsbericht. Zum einen beschreibt er das Verfahren, das ich nur laienhaft angedeutet hatte. Zum anderen ist es natürlich schade, dass es mit dem DIY-DGPS nicht funktioniert. Hatte mir da eigentlich auch Hoffnung gemacht - aber auch bei den U-blox-Moduln gibt es wohl Unterschiede.

Zur Ergänzung noch eine Story. Vor vielen Jahren (vielleicht 2002) war ich mal zufällig auf einer Landwirtschaftsmesse. Auf einem Acker am Rand der Messe zog ein "handelsüblicher" Traktor ohne Fahrer seine Bahnen. Am Rande des Ackers stand auf einem stabilen Stativ die Basisstation und daneben eine Dame, die über Mikro erklärte, dass man mit diesem System eine Genauigkeit von einem halben Meter erreiche - der Traktor koste allerdings das doppelte des üblichen Preises. Daher kam der Gedanke, dass man sowas auch selbst bauen könnte...

Ich kann hier höchstens noch einen Link auf die Software RTKNav (http://www.novatel.com/products/waypoint_rts.htm) beisteuern, aus deren Beschreibung man vielleicht mehr zum Verfahren lesen kann.

Gruß, Achim.

andihas
18.04.2007, 22:33
Hi

ich danke allen für die ausfürliche erklärung! wäre auch zu einfach gewesen [-X

mfg Andi

Henno
09.05.2007, 17:16
Hi zusammen,

ich möchte auch eine relative Positionsbestimmung machen (max Entfernung der beiden Empfänger 1km).

Nun meine Fragen:

Wie kann ich meine GPS Empfänger synchronisieren? Die Satelliten senden ihr Signal ja 50 mal in der Sekunde (laut. Wikip.). Da wir aber für beide Empfänger genau das gleiche Signal benötigen, wäre es ja schlecht wenn der eine das 30. Signal und der nächste das 31. Signal der Sekunde auswerten würde.

@Christian H: bei mir ist es bisher noch nicht vorgekommen, daß ich weniger als vier Satelliten hatte..
Hast du das schonmal ausprobiert und bist wirklich auf cm genaue Werte gekommen? Was waren die Höchstwerte?

Was ist sonst noch entscheidend für die Genauigkeit bei der differentiellen Messung(athmosphärische Störung fällt ja raus)? Worauf muß ich bei der Hardware achten?

Ich bin schon gespannt auf eure Antworten,

Viele Grüße,
Henno

jmetzkow
09.05.2007, 22:00
Hallo
Die Daten werden 50 mal in der Sekunde vom Satelliten übertragen, von diesen 50 werden wieviel vom GPS Empfänger ausgewertet ?
Könnte mann nicht 10 datensätze nehmen und durchschnittswerte daraus bilden ? Dadurch müsten doch abweichungen minimiert werden oder ?

Ps. Bin Neu hier hab mir auch schon gefragt ob man einen rasenmäher durch gps steuern könnte.
Und ein fettes Lob den betreibern der Homepage sehr gelungen und informativ.

Henno
10.05.2007, 09:14
Hi!

Sobald verschiedene Signale ausgewertet werden, kann man den Fehler der Athmosphäre nicht mehr heraussubtrahieren, da er nicht mehr GLEICH ist.
Es muß das exakt gleiche Signal zur Abstandsbestimmung benutzt werden... Nur wie realisiere ich das?
Ich weiß nicht genau wie GPS Empfänger, die Rohdaten empfangen, programmierbar sind. Kann man sich jedes Signal flüchtig anschauen? Wenn beide das gleiche Signal haben -> auswerten? Hat jemand Erfahung mit Rohdatenauswertung?

Viele Grüße,
Hendrik

dremler
10.05.2007, 14:35
ich habe mal bei einer doku über den autobahn bau gesehen das die GPS daten absichtlich ungenau gesendet werden........man kann also auch mal mehre meter unterschied haben.......die begründung lautete das man das gps dann nicht militärisch nutzen kann ...

die autobahn bauer machen das so:
sie suchen sich irgendeinen messpunkt dessen genaue gps position bekannt ist.....von dort aus wird normal weitervermessen.... (mit lasermessgeräten...etc)

soweit ich mich noch mal belesen habe haben die amis diese ungenauigkeit mitte 2000 heruntergesetz können sie aber bei bedarf wieder "hochfahren"

Alex20q90
11.05.2007, 20:20
Hi,

also Du kannst einen GPS-Empfänger z.b. bei Dir auf dem Hausdach montieren. An dem Empfänger machst Du ein TX-Modul (z.b. easyradio)

Damit dendest Du den NMEA-Code per funk zu deinem Roboter.

Da Dein GPS-Empfänger auf dem Haus fest sitzt, ist die "Bewegung" somit eine Störgröße. Im Bot hast Du auch einen GPS-Empfänger. Die Daten von Deinem Haus kannst Du nun von dem im Bot wegrechnen, da sich Dein Haus ja nicht bewegt.

Die Störgröße kommt von der Athmosphäre. wenn dein Bot 10-100m "nebendrann" steht, kannst Du die Auflösung bis auf ein paar cm steigern. Du braucht nichteinmal die genauen Koordinaten Deines DGPS-Hilfssenders da er sich ja nicht bewegt.

Grüße
Alex

Crash32
14.05.2007, 20:33
Hallo,

ich will auch ein GPS-System benutzen.

Folgende Rahmenbedingungen:

Platz ca. 100m*100m , freie Sicht zum Himmel ( außer Wolken usw. )
gewünschte Genauigkeit: 1m

Es wäre kein Problem , mehrere GPS-Empfänger um den Platz außenrum fest zu installieren.

Folgendes hab ich mir nach dem durchforsten mehrere Internetseiten + diesem Thread überlegt/gedacht:

Man nimmt von jedem GPS-Empfänger die Rohdaten.
Aufgrund der kleinen räumlichen Entfernungen der GPS-Empfänger ( max. 100m ) und guten Randbedingungen , dürfte die Warscheinlichkeit, das jeder GPS-Empfänger mind. 3 gemeinsame Satelliten mit dem Rover-GPS-Empfänger hat sehr hoch sein.
Die Rohdaten enthalten jetzt von jedem GPS-Empfänger folgende Daten:

Anz der Sateliten

von jedem Sateliten:
ID ( irgendwas mit dem man genau diesen Sateliten identifizieren kann )
Signal Sendezeit
Entfernung in m ( km )

Damit sollte es eigentlich kein problem sein, eine Genauigkeit von 1m sein, oder?

Hab ich noch irgendwas übersehen?

Funktioniert natürlich nur, falls die entsprechenden Informationen für jeden Sateliten vorhanden sind.

Mfg

Reinhold Fischer

Alex20q90
15.05.2007, 17:31
Platz ca. 100m*100m , freie Sicht zum Himmel ( außer Wolken usw. )
gewünschte Genauigkeit: 1m

Hi Reinhold,

mein Post über Deinem erklärt eigendlich wie sowas selber zu bauen ist!

Grüße
Alex

Crash32
15.05.2007, 21:20
Hi

Danke für die Antwort Alex20q90.

Ich habe jetzt im Internet nach dem Informationen zum NMEA Protokoll gesucht, jedoch nicht herausgefunden wie ich die "Bewegung" herausfinden kann.

Irgendwie steh ich grad aufm Schlauch glaube ich.

Eigentlich müßte die Differenz zwischen den Empfangenen Positionen ( wenn sie die gleichen Satelliten-Signale empfangen ) direkt in den Abstand zwischen den GPS Empfängern umgesetzt werden können, oder?

Mfg

Reinhold Fischer

Alex20q90
15.05.2007, 22:21
Ok ich versuchs mal ganz einfach zu erklären.

Also das NMEA-Protokoll musst Du dekodieren können. Ist im Grunde nur eine Texzeile mit Nummern dazwischen.

Um die Genauigkeit zu erhöhen, machst Du folgendes:

Setze dein Hilfs-GPS an eine feste Position. Lerne die Momentane Position die vom GPS ermittelt wird. Beispiel sie sei 20019x10020.

Wenn Du den Datenstrom des GPS mitverfolgst so siehst Du das die Werte z.b. 20018x10019, 20021x10017 etc sich um den Punkt "herum" Bewegen. Das ist nun der Messfehler den Du ermiteln musst, um im Bot weggerechnet zu werden. Wichtig ist halt das der GPS-Empfänger fest ist und sich nicht bewegt!

Rechne die vorher ermittelte Position (20019x10020) von den jetzt gemessenen weg (20021x10017 - 20019x10020 = 2x3)

Also ist die Fehlmessung 2x3. Dieser Wert kommt durch Laufzeitunterschiede der Athmosphäre und ist auf ein kleines Gebiet begrenzt (z.b. 1kmx1km). Schicke die 2x3 per Funk an den Bot. Wenn Dein Bot aber sogar 100m oder näher ist, kann er die 2x3 von seinem selbst gemessenen Punkt wegrechnen und er hat die genaue Position. Diese wird sogar cm genau! Wie genau das bei weiteren Entfernungen zum Referenz-GPS-Sender ist weis ich nicht da nach 100m der Platz aufgebraucht ist.

Mach dir mal um Sattelliten und so keine Sorgen! Das macht schon der GPS-Empfänger! Natürlich klappt das oben beschriebene nicht in der Wohnung (ausser Du hast ein GPS-Repeater).

Grüße
Alex

EDIT:

Es bringt Dir nichts mehrere GPS-Empfänger auf den Bot zu bauen um die Auflösung zu erhöhen! Der Messfehler den Du hat kommt nicht von der Elektronik sondern durch die Athmosphäre. Also in einem Bereich von z.b. 100m zeigen Dir alle GPS-Empfänger den gleichen Müll an.

jmetzkow
15.07.2007, 10:52
hey Alex20q90
du schreibst das :
Wenn Dein Bot aber sogar 100m oder näher ist, kann er die 2x3 von seinem selbst gemessenen Punkt wegrechnen und er hat die genaue Position. Diese wird sogar cm genau!
spichst du hier aus eigener erfahrung ?
was denkst du reichen 2 atmega128funk mit 2 gpsmäusen das stück für etwa 60 euro aus um diese genauigkeit zu erreichen
mit 10cm wäre ich da schon zufrieden
oder muss man da schon richtig kohle auf dem tisch packen um die nötige hardware zu bekommen ?

warum ? rasenmähen mit gps unterstützung
denn erst hiermit ist doch ein effizientes arbeiten des bots möglich
für 1600 m2

Enigma1
01.08.2007, 18:33
Hallo Leute
Für mich waren die bisherigen Ausführungen seeehr interessant aber auch verwirrend. Christian H sagt sehr überzeugend und sachlich fundiert das man ein Selbstbau DGPS vergessen kann, und Alex20q90 erklärt ebenso überzeugend das es sehr wohl klappen wird.

Daher die Frage an Alex20q90 ob du das schonmal real ausprobiert hast oder ob es eher theoretische Überlegungen waren ?
Vielen Dank !

Matthias96
19.09.2007, 17:20
Wäre Alex20q90 sowie Christian H seeeeeeeeehr verbunden wenn Sie ihre kontroversen Darstellungen von 2 GPS Mäusen mal hier klären könnten. Der eine behauptet es sei ganz einfach möglich, ... der andere meint das das keinesfalls funktuinieren würde!

BITTE KLÄRT DAS BZW. WÄR ECHT SUPER WENN Alex20q90 SEINE AUSSAGEN BESTÄTIGEN KÖNNTE ... DAS WÄRE NÄMLICH EIN HAMMER

DANKE im Voraus !!!

StEndres
22.09.2007, 07:37
Zu beachten ist beim Kauf von GPS-Empfängern auch, dass diese oft absichtlich nicht die aktuelle Position preisgeben. Dies soll verhindern, dass die Position bei Navigationsgeräten, z.B. vor der Ampel, springt. Erst ab einer Geschwindigkeit con ca. 5km/h oder einer Abweichung von größer ca. 100m wird wieder aktualisiert. Diese Eigenschaft lässt sich nicht immer abschalten. Also aufpassen beim Kauf!

Stefan

Matthias96
22.09.2007, 11:05
Grüße!

Und wie heisst diese Eigenschaft genau ... denn bei µblox kann man ja hunderte Einstellungen korrigieren bzw. anpassen. Vielleicht könntest du mir mal sagen, was genau für die Anwendung von 2 GPS-System (nach DGPS) zu einstellen ist um eine exakte Relativposition von Empfänger zu Empfänger zu bekommen!

Großen DANK im Voraus !!!

StEndres
22.09.2007, 12:48
Wie die heißt, weiß ich nicht mehr genau. Irgendwas mit Static Navigation glaub ich. Was man sonst noch einstellen muss weiß ich net. Ich hab das ganze mal ausprobiert mit zwei Empfängern (allerdings nicht baugleich) und das Ergebnis war sehr ernüchternd. Hab das dann nicht weiter verfolgt.

Stefan

spec
28.12.2007, 22:52
Hallo,

ich habe vor kurzem etwas über Ntrip gelesen.
Das ist ein Referenzsignal für DGPS, welches über das inet gesendet wird.
Vielleicht wäre auch sowas ein möglicher Lösungsansatz, vorrausgesetzt man hat inet in der Nähe.
Das ganze wäre evtl. kostengünstiger, die auswertung des Signals könnte man dann auch gleich dem PC überlassen.

Andererseits denke ich das ein Referenzsignal eines zweiten GPS Empfängers mehr bringt, da die beiden Geräte meist nicht weit auseinander liegen und somit die Warscheinlichkeit grösser ist, das beide Empfänger die gleichen Fehler empfangen

mfg spec

Unregistriert
02.01.2015, 19:59
So alles gut was ich geleen habe .

Was für Hardware Software brauche ich um ein Rasenmäher von A nach B fahren zu lassen bei einer Vorgegebenen Strecke
wie Steuer ich die Lenkung an und die Motoren.?


Das Fehlt mr hier ein Bisschen.



Gruß Micha

damfino
26.02.2015, 20:24
Kleine Info wie der GPS Empfang verbessert werden kann:

Einfach eine kleine Metallplatte unter das Modul, und schon wird die Signalstärke höher und mehr Satelliten empfangen.
Bei Internetseiten über Quatrocopter findet man spezielle Gehäuse die passgenau an das Modul angelötet werden.

Ich habe einfach eine Aluplatte 5x5cm ca 6mm unter dem Modul, seitdem habe ich im Arbeitszimmer anstatt nach 1h Wartezeit 3-4 Satelliten, 5-7, mit Rekord bei 9 Satelliten, und das nach nur ein paar Minuten Wartezeit.
Das Modul ist mittlerweile schon 5 Jahre alt, und war damals schon nicht das Beste...

LG!