Hallo Forum, Ich weiss nicht wohin mit dem Beitrag soll. Ich möchte aus 2 Koordinaten aus dem GPS einen Kurs und eine Entfernung berechnen. Nun hab ich mal etwas gesucht und nachgedacht: Grundgedanke ist dass man ja nur auf der Erdoberfläche bewegen kann daraus folgt es handelt sich um ein Kreisbogen mit dem Radius der Erde. Bliebe nun die Frage wie ich aus den Koordinaten den Winkel des Kreissegments berechne. Die Länge des Bogen wäre dann : pi * r *(Alpha/180°) (Alpha als Winkel des Kreisbogens) Oder sollte man die Kreissehne berechnen und aus der auf die Bogenlänge umrechnen? Und dann bleibt noch der Kurs zu berechnen Kann man da die Winkel von einander abziehen und dann irgendwie verwurschteln?? Danke im Vorraus Jochen
Wenn das Ganzze kleinraeumig geschieht kann man rechtwinklig rechnen und das Kugelzeugs weglassen.
Rechtwinklig rechnen: Differenz der Breitengrade: (Breite1-Breite2) * 111,12 Differenz der Längengrade: (Länge1-Länge2) * 111,12 * cos( (Breite1+Breite2)/2 ) Die 111,12 sind die km / Grad. Anschließend mit Pythagoras die Entfernung und mit'm Tangens den Kurs berechnen.
Hallo Jochen, Wikipedia ist dein Freund... such mal da nach 'Orthodrome'. In dem Artikel werden Formeln für Winkel- und Entfernungsberechnung angegeben (vergiss den Abschnitt mit der genauen Formel so ab der Mitte). Diese verwende ich in meinem auf einem ATmega besierenden GPS-System. Die Berechnung mache ich jede Sekunde nach Erhalt der aktuellen Koordinaten von der seriell angeschlossenen GPS-Maus. Alle zwei Sekunden würde aber auch reichen ;) Gruß Christoph
Hier wäre die Formel wenn man nicht rechtwinklig rechnet: Entfernung=ARCCOS ( SIN (Breitengrad des Startpunktes * PI / 180) * SIN (Breitengrad des Zielpunktes * PI / 180) + (COS (Breitengrad des Startpunkts * PI / 180) * COS (Breitengrad des Zielpunkt * PI() / 180) * COS ( (Längengrad des Zielorts - ( -Längengrad des Startpunkts )) * PI / 180) ) ) * 6370 (=Radius der Erde) http://www.php-resource.de/forum/showthread/t-4938.html
Hier gibts eine Formelsammlung für Navigationsprobleme: http://williams.best.vwh.net/avform.htm Entfernung:
1 | d=2*asin(sqrt((sin((lat1-lat2)/2))^2 + |
2 | cos(lat1)*cos(lat2)*(sin((lon1-lon2)/2))^2)) * Radius_der_Erde |
Kurs:
1 | tc1=mod(atan2(sin(lon1-lon2)*cos(lat2), |
2 | cos(lat1)*sin(lat2)-sin(lat1)*cos(lat2)*cos(lon1-lon2)), 2*pi) |
Mit der Entfernungsberechnung gabs schon mal hier, auch mit vielen links: Beitrag "GPS - MOUSE - MINI- NAVIGATOR (Assembler) ATmega8" Cheers Detlef
Hallo, Ja das mit dem Wikipedia hatte ich schon gemacht habe auch schon grösstensteils die Formeln gesehen muss nur gestehen, dass Mathe I Berechnungen auf Kugeln nicht ganz mein Fall war. Die Implementierung sollte nicht das Problem darstellen aber einfaches Formel abschreiben ist nicht das was ich möchte. Man will ja auch das warum kapieren. Wenn mir also das ganze mal auf einem Level niedrieger Erklären könnte wäre ich demjenigen sehr dankbar. Gruss Jochen
Hallo zusammen, IMHO wird im Zusammenhang mit GPS die Erde allerdings nicht als Kugel betrachtet, sondern als Elipsoid (vgl. http://de.wikipedia.org/wiki/WGS84). Ich weiß allerdings nicht wie viel Unterschied das in der Praxis wirklich ausmacht. Allerdings gibt es hier (http://williams.best.vwh.net/gccalc.htm) die Möglichkeit Entfernungen in verschiedenen Referenzmodellen zu berechnen. Da das ganze JavaScript ist, gibt der Quellcode auch die Fromeln her, ist allerdings etwas umfangreich ;) Greets Sebastian.
Mit Schulmathe geht die Berechnung auch, ist bißchen verquer: Kugelkoordinaten in kartesische umrechnen, steht in jeder Formelsammlung, dann den Abstand der Punkte, ist trivial, das ist dann die Länge des Tunnels von A nach B, mit dem Erdradius läßt sich dann die Entfernung direkt ausrechnen. Gute Nacht Detlef
>[..]Ich weiß allerdings nicht wie viel Unterschied das in der Praxis >wirklich ausmacht. Allerdings gibt es hier [..] Ich bin mir nicht mehr ganz sicher, doch meine ich vor kurzem gelesen zu haben, dass der Fehler bei ca. 0.5% liegt Cheers, Philip
@ Detlef_a vielen Dank, dann war ich mit meinen Überlegungen ja gar nicht so auf dem Holzweg. Also erst die Sehne errechnen (den Tunnel) und dann auf den Radius hochrechnen. Jochen
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.