Simulering av landing

N? skal vi pr?ve ? simulere en landing. Vi bruker modellen for atmosf?ren og verdier vi har regnet ut til ? se om vi kan klare ? lande p? planeten.

Vi begynner med ? merke oss at formelen for luftmotstand, \(F_d\) er gitt i polare koordinater. N?r vi sjekker posisjonen v?r med instrumentene om bord p? romskipet, f?r vi kartesiske koordinater tilbake. La oss begynne med ? utlede posisjon og hastighet fra kartesiske koordinater til polare. Vi starter med ? definere enhetsvektorene\(\hat{\textbf{e}}_r\) og \(\hat{\textbf{e}}_\theta\). Siden vi til enhver tid kommer til ? befinne oss langs planetens ekvator, vil komponenten i z-retning alltid v?re 0. Vi f?r:

\(\begin{align} \hat{\textbf{e}}_r&=r\,\cos\big(\theta(t)\big)\hat{\textbf{x}}+r\,\sin\big(\theta(t)\big)\hat{\textbf{y}}\\ \hat{\textbf{e}}_\theta&=-r\,\sin\big(\theta(t)\big)\hat{\textbf{x}}+r\,\cos\big(\theta(t)\big)\hat{\textbf{y}} \end{align}\)

Figur 1. Illustrasjon av polare koordinater. 

Dere kan sjekke at dette stemmer ved ? bruke Pythagoras' l?resetning. Vi kan ogs? sjekke hva som skjer om vi deriverer disse enhetsvektorene med hensyn p? tid. Merk at vi her m? bruke kjerneregel. Vi f?r 

\(\begin{align} \frac{d\,\hat{\textbf{e}}_r}{dt}&=-r\,\sin\big(\theta(t)\big)\cdot\frac{d\theta(t)}{dt}\hat{\textbf{x}}+r\cos\big(\theta(t)\big)\cdot\frac{d\theta(t)}{dt}\hat{\textbf{y}}\\ &=\omega(t)\cdot\hat{\textbf{e}}_\theta\\ \frac{d\,\hat{\textbf{e}}_\theta}{dt}&=-r\,\cos\big(\theta(t)\big)\cdot\frac{d\theta(t)}{dt}\hat{\textbf{x}}-r\,\sin\big(\theta(t)\big)\cdot\frac{d\theta(t)}{dt}\hat{\textbf{y}}\\ &=-\omega(t)\cdot\hat{\textbf{e}}_r \end{align}\)

Husk at den deriverte av \(\theta(t)\) er vinkelfarten\(\omega(t)\). Vi har heller ingen y-komponent i hastigheten v?r. Hvordan kan vi finne hastighetsvektoren i polare koordinater? Jo, vi deriverer posisjonsvektoren! Vi lar \(x\) og \(y\) v?re komponentene til posisjonen i kartesiske koordinater, og \(v_x\) og \(v_y\) v?re komponentene til hastigheten i kartesiske koordinater. Husk at posisjonsvektoren i polare koordinater ser slik ut:

\(\vec{r}=r\,\hat{\textbf{e}}_r\)

hvor \(r=|r|=\sqrt{x(t)^2+y(t)^2}\). Vinkelen \(\theta(t)\) er gitt ved \(\arctan\Big(\frac{y(t)}{x(t)}\Big)\). Sjekk selv, om du ser hvorfor i Figur 1. 

Vi deriverer posisjonsvektoren for ? finne hastighetsvektor. Her m? vi bruke produktregel og kjerneregel flere ganger. Vi starter med radiell komponent, \(r=\sqrt{x(t)^2+y(t)^2}\).

\(\begin{align} v_r=\frac{d\,r}{dt}&=\frac{d}{dt}\bigg(\sqrt{x(t)^2+y(t)^2}\bigg)\\ &=\frac{1}{2\sqrt{x(t)^2+y(t)^2}}\cdot\Big(2x(t)x'(t)+2y(t)y'(t)\Big)\\ &=\frac{x(t)\,v_x(t)+y(t)\,v_y(t)}{\sqrt{x(t)^2+y(t)^2}} \end{align}\)

For ? finne \(\theta\)-komponenten, m? vi derivere \(\arctan\Big(\frac{y(t)}{x(t)}\Big)\). Heldigvis er det ikke s? vanskelig, for vi har at \(\arctan'(x)=\frac{1}{1+x^2}\). Vi f?r da, for tangentiell komponent:

\(\begin{align} v_\theta=r\frac{d\,\theta(t)}{dt}&=r\frac{d}{dt}\Bigg(\arctan\bigg(\frac{y(t)}{x(t)}\bigg)\Bigg)\\ &=r\frac{1}{1+\Big(\frac{y(t)}{x(t)}\Big)^2}\cdot\Bigg(\frac{y'(t)x(t)-y(t)x'(t)}{\big(x(t)\big)^2}\Bigg)\\ &=r\frac{x(t)\,v_y(t)-y(t)\,v_x(t)}{\big(x(t)\big)^2+\big(y(t)\big)^2} \end{align}\)

Dette ble pene utrykk. Nei, da. Men det er s?nn det blir. Vi bruker disse formlene for ? gj?re om fra kartesisk til polare koordinater. Vi g?r ogs? andre veien, men det kommer vi ikke til ? ta med her. Det skal v?re "grei" skuring ? finne ut av det p? egen h?nd, s? dere er velkomne til ? pr?ve selv.

Vi starter klokka og tar tiden. Dette er planen v?r:

Tid (s) Handling
0 Brems romskipet med 20 %.
450 Slipp l?s landingsfart?yet med 1/4 av hastigheten romskipet har.
2500 ?pne fallskjermen.

Dette er verdiene vi kommer til ? bruke:

  Romskip Landingsfart?y Fallskjerm
Areal (m2) 16.0 0.3 70
Masse (kg) 1100.0 90.0 -

Vi har antatt at massen til landingsfart?yet inkluderer fallskjermens masse. 

Det er noen grenser vi vet vi m? forholde oss til. Nemlig at verken romskipet eller landingsfart?yet t?ler et krafttrykk p? over 107 Pa (Pascal: kg/m3). Fallskjermen t?ler heller ikke krefter p? over 250 kN. Dessuten vet vi at grensen for ? f? til en soft landing er 3.0 m/s i radiell retning. Vi plotter derfor verdier for dette og mer, slik at vi kan ha full kontroll over alt som skjer. Dette er resultatet:

Boosted with dv= [1809394.87540424 0. ] at time t= 0 s.
Lander launched with dv= 0.25*vel= [-60.58733923 99.20488693] m/s at t= 450 s.
Opened parachute at t= 2500 s at height 40147 m. Ground hit after 14512.786450127312 s.
Soft landing performed, with final radial velocity v_r=-2.784942675738035 m/s.

Her er plottet av selve landingen:

Figur 2. Simuleringen vi gjorde for landingen med planetens overflate og sentrum. 

Som dere ser, mister vi h?yde n?r vi bremser. Vi har ogs? plottet det slik at massen endres n?r vi velger ? skyte ut landingsfart?yet. Alts? vet vi ikke hva som skjer videre med romskipet. 

Bildet kan inneholde: rektangel, gj?re, parallell, skr?ningen, diagram.
Figur 3. Plott av h?yde over overflaten, hastighetsvektor og absolutt hastighet. 

Vi kan se p? Figur 3 n?r de ulike handlingene ble utf?rt, og hva de gjorde med hastigheten. Det er vanskelig ? se hva som skjer med hastigheten mot slutten av ferden, s? vi kan se p? et plott av bare radiell hastighetskomponent.

Bildet kan inneholde: rektangel, parallell, skr?ningen, gj?re.
Figur 4. Plottet viser radiell hastighet som funksjon av tid.

Her ogs? ser vi hva som skjer med \(v_r\) ved de ulike handlingene. Vi har lagt inn tester i programmet v?rt som forteller oss om vi har for stor hastighet n?r vi lander. Som dere kunne se i stad, hadde vi en hastighet p? under 3 m/s, s? vi klarte en soft landing. 

S? til kreftene og trykket. Det kan v?re vanskelig ? lese av plottet hvilke verdier det blir, men vi har ogs? her lagt inn tester for de ulike grensene. 

Bildet kan inneholde: rektangel, gj?re, parallell, skr?ningen, nummer.
Figur 5. Det ?verste plottet viser trykket p? landingsfart?yet. Det nederste plottet viser kreftene p? fallskjermen.

Vi ser tydelig at trykket aldri blir st?rre enn grensen p? 107 Pa, og at kreftene p? fallskjermen aldri blir st?rre enn 250 kN. Dette lover godt! N? er det p? tide ? teste p? ekte. Vi stiller inn kameraet og filmer alt som skjer. I tillegg f?r vi beskjeder p? instrumentbordet v?rt om noe skulle g? galt. 

En liten ting. Husker dere at vi ?nsket ? lande p? et gitt sted? Det kan vi begynne med ? si at vi ikke kommer til ? f? til. Da vi gjorde de utregningene tok vi ikke hensyn til at romskipet ikke t?lte ? falle evig rundt planeten. Da vi pr?vde ? la romskipet falle til det tidspunktet vi hadde m?linger for, ble friksjonskreftene p? romskipet alt for store. Vi har likevel valgt ? ha med verdier for hvor landingsstedet vi hadde ?nsket ? lande p? vil v?re i det vi lander, og avstanden til det.

Dette er resultatene vi f?r:

Time: 0 s, spacecraft boosted with delta-v (-0, -1764.67, -0) m/s.
Landing module launched at time 450 s with delta-v (-258.257, 98.1683, 0) m/s.
Parachute with area 70 m^2 deployed at time 1200 s.
Successfully landed on planet 6 at time 1560.72 s with velocity 2.79098 m/s.

Dere ser ogs? at vi m?tte gj?re noen sm? endringer. Dette er litt pr?v-og-feil, men vi klarte det! Vil dere se video av hele sulamitten? Vil dere? Ja? Greit, her er den:

Video 1. Hele landingen filmet med kameraet p? romskipet og landingsfart?yet.

Dere kan f?lge hele ferden som den er beskrevet over. Det f?rste som skjer er at romskipet bremser. Dette gj?r at tyngdekraften begynner ? trekke det ned mot planeten. Det neste som skjer er at landingsfart?yet blir skutt ut. Det faller fortere og fortere ned mot bakken, f?r fallskjermen blir skutt ut og vi daler trygt ned p? bakken. 

N? skal vi se p? hvordan simuleringen v?r gikk i forhold til det faktiske resultatet. Vi starter med boosten. Vi beregnet at boosten skulle v?re 

[1809394.87540424       0.        ],

mens den faktisk var 

[0      -1764.0]

Her er det noe rart som har skjedd. Det kan se ut som at det er en faktor 103 som er feil, som kan komme av feil i konvertering mellom meter og kilometer. At boosten faktisk var i y-retning og ikke i x-retning handler mest sannsynlig om at da vi gjorde simuleringen har vi transponert vektoren, slik at vektoren ser slikt ut

\(\begin{align} \begin{bmatrix} x\\ y \end{bmatrix} \end{align}\),

i stedet for slik ut

\(\begin{align} \begin{bmatrix} x&y \end{bmatrix} \end{align}\).

Dette gj?r vi om slik at vi kan ha snudd i feil rekkef?lge. I praksis har det ikke s? veldig mye ? si, annet enn at vi har modellert en ferd oppover mot nordpolen i stedet for langs ekvator. Minustegnet kommer av at da vi simulerte, ville en prosentfaktor av hastighetsvektoren gi en ending i hastighet, mens n?r vi faktisk bremser m? vi bestemme om det er en ?kning eller senkning av hastigheten. Den relative feilen er veldig stor, s? det er ikke noe poeng i ? regne den ut. Lurer du p? hva relativ feil er? Hvis du ikke husker det skal vi friske opp minnet ditt.

F?rst starter vi med absolutt feil. Dette er den tallmessige feilen. For eksempel hvis du skal koke ris og trenger 150 gram. Du f?ler deg selvsikker og pr?ver ? beregne s? n?yaktig du kan mens du heller risen i en sk?l. Deretter m?ler du hvor mye ris det faktisk er i sk?len. La oss si du har v?rt kokk i mange ?r, og dermed har litt erfaring. Du veier risen og ser at du har 147 gram i sk?len. Den absolutte feilen er da

\(|147-150|=3\).

Du bommet med 3 gram, som ikke er s? mye. Gratulerer. Grunnen til at vi bruker absoluttegn er fordi vi kan f? negative tall. Vi er kun interesserte i st?rrelsen til tallet, ikke noe mer. Men hva sier dette tallet deg egentlig? Du fikk en feil p? 3 gram. Det er lite dersom du skal ha 10 kg, men det er mye hvis du skal ha 5 gram. Det er her relativ feil kommer inn. 

Relativ feil er gitt som absolutt feil delt p? st?rrelsen av det du har forventet. Vi kan regne ut den relative feilen du m?lte slik:

\(\begin{align} \frac{|147-150|}{|150|}=\frac{3}{150}=0.02 \end{align}\)

Dette viser at feilen din var p? 2%. Relativ feil brukes alts? n?r du ?nsker ? se hva feilen var i forhold til et ?nsket utfall.

Det neste vi ser p? er boosten vi gir landingsfart?yet i det vi skyter det ut fra romskipet. Vi fikk

[-60.58733923  99.20488693],

mens det faktisk var 

(-258.257, 98.1683, 0).

Her er det nok tydelig en feil i x-retning. Vi f?r en relativ feil p? 

\(\begin{align} \frac{|-60.587-(-258.257)|}{|-258.257|}=\frac{197.670}{258.257}\approx0.765 \end{align}\).

Alts? en ganske stor feil, p? 76.5%. Men i y-retning ser vi at tallene er mer like. Vi f?r 

\(\begin{align} \frac{|99.205-98.168|}{|98.168|}=\frac{1.037}{98.168}\approx0.011 \end{align}\),

alts? en feil p? 1.1%. 

S? til selve tidspunktet for landingen. Vi beregnet at vi skulle lande ved tiden 

14512.786450127312 s,

mens vi faktisk landet ved tiden 

1560.72 s.

Det gir en relativ feil p? 

\(\begin{align} \frac{|14512.786-1560.720|}{|1560.720|}=\frac{12952.066}{1560.720}\approx8.299 \end{align}\),

som er en feil p? 829.9% (!). Heldigvis har dette en logisk forklaring. I innlegget om modellering av atmosf?ren lagde vi oss et worst case scenario. Vi lagde en veldig tynn atmosf?re, som da strekker seg langt over overflaten til planeten. Dessuten gj?r tettheten at den ikke bremser oss s?rlig mye. Med denne modellen kunne vi ansl? at vi ville klare ? lande i en tettere atmosf?re ogs?. 

Helt til slutt skal vi se p? den relative feilen i radiell hastighet ved landing. Vi fikk

-2.784942675738035 m/s

fra simuleringen, mens i virkeligheten hadde vi 

2.79098 m/s.

Minustegnet er for at radiell hastighet er positiv for bevegelse utover fra planeten, mens fra instrumentene v?re f?r vi absolutt hastighet. Vi sl?yfer derfor minustegnet fra v?r m?ling. Den relative feilen her blir

\(\begin{align} \frac{|2.78494-2.79098|}{|2.79098|}=\frac{|-0.006|}{2.79098}\approx0.002 \end{align}\).

Dette gir en feil p? 0.2%, som er ganske lite. Vi hadde nok litt flaks ettersom at vi ikke hadde modellen av atmosf?ren helt rett, men at vi da likevel lander trygt med en s? liten feil er vi meget forn?yde med.

S? til det (for oss) litt kjedelige. Landingsplassen vi hadde sett oss ut. Som forklart tidligere, tok vi avgj?relsen om hvilket sted vi skulle lande da vi hadde svevd rundt planeten en stund. Det, i tillegg til at atmosf?remodellen v?r var feil, gjorde at vi ikke hadde sjans til ? kunne pr?ve ? lande der vi faktisk ville. Men vi tar det med her likevel. Vi landet p? koordinatene

\(\Big(R_p\,,\,\frac{\pi}{2}\,,\,\frac{7.1\pi}{180}\Big)\).

De utregnede koordinatene til landingspunktet v?rt var 

\(\Big(R_p\,,\,\frac{\pi}{2}\,,\,\frac{67.8\pi}{180}\Big)\).

Vi kan regne ut den faktiske avstanden mellom disse to punktene ved hjelp av formelen for radianer. Den ser slik ut:

\(\begin{align} v_\text{rad}=\frac{b}{r} \end{align}\),

hvor \(v_\text{rad}\) er vinkelen i radianer, \(b\) er buelengden og \(r\) er radiusen. Vi l?ser for buelengden, som i v?rt tilfelle vil gi oss den faktiske avstanden vi bommet med.

\(\begin{align} b&=r\cdot v_\text{rad}\\ &=R_p\cdot\bigg(\frac{67.8\pi-7.1\pi}{180}\bigg)\\ &=1861.7\,km\,\cdot1.1\\ &=2047.9\,km \end{align}\)

S? det var en skikkelig bom. Det tilsvarer nesten ? sikte p? Oslo, men lande i Roma (2008 km). Heldigvis er det fint i Roma! 

Med dette er v?r romferd ferdig. Vi har lagd en rakett, skutt den opp og reist til en annen verden. Det neste temaet er relativitetsteori. Det blir kjempespennende! Takk for turen til v?re avstigende gjester. Neste stopp: Tideromhaugen. Arrivederci!

Forrige innlegg <<                                                                             Neste innlegg >>

Av Johan Carlsen
Publisert 1. des. 2021 14:07 - Sist endret 17. des. 2021 02:01