Richtung zwischen GPS-Koordinaten berechnen

Neue Frage »

jellowo Auf diesen Beitrag antworten »
Richtung zwischen GPS-Koordinaten berechnen
Hallo,

ich hoffe dass ich hier richtig bin.

Ich habe ein privates Projekt, wo es darum geht, einen "elektronischen Wegweiser" mit Servomotoren anzusteuern. Also quasi ein Wegweiserschild welches in eine (fast) beliebige Richtung zeigen kann. Dazu brauche ich zwei Winkel, und . Der Wegweiser ist so ausgerichtet dass = 0°, = 0° "erd-tangentiell" (entlang der Erdoberfläche) nach Norden zeigt (entspricht dann quasi einer Kompassnadel die auf N zeigt), = 90° zeigt gen Himmel, = -90° zum Erdmittelpunkt, = 90° nach Osten, etc.

Die GPS-Koordinaten (Breite, Länge, Höhe) sowohl vom Wegweiser selbst als auch vom Zielpunkt, zu dem er zeigen sollen, sind bekannt.

Ich brauche zusätzlich noch zwei Distanzen, Distanz "durch die Erde" und Distanz entlang der Erdoberfläche, die werden auf einem Display angezeigt.

(Das Programm schreibe ich übrigens in PHP.)

Ich habe bis jetzt die GPS-Koordinaten in das kartesische System WGS-84 (welches von einem Erdellipsoid mit a = 6378137 und b = 6356752,313 ausgeht) umgewandelt und einen Vektor erzeugt (einfach Koordinaten subtrahiert). Dadurch kriege ich mal die Distanz "durch die Erde" durch die Länge des Vektors. Die Distanz "entlang der Erdoberfläche" habe ich annähernd ermittelt (ausgehend von einem Kugelmodell der Erde und ohne Höhe zu berücksichtigen), es muss da nicht ganz so genau sein.

Mein Problem ist jetzt, ich weiß nicht, wie ich zu meiner Richtung in Form von zwei Winkeln komme.

Ich weiß, ich muss sowohl den Vektor den ich mit x, y, z habe in Kugelkoordinaten umwandeln als auch das Koordinatensystem (oder den Vektor?) drehen, aber ich komme einfach nicht drauf was ich genau tu muss. Ich weiß nichtmal genau in welche Richtung ich da jetzt genau drehen muss, und schon gar nicht wie.

Ich habe in Wikipedia etwas von Drehmatrizen gelesen, da blicke ich aber überhaupt nicht durch.

Ich habe leider nicht die Zeit, mich da so sehr zu vertiefen dass ich das alles wirklich verstehe, daher hoffe ich, ihr könnte mir helfen damit ich zumindest genug verstehe um das hier fertigzubringen.

Nochmal in Kürze: Ausgangspunkt (des Wegweisers) und Vektor zum Zielpunkt (beides in kartesischen Koordinaten in WGS-84) sind vorhanden, ich brauche zwei Winkel die diese Richtung repräsentieren und zwar so dass bei 0° wie eine Kompassnadel nach Norden zeigt (entlang der Erdoberfläche), bei 90° nach Osten und bei 0° "flach" entlang der Erdoberfläche zeigt, bei 90° gen Himmel und bei -90° zum Erdmittelpunkt.

Danke schonmal vielmals!

LG jellowo

PS: WGS-84 ist folgendes:
[attach]25504[/attach]

Edit opi:
Zitat:
Original von jellowo
Leider hat das Forum sowohl im Titel als auch im Text die Zeichen und vollkommen zerstört und ich kann es ja nicht editieren. Dass AE-Zeichen soll Phi sein, das kommaähnliche Symbol soll Theta sein. Sorry!
Getan.
frank09 Auf diesen Beitrag antworten »
RE: Richtung zwischen GPS-Koordinaten berechnen
Brauchst du die tangentielle Richtung, also nur ( =0 ), oder beide Winkel? Ich frage, weil man ja nicht den direkten Weg durch die Erde gehen kann.
Sei Standort P(p1|p2|p3) und Ziel Q(q1|q2|q3) sowie Erdmittelpunkt M und Nordpol N. Dann ist der Winkel zwischen Ebene E1(P,M,N) und E2(P,Q,M). Dieser Winkel entspricht dem Winkel zwischen deren Normalenvektoren



Es gilt
jellowo Auf diesen Beitrag antworten »
RE: Richtung zwischen GPS-Koordinaten berechnen
Beide Winkel. Es soll bei Bedarf auch durch die Erde zeigen.
frank09 Auf diesen Beitrag antworten »
RE: Richtung zwischen GPS-Koordinaten berechnen
ist dann "richtig", wenn und ein Rechtssystem bilden, also





Andernfalls gilt: (Programmiersprache)
Dann ist gewährleistet, dass 90°=Ost,180°=Süd, 270°=West.

Für gilt (d=direkter Abstand zwischen P und Q):
(Das Minus, weil du den Winkel nach unten negativ definiert hast)
Neue Frage »
Antworten »



Verwandte Themen

Die Beliebtesten »
Die Größten »
Die Neuesten »