10

Ich benutze sgp4 Python-Paket (entwickelt von Brandon Rhodes); Ich gebe die TLE-Informationen für ISS (Zarya) ein. Ich erhalte die Position des Satelliten zu einem bestimmten Zeitpunkt im ECI-Koordinatensystem. Ich möchte es jedoch in das ECEF-Koordinatensystem konvertieren.Python-Koordinatentransformation ECI zu ECEF

Es sind mindestens zwei Instanzen von Matlab-Funktionen implementiert (ecitoecef, eci2ecef) und eine C-Funktion (eci2ecef) für das RTKLIB-Projekt implementiert (Ich kann keine Links posten, da ich pro Frage zwei Links pro Frage habe) das ist meine erste Frage und ich habe Ruf 1)

Ich konnte nicht finden, eine Python-Funktion implementiert. In dieser vorherigen Frage Python satellite tracking with spg4, pyephem- positions not matching der Benutzer jedoch sagt "Ich fand atleast Teil des Problems. Spg84.propagate() gibt den Speicherort in ECI, nicht ECEF. Schnell durch eci2ecef laufen und es perfekt mit der Vorhersage Antwort ausgerichtet . "

Ist das eci2ecef bezieht sich auf eine Python-Implementierung? Ist das online verfügbar? Gibt es ein Online-Dokument, das genau erklärt, was zu tun ist, wenn ich selbst implementiert werde? In dieser Frage How do I convert ECI coordinates to longitude latitude and altitude to display on a Map? in einem Kommentar sagen sie "Sie unterscheiden sich durch die Rotationsrate der Erde, so dass die Transformation ist nur ein 2-D cos sin; -sin cos-Typ zu transformieren.". Was ist der Winkel der Transformation? Ist es die Greenwich Sideral Time? Wenn wir sgp4 verwenden, ist es auch die GST, die wir spezifizieren, oder eine andere Zeit?

Vielen Dank für Ihre Hilfe!

Antwort

6

Zunächst studierte ich das Papier AIAA 2006-6753, die online unter Celestrak ist, und die die Grundlage für die Herstellung der sgp4 Bibliothek in Python an erster Stelle:

http://celestrak.com/publications/AIAA/2006-6753/

Auf der Grundlage seiner Empfehlungen - und insbesondere auf die Informationen in seinem Anhang - Ich versuche, Erdsatelliten in meine neue Skyfield-Astronomie-Bibliothek zu integrieren. Eine neue Version mit dieser Arbeit sollte bald erscheinen, aber in der Zwischenzeit können Sie die Transformationen studieren, die ich verwende (basierend auf dem obigen Papier) an:

https://github.com/brandon-rhodes/python-skyfield/blob/master/skyfield/sgp4lib.py

Ich bin nicht sicher, dass ich das habe Transformationen korrekt, aber werde die Ergebnisse gegen so viele offizielle Quellen von Positionen überprüfen, wie ich finden kann, um festzustellen, ob ich irgendeinen systematischen Fehler gemacht habe.

1

Die Umwandlung von ECI in ECEF ist auch in satellite-js implementiert, die von PyEphem abgeleitet ist.

Möglicherweise müssen Sie die Richtigkeit überprüfen.