Schub- und Rotationsstrategie, um eine Standard-GTO-Umlaufbahn mit Ionenantrieb zu kreisförmigisieren?

Die vorherige Frage Wie lange dauert es, eine GTO-Umlaufbahn mit Ionenantrieb zu kreisförmigisieren? hat eine gute, quantitative Antwort basierend auf einem bekannten Delta-v.

Aber ich frage mich, wie Sie eigentlich einen kontinuierlichen Ionenschub anstreben würden, wenn Sie sich zu Beginn in einer stark elliptischen Umlaufbahn bewegen? Gibt es eine Möglichkeit, dies zu tun, ohne viel Treibmittel zu verschwenden? Oder verwenden Sie den Schub nur während eines Bruchteils der Umlaufbahn (am Anfang) in der Nähe der Periapsis, und daher dauert es länger, das Delta-V zu akkumulieren, weil das Triebwerk tatsächlich die meiste Zeit ausgeschaltet ist?

Hier ist eine schnelle, alberne Berechnung, die zeigt, dass es für 0,2 N und 2200 kg, beginnend bei 300 km LEO, etwa 600 Tage dauert, um langsam zu GEO zu gelangen. Der Satellit dreht sich einmal pro Umdrehung um die Erde, also muss ich die Rotationsrate ab und zu ein winziges bisschen verlangsamen, um sie synchron zu halten, damit der Schub immer tangential zur kreisförmigen Umlaufbahn ist.


Angenommen, ich möchte von einer standardmäßigen Hohman-Transfer-Ellipse (GTO) ausgehen und mein Programm erneut ausführen. Periapsishöhe 300 km, Apoapsis bei GEO. Nehmen wir an, es gibt nichts anderes bei GEO, mit dem man kollidieren könnte, um es einfach zu machen.

F1: Sollte sich das Raumschiff langsam drehen oder eine feste Lage haben, vielleicht tangential zur Apoapsis, um die geringste Menge an Ionentreibstoff zu verwenden? Bei Rotation mit konstanter oder ansteigender Rate?

F2: Wie würde man den Schub und die Lage modulieren, um einen standardmäßigen elliptischen GTO mit dem 0,2N-Ionenantrieb in kürzester Zeit kreisförmig zu machen?

Geben Sie hier die Bildbeschreibung ein

def deriv(X, t):

    r, v  = X.reshape(2, -1)
    vhat  = v / np.sqrt((v**2).sum())
    rhat  = r / np.sqrt((r**2).sum())
    rsq   = (r**2).sum()

    acc_grav   = -GMe * rhat  / rsq
    acc_thrust = vhat * acc   # right now, thrust is just in vhat direction

    return np.hstack((v, acc_grav + acc_thrust))


import numpy as np
import matplotlib.pyplot as plt
from scipy.integrate import odeint as ODEint

GMe = 3.986004418E+14  # m^3/s^2

re  = 6371.E+03   # m
alt = 300.E+03    # m
a   = re + alt    # m
v0  = np.sqrt(GMe / a)  # vis-viva equation for circular

T = 2. * np.pi * a / v0
print "period (min) ", T/60., " at ", alt, " km altitude."

acc  = 0.2/2200.  # m/s^2  0.2N and 2200kg

X0   = np.array([a, 0, 0, 0, v0, 0])  # initial state vector

days = np.linspace(0, 600, 100000)
t    = days * 24. * 3600.

tol  = 1E-10  # good enough for rough answer but not an accurate trajectory
answer, blob = ODEint(deriv, X0, t, rtol=tol, atol=tol, full_output=True)

xp, yp  = 0.001*answer.T[:2]
alti_km = np.sqrt(xp**2 + yp**2) - 0.001*re

if 1 == 1:
    plt.figure()
    plt.subplot(3, 1, 1)
    plt.plot(days, xp)
    plt.plot(days, yp)
    plt.title('x, y (km)')
    plt.subplot(3, 1, 2)
    plt.plot(xp, yp)
    plt.title('xy (km)')
    plt.subplot(3, 1, 3)
    plt.plot(days, alti_km)
    plt.title('altitude (km)')
    plt.show()
Wenn Sie die Zeit haben, sollte eine Reihe von kurzen fortschreitenden Verbrennungen um die Periapsis jeder Umlaufbahn herum effizienter sein als ein kontinuierlicher Schub, wobei der Oberth-Effekt ausgenutzt wird. Ich vermute jedoch, dass die meisten Ionentriebwerkssatelliten einen höheren Aufschlag auf die Zeit bis zur Station legen als auf die ∆v-Ausgaben. en.wikipedia.org/wiki/Oberth_effect
Ja, das würde ich auch vermuten. Ich fing an, darüber nachzudenken, als ich die verlinkten Fragen und Antworten las – es sah so aus, als ob entweder die Mathematik nicht berücksichtigte, dass Sie Schub teilweise nicht effektiv einsetzen können, oder dass der GTO eigentlich keine Ellipse war – was zu dem Bonus führte Teil hier.
Ich konnte Ihrer simulierten Strategie nicht ganz folgen, aber für einen kontinuierlichen Schub vom traditionellen niedrigen Perigäum, dem GEO-Höhenapogäum, möchten Sie am Apogäum direkt nach unten stoßen (um ein Anheben zu vermeiden), aber am Perigäum prograd. Sie müssen sich also am eingehenden Schenkel um 90 Grad und am ausgehenden um 270 Grad drehen!
OK, ich probier es mal aus, das klingt auf jeden Fall vernünftig. Ich habe dieses komische Gefühl, dass es analytisch gemacht (oder zumindest angenähert) werden kann, aber jetzt, wo Laptops ein Gigaflop sind, ist es leicht, faul zu sein.
Ja, ich würde beim Rechnen den Verstand verlieren :)
@RussellBorogove Fortschreitende Verbrennungen an der Periapsis? Dies kreisförmigisiert die Umlaufbahn nicht. Es hebt die Apoapsis an und verleiht der Ellipse mehr Exzentrizität. Um zu zirkulieren, benötigen Sie Verbrennungen bei prograden Verbrennungen bei Apoapsis (dies erhöht die Pariapsis und senkt die Exzentrizität). Und Apoapsis-Verbrennungen sind nicht gut, um den Vorteil von Oberth auszunutzen.
Ach du meine Güte. Tut mir leid, ich weiß nicht, was ich mir dabei gedacht habe – heute Morgen vor dem Kaffee gepostet.

Antworten (2)

TL; DR: Die Trajektorienoptimierung für kontinuierlichen Schub ist schwierig und dieses Gebiet ist sehr aktiv in der Forschung.

Klarstellungen 2021:

Methodik

  1. Für die geringste Kraftstoffmenge ist es am besten, so wenig Zeit wie möglich und nur dann Schub zu geben, wenn er äußerst effizient ist ( η 0,98 ). Das bedeutet aber auch, dass es unglaublich lange dauern wird, bis die gewünschte Umlaufbahn erreicht ist.
  2. Um umgekehrt in kürzester Zeit eine Umlaufbahn zu erreichen, sollte man so viel Schub wie möglich geben, auch wenn es nicht so effizient ist.
  3. Typischerweise legen wir bei der Flugbahnoptimierung eine maximale Transferzeit fest und optimieren für den niedrigsten Gesamtschub über die Zeit (d. h. den niedrigsten Gesamtwert). Δ v ) in dieser maximalen Zeit. Dies ermöglicht ein feines Gleichgewicht zwischen "geringster Treibstoffmenge" und "dieses Raumschiff in seine Missionsbahn bringen und mit der Wissenschaft beginnen/Geld verdienen".

In dieser älteren Antwort erwähne ich die Ruggiero-Kontrollgesetze: Diese liefern die effizientesten Schubwinkel basierend auf einer echten Anomalie, um ein Orbitalelement (oder einen Satz davon) zu ändern. Das Papier liefert auch die partiellen Ableitungen der Gleichungen, die man verwenden kann, um die Effizienz zu bestimmen ( η ) ein Orbitalelement an einer gegebenen wahren Anomalie zu modifizieren.

Antworten

Diese Antworten sind spezifisch für das Anheben der großen Halbachse und das Erreichen einer Exzentrizität von Null. Es beantwortet nicht die Lösung für eine echte GEO-Umlaufbahn, die zusätzliche Einschränkungen für die Neigung (nahe Null) und andere Umlaufbahnelemente hat, die für eine bestimmte Mission spezifisch sind.

F1: Sollte sich das Raumschiff langsam drehen oder eine feste Lage haben, vielleicht tangential zur Apoapsis, um die geringste Menge an Ionentreibstoff zu verwenden? Bei Rotation mit konstanter oder ansteigender Rate?

Wenn Ihr Schub immer in Richtung des Geschwindigkeitsvektors ist, erhöhen Sie kontinuierlich die Geschwindigkeit des Raumfahrzeugs und erhöhen daher Ihre SMA (zusammen mit der Änderung anderer Elemente). Um eine Umlaufbahn zu kreisförmigisieren, müssen Sie nur Ihre Periapse anheben, bis sie mit Ihrer Apapse übereinstimmt. Um Ihren SMA zu erhöhen, müssen Sie die ganze Zeit stoßen ... aber das wird Ihre Exzentrizität beeinträchtigen. Daher ist der beste Ansatz wahrscheinlich, Ihren SMA bis GEO anzuheben und dann Ihre Umlaufbahn zu kreisen. Um möglichst wenig Treibstoff zu verbrauchen, sollten Sie Ihren Motor nur einschalten, wenn Sie sich in einem sehr kleinen Bereich Ihrer Periapse befinden, so dass Ihre Apapse eine halbe Umlaufbahn später sehr leicht erhöht ist. Wiederholen Sie das, bis Sie Ihren Ziel-SMA erreicht haben. Dann zirkulieren.

F2: Wie würde man den Schub und die Lage modulieren, um einen standardmäßigen elliptischen GTO mit dem 0,2N-Ionenantrieb in kürzester Zeit kreisförmig zu machen?

Man würde die Winkel in der Ebene und außerhalb der Ebene kontinuierlich schieben und variieren, so dass sowohl die Neigung als auch die SMA zu jedem Zeitpunkt während der gesamten Umlaufbahn modifiziert werden, jedoch durch Gewichtung eines der Umlaufbahnelemente mehr als das andere basierend auf ihre Effizienz. Das High-Fidelity Nyx-Astrodynamik-Toolkit bietet die Ruggiero-Kontrollgesetze sofort einsatzbereit.

Alle Details (2017)

Bearbeiten: In Bezug auf die Rotation Ihres Raumfahrzeugs möchten Sie die Schubwinkel in der Ebene und außerhalb der Ebene (in Bezug auf den RNC-Rahmen des Raumfahrzeugs) darstellen. Das gibt Ihnen eine Vorstellung davon, wie viel die Motoren kardanisch aufhängen müssen, bevor sie stoßen. Dieser Winkel hängt vollständig davon ab, welche Orbitalparameter Sie ändern (vgl. Steuergesetze von Naasz, Ruggiero und Petropoulos). Ich gehe davon aus, dass sich dieser Winkel während einer Umlaufbahnkorrektur nicht wesentlich ändert, aber ich kann mich irren (hoffentlich habe ich bald eine Antwort ). Diese Erwartung basiert auf den Gleichungen, die die augenblicklich optimale Korrektur jedes Parameters durchführen, vgl. Abbildungen 4 und 5 unten.

Wenn Sie kontinuierlichen Schub verwenden, möchten Sie im Allgemeinen das Problem der optimalen Steuerung lösen. Beim Lösen eines Problems der optimalen Steuerung minimieren Sie eine Funktion, dh Sie suchen nach einer Funktion (der Steuerung), die Ihre Kostenfunktion bei jedem Zeitschritt minimiert (siehe Screenshot der Präsentation meiner Gruppe unten).

Es gibt verschiedene Möglichkeiten, das Problem der optimalen Steuerung für das Design von Trajektorien mit niedrigem Schub zu lösen, und (wie leider oft) ist jede Gruppe von Forschern etwas isoliert.

Aus der (unveröffentlichten) Forschung, die zwei Kollegen und ich durchgeführt haben, gibt es einige Strategien, um dieses Problem zu lösen, die ich im Folgenden zusammenfasse. Alle außer dem ersten lösen ein optimales Steuerungsproblem.

  1. Am einfachsten: Verwenden Sie ein suboptimales Regelungsgesetz (wie das Petropoulos-Q-Gesetz), das einem Optimierer wie einem genetischen Algorithmus zugeführt wird. Dies führt zu einer suboptimalen Lösung für die Trajektorie, liegt aber oft sehr nahe an der optimalen Lösung. Alles, was Sie brauchen, ist das Q-Law und das GA zu codieren und eine Anfangs- und Endumlaufbahn zu definieren. Andere Steuerelemente, die es wert sind, überprüft zu werden, sind Naasz und Ruggiero (beachten Sie jedoch, dass die ursprüngliche Formulierung für das Naasz-Steuerelement nur in Fällen validiert wurde, in denen Sie den Wert eines Orbitalparameters erhöhen möchten und Sie eine geringfügige Änderung an den vorzunehmenden Gleichungen vornehmen müssen es funktioniert anders (ich kann die Informationen bei Bedarf bereitstellen, ich habe die Änderungen in meiner eigenen Forschung validiert)).

  2. Die theoretischste und mathematiklastigste Methode: die indirekten Methoden, die das Zweipunkt-Randwertproblem lösen, indem sie den Hesse-Wert finden. Erfordert die gewünschten Anfangs- und Endbedingungen. Es gibt mehrere solcher Methoden, die größtenteils 1998 von Betts eingeführt wurden, darunter Direct Shooting, Indirect Shooting und in jüngerer Zeit indirekte Kollokation. Eines der Probleme, auf die Sie stoßen werden, ist die Auswahl der anfänglichen Lagrange-Multiplikatoren, da Sie wissen, dass eine schlechte Wahl die Konvergenz verhindern kann. Außerdem führen diese Verfahren zu Open-Loop-Lösungen.

  3. Direkte Methoden: Die Zeit wird diskretisiert und bei jedem Schritt versucht man, die beste Kontrolle zu finden. Auch dies ist ein Open-Loop-Verfahren, und aufgrund der Problemstellung stößt man auf den Fluch der Dimensionalität (vgl. Lantoine 2012). Dennoch wird dies von manchen als Stand der Technik der Trajektorienoptimierung angesehen (vgl. „Spacecraft trajectory optimizer“, Conway 2010).

  4. Ein besserer Weg: dynamisches Programmieren: Die Idee hier ist, das Problem in einfachere unabhängige Probleme aufzuteilen (ein „Teile und herrsche“-ähnlicher Ansatz) und das Prinzip der Optimalität anzuwenden (Bellmans Graphtraversing-Prinzip, bei dem der kürzeste Weg von a nach c entspricht dem kürzesten Weg von a nach b und von b nach c) (vgl. Abbildung 2). Der Hauptnachteil hier ist, dass die Aufteilung des Zustandsraums in unabhängige Unterprobleme bedeutet, dass Sie eine Menge Speicher verwenden werden, um die laufenden Lösungen zu speichern ... und dann müssen Sie diesen Graphen durchlaufen. Der Hauptvorteil besteht jedoch darin, dass Sie immer die global optimale Lösung finden und die zurückgegebene Funktion eine Regelung mit geschlossenem Regelkreis ist.

  5. Differenzielle dynamische Programmierung: Dies ist an sich keine sehr neue Methode, aber sie gewinnt in der jüngeren Geschichte definitiv wieder an Bedeutung. Insbesondere wird es in NASA Mystic verwendet, das die Flugbahnoptimierung für die Dawn-Mission durchführt (die drei Safran PPS-1350 hat, aber jeweils nur eine eingeschaltet ist, es ist eine ziemlich coole Mission). Die Idee dieser Methode besteht darin, eine anfängliche Schätzung für die Steuerung auszuwählen, die (echte) Dynamik vorwärts zu propagieren, die Kosten zu berechnen und eine Korrektur der Steuerung durch Rückwärtspropagation durchzuführen (aber unter Verwendung einer quadratischen Annäherung der Dynamik (d. h. Sie werden brauchen die Zustandsübergangsmatrix und auch die Jacobi-Matrix des STM, die die Hessische der Dynamik ist)), und prüfen Sie schließlich, ob Sie die Kostenfunktion minimieren, indem Sie wieder vorwärts propagieren (vgl. Abbildung 3). Die Referenzen Sie'

Ich hoffe das hilft!

Abbildung 1Abbildung 1

Figur 2Figur 2

Figur 3Figur 3

Figur 4Figur 4

Abbildung 5Abbildung 5

Das ist eine wirklich schöne Antwort! Ich denke, es verdient eine bessere Frage als diese. Für ein eingeschränktes Problem eines elliptischen 300 x 35786 GTO zu einem kreisförmigen GEO ist es möglich, dass eine vereinfachende "sich entwickelnde Ellipse"-Methode besser wäre als eine Punkt-für-Punkt-Iteration über die gesamte Umlaufbahn. Der Haken dabei ist, dass sich der Satellit drehen sollte, damit der Motor immer dann, wenn er auf die Periapsis trifft, in die richtige Richtung zeigt und wahrscheinlich 400 oder 500 Umlaufbahnen umfasst, jede etwas größer. Was Sie hier haben, eignet sich besser für das Problem, wie man durch die Mannigfaltigkeit zu Jupiter kommt.
Danke :-) Lassen Sie mich die Antwort bearbeiten, um über das Rotationsproblem zu sprechen, das meistens kein Problem ist.
Ich denke immer noch, dass diese Antwort eine viel bessere Frage verdient als diese.
Mir wurde klar, dass dies zwar Wege erklärt, wie man eine Strategie bestimmen kann, aber nicht wirklich eine nennt. Q und Q2 sind zwei sehr klare Fragen, und beide werden hier nicht beantwortet. Was ich vor vier Jahren zu höflich war, um zu sagen, ist, dass dies zwar wahrscheinlich eine andere Frage sehr gut beantwortet, aber meine Frage nicht so beantwortet, wie sie gestellt wurde. Also habe ich nicht akzeptiert und beschlossen, dies wieder ins Spiel zu bringen.
@uhoh Aktualisiert ;-)
Super! Natürlich sind "wenn Sie sich in einem sehr kleinen Bereich Ihrer Periapse befinden" und "niedriger Schub (0,2 N)" nicht so kompatibel, aber lassen Sie mich etwas Zeit nehmen, um Ihre umfangreiche Bearbeitung durchzulesen, danke!

Ich habe diese Antwort ursprünglich hier gepostet . Das ist eine Zahl, die ich von einer Klassenaufgabe von vor ein paar Jahren habe. Obwohl es definitiv keine praktische Flugbahn ist, zeigt es die Eigenschaften, wie man von einer elliptischen auf eine kreisförmige Umlaufbahn übergeht. Schubarmer Übergang von einer elliptischen auf eine kreisförmige UmlaufbahnDiese Lösung wurde mit indirekter Optimierung berechnet. Dieses Problem ging von einer konstanten Schubgröße aus (das Triebwerk feuert also immer), wobei die Steuervariable der Schubwinkel ist. Die Zielfunktion war min(t_f).

Wie die Abbildung zeigt, liegen die Schubvektoren (gelbe Pfeile) ungefähr in Geschwindigkeitsrichtung in der Nähe von Periapsis und Apoapsis, und sie stehen ungefähr senkrecht zwischen den Apsen. Wenn die Schubvektoren im Allgemeinen mit dem Geschwindigkeitsvektor (parallel oder antiparallel) übereinstimmen, passen sie die Orbitalenergie an (und erhöhen/verringern daher die große Halbachse). Wenn die Schubvektoren senkrecht zur Geschwindigkeit sind, passen sie die Exzentrizität (Form) und das Argument der Periapsis (Orientierung) der Umlaufbahn an.

Dieses Problem ist 2D, aber um eine Neigungsänderung zu erreichen, sollten Sie in der Nähe der Apsiden aus der Ebene stoßen. Sie können sich dies so vorstellen, dass es bei der Periapsis "in die Seite" zeigt und sich langsam nach oben dreht, bis es sich in der Mitte in der Ebene befindet, und schließlich bei der Apoapsis "aus der Seite heraus".

Ein realistischerer Transfer von GTO zu GEO würde VIEL mehr Spiralen verwenden als bei diesem Problem (das ein doofer Transfer von einer verrückten elliptischen Umlaufbahn zur Umlaufbahn des Mars ist). Bei einem CubeSat oder Smallsat mit sehr begrenztem Antrieb könnte ein Transfer von etwa 6 Monaten über 250 Spiralen dauern!

Eine weitere bemerkenswerte Unterscheidung besteht darin, dass dieses Problem eine minimale Zeit im Gegensatz zu einer minimalen Brennstoffübertragung löste. Im Allgemeinen sind Probleme mit minimalem Kraftstoffverbrauch bekanntermaßen viel schwieriger mit indirekter Optimierung zu lösen, und es ist üblich, Homotopie zu verwenden, um zuerst das Problem min (u ^ 2) zu lösen (wobei u der Steueraufwand ist, in diesem Fall die Schubgröße ) und dann mit ausgefallener Mathematik Schritt für Schritt näher und näher an min(u) heran. Das min(u^2)-Problem hat einen viel größeren Konvergenzradius, so dass erfolgreiche anfängliche Schätzungen der Küsten viel einfacher zu finden sind. Diese numerischen Schwierigkeiten sind mit ein Grund, warum in der Praxis fast immer direkte Methoden bevorzugt werden. Bei Transfers mit sehr geringem Schub kann ein Transfer in minimaler Zeit oft nahe an einem Transfer mit minimalem Treibmittel liegen.

Wenn Sie einen hohen Schub zur Verfügung haben, würde ein GTO-zu-GEO-Transfer mit impulsiven Manövern an den Apsis abgeschlossen werden. Wenn Ihr maximales Schubniveau abnimmt, müssen Sie entweder über größere Abschnitte der Umlaufbahn schieben, Sie müssen für mehr Umlaufbahnen schieben oder beides. Verfügbare Treibstoff- und Zeitbeschränkungen bestimmen die endgültige Trajektorienauswahl.

Das ist großartig, danke!