Berechnen Sie Satellitenkoordinaten aus TLE-Daten

Ich weiß, es ist nicht so schwer für diejenigen, die mit den Gleichungen dafür vertraut sind, aber ich habe Probleme mit der Mathematik. Um die Umlaufbahnelemente von TLEs vollständig zu verstehen, habe ich dies gelesen, was ich sehr hilfreich fand, aber ich habe Probleme damit, dies in Breiten- und Längenkoordinaten umzuwandeln. Ich komme ohne Kenntnis der erforderlichen Algorithmen darauf zu, und ich hoffe, dass mich jemand darauf hinweisen kann. Dieser Beitrag enthält einige relevante Informationen, aber wenn ich das richtig verstehe, erklärt er nur, wie man den Längengrad zu einem bestimmten Zeitpunkt erhält, während ich die vollständigen Koordinaten haben möchte.

Bitte fügen Sie die vollständigen Informationen von verlinkten Seiten in Ihren Beitrag ein, um zu verhindern, dass Links veraltet sind ("verrotten"). Welcher Teil der SGP/SDP-Algorithmen bereitet Ihnen Schwierigkeiten?
Die Informationen im ersten Link wären hier schwer zusammenzufassen, aber ich habe dem zweiten etwas hinzugefügt. Ich habe auch ausführlich erklärt, worum ich bitte. Ich verstehe nicht, welche Gleichungen/Algorithmen verwendet werden, um die Position eines Satelliten zu einem bestimmten Zeitpunkt basierend auf seinen TLE-Daten zu bestimmen, und das würde ich gerne wissen.
celestrak.com/publications/AIAA/2006-6753 Bitte suchen Sie im Internet nach SGP4/SDP4-Algorithmen. Hinweis: Der obige Link führt zu kommentiertem Quellcode ( celestrak.com/publications/AIAA/2006-6753/AIAA-2006-6753.zip ).
Könnte jemand etwas genauer erklären, wie man das macht? @harry1795671: Wie hast du diese Pyephem-Bibliothek benutzt?
@Qorzyking Bitte beachten Sie, dass wir kein Diskussionsforum, sondern eine Q&A-Site sind. Wenn Sie eine neue Frage haben, stellen Sie sie bitte als solche . Weitere Informationen dazu, wie wir auf Stack Exchange funktionieren und Dinge organisieren, zu denen Space Exploration gehört , finden Sie auf unseren Seiten „ Info “ und „Hilfe “. Vielen Dank!

Antworten (4)

Es gibt eine Reihe von Softwarepaketen, viele davon kostenlos, die sich mit diesen beiden Linienelementen befassen. Verwenden Sie einen davon.

Diese beiden Linienelemente sind keine keplerschen Elemente. Sie sind stattdessen Brouwer-Lyddane-Mittelbahnelemente. Keplersche Elemente gehen von einem kugelförmigen Zentralkörper und keinen anderen Kräften als der Gravitation aus. Die mittleren Orbitalelemente von Brouwer-Lyddane sprechen die ersten sechs sphärischen Harmonischen an und versuchen, den atmosphärischen Luftwiderstand zu berücksichtigen. Die Mathematik der Keplerschen Elemente ist ein bisschen chaotisch. Die Mathematik dieser beiden Linienelemente ist mehr als chaotisch. Es ist ein "Mathe-out". (Stellen Sie sich einen Schneesturm vor, bei dem Sie nur Weiße sehen. Blizzards sind White-out-Bedingungen. Das Papier, das die beiden Linienelemente beschreibt, ist ein mathematisches Ergebnis. Alles, was Sie sehen, ist Mathematik.)

Die Mathematik ist in FR Hoots, "Reformulation of the Brouwer geopotential theory for Improved Computational Efficiency", Celestial Mechanics 24 (1981) beschrieben .

Am Ende entschied ich mich für die Verwendung von Pyephem, einer Python-Bibliothek, die die Berechnungen ziemlich einfach durchführen kann.

Sie können PyEphem einfach so verwenden

sudo apt-get install python

sudo apt-get install python-dev

sudo apt-get install python-pip

pip install pyephem

test.py erstellen:

import ephem
import datetime
## [...]

name = "ISS (ZARYA)";
line1 = "1 25544U 98067A   12304.22916904  .00016548  00000-0  28330-3 0  5509";
line2 = "2 25544  51.6482 170.5822 0016684 224.8813 236.0409 15.51231918798998";

tle_rec = ephem.readtle(name, line1, line2);
tle_rec.compute();

print tle_rec.sublong, tle_rec.sublat;
Sehr schön! Es ist immer gut, Python hier zu sehen. Skyfield ist ein weiteres Python-Paket und hat hier ein Tag, wo einige Anwendungsbeispiele zu finden sind. Es basiert auf unterschiedlichen Prinzipien, hat aber einige sich überschneidende Funktionen. Sowohl PyEphem als auch Skyfield werden tatsächlich von derselben Person verwaltet .
Jetzt möchte ich eine Umlaufbahn vorhersagen. Was soll ich tun? Geben Sie einfach eine Zeit ein, geben Sie einen Längen- und Breitengrad aus. @uhoh Hast du eine Idee?
Ja, der Grund, warum ich keine weitere Antwort gepostet habe, ist, dass es nicht so transparent zu sein scheint, eine Bodenspur aus einer Umlaufbahn in Skyfield zu generieren . Es ist einfach, GCRS-Koordinaten (x, y, z) oder JD2000-Koordinaten zu erhalten, aber wenn ich das richtig verstehe, ist es immer noch Sache des Benutzers, auf sein eigenes Modell für die Erde zu projizieren. Lat/Lon beziehen sich auf die Erdoberfläche, sie sind nicht unbedingt genaue Weltraumkoordinaten. Wenn Sie dies hier als weitere Frage stellen, kann ich kurze Skripte für zwei verschiedene Methoden posten.
In der Zwischenzeit können Sie sich diese Frage und die Skyfield-Ausgabe 121 ansehen .
Warnung: pyephem ist veraltet und wird nicht mehr gepflegt (letzte Version war 2015). Skyfield wurde jedoch zuletzt im Februar 2019 veröffentlicht (4 Monate vor diesem Kommentar).

Je nachdem, welchen Algorithmus/Gleichungssatz Sie zum Konvertieren verwenden, müssen Sie möglicherweise die TLE-Parameter in ECEF-Koordinaten konvertieren und diese dann in Breitengrad, Längengrad und Höhe konvertieren. Hier ist eine Seite, die die Umwandlung von ECEF in LLA erklärt: http://www.gmat.unsw.edu.au/snap/gps/clynch_pdfs/coordcvt.pdf

Eine häufige mathematische Schwierigkeit besteht darin, dass die wahre Anomalie und die mittlere Anomalie durch die Kepler-Gleichung zusammenhängen, die eine transzendente Gleichung ist, wie Ihr erster Link erwähnt. Für diesen Teil der Konvertierung wird normalerweise ein iteratives Verfahren wie das Newton-Verfahren verwendet.

Ich kann anscheinend keine Webseite finden, die die Algorithmen zum Konvertieren von TLE in ECEF enthält, aber diese Seite enthält den Algorithmus zum Konvertieren von GPS-Ephemeriden (Orbitalparameter) in ECEF-Koordinaten: http://web.ics.purdue.edu /~ecalais/teaching/geodesy/EAS_591T_2003_lab_4.htm Wenn ich mich richtig erinnere, ist die TLE-Konvertierung ziemlich ähnlich, so dass Sie vielleicht auf den richtigen Weg kommen. Wenn Sie kein Lehrbuch mit dem Algorithmus haben, könnte es online in einer Zeitung oder so sein.

Bitte erweitern und fügen Sie die relevante Mathematik zum Nutzen nachfolgender Besucher hinzu.
Hinweis: Der erste Link ist jetzt tot.

Ich hatte eine ähnliche Frage, und die Verwendung von pyephem, wie von zdRan vorgeschlagen, hat großartig funktioniert, bis auf eine Sache: Das sind Anweisungen für Debian/Ubuntu/etc. Distributionen und ich war auf einer Barebone-CentOS-Installation.

Falls jemand anderes darauf stößt, finden Sie hier die Installationsanweisungen, die anstelle des ersten Blocks in zdRans Beitrag verwendet werden:

sudo yum install python
sudo yum install python-devel
sudo yum upgrade python-setuptools
sudo yum install epel-release
sudo yum install python-pip
sudo yum install gcc
sudo pip install pyephem

Das epel-releasewird benötigt, da pip nicht Teil der Kernpakete für CentOS ist, sondern Teil der erweiterten Pakete. gccmuss nur installiert werden, wenn Sie es noch nicht haben (Sie können es whereis gcczur Überprüfung verwenden, aber yum wird nicht installiert, wenn es bereits vorhanden ist, also nicht unbedingt erforderlich).

Von dort weiter wie oben, funktioniert super.

(Dies war unter CentOS 7, aber ein ähnliches Verfahren sollte für die meisten CentOS/Red Hat/Fedora-Distributionen funktionieren.)