Hier werden die Unterschiede zwischen zwei Versionen gezeigt.
Beide Seiten der vorigen Revision Vorhergehende Überarbeitung Nächste Überarbeitung | Vorhergehende Überarbeitung | ||
ws2021:raketenbahn [2021/04/07 02:38] konstantinflorian |
ws2021:raketenbahn [2021/04/07 19:52] (aktuell) konstantinflorian |
||
---|---|---|---|
Zeile 1: | Zeile 1: | ||
- | ====== Projekt Raumflug====== | + | ====== Dokumentation - Projekt Raumflug====== |
Zeile 7: | Zeile 7: | ||
Startdatum und Länge der Simulation sind ebenfalls einzustellen, wobei das Programm die Anfangsstadien der Objekte durch das Webinterface HORIZONS der NASA erhält. | Startdatum und Länge der Simulation sind ebenfalls einzustellen, wobei das Programm die Anfangsstadien der Objekte durch das Webinterface HORIZONS der NASA erhält. | ||
+ | {{:ws2021:raumflug.gif?800|}} | ||
- | ===== Teilnehmer:===== | ||
- | * Konstantin | ||
- | * Kai | ||
- | =====Berechnung:===== | + | __**[[ws2021:raketenbahn:Berechnung|Berechnung]]\\ |
+ | \\ | ||
+ | [[ws2021:raketenbahn:Gestaltung|Gestaltung]]\\ | ||
+ | \\ | ||
+ | [[ws2021:raketenbahn:Protokoll|Protokoll]]\\ | ||
+ | \\ | ||
+ | [[ws2021:raketenbahn:Sourcecode|Sourcecode]]\\ | ||
+ | \\ | ||
+ | [[ws2021:raketenbahn:Fazit_und_weitere_Schritte|Fazit und weitere Schritte]]\\ | ||
+ | \\ | ||
+ | [[ws2021:raketenbahn:Quellen|Quellen]] | ||
- | Die Koordinaten aller Objekte innerhalb des Sonnensystems werden numerisch für jeden Zeitschritt neu berechnet. Dafür wird für jeden Frame die Krafteinwirkung **aller Objekte auf alle Objekte** ermittelt und der Position zugerechnet. | + | **__ |
- | Innerhalb dieses Systems befindet sich der Satellit. Um einen energieeffizienten Raumflug zu errechnen wird der Hohmann-Transfer genutzt, welcher die Geschwindigkeitsdifferenzen sowie die Zeitpunkte der Beschleunigungen ausgibt. | ||
- | Nachdem die Beschleunigungen an gegebenen Zeitpunkten durchgeführt wurden, wird der Satellit rein durch die Gravitation der Sonne sein Ziel erreichen. | ||
- | =====Gestaltung:===== | + | __**Teilnehmer:**__\\ |
- | + | - Kai Will\\ | |
- | Die erste Ausarbeitung des Projekts geschah zweidimensional. Genutzt wurde das Modul Matplotlib, da wir schon eine gewisse Erfahrung damit hatten.\\ | + | - Konstantin Florian Kalla |
- | Nach der Entscheidung NASA HORIZONS zu nutzen und der relativ simplen Umgestaltung unserer zwei-dimensionalen Berechnung in eine drei-dimensionale haben wir Plotly aufgrund der doch einfachen Bedienung für die Visualisierung gewählt. | + | |
- | + | ||
- | Wichtig für den Plot ist:\\ | + | |
- | - ein klar zu erkennendes Koordinatensystem\\ | + | |
- | - die Möglichkeit weitreichende Anpassungen durchzuführen\\ | + | |
- | - flüssige Animationen\\ | + | |
- | - eine schnelle Umsetzung der Daten in einen Plot\\ | + | |
- | + | ||
- | + | ||
- | =====Ablauf und Zeitplan===== | + | |
- | Unser Plan ist es zunächst das Sonnensystem und dann den Raumflug zu programmieren | + | |
- | + | ||
- | + | ||
- | ===04-10.01.2021=== | + | |
- | - Erste große Recherche über die Gesetze denen ein Raumflug folgt.\\ | + | |
- | - Formelsammlung und grobes erfassen der Planetendaten | + | |
- | + | ||
- | ===11-17.01.2021=== | + | |
- | - Große Tabelle zu allen Informationen über die Planeten angefertigt\\ | + | |
- | - Konzept des Hohmann-Transfers angeschaut\\ | + | |
- | - Idee vielleicht erstmal sehr simpel bei Turtle zu programmieren um die Berechnung zu testen | + | |
- | + | ||
- | ===18-24.01.2021=== | + | |
- | - Entscheidung Matplotlib zu nutzen, denn: | + | |
- | -Relativ einfache Konfiguration | + | |
- | -Erfahrung | + | |
- | + | ||
- | ===25-31.01.2021=== | + | |
- | - Berechnung der Gravitation in code umgewandelt\\ | + | |
- | - Erste Tests der Funktion und der Versuch diese in eine Visualisierung einzubetten | + | |
- | + | ||
- | ===01-06.02.2021 === | + | |
- | - haben Pro und Contra von plotly und Matplotlib gegenübergestellt\\ | + | |
- | - Entscheidung, dass alle Objekte aktiv berechnet werden und nicht vorgefertigten Bahnen folgen\\ | + | |
- | + | ||
- | ==**plotly:**== | + | |
- | ==Pro:== | + | |
- | + | ||
- | - Es zeigt sich, dass Plotly sehr viel besser für das platten drei-dimensionaler Daten geeignet ist\\ | + | |
- | - Eine Einfache aber dennoch weitreichende Konfiguration \\ | + | |
- | - Einfaches nutzen der Animation-Funktion\\ | + | |
- | + | ||
- | ==Contra:== | + | |
- | - kaum Kenntnisse zu diesem Programm\\ | + | |
- | - lange Ladezeiten der Animation | + | |
- | + | ||
- | ===07-13.02.2021 === | + | |
- | + | ||
- | - Ausarbeitung von der Gravitation und des Hohmann Transfer\\ | + | |
- | - Einarbeitung in die Visualisierung | + | |
- | + | ||
- | ===Hohmann-Transfer=== | + | |
- | Der Hohmann-Transfer ist eine energie- und zeiteffiziente Methode, von einer Umlaufbahn um einen Körper auf eine andere zu gelangen. In unserem Fall wollen wir unsere Rakete von einem Planeten, beziehungsweise dessen Umlaufbahn um die Sonne zu einen anderen Planeten lenken. Beim Hohmanntansfer wird die Rakete zweimal beschleunigt, einmal, um von der ursprünglichen Umlaufbahn auf eine Ellipsenbahn zu kommen, und dann, um von der Ellipsenbahn auf die endgültige Umlaufbahn zu kommen. Durch die erste Beschleunigung wird das Aphel der Flugbahn auf die geplante Umlaufbahn angehoben, durch die zweite Beschleunigung, wenn die Rakete das Aphel erreicht hat, wird auch das Perihel angehoben, damit die Rakete die Ellipsenbahn verlässt und auf neuen Umlaufbahn bleibt. Aphel ist der von der Sonne am weitesten entfernteste Punkt und das Perihel der sonnennächste Punkt auf der Ellipse. | + | |
- | + | ||
- | Die Geschwindigkeitsänderungen lassen sich mit folgenden Konstanten berechnen: | + | |
- | + | ||
- | M = Masse des Zentralkörpers, in diesem Fall der Sonne | + | |
- | G = Gravitationskonstante | + | |
- | ra = Zielradius | + | |
- | re = Anfangsradius | + | |
- | a = große Halbachse der Ellipse = (re+ra)/2 | + | |
- | va = Anfangsgeschwindigkeit | + | |
- | vz = Bahngeschwindigkeit des Zielorbits | + | |
- | + | ||
- | Die Formel für die erste Geschwindigkeitsänderung dv1 ist: | + | |
- | + | ||
- | dv1 = sqrt[(M*G*ra)/(re*a)] - va | + | |
- | + | ||
- | Die Formel für die zweite Geschwindigkeitsänderung dv2 ist: | + | |
- | + | ||
- | dv2 = vz - sprt[(M*G*re)/(ra*a)] | + | |
- | + | ||
- | + | ||
- | Weil wir die Rakete nicht nur von einer Umlaufbahn auf eine andere schicken wollen, sondern sie bei einem Planeten startet und auch bei dem anderen Planeten und nicht nur auf dessen Umlaufbahn ankommen soll, müssen auch die Positionen der Planeten zueinander und deren Geschwindigkeiten berücksichtigt werden. Dafür muss die Dauer des Fluges der Rakete von der einen Umlaufbahn zur anderen berechnet werden und die Rakete muss genau in dem Moment starten, wenn der Zielplanet zu dem Punkt genau so lange braucht wie die Rakete. | + | |
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | ===== Literatur:===== | + | |
- | + | ||
- | ===Internetquellen:=== | + | |
- | + | ||
- | [[https://www.instructables.com/Calculating-a-Hohmann-Transfer/]] | + | |
- | [[https://pythonhosted.org/OrbitalPy/examples/plotting/plotting/]] | + | |
- | [[https://astronomy.stackexchange.com/questions/7806/exercise-2d-orbital-mechanics-simulation-python]] | + | |
- | [[https://thecleverprogrammer.com/2020/10/07/visualize-a-solar-system-with-python/]] | + | |
- | [[https://www.instructables.com/Calculating-a-Hohmann-Transfer/]] | + | |
- | [[https://physik.cosmos-indirekt.de/Physik-Schule/Hohmann-Transfer]] | + |