Hi, mein chip gibt mir, lt Datenblatt "Latitude Wert (nördlicher Breite: Sekunden / 256)" heraus. die bytes sind "74 02 A5 8D" und mein wert wäre in etwa 48.181230 +- also rechne ich jetzt 7402A58D in dezimal um = 1946330509 und dann * 256?? Das wären dann 498260610304 Aber wie rechne ich es in Stunden/ Mintuen etc um?
Was da kommt, ist keine Zeit, sondern ein Winkel, also wird das mit den Stunden eher nix. Ansonsten hat ein Grad 60 Bogenminuten und eine Bogenminute wiederum 60 Winkelsekunden. Ein Vollkreis hat 360°, also entsprechend 60 x 360 = 21600 Bogenminuten oder 60 x 60 x 360 = 1296000 Winkelsekunden. Koordinaten werden aber nicht von 0-360° angegeben, sondern von 0-180 entweder "links" (westlich) oder "rechts" (östlich) von Greenwich bzw. entsprechend nördlich oder südlich vom Äquator.
:
Bearbeitet durch User
Markus F. schrieb: > Ansonsten hat ein Grad 60 Bogenminuten und eine Bogenminute wiederum 60 > Winkelsekunden. Ein Vollkreis hat 360°, also entsprechend 60 x 360 = > 21600 Bogenminuten oder 60 x 60 x 360 = 1296000 Winkelsekunden. Eben. Seine Zahl ist viel zu hoch. Da kann man runter rechnen soviel man will, man landet auf nix vernünftigem. Daher: Datenblatt. Ich vermute dass schon mal die Bytereihenfolge nicht stimmt. Gehe ich davon aus, dass das Highbyte zuerst kommt, dann lautet die Hex Zahl 02748DA5 Wenn ich das /60 /60 und /256 bearbeite, dann lande ich bei rund 44 Grad. Würde zwar von der Grössenordnung passen, ist aber immer noch weit daneben. Daher: Datenblatt wie die Bytefolge zu interpretieren ist.
48.181230 Grad (°) multipliziert mit 60 ergibt den Wert in Winkelminuten, nochmal multipliziert mit 60 in Winkelsekunden (") 48.181230°*60*60=173452,428" Umgewandelt in Hex ergibt sicht daraus x0002A58C. Verglichen mit deinem Ergebnis (x7402A58D) sieht man, dass du das höchstwertige Byte ignorieren muss (die x74) und den Rest direkt als Winkelsekunden interpretieren kannst. Um von Winkelsekunden auf Grad zu kommen musst du durch 3600 dividieren. Kann auch sein, dass die 74 "umsortiert" werden muss und die niederwertigsten Stellen bildet. Das lässt sich aus dem Zahlenwert aber nicht ableiten, das bekommt man nur übers Datenblatt raus
Achim S. schrieb: > 48.181230 Grad (°) multipliziert mit 60 ergibt den Wert in > Winkelminuten, nochmal multipliziert mit 60 in Winkelsekunden (") > > 48.181230°*60*60=173452,428" > > Umgewandelt in Hex ergibt sicht daraus x0002A58C. Nicely done. > Kann auch sein, dass die 74 "umsortiert" werden muss und die > niederwertigsten Stellen bildet. Es könnten auch die Kommastellen sein. 0x74 ist circa ungefähr 0x80, also die Hälfte was mit einem Byte möglich ist. 0.428 (also dein Kommaanteil) ist auch ungefähr 0.5. 0x74 ist ein klein wenig kleiner als als die Hälfte, 0.428 ebenfalls. 0x74 -> dezimal 116 116 / 256 -> 0.453 könnte hinkommen, wenn man die originale Angabe als geschätzt annimmt.
<-o-> schrieb: > https://de.wikipedia.org/wiki/NMEA_0183 Das hilft dir nur nichts bei gerätespezifischer binärer Ausgabe.
Basti schrieb: > 48.181230 rechnen wir mal umgekehrt: 48,181 ....Grad mal 60 ergibt die Bogenminuten: 2890,8738, dezimal nochmals mal 60 die Sache in Bogensekunden 173452,428, dezimal nochmals mal 256 die Sache in 256stel sekunden: 44403821,57, dezimal ohne die 57, in hex, ist das 2a 58 c6 d. Das sind also 28 bit Deine Angabe aber umfasst 32 bit. Also stimmt irgendetwas nicht. Rechnen wir nochmal, etwas gerundet: 48Grad sind 2880 Minuten, 172800 Sekunden und in hex: 2 A3 00 Sekunden. Das mal 256: 2 A3 00 00 256stel-Sekunden. Die Stellenzahl dieser hex-Zahl ist auch 28 bit und nicht 32 wie bei Dir oben. Also stimmt bei Deiner hex-Zahl irgendetwas nicht.
:
Bearbeitet durch User
Peter R. schrieb: > Also stimmt bei Deiner hex-Zahl irgendetwas nicht. Achim hat das doch schon vor einer halben Stunde gelöst ...
Walter S. schrieb: > Achim hat das doch schon vor einer halben Stunde gelöst ... Denk auch dran, dass zwischen Beginn einer Antwort und dem Absenden noch einige Zeit vergehen kann, besonders, wenn man sich der Rechnung sicher sein will und zwischendurch auch mal etwas andres tut. Achims Anwort hab ich beim Absenden nicht gekannt, die trifft wohl den entscheidenden Punkt: die hex- Zahlen sind in umgekehrter Reihenfolge, höchstwertige Stelle zuletzt.
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.