Hoehenangaben der Empfaenger und der NMEA-Standard

  • Hallo Navigemeinde


    Nachdem ja nun in einigen Threads ueber das Verhalten der Empfaenger hinsichtlich der Hoehenangaben diskutiert wird/wurde, moechte ich versuchen ein wenig das unterschiedliche Verhalten der Empfaenger aufzuzeigen. Dies ist in meinen Augen deshalb notwendig, weil es in den Navi-Programmen sonst zu Fehlinterpretationen der Hoehe kommen kann. Der interessierte User sollte schon wissen, welche Werte sein Empfaenger ausgibt. Dies gilt natuerlich nicht nur fuer externe Empfaenger, sondern ist auch auf die internen Empfaenger anwendbar.
    Also bitte mitmachen.


    Einige Vorbemerkungen zur NMEA-Spezifikation fuer das GGA-Protokoll:

    • Feld 9 = Hoehe ueber Geoid.
    • Feld 11 = GeoidSeparation (Undulation). Hier wird die Hoehe ueber Geoid - (Minus) Hoehe ueber Ellipsoid angegeben. Wenn im Feld 11 nichts stehen soll, also wenn keine GeoidSeparation ausgegeben werden soll, dann ist dort auch kein Zeichen auszugeben. Daraus folgt, das eine "Null" halt auch nur dann erscheinen darf, wenn die Hoehe ueber Geoid "Gleich" der Hoehe ueber Ellpsoid ist.


    Wie kann man das nun ermitteln:
    Dazu am besten ein LogFile aufnehmen, aus dem die Daten ermittelt werden koennen. Bei der LogFileaufzeichnung ist darauf zu achten, dass das aufzeichnende Programm nicht selber schon eine Hoehenkorrektur vornimmt, also z.B. VisualGPSce nehmen. Das LogFile sollte schon ca. 10-15 Minuten lang sein, damit man die SAT-Konstellation erkennen kann, denn die ist massgebend mitentscheidend fuer die Hoehenermittlung. Ausserdem ist darauf zu achten, das man wirklich freie Sicht auf die SATs hat, denn die Werte zur Hoehenermittlung sind technisch bedingt anfaelliger als die Werte der Ebene. Also FREIEN Platz suchen. Wer also selbst ausliest sollte auf jeden Fall auf gute VDOP-Werte achten. Wer die Daten nicht selber auslesen kann/will, stellt einfach sein LogFile hier ein. Dazu ist es aber unbedingt erforderlich, das man die Hoehe seines Standortes kennt. Denn nur dann ist ein Vergleich machbar. Die Hoehen sind oft an oeffentlichen Gebaeuden, Kirchen, Denkmaeler, Aussichtpunkten, oder ... angebracht. Wer keine bekannte Hoehe hat, kann zwar auch ein LogFile posten, ob dann aber aus den TOP-Karten eine dazu passende Hoehe ermittelt werden kann, ist nicht gewiss. Ein Versuch schadet aber nicht.



    Mir ist schon klar, das zu einem Vergleich auch die Firmware des Empfaengers gehoert, dies moechte ich im Hinblick auf die moeglichen Risiken beim Auslesen nicht unbedingt hier mit anfuehren. Sollten sich bei gleichen Empfaengern unterschiedliche Angaben ergeben, kann dies immer noch nachgeholt werden. Deswegen waere es schoen, wenn hier moeglichst viele mitmachen wuerden, auch wenn schon Angaben des eigenen Empfaengers vorhanden sind.




    Der jeweils letzte Stand ist aus der aktuellsten Excel-Liste zu entnehmen.



    EDIT
    Anpassungen im Bereich der LogFile-Erstellung vorgenommen
    /EDIT

    7 Mal editiert, zuletzt von 900SS-97 ()

  • Erste Aktualisierung ist da


    Stand: 05.02.2006


    BT-Empfaenger:


    Empfaenger, Chip, Stueck, Altitude, GeoidSeparation, Username
    ---------------------------------------------------------------------
    GNS_5843, Sirf_III, 2, Geoid, Ja, 900SS-97
    Leadtek_9553, Sirf_III, 2, Ellipsoid, Nein, 900SS-97
    Navilock_BT308, Sirf_II, 1, Ellipsoid, Ja, 900SS-97
    SysOnChip_SmartBlue, Sirf_III, 1, Geoid, Ja, 900SS-97



    Kabelgebundene/CF-Empfaenger:


    Empfaenger, Chip, Stueck, Altitude, GeoidSeparation, Username
    ---------------------------------------------------------------------
    GNS_9810, Sirf_II, 1, Ellipsoid, Nein, 900SS-97
    Haicom_204S, Sirf_II, 1, Ellipsoid, Ja, 900SS-97
    Rikaline_6010, Sirf_II, 1, Ellipsoid, Ja, 900SS-97




    Legende:

    • Empfaenger = Hersteller_Empfaengerbezeichnung
    • Chip = Chip-Hersteller_Typ
    • Stueck = Anzahl der ueberprueften Empfaenger
    • Altitude = Geoid
      ==> Feld 9 des GGA-Protokolls wird als Hoehe ueber Geoid ausgegeben (entspricht der NMEA-Spezifikation)
    • Altitude = Ellipsoid
      ==> Feld 9 des GGA-Protokolls wird als Hoehe ueber Ellipsoid ausgegeben (entspricht nicht der NMEA-Spezifikation)
    • GeoidSeparation = Ja
      ==> In Feld 11 des GGA-Protokolls werden Werte (Undulation) ausgegeben
    • GeoidSeparation = Nein
      ==> In Feld 11 des GGA-Protokolls werden keine Werte (Undulation) ausgegeben
    • GeoidSeparation = Null
      ==> In Feld 11 des GGA-Protokolls werden Null-Werte ausgegeben
    • Username ==> Damit man bei unterschiedlichem Verhalten evtl. Firmwarestand ermitteln kann. Es erscheint nur der Name des ersten Users
  • Stand: 05.02.2006 11:38 Uhr


    BT-Empfaenger:


    Empfaenger, Chip, Stueck, Altitude, GeoidSeparation, Username
    ---------------------------------------------------------------------
    GNS_5840, Sirf_II, 1, Ellipsoid, Nein, Taxus
    GNS_5843, Sirf_III, 2, Geoid, Ja, 900SS-97
    Leadtek_9553, Sirf_III, 2, Ellipsoid, Nein, 900SS-97
    Navilock_BT308, Sirf_II, 1, Ellipsoid, Ja, 900SS-97
    SysOnChip_SmartBlue, Sirf_III, 1, Geoid, Ja, 900SS-97



    Kabelgebundene/CF-Empfaenger:


    Empfaenger, Chip, Stueck, Altitude, GeoidSeparation, Username
    ---------------------------------------------------------------------
    GNS_9810, Sirf_II, 1, Ellipsoid, Nein, 900SS-97
    Haicom_204S, Sirf_II, 1, Ellipsoid, Ja, 900SS-97
    Rikaline_6010, Sirf_II, 1, Ellipsoid, Ja, 900SS-97




    Legende:

    • Empfaenger = Hersteller_Empfaengerbezeichnung
    • Chip = Chip-Hersteller_Typ
    • Stueck = Anzahl der ueberprueften Empfaenger
    • Altitude = Geoid
      ==> Feld 9 des GGA-Protokolls wird als Hoehe ueber Geoid ausgegeben (entspricht der NMEA-Spezifikation)
    • Altitude = Ellipsoid
      ==> Feld 9 des GGA-Protokolls wird als Hoehe ueber Ellipsoid ausgegeben (entspricht nicht der NMEA-Spezifikation)
    • GeoidSeparation = Ja
      ==> In Feld 11 des GGA-Protokolls werden Werte (Undulation) ausgegeben
    • GeoidSeparation = Nein
      ==> In Feld 11 des GGA-Protokolls werden keine Werte (Undulation) ausgegeben
    • GeoidSeparation = Null
      ==> In Feld 11 des GGA-Protokolls werden Null-Werte ausgegeben
    • Username ==> Damit man bei unterschiedlichem Verhalten evtl. Firmwarestand ermitteln kann. Es erscheint nur der Name des ersten Users
  • Danke Taxus


    Stand: 05.02.2006 14:37


    BT-Empfaenger:


    Empfaenger, Chip, Stueck, Altitude, GeoidSeparation, Username
    ---------------------------------------------------------------------
    GNS_5840, Sirf_II, 1, Ellipsoid, Nein, Taxus
    GNS_5843, Sirf_III, 2, Geoid, Ja, 900SS-97
    Leadtek_9553, Sirf_III, 2, Ellipsoid, Nein, 900SS-97
    Navilock_BT308, Sirf_II, 1, Ellipsoid, Ja, 900SS-97
    SysOnChip_SmartBlue, Sirf_III, 1, Geoid, Ja, 900SS-97



    Kabelgebundene/CF-Empfaenger:


    Empfaenger, Chip, Stueck, Altitude, GeoidSeparation, Username
    ---------------------------------------------------------------------
    GNS_9810, Sirf_II, 1, Ellipsoid, Nein, 900SS-97
    Haicom_204S, Sirf_II, 1, Ellipsoid, Ja, 900SS-97
    MyGuide_6500XL, Sirf_II, 1, Ellipsoid, Nein, Taxus
    Rikaline_6010, Sirf_II, 1, Ellipsoid, Ja, 900SS-97




    Legende:

    • Empfaenger = Hersteller_Empfaengerbezeichnung
    • Chip = Chip-Hersteller_Typ
    • Stueck = Anzahl der ueberprueften Empfaenger
    • Altitude = Geoid
      ==> Feld 9 des GGA-Protokolls wird als Hoehe ueber Geoid ausgegeben (entspricht der NMEA-Spezifikation)
    • Altitude = Ellipsoid
      ==> Feld 9 des GGA-Protokolls wird als Hoehe ueber Ellipsoid ausgegeben (entspricht nicht der NMEA-Spezifikation)
    • GeoidSeparation = Ja
      ==> In Feld 11 des GGA-Protokolls werden Werte (Undulation) ausgegeben
    • GeoidSeparation = Nein
      ==> In Feld 11 des GGA-Protokolls werden keine Werte (Undulation) ausgegeben
    • GeoidSeparation = Null
      ==> In Feld 11 des GGA-Protokolls werden Null-Werte ausgegeben
    • Username ==> Damit man bei unterschiedlichem Verhalten evtl. Firmwarestand ermitteln kann. Es erscheint nur der Name des ersten Users
  • Taxus hat noch ein Wenig in seinem Kramladen gesucht. :]


    Stand: 05.02.2006 17:20


    BT-Empfaenger:


    Empfaenger, Chip, Stueck, Altitude, GeoidSeparation, Username
    ---------------------------------------------------------------------
    GNS_5840, Sirf_II, 1, Ellipsoid, Nein, Taxus
    GNS_5843, Sirf_III, 2, Geoid, Ja, 900SS-97
    Leadtek_9553, Sirf_III, 2, Ellipsoid, Nein, 900SS-97
    Navilock_BT308, Sirf_II, 1, Ellipsoid, Ja, 900SS-97
    SysOnChip_SmartBlue, Sirf_III, 1, Geoid, Ja, 900SS-97



    Kabelgebundene/CF-Empfaenger:


    Empfaenger, Chip, Stueck, Altitude, GeoidSeparation, Username
    ---------------------------------------------------------------------
    GNS_9810, Sirf_II, 1, Ellipsoid, Nein, 900SS-97
    Haicom_204S, Sirf_II, 1, Ellipsoid, Ja, 900SS-97
    MyGuide_6500XL, Sirf_II, 1, Ellipsoid, Nein, Taxus
    Rikaline_6010, Sirf_II, 1, Ellipsoid, Ja, 900SS-97
    Roadstar_RN-202, Sirf_II, 1, Ellipsoid, Ja, Taxus




    Legende:

    • Empfaenger = Hersteller_Empfaengerbezeichnung
    • Chip = Chip-Hersteller_Typ
    • Stueck = Anzahl der ueberprueften Empfaenger
    • Altitude = Geoid
      ==> Feld 9 des GGA-Protokolls wird als Hoehe ueber Geoid ausgegeben (entspricht der NMEA-Spezifikation)
    • Altitude = Ellipsoid
      ==> Feld 9 des GGA-Protokolls wird als Hoehe ueber Ellipsoid ausgegeben (entspricht nicht der NMEA-Spezifikation)
    • GeoidSeparation = Ja
      ==> In Feld 11 des GGA-Protokolls werden Werte (Undulation) ausgegeben
    • GeoidSeparation = Nein
      ==> In Feld 11 des GGA-Protokolls werden keine Werte (Undulation) ausgegeben
    • GeoidSeparation = Null
      ==> In Feld 11 des GGA-Protokolls werden Null-Werte ausgegeben
    • Username ==> Damit man bei unterschiedlichem Verhalten evtl. Firmwarestand ermitteln kann. Es erscheint nur der Name des ersten Users
  • Danke Wolf


    Stand: 05.02.2006 18:42


    BT-Empfaenger:


    Empfaenger, Chip, Stueck, Altitude, GeoidSeparation, Username
    ---------------------------------------------------------------------
    ebontek_397, Nemerix, 1, Geoid, Ja, ex_WolfL
    GNS_5840, Sirf_II, 1, Ellipsoid, Nein, Taxus
    GNS_5843, Sirf_III, 2, Geoid, Ja, 900SS-97
    Leadtek_9553, Sirf_III, 2, Ellipsoid, Nein, 900SS-97
    Navilock_BT308, Sirf_II, 1, Ellipsoid, Ja, 900SS-97
    SysOnChip_SmartBlue, Sirf_III, 1, Geoid, Ja, 900SS-97



    Kabelgebundene/CF-Empfaenger:


    Empfaenger, Chip, Stueck, Altitude, GeoidSeparation, Username
    ---------------------------------------------------------------------
    GNS_9810, Sirf_II, 1, Ellipsoid, Nein, 900SS-97
    Haicom_204S, Sirf_II, 1, Ellipsoid, Ja, 900SS-97
    MyGuide_6500XL, Sirf_II, 1, Ellipsoid, Nein, Taxus
    Rikaline_6010, Sirf_II, 1, Ellipsoid, Ja, 900SS-97
    Roadstar_RN-202, Sirf_II, 1, Ellipsoid, Ja, Taxus




    Legende:

    • Empfaenger = Hersteller_Empfaengerbezeichnung
    • Chip = Chip-Hersteller_Typ
    • Stueck = Anzahl der ueberprueften Empfaenger
    • Altitude = Geoid
      ==> Feld 9 des GGA-Protokolls wird als Hoehe ueber Geoid ausgegeben (entspricht der NMEA-Spezifikation)
    • Altitude = Ellipsoid
      ==> Feld 9 des GGA-Protokolls wird als Hoehe ueber Ellipsoid ausgegeben (entspricht nicht der NMEA-Spezifikation)
    • GeoidSeparation = Ja
      ==> In Feld 11 des GGA-Protokolls werden Werte (Undulation) ausgegeben
    • GeoidSeparation = Nein
      ==> In Feld 11 des GGA-Protokolls werden keine Werte (Undulation) ausgegeben
    • GeoidSeparation = Null
      ==> In Feld 11 des GGA-Protokolls werden Null-Werte ausgegeben
    • Username ==> Damit man bei unterschiedlichem Verhalten evtl. Firmwarestand ermitteln kann. Es erscheint nur der Name des ersten Users
  • Hallo Charly


    Ich wusste doch das Dein Fundus nicht zu uebertreffen ist. : drink
    Danke.

  • Zitat

    Original von 900SS-97
    Hallo Charly


    Ich wusste doch das Dein Fundus nicht zu uebertreffen ist. : drink
    Danke.


    Kleine Korrektur: hatte den MyGuide als Gerät mit integriert vergessen zu aktualisieren.


    Mal schauen, ob ich über den/die Loox 5xx noch was rauslesen kann.

  • Hallo Charly


    Ich habe die Liste etwas angepasst. Ich hoffe es macht Dir nichts aus. Im Bereich der Legende habe ich kleinere Anpassungen gemacht. Aus dem GNS5810 habe ich den 9810 gemacht. Wenn wir uns auf dieses Design einigen koennten, dann wuerden wir diese Liste weiter pflegen. Denn dann kann ich im Eingangsposting immer den letzten Stand wieder spiegeln.


    EDIT
    Liste angepasst
    /EDIT

  • Zitat

    Original von 900SS-97
    Hallo Charly


    Ich habe die Liste etwas angepasst. Ich hoffe es macht Dir nichts aus. Im Bereich der Legende habe ich kleinere Anpassungen gemacht. Aus dem GNS5810 habe ich den 9810 gemacht. Wenn wir uns auf dieses Design einigen koennten, dann wuerden wir diese Liste weiter pflegen. Denn dann kann ich im Eingangsposting immer den letzten Stand wieder spiegeln.


    EDIT
    Liste angepasst
    /EDIT


    Schon o.K.


    Da wir aber nicht vergessen wollen, wozu das Ganze dient, wäre evtl. noch folgendes Makro einzufügen. Dazu muss die K-Spalte aber frei bleiben::



    Sub MNHöhe()


    For i = 10 To 100
    If Cells(i, 5).Value <> "" Then
    'Cells(i, 11).Select
    If Cells(i, 5).Value = "Ellipsoid" And Cells(i, 6).Value = "Nein" Then
    Cells(i, 11).Value = "MN-Höhe o.K."
    Cells(i, 11).Select
    With Selection.Interior
    .ColorIndex = 0
    .Pattern = xlSolid
    End With
    Else
    Cells(i, 11).Value = "MN-Höhe falsch"
    Cells(i, 11).Select
    With Selection.Interior
    .ColorIndex = 3
    .Pattern = xlSolid
    End With
    End If
    End If
    Next i


    End Sub

    Einmal editiert, zuletzt von karomue ()

  • Zitat

    Original von karomue
    ...
    Da wir aber nicht vergessen wollen, wozu das Ganze dient, wäre evtl. noch folgendes Makro einzufügen. Dazu muss die K-Spalte aber frei bleiben::
    ...


    Hallo Charly


    Also ich hatte bei der Eroeffnung dieses Threads nicht speziell an MN gedacht. Das Thema sollten eigentlich viele/alle Navis haben. Klar, der Gedanke ist ueber die Diskusion im MN-Board entstanden, da geb ich Dir Recht. Ich habe diese Diskusion fuer mich zum Aufhaenger genommen, mich etwas naeher damit zu beschaeftigen. Denn so im Detail habe ich das bisher fuer mich noch nicht gemacht.


    Die Spalte K hatte ich fuer mich freigemacht, da ich dort die &-Verknuepfungen der einzelnen Felder mit dem Komma gemacht hatte. Dann ist meine Aktualisierung des Eingangsposting einfacher.


    Dein Makro muss ich nochmals ueberdenken, denn ich verstehe im Moment den Zusammenhang zwischen Feld 5 und 6 der Excelliste noch nicht so ganz. Ich glaube, das dies Navitechnisch keinen Zusammenhang erbringt. Aber glauben heisst nicht wissen. Nicht wissen heisst aber austesten. Dazu ist es mir aber heute zu spaet. Das passiert morgen.


  • Mir ist momentan kein anderes Prog bekannt, bei dem auf so "nette" Weise - für die ich hier zum Idioten gestempelt wurde - ein konstanter Festwert eingerechnet wird, der nur unkommentiert geändert werden kann. Somit stimmt bei MN die Höhe nur, wenn im GGA-Satz die Ellipsoid-Höhe angegeben wird und im Geoid-Korr. Feld nichts steht. In allen anderen Fällen ist die Höhe um den Festwert falsch, sofern die ini nicht korrigiert wurde. Eine Tatsache, die auch seit Urzeiten bekannt und in den Tests von peterpu und mir deutlich kommentiert wurden.


    Und jetzt will ich nicht nochmal lesen, dass den Einen und/oder Anderen die Höhe nicht interessiert, sie sowieso mit einem großen Fehler behaftet ist. Wenn die Höhe angezeigt werden kann - dafür steht ja wohl schon der Festwert der Höhenkorrektur - dann hat sie gefälligst den Konventionen von NMEA zu entsprechen. Wenn der "Hauptversorger" GNS bei den 3 gelisteten Mäusen schon 2 unterschiedliche Kombinationen liefert, die zu 33% zu falscher Höhe bei MN führen, ist das in meinen Augen ein Kardinalfehler.


    Die andere Aussage, dass bei einer Ungenauigkeit von z.B. 50 m der Unterschied Ellipsoid - Geoid nicht auffällt, ist genau so ausgemachter Blödsinn, den jeder, der einigermaßen klar denken kann auch sofort entdeckt.


    Und die Meinungen, die im anderen Thread geäußert wurden, sind noch nicht ad Akta gelegt. Zumal die eines gewissen Moderators hier, der bei lobenden Äußerungen über meine Beiträge zur log-Analyse und dämpfende Beiträge für einige eskalierende und Troll-Threads sehr wohl meine PN und (private) Email-Adresse anzuschreiben wusste, eine äußerst ausfallende Bemerkung aber hier meinte öffentlich zu machen. Das kann ich als Stil des Forums nicht akzeptieren.