Lokalisierung vom Rasen Roboter

    This site uses cookies. By continuing to browse this site, you are agreeing to our Cookie Policy.

    • six1 wrote:

      "...beim Militär nachfragen..." bezog sich wohl darauf, dass für militärische Anwendungen die Auflösung des GPS bei ~1m liegt.
      Ja das war mein Gedanke! :P

      Wenn das mit 1 oder 2 GPS-Modulen funktionieren würde (ein Modul als Referenz, das andere auf dem Bot), wäre der Aufwand recht gering.

      Bei der Variante mit Ultraschall und IR-Signal wird das deutlich mehr Aufwand.
      Man müsste so viele Empfänger aufstellen, dass mindestens 2 den Bot empfangen können.
      Dann müssen die Empfänger die Daten weiterleiten an eine "Zentrale" (PC / Handy), in der dann schließlich die Auswertung statt findet.

      Bei GMS müssten nur 2 Stationen die Daten zur Zentrale übermitteln.
    • Hallo Six1,
      welche Daten brauchst du denn? Ich habe mir bisher nur RMC, GSA und GSV angesehen, der Empfänger kann aber auch andere Sachen ausgeben. Nur kann ich daraus nicht entnehmen, wodurch die Drift zustande kommt.
      Der Hauptvorteil bei der GPS Lösung ist für mich auch der geringe Aufwand, besonders auf dem Robo.
      Der braucht nur einen Empfänger und einen Sender um die Daten an die Zentrale zu übermitteln.
      Aber solange die Empfänger nebeneinander auf dem Tisch nicht einigermaßen gleich laufen, brauche ich mir um die Situation im Betrieb keine Gedanken zu machen. Und im Moment habe ich wenig Vorstellung davon, warum die so unterschiedliche Daten ausgeben.

      Ultraschall möchte ich eher nicht machen. Wir haben hier jede Menge Hunde in der Nachbarschaft und wenn die dann zu kläffen beginnen, wenn der Robo fährt, wäre das ziemlcih unangenehm.

      @Mitch: Position feststellen kann man doch ohne weiteres mit Licht machen, solange man nicht die Ausbreitungsgeschwindigkeit zum Messen z.B. der Entfernung nimmt. Wie gesagt, ein Leuchtturm auf dem Robo könnte meiner Meinung nach sehr gut funktionieren. Dadurch läßt sich der Winkel zwischen zwei festen Punkten und dem Robo berechnen.
    • Franz wrote:

      @Mitch: Position feststellen kann man doch ohne weiteres mit Licht machen, solange man nicht die Ausbreitungsgeschwindigkeit zum Messen z.B. der Entfernung nimmt. Wie gesagt, ein Leuchtturm auf dem Robo könnte meiner Meinung nach sehr gut funktionieren. Dadurch läßt sich der Winkel zwischen zwei festen Punkten und dem Robo berechnen.
      Ich habe das ja auch so gemeint, mit der Laufzeit des Lichtes gehts nicht.

      Das mit dem Leuchtturm. Wie stellst du dir das vor?
      Glühbirne mit rotierendem Reflektor?
      Und wie bestimmt der Empfänger daraus die Position? Ich meine der bekommt doch nur pro Umdrehung des Leuchtturms einen Puls vom Licht.
      Dann müsste der Empfänger ja die Richtung, aus dem das Licht kommt, bestimmen.

      In dem Fall kannst du auch wieder IR-Pulse vom Bot aus senden über mehrere IR-Dioden, die im Ring angeordnet sind.
    • Mitch64 wrote:

      Und wie bestimmt der Empfänger daraus die Position? Ich meine der bekommt doch nur pro Umdrehung des Leuchtturms einen Puls vom Licht.
      Habe ich doch geschrieben, da beide einen GPS Empfänger synchronisieren die sich über die Zeit.
      Der Robo startet die Umdrehung beim Empfang und der Empfänger misst die Zeit, bis er das Lichtsignal sieht. Wenn das mit zwei Lichtempfängern ausgewertet wird, hat man den Winkel zwischen ihnen und dem Robo. Alle möglichen Positionen, von denen aus der Robo gesendet haben könnte, liegen auf einer Kreisbahn. Mit einem dritten Empfänger hätte man dann einen Schnittpunkt dieser beiden Kreise und damit eine exakte Position.
    • DGPS hatte ich auch mal für was anderes inspiziert, da schreckten mich die Preise ab, zumindest der Stationäre Empfänger kostet um die 100euro....nackiges Modul!
      Die Funkton an sich ist einfach erklärt:
      Der Standort von stationärem Empfanger ist bekannt, bzw eingemessen. Der ändert sich ja nicht.
      Aber seine Ergebnisse, je nach Empfangsverhältnissen. Jetzt kann man ja ausrechnen wie weit die Abweichung von jeder Ausgabe zum fixen Standort ist. Der bewegliche Empfänger hat ja die gleichen Empfangsfehler, mit der bekannten abweichung kann man diese dann abziehen und hat den genauen Standort.
      Alles recht teuer, der Stationäre ist was spezielles, ich glaub der bewegliche konnte nen "normaler" Ubloxx sein solange er die Korrekturdaten verarbeiten kann.
      Statt mit Licht währe Ultraschall wirklich noch ne option. Das ist dann bei Fremdlicht nicht so empfindlich wie IR.
      Alternativ nächsten Herbst Kabel im Quadratmuster im Rasen eingraben, das kann man doch dann ähnlich wie den Touchscreen auswerten ..... nur mal so als dumme idee. Oder rfid tags alle 10x10cm im grün versenken und nen leser an der Robo basteln

      Tobiad
    • Schraubbaer wrote:

      Der bewegliche Empfänger hat ja die gleichen Empfangsfehler, mit der bekannten abweichung kann man diese dann abziehen und hat den genauen Standort.
      Hallo Tobias,
      das ist ja genau der Punkt. Die beiden Empfänger haben nicht die gleiche Abweichung, ansonsten wäre zwischen ihnen keine Differenz wenn sie in Ruhe auf dem Tisch liegen. Und das die Differenz bei Bewegung auf dem Rasen einfach weg wäre, glaube ich nicht.
      Wenn ich das richtig verstanden habe, werden die Korrektursignale von irgendwo gesendet, ähnlich den Satellitendaten. Und die kann der Empfänger direkt in seine Berechnung einfließen lassen.


      Mitch64 wrote:

      Aber wieso muss das mit dem GPS synchronisiert sein?
      Muss ich nicht, wollte ich machen, weil ich den eh habe und auch benutzen kann. Und irgendwie wollte ich dem Empfänger ja mitteilen wann er mit seiner Messung starten soll.
      Wenn ich mir das richtig überlege, brauche ich das aber garnicht. Es kommt nur auf die Zeit zwischen den beiden Empfängern an. Mit der Synchronisierung wüsste ich dann noch, in welche Richtung der Robo fährt. Ist aber eigentlich unwichtig. Wenn der Sender mit 1Hz rotiert und die Zeit zwischen beiden Empfängern eine 1/4 Sekunde ist, dann liegt dazwischen genau 90°, womit eine Kreisbahn für den Robo definiert wäre. Bei dem dritten Empfänger dann entsprechend. Ich müsste also nur sicherstellen, dass immer mindestens drei Empfänger den Robo sehen können.

      The post was edited 1 time, last by Franz ().

    • Mitch64 wrote:

      Wenn das mit 1 oder 2 GPS-Modulen funktionieren würde (ein Modul als Referenz, das andere auf dem Bot), wäre der Aufwand recht gering.

      Hallo,
      ich habe das jetzt nur grob überflogen
      bin gerade erst wieder zurück ….
      Also sorry wenn das folgend doch schon oben steht :
      Ihr wisst schon das bei genauen GPS Positionierung wie bei Baumaschinen oder in der Landwirtschaft
      es immer in der Nähe einen GPS Feststation gibt mit bekannter Position.
      Der Beweglicher GPS Empfänger empfängt (extra Funkstrecke) die Daten der Feststation und ermittelt so die momentane Abweichung und rechnet dies in sein Ergebnis ein.
      Somit wird das bis auf wenige cm genau
    • Die korrekturdaten sendest du von deinem Stationären Empfänger, die kommen nicht von irgendwo anders. Ich hab hier auch Empfänger die weichen 10m voneinander ab, mein Balkon fährt manchmal auch mit bis zu 10KmH a_68_7bac02a1
      Wie gesagt, das rausrechnen; die richtigen Empfänger vorrausgesetzt; funktioniert einwandfrei. Wie das genau gemacht wird ist ja wurst, es fu ktioniert einfach. Natürlich kostet da mehr güte dann auch wieder mehr Geld. Und die Daten dürfen ruhig seeeeher schnell sein, aber aufm Acker geht das ja auch bis zu 10cm genau. Den Preis für so ein System willste aber nicht wissen a_48_7237538e
      Das GPS signal ist eh so ein kuriosum, das ist so schwach das der Empfänger nur ein Rauschen bekommt, er sucht in dem Rauschen ein spezielles Start Signal, hat er das gefunden kann er das restliche Signaltiming ausrechen uns sich dann damit syncronisieren.

      Tobias
    • Das ist wieder genau der Punkt!
      Dann müsste feste und bewegliche GPS-Station die gleichen Abweichungen in die selbe Richtung vom Satellit empfangen.
      Dann kann die Feststation aufgrund der bekannten Position zur Abweichung die Fehlposition ermitteln und diese an den Beweglichen senden.

      Aber genau das setzt voraus, dass die empfangene Drift bei fester und beweglicher in die Gleiche Richtung mit gleicher Amplitude geht.

      Aber das scheint ja nicht der Fall zu sein.
    • Deswegen glaube ich nicht, dass man einfach zwei GPS Empfänger nehmen kann und die Abweichung des einen als Korrektur beim anderen verwerten.
      Morgen bin ich erst einmal in Urlaub, aber danach versuche ich mal zu überprüfen, ob es an den Satelliten liegt, also an deren Anordnung im GSA Telegramm. Ich habe ja auch jede Menge RMC, wo die Unterschiede der beiden Empfänger praktisch 0 ist. Da müsste man doch irgendetwas erkennen gegenüber einem Zeitpunkt, wo sie sehr verschieden sind.
    • Für DGPS gibts auch Services, die die Korrekturdaten von über die Landschaft verteilten Fix-Stationen anbieten, aber natürlich nicht gratis. Und neben dem GPS-Empfänger brauchts auch irgendwie eine Datenverbindung.

      Ultraschallbaken wurden ja schon erwähnt, theoretisch (je nach Reichweite, Gelände etc.) reichen schon 2 aus, an einer Längsseite des Gartens positioniert (ich gehe mal von einem bodengebundenen Mähroboter und einem näherungsweise rechteckigen Grundstück aus).
      Durch die Laufzeit ermittelt man den Abstand zu den 2 Baken, die Kreise mit dem jeweiligen Radius um die Baken haben 2 Schnittpunkte, nur einer davon kann im Garten liegen.
      Um die Baken möglichst einfach zu gestalten, würde ich sie mit einem US-Empfänger und -Sender ausstatten, auch den Roboter.
      Jede Bake hat ihren eigenen Code (Morse, Binär, egal, sie müssen nur identifizierbar sein), der Roboter sendet den Code für Bake #1, diese antwortet beim Empfang mit dem selben Code, dadurch kann der Roboter die Laufzeit/Entfernung ermitteln. Dann der Code für Bake #2 usw.
    • Franz wrote:

      Deswegen glaube ich nicht, dass man einfach zwei GPS Empfänger nehmen kann und die Abweichung des einen als Korrektur beim anderen verwerten.
      Doch das glaube ich sehr wohl. Aber unter der Voraussetzung, dass die GPS-Empfänger synchron ihre Abweichung ändern.

      Diese Drift und Schwankungen bewegen sich ja immer um ein Zentrum herum.
      Wenn man dann eine Koordinate aus diesem Zentrum als Referenz nimmt und das sein angenommen in dem Garten ein bestimmter Pfeiler, kann man die Abweichung mit dem mobilen Empfänger verrechnen und so die Position bezogen auf den Pfeiler bestimmen.

      Dazu müsste man die 2 Empfänger zeitgleich betreiben (gleiche Ausrichtung) und die Drift vergleichen.
    • Mitch, wenn die beiden baugleichen Empfänger mit hoffentlich identischem Programm mit einer Entfernung von zwei Zentimetern auf dem Tisch liegen, wo soll denn da die Differenz herkommen? Wenn ich die nicht wegbekomme, dann draußen mit einem beweglichen Teil schon mal garnicht.
      Für mich ist die einzig plausible Erklärung, dass die Empfänger für die eigentliche Berechnung z.B. nur die ersten 5 Satelliten nehmen und die restlichen bis 12 (soviel macht der ublox) dann für irgendeine Korrektur. Die 12 sind definitiv gleich, dass sehe ich in den GSA Telegrammen, aber die Reihenfolge ist unterschiedlich.
    • Die Drift kommt meineserachtens aus athmosphärischen Störungen und die Satellitien sind nicht angenagelt.
      Deren Position wird von einer Bodenstation stündig überwacht und kontrolliert.

      Daher kommen die Störungen und die Abweichungen. Zumindest wäre das für mich logisch.

      Wenn die GPS Empfänger dann nebeneinander auf dem Tisch liegen und in die gleiche Richtung ausgerichtet sind, müssten beide die gleichen Abweichungen haben und sozusagen um den tatsächlichen Punkt herumeiern.

      So jetzt nimmste einen der Empfänger und suchst dir eine Koordinate raus, um die der Empfänger schwankt.
      Das soll dein Fixpunkt sein.

      Jetzt nimmst du die empfangenen Koordinaten und bildest die Differenz zu der eben festgelegten Koordinate.
      Das wäre jetzt der Fehler.

      Der 2 GPS-Empfänger bekommt ja nur die Daten vom Satellit, die eben auch im den korrekten Punkt rumeinern.

      Wenn du nun die Differenz des 1. Empfängers mit der berechneten Koordinate des 2. Empfängers verrechnest. Also dort die Differenz abziehst,
      müsste Drift-korrigierte Position dabei raus kommen.

      Diese Koordinate kannst du dann in Besug zu der Referenz-Koordinate (GPS 1) verrechnen. Also wieder die Differenz bilden.
      So erhältst du X und Y-Koordinaten zu dem Pixpunkt, der anfangs festgelegt wurde.

      Das kann eine Ecke im Garte sein, eine Hausecke oder sonst was.

      Und so müsste es funktionieren.

      Aber immer vorausgesetzt: Die Abweichungen sind bei beiden GPS-Teilen zum selben Punkt gleich.
      Daher auch auf die Ausrichtung mal schauen, ich denke die Dinger haben möglicherweise auch einen Kompass integriert.
    • Wenn Satelliten schwanken, miss sich das auch auf die berechnete Position auswirken.
      Für mich ist das logisch.

      Und dann driften beide synchron.

      Das ist die Aussage von mir.

      Und die Drift ist wohl auch normal was man so mitbekommt.
      In welchem Umfang weis ich nicht.

      Um die Drift zu kompensieren, so denke ich, kann man das wie im vorherigen Post beschrieben machen.

      Meine Meinung!

      Aber ich lasse mich auch gerne belehren.
    • Die benutzten Empfänger sind doch ausm Kaugummiautomaten gezogen wenn man es von der genauigkeit her betrachtet.
      Ich hatte glaub ich erwähnt das DGPS teuer ist. a_35_aee4835d
      Die differenz der jetzt getesteten Empfänger kommt von den billigen Chip Antennen und den toleranzen in dem Empfängern, Störungen der Spannungsregler usw. Allein der Taktgeber wird schon Toleranzen haben, jetzt rechnet mal ein paar Nanosekunden, dann die Toleranzen der Antennen usw. Schon ist jeder ein paar meter anders lokalisiert. Ich glaub die DGPS geschichte überträgt und syncronisiert auch Datenprotokolle. Müsst ihr mal die Dokus lesen, Ubloxx hat da ja einiges zu bieten, leider zumeist auf englisch

      Hier z.b.hat jemand versucht sich einen DGPS system zu bauen, dabei die schöne Bemerkung:

      And it turned out, even if the GPS error is locally constant, the way it affects individual receivers may be different.
      hackaday.com/2018/03/30/fail-o…ur-own-dgps-base-station/

      hier noch nen link zu ner Doku mit nem mehr oder weniger Öffentlichen Base Server und ner beschreibung das mit anderer Frimware wohl mach Ubloxx mudul genutzt werden kann...aber wohl mit ner Windows Software

      th-ab.de/eng/print/research/ze…msautomation/etara/ntrip/

      Tobias
    • Mitch64 wrote:

      Aber immer vorausgesetzt: Die Abweichungen sind bei beiden GPS-Teilen zum selben Punkt gleich.
      Daher auch auf die Ausrichtung mal schauen, ich denke die Dinger haben möglicherweise auch einen Kompass integriert.
      Ich habe jetzt schon gefühlt 10 mal versichert, dass die Abweichungen unterschiedlich sind. Warum glaubst du das nicht? Der eine läuft in die eine Richtung weg, der zweite in die entgegengesetzte.

      Das die Position der Satelliten schwanken, ist sicherlich die eine Ursache für die Abweichung. Die kann der Satellit vielleicht sogar selber feststellen und entsprechende Korrekturdaten mitschicken. Weiß ich zugegebenermaßen nicht.
      Atmosphärische Störungen die einen Einfluß auf die Laufzeit der Signale haben, kann er aber nicht kennen und somit auch nicht korrigieren. Diese Einflüsse werden bei jedem Satelliten anders sein und entsprechend in das Ergebnis einberechnet. Wenn dazu verschiedene Satelliten bei beiden Empfängern benutzt werden, kann auch das Endergebnis verschieden sein.