<<

Autonomous Spacecraft Guidance for Small-Body Proximity Missions

Antonio Canale Delft University of Technology

AUTONOMOUS SPACECRAFT GUIDANCEFOR SMALL-BODY PROXIMITY MISSIONS

by

Antonio Canale 4522958

as part of

MSc Thesis in MSc Aerospace Engineering Delft University of Technology

Supervisors: Dr. Ir. Erwin Mooij Astrodynamics and Space Missions at TU Delft Prof. Maruthi Akella Aerospace Engineering at UT Austin

i

To Sergeant Pilot Larry Darrell ii ABSTRACT

Low-thrust transfers in the proximity of a celestial body are characterized by a spiral shape, formed by many revolutions, due to the fact that the thrust to ratio is usually smaller than the gravity acceleration. From their use for primary purposes on board the , these propulsion systems have acquired more and more importance. Due to their high specific impulse compared to chemical rockets, resulting in huge propellant mass savings, these systems have been enabling the exploration and the interaction with celestial bodies at increasing distance, up to orders of tens of light minutes. In particular, a special atten- tion has been dedicated to the so-called small-bodies, defined as all the objects in the not classifiable as planets, dwarf planets or satellites: this interest is not over yet, as confirmed by the future Lucy and Psyche missions by NASA. Although seen as intermedi- ate steps towards interplanetary manned missions, providing incremental capabilities at a low risk, the small-bodies are characterised by environments often not well-known before arrival, tiny standard gravitational parameters and irregularities in their shape, with en- hanced effects, the closer the spacecraft is to their surface. In addition, due to their distance from the , communication delays of several minutes are unavoidable, making neces- sary the shift from the complete ground control of the spacecraft to a more autonomous strategy. This new requirement can be met through the implementation of real-time guid- ance algorithms, characterised by lack of accuracy compared to optimisation methods, but a computational effort low enough to consider them feasible for these operations. In partic- ular, this report proposes the real-time implementable Lyapunov-based simulator by Her- nandez and Akella[2016] with algorithm modifications to account for two of the biggest problems that the two-body problem cannot address when used for small-body proxim- ity operations: the non-impact condition between the spacecraft and the main body, and the violation of the Keplerian assumption on its homogeneous sphericity, limited to the secular effects of the second harmonic in the following. The implementation of these ad- ditional tools as an extension of the core loop of the original simulator, without altering its main architecture, allows not to compromise its strengths on simplicity and real-time im- plementability, while permitting more flexibility. However, before focusing on these mod- ifications, an extensive study of the algorithm capabilities is performed, ranging from its validation with the Q-law and minimum-time transfers to a sensitivity analysis on its main tunable parameters. Advantages are taken of the fact that the simulator proposed by Her- nandez and Akella[2016] requires only the knowledge of the current state of the spacecraft and of the target, allowing the determination of a control law without solving a non-linear system. The innovative nature of the proposed solution is confirmed by the scarcity in the literature of real-time algorithms including the non-sphericity of the main body.

iii iv ACKNOWLEDGEMENTS

It is right and proper to start this report by saying thanks to those who made this gradua- tion project possible: Prof. Mooij, who first shaped me as a student and then supported me over these months with continuous advice via Skype, and Prof. Akella, who, after accepting me as a member of his research group, made me feel immediately welcomed as an integral part of it. If being supervised by such a relevant academic personality is an honour, being supported by two of them has been amazing. Furthermore, I want to thank my supervi- sors at S[&]T and Airbus Defence & Space for teaching me how to clearly define a problem before trying to solve it and for making me understand how important it is to ask for help when necessary. Finally, I would like to extend my warmest thanks to my Alma Mater, Delft University of Technology, which allowed me to realise my American dream through the prestigious Justus & Louise Van Effen scholarship, and put me in touch with an incredible mentor who helped me to reach some conclusions I would have probably come too late. Over the last few years, I have been so lucky to meet some amazing people coming from all the sides of the world and I am sure I will have a sofa or at least a chair in several cities. Additionally, thanks to friendships that have been able to withstand distances and silences, many of the relationships which have characterised my teen years have remained intact, evolving into something different. Often, looking at pictures while being so far away, I felt the only absent guy in certain circumstances: nevertheless, my friends have been the reason why I can still call my place "home". Unfortunately, misunderstandings made me lose some of the people that most contributed to what it is me right now, and, even if I am extremely sorry for that, I want to thank you for everything. This paragraph is concluded with the awareness that, at the end of this trip, I have been so lucky that the whole universe has been conspiring to make me find what I want and what I have basically always wanted. Finally, I apologise to my family for spending all of my last four birthdays far from home, each one in a different country. I am sorry for obliging them to interact with Skype on daily basis, but, mostly, I am even more disappointed that I have not succeeded yet in explaining to them how to hold their mobile phone in a proper way: it is a discrete failure for an en- gineer, but, even from a strange perspective, I can see how they smile every time we talk. I thank them for allowing a twenty-year-old guy to study two months in England, even if his English skills were incredibly close to zero, and for giving him enough self-esteem to take important decisions. I remember you wanted me to become a lawyer, but I also recall your support when I told you I was dreaming to work as an engineer at NASA. Furthermore, you supported me in Europe and USA, even when I considered changing my career aspirations. I promise it will never happen again, independently from successes and failures, to have me far away for that long: at the end, everything will be fine. Va sempre tutto bene.

v vi CONTENTS

Glossary ix Acronyms...... ix Roman Symbols...... x Greek Symbols...... xi Constants...... xi 1 Introduction1 1.1 Research Objective...... 2 1.2 Report Structure...... 2 2 Real-Time Guidance Systems5 2.1 Mission Heritage...... 5 2.1.1 Deep Space 1...... 6 2.1.2 Hayabusa...... 7 2.1.3 OSIRIS-REx...... 9 2.1.4 ARM...... 10 2.1.5 Requirements...... 11 2.2 Integrator Selection...... 12 2.3 Lyapunov Algorithms...... 15 2.3.1 Design Principles...... 15 2.3.2 Lyapunov Direct Method...... 16 2.4 Hernandez Algorithm Basics...... 17 2.4.1 Levi-Civita Transformation...... 17 2.4.2 KS Transformation...... 19 2.4.3 Simulator Architecture...... 20 2.5 Conclusions...... 20 3 2D Algorithm 23 3.1 Implementation & Verification...... 23 3.1.1 Matching Semi-Major Axis...... 24 3.1.2 Matching Eccentricity...... 24 3.1.3 Matching Full ...... 29 3.2 Simulations...... 30 3.3 Sensitivity Analysis...... 34 3.3.1 Introduction...... 34 3.3.2 Control Gains...... 35 3.3.3 Semi-Major Axis Tolerance...... 36 3.3.4 Navigation Errors...... 37 3.4 Conclusions...... 42

vii viii CONTENTS

4 3D Algorithm 45 4.1 Implementation & Verification...... 45 4.1.1 Matching Energy...... 46 4.1.2 Matching Eccentricity...... 47 4.1.3 Matching Inclination...... 49 4.1.4 Matching Angular Momentum Vector...... 50 4.1.5 Matching Angular Momentum & Eccentricity Vectors...... 54 4.2 Algorithm Validation...... 55 4.3 Simulations & Sensitivity Analysis...... 62 4.4 Conclusions...... 65 5 Non-spherical body 67 5.1 Orbit Propagation with J2 ...... 67 5.2 Linearisation Process...... 69 5.3 Simulator Architecture...... 74 5.4 Algorithm Validation & Implementation...... 79 5.5 Conclusions...... 80 6 Conclusions & Recommendations 83 6.1 Conclusions...... 83 6.2 Recommendations...... 84 A Work Breakdown Structure 85 Bibliography 87 GLOSSARY

ACRONYMS

ARM Redirect Mission AU CPU Computer Processing Unit DOF Degree Of Freedom DS1 Deep Space 1 DU Distance Unit GEO Geostationary Earth Orbit GNC Guidance, Navigation & Control HADES High-fidelity Asteroid Deflection Evaluation Software IPS Ion Propulsion System JAXA Japanese Aerospace Exploration Agency JPL Jet Propulsion Laboratory KS Kustaanheimo and Stiefel LEO Low Earth Orbit LIDAR Light Detection And Ranging LPE Lagrange Planetary Equations LST Lyapunov Stability Theory MB Main Body MEO Medium Earth Orbit MSc Master of Science NASA National Aeronautics and Space Administration NEA Near-Earth Asteroid ONC Orbit Navigation Camera RAAN Right Ascension of the Ascending Node RK Runge-Kutta SC Spacecraft SEP Solar Electric Propulsion SGP Standard Gravitational Parameter SRP Solar Radiation Pressure TAG Touch And Go TMT Target Marker Tracking TS Time Step TU Time Unit US United States USSR Union of Soviet Socialist Republics WBS Work Breakdown Structure WCT Whole Centre Tracking WP Work Package

ix x CONTENTS

ROMAN SYMBOLS

A Skew symmetric matrix [various] a Semi-major axis [m] c Exhaust velocity [m/s] E Specific orbital energy [J/kg] e Eccentricity [-] e Error [various] f Thrust acceleration [m/s2] h Angular momentum [kg m2/s] h Step size [s] I Identity matrix [-] i Inclination [rad] Isp Specific impulse [s] K Control gain [-] J2 Oblateness parameter [-] M [rad] m Mass [kg] n Angular velocity [rad/s] n Degree [-] pˆ Unit vector to h and r 0 [-] ⊥ p Order [-] Pn,m() Legendre polynomial [-] R Radius of a celestial body [m] r Cartesian position [m] rp Radius at periapsis [m] S f Switch function [-] T Thrust [N] t Time [s] W Oscillation frequency [1/s] U Potential [m2/s2] 2 2 U2BP Two-body poblem potential [m /s ] 2 2 U 0 Perturbing potential [m /s ] 2 2 UMD Mass distribution potential [m /s ] u Levi-Civita state [various] u KS state [various] 1/2 ur Levi-Civita position [m ] 1/2 ur KS position [m ] V Lyapunov function [various] x Cartesian state [various] xeq Equilibrium point [various] xE qu Equinoctial state [various] xKep Keplerian state [various] x Estimated Cartesian state [various] xKep Estimated Keplerian state [various] CONTENTS xi

GREEK SYMBOLS

α Reciprocal of the semi-major axis [1/m] β Elevation [rad] γ Generic orbital element [various] ∆v Change in velocity [m/s] δ Azimuth angle [rad] ² Tolerance [various] θ True anomaly [rad] λ Levi-Civita angle [rad] µ Standard gravitational parameter [m3/s2] σ Standard deviation [-] τ Fictitious time [s/m] φ Two-dimensional thrust angle [rad] φ Latitude [rad] Ω Right ascension of the ascending node [rad] ω [rad]

CONSTANTS

G Universal gravitational constant 6.67408 10-11 [m3/(kg s2)] 20 mCeres Mass of Ceres 9.393 10 [kg] 24 mEarth Mass of the Earth 5.972 10 [kg] 15 mEros Mass of Eros 433 6.687 10 [kg] 20 mVesta Mass of Vesta 2.589 10 [kg] 5 RCeres Mean radius of Ceres 4.734 10 [m] 6 REarth Mean radius of the Earth 6.371 10 [m] 4 REros Mean radius of Eros 433 1.684 10 [m] 5 RVesta Mean radius of Vesta 2.625 10 [m] 16 ²M AT Floating-point relative accuracy in MATLAB 2.2204 10− [-] xii CONTENTS 1 INTRODUCTION

The interest in small-bodies is one of the few topics where space industries and research interests go hand in hand, supporting each other [Lopez et al., 2014]. The first definition of these celestial bodies was given during the 26th General Assembly of the International Astronomical Union, held in Prague in 2006. Specifically, in the Resolution 5A1, it is stated that all the bodies in the Solar System can be divided into planets, dwarf planets, satellites and small-bodies, the last ones being defined simply as "all other objects" not part of the previous categories. The main distinction between the first two groups and a small-body is that the latter one is not heavy enough to reach the hydrostatic equilibrium, which causes a round shape, while the only difference between small-bodies and natural satellites is due to their : the former ones rotate around the , the latter ones about other bodies. and are seen as intermediate steps towards interplanetary manned missions, providing incremental capabilities at a low risk. Unfortunately, due to their dis- tance from the Earth, small-body vicinity environments are often not well-known before arrival, and communication delays of several minutes are unavoidable. Moreover, their gravitational parameter is tiny w.r.t. the one of a planet (often exceeding ten orders of mag- nitude), making any manoeuvre particularly sensitive to any premature or delayed com- mand execution. Then, due to this sensitivity and unavoidable communication delays, it is (almost) impossible to achieve a sufficient level of punctuality/synchronisation when a command is sent from the Earth: a transition from the ground-in-the-loop architecture to self-sustainable systems is essential [Truszkowski et al., 2006]. As a result, there is a ma- jor interest in advancing the performances of autonomous guidance and navigation sub- systems, confirmed by the solicitation “Space Technology Research Grants Program, Early Stage Innovations Appendix”2 released by NASA. Finally, it is highlighted that the need for autonomy is not limited to small-bodies, as demonstrated by the Science Laboratory: the entry, descent and landing process lasted about seven minutes, while the signal com- munication time (two-way) between the ground station and the lander is almost four times longer [Grotzinger et al., 2012]. Subsequently, remote control was impossible due to time constraints and the operations had to be fully automatised [Starek et al., 2016].

1https://www.iau.org/news/pressreleases/detail/iau0603/, accessed: 20 Dec 2017 2https://nspires.nasaprs.com/external/viewrepositorydocument, accessed: 20 Dec 2017

1 2 1.I NTRODUCTION

1.1. RESEARCH OBJECTIVE The objective of the research project is to contribute to the tailoring of the autonomous guidance algorithm presented by Hernandez and Akella[2016], generally valid for any main body-spacecraft combination in a two-body problem configuration and any propulsion system, towards the specific needs of small-body proximity operations. This is done by providing an overview of its limitations when applied to these environments and imple- menting new functionalities to address the most important ones. For this purpose, the initial part of the research project has been focused on the study of this algorithm, which is also presented in a simplified two-dimensional version by Hernandez et al.[2014]. After fixing some minor discrepancies, the algorithm is implemented in MATLAB R2017a and the results verified and validated, through comparison with similar control strategies and op- timisation methods. Afterwards, an investigation of the current state-of-art in modelling these environments is conducted to lead to improvements in the description of their dy- namics. Finally, the new version of the algorithm is presented, confirming that none of these additions impacted its reliability nor its real-time implementability. Then, starting from these considerations, the following research question is derived:

Would it be possible to tailor the algorithm presented by Hernandez and Akella[2016] for small-body proximity environments’ needs, without compromising its key advantages in low computational effort and simplicity?

The two key concepts from the previous question are introduced by the verbs "to tailor" and "to compromise": in fact, the algorithm is already capable to carry on any desired transfer in a two-body configuration, but it is predictable that, due to the fragility of the hypothesis of this model for small-body proximity operations, its results could be seriously compromised by unacceptable approximations. However, as highlighted in the second part of the research question, the improvements in flexibility should not distort its key advan- tages. Then, using this approach, some opportune changes are made to an already well- developed and tested algorithm, implementing new functionalities to deal with small-body specific needs, rather than starting from zero. The steps performed to reach this goal, char- acterised by an iterative nature, are introduced in AppendixA.

1.2. REPORT STRUCTURE This report is divided into six chapters, including this introduction and a final part where the overall conclusions are presented. Chapter2 is the most general one and it deals with different topics about real-time systems: an extensive analysis of past and current missions having the exploration of a small-body as the main goal, from which the essential require- ments characterising autonomous guidance algorithms are derived; an overall study on the Runge-Kutta family performances, culminated in the selection of RK4 as the main in- tegrator; a comprehensive inspection of the design principles and the theory behind Lya- punov control laws, with a particular emphasis on the simulator proposed by Hernandez and Akella[2014]. The latter algorithm, which constitutes the starting point of the research project, is analysed and tested in both the two- and three-dimensional versions, treated in Chapters3 and4, respectively: after an extensive verification and validation procedure, these two chapters focus on simulating mission scenarios for small-body proximity oper- ations and provide a wide-ranging sensitivity analysis, including control gains, tolerances 1.2.R EPORT STRUCTURE 3 and navigation errors. Although the results of this algorithm substantially differ from the optimal ones in time of flight and fuel mass for the most complicated transfers [Lee et al., 2005], they are comparable to the ones presented by Petropoulos[2004], based on a formu- lation notably more complex, lacking a clear proof of convergence. Moreover, it is demon- strated that the algorithm by Hernandez and Akella[2014] can withstand navigation errors on the order of meters in the position and millimetres per second in the velocity, with the spacecraft ending close to the targeted orbit. Then, Chapter5 is concentrated on defin- ing the formulation and the implementation of an autonomous guidance algorithm able to perform orbital manoeuvres around a non-spherical celestial body: starting from the main problem in the theory of artificial satellites, only the secular effects of J2 are taken into account, leading to an approximated model called Secularly Precessing Ellipse, where a, e and i are not affected by the non-sphericity [Tapley et al., 2004]. Afterwards, in Chap- ter6, the overall conclusions of the research project are presented, with a special focus on the algorithm improvements w.r.t. its initial version. Finally, due to the importance of the concept of autonomy for the exploration of small-bodies, the last section of the report is dedicated to some recommendations, for which endless avenues may be indicated: how- ever, a particular emphasis is reserved to the improvements which have a bigger priority, such as the introduction of time-varying control gains. 4 1.I NTRODUCTION 2 REAL-TIME GUIDANCE SYSTEMS

This chapter is divided into four parts: Section 2.1 is centred on the description of past and current missions towards small-bodies, from which the characteristics of a real-time guid- ance subsystem and its basic requirements are derived, Section 2.2 deals with the selection of a proper integrator, with a particular emphasis on the Runge-Kutta family, Section 2.3 provides details about the Lyapunov Stability Theory and the algorithms founded on it, while Section 2.4 is dedicated to the description of the one proposed by Hernandez and Akella[2016] and its limitations. Finally, some conclusions are drawn in Section 2.5.

2.1. MISSION HERITAGE The need of autonomous guidance, navigation and control subsystems was already clear at the end of the second millennium, with the main goal of switching from the complete ground control of the spacecraft to the "tell the spacecraft what to do, not how and when to do it" philosophy [Fesq et al., 1996]. In particular, this necessity is even more concrete when dealing with small-body proximity operations, in which usually the main body has an asymmetrical shape, non-uniform density, a weak and difficult to estimate gravity field and the Sun acts both with its gravity and with the solar radiation pressure. Furthermore, these bodies have been at the centre of the scientific community and industrial interest over the past twenty years, with increasing investments towards them in the close future. As an example, in January 2017 NASA selected two missions1 to deepen the understanding of the early ages of the Solar System: Lucy will explore six asteroids in the L4 and L5 Trojan cloud, while Psyche will visit the metallic asteroid 16 Psyche, that could be the remaining part of a protoplanet, with expected launches in 2021 and 2023, respectively. Basically, it is not possible to identify an algorithm generally as the best one, but only as the most suitable for certain tasks [Montenbruck and Gill, 2012]. In fact, real-time sim- ulators need to satisfy a particular set of requirements, i.e., the ones that also characterise off-line simulations plus an additional one: the real-time implementability, strongly linked with the computational efficiency. The study of the last parameter is essential for the for- mer algorithms, while it is almost ignored for the latter ones [Popovici and Mosterman, 2012]. Then, after presenting the accomplishments and the difficulties encountered over some of the most significant missions towards small-bodies, the requirements for a GNC subsystem aimed for this goal will be presented, with an emphasis on the guidance part.

1https://www.nasa.gov/press-release/nasa-selects-two-new-missions, accessed: 20 Dec 2017

5 6 2.R EAL-TIME GUIDANCE SYSTEMS

2.1.1. DEEP SPACE 1 Deep Space 1, part of the New Millennium Program, was the first mission where a SEP en- gine was not used only for secondary purposes, but for primary orbit changes. Extensive testing had been done independently by the US and USSR before the DS1 project started, with the steps from the first flight tests in 1970 by SERT and SERT II reported by Sovey et al. [2001]. It was launched in October 1998, targeting a flyby with asteroid 3352 McAuliffe and an encounter with 19P/Borrelly after more than 14,000 of operation of its ion engine: even if the asteroid approached, , was different from the initial one, the mission is considered a huge success. Basically, the primary requirement was to "validate selected high-risk, high benefit technologies" [Rayman et al., 1999] and the payload valida- tion took a long part of the mission duration: it is highlighted that a failure of some of the technologies on board would have not automatically corresponded to a complete mission failure. In fact, one of the main goals of the New Millennium Program was to properly un- derstand certain new features, and diagnosing eventual problems would have permitted to accommodate the risks for future missions. Beside the IPS, the most challenging parts were the validation of the autonomous on-board navigation system, called AutoNav, and to prove no significant interference between the various sub-systems. Thanks to the re- sults of this process, it has been possible to reduce actual mission risks and costs, making previously called "unique challenges in mission design", the basis of the current studies.

Figure 2.1: AutoNav operations 2

However, this mission is considered crucial not only because of the payload implemented, but also in view of the level 1 goal of encountering two small-bodies using an IPS. The dif- ficulties in trajectory prediction were determined by the uncertainties connected with the performance of the instruments on board and the effective need of new tools for analysing low-thrust trajectories: SEPTOP,updated and available only for NASA personnel3, provided a preliminary analysis, while a modified version of the pre-existent CATO refined the re- sults. Finally, the duration of each encounter process was planned to be twenty days: this was justified by the need of trajectory correction manoeuvres, commanded by the AutoNav at specific intervals, with an overview of its operations in Fig. 2.1.

2https://directory.eoportal.org/web/eoportal/satellite-missions/d/deep-space-1, accessed: 20 Dec 2017 3https://trajectory.grc.nasa.gov/tools/septop.shtml, accessed: 20 Dec 2017 2.1.M ISSION HERITAGE 7

2.1.2. HAYABUSA Hayabusa was a mission developed by JAXA, launched in May 2003, which targeted a NEA called Itokawa, distant 2 AU from the Earth. The spacecraft arrived in its proximity in September 2005, with the main objective of bringing a sample back to our planet. Although the return date was postponed by about three years, and the rover Minerva, which was sup- posed to take in-situ measurements before the landing, was lost, this mission is considered a huge success, able to influence not only the space sector, but the whole world. The un- certainties and difficulties which arose during proximity operations, such as the loss of two of the three reactions wheels available on board, made mandatory the development of new GNC techniques during the conduction of the actual operations [Kawaguchi, 2006]. Hayabusa spent about two months doing remote observations, being able to achieve several scientific achievements, of which the most important was the reconstruction of a 3D model of the asteroid and the identification of a landing site [Masashi et al., 2006]. Mainly due to the loss of the reaction wheels, it was not possible to accurately estimate Itokawa’s non-uniform gravity field: as a result, the propagation of the trajectory for a long duration too close to the asteroid was infeasible. Then, it was mandatory to reduce the time in its very proximity, because less time means less influence of the gravity field, result- ing in less uncertainty. Combining the distance of Itokawa from the ground station on the Earth, the complexity of the required manoeuvres and their necessary short duration, it is easy to understand why the operations between 500 m and the landing site had to be fully autonomous, while the state at 500 m was found with ground control point navigation.

Table 2.1: Sensor utilisation strategy [Masashi et al., 2006]

Phase Range ONC LIDAR LRF Approach 20 km WCT A - > Gate Position 20 km WCT X - ∼ Home Position 7 km WCT X - ∼ Descent 500 m WCT X - > Vertical Descent 35~500 m - X A Final Descent 35 m TMT - X < A:Acquisition, X:Use

In addition, the orbit navigation camera was implemented with two main modes: the whole centre tracking one, from 500 to 30 m of altitude, calculating the centre of the image while viewing the asteroid’s whole body, and the target marker tracking one, from 30 m to land- ing, where all the attention is paid to a target pre-deployed on the surface. In a similar fash- ion, the altitude measurements were provided via two different instruments, a LIDAR and a laser range finder, from 50 km to 50 m and from 100 m to landing, respectively, with an overlapping region to allow calibration (cf. Table 2.1). Furthermore, to achieve an accept- able risk level, various abort functions were designed and implemented on board, ranging from the loss of observations in the first phase of the descent, to obstacle detection or too large attitude errors in the last one. However, from flight experience, it was understood that these functions were too strict, so that some of them were actually cancelled. 8 2.R EAL-TIME GUIDANCE SYSTEMS

Figure 2.2: Doppler velocity history: descent velocity [Kawaguchi, 2006]

Two rehearsal descents were performed on November 4 and 12, 2005, with a touch-down attempt eight days later, which was accurate enough according to Doppler data (cf. Fig. 2.2), but, unfortunately, it was stopped due to too strict abort functions. In particular, after the second rehearsal descent, thanks to new data acquired and used in a ∆v simulator, the gravity field of Itokawa was modelled as a six points mass (cf. Fig. 2.3), where each sphere had a different mass density and its own gravity [Yoshimitsu et al., 2009].

Figure 2.3: Six points mass gravity model [Yoshimitsu et al., 2009]

Finally, the second and last touching-down happened on November 25, during which “the path was built correct and guidance was successful ” [Kawaguchi, 2006]. In particular, a brief summary of the guidance schemes used is presented in the following:

• Time of arrival: it is a complex scheme, allowing to bring the spacecraft at the right point above the asteroid at the right time, considering also that Itokawa is rotating.

• Constant velocity: it is much simpler than the previous one (as the name suggests, the velocity is held constant), and it is particularly useful when the error of the estimated position reaches the same magnitude of the actual absolute distance.

• Sampling guidance: it is activated in the very last phase, being responsible for critical operations such as attitude alignment to local horizon and surface synchronisation.

Furthermore, even if not expected at launch, landmark tracking navigation increased its importance during the mission, being adopted for primary purposes. It was used in com- bination with an extended Kalman filter and a feed-forward control scheme, making possi- ble to reach the required landing ellipse with a 30 m semi-major axis. After lifting from the asteroid’s surface, Hayabusa went to a safe orbit, but, due to some problems with attitude constraints, it was decided to postpone the return date by about three years: the spacecraft was back to Earth in June 2010, carrying the required sample from Itokawa. 2.1.M ISSION HERITAGE 9

2.1.3. OSIRIS-REX The "Origins, Spectral Interpretation, Resource Identification, and Security-Regolith Ex- plorer" was launched in September 2016, with the mission requirement to acquire at least 60 grams of samples from the asteroid Bennu. According to Gal-Edd and Cheuvront[2015], this asteroid was selected for two main reasons: it has the highest potential risk of impact- ing the Earth and it is made of carbonaceous materials, which could give insight into planet formation processes. Furthermore, this mission, coming after 25 years of worldwide efforts towards small-bodies, has been developed to “expect the unexpected”. In particular, the teams of the Dawn (JPL), Rosetta (ESA) and Hayabusa (JAXA) recommended to fully inte- grate the science team into the mission, to include the human factor in every reasoning and to perform a detailed science planning only after the Navigation Campaign, respectively.

Figure 2.4: OSIRIS-REx TAG trajectory [Berry et al., 2015]

After about two years from launching and four months spent in the proximity of Bennu, OSIRIS-REx would be able to estimate the most relevant surface irregularities and the aster- oid mass with 1% uncertainty. Thanks to this information, a candidate best site for regolith acquisition will be chosen, proceeding to the de-orbit and then the TAG manoeuvres: the latter phase is a crucial part of the mission, ending up with the sample collection [Berry et al., 2015]. To comply with the mission requirement, the spacecraft has to land within 25 m from the chosen site, with a 2.85 σ confidence interval. Results of the Monte Carlo analysis by Berry et al.[2013] show that this requirement cannot be fulfilled with only the application of pre-computed manoeuvres, while ground-based updates are not considered an option due to the delay on communications (about 20 minutes). Then, to reduce errors at the checkpoint, mainly coming from the navigation uncertainties at the time of orbit de- parture (cf. Fig. 2.4), LIDAR measurements for radial and in-track directions are essential. 10 2.R EAL-TIME GUIDANCE SYSTEMS

2.1.4. ARM The Asteroid Redirect Mission is a potential future NASA mission that has been understud- ies between 2010 and 2016, initially expected to be launched in 2018 as a successor of the OSIRIS-Rex: unfortunately, the White House 2018 Budget Request4 plans to cancel the mis- sion. However, due to the extensive literature available about it and the relevance of its ob- jectives with the graduation project, it is worth to analyse ARM in details. A brief overview is presented by Lopez et al.[2014], and its main goal is to bring a cohesive asteroidal mass (4-10 m) to the Earth-Moon system, in a stable lunar orbit, and successively to collect a sample and take it back to the Earth with a crewed mission. The first step is an Observation Campaign to find suitable small-bodies: the results are expected to live beyond the mis- sion itself, pretty extending the knowledge of the current observational program. As shown in Fig. 2.5, both the options of capturing an entire small asteroid and acquiring a boul- der from a larger one have been studied, with a final preference for the second proposal. Naturally, to meet this requirement, an advanced SEP system is needed, which has already been identified as “a critical part of NASA’s future beyond-low-Earth-orbit, human-crewed exploration plans” [Herman et al., 2016]: in this perspective, ARM can be used as a demon- strator for manned missions. Furthermore, the development of in-situ resource utilisation techniques could allow to save mass and essential space on board, extracting oxygen from mineral oxides or water in the form of hydrated minerals [Moore, 2014]. In addition, the in- terest in improvements of optical rendezvous mechanisms spread through different space applications, from satellite servicing to orbital debris removal.

Figure 2.5: ARM configurations [Moore, 2014]

However, since with the current state-of-art it is not possible to bring as a whole a cohe- sive asteroidal mass of 4-10 m back to the Earth, it will be left in a stable orbit, waiting for enhancement of technology. Moreover, the ability to interact with a small-body is a first step to demonstrate that humans are ready to avoid potential catastrophes, implementing techniques such as the Enhanced Gravity Tractor [Gates et al., 2015]. In fact, thanks to the mass acquisition, the effects of the spacecraft gravitational field on the asteroid would be increased up to the point where a slight deviation in its trajectory is expected to be visible in about one month. To sum up, from the considerations made in this section, it is clear how the ARM would have been relevant for different fields and promising for extensibility.

4https://www.whitehouse.gov/sites/whitehouse.gov/files/omb/budget/fy2018/2018_ blueprint.pdf, pp. 43-44, accessed: 20 Dec 2017 2.1.M ISSION HERITAGE 11

2.1.5. REQUIREMENTS Based on the accomplishments and the difficulties encountered during the missions de- scribed in the previous sections and on the extensive work by Furfaro et al.[2013], the main requirements to consider a GNC subsystem appropriate for real-time applications are: • GNC01: The navigation subsystem shall process autonomously information provided by on-board sensors and to obtain the real-time state by these data.

• GNC02: The guidance subsystem shall process the information from the navigation and to calculate a proper command to the thruster to reach the defined target.

• GNC03: The control subsystem shall bring the spacecraft to the desired path through the execution of the acceleration command defined by the guidance. It is highlighted that, since in the algorithm by Hernandez and Akella[2016] the informa- tion by the navigation subsystem is given only at t0, GNC01 is not relevant to the goals of this report. Moreover, the spacecraft is assumed to be provided with an ideal thruster, able to apply the commands from the guidance subsystem immediately and with a perfect accuracy, so that GNC03 depends purely on the capability of the guidance itself. Then, thanks to the information derived from the heritage of previous missions towards small-bodies (cf. Section 2.1) and from the work by Starek et al.[2016], more specifications on the requirements that shall be respected by the guidance subsystem are presented: • G01: The guidance subsystem shall be robust, being able to deal with erroneous in- puts from the navigation subsystem on the order of five meters for the position and five millimeters per second for the velocity.

• G02: The guidance subsystem shall be real-time implementable, being able to pro- cess the spacecraft state and to provide the thruster commands in real-time.

• G03: The guidance subsystem shall be verifiable, making possible to properly verify the accuracy, the robustness and the real-time implementability of the solutions. The first requirement can be satisfied using relatively complex closed-loop control laws, characterised by a monitoring feedback, preferred to easier to implement open-loop ones, affected by “sensitivity to disturbances and inability to correct them” [Nise, 2007]. These al- gorithms shall be able to limit the errors in a, e, and ω to 500 m, 0.05 and 15◦, respectively, for transfers lasting days or tens of days about small-bodies. Then, the second requirement is reached sacrificing at least partially the accuracy of the solution provided by the algo- rithm, focusing more on feasible solutions, i.e., the ones which satisfy the imposed mission constraints, than on optimal ones. Furthermore, the third one is accomplished comparing the results of the real-time on-board algorithm with the ones obtained via optimal off-line simulations and assessing its ability to withstand navigation errors. Finally, it is highlighted that the real-time implementability of the algorithm has some implications, introduced in the following, on its numerical integrator: • NI01: The integration step shall be at least larger than the total time needed to exe- cute the operations across one time step.

• NI02: The integration error shall not exceed 1 m after one hundred orbits if no thrust is applied. 12 2.R EAL-TIME GUIDANCE SYSTEMS

105

0 10 RK 1 RK 2 RK 3 RK 4 RK 5 10-5 a [m]

10-10

10-15 100 101 102 h [s]

Figure 2.6: Difference between numerical and analytical a, after one full orbit about Eros 433 (a 18.542 km, e 0.1, i Ω ω θ 0◦) within the two-body problem, vs time steps. 0 = 0 = 0 = 0 = 0 = 0 =

2.2. INTEGRATOR SELECTION As specified in Section 2.1.5, the computation time is a crucial parameter for a real-time guidance subsystem. In particular, for the numerical integration part, there is a lower boundary for the step-size h (NI01): if the last requirement is not satisfied, the proposed algorithm is simply unimplementable, highlighting the existence of a "race against time". As a result, integrators where the computation time is unpredictable, because of iterations or complications, such as in implicit or variable-step methods, could be unimplementable. In particular, among the several possibilities to decrease the computational time re- quired by an algorithm, Cellier and Kofman[2006] reports the following four methods: • increase the step-size h;

• reduce the number of function evaluation at every step;

• improve the efficiency of the function evaluation;

• implement the algorithm in a faster computer. First of all, it is highlighted that, increasing too much the step-size h, it could be not pos- sible to meet the requirements on accuracy (NI02), with the additional disadvantage of decreasing the numerical stability. On the other hand, the efficiency of the function eval- uation could be improved through a simplification of the astrodynamic model, which it is not considered feasible in the case of small-body proximity operations, considering that the simulator proposed by Hernandez and Akella[2014] is based on the two-body prob- lem. Then, the third option regards the selection of a proper integration algorithm, which is the main objective of this section, and it will be presented in the following. Finally, the last possibility is simply ignored, since it is assumed that the flight processor implemented on board is the best available option, while the other three ones need further analysis. 2.2.I NTEGRATOR SELECTION 13

After this brief introduction, the attention is focused on the explicit RK methods up to the fifth order, considered to be a good trade-off between accuracy and computation time. Due to the extensive data available on its shape and to its relatively small distance from the Earth, the small-body selected to compare these integration methods is an approximated model of 433 Eros5, assumed to be a perfect sphere with radius R 16.84 km and mass Eros = m 6.687 1015 kg. The spacecraft orbiting the asteroid has the following Keplerian state: Eros = x (t ) (a ,e ,i ,Ω ,ω ,θ )T (1.1R ,0.1,0,0,0,0)T (2.1) Kep 0 = 0 0 0 0 0 0 = Eros To validate the integrators, the difference between the initial semi-major axis and its value after a certain time is evaluated: since in the two-body problem a is constant, any differ- ence between the initial and the final one is considered as an error. Basically, this particular model is a simplification of the more general N-body problem, in which the dynamics of a point mass is entirely determined by the gravitational forces between it and a main body, with a spherical shape and a homogeneous density [Vallado, 2007] In Fig. 2.6, it is shown that, if h is small enough (order of tens of seconds), RK4 and RK5 16 reach the MATLAB floating-point relative accuracy, equal to ² 2.2204 10− . However, M AT = if the integration time step is too small (order of a few seconds), the round-off and trunca- tion errors become significant, due to a large number of function evaluations: as a result, the value of ²M AT is missed by about two orders of magnitude. On the other hand, the re- sults from RK2 and RK3 are below one meter even with h 100 s, reaching the micrometer = level with the time step set to one second, while RK1 exceeds one hundred meters even with h 1 s. Then, considering its results unacceptable for a low-thrust transfer requiring = tens or hundreds of days, the latter method is not taken into account for further analysis. In Fig. 2.7, it is shown that RK4 and RK5 overcome the other methods by several orders of magnitude. In particular, considering the error limit for the semi-major axis to be one meter and a range of time steps between 50 and 500 seconds, it is shown that both RK4 and RK5 cross the limit error over 100 orbits at about 300 an 450 seconds, respectively, and the difference among them is about one order of magnitude in favour of RK5. On the other hand, RK2 demonstrates to be unreliable over long periods of time, being always over the error limit, and it is not considered for further analysis, while the error made by RK3 crosses the same limit at h 60 s and diminishes up to less than a meter for a fifty-second time step. = In Fig. 2.8, the y-axis is the same as in the previous figure, while the x-axis, instead of in- dicating the time step h, represents the number of function evaluations per time step: they correspond to the RK order up the fourth one, while they increase to six for RK5 [Butcher, 1965]. When the number of function evaluations is pretty low, less than 104, the results from the three methods analysed are pretty similar, while the difference among the most precise one and RK3 increases considerably if their number is intensified. On the other hand, the deviation between RK4 and RK5 is not one order of magnitude any more, but it is limited to 30%: then, since real-time implementability is one of the main requirements for the algorithm and the former integrator is the highest order explicit method in which the step order coincides with the accuracy one, RK4 is selected. Moreover, this integrator is also used by HADES 6, a tool meant to increase the number of missions towards small-bodies.

5https://ssd.jpl.nasa.gov/sbdb.cgi?sstr=433, accessed: 20 Dec 2017 6https://indico.esa.int/indico/event/111/session/22/contribution/37/material/slides/ 7.pdf, accessed: 20 Dec 2017 14 2.R EAL-TIME GUIDANCE SYSTEMS

104

102

100 a [m]

10-2

Lim = 1 m 10-4 RK 2 RK 3 RK 4 RK 5 10-6 100 200 300 400 500 h [s]

Figure 2.7: Difference between numerical and analytical a, after 100 full orbits about Eros 433 (a 18.542 km, e 0.1, i Ω ω θ 0◦) within the two-body problem, vs time steps. 0 = 0 = 0 = 0 = 0 = 0 =

104

102

100 a [m]

10-2 Lim = 1 m RK 3 RK 4 RK 5 10-4 1 2 3 4 5 6 7 8 9 10 # feval [~] 104

Figure 2.8: Difference between numerical and analytical a, after 100 full orbits about Eros 433 (a 18.542 km, e 0.1, i Ω ω θ 0◦) within the two-body problem, vs function 0 = 0 = 0 = 0 = 0 = 0 = evaluations. 2.3.L YAPUNOV ALGORITHMS 15

2.3. LYAPUNOV ALGORITHMS Several algorithms are available to evaluate the manoeuvres needed to perform an orbit change, with the thrust direction and magnitude as the main controllable variables. The selection of an appropriate guidance subsystem is particularly relevant in the case of small- body proximity missions, since these vehicles usually implement low-thrust engines that require many revolutions to reach the target location: as a result, the contribution of any small acceleration at the beginning of the trajectory is amplified at the end [Betts, 2015]. The family of Lyapunov-based guidance algorithms is a particular group of closed-loop, feedback-driven control laws, founded on the Lyapunov Stability Theory. They usually pro- duce suboptimal results, requiring only the knowledge of the current state of the spacecraft and of the target, allowing the determination of a control law without the need of solving a non-linear system. Moreover, since no iteration is required in this process, they are not only considered a perfect tool for preliminary trajectory simulations, but they also permit an au- tonomous implementation on board. In fact, as stated by Kluever[1998], where a simple algorithm based on the Lagrange Planetary Equation is used to calculate a quasi-optimal low-thrust LEO to GEO trajectory, “simplicity is often a desired attribute of a good guidance scheme”. Basically, the results obtained via direct and indirect optimisation methods reach levels of accuracy far higher than the ones produced by Lyapunov ones, but lacking closed- form solutions and being computationally expensive make them not the perfect candidates for autonomous guidance in proximity operations. Furthermore, due to their usual high sensitivity to initial guesses, direct and indirect optimisation methods may have problems in converging to the target if these guesses are not good enough [Hull, 2013]. The rest of this section is split into two parts: while Section 2.3.1 is focused on the design principles of these algorithms, with the introduction of some notable examples, Section 2.3.2 deals with the main advantages and disadvantages of the Lyapunov Stability Theory.

2.3.1. DESIGN PRINCIPLES The core design part of a Lyapunov-based algorithm is the formulation of a candidate po- tential function, which can be a quite complex summation with many adjustable parame- ters or as simple as quadratic. In particular, the algorithm proposed by Petropoulos[2004] is based on the Gaussian form of the Lagrange Planetary Equations with gains variable with time, which can be optimised through a heuristic algorithm, providing quasi-optimal results [Lee et al., 2005]. However, due to the complexity of the proposed potential, no proof of convergence has been given, and the algorithm becomes singular when the incli- nation or the eccentricity are in the proximity of zero. Furthermore, no particular set of parameters can outperform the others for any propellant requirements and time of flight of a particular transfer. On the other hand, the results presented by Hernandez and Akella [2014] allow planar transfers between closed orbits in Levi-Civita coordinates, while the algorithm proposed by Hernandez and Akella[2016] in Kustaanheimo-Stiefel variables ex- tends these concepts to three-dimensional manoeuvres. They both present a clear proof of convergence, where the full set or only a subset of orbital elements is selected as a target. The latter statement is extremely important because the Lyapunov stability does not au- tomatically guarantee a successful manoeuvre, especially when some orbital elements of the target orbit are free: as an example, if e f is not defined, the osculating eccentricity may approach unity, leading the spacecraft to an escape parabolic orbit [Hatten, 2012]. 16 2.R EAL-TIME GUIDANCE SYSTEMS

2.3.2. LYAPUNOV DIRECT METHOD The Lyapunov Stability Theory is considered one of the most popular tools in space ap- plications, and it has been treated extensively in the literature [Khalil and Grizzle, 2013]. This theory is centred on two definitions: autonomous system and equilibrium point. The former term, also called time-invariant if the independent variable is the time, refers to systems where the derivative of the state does not depend explicitly on the independent variable: an autonomous system is expressed as x˙ f (x,u), while a general non-linear one = is represented by x˙ f (t,x,u). Instead, an equilibrium point x is defined as the point = eq where if x starts there, it stays in equilibrium forever. In mathematical terms, this means:

² 0, δ(²) 0 : x(t ) δ x(t) ², t t (2.2) ∀ > ∃ > || 0 || < ⇒ || || < ∀ > 0 Additionally, if a point satisfies the last formula about stability and the following one:

δ : x(t0) δ lim x(t) 0 (2.3) ∃ || || < ⇒ t || || = →∞ it is asymptotically stable. Finally, a point xeq is called unstable if Eq. (2.2) is not valid. After giving the above definitions, the Lyapunov Direct Method is introduced: the main idea is that, starting from a positive function V (x), if its time derivative is non-positive, then V (x) will decrease or remain constant as t increases. It is highlighted that, applying this theorem, it is not needed to solve any complex non-linear differential system x˙ f (x) = for every initial condition. This is clear writing the time derivative of V (x) as it follows:

N · ¸ X ∂V dxi ∂V ∂V ∂V ∂V V˙ (x) , ,..., x˙ f (x) (2.4) = i 1 ∂xi dt = ∂x1 ∂x2 ∂xN = ∂x = Nevertheless, this theorem also has a huge disadvantage, i.e., its inconclusiveness when a potential does not demonstrate the stability of a system: these functions are not unique, making this method in general sufficient and not necessary [Vepa, 2010]. As a result, the fact that a Lyapunov function does not satisfy the criteria imposed by this theorem does not mean the system is unstable. However, in these situations, it may be possible to apply LaSalle’s invariance principle, which is valid only for autonomous systems and it does not require the potential V to be positive definite [Khalil and Grizzle, 2013]. Finally, in mathe- matical terms, the Lyapunov Direct Method of Stability is enunciated in the following.

Theorem: Lyapunov Direct Method of Stability

• Let x 0 be an equilibrium point, contained in the domain D RN , of the eq = ∈ system x˙ f (x). = • Let V : D R be a continuously differentiable function, named Lyapunov → function or potential, such that V (x ) 0 and V (x) 0 D\{x }. eq = > ∈ eq Then:

• if V˙ 0 D, the equilibrium point x is stable ≤ ∈ eq • if V˙ 0 D\{x }, the equilibrium point x is asymptotically stable. < ∈ eq eq 2.4.H ERNANDEZ ALGORITHM BASICS 17

2.4. HERNANDEZ ALGORITHM BASICS The algorithm proposed by Hernandez and Akella[2014] and Hernandez and Akella[2016], which represent the two- and the three-dimensional formats, respectively, is founded on the definition of the two-body problem, with the additional complication of the presence of a thrust vector. The latter term influences the equation of motion as it follows:

d 2r µ r f (2.5) dt 2 = −r 3 + where r is the distance between the spacecraft and the main body’s centre, µ represents its standard gravitational parameter and f is the thrust divided by the spacecraft mass m. The unpredictable shape of the perturbation acceleration in Eq. (2.5) not only makes almost impossible to find exact analytical solutions (except for trivial cases), but it also causes problems with numerical integrations, being clear that r 0 leads to a singularity. → Basically, it means that the closer an object is to its main body, the worse are the results, and, if in general this problem arises in particular situations, such as at the pericentre pas- sage of highly eccentric orbits, it is crucial when dealing with proximity operations with small-bodies. However, without deepening too much into discussions about numerical tools, changing the integration step size may hugely decrease the efficiency of the integra- tor, acting against the requirements set for the guidance algorithm (cf. Section 2.1.5). Then, a different approach is needed, and a regularisation of the equation of motions in Eq. (2.5) is treated in the following, with the Levi-Civita transformation and the KS one presented in Sections 2.4.1 and 2.4.2, respectively. Moreover, the simulator architecture and its main limitations when applied to small-body proximity manoeuvres are presented in Section 2.4.3. Finally, it is highlighted that additional details on the definition of the potentials for targeting specific Keplerian subsets, and the verification and validation of the results for the 2D and 3D algorithm constitute the core of Chapters3 and4, respectively.

2.4.1. LEVI-CIVITA TRANSFORMATION The Levi-Civita transformation is a mapping from the Cartesian Coordinates r (x, y)T = to a regularised model u (u ,u )T : in mathematical terms, r R2 u R2 [Wakker, r = 1 2 ∈ → r ∈ 2015]. It consists of two main steps: a change in the radius vector and the introduction of a fictitious time. In particular, the first step is accomplished defining the position vector as: ( u1 pr cos(θ/2) = (2.6) u pr sin(θ/2) 2 = while the opposite transformation, i.e., from Levi-Civita to Cartesian, is expressed as: ( x u2 u2 = 1 − 2 (2.7) y 2u u = 1 2 However, for sake of simplicity, Eq. (2.7) is introduced in a matrix-like format, as it follows: · ¸µ ¶ u1 u2 u1 r L(ur )ur − (2.8) = = u2 u1 u2 18 2.R EAL-TIME GUIDANCE SYSTEMS

Regarding the time, a Sundman transformation is performed, from the time-derivative to the τ-derivative, where τ is a fictitious time, indicated by ()˙ and ()0, respectively, as it follows:

dr 1 dr 1 r˙ r 0 (2.9) dt = r dτ ⇔ = r Moreover, after defining I as the 2x2 identity matrix, while u and v as two generic planar vectors, the following four properties of the two-dimensional matrix L(u) are presented:

• LT (u)L(u) r I; =

• L0(u) L(u0); = • L(u)v L(v)u; = •( u u)L(v)v–2(u v)L(u)f v (v v)L(u)u 0. · · + · = Then, applying the properties and the definitions described above, the equation of motions in Eq. (2.5) is transformed from Cartesian Coordinates to the Levi-Civita ones as it follows:

2 ¡ ¢ d ur µ 2 ur0 ur0 (ur ur ) T − · ur · L (ur )f (2.10) dτ2 + 2(u u ) = 2 r · r Moreover, since during orbital manoeuvres a thrust vector is applied to match the target, the energy E is not constant like in the two-body problem, but it varies with time:

T E 0 2u0 L (u )f (2.11) = r · r Then, after defining φ, A and α, which are the thrust angle, the thrust magnitude divided by the mass and the inverse of a, respectively, and expressing f in Levi-Civita coordinates:

Ar 3/2 µcos¡φ θ/2¢¶ fu ¡ − ¢ (2.12) = 2 sin φ θ/2 − the Levi-Civita equations of motion are found combining Eq. (2.10) and Eq. (2.11):  µα u00 ur fu  r = − 4 +    4A ¡ ¢ α0 pr u0 sin φ λ θ/2 = − µ r + − (2.13)   T m0 r  = − c  t 0 u u = r · r where the angle λ is defined by the following two equations:

u0 sinλ 1 (2.14) = q 2 2 u u 10 + 20

u0 cosλ 2 (2.15) = q 2 2 u u 10 + 20 2.4.H ERNANDEZ ALGORITHM BASICS 19

Finally, it is highlighted that, if no thrust is applied, both the inverse of the semi-major axis and the mass are constant. Then, the equations of motions in Eq. (2.13) are reduced to:  µα u00 ur r = − 4 (2.16) t 0 u u = r · r As it is clear from Eq. (2.16), the dynamical system becomes a de-coupled linear harmonic 2 oscillator, of the form u00 W u , with the oscillation frequency equal to W p E/2: r = − r = − while it is still required to integrate numerically the second equation of the system above to find the analytical solution in t, the one in τ is known analytically. The latter concept, which is particularly important for low-thrust transfers with long coasting periods, as it is typical for small-body proximity manoeuvres, is expressed mathematically as it follows:

ur0 ,0 ur (τ) ur,0 cos(W τ) sin(W τ) (2.17) = + W

2.4.2. KSTRANSFORMATION The KS model, introduced by Kustaanheimo and Stiefel[1965], may be considered as an extension of the Levi-Civita one, providing a regularisation for a three-dimensional system with the following mapping tool: r R3 u R4. Due to the difference in dimension ∈ → r ∈ between the two spaces, a class of augmented vectors have to be introduced as it follows: T T y ¡y , y , y ¢ y ¡y , y , y ,0¢ (2.18) = 1 2 3 → a = 1 2 3 where y is a generic 3D vector and ya is the corresponding augmented one. In particular, Eq. (2.8) is expressed in four dimensions as a function of the augmented radius vector:    u1 u2 u3 u4 u1  − −   u2 u1 u4 u3u2 ra L(ur )ur  − −   (2.19) = = u3 u4 u1 u2 u3 u u u u u 4 − 3 2 − 1 4 with L(ur ) respecting the properties introduced in Section 2.4.1. Then, the equations of motion, presented in Eq. (2.13) for the two-dimensional case, are extended to a 4D space:

 µα 1 T u0000 ur r L (ur )fa  r = − 4 + 2    4 T α0 u0 L (ur )fa = −µ r · (2.20)   T m0 r  = − c  t 0 u u = r · r Finally, the dimension mismatch between ur and x poses problems in initialising the KS coordinates at t0, since the algorithm starts from the Cartesian ones. Without deepening too much into details, left for Chapter5, the following relations are used [Aarseth, 2003]: r r0 x0 y0 z0 x0 0 : u1,0 + u2,0 u3,0 u4,0 0 ≥ = 2 = 2u1,0 = 2u1,0 = r (2.21) y0 r0 x0 z0 x0 0 : u1,0 u2,0 − u3,0 0 u4,0 < = 2u2,0 = 2 = = 2u2,0 20 2.R EAL-TIME GUIDANCE SYSTEMS

2.4.3. SIMULATOR ARCHITECTURE The GNC simulator architecture is presented in Fig. 2.9, where it is shown that the nav- igation contribution is essential to start the manoeuvre, but it is not required after t0. In particular, the target elements γ∗ and the tolerance ²γ to match each of them are given by the mission manager. Then, the navigation subsystem gives the initial state in Cartesian coordinates, which are converted to Keplerian elements, to calculate the initial difference between the current and the targeted ones, indicated by γ and γ∗, respectively. Further- more, x(t0) is also converted, depending on the dimension of the problem, to the coordi- nate set with which the algorithm is carried out: Levi-Civita for a two-dimensional problem and KS for a three-dimensional one. Afterwards, if the initial Keplerian elements and the targeted ones differ by more of the pre-set tolerance, the guidance and control loop can start. The whole process is carried out in dimensionless units, with DU a , MU m , = 0 = 0 and TU chosen to provide µ 1, for the distance, mass and time unit, respectively. = Due to the two-body assumption and to the fact that an asteroid-fixed asteroid-centred reference frame is used, the main body is a point mass placed at the origin of the reference frame. Then, the only input needed by the environment box is the standard gravitational parameter µ of the small-body and the position of the spacecraft, from which the gravity acceleration g can be calculated. In the vehicle box, the properties of the engine, i.e., the thrust magnitude T and the velocity of the exhaust gas c, the mass m of the spacecraft and the control gain(s) K are stored. Merging the information from the latter two boxes, the planar thrust angle φ or the combination of elevation and azimuth (β,δ) are obtained, for a two- and three-dimensional formulation, respectively. Knowing them, it is possible to calculate the derivative of the regularised state ui , the inverse of the semi-major axis α, the spacecraft mass m and actual time t w.r.t. the fictitious time τ, called u0, α0, m0, t 0, respectively. These variables go into the propulsion box, which gives back, through their integration, the new spacecraft state. At this point, if the difference between the current and the targeted Keplerian elements is smaller than the tolerances, the simulation is considered concluded; otherwise, if the error associated with one or more targeted elements exceeds the tolerance, the algorithm calculates a way to get the spacecraft closer to them. Basically, the advantages of using a guidance algorithm which only requires the knowl- edge of the current state of the spacecraft and the target are obvious and have been ex- tensively treated in this section. Nevertheless, when dealing with irregular bodies, imple- menting a two-body formulation could lead to substantial differences between the reality and the simulation outputs. As an example, since under these assumptions the main body is modelled as a point mass, it is even possible to transform a close encounter into an im- pact: the algorithm by Hernandez and Akella[2016] needs some additional features to face the challenges imposed by small-body proximity environments. Then, after verifying and validating the results from the simulator, some possibilities to overcome these limitations, mainly due to oversimplifying assumptions on the main body, are treated in the following.

2.5. CONCLUSIONS This chapter deals with different topics about real-time systems, ranging from the defi- nition of the requirements characterising autonomous guidance algorithms to the design principles and the theory behind Lyapunov control laws. These concepts are supported by an extensive discussion on current and past missions towards small-bodies, which all sug- gest the computational efficiency and the real-time implementability as essential drivers 2.5.C ONCLUSIONS 21 for autonomy. However, also an acceptable accuracy of the solution is fundamental: as a result, the highest order explicit method in which the step order coincides with the accu- racy one is selected, i.e., RK4. Afterwards, a brief overview of the principles of Lyapunov control is introduced, backed by a full section on the Direct Method of Stability. Then, the core part of the chapter is represented by the analysis of the algorithm presented by Hernandez and Akella[2016], which allows for low computation time w.r.t. optimisation methods, and it needs only the current spacecraft state, instead of its history. Basically, the two main general limitations of the latter algorithm regard the impossibility of execut- ing rendezvous, i.e., matching all the orbital elements of the target and of the chaser, and the fact that the control gains are time-invariant. Instead, when focusing on small-body proximity operations, the biggest problems stem from the two-body problem assumption of the main body as a point mass and perfect sphere. However, although these two aspects should not be underestimated, the proposed algorithm still represents a good candidate for autonomous guidance, and it will be treated extensively in the following.

mission manager

target element(s): γ∗ tolerance(s): ²γ

navigation

initial state: x(t0),u(t0),xKep (t0) initial error: e γ γ∗ γ = −

target yes new state: u,xKep eγ ²γ ? matched | | <

no SGP: µ, KS state: u KS state: u

environment vehicle

engine: T,c gravity: g mass: m gain(s): K

thrust angle(s): β, δ

propulsion controller

Figure 2.9: Simulator architecture for a real-time GNC algorithm able to perform orbital manoeuvres within the two-body problem. 22 2.R EAL-TIME GUIDANCE SYSTEMS 3 2D ALGORITHM

This chapter is divided into three parts: Section 3.1 is centred on the definition of candi- date potentials for executing two-dimensional transfers and the verification of the result- ing Lyapunov-based algorithm by Hernandez and Akella[2014], Section 3.2 deals with its implementation in a small-body environment and with a possible solution to the impact problem, caused by the point mass assumption for the main body, while Section 3.3 is fully dedicated to a sensitivity analysis carried on the main tunable algorithm parameters: con- trol gains, tolerance and navigation errors. Finally, conclusions are drawn in Section 3.4.

3.1. IMPLEMENTATION &VERIFICATION As stated in Section 2.3, the core part of a Lyapunov-based guidance algorithm is the defi- nition of a potential able to ensure the convergence to the desired orbit. In particular, de- pending on which elements are targeted, the complexity of the function formulation may strongly vary: as an example, for certain manoeuvres, it is essential to implement a switch function which allows a thrust and coast mechanism, to avoid a substantial waste of fuel. In the following, the implementation and the verification of the algorithm by Hernan- dez and Akella[2014] is introduced, with differences by at the most one percent in time of flight and fuel mass used: they are caused by the fact that Hernandez and Akella[2014] did not always specify the tolerances and control gains implemented. Nevertheless, this difference is infrequent and so low that the algorithm can be still considered verified. The Cartesian and the Keplerian states are represented by x (x, y,x˙, y˙)T and x = Kep = (a,e,ω,θ)T , respectively. While the first formulation is crystal clear, the second one may seem strange, since the argument of periapsis is strictly undefined in the 2D case: in fact, ω is the angle measured from the spacecraft’s ascending node to its periapsis, and, in case of equatorial orbits, the right ascension of the ascending node is also strictly undefined. Nevertheless, following the convention of setting Ω 0◦, it can be obtained that: = ω atan2(e ,e ) (3.1) = y x where ex and ey are respectively the first and the second component of the vector e. Then, after this clarification, the implementation and the verification of the algorithm for trans- fers targeting a, e and a full combination of a, e, and ω, is presented in the following.

23 24 3.2DA LGORITHM

3.1.1. MATCHING SEMI-MAJOR AXIS The first step to target a∗ is to define e α α∗, which is minimised when the orbital α = − energy equals the targeted one. Then, a candidate Lyapunov function can be introduced:

1 2 Va e (3.2) = 2 α which must be always positive except at its equilibrium point, and its time-derivative must be negative semi-definite. Due to its quadratic nature, the first statement is already proved for this potential, while, substituting Eq. (2.13) in the time-derivative of Eq. (3.2), it is found:

pr ¡ ¢ V 0 4(α α∗)A u0 sin φ λ θ/2 (3.3) a = − − µ r + − Then, the only possibility to make Eq. (3.3) non-increasing is to define the thrust angle as:

φ λ θ/2 arcsin(K e ) (3.4) = − + + α where K 0 is the control gain, and to introduce it in the potential derivative, resulting in: >

4Apr ur0 2 V 0 K e (3.5) a = − µ α

Basically, from both Eqs. (3.2) and (3.5), it is clear that the potential Va respects the require- ments of the Lyapunov Direct Method of Stability. Then, applying the control in Eq. (3.4), it is possible for a spacecraft to converge to any targeted semi-major axis a∗. In Fig. 3.1, an example of the application of the guidance strategy presented above is shown, with the Earth acting as the main body. In particular, a spacecraft, starting from a 3 circular LEO, at less than 700 km over the Earth’ssurface, reaches a MEO with a∗ 10 km in = 4.3 hours. Thanks to the application of a high-thrust engine, with T 200, the TOF is quite = low, but about 80% of the initial spacecraft mass, i.e., m 1000 kg, is burnt. Moreover, 0 = for the same reason, the final eccentricity, which is not targeted, becomes considerable at the end of the transfer, overcoming three tenths. Finally, it is noted that, in the first third of the flight, 80% of eα is reached, while three days are needed for the remaining 500 km: this asymptotic behaviour is typical for the a matching of high-thrust engines, while the opposite happens for low-thrust ones.

3.1.2. MATCHING ECCENTRICITY Targeting the eccentricity requires, based on the specific combination of initial and final conditions, a certain number of coasting and thrusting arcs. This section is focused on tar- geting a circular orbit, for which the error ee , defined as the difference between the current eccentricity e and the targeted one e∗, is simply equal to e. In particular, the latter orbital element is related to the angular momentum as it follows:

q · 0 1¸µx˙¶ h µa ¡1 e2¢ r r˙ (x, y) (3.6) = − = × = 1 0 y˙ − Then, substituting Eq. (2.8) and its time-derivative in Eq. (3.6), it is found:

q · ¸ ¡ 2¢ T 0 1 £ ¤ ¡ ¢ h µa 1 e [L(u )u ] L(u )u0 2 u u0 u u0 (3.7) = − = r r 1 0 r r = 1 2 − 2 1 − 3.1.I MPLEMENTATION &VERIFICATION 25

104 1 10000

0.5 9000 0 y [km] a [km] -0.5 8000

-1 7000 -2 -1 0 1 0 1 2 3 4 x [km] 104 t [h]

0.4 800

0.3 600

0.2 400 m [kg] e [~]

0.1 200

0 0 0 1 2 3 4 0 1 2 3 4 t [h] t [h]

Figure 3.1: a matching around the Earth [Hernandez and Akella, 2014]. Orbit0: a0 7000 km, 4 1 4 = e 0, i Ω ω θ 0◦. Target: ² 10− DU− , a∗ 10 km. SC: T 200 N, I 400 s, 0 = 0 = 0 = 0 = 0 = α = = = sp = m 1000 kg. Gain: K 2. TS: h 10 s. 0 = a = =

Finally, squaring Eq. (3.7) and isolating the eccentricity, it is obtained: s α ¡ ¢2 e 1 4 u1u0 u2u0 (3.8) = − µ 2 − 1 where the term in the parenthesis is equal to half of the angular momentum h, positive by definition. In particular, the square of Eq. (3.8) is directly proportional to the potential:

1 2 1 2 1 α ¡ ¢2 Ve e e 2 u1u0 u2u0 (3.9) = 2 e = 2 = 2 − µ 2 − 1 which, being quadratic, is positive by definition, except at the equilibrium point. After- wards, it must be demonstrated that the time-derivative of the candidate Lyapunov func- tion is negative semi-definite. This is done by time-deriving Eq. (3.9), which results in:

α0 ¡ ¢2 α ¡ ¢¡ ¢ V 0 2 u1u0 u2u0 4 u1u0 u2u0 u1u00 u2u00 (3.10) e = − µ 2 − 1 − µ 2 − 1 2 − 1 Substituting the Levi-Civita definition of the angular momentum and of the position vector, introduced in Eqs. (3.7) and (2.13), respectively, in the last equation, it is found:

2 h hα 3/2 £ ¡ ¢ ¡ ¢¤ V 0 α0 Ar u1 sin φ θ/2 u2 cos φ θ/2 (3.11) e = − 2µ − µ − − − 26 3.2DA LGORITHM

Finally, recalling that a has already been matched, substituting the thrust angle φ from Eq. (3.4) in Eq. (3.11), the following equation is obtained through mathematical manipulations:

2αh ¡ ¢ 2αh Ve0 u1u10 u2u20 S f (3.12) = µur0 + = µur0

It is highlighted that, while the fraction in the last equation is positive by definition, the sign of the term in parenthesis depends on the specific Levi-Civita state u. This poses a threat for the second requirement of the Lyapunov Direct Method of Stability, and, to face it, the term is parenthesis is treated as a switching function: if the latter quantity is negative, then the spacecraft would thrust, finally converging towards the targeted eccentricity, while, in the opposite case, it will coast waiting for the switching function to change its sign. An example of the application of these equations is presented in Fig. 3.2, where an eccentricity matching about the Earth is presented. In particular, in Fig. 3.2a, the spacecraft trajectory is shown in the x-y plane, while Fig. 3.2a is focused on the time change of two orbital elements, i.e., a and e, the switch function S f and the propellant mass ∆m, with green and black segments indicating moments in which the spacecraft thrusts with T T0 = − 3 and T T , respectively. This transfer occurs at a fixed semi-major axis, i.e., a a∗ 10 = + 0 0 = = km, and, starting from a highly eccentric orbit, with e 0.7, a circular one is targeted while 0 = keeping the orbital energy constant. The manoeuvre lasts slightly more than a day, burning a propellant mass equivalent to 50% of the total initial mass of the spacecraft, set to m 0 = 1000 kg. The amplitude of the switching function follows a negative exponential sinusoid trend, with an amplitude close to zero at the end of the transfer. Finally, after introducing how to target separately the semi-major axis and the eccen- tricity, these two concepts are combined in the following. Unfortunately, some complica- tions arise: since α is matched only up to a certain tolerance, the original formulation of the control angle has to be used, making α not constant any more during the e matching process. As a result, an additional term is added to Eq. (3.12), which is changed to:

1/2 2 2AK ur0 r h 2αh ¡ ¢ Ve0 2 eα u1u10 u2u20 (3.13) = µ + µur0 +

Then, if the transfer is towards a lower orbit, the considerations made for Eq. (3.12) are still valid, while, if a higher one is targeted, an additional check is implemented: being the first term in Eq. (3.13) positive, it must be assured that it does not overcome the second one. An example of the double matching of a and e is shown in Fig. 3.3, where it is noted how the first element changes even while targeting the second one, allowing to reach an 3 accuracy in the semi-major axis about ten times smaller than the original one, i.e., ² 10− α = DU. The orbital manoeuvre lasts slightly less than fifty days, with only the last 5% of the transfer dedicated to the circularisation procedure: this is due the fact that, using a low- thrust engine with T 1 N and starting from a circular orbit, the maximum value reached = by the eccentricity is e 0.01. Moreover, due to a high specific impulse, i.e., I 3000 s, ≈ sp = the propellant mass used is limited to about 140 kg, corresponding to the 14% of the initial mass. The spacecraft starts in a LEO, at an altitude of about 600 km, and ends in a high Earth orbit, multiplying the initial semi-major axis by a factor of six, up to a∗ 42164 km. = 3.1.I MPLEMENTATION &VERIFICATION 27

(a) Cartesian coordinates

104 1.0001 0.8

1.00005 0.6

1 0.4 e [~] a [km] 0.99995 0.2

0.9999 0 0 5 10 15 20 25 0 5 10 15 20 25 t [h] t [h]

1 600

0.5 400 [~]

f 0 m [kg] S 200 -0.5

-1 0 0 5 10 15 20 25 0 5 10 15 20 25 t [h] t [h]

(b) a, S f , e and ∆m history

Figure 3.2: e matching around the Earth [Hernandez and Akella, 2014]. Orbit0: a0 10000 km, 2 = e 0.7, i Ω ω θ 0◦. Target: ² 10− , e∗ 0. SC: T 50 N, I 1000 s, m 1000 kg. 0 = 0 = 0 = 0 = 0 = e = = = sp = 0 = Gain: K 0.15. TS: h 10 s. e = = 28 3.2DA LGORITHM

(a) Cartesian coordinates

104 0.015 4

3 0.01 e [~] a [km] 2 0.005

1 0 0 10 20 30 40 0 10 20 30 40 t [d] t [d]

1 150

0.5 100 [~]

f 0 m [kg] S 50 -0.5

-1 0 0 10 20 30 40 0 10 20 30 40 t [d] t [d]

(b) a, e, S f and ∆m history

Figure 3.3: a and e matching around the Earth [Hernandez and Akella, 2014]. Orbit0: a0 6978 3 1 4 = km, e 0, i Ω ω θ 0◦. Target: ² 10− DU− , ² 10− , a∗ 42164 km, e∗ 0. SC: 0 = 0 = 0 = 0 = 0 = α = e = = = T 1 N, I 3000 s, m 1000 kg. Gains: K 1, K 0.55. TS: h 10 s. = sp = 0 = a = e = = 3.1.I MPLEMENTATION &VERIFICATION 29

3.1.3. MATCHING FULL ORBIT Targeting the argument of periapsis in the two-dimensional case corresponds to match the two components of the eccentricity vector, i.e., ex∗ and e∗y . The eccentricity vector is expressed in Cartesian coordinates as:

1 h³ µ´ i e v2 r (r v)v (3.14) = µ − r − · Substituting the Levi-Civita position vector from Eq. (2.8) in the last equation, it is found:

1 £¡ ¢ ¡ ¢ ¤ e 4u0 u0 µ L(u)u 4 u u0 L(u)u0 (3.15) = µr · − − · which is decomposed by components in the following:  · ¸ 1 4 ³ 2 2 2 2´ ¡ 2 2¢ µ ¶ u1u20 u2u10 u1 u2 ex r µ − − −  e   (3.16) = ey =  4  αu1u2 u0 u0 − − µ 1 2

From the last equation, both the errors e e e∗ and e e e∗ are calculated. More- ex = x − x ey = y − y over, through extensive mathematical manipulations, the time-derivative of the compo- nents of the eccentricity vector can be found, with the result presented in the following:

µ ¶ µ 2 ¡ ¢ ¡ ¢ ¶ ex0 pr u1 sin φ λ θ/2 r sinλcos φ θ/2 e0 4Au0 ¡ + − ¢− ¡ − ¢ (3.17) = e0 = µ u1u2 sin φ λ θ/2 r /2cos φ λ θ/2 y + − − − − The next step is the definition of a quadratic potential, positive by definition, function of the square of the difference between the actual eccentricity vector and the targeted one:

1 ¡ ¢T ¡ ¢ 1 ¡ ¢2 1 ³ ´2 Vω e e∗ e e∗ ex e∗ ey e∗ (3.18) = 2 − − = 2 − x + 2 − y To demonstrate the second requirement of the Lyapunov Direct Method of Stability, the time-derivative of the last equation is calculated as it follows:

¡ ¢ ³ ´ V 0 e e∗ e0 e e∗ e0 (3.19) ω = x − x x + y − y y Then, the components of the eccentricity vector and their time-derivatives, presented in Eqs. (3.16) and (3.17), respectively, are substituted in the last equation. Furthermore, also the thrust angle from Eq. (3.4) is introduced in Eq. (3.19), and, after some mathematical manipulations, the following expression is found:

3/2 3/2 2Ar h ³ 2 2´ i 2Ar Vω0 2u10 u20 eex u20 u10 eey S f (3.20) = − µur0 + − = − µur0 where it is highlighted again that the semi-major axis has already been matched, making the control angle only dependent on λ and θ. However, since the sign in parenthesis in the latter equation varies as a function of the spacecraft state, to ensure that Eq. (3.20) is non-increasing, a switching function S f is introduced: if the latter quantity is positive, then the spacecraft would thrust, finally converging towards ω∗, while, in the opposite case, it will coast waiting for the switching function to change its sign. Naturally, in the two- dimensional case, matching ω corresponds to doing it also for e, as it is clear from Eq. (3.1). 30 3.2DA LGORITHM

After introducing how to target separately the semi-major axis and the combination of eccentricity and argument of periapsis, these two concepts are combined in the following. Unfortunately, α is matched only up to a certain tolerance: as a result, the original formu- lation of the control angle in Eq. (3.4) has to be used, making α not constant even in the second part of the flight. From these considerations, a new term is added to Eq. (3.20):

1/2 2Ar ur0 £ ¤ V 0 keα S f (3.21) ω = µ − with ³ ´ k 2K u u e u e (3.22) = 1 1 ex + 2 ey and r ³ ³ 2 2´ ´ S f 2 2u10 u20 eex u20 u10 eey (3.23) = ur0 + −

An important conclusion stems from Eq. (3.21): if keα is smaller than S f , the same logic presented before can still be applied; on the other hand, if at the end of the flight S f de- creases too much compared to keα, a further analysis is needed. In fact, to converge to the final orbit, the whole bracket in Eq. (3.21) must be negative when thrusting. An example of a full transfer, i.e, a complete matching of a, e and ω, is shown in Fig. 3.4: in particular, in Fig. 3.4a, the transfer in the x y plane is presented, while, in Fig. 3.4b, the − variation of the three orbital elements and the spacecraft mass are given. It is highlighted how the coast and thrust segments are clearly distinguishable, especially in the mass plot, where they are depicted as green and black lines, respectively. The initial semi-major axis and eccentricity are doubled, up to a∗ 20000 km and e∗ 0.6, while the argument of = = periapsis reaches ninety degrees, starting from zero. The first part of the two-day transfer is dedicated to the targeting of the orbital energy, with the remaining 80% of the TOF focused on the simultaneous matching of the remaining two orbital elements. Moreover, since the manoeuvre is composed of both thrusting and coasting periods, and during the last one the orbital elements and the propellant mass do not change, all the green segments in Fig. 3.4b are horizontal. Furthermore, due to the implementation of a high-thrust engine, with T 100 N and I 400 s, half of the initial mass is burnt, corresponding to almost 500 = sp = kg. Finally, it is highlighted that, being strict the tolerances set on the eccentricity and 2 the argument of periapsis, i.e., ² 10− and ² 0.01◦, only a tiny fraction of the last e = ω = fifteen hours is used for thrusting: during the large majority of this period, the spacecraft is coasting, simply waiting for the right combination of u10 and u20 to thrust.

3.2. SIMULATIONS The simulations analysed in the following are carried out for a spacecraft orbiting the NEA 433 Eros (mean radius R 16.84 km, mass m 6.687 1015 kg) under the two-body Eros = Eros = assumption. However, although this asteroid is depicted as a perfect sphere in the next figures, it is highlighted that it is actually a pretty irregular body, with the longest and the shortest axis measuring about 34 km and 11 km, respectively [Yeomans et al., 2000]. Several transfers have been treated in this chapter, but some of them require further analysis. Basically, it is noted that when only the semi-major axis is targeted, there is an im- portant difference on the path followed by the spacecraft, based on the relation between a0 and its final value a∗: if the purpose of the orbital manoeuvre is to match a higher orbit, i.e., 3.2.S IMULATIONS 31

104 2

1.5

1

0.5

0

-0.5

y [km] -1

-1.5

-2

-2.5

-3

-3.5 -4 -3 -2 -1 0 1 2 3 x [km] 104 (a) Cartesian coordinates

104 2 0.6

0.4 1.5 e [~] a [km]

0.2

1 0 0.5 1 1.5 0 0.5 1 1.5 t [d] t [d]

100 600

50 400 [deg] m [kg] 0 200

-50 0 0 0.5 1 1.5 0 0.5 1 1.5 t [d] t [d]

(b) a, e, ω and ∆m history

Figure 3.4: a, e and ω matching around the Earth [Hernandez et al., 2014]. Orbit0: a0 10000 1 1 2 = km, e 0.3, i Ω ω θ 0◦. Target: ² 10− DU− , ² 10− , ² 0.01◦, a∗ 20000 km, 0 = 0 = 0 = 0 = 0 = α = e = ω = = e∗ 0.6, ω∗ 90◦. SC: T 100 N, I 400 s, m 1000 kg. Gains: K 1, K 0.55. TS: h 10 s. = = = sp = 0 = a = e = = 32 3.2DA LGORITHM

a a∗, there is no risk of impact; on the other hand, if the spacecraft is directed towards a 0 < lower one, i.e., a a∗, some complications arise. In fact, assuming that the vehicle starts 0 > from an orbit in which the combination of the initial semi-major axis and eccentricity does not allow to have an impact, i.e., the radius at periapsis r a(1 e) is larger than the radius p = − of the celestial body, decreasing the height also corresponds to increase the eccentricity, re- sulting in a double negative effect on rp . As an example, in Fig. 3.5a, a transfer towards a lower orbit is shown, where the targeted semi-major axis is only 7% larger than the asteroid radius, i.e., a∗ 18 km. At the beginning of the orbital manoeuvre, the spacecraft state is = defined by a 30 km, e 0.25 and ω 0◦, corresponding to an altitude one-third larger 0 = 0 = = than the asteroid radius. The total transfer lasts 1.35 days and only 300 grams of propel- lant are burnt, thanks to a tiny thrust magnitude and a considerable specific impulse, i.e., T 25 mN and I 1000 s, but, after about half of the total time of flight, the spacecraft = sp = impacts on the main body surface. However, due to the two-body problem assumption on which the algorithm by Hernandez and Akella[2014] is based, 433 Eros is considered as a point mass, and, then, the real-time guidance is basically not able to address this problem. The easiest solution is to maintain the original structure and to implement an addi- tional check on the evolution of the periapsis radius: if this quantity is smaller than a cer- tain limit, named rplim , the spacecraft would stop the a matching and start a circularisa- tion, decreasing the eccentricity to take rp to a safer value. This approach is presented in Fig. 3.5b, where the same initial and final data of the last example are used, but a limit on the radius at periapsis is imposed, i.e., r 17.5 km, equivalent to the asteroid mean ra- plim = dius plus a 4% margin. Comparing the two cases treated in Fig. 3.5, it is noted that avoiding the impact has a huge cost: the fuel mass increases by fifty percent and the time of flight almost triples, from 300 to 470 grams and from 1.35 to 3.14 days, respectively. Moreover, the thrust is not applied continuously any more, and this explains why the increase in the transfer duration is larger than the one for the spacecraft mass: eight coast arcs are needed to complete the circularisation procedure, during which, naturally, no fuel is wasted. In this way, targeting the semi-major axis corresponds to a sort of double matching of a and e, due to the fact that, if a∗ is only slightly larger than the asteroid radius, non-circular or- bits tend to result in impacts. Additionally, if this check is active, it is fundamental to satisfy two other conditions, i.e., ensuring that the initial and final radius at periapsis, called rp,0 and rp,f , respectively, are larger than rp,lim: in fact, if this is not the case, the transfer would be physically impossible. On the other hand, to keep the algorithm as flexible as possible, it is highlighted than setting r 0 would disable this new functionality: by definition, p,lim = the radius at periapsis cannot become negative, so no constraint would be imposed. Finally, to sum up, thanks to this approach, the non-impact condition is implemented as a mission constraint while matching the orbital energy, overcoming a severe limitation of the original algorithm. The simulator architecture remains practically unchanged, and the presence of a conditional statement, i.e., the if command, does not compromise the computation effort. In this way, the non-impact condition is implemented satisfying the second part of the research question formulated in Section 1.1: the simplicity and the com- putational efficiency of the algorithm by Hernandez and Akella[2014] are maintained. 3.2.S IMULATIONS 33

30 25 25

20 a [km] 20 15 0 0.5 1 10 t [d]

5 0.35

0.3

0 e [~]

y [km] 0.25 -5 0 0.5 1 -10 t [d]

-15 35 30 -20 25 r [km] 20 -25 15

0 0.5 1 -40 -30 -20 -10 0 10 20 t [d] x [km]

(a) Original algorithm

30 25 25

20 a [km] 20 15 0 1 2 3 10 t [d]

5 0.3

0.2

0 e [~]

y [km] 0.1 -5 0 1 2 3 -10 t [d]

-15 35

-20 30

r [km] 25

-25 20

0 1 2 3 -40 -30 -20 -10 0 10 20 t [d] x [km]

(b) Non-impact condition

Figure 3.5: a matching around 433 Eros. Orbit : a 30 km, e 0.25, i Ω ω 0◦, θ 30◦. 0 0 = 0 = 0 = 0 = 0 = 0 = Target: ² 1 m, a∗ 18 km. SC: T 25 mN, I 1000 s, m 2500 kg. Gain: K 1. r a = = = sp = 0 = a = p,lim = 17.5 km. TS: h 10 s. = 34 3.2DA LGORITHM

3.3. SENSITIVITY ANALYSIS This section is divided into four parts: Section 3.3.1 gives the main motivations to carry on a sensitivity analysis, while the effects of changing the control gains, the tolerances and the navigation errors are treated in Sections 3.3.2, 3.3.3 and 3.3.4, respectively.

3.3.1. INTRODUCTION The main goal of a sensitivity analysis is to understand how "the uncertainty in the out- put of a model can be apportioned to different sources of uncertainty in the model input" [Saltelli et al., 2008]. Unfortunately, uncertainty is unavoidable, constituting an obvious consequence of the scientific method in all the disciplines: as a result, a sensitivity anal- ysis is essential to perform any realistic modelling activities. Among the several reasons suggesting its application, the two most important ones for a guidance algorithm are:

• Testing the robustness of the simulator, in particular how its outputs suffer from un- certain navigation inputs. Naturally, these initial data cannot be impeccable, but the main problem is that, additionally to being erroneous, it is not even possible to perfectly know their intrinsic error magnitude. In fact, this quantity can only be estimated within a certain interval of confidence, making the overall situation even worse. Nevertheless, it is interesting to tune the initial errors to understand how the system reacts and if the produced results are within a sphere of acceptability. For example, it is worth to study if the effects of an initial error in the position of the spacecraft (as an example, 10 m in the semi-major axis) will be magnified in the final results (100 m), will remain constant ( 10 m) or will even decrease (1 m). Obviously, ≈ while the last case is the most favourable one, it is also the most difficult to obtain.

• Providing a sufficient knowledge of the cause and effect relationship between sys- tem inputs and outputs: this motivation is not related to uncertain inputs, but to the complexity of the algorithm itself. In fact, its performances are strongly characterised by the accepted error tolerance and the definition of the control gains: although it is clear that higher tolerances on the final results would allow to reach more easily a predefined target than strict ones or that a gain should minimise the candidate Lya- punov function to obtain faster and better results, the answer is not obvious. Indeed, tolerances too close to zero could even be unreachable for the guidance algorithm while too high ones would produce results without any realistic usefulness, depend- ing on the mission requirements. On the other hand, too low gains may easily result in extremely long flight times, while too large ones could lead to control saturation. Since it is not possible to find a unique analytical relation between the accepted tol- erance or the control gain with the time of flight or the fuel consumptions, which are the two most interesting outputs of the algorithm, a further analysis is needed.

The relation between the latter two concepts and the requirements of a real-time guidance algorithm is clear (cf. Section 2.1.5). In particular, while "being able to deal with erroneous inputs from the navigation subsystem" is exactly the definition of robustness (G01), the second reason for a sensitivity analysis is linked to both real-time implementability (G02) and verifiability (G03). In fact, for simple systems, it is easier to provide a relationship be- tween its inputs and its outputs w.r.t. complicate ones, but this attribute also relates to the possibility to properly verify the accuracy and the performance of the solutions. 3.3.S ENSITIVITY ANALYSIS 35

3.3.2. CONTROL GAINS The control gain K constitutes, together with the error eα, the only controllable variable to define the thrust angle. However, since the latter quantity depends on the state of the spacecraft and cannot be set independently from that, the gain magnitude acquires even more importance. Due to the fact that in Eq. (3.4) the term K eα is the argument of an arc- sine, and the function arcsine(x) gives real results only for 1 x 1, a first limitation − ≤ ≤ + is imposed on the gain: if it varies during the transfer, its maximum value is K 1/ e , = || α|| while, if it is constant, it can be equal to K 1/ e at the most. The latter statement = || α,0|| is valid only during the first part of the manoeuvre, i.e., when targeting the orbital energy, since the double possibility of fixed and variable control gain is not given during the match- ing of e and ω, due to the fact that eα could become zero, corresponding to a singularity. Then, to differentiate among the two parts of the transfer, the effects of varying two gains for the first and the second part of the flight, called Ka and Ke , respectively, are discussed:

• The TOF and the m f are largely affected by different Ka, reaching the best results in case of a variable gain, with which the thrust can be set parallel to the velocity. This analysis is shown in Fig. 3.6, where it is noted that the TOF for a small fixed K is five times larger than for the variable one, while this difference is strongly reduced, but still considerable, for the largest K . The same happens for m f : the thrust is continu- ous for the a matching and the control gain only acts on the thrust direction. Finally, for the second part of the flight, the larger Ke , the more efficient is the transfer.

• The TOF and the m f are only slightly affected by different Ke , which has to be fixed to avoid singularities, and, due to this reason, no analysis is presented in the following. Its maximum value is K K / e , where e is the error in α after the matching. = e || α,a|| α,a

300 Fixed K a Variable K a 250

200

150 TOF [d]

100

50

0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1 K [~] a

Figure 3.6: Time of flight vs control gain Ka for an a, e and ω matching around 433 Eros. Orbit0: 2 a 25 km, e 0.2, i Ω ω θ 0◦. Target: ² 500 m, ² 10− , ² 0.1◦, a∗ 60 km, 0 = 0 = 0 = 0 = 0 = 0 = a = e = ω = = e∗ 0.4, ω∗ 45◦. SC: T 10 mN, I 1000 s, m 2500 kg. Gain: K 0.85. TS: h 10 s. = = = sp = 0 = e = = 36 3.2DA LGORITHM

3.3.3. SEMI-MAJOR AXIS TOLERANCE In an orbit transfer, which aims to match a, e and ω, three tolerances are required: on one hand, even after a is matched, the difference with the targeted orbital energy keeps on de- creasing; on the other hand, the possibility to match a quite low ²e or ²ω, on the order of 4 10− rad, strongly depends on the engine properties, and it is beyond the scope of this re- port. Then, only the consequences of changing ²a are shown in Fig. 3.7, in which both the effects on the time of flight and the fuel mass are shown: while the latter parameter de- creases monotonically for higher tolerances, the former one follows a more complex path. This behaviour seems to contradicts the results from the last section, where it is stated that both the TOF and the m f follow a similar curve while varying the gain magnitude, as a con- sequence of the continuous thrust logic during the a matching. However, this discrepancy is based on the definition of the thrust angle: a difference in ²α has a different effect that one in K , since the latter term can be expressed as a function of the tolerance itself. Then, the irregular TOF curve is not only caused by the time to reach α with a different tolerance, but also by the effects of the control angle on the switching function. As a result, the dis- continuity seen in the TOF for an eα ranging from 500 m to 2.25 km is not reproduced in the fuel mass because it represents a coasting arc. However, it is not possible to predict this behaviour beforehand, and the variability in the TOF due to this tolerance poses a critical- ity in the misuse of this algorithm: to avoid a prolonged TOF, if the duration of the second part of the flight is expected to be conspicuous, eα is chosen on the order of kilometres. Finally, there is a strong motivation for the selection of the range in Fig. 3.7. In fact, up to ² 3.5 km, a∗ is reached with sub-millimetre accuracy, while from 4 km onwards a = the final error grows exponentially: it would make no sense to compare the effects of ²a for transfers in which the final orbit is not reached with a similar accuracy.

14

13.5

13 TOF [d] 12.5

0.25 1 2 3 [km] a

780

770

m [g] 760

750

0.25 1 2 3 [km] a

Figure 3.7: Time of flight and fuel mass vs ²a for an a, e and ω matching around 433 Eros. Orbit0: 2 a 25 km, e 0.2, i Ω ω θ 0◦. Target: ² 10− , ² 0.1◦, a∗ 60 km, e∗ 0.4, 0 = 0 = 0 = 0 = 0 = 0 = e = ω = = = ω∗ 45◦. SC: T 10 mN, I 1000 s, m 2500 kg. Gain: K 1, K 0.85. TS: h 10 s. = = sp = 0 = a = e = = 3.3.S ENSITIVITY ANALYSIS 37

3.3.4. NAVIGATION ERRORS This section deals with the ability of the algorithm to withstand navigation errors. In par- ticular, since it requires information from the "external world" only at t0, the first step is the definition of an initial estimated state, an initial real state and their difference, i.e., the nav- igation errors: their formulation is presented in Eqs. (3.24), (3.25) and (3.26), respectively.

x (x , y ,v ,v )T (3.24) 0 = 0 0 x0 y0 x (x , y ,v ,v )T (3.25) 0 = 0 0 x0 y0 e x x (e ,e ,e ,e )T (3.26) 0 = − 0 = x0 y0 vx0 v y0 After these definitions, the question is how the error e0 propagates during the transfer, i.e., how much the outputs of the algorithm are affected by a small change in the inputs, which can be considered a perturbation. In particular, a crucial part of the matching procedure is the evaluation of the thrust angle φ from Eq. (3.4), which is dependent on the current semi- major axis. Unfortunately, it is not possible to perfectly know the latter orbital element in case of navigation errors and, as a result, instead of thrusting in the direction of φ, the spacecraft would do it towards φ. In mathematical terms, this angle is defined as it follows:

φ λ θ/2 arcsin(K e ) (3.27) = − + + α There is a branch of numerical analysis which assesses the robustness of an algorithm, in which the dynamic systems are divided into well- and ill-conditioned ones: in general, several techniques are available for this scope, and, among them, one of the most popular is the calculation of the condition number [Belsley et al., 2005]. Nevertheless, due to the complexity of the algorithm treated in this chapter, the latter possibility is excluded, and the only alternatives are the so-called search techniques [Saltelli et al., 2008]. In the following, the two most used and simple ones for the requirements of this report are presented:

• Monte Carlo technique, where the possible results of a model are obtained substitut- ing a range of values for any input which has intrinsic uncertainty or for which the cause-effect relationship with the outputs is not clear. This operation is carried out several times, using different values of the inputs, according to their allocated ranges.

• Grid search technique, which differs from the Monte Carlo method only on the choice of the inputs values. In fact, instead of choosing them randomly, they are selected by dividing each of their ranges to obtain a certain number of combinations.

As a rule of thumb, the higher the number of variables to analyse, the more convenient it is to use the first technique: in fact, in this case, the convergence is considerably less af- fected by the dimension of the inputs w.r.t. what happens for the second method. However, despite this disadvantage, the grid search allows for a more systematic description of the results w.r.t. the Monte Carlo technique, and, even more importantly, to their reproducibil- ity (excluding the possibility to choose always the same set of random seeds for the Monte Carlo technique). Moreover, in the following examples, for sake of simplicity, the dimen- sion of the input for the grid is two: the position and velocity errors are treated separately to help their visualisation, while a case with their combined effect is presented in Fig. 3.10. 38 3.2DA LGORITHM

In the cases analysed in Figs. 3.8 and 3.9, the ranges used for the position and velocity errors are on the order of meters and millimetres per second, respectively, as done by Berry et al.[2013]: for the examples considered, it corresponds to one part out of one thousand w.r.t. the initial position and velocity magnitude. In particular, in Fig. 3.8, where only the errors in the position vector are taken into account, while the ones for the velocity are set to zero, it is noted that the effects of ex0 are predominant over the ones caused by ey0 for all of the three orbital elements considered: in fact, varying ey0, the error in the Keplerian elements barely change; on the other hand, even a small change in ex0 has a visible contri- bution over the final state. For the worst-case scenario, at the end of the transfer, the errors in a∗, e∗ and ω∗ account for more than 60 m, about 0.005 and almost three degrees, respec- tively: comparing them with their targeted values, i.e., a∗ 40 km, e∗ 0.3 and ω∗ 90◦, = = = it is noted how the impact of navigation errors on the semi-major axis and the eccentricity is limited to a small percentage, about 0.15% for the first one and even less for the second one, while the effects on the argument of periapsis are twenty times larger. This result can be explained by the presence of the switching function, a key variable in the second part of the flight: in fact, while for the semi-major axis the thrust is continuous, for the other two orbital elements the decision between activating the engine and coasting is only based on S f . Then, when the estimated state differs significantly from the real one, the spacecraft could end up thrusting in a moment when it should coast, making the time-derivative of the potential in Eq. (3.21) positive and, then, increasing the difference between the actual orbital element and the targeted one. On the other hand, Fig. 3.9 deals with the effects of the initial velocity errors over an orbital manoeuvre, while the position ones are set to zero. The results on the Keplerian elements are worse than the ones presented above, showing an error increment of about five times, still maintaining ω as the most affected one: the dynamic system is more sensitive to errors in the velocity vector than in the position one, when they account for the same percentage compared to the initial state. In particular, in the worst case, a∗, e∗ and ω∗ account for more than 250 m, about 0.015 and almost eleven degrees, respectively. This result is mainly explained by the fact that the orbital energy is proportional to the velocity squared and only inversely proportional to the position: as an example, in the case treated in this section, a small ev y0 could move the spacecraft to a highly eccentric orbit. However, this is not the largest difference between the two analy- sis: in fact, in the former one, the discrepancies in the y-axis barely affected the final state, while, when only the velocity errors are considered, the effects of ev y0 are strongly predom- inant over evx0. This behaviour is due to the fact that most of the laws characterising space applications are quadratic or cubic and the spacecraft starts at the periapsis. After studying the consequences of introducing position and velocity errors separately, in the following, they are analysed together to highlight the coupling effects between them. In particular, in Fig. 3.10, these two contributions are further divided into two groups: the navigation errors ex0 and ev y0, which have a greater effect on the final results, form the x- and y-axis, respectively, while the ones with marginal consequences on the targeting process are fixed to e 5 m and e 5 mm/s. The final outcomes are significantly more y0 = vx0 = influenced by the velocity errors than from the position ones, as already noted for Figs. 3.8 and 3.9: in the worst case scenario, the errors in a∗, e∗ and ω∗ account for more than 300 m, almost 0.025 and more than twelve degrees, respectively, representing an increment of the 20% compared to the case in Fig. 3.9. Then, it is possible to state that, since the coupling effect between ex and ev is limited, the considerations made above are still valid. 3.3.S ENSITIVITY ANALYSIS 39

5

60 4 50

3 40 [m] [m] a y0

30 err err 2

20 1 10

0 0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5 err [m] x0 (a) semi-major axis

10-3 5 5

4 4

3 3 [m] [~] e y0 err err 2 2

1 1

0 0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5 err [m] x0 (b) eccentricity

5

2.5 4

2 3 [m] [deg]

y0 1.5 err

2 err 1

1 0.5

0 0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5 err [m] x0 (c) argument of periapsis

Figure 3.8: Navigation errors for an a, e and ω matching around 433 Eros. Orbit0: a0 20 km, 2 = e 0.1, i Ω ω θ 0◦. Target: ² 100 m, ² 10− , ² 0.1◦, a∗ 40 km, e∗ 0.3, 0 = 0 = 0 = 0 = 0 = a = e = ω = = = ω∗ 90◦. SC: T 10 mN, I 1000 s, m 2500 kg. Gain: K 1, K 0.15. Navigation error: = = sp = 0 = a = e = er r er r 0 m/s. TS: h 10 s. vx0 = v y0 = = 40 3.2DA LGORITHM

5 250

4 200

3 150 [m] [mm/s] a vy0 err 2 100 err

1 50

0 0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5 err [mm/s] vx0 (a) semi-major axis

5

4 0.015

3 [~] e [mm/s] 0.01 err vy0 2 err

0.005 1

0 0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5 err [mm/s] vx0 (b) eccentricity

5 10

4 8

3 6 [deg] [mm/s] vy0

2 err

err 4

1 2

0 0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5 err [mm/s] vx0 (c) argument of periapsis

Figure 3.9: Navigation errors for an a, e and ω matching around 433 Eros. Orbit0: a0 20 km, 2 = e 0.1, i Ω ω θ 0◦. Target: ² 100 m, ² 10− , ² 0.1◦, a∗ 40 km, e∗ 0.3, 0 = 0 = 0 = 0 = 0 = a = e = ω = = = ω∗ 90◦. SC: T 10 mN, I 1000 s, m 2500 kg. Gain: K 1, K 0.15. Navigation error: = = sp = 0 = a = e = er r er r 0 m. TS: h 10 s. x0 = y0 = = 3.3.S ENSITIVITY ANALYSIS 41

5 300 4 250

3 200 [m] [mm/s] a 150 vy0 2 err err 100 1 50

0 0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5 err [m] x0 (a) semi-major axis

5

0.02 4

3 0.015 [~] e [mm/s] err vy0 2 0.01 err

1 0.005

0 0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5 err [m] x0 (b) eccentricity

5

12 4 10

3 8 [deg] [mm/s]

vy0 6

2 err err 4 1 2

0 0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5 err [m] x0 (c) argument of periapsis

Figure 3.10: Navigation errors for an a, e and ω matching around 433 Eros. Orbit0: a0 20 km, 2 = e 0.1, i Ω ω θ 0◦. Target: ² 100 m, ² 10− , ² 0.1◦, a∗ 40 km, e∗ 0.3, 0 = 0 = 0 = 0 = 0 = a = e = ω = = = ω∗ 90◦. SC: T 10 mN, I 1000 s, m 2500 kg. Gain: K 1, K 0.15. Navigation error: = = sp = 0 = a = e = er r 5 m, er r 5 mm/s. TS: h 10 s. y0 = vx0 = = 42 3.2DA LGORITHM

Finally, looking at the latter results from a broader perspective, it is clear that the errors introduced in the dynamic system at t0 are unavoidably magnified during the manoeuvre: the longer the TOF,the larger the perturbing effects. Nevertheless, this result was expected, and it is due to the absence of a second feedback from the navigation subsystem after the one at t0: in fact, an increase in the number of available observations would notably de- crease the final error, merging pieces of information coming from the modelling and the real world. However, even without this GNC upgrade, it is possible to state that the guid- ance algorithm presented in this chapter allows to limit the effects of the initial navigation errors to a sphere of acceptability, also in the case of transfers of a certain temporal length. Then, for sake of clarity, after discussing the grid results, two transfers about 433 Eros are shown in the following, with both the estimated and the real state plotted: they are indicated by red and black segments, respectively. In both cases, the following navigation errors are implemented: e e 5 m and e e 5 mm/s. In particular, only x0 = y0 = vx0 = v y0 = the final energy is targeted in Fig. 3.11: the spacecraft starts in an orbit with a 20 km, 0 = e 0.1 and ω 0◦, and it ends up doubling the semi-major axis, while the argument 0 = 0 = of periapsis is increased by more than 11◦ and the final eccentricity corresponds to the initial one. The difference between the estimated and real state increases over time, up to 330 meters, 0.03 and 2.5◦, for a, e and ω, respectively. Furthermore, the TOF differs in the real and the estimated case by about the 0.5 %, resulting in almost two grams of propellant wasted in the real one. Instead, in Fig. 3.12, a full two-dimensional manoeuvre is presented, with a spacecraft starting in an orbit with a 20 km, e 0.05 and ω 0◦. 0 = 0 = 0 = The final orbit, defined by a∗ 40 km, e∗ 0.3 and ω∗ 75◦, is reached in 10.89 days in the = = = real case, while for the estimated one about one and a half more are needed, resulting in a difference of 1.3 grams of propellant. However, also in this full transfer case, the effects of the navigation errors are limited to 240 m, 0.009 and 7.4◦, for a, e and ω, respectively.

3.4. CONCLUSIONS This chapter deals with the two-dimensional algorithm introduced by Hernandez and Akella [2014], which is implemented in MATLAB R2017a and then successfully verified compar- ing its results with the original ones. Afterwards, a possible solution to one of the more important threats for small-bodies proximity manoeuvres is presented: it consists of the implementation of a simple check on the radius at periapsis to avoid the spacecraft to im- pact on the asteroid, originally treated as a point mass. This approach allows to leave the simulator architecture basically unchanged, i.e., still a two-body problem perturbed only by engine thrust, but it enables for more flexibility. Then, after discussing the main reasons to carry out a sensitivity analysis, the effects of varying the control gains, divided into fixed and variable, and the tolerance for the orbital energy matching are presented: as expected, allowing the control gain to adapt during the transfer has terrific effects, permitting to halve the time of flight compared to the fixed case; on the other hand, the results from the tol- erance analysis on the semi-major axis are surprising, and it is noted how a difference of some hundreds of meters in ²a may significantly change the transfer duration, due to the presence of a switching function for matching e and ω. Finally, regarding the navigation er- rors, although the discrepancies introduced at the beginning between the actual state and the estimated one are strongly magnified, the results are promising: in fact, the final errors are limited to a sphere of acceptability, and they could be strongly reduced in case more observations of the "external world" were available by the navigation sensors. 3.4.C ONCLUSIONS 43

40

30

20

10

0 y [km] -10

10-3 25

-20 20

15 -30 10 5 -40 0 -5

17.995 18 18.005 -50 -60 -40 -20 0 20 40 60 x [km]

(a) Cartesian coordinates

(b) a, e, ω and ∆m history

Figure 3.11: a matching around 433 Eros. Orbit : a 20 km, e 0.1, i Ω ω θ 0 0 = 0 = 0 = 0 = 0 = 0 = 0◦. Target: ² 100 m, a∗ 40 km. SC: T 10 mN, I 1000 s, m 2500kg. Gain: K 1. a = = = sp = 0 = a = Navigation error: er r er r 5 m, er r er r 5 mm/s. TS: h 10 s. x0 = y0 = vx0 = v y0 = = 44 3.2DA LGORITHM

(a) Cartesian coordinates

40 0.3

35 0.2 e [~] a [km] 30 0.1

25 0 0 2 4 6 8 10 0 2 4 6 8 10 t [d] t [d]

80 600 60 40 400 [g] f [deg]

20 m 200 0 -20 0 0 2 4 6 8 10 0 2 4 6 8 10 t [d] t [d]

(b) a, e, ω and ∆m history

Figure 3.12: a, e and ω matching around 433 Eros. Orbit0: a0 25 km, e0 0.05, i0 Ω0 ω0 2 = = = = = θ 0◦. Target: ² 100 m, ² 10− , ² 0.1◦, a∗ 40 km, e∗ 0.3, ω∗ 75◦. SC: T 10 0 = a = e = ω = = = = = mN, I 1000 s, m 2500 kg. Gain: K 1, K 0.16. Navigation error: er r er r 5 m, sp = 0 = a = e = x0 = y0 = er r er r 5 mm/s. TS: h 1 s. vx0 = v y0 = = 4 3D ALGORITHM

This chapter represents the three-dimensional extension of the preceding one and it is based on the results by Hernandez and Akella[2016]. It is divided into three main parts: Section 4.1 deals with the definition of the candidate potentials to reach several combina- tions of Keplerian elements, Section 4.2 is focused on the validation of the algorithm previ- ously verified, comparing its results with the real-time simulator introduced by Petropoulos [2004] and with optimisation techniques, Section 4.3 is dedicated to the implementation of the algorithm in a small-body environment, treating also the relationship between uncer- tain inputs and simulator outputs. Finally, some conclusions are drawn in Section 4.4.

4.1. IMPLEMENTATION &VERIFICATION The algorithm presented in this chapter is implemented in MATLAB R2017a and it is ver- ified comparing its results with the ones by Hernandez and Akella[2016]: despite a small difference in fuel mass and TOF of about 1% in the a matching, the verification can be con- sidered successful, with this error attributed to a small difference in the definition of the control gain. These results are shown in Table 4.1, where it is noted that the full transfer is missing: this is due to the fact that the orbital manoeuvre matching a-e-i-Ω-ω is already used in the following section for validation. Finally, it is highlighted that, as done in Sec- tion 3.1, the next transfers are presented with an increasing difficulty: while a tangential thrust is sufficient in the first case, in the last one, after matching the orbital energy, four Keplerian elements are targeted simultaneously. This translates into the definition of quite a complex potential and into the necessity of converting some additional parameters in the model proposed by Kustaanheimo and Stiefel [Kustaanheimo and Stiefel, 1965].

Table 4.1: Algorithm verification with Hernandez and Akella[2016] ¡ ¢ Hernandez Canale ∆(TOF) ∆ ∆m f Target Figure TOF [d] ∆m f [kg] TOF [d] ∆m f [kg] [%] [h] [%] [kg] a Fig. 4.1 52.17 142.10 52.71 143.42 1.04 12.96 0.93 1.32 a-e Fig. 4.2 1.83 48.40 1.83 48.34 0.00 0.00 0.12 0.06 a-e-i Fig. 4.3 21.49 61.00 21.49 61.07 0.00 0.00 0.11 0.07 a-e-i-Ω Fig. 4.4 38.28 9.9 38.28 9.9 0.00 0.00 0.00 0.00

45 46 4.3DA LGORITHM

4.1.1. MATCHING ENERGY The main difference between the 2D and 3D description of the a targeting is the definition of the thrust acceleration vector f , which in 3D depends on two angles instead of one: the azimuth δ and the elevation β. This vector is represented in a body-fixed frame, defined by three unit vectors, i.e., rˆ0, hˆ and pˆ. In particular, the first two unit vectors are the velocity and the angular momentum, respectively, while the third one pˆ rˆ0 hˆ completes the right- = × handed tern. Then, in mathematical terms, the thrust vector is presented in the following:

T0 h i f sinβrˆ0 cosβcosδpˆ cosβsinδhˆ (4.1) = m + + The next step is the introduction of a quadratic potential, which is positive by definition:

1 2 Va e (4.2) = 2 α Afterwards, to demonstrate the fulfilments of the requirements of the Lyapunov Direct Method of Stability, the candidate potential from Eq. (4.2) is time-derived, resulting in:

4 T V 0 (α α∗)α0 (α α∗) u0 L (ur )fa (4.3) a = − = − − µ r · where the formulation of the derivative of α from Eq. (2.20) has been used. Substituting the augmented version of Eq. (4.1) in the last equation, it is obtained:

2eα T0 h i V 0 r 0 sinβrˆ0 cosβcosδpˆa cosβsinδhˆa (4.4) a = − µ m a · a + + where it has been taken advantage of the relationship between the time-derivatives of the position vectors in augmented Cartesian and KS coordinates, expressed in the following:

r 0 2L(u )u0 (4.5) a = r r Finally, since the three unit vectors in the bracket of Eq. (4.4) form a basis, they are mutually orthogonal, i.e. r pˆ 0 and r hˆ 0. Then, the last equation is simplified as it follows: a · a = a · a = 2 T0 V 0 r 0 sinβeα (4.6) a = −µ m with the potential not dependent on the azimuth angle, i.e., the orbital energy can only be changed thrusting in the direction of the velocity. Then, expressing the elevation angle as β arcsin(K e ) and choosing a positive control gain, the non-increasing nature of the = α time-derivative of the potential is certified. In mathematical terms, Eq. (4.6) becomes:

2 T0 2 V 0 r 0K e (4.7) a = −µ m α

Due to the fact that Va fulfils both requirements of the Lyapunov Direct Method of Stability, applying this strategy, a spacecraft starting from a0 will converge to any a∗. Moreover, it is highlighted that, for simulation purposes, Hernandez and Akella[2016] implements a slightly different control angle w.r.t the one described above, i.e., β arcsin[tanh(K e )]. = α In Fig. 4.1, a circle to circle manoeuvre about the Earth is shown, in which only the orbital energy is targeted. This orbital manoeuvre, which multiplies the initial semi-major 4.1.I MPLEMENTATION &VERIFICATION 47

Figure 4.1: a matching around the Earth [Hernandez and Akella, 2016]. Orbit0: a0 6978 km, 3 1 = e 0, i Ω ω θ 0◦. Target: ² 10− DU− , a∗ 42164 km. SC: T 1 N, I 3000 s, 0 = 0 = 0 = 0 = 0 = α = = = sp = m 1000 kg. Gain: K 50. TS: h 10 s. 0 = a = = axis by a factor of six, up to a∗ 42164 km, lasts almost 53 days, and it burns slightly more = than the 14% of the initial spacecraft mass (m 1000 kg), thanks to the low-thrust engine 0 = implemented on board. Another consequence of this engine, defined by T 1 N and I = sp = 3000 s, is that the eccentricity stably remains below 0.01 over the whole transfer.

4.1.2. MATCHING ECCENTRICITY The eccentricity can be targeted by thrusting in both the position and velocity directions, indicated by r and r 0, respectively: as a result, in principle, two degrees of freedom are available for the control strategy, but, being β 0◦ after the a matching, only the azimuth δ = remains as a tunable variable. For sake of simplicity, it is first shown how to target a circular orbit, and only afterwards the results are extended to elliptical ones. The first step is the introduction of a quadratic candidate potential, positive by defini- tion, function only of ee , which is equal to the eccentricity for a targeted circular orbit: · ¸ 1 2 1 2 1 2 4α ¡ ¢2 Ve e e (1 r α) ur u0 (4.8) = 2 e = 2 = 2 − + µ · r where use has been made of the definition of the eccentricity in KS coordinates given by Aarseth[2003], who derived it through the introduction in Eq. (3.6) of the KS angular mo- mentum, which is presented in Section 4.1.3. Then, the candidate potential is time-derived:

¡ ¢ 2α0 ¡ ¢2 4α ¡ ¢¡ ¢ V 0 (1 r α) r 0α r α0 ur u0 ur u0 u0 u0 ur u00 (4.9) e = − − + + µ · r + µ · r r · r + · r Substituting Eqs. (2.20), (4.1) and (4.5) into the last equation, through extensive mathemat- ical manipulations, the following definition of the time-derivative of the potential is found: 48 4.3DA LGORITHM

2 T · µ r 2α 1 ¶ ¸ 2 T 0 ¡ ¢2 0 ˆ Ve0 r 0 2 2 ur ur0 r (1 r α) sinβ r α(ur ur0 )(r p)cosδ (4.10) = µ m (r 0) − µ · + − + µ m · · Then, if the semi-major axis has already been matched, β 0◦ and the first part of the last = equation is zero. The resulting simplified formulation of Eq. (4.10) with α α∗ is: = 2 T0 2 T0 V 0 r α(ur u0 )(r pˆ)cosδ r αSe cosδ (4.11) e = µ m · r · = µ m

Basically, the sign of Eq. (4.11) is dependent only on the combination of Se and cosδ, being all the other parameters positive: as a result, to make Ve0 non-increasing, they are defined with opposite signs, allowing to match any e∗ e. The opposite is true to target any e∗ e, < > i.e., Se and cosδ must be chosen concordant. Moreover, during an in-plane transfer, only the azimuth values setting f 0 should be selected, limiting the possibilities to δ π. z = = ± Finally, to target simultaneously a and e, Eq. (4.9) has to be used instead of Eq. (4.11): in the first part of the flight a is reached only up to a certain tolerance. Consequently, it is not possible any more to ensure a non-decreasing potential just by properly selecting the sign of the Se - δ combination. However, this barely complicates the problem, which is solved by slightly overshooting a∗, which ensures the positivity of β in the second part of the flight. In Fig. 4.2, a double matching of a and e around the Earth is provided: about 60% of the transfer is used to target the first orbital element, while the remaining part deals with the eccentricity matching. The spacecraft starts in a low eccentric MEO, at an altitude of almost 3000 km, and in 1.83 days it reaches a high eccentric orbit with a semi-major axis of 30000 km. The implementation of a high-thrust engine with T 9.3 N is reflected in the = quantity of fuel burnt, i.e., almost 50 kg, equivalent to 15% of the initial mass.

104 104 3 2 2.5

0 2 y [km] a [km] 1.5 -2 1 -6 -4 -2 0 2 4 0 0.5 1 1.5 x [km] 104 t [d]

60 0.6 40 0.4 m [kg] e [~] 20 0.2

0 0 0.5 1 1.5 0 0.5 1 1.5 t [d] t [d]

Figure 4.2: a and e matching around the Earth [Hernandez and Akella, 2016]. Orbit0: a0 9222.7 3 1 3 = km, e 0.2, i Ω ω θ 0◦. Target: ² 10− DU− , ² 5 10− , a∗ 30000 km, e∗ 0.7. 0 = 0 = 0 = 0 = 0 = α = e = · = = SC: T 9.3 N, I 3100 s, m 300 kg. Gain: K 50. TS: h 10 s. = sp = 0 = = = 4.1.I MPLEMENTATION &VERIFICATION 49

4.1.3. MATCHING INCLINATION After presenting how to execute an in-plane manoeuvre, here it is discussed how to do it in an out-of-plane case, when the initial and final orbits have different inclinations. In particular, the next considerations are limited to matching an equatorial circular orbit, i.e., i ∗ 0◦ and e∗ 0: unfortunately, due to convergence reasons, with the current formulation = = it is not possible to target any different value for the eccentricity and the inclination without also selecting a final right ascension of the ascending node, as done in the next section. Following these clarifications, it is highlighted how, due to the fact that i is only depen- dent on the ratio between h3, the third component of the angular momentum vector, and its magnitude h, targeting the former one is equivalent to doing it for the inclination. Then, the definitions of the angular momentum vector and its time derivative in KS coordinates are needed. They are presented by Aarseth[2003] and reported in the following: µ ¶T T 2 T 2 T 2 T h (h1,h2,h3) u Au0 , u Bu0 , u Cu0 (4.12) = = r r r r r r r r r

¡ ¢T ¡ T ¢ h0 h0 ,h0 ,h0 L(u )[A,B,C] u f (4.13) = 1 2 3 = − r r · a where A, B and C are skew symmetric matrices only function of ur , defined as: A L(u )T Y L(u ) = r A r B L(u )T Y L(u ) (4.14) = r B r C L(u )T Y L(u ) = r C r with YA, YB and YC being three constant matrices, reported in the following:       0 0 0 0 0 0 1 0 0 1 0 0 − 0 0 1 0 0 0 0 0  1 0 0 0 Y  , Y  , Y −  (4.15) A = 0 1 0 0 B = 1 0 0 0 C =  0 0 0 0  −      0 0 0 0 0 0 0 0 0 0 0 0

Moreover, the targeted value of h∗ is known through the following relationship:   q sini ∗ sinΩ∗ ¡ 2¢ h∗ µa 1 e sini ∗ cosΩ∗ (4.16) = ∗ − ∗ cosi ∗

Afterwards, a quadratic candidate potential is found as a function of eh3 , i.e., the difference between the actual value of h3 and the desired one. In mathematical terms, it is found: µ ¶2 1 ¡ ¢2 1 2 T Vi h3 h∗ u Cu0 1 (4.17) = 2 − 3 = 2 r r r − where it is highlighted that for an equatorial circular orbit h∗ 1 in dimensionless units, 3 = with h h 0, as shown by Eq. (4.16). Then, the potential time-derivative is obtained: 1 = 2 = V 0 (h 1)h0 (h 1)L(u )Cu f (4.18) i = 3 − 3 = − 3 − r r · a Substituting the augmented form of the thrust acceleration from Eq. (4.1) in the last equa- tion and grouping all the terms except the latter one in a vector called q, it is found:

T0 h i V 0 q sinβrˆ0 cosβcosδpˆa cosβsinδhˆa (4.19) i = − · m a + + 50 4.3DA LGORITHM with q (h 1)L(u )Cu (4.20) = − 3 − r r The latter vector can be decomposed in two components, one lying in the plane defined by ˆ pˆ-h and the other one perpendicular to it, called q ˆ and q ˆ , respectively. Additionally, if pˆ h r 0 a has already been matched, the elevation angle is zero,− and Eq. (4.19) is reduced to:

h ³ ´i h ³ ´i T0 ˆ T0 ˆ Vi0 qpˆ hˆ cosδpˆ sinδh qrˆ cosδpˆ sinδh (4.21) = − m − · + − m 0 · + ˆ Finally, being q ˆ perpendicular to both pˆ and h, the last equation is simplified as it follows: r 0 h ³ ´i T0 ˆ Vi0 qpˆ hˆ cosδpˆ sinδh (4.22) = − m − · +

Basically, the only way to ensure a non-increasing Vi0 is to select the azimuth so that qpˆ hˆ and the parenthesis in the last equation are parallel. As a result, the chosen azimuth is: −   q hˆ Ã ! pˆ hˆ qa hˆa δ arctan − ·  arctan · (4.23) = qpˆ hˆ pˆ = qa pˆa − · · Finally, recalling the trigonometric relationships cos(arctanx) 1/p1 x2 and sin(arctanx) = + = x/p1 x2, inserting the new definition of the azimuth in Eq. (4.22) results in: + · ¸ T0 ¡ ¢2 ³ ´2 V 0 q pˆ q hˆ 0 (4.24) i = − m · + · ≤ Then, defining δ as done in Eq. (4.23) produces a non-increasing time-derivative of the potential, which respects the requirements of the Lyapunov Direct Method of Stability. An example of the application of this control strategy is shown in Fig. 4.3, where, start- ing from a circular LEO with a 6700 km and continuously thrusting with T 1 N for 0 = 0 = 21 days, a geostationary orbit is matched. In particular, the first 75% of the flight is used to target the orbital energy, while only over the last six days the inclination is decreased from 28.4◦ to zero degrees. The eccentricity stably remains below 0.03, reaching this peak after fifteen days and then steeply decreasing to zero, while the propellant mass used for the transfer corresponds to the 20% of the initial spacecraft mass, set to m 1000 kg. Fi- 0 = nally, it is highlighted that the semi-major axis targeting continues also in the second part of the flight, when both e and i are matched: as a result, a∗ is reached with an accuracy one hundred times smaller than the tolerance initially set.

4.1.4. MATCHING ANGULAR MOMENTUM VECTOR While targeting only h , after matching a∗, corresponds to doing it solely for i ∗ 0◦ and 3 = e∗ 0, converging to h∗ ensures that the spacecraft simultaneously reaches any value of i, = e, and Ω. Then, a candidate Lyapunov potential is defined as a quadratic function of the difference between the actual angular momentum and the desired one:

·µ ¶2 µ ¶2 µ ¶2¸ 1 ¡ ¢T ¡ ¢ 1 2 T 2 T 2 T Vh h h∗ h h∗ u Au0 h∗ u Bu0 h∗ u Cu0 h∗ = 2 − − = 2 r r r − 1 + r r r − 2 + r r r − 3 (4.25) 4.1.I MPLEMENTATION &VERIFICATION 51

(a) Cartesian coordinates

104 0.03 4

3 0.02 e [~] a [km] 2 0.01

1 0 0 5 10 15 20 0 5 10 15 20 t [d] t [d]

30 80

60 20 40 m [kg] i [deg] 10 20

0 0 0 5 10 15 20 0 5 10 15 20 t [d] t [d]

(b) a, e, i and ∆m history

Figure 4.3: a, e and i matching around the Earth [Hernandez and Akella, 2016]. Orbit0: a0 6700 1 1 2 = km, e 0, i 28.4◦, Ω ω θ 0◦. Target: ² 10− DU− , ² 10− , ² 0.5◦, a∗ 42100 0 = 0 = 0 = 0 = 0 = a = e = i = = km, e∗ 0, i ∗ 0◦. SC: T 1 N, I 3100 s, m 300 kg. Gain: K 50, K 25. TS: h 10 s. = = = sp = 0 = a = e = = 52 4.3DA LGORITHM with its time-derivative given by:

¡ ¢T V 0 h h∗ h0 (4.26) h = − Substituting the KS formulation of the angular momentum vector and its time-derivative, presented in Eqs. (4.12) and (4.13), respectively, in the latter equation, it is found: µ ¶ 2 T 2 T 2 T n³ £ ¤T ´ o V 0 u Au0 h∗, u Bu0 h∗, u Cu0 h∗ L(ur ) A,B,C ur fa (4.27) h = − r r r − 1 r r r − 2 r r r − 3 ·

As done in Section 4.1.3, the candidate potential is split into two parts, i.e., a vector called w, which includes all the components of the last equation except the contribution of the thrust, and the augmented form of the thrust acceleration from Eq. (4.1), resulting in:

T0 h i V 0 w sinβrˆ0 cosβcosδpˆa cosβsinδhˆa (4.28) h = − m · a + + with ¡ ¢ ¡ ¢ ¡ ¢ w h h∗ [L(u )Au ] h h∗ [L(u )Bu ] h h∗ [L(u )Cu ] (4.29) = 1 − 1 r r + 2 − 2 r r + 3 − 3 r r Noting that the latter vector can be decomposed in one component lying in the plane de- fined by pˆ-hˆ, called w , and one perpendicular to it, named w , and that the orbital pˆ hˆ r 0 energy has already been− matched, Eq. (4.28) can be simplified as it follows:

T0 h ³ ´i V 0 w cosδpˆa sinδhˆa (4.30) h = − m hˆ · +

Then, to ensure the non-increasing nature of Vh0 , the vector wh and the parenthesis in Eq. (4.30) must be parallel. This goal is reached by selecting the control as it follows:

à ˆ ! wh ha δ arctan · (4.31) = w pˆ h · a Introducing the last angle in the time-derivative of the potential makes it non-increasing: · ¸ T0 ¡ ¢2 ³ ´2 V 0 w pˆ w hˆ 0 (4.32) h = − m · + · ≤ Then, when the control angle defined in Eq. (4.31) is used, the potential introduced in Eq. (4.26) respects both the requirements of the Lyapunov Direct Method of Stability. In Fig. 4.4, it is shown a transfer around Ceres, which, being a dwarf planet with a tiny µ, requires a low-thrust engine to avoid the spacecraft to escape its orbit or, even worse, to impact the celestial body. The initial state of the spacecraft is defined by a 1500 km, 0 = e 0.05, i 30◦, with all the others Keplerian elements equal to zero, and the targeted 0 = 0 = orbit is fully described by a∗ 800 km, e∗ 0.2, i 30◦, Ω∗ 50◦. Basically, after the = = f = = asymptotic convergence of the semi-major axis, which happens at about TOF=10 days, the remaining three Keplerian elements are targeted simultaneously for thirty days. Finally, thanks to the implementation of a low-thrust engine, it is highlighted that the propellant burnt is less than 10 kg, corresponding to only one percent of the initial mass. 4.1.I MPLEMENTATION &VERIFICATION 53

(a) Cartesian coordinates

1500 0.2

e [~] 0.1 a [km] 1000

0 10 20 30 0 10 20 30 t [d] t [d]

32 400 30 200 [deg]

i [deg] 28 26 0 0 10 20 30 0 10 20 30 t [d] t [d] 400 10

200 5 [deg] m [kg]

0 0 0 10 20 30 0 10 20 30 t [d] t [d]

(b) a, e, i, Ω, ω and ∆m history

Figure 4.4: a, e, i and Ω matching around Ceres [Hernandez and Akella, 2016]. Orbit0: a0 1500 1 1 2 = km, e 0.05, i 30◦, Ω ω θ 0◦. Target: ² 10− DU− , ² 10− , ² 0.1◦, ² 0.1◦, 0 = 0 = 0 = 0 = 0 = α = e = i = Ω = a∗ 800 km, e∗ 0.2, i 30◦, Ω∗ 50◦. SC: T 91 mN, I 3100 s, m 1000 kg. Gains: = = f = = = sp = 0 = K K 50. TS: h 25 s. a = e = = 54 4.3DA LGORITHM

4.1.5. MATCHING ANGULAR MOMENTUM &ECCENTRICITY VECTORS This section deals with the implementation of a full three-dimensional transfer, matching T the final Keplerian state except the true anomaly, i.e., x∗ (a∗,e∗,i ∗,Ω∗,ω∗,θ∗ free) . Kep = = This is equivalent to converge simultaneously to the angular momentum vector, already treated in Section 4.1.4, and the first two components of the eccentricity one, expressed in the following as its magnitude multiplied by a parenthesis function of the targeted argu- ment of periapsis, right ascension of the ascending node and inclination: µ ¶ cosω∗ cosΩ∗ sinω∗ sinΩ∗ cosi ∗ e∗ e∗ − (4.33) = sinω∗ cosΩ∗ cosi ∗ cosω∗ sinΩ∗ + Then, the definitions of the eccentricity and its time-derivative are needed in KS coordi- nates, since in Section 4.1.2 only the magnitude of the eccentricity has been introduced. These formula, reported in the following, are given by Aarseth[2003]:

1 T £ ¤T e r 0 YA,YB ,YC ha rˆ (4.34) = r µ a − ½ ¾ r £ ¤T L(u) £ ¤T e0 YA,YB ,YC ha YA,YB ,YC u fa (4.35) = µ − r µ · Then, in the following, a potential is defined as the sum of two quadratic differences, i.e., between h and h∗, and between the first two components of e and e∗: 1 ¡ ¢T ¡ ¢ 1 ¡ ¢2 1 ¡ ¢2 1 1 1 Vo h h∗ h h∗ e1 e∗ e2 e∗ eh ee ee (4.36) = 2 − − + 2 − 1 + 2 − 2 = 2 + 2 1 + 2 2 The time-derivative of the latter potential is split into two parts, i.e., the thrust acceleration and the vector g , which includes all the components of the time-derivative of the poten- tial excluding the thrust. In particular, the latter vector can be decomposed in two terms, i.e., a contribution for the angular momentum vector, represented by w, and one for the eccentricity vector, called f . In mathematical terms, the time-derivative of Eq. (4.36) is:

T0 h ³ ´i V 0 g cosδpˆa sinδhˆa (4.37) o = − m · + where, being the orbital energy matched, the elevation has been set to zero, and with: g w f (4.38) = − · ¸ · ¸ 1 ¡ ¢ 1 ¡ ¢ f ee ra YAha L(ur ) r 0 C r 0 B ur ee ra YB ha L(ur ) r 0 A r 0 C ur (4.39) = 1 − r 2 − 3 + 2 − r 3 − 1 Finally, to make the derivative of candidate potential negative semi-definite, and then to satisfy the Lyapunov Direct Method of Stability, the vector g must be set parallel to the parenthesis in Eq. (4.37). This is possible by selecting the azimuth angle as it follows: Ã ! g hˆa δ arctan · (4.40) = g pˆ · a As an example, in Fig. 4.8, which is not presented here because its results are also crucial for validation purposes (cf. Section 4.2), a full three-dimensional transfer around the Earth is shown. This orbital manoeuvre lasts about one hundred and two days, in which the biggest challenge is the out-of-plane part: in fact, while the semi-major axis is increased by less than ten percent and the eccentricity remains almost unchanged between the beginning and the end of the flight, the inclination varies for about one hundred degrees. 4.2.A LGORITHM VALIDATION 55

4.2. ALGORITHM VALIDATION This section deals with the validation of the algorithm by Hernandez and Akella[2016], which has been verified in Section 4.1. The essential differences between these two activi- ties, part of the software quality control procedure, are given [Oberkampf et al., 1998]:

• The verification is aimed to determine if the computational model represents accu- rately the mathematical model.

• The validation is aimed to determine if the mathematical model approximates accu- rately the represented reality.

In case both activities provide acceptable results, the algorithm is consistent with the ex- pectations. In fact, in the first part, it is checked if the implementation and the solutions of a model are correct, and this is done comparing the results with other computational models, while, during the second one, the comparison is with experimental data. Unfortu- nately, it is not easy to obtain them, so that other sources have to be used, such as higher order models or analytical solutions for real-time guidance algorithms and integrators. In the following, the algorithm is pseudo-validated comparing its results with the ones presented by Petropoulos[2004], which implements a Lyapunov control strategy more com- plex than the one treated in this chapter, with several tunable parameters and allowing thrust/coast capabilities. On the other hand, the algorithm introduced by Hernandez and Akella[2016] requires only the setting of a control gain and some error tolerances, permit- ting thrust and coast capabilities only when just the semi-major axis and the eccentricity are targeted. After this background information, three different transfers are discussed:

Figure 4.5: a matching around the Earth [Edelbaum, 1965]. Orbit0: a0 6978 km, e0 0, i0 4 1 = = = Ω ω θ 0◦. Target: ² 10− DU− , a∗ 42164 km. SC: T 1 N, I 3000 s, m 1000 0 = 0 = 0 = α = = = sp = 0 = kg. Gain: K . TS: h 10 s. a = +∞ = 56 4.3DA LGORITHM

• In Fig. 4.6, an a-e matching around the Earth is shown, consisting of a circle to circle LEO to GEO transfer which lasts about fifteen days. Due to the fact that the eccentric- ity remains pretty low also during the first part of the flight, more than ninety percent of the manoeuvre is dedicated to targeting the orbital energy, and, only at the end, the circularisation takes place. The difference between the results of the two algorithms accounts for less than four percent in both time of flight and final mass.

• In Fig. 4.7, an a-e-i-Ω matching around Vesta is shown, consisting of a combination of out-of-plane and in-plane manoeuvres, which lasts more than forty days and it is split almost evenly into the energy targeting and the convergence of the other three Keplerian elements. While the change in inclination is almost negligible, the one for the right ascension of the ascending node accounts for almost twenty degrees. The difference between the results of the two algorithms is limited to less than ten percent and about forty percent for the time of flight and the final mass, respectively.

• In Fig. 4.8, a full transfer is shown, i.e., a-e-i-Ω-ω are targeted simultaneously, with a manoeuvre lasting more than one hundred days: while the variation of the semi- major axis is limited to ten percent and the couple e-Ω almost does not change be- tween the beginning and the end of the flight, the argument of periapsis and the in- clination increase by about eighty and one hundred degrees, respectively. The dif- ference between the results of the two algorithms accounts for slightly more than six and thirty percent for the time of flight and the propellant mass used, respectively.

The comparisons introduced above are summarised in Table 4.2, where the discrepancies in time of flights and fuel mass between the two algorithms are presented in both absolute and percentage terms, with the one by Petropoulos[2004] giving solutions closer to the op- timality than the one by Hernandez and Akella[2016]. In particular, two main conclusions stem from this table: the differences in TOF are always limited to less than ten percent, even if the three transfers have pretty diverse durations; the differences in fuel mass for the a-e-i-Ω matching and the full transfer are about four times larger than the ones for the TOF, while, for the simplest case, they almost coincide. This behaviour may be explained by the fact that, with the first algorithm, the spacecraft coasts for a significant part of the flight in the latter two cases, arriving at about 20% of the TOF for the most complex one, while the simulator presented here adopts a continuous thrust mechanism. Indeed, when a coasting mechanism is implemented, ∆(TOF) and ∆(∆m f ) are basically the same in percentage. As a result, it can be supposed that the discrepancies shown in Table 4.2 are mainly due to thrusting in periods where it is simply not needed, causing just a waste of fuel instead of being useful for the convergence to the final orbit. Basically, to solve this problem, some additional parameters should be introduced in the simulator, such as an efficiency one η, to influence the decision of when and if to thrust. This has been done by Petropoulos [2004], at the price of a more complex potential, which eventually leads to singularity when targeting equatorial or circular orbits, and no proof of convergence. After comparing the solutions of two Lyapunov-based algorithms, the discrepancies be- tween the results of the guidance logic presented in this chapter and some optimisation techniques are analysed in the following for the same three orbital manoeuvres introduced above, plus an additional one targeting only the energy. Without deepen into details, the most used optimisation techniques in space applications are described in the following: 4.2.A LGORITHM VALIDATION 57

Table 4.2: Algorithm results comparison with Petropoulos[2004]. ¡ ¢ Petropoulos Canale ∆(TOF) ∆ ∆m f Target Figure TOF [d] ∆m f [kg] TOF [d] ∆m f [kg] [%] [d] [%] [kg] a-e Fig. 4.6 14.6 41.5 15.2 43.1 3.9 0.6 3.8 1.6 a-e-i-Ω Fig. 4.7 37.5 3.8 41.2 5.4 9.9 3.7 42.4 1.6 a-e-i-Ω-ω Fig. 4.8 96.6 677.2 102.8 905.1 6.4 6.2 33.7 228.3

• The direct methods convert a continuous problem into a discrete one, avoiding the use of the analytical necessary conditions of the optimal control problem: the calcu- lation of the costate variables and the guess of their initial conditions are not needed [Conway, 2010]. These methods are particularly affected by trajectories which re- quire many revolutions, as in the case of low-thrust engines: the path is divided into time segments where the control direction is constant, changing discontinuously be- tween two of them, and their number may easily exceed a thousand [Betts, 2015]. Then, the fact that every control in a specific segment is considered a variable to be optimised, requiring also an initial guess, leads to a long computation time. Never- theless, compared to indirect methods, the direct ones are easier to be solved and set up in general, with the disadvantage of lacking a built-in accuracy metric.

• The indirect methods are founded on the calculus of variations, allowing the imple- mentation of fewer variables w.r.t. the direct ones [Hull, 2013]. The use of the analyt- ical necessary condition of the optimal control increases the dimension of the prob- lem, doubling it with the introduction of the costate variables [Betts, 2010]. Further- more, their lack of physical meaning makes difficult setting a realistic initial value, to which they are extremely sensitive. Basically, this problem can be partially solved via iteration, at the cost of hugely increasing the computation time. Additional complica- tions arise with path inequality constraints, since, when a constraint is only partially active, the knowledge of its switching time from inactive to active is fundamental, but in general not available. However, in some particular cases, these methods provide analytical solutions, and they do always present a clear built-in accuracy.

• The heuristic methods are algorithms capable to learn while proceeding towards the final result, being inspired by natural processes mainly present in physics and biol- ogy. These methods have been widely used in space trajectory optimisation over the last ten years, and two of the most implemented ones are the genetic algorithm and the simulated annealing. The main advantage of these methods is in their computa- tion time, which is extremely lower than for the previous two ones, but, as a reverse effect, it is likely for their results to be suboptimal. In fact, in the majority of cases, the initial guess (first population) is randomly created, while the generation of the successive ones depends on the particular method implemented: as a result, their intrinsic randomness does not allow to precisely estimate their accuracy.

Although these methods are affected by various problems when applied to real-time appli- cations, of which the most important regards the computational time, it is worth to com- pare their results with the ones from the Lyapunov algorithm: thanks to their significantly higher accuracy, they can be considered a sort of "reality" for the validation procedure. 58 4.3DA LGORITHM

Table 4.3: Algorithm results comparison with optimal ones.

¡ ¢ Reference Canale ∆(TOF) ∆ ∆m f Reference Target Figure TOF [d] ∆m f [kg] TOF [d] ∆m f [kg] [%] [d] [%] [kg] Edelbaum[1965] a Fig. 4.5 51.89 141.34 51.89 141.34 0.0 0.0 0.0 0.0 Edelbaum[1965] a-e Fig. 4.6 14.42 40.98 15.17 43.09 5.2 0.75 5.2 2.1 Whiffen[2004] a-e-i-Ω Fig. 4.7 25.00 3.20 41.24 5.37 65.0 16.2 67.8 2.2 Lee et al.[2005] a-e-i-Ω-ω Fig. 4.8 59.41 525.60 102.44 902.21 72.4 43.0 71.7 376.6

Table 4.4: Computation time for the optimisation by Lee et al.[2005]

Computation time [CPU hours] Target Figure #1 processor #10 processors a-e Fig. 4.6 11.8 1.2 a-e-i-Ω Fig. 4.7 25.8 2.6 a-e-i-Ω-ω Fig. 4.8 41.3 4.1

In Fig. 4.5, the only orbital manoeuvre not analysed before is shown: it is a circle to cir- cle LEO to GEO transfer, targeting only the orbital energy with a low-thrust system. Setting the control gain to K , the results of the Lyapunov algorithm and the optimisation a = +∞ perfectly coincide. From this aspect, it is even clearer that the main problem of the algo- rithm treated here is the implementation of a coasting mechanism, because the manoeuvre targeting only a can be considered optimal and the one converging a and e simultaneously is slightly worse. Then, in Table 4.3, four different orbital transfers are shown, i.e., the three ones already presented in Table 4.2 plus the manoeuvre discussed above. Basically, in the former table, the discrepancies in time of flight and propellant used are almost the same in percentage terms, while this is not true for the second one. However, despite errors on the order of 70%, the Lyapunov-based algorithm is still preferred to the optimal ones, due to its real-time implementability, which, as the name suggests, is the key property for a real-time algorithm, and it is strongly connected to the computational efficiency: for instance, this parameter is on the order of half a day in the case of Whiffen[2004], which uses the Mystic tool, while it is limited to minutes for the algorithm presented here. As a further example, the same cases treated in Table 4.2 are presented by Lee et al. [2005], which tuned the parameters of the algorithm developed by Petropoulos[2004], ob- taining a complete Pareto Front for the time of flight and the propellant consumption via the implementation of a Genetic Algorithm: the results are very similar to the ones pre- sented in Table 4.3, with errors limited to 0.1%. The associated computation times are shown on the left side of Table 4.4, but it is highlighted that, thanks to parallel computa- tion with more processors, it is possible to cut them down proportionally to their number: as a result, in the same table, the results are presented also with ten processors running in parallel. Unfortunately, it is not likely to have this CPU power on board, and then also this technique is considered not feasible for real-time applications. 4.2.A LGORITHM VALIDATION 59

(a) Cartesian coordinates

104 0.05 4 0.04 3 0.03 e [~] a [km] 2 0.02 0.01 1 0 5 10 15 0 5 10 15 t [d] t [d]

200 60

100 40 0 [deg] m [kg] 20 -100

-200 0 0 5 10 15 0 5 10 15 t [d] t [d]

(b) a, e, ω and ∆m history

Figure 4.6: a and e matching around the Earth Edelbaum[1965]. Orbit 0: a0 7000 km, e0 0.01, 3 1 5 = = i 0.05◦, Ω ω θ 0◦. Target: ² 5 10− DU− , ² 10− , a∗ 42000 km, e∗ 0.01. SC: 0 = 0 = 0 = 0 = α = · e = = = T 1 N, I 3100 s, m 300 kg. Gain: K 50, K 50. TS: h 10 s. = sp = 0 = a = e = = 60 4.3DA LGORITHM

(a) Cartesian coordinates

0.025 800 0.02

600 e [~] a [km] 0.015 400 0 10 20 30 40 0 10 20 30 40 t [d] t [d] 90.1 340

90 320 [deg] i [deg] 89.9 300 0 10 20 30 40 0 10 20 30 40 t [d] t [d] 160 10

140 5 [deg] m [kg]

120 0 0 10 20 30 40 0 10 20 30 40 t [d] t [d]

(b) a, e, i, Ω, ω and ∆m history

Figure 4.7: a, e, i and Ω matching around Vesta [Whiffen, 2004]. Orbit0: a0 944.64 km, e0 1 =1 4 = 0.015, i 90.060◦, Ω 24.60◦, ω 156.9◦, θ 0◦. Target: ² 10− DU− , ² 10− , ² 0 = 0 = − 0 = 0 = α = e = i = 0.1◦, ² 0.1◦, a∗ 401.72 km, e∗ 0.012, i ∗ 90.010◦, Ω∗ 40.73◦. SC: T 0.045 N, I 3045 ω = = = = = − = sp = s, m 950 kg. Gain: K 50, K 50. TS: h 10 s. 0 = a = e = = 4.2.A LGORITHM VALIDATION 61

(a) Cartesian coordinates

104 2.65 0.8 2.6 0.6 2.55

e [~] 0.4 a [km] 2.5 2.45 0.2 0 20 40 60 80 100 0 20 40 60 80 100 t [d] t [d]

120 200 100 80 60 180 [deg]

i [deg] 40 20 160 0 20 40 60 80 100 0 20 40 60 80 100 t [d] t [d] 1000 300 500

[deg] 200 m [kg]

100 0 0 20 40 60 80 100 0 20 40 60 80 100 t [d] t [d]

(b) a, e, i, Ω, ω and ∆m history

Figure 4.8: a, e, i, Ω and ω matching around the Earth [Lee et al., 2005]. Orbit0: a0 24505.9 1 1 2 = km, e 0.725, i 0.06◦, Ω ω 180◦, θ 0◦. Target: ² 10− DU− , ² 10− , ² ² 0 = 0 = 0 = 0 = 0 = α = e = i = Ω = ² 0.25◦, a∗ 26500 km, e∗ 0.7, i ∗ 116◦, Ω∗ 180◦, ω∗ 270◦. SC: T 2 N, I 2000 s, ω ======sp = m 2000 kg. Gain: K 50, K 50. TS: h 10 s. 0 = a = e = = 62 4.3DA LGORITHM

4.3. SIMULATIONS &SENSITIVITY ANALYSIS This section is focused on two aspects: the simulation of a 3D proximity transfer around a small-body and a sensitivity analysis on the navigation errors. The consequences of varying the tolerance eα and the control gain Ka are not described here, following similar trends both in 2D and 3D, since the a matching requires only an in-plane manoeuvre. However, it is repeated that a variable gain outperforms a fixed one in both TOF and m f , while eα has to be chosen on the order of tens of meters, because a too high tolerance on the semi-major axis can potentially lead to unpredictable results, as shown in Figs. 3.6 and 3.7, respectively. The transfer presented in Fig. 4.9 is carried out for a spacecraft orbiting 433 Eros un- der the two-body assumption, as done for the two-dimensional case. Nevertheless, no im- provement of the algorithm is developed in the following, while in Section 3.2 an additional check for the radius at periapsis has been introduced. In fact, the only reason to mention the next 3D full orbital manoeuvre here is to demonstrate that the real-time simulator is capable of executing complex transfers about bodies with tiny standard gravitational pa- rameters, after testing what it can do for the Earth and Vesta. In particular, the transfer lasts about forty days, of which less than one third is dedicated to the orbital energy matching, passing from a semi-major axis slightly larger than the radius of the asteroid to a∗ 90 km, = while the rest of the time is used to converge simultaneously to the other orbital elements. Then, about the navigation errors, they are introduced in the simulator only at the be- ginning of the transfer, i.e., at time t0. The initial estimated and real state are presented in Eqs. (4.41) and (4.42), respectively, while their difference is expressed in Eq. (4.43).

x (x , y ,z ,v ,v ,v )T (4.41) 0 = 0 0 0 x0 y0 z0 x (x , y ,z ,v ,v ,v )T (4.42) 0 = 0 0 0 x0 y0 z0 e x x (e ,e ,e ,e ,e ,e )T (4.43) 0 = − 0 = x0 y0 z0 vx0 v y0 vz0 After defining these vectors, the effects of propagating e0 over the transfer will be studied, highlighting the relationship between a small perturbation in the inputs and the final out- puts. The most interesting consequence of e0 concerns the evaluation of the estimated elevation and azimuth control angles. In mathematical terms, they are expressed as:

β arcsin(K e ) (4.44) = α δ arctan£g ¡x ¢¤ (4.45) = Kep ¡ ¢ where the latter angle is the arctangent of a function g xKep , of the estimated Keplerian state, depending on the particular set of orbital elements to be matched. In Fig. 4.10, the execution of a full three-dimensional transfer is shown, in which the ranges used for the sensitivity analysis are on the order of meters for the position errors and millimetres per second for the velocity ones, as done by Berry et al.[2013]: for the ex- ample considered, it corresponds to one part out of one thousand w.r.t. the initial position and velocity magnitude. As already stated in Section 3.3.4, the only possibility to decrease the errors is to provide more information from the navigation subsystem to the guidance one. However, even without this improvement in the simulator architecture, being the fi- nal discrepancies on the order of hundreds of meters for the semi-major axis and less than one degree for the angles, excluding the right ascension of the ascending node, which is impacted four times more, it is ensured that the effects of the initial errors are limited to what can be defined as a sphere of acceptability (cf. Section 2.1.5). 4.3.S IMULATIONS &SENSITIVITY ANALYSIS 63

(a) Cartesian coordinates

80 0.6 60 0.4 e [~] a [km] 40 0.2

0 10 20 30 40 0 10 20 30 40 t [d] t [d] 400 30

20 200 [deg]

i [deg] 10 0 0 10 20 30 40 0 10 20 30 40 t [d] t [d] 400 1000

200 500 m [g] [deg]

0 0 0 10 20 30 40 0 10 20 30 40 t [d] t [d]

(b) a, e, i, Ω, ω and ∆m history

Figure 4.9: a, e, i, Ω and ω matching around 433 Eros. Orbit0: a0 25 km, e0 0.2, i0 1◦, 1 1 3 = = = Ω ω θ 0◦. Target: ² 10− DU− , ² 10− , ² ² ² 0.1◦, a∗ 90 km, e∗ 0.6, 0 = 0 = 0 = α = e = i = Ω = ω = = = i ∗ 30◦, Ω∗ 45◦, ω∗ 75◦. SC: T 5 mN, I 3000 s, m 2500 kg. Gain: K 50, K 50. = = = = sp = 0 = a = e = TS: h 10 s. = 64 4.3DA LGORITHM

(a) Cartesian coordinates

80 0.3

60 0.2 e [~]

a [km] 40 0.1 20 0 5 10 15 0 5 10 15 t [d] t [d] 40 15 10 30 5 [deg]

i [deg] 20 0 10 -5 0 5 10 15 0 5 10 15 t [d] t [d] 50 400 [g] f 200 [deg] m

0 0 0 5 10 15 0 5 10 15 t [d] t [d]

(b) a, e, i, Ω, ω and ∆m history

Figure 4.10: a, e, i, Ω and ω matching around 433 Eros. Orbit0: a0 25 km, e0 0.2, i0 1◦, 1 1 3 = = = Ω ω θ 0◦. Target: ² 10− DU− , ² 10− , ² ² ² 0.01◦, a∗ 90 km, e∗ 0.6, 0 = 0 = 0 = α = e = i = Ω = ω = = = i ∗ 30◦, Ω∗ 45◦, ω∗ 75◦. SC: T 5 mN, I 3000 s, m 2500 kg. Gain: K 50, K 50. = = = = sp = 0 = a = e = Navigation error: er r er r er r z05 m, er r er r er r 5 mm/s. TS: h 10 s. x0 = y0 = z vx0 = v y0 = vz0 = = 4.4.C ONCLUSIONS 65

4.4. CONCLUSIONS This chapter is focused on the three-dimensional algorithm presented by Hernandez and Akella[2016], which is implemented in MATLAB R2017a and verified for four different com- binations of targeted orbital elements, from the orbital energy alone to a full transfer, com- paring its results with the original ones: despite a small difference in fuel mass and time of flight (less than 1%), the verification can be considered successful. Then, the simulator is validated through the observation of the results by Petropoulos[2004], demonstrating to have pretty similar outcomes for the time of flight, but less accurate ones for the mass of propellant used. Moreover, a comparison with the optimal results coming from direct and indirect methods provided by Edelbaum[1965] and Whiffen[2004], is shown: despite a significant difference with them, for the computational efficiency it is still suggested to implement the real-time algorithm, mainly due to its computational efficiency. This state- ment is confirmed by the analysis of the heuristic algorithm by Lee et al.[2005], which gives results incredibly similar to the optimal ones, but still, to be feasible for autonomous appli- cations, it would require a CPU power too high for an on-board computer. Furthermore, to demonstrate that the real-time simulator is capable of executing complex orbital manoeu- vres about small-bodies, after testing its capabilities when targeting an orbit about planets and dwarf planets, a full transfer is performed around 433 Eros. Finally, after ignoring the effects of varying the tolerances and the control gains, since the results are identical to the ones already presented in Chapter3 for the two-dimensional case, the consequences of in- cluding some navigation errors at the beginning of the flight are analysed: although these discrepancies are strongly magnified during the manoeuvre, their effects are limited to a sphere of acceptability. 66 4.3DA LGORITHM 5 NON-SPHERICALBODY

This chapter deals with the formulation and the implementation of an autonomous guid- ance algorithm able to perform orbital manoeuvres around a non-spherical main body. It is divided into four main parts: Sections 5.1 and 5.2 are focused on the definition of the main problem in the theory of artificial satellites from a theoretical point of view and the practical ways to implement it in an autonomous guidance algorithm, respectively, while Section 5.3 is centred on how to include the J2 perturbation in the simulator design, which results are treated in Section 5.4. Finally, conclusions are drawn in Section 5.5.

5.1. ORBIT PROPAGATION WITH J2 In the two-body problem, the gravitational potential is as a function only of the distance from the spacecraft to the main body, and the gravitational parameter of the latter one: µ U2BP (5.1) = − r However, when one or more of the assumptions of the two-body problem are not consid- ered strong enough w.r.t. the level of accuracy desired, the latter equation loses its reliabil- ity: in a few words, the model does not represent well enough the reality. Nevertheless, it is possible to split the gravitational potential into two different contributions: U2BP , asso- ciated with the two-body problem, and U 0, which includes all the perturbations w.r.t. Eq. (5.1). As a result, the gravitational potential may be expressed as a sum of two terms:

U U U 0 (5.2) = 2BP + There are three main perturbations affecting a spacecraft orbiting a small-body: SRP,mass distribution and third-body effect [Scheeres, 2012]. Among these three phenomena, the second one is considered the most important and difficult to implement for small-body proximity manoeuvres: in fact, the effects of the solar radiation pressure may be included, to first approximation, in a sort of augmented gravitational parameter, allowing to treat the dynamics as a two-body problem [Yoshimitsu et al., 2009], while the closer the spacecraft is to the main body, the smaller the direct contribution by a third one on the vehicle. On the other hand, the magnitude of the second perturbation, which takes into account the violation of the Keplerian assumption on the spherical shape and homogeneous density of the main body, is larger when the spacecraft is closer to the surface.

67 68 5.N ON-SPHERICALBODY

In particular, the potential associated to the irregularities in the mass distribution can be modelled through an infinite series of Legendre polynomials as it follows: · µ ¶n n µ ¶n ¸ µ X∞ R X∞ X R UMD Jn Pn(sinφ) Jn,m Pn,m(sinφ)cos(m(Λ Λn,m)) (5.3) = r n 2 r + n 2 m 1 r − = = = where the first term is the two-body acceleration, n and m are called degree and order, respectively, Jn, Jn,m and Λn,m are model parameters, φ and Λ complete with r the set of spherical coordinates, Pn,m() is a Legendre polynomial and R is the mean radius of the main body. Naturally, the accuracy of Eq. (5.3) is dependent on the number of terms considered: as an example, to obtain a meter accuracy level, this number is on the order of tens for planets, while hundreds of parameters or more may be needed for elongated bodies. Nevertheless, it is clear that Eq. (5.3) has to be truncated: an excessive number of pa- rameters decreases considerably the computational efficiency of the on board algorithm, and the knowledge of Jn and Jn,m is strongly limited by the data available on the specific small-body. Moreover, for bodies like the Earth, J2 represents more than the 95% of the gravitational force, excluding the two-body term [Tapley et al., 2004]. Additionally, exten- sive work has been done on modelling the effects of the main body oblateness, not only for planets but also for small-bodies [Scheeres, 2012]: as a result, J2 is considered the only non- spherical contribution also in this report. Then, selecting n 2, the potential is reduced to: = " µ ¶2 2 µ ¶2 # µ R X R UMD J2 P2(sinφ) J2,m P2,m(sinφ)cos(m(Λ Λ2,m)) (5.4) = r r + m 1 r − = As a result, the perturbed gravitational potential UMD can be expressed as the sum of two contribution: Us, which causes secular variations in the orbital elements, and Up , which is responsible for periodic oscillations. In particular, secular variations of orbital elements are proportional to a certain power k of time, which in the majority of cases is linear (k 1) = or quadratic (k 2): due to this definition, it is clear that they grow over time, causing = their errors to be unbounded. Instead, the periodic variations are oscillating in nature, and they may be divided into short- and long-periodic effects, repeating over a time span on the order of a spacecraft period or less and on the order of tens or hundreds of them, re- spectively. Unfortunately, the periodic variations are way more complex to model w.r.t. the secular ones, and their formulation vary significantly among the methods used [Vallado, 2007]. Since one of the main requirements for the guidance algorithm in this report is sim- plicity, and due to the fact that the oscillatory variations average out at the end of their period, changes due to Up in the orbital elements are ignored in this report. As a result, the second term in the parenthesis of Eq. (5.4) is not taken into account. Then, through mathematical manipulations, the perturbed potential becomes: µ ¶2 µ ¶ 3µJ2 R 2 1 UMD sin φ (5.5) = 2r r − 3 Moreover, expressing the latitude φ in terms of i, ω and θ, through the well known formula

sinφ sini sin(ω θ) (5.6) = + and taking advantage from spherical trigonometry, Eq. (5.5) becomes: µ ¶2 µ 2 2 ¶ 3µJ2 R sin i sin i cos[2(ω θ)] 1 UMD + (5.7) = 2r r 2 − 2 − 3 5.2.L INEARISATION PROCESS 69

Finally, ignoring the long- and short-periodic contributions coming from θ in Eq. (5.7), and averaging it over one full orbit, the secular part of the perturbing potential is obtained: 2 2 n R J2 £ 2 ¤ UMD,avg 3sin i 2 (5.8) = 4(1 e2)3/2 − − It can be demonstrated that, using Eq. (5.8) in the LPE [Wakker, 2015], a, e and i do not change with time. This is due to the fact that, in this set of equations, the partial derivatives of the perturbing potential UMD,avg are zeros in the equations for a, e and i, proportional to ∂U/∂τ, ∂U/∂ω and ∂U/∂Ω, which are equal to zero according to Eq. (5.8). On the other hand, to first-order approximation, it is noted that Ω and ω slowly change with time, while M, which is the only fast variable even in case of no perturbation, is dominated by nt. However, when the latter term is ignored, M shows the same behaviour of Ω and ω. The latter model, called Secularly Precessing Ellipse [Tapley et al., 2004], is validated in Fig. 5.1, where the state of a spacecraft orbiting 433 Eros, perturbed by a J 0.005, is prop- 2 = agated through an algorithm based on the following equations in Cartesian coordinates, due to the fact that, with the current state-of-art, no formulation is available in KS ones: · 2 ¸ µx 3 2 µx z x¨ J2R 1 5 = − r 3 − 2 r 5 − r 2 · 2 ¸ µy 3 2 µy z y¨ J2R 1 5 (5.9) = − r 3 − 2 r 5 − r 2 · 2 ¸ µz 3 2 µz z z¨ J2R 3 5 = − r 3 − 2 r 5 − r 2 Due to the extremely low tolerance set and due to the implementation of the full dynamics, i.e., no approximation in case J2 is the only perturbation, after a proper validation of the propagator itself with external sources, the results coming from it will be interpreted as the "real ones" and used to calculate the errors deriving form approximating solutions. Moreover, looking at the same figure, it is clear how the initial values of a, e and i and their means over 25 days do not coincide: this result is expected, and the difference between osculating and mean elements is on the order of J2 [Vallado, 2007]. Finally, it is highlighted that the oblateness factor implemented in the last example does not represent the real parameter for 433 Eros, but it is chosen, for sake of simplicity, as five times the ones of the Earth, due to the fact that these small-bodies are usually way more irregular than planets. Nonetheless, from the results of the NEAR Shoemaker mission, extensive data on the shape and gravity models of 433 Eros are available [Miller et al., 2002].

5.2. LINEARISATION PROCESS The LPE of the elements interested by the J2 secular perturbing effects are reported here: s dω 1 1 e2 ∂R˜ coti ∂R˜ − p dt = e µa ∂e − µa(1 e2) ∂i − ˜ dΩ 1 ∂R (5.10) p dt = µa(1 e2)sini ∂i − dM 2 ∂R˜ 1 e2 ∂R˜ n − dt = − na ∂a − na2e ∂e 70 5.N ON-SPHERICALBODY

(a) Cartesian Coordinates

(b) a, e, i, Ω, ω and M history

Figure 5.1: Orbit propagation around 433 Eros, perturbed only by J 0.005. Orbit : a 35 km, 2 = 0 0 = e 0.3, i 25◦, Ω 60◦, ω 15◦, θ 0◦. 0 = 0 = 0 = 0 = 0 = 5.2.L INEARISATION PROCESS 71 where R˜ U . Then, substituting the following partial derivatives of R˜ w.r.t. the = − MD,avg semi-major axis, the inclination and the eccentricity, presented by Vallado[2007]:

∂R˜ R˜ dn 3R˜ 2n ∂a = n2 da = − a ∂R˜ 9 e µsin2 i 1¶ J n2R2 2 5/2 (5.11) ∂e = −2 ¡1 e2¢ 2 − 3 − " # ∂R˜ 3 sini cosi J n2R2 2 3/2 ∂i = −2 ¡1 e2¢ − into Eq. (5.10), a set of first order equations in J2 are obtained [Kaula, 1966]:

dω 3 µR ¶2 cosi J2n 2 dt = −2 a ¡1 e2¢ − dΩ 3 µR ¶2 5cos2 i 1 J2n −2 (5.12) dt = 4 a ¡1 e2¢ − dM 3 µR ¶2 3cos2 i 1 n J n − avg 2 3/2 dt = − 4 a ¡1 e2¢ − where a, e and i represent the mean elements, i.e., their periodic perturbations are aver- aged out. However, since the former equations are part of a first order analysis and the difference between the osculating elements and the initial ones is on the order of J2, for sake of simplicity, the latter ones may also be used. In fact, despite not mathematically rig- 2 orous, the error caused by this approach is on the order of J2, with M as the only exception: due to its fast nature, the first n in the last equation of Eq. (5.12) is substituted by navg , calculated with aavg to avoid substantial errors w.r.t. the full model [Tapley et al., 2004]. In Fig. 5.2, the history of the orbital elements Ω, ω and M is presented for three dif- ferent formulations: two-body problem, full dynamics perturbed only by J2 and linearised formulation. While the first two models require the numerical integration of six differential equations, in the last case the integration is analytical and straightforward. Furthermore, the angles in Fig. 5.2 are not wrapped to 360 deg, to show in an unambiguous way the linear trend driving their evolution over time. Then, two main considerations arise:

• After 25 days, the error made when applying the two-body problem formulation w.r.t. the full dynamics ranges from about 25 degrees in the case of Ω to more than 60 de- grees for M, with eω lying in the middle; on the other hand, the error coming from the application of the linearised formulation is about two orders of magnitude smaller.

• The variation of M over time is almost totally dominated by the term nt: the lines representing the two-body problem and the full dynamics are clearly distinguishable for Ω and ω, but not for M. Nevertheless, looking at the errors, they all have the same magnitude: due to this behaviour, the mean anomaly will require special attention. 72 5.N ON-SPHERICALBODY

Figure 5.2: Ω, ω and M propagation around 433 Eros: two-body problem, perturbed by J 0.005 2 = and linearised formulation. Orbit : a 35 km, e 0.3, i 25◦, Ω 60◦, ω 15◦, θ 0◦. 0 0 = 0 = 0 = 0 = 0 = 0 =

From the last analysis, it is clear that the proposed linear formulation substantially de- creases eΩ, eω and eM , but, due to the extensive literature about the main problem in the theory of artificial satellites [Deprit and Rom, 1970], it is not easy to define which method- ology is the best one. Naturally, increasing the solution order would allow for better results, with the disadvantage of incrementing the complexity of the formulation: then, a trade-off among the conflicting requirements of accuracy and computational effort has to be made. Among the several formulations available in literature, one of the simplest second-order solution in J2, including also terms up to J6, is proposed by Merson[1961] and rearranged by Vallado[2007]. However, setting to zero J4 and J6, the original equations are reduced to:

µ ¶2 2 2 dω 3 R cosi 3J2R n cosi £ 2 ¡ 2¢ 2 ¤ J2n 2 12 4e 80 15e sin i dt = −2 a ¡1 e2¢ + 32p4 − − + − µ ¶2 2 2 4 dΩ 3 R 5cos i 1 9nJ2R £ 2 2 2 2 2 ¤ J2n −2 56e (760 36e )sin i (890 45e )sin i dt = 4 a ¡1 e2¢ + 384p4 + − − + − dM 3 µR ¶2 3cos2 i 1 3nR4 J 2 n J n − 2 [320e2 280e4 avg 2 3/2 dt = − 4 a ¡1 e2¢ + 512p4p1 e2 − + − − (1600 1568e2 328e4)sin2 i ( 2096 1072e2 79e4)sin4 i] + − + + − + + (5.13) The results from the integration of the last formula are presented in Fig. 5.3, with the solid black and red lines representing the errors from the application of the first-order analysis in Eq. (5.12) and from the second-order one in Eq. (5.13), respectively: their difference 1 in magnitude is on the order 10− degree or less. Moreover, it is possible to calculate the approximated true anomaly θ from M: as expected, also eθ shows a similar behaviour. 5.2.L INEARISATION PROCESS 73

To sum up, since it is noted that the additional complication is not compensated by sub- stantial improvements in accuracy, the linear formulation is still preferred over the other one. Moreover, it is highlighted that, at this level of accuracy, the secular trend is domi- nated by the short- and long-term oscillations, and that would be difficult to distinguish it from them: because of that, the trend presented in Fig. 5.3 are calculated with a linear least square algorithm. Briefly, with this method, a signal y is replaced by its trend yt :

y c t c ; (5.14) t = 1 + 2 where T ·t , t ,..., t ¸ A 1 2 f (5.15) = 1, 1, ..., 1 and ¡ T ¢ 1 T c A A − A y (5.16) = Furthermore, it is specified that, in the right sides of Eqs. (5.12) and (5.13), the mean orbital elements should be used instead of the initial ones, while, for a first-order analysis, consid- ering the latter ones was not an error. Unfortunately, this assumption is not valid any more in case of a second-order analysis, and the associated error is presented in Fig. 5.3, with γ0 and γavg representing the initial and average orbital elements, respectively: the improve- ments are more remarkable than in the last analysis, being on the order of a few tenths of degrees. However, due to the small difference among these four possibilities, the easiest one is implemented in the simulator architecture described in the next section.

Figure 5.3: Trend of the error of Ω, ω, M and θ w.r.t. the full model around 433 Eros: two-body problem, perturbed by J 0.005 and linearised formulation. Orbit : a 35 km, e 0.3, i 2 = 0 0 = 0 = 0 = 25◦, Ω 60◦, ω 15◦, θ 0◦. 0 = 0 = 0 = 74 5.N ON-SPHERICALBODY

5.3. SIMULATOR ARCHITECTURE The simulator architecture for the new algorithm is identical to the one shown in Fig. 2.4, with the only changes being in the environment box, which has the radius of the main body as an additional input and the changes in ω, Ω and M due to J2 as outputs. This is due to the fact that, while the algorithm by Hernandez and Akella[2016] allows to perform orbital manoeuvres only when the two-body assumption is fully respected, the one treated in this chapter allows more flexibility. In fact, the simulator presented here is able to take into account the non-spherical shape of the main body about which the spacecraft orbits, if these irregularities are mainly due to its oblateness: the celestial body is treated as an ellipsoid of revolution with all the zonal harmonics set to zero, except the first one. In the following, the main steps to implement the improved algorithm and the key dif- ferences w.r.t. the simpler one are treated in details. The starting point is the knowledge of three physical data about the celestial body, i.e., its standard gravitational parameter µ, its first zonal harmonic J2 and its mean radius R, and the initial orbit in Keplerian Elements, i.e., x (t ) (a ,e ,i ,Ω ,ω ,θ )T . It is highlighted that, in the first simulator, R was not Kep 0 = 0 0 0 0 0 0 necessary: within the two-body problem assumption, the main body is considered as a point mass. This is not true with the current algorithm, and R is a key contributor to all the equations from the last section. Then, the data of the final orbit in Keplerian elements, T i.e., x∗ (a∗,e∗,i ∗,Ω∗,ω∗,θ∗ free) , are introduced, with the final true anomaly θ∗ al- Kep = = ways unspecified: this is the main difference between orbital transfer and rendez-vous, in which all the six elements are targeted. As a result, the number of parameters to match may vary from a minimum of one to a maximum of five: based on this number, an equal set of tolerance ²γ is created, i.e., the maximum difference between the actual orbital element(s) γ and the desired one(s) γ∗ to consider the targeting process finished and successful. At this point, the initial Keplerian elements are transformed into a set of Cartesian coordi- nates centred on the main body’s centre, i.e., x0, which is used to initialise the KS state u0. Finally, setting i 1, the core loop, based on the propagation of the KS variables, can start. = The derivatives of the KS state ui , the inverse of the semi-major axis α, the spacecraft mass m and actual time t w.r.t. the fictitious time τ, named u0, α0, m0, t 0, respectively, are calculated assuming the main body to be a perfect homogeneous sphere, i.e., with the same formula used in the previous chapters. Through integration of their derivatives, these variables are found at the successive step, i.e., ui 1, αi 1, mi 1 and ti 1. Then, the updated + + + + Keplerian elements are calculated through the well known formula to transform the KS variables into Keplerian ones. At this point, the orbital elements are corrected to take into J2 J2 account the oblateness of the main body, passing from γi 1 to γ , by adding a ∆γ . In + i 1 i 1 mathematical terms, integrating Eq. (5.12), it is found: + +

Z ti 1 µ ¶J2 J2 + dγ ∆γi 1 dt (5.17) + = ti dt in case γ corresponds to Ω, ω and M, while ∆γJ2 0 for γ equal to a, e and i. In particular, i 1 = in the last section, the validity of Eq. (5.17) was+ demonstrated for an orbit propagation, i.e., no applied thrust. In that case, the last equation can be integrated analytically, resulting in:

µ ¶J2 J2 dγ ∆γi 1 ∆t (5.18) + = dt with ∆t ti 1 ti . This is due to the fact that the derivative in the last equation is only = + − dependent on µ, R, a, e and i: while the first two parameters are constant by definition, 5.3.S IMULATOR ARCHITECTURE 75 the latter three ones do not change over time when short- and long-periodic perturbation effects by J2 are ignored. This statement is not true when a thrust is applied, i.e., during an orbital manoeuvre, since for in-plane transfers a and e may vary dramatically, and the same is possible with i during out-of-plane manoeuvres. To give an idea of the additional complexity, Eq. (5.17) is rewritten for ω during an orbit matching in the following:

Z ti 1 J2 3 2 + cosi(t) ∆ω J2R pµ dt (5.19) i 1 5/2 ¡ 2¢2 + = 2 ti a(t) 1 e(t) − From a quick glance at Eq. (5.19), it is clear why it is not analytically integrable: there is no known relationship expressing a, e and i as function of the time t. Moreover, proceeding numerically, the main advantages of simplicity and computational efficiency of the formu- lation presented in the last section would be lost or at least seriously compromised. Nevertheless, if the integration interval is small enough and the magnitude of the ap- plied thrust is not too large, it is possible to consider a, e and i constant during a ∆t. Nat- urally, this approximation is particularly accurate for low-thrust systems, with T0 on the order of mN, while it totally loses its validity in case of chemical propulsion. The first one is exactly the case of small-body proximity manoeuvres: in fact, in the simulations treated in Chapters 3.2 and 4.3, T0 ranges between 1 and 10 mN. Then, the following set is obtained:

" µ ¶2 # 3 R cosii ∆ωJ2 J n ∆t i 1 2 i ¡ ¢2 + = −2 ai 1 e2 − i " µ ¶2 2 # 3 R 5cos ii 1 ∆ΩJ2 J n − ∆t i 1 2 i ¡ ¢2 (5.20) + = 4 ai 1 e2 − i " µ ¶2 2 # 3 R 3cos ii 1 ∆M J2 J n − ∆t i 1 2 i ¡ ¢3/2 + = −4 ai 1 e2 − i It is highlighted that the term in parenthesis in the last equation is slightly different than Eq. (5.12), due to the absence of the term navg , which dominates the propagation of M (cf. Fig. 5.2). However, this absence is due to the fact that navg is not a consequence of the secular perturbation by J2, but it is just the essential part of the fast nature of the mean anomaly. Then, after this clarification, adding the ∆γJ2 from Eq. (5.20) to the Keplerian elements coming from the two-problem assumption and keeping in mind that no secular contribution from J2 is applied to a, e and i, an updated Keplerian state is obtained:

 J2    ai 1 ai 1 + +      e J2   e   i 1   i 1   +   +   J   i 2   ii 1  J i 1  +  2  +    xKep (ti 1)   (5.21) +  J2   J2  = ω =  ωi 1 ∆ω   i 1   + + i 1   +   +   J2   J2  Ω   Ωi 1 ∆Ω   i 1  + + i 1  +   +  J J2 M 2 Mi 1 ∆M i 1 + i 1 + + + 76 5.N ON-SPHERICALBODY

Although this approach makes it simple to add an important perturbation to the core algo- rithm described in the last sections, it is noted that the latter one is applicable to both high- and low-thrust propulsion systems: then, the assumption of small T0 made here constitutes a limitation to its original capabilities. Nevertheless, in Chapter1, it is stated that the over- all objective of this dissertation is to contribute to the tailoring of the guidance algorithm presented by Hernandez and Akella[2016], towards the specific needs of small-body prox- imity operations. As a result, enhancing the algorithm capabilities on small-bodies while renouncing to some features not necessary for them, perfectly fits with the original goal. Finally, although the initial simulator allows the implementation of any kind of propul- sion system, maintaining its robustness, it is stated by Hernandez and Akella[2014] that "[it] does not produce a transfer that is close to the optimal one when dealing with high- thrust engine capabilities", while the outcomes from the application of low-thrust engines are considered close enough to the ones proposed by Edelbaum[1965]. These results are reported in Table 5.1, from which it is even clearer why losing the possibility to implement chemical propulsion systems is not a substantial loss for the algorithm: in the low-thrust case, the errors in TOF and ∆m f consumption are limited to about 15%, while, for the high- thrust one, the optimal flight duration and the fuel consumption are less than one tenth and one half w.r.t. the outcomes obtained by the Lyapunov control algorithm, respectively.

Table 5.1: Low- and high-thrust solutions by Hernandez and Akella[2014] vs optimal ones ¡ ¢ Optimal Control Lyapunov Control ∆(TOF) ∆ ∆m f Propulsion System TOF [d] ∆m f [kg] TOF [d] ∆m f [kg] [%] [%] Low Thrust 51.89 141.34 59.88 161.2 15 14 High Thrust 0.29 145.63 3.8 369.8 1210 154

Finally, the Cartesian state xi 1 is found through the formula to pass from Keplerian to + ¡ ¢ Cartesian coordinates. Then, the errors eγ i 1 and their relations with the pre-set toler- + ances ²γ are defined: naturally, these errors are calculated as the absolute difference be- J2 tween the updated Keplerian elements γi 1 and the targeted ones γ∗. At this point, the only decision box of the process flow, shaped+ as a rhombus, appears: if ¡e ¢ ² for γ i 1 ≤ γ all the targeted orbital elements, the simulation is considered concluded; if the+ error as- sociated with one or more targeted elements exceed the pre-set tolerance, the algorithm calculates a way to get the spacecraft closer to them. In the second case, the control angles βi 1 and δi 1 are found with the formula presented in Chapter4: these angles will be the + + fundamental part of the successive iteration. In fact, since the thrust is considered fixed for the whole duration of transfer and it is always equal to T0, β and δ represent, through two DOF,the only variables able to shape the trajectory of the spacecraft to the desired orbit. Once the control variables are defined, the second main difference between the new J2 and the old version of the algorithm is presented: the calculation of ui 1. In fact, in the initial algorithm, the core loop is fully in KS variables, and the usefulness+ of the Keplerian and the Cartesian coordinates is limited to the evaluation of the errors eγ and to plotting, J2 respectively. Now, instead, without the update from ui 1 to ui 1, the contribution of J2 + + would be still visible in xi 1 and xkep,i 1, but lost in ui 2, i.e., at the end of each iteration: + + + as a result, a huge piece of information would be deleted from the computer memory. 5.3.S IMULATOR ARCHITECTURE 77

Basically, the main complication that stems from regularising a set of coordinates, from Cartesian to KS ones, is the difference in dimensions: for planar purposes, this process is carried with a mapping from r R2 u R2, while no mapping like r R3 u R3 is ∈ → r ∈ ∈ → r ∈ available with the current state-of-art (cf. Section 2.4). In fact, in the planar assumption, a single point in Levi-Civita coordinates corresponds to an unique one in the Cartesian space, as it is clear from Eqs. (2.6) and (2.7). On the other hand, using the KS model, an ad- ditional degree of freedom is added, and for all the infinite points that lie on a certain circle about the origin in the u-space, there is a single point in the physical x-space [Wakker, 2015]. For sake of clarity, the transformation in Eq. (2.19) is rewritten in a system-like form:  x u2 u2 u2 u2  1 2 3 4  = − − + y 2(u1u2 u3u4) = − (5.22) z 2(u1u3 u2u4)  = + 0 0 = From the formulation in Eq. (5.22), it is clearer the non-uniqueness of the inverse trans- formation. The only solution to this problem is presented by Stiefel and Scheifele[1971]: firstly, it is demonstrated that the equation of motion in Levi-Civita coordinates in Eq. (2.10) is still valid when the KS ones are implemented; secondly, it is verified that the equa- tion of motion in Cartesian coordinates in Eq. (2.5) still holds. Thanks to this strategy, the following equations are obtained through mathematical manipulations [Wakker, 2015]:

2 2 1 yu1 zu4 zu1 yu4 x 0 : u u (r x), u2 + , u3 − ≥ 1 + 4 = 2 + = r x = r x + + (5.23) 2 2 1 yu2 zu3 zu2 yu3 x 0 : u u (r x), u1 + , u3 − < 2 + 3 = 2 − = r x = r x − − Then, for a non-negative x, u1 and u4 have to be chosen so that the first equation in Eq. (5.23) is respected, while for x 0, u and u are selected according to the second one: in < 2 3 this way, singularities are avoided, but there are still infinite possibilities for the transforma- tion. For sake of simplicity, in the first and in the second case, u4 and u3 can be supposed to be zero, respectively [Aarseth, 2003]: following this strategy, the set of Eq. (2.21) is obtained. The results of the application of this strategy are presented in Fig. 5.4, where it is noted that, although the propagated u and the transformed one do not coincide, their conver- sions to Cartesian coordinates are identical: as shown in Fig. 5.4b, the difference between 11 15 the two x is on the order of 10− m for the position errors and 10− m/s for the velocity ones. This is due to the fact that the floating-point relative accuracy for a certain variable 16 in MATLAB R2017a is equal to ² 2.2204 10− times the variable itself: while x, y and z are = on the order of ten kilometres, vx , vy and vz are on the order of meters per second. J2 Finally, after calculating ui 1, J2 is removed from the name of all the variables contain- J2 J2 + ing it, i.e., γi 1 and ui 1. This mean that the latter two variables are allocated as γi 1 and + + + ui 1. Then, the last step of the core loop is to update the time step, i.e., i i 1, and to + = + iterate the procedure up to the point where the answer to the decision box in the simulator architecture is affirmative. It is highlighted again that this does not happen only when a full orbit is matched, since it is possible to target also just a subset of the orbital elements. 78 5.N ON-SPHERICALBODY

(a) KS position vector

(b) Error in the Cartesian state

Figure 5.4: Comparison of the propagated spacecraft state and the one from Eq. (2.21), during a a, e, i, Ω and ω matching around 433 Eros. Orbit0: a0 30 km, e0 0.2, i0 15◦, Ω0 30, ω0 45, 3 1 2 = = = = = M 15◦. Target: ² 10− DU− , ² 10− , ² ² ² 0.25◦, a 50 km, e 0.1, i 5◦, 0 = α = e = i = Ω = ω = T = T = T = Ω 0◦, ω 0◦. SC: T 5 mN, I 3000 s, m 2500 kg. Gain: K 50, K 50. TS: h 10 s. T = T = = sp = 0 = a = e = = 5.4.A LGORITHM VALIDATION &IMPLEMENTATION 79

5.4. ALGORITHM VALIDATION &IMPLEMENTATION Most of the solutions for the spiral trajectory characterising any low-thrust transfer in the proximity of a celestial body are rather complex, being based on the concept of optimal thrust direction. Moreover, the vast majority of them is limited to the inverse-square grav- ity field assumption, which allows for worse results, the closer the spacecraft is to the main body surface: if this hypothesis is pretty weak in the case of planets, which are considerable as quasi-perfect spheres, it is even more problematic for small-bodies, not heavy enough to reach the hydrostatic equilibrium. In fact, as stated by Sukhanov and De A. Prado[2001], at least the secular perturbations due to the celestial body’s oblateness must be consid- ered even during the early phases of the design of a proximity mission. Assuming no ex- ternal force except the gravity field of the oblate main body and a tangential continuous thrust, with T and c constant, they presented simple first- and second-order approximated minimum-time formulas to evaluate an orbital manoeuvre to match any semi-major axis: these hypothesis are valid also in this report, since the thrust is tangential in the first part of the transfer if Ka is large enough, and the formula they implement are a simplification of Eq. (5.12) for circular orbits. As a result, their solutions and the ones presented here are comparable, but the guidance algorithm introduced in Section 5.3 has the huge advantage of being able to match the full Keplerian state except θ∗, instead of the orbital energy alone. The latter limitation has been overcome by Kechichian[2000], who presented a method to optimise the direction of the thrust vector to provide a minimum-time solution able to match any elliptic orbit, independently from its size, shape and orientation, with the two- body dynamics perturbed only by the main body’s oblateness. However, although being quite simple and robust, this solution still has some of the critical issues that caused the optimal methods to be discarded in Section 2.1.5, during the selection of the control law to be implemented in the real-time algorithm, i.e., open-loop logic, high computational time and the necessity of providing initial reliable guesses. A partial solution to these issues was proposed by Kluever and Oleson[1998], who also introduced a method to compute low- thrust minimum-time orbital manoeuvres close to optimality in the presence of J2, with the improvement of being robust and insensitive to the initial guess, which is unfortunately mandatory for any of these techniques. The optimal control problem was solved with a direct optimisation approach, including also degradation effects on the solar cells and the shadowing produced by the main body, which are both ignored in this report. However, its computational time is considered excessive for the requirements of a real-time algorithm, and, from these considerations, it is clear that the majority of the solutions available in the literature to the oblateness problem lack in simplicity and real-time implementability. Starting from the versatile Q-law tool proposed by Petropoulos[2004], which has al- ready been used for validation purposes in Section 4.2 and it is based on a quite complex Lyapunov control characterised by singularities when the inclination or the eccentricity are close to zero, Perez and Varga[2015] implemented some modifications to include the per- turbations due to the second harmonic J2 and the consequences of coasting during eclipse periods. To face the singularity problem, which in Section 2.3.1 has been one of the main motivation to prefer the algorithm proposed by Hernandez and Akella[2016] to the Q-law, they used the equinoctial orbital elements instead of the Keplerian ones, leading to a state formulation of the form x [p, f ,g,h,k,L]. However, although overcoming this huge E qu = limitation and making possible to target geostationary orbits, using the equinoctial repre- sentation it is not possible to target an orbital subset, i.e., the final orbit must be matched in 80 5.N ON-SPHERICALBODY its entirety: as a result, some complications could arise even when the goal of a transfer is pretty simple, since no free final variable can be specified. Moreover, the J2 effects were not introduced directly in the Q-law, since, after doing that, some experiments showed that, due to its nature, the algorithm was spending fuel to fight the perturbations even in cases where it could have taken advantage from that. Then, the scalar weights and the other pa- rameters presented in the Q-law were adjusted through an optimisation process, as done by Lee et al.[2005], obtaining a Pareto front, and the same transfer scenarios implemented in Section 4.2 are presented: for this reason, they are not shown in the following. However, the results by the simulator proposed here, despite not optimal, are promising and take advantage of the lessons learnt from the previously cited papers. Finally, after noticing the scarcity of real-time algorithms able to perform orbital ma- noeuvres with low-thrust engines about oblate bodies in the literature, in Fig. 5.5 the match- ing of the semi-major axis for an ascent transfer about 433 Eros is shown. It is noted that the right ascension of the ascending node does not present the expected linear trend, which characterises the orbit propagation in Fig. 5.1, due to the fact that the formula in Eq. (5.12) decreases proportionally to a3.5: as a result, in the first five days, Ω declines almost linearly, while afterwards the steep of the curve becomes remarkably less evident. The time of flight is the same for both the two-body and the perturbed formulation, due to the implemen- tation of the Secularly Precessing Ellipse, while the effects on the out-of-plane elements Ω and ω are appreciable, highlighting the importance of adding the main body’s oblateness.

5.5. CONCLUSIONS This chapter is focused on the modifications necessary to allow the algorithm presented by Hernandez and Akella[2016] to include the perturbations w.r.t. the two-body problem deriving from the oblateness of the celestial body about which the spacecraft orbits. This is identified by Scheeres[2012] as one of the most impacting perturbation forces during small proximity operations: in particular, the mass and shape irregularities are limited to the second harmonic J2, for sake of simplicity. Then, its effects are divided into secular and periodic: the latter nature is ignored due to the fact that its contributions average out at the end of their period and that they are difficult to implement; on the other hand, the secular perturbations show a linear trend in three elements, i.e., Ω, ω and θ, while the others re- main unchanged. This approximated model is called Secularly Precessing Ellipse [Tapley et al., 2004], and it allows to reduce considerably the error w.r.t. the two-body problem for long time of flight in the vicinity of a celestial body (two orders of magnitude in Fig. 5.2). Then, the question is how to introduce this functionality in the original simulator archi- tecture, without compromising its real-time implementability and simplicity. This is done by keeping the main core of the algorithm still based on the two-body assumption, adding at the end of each time step a ∆γJ2 for the interested orbital elements, while leaving the others unaltered: in this way, only a few blocks are added w.r.t.the initial formulation, pre- serving both the real-time implementability and the simplicity. Finally, due to the scarcity of real-time guidance algorithms allowing to include the J2 perturbation in literature, the validation process has to be performed comparing the results of the simulator presented in this chapter with optimal ones, i.e., the modified Q-law by Perez and Varga[2015]. The discrepancies are on the same order of the ones presented for the validation of the original algorithm (cf. Section 4.2), but the fact that similar formulas were used by Sukhanov and De A. Prado[2001] shows how promising is the proposed innovative formulation. 5.5.C ONCLUSIONS 81

(a) Cartesian coordinates

100 0.15

0.1 50 e [~]

a [km] 0.05

0 0 5 10 15 0 5 10 15 t [d] t [d] 5.5 80

60 5 [deg]

i [deg] 40

4.5 20 0 5 10 15 0 5 10 15 t [d] t [d] 400 400

200 200 [deg] [deg]

0 0 0 5 10 15 0 5 10 15 t [d] t [d]

(b) a, e, i, Ω, ω and ∆m history

Figure 5.5: a matching around 433 Eros with J2 0.005. Orbit0: a0 20 km, e0 0.05, i0 5◦, 3 = 1 = = = Ω 60◦, ω 15◦, θ 0◦. Target: ² 10− DU− , a∗ 100 km. SC: T 5 mN, I 3000 s, 0 = 0 = 0 = α = = = sp = m 2500 kg. Gain: K 50, K 50. TS: h 10 s. 0 = a = e = = 82 5.N ON-SPHERICALBODY 6 CONCLUSIONS &RECOMMENDATIONS

This chapter is divided into two parts: Section 6.1 gives an answer to the research question at the centre of this report, while Section 6.2 deals with some recommendations in the hope of improving the performance of real-time guidance algorithms in the future.

6.1. CONCLUSIONS This report is focused on answering the research question stated in Chapter1, which, for sake of clarity, is reported in the following and divided into three sub-questions: Would it be possible to tailor the algorithm presented by Hernandez and Akella[2016] for small-body proximity environments’ needs, without compromising its key advantages? 1. Which are the typical guidance requirements set for small-bodies proximity missions, and are they all fulfilled by Hernandez and Akella[2016]?

2. Which are the main perturbations and complications arising from the two-body for- mulation only perturbed by the thrust acceleration, implemented in the original al- gorithm, when it is applied to small-bodies proximity missions?

3. Which is a good method to limit the undesired effects from the perturbations and complications found in the previous question without compromising the original al- gorithm key advantages in low computational effort and simplicity? Basically, the first question is at the centre of the first three chapters, excluding the intro- ductory one, while the second and the third questions are treated in the last chapter before this conclusion. Their answers, presented in this report, are summarised in the following: 1. The main requirement which must be satisfied by a guidance subsystem when ap- plied to small-body proximity missions is its real-time implementability, due to their distance from the Earth and their difficult to predict environment. However, the ac- curacy of its results are also crucial: a conspicuous increment in time of fight and propellant burnt is acceptable w.r.t. optimal solutions, which are unimplementable on-board, but the spacecraft must reach its final destination. After an extensive test- ing procedure, it is found that when the two-body formulation is considered valid, the autonomous algorithm proposed by Hernandez and Akella[2016] fully respects the requirements set for small-body proximity missions.

83 84 6.C ONCLUSIONS &RECOMMENDATIONS

2. The main perturbations and complications affecting the two-body problem when applied to small-body are the third-body gravity, the SRP and the irregularities in the main body’s mass: the more the spacecraft is the proximity of a small-body, the more preponderant is the third effect over the other two. Then, the double assumption of main body acting as a point mass and as a perfect sphere is decomposed: considering it as a point mass may cause an impact between the small-body and the spacecraft, while approximating the main body to a perfect sphere may result, after a manoeuvre, in a spacecraft state completely different from the targeted one.

3. To limit the effects of the perturbations due to the irregular shape and mass of the small-body, two different paths are followed. Firstly, to avoid an impact between the spacecraft and the small-body, a check on the periapsis radius is implemented, so that, if the spacecraft is too close to the corresponding main body, a circularisation process starts, leaving the semi-major axis fixed. Secondly, the effects of the mass irregularities are limited to the secular contribution of J2, and they are implemented via the Secularly Precessing Ellipse. In both cases, following this strategy, it is possible to keep the original architecture of the algorithm, making only small changes which do not affect its key advantage in computational effort and simplicity.

Unfortunately, the proposed methodology is not feasible for chemical rockets, limiting the range of applicability of the original algorithm: however, this sacrifice is meant as an un- avoidable consequence of the tailoring process. The proposed mission scenario imple- ments an approximate model of 433 Eros as the main body and a low-thrust point mass spacecraft executing orbital transfers about it. It was shown that ignoring J2 results in er- rors on the order of tens of degrees for the Ω, ω, and M, for transfers lasting tens of days. They are reduced by up to two orders of magnitude when the proposed simulator is applied. The obtained results are promising and innovative, due to their simplicity and the scarcity of real-time guidance algorithms to perform orbital manoeuvres around oblate bodies.

6.2. RECOMMENDATIONS Due to the importance of the concept of autonomy for the exploration of small-bodies, endless avenues may be indicated for improvements. The two main ones indicated by Her- nandez et al.[2014] are: additional comparisons between the proposed guidance algorithm and both real-time and optimal ones; implementation of more elaborated control laws, al- lowing the gains to vary as a function of time. Basically, the second goal has the underlying objective of increasing one of the main disadvantages of using Lyapunov-based guidance algorithm, i.e., their limited accuracy compared to optimal ones, and it has not been dis- cussed in this report; on the other hand, the first one has been the basis of the overall grad- uation project. Moreover, while analysing the algorithm by Hernandez and Akella[2016], it was found that it had almost optimal results, i.e., minimum-time transfers, when matching a and the couple a-e, and significantly worse ones for more complicate transfers, espe- cially for the propellant mass. From this consideration, it is concluded that introducing a thrust and coast mechanism would be essential for getting results closer to optimality. Finally, due to the scarcity in the literature of real-time algorithms which include the J2 perturbation, the validation process has been performed comparing the results with opti- mal algorithms: in the hope of improving the assessment of the simulator performance, it should be compared in the future with other real-time ones, in case they will be available. A WORK BREAKDOWN STRUCTURE

The planning of the MSc Thesis is treated in the following via a Work Breakdown Structure (WBS), a tool, presented in Fig. A.1, which allows to simply organise the work into manage- able sections. The main work packages (WP) to answer the research questions are:

• Development (WP1000), split into design and testing, which include: analysis of the architectural design, definition of the interface between its blocks, code writing and debugging, existing tools implementation and extensive functionality test.

• Simulation and analysis (WP2000), which consists of the actual implementation in the algorithm of the research case study, i.e., executing transfers in the proximity of a small-body, and the analysis of its performance when varying driving parameters.

• Results evaluation (WP3000), which is the final and the most important step: even if the algorithm is apparently working well, it is possible that the outcomes are com- pletely unexpected/wrong; as a result, these results must be studied in details.

Moreover, the actual writing of the final report (WP4000) includes both the continuous pro- cess of taking notes, during each iteration or work package, and the final writing. However, proceeding in a linear way, i.e., doing only once all the previous steps, is par- ticularly risky: some errors may be fully recognised when it is too late to fix them. Instead, starting with the simplest assumptions and ending with a more realistic problem via suc- cessive iterations is considered much safer. The main parameters which are tuned are:

• Integration order: the starting point is to use and to test the Runge-Kutta 4, but a comparison with other methods of the same family is carried out.

• State dimension: the problem can be represented as planar or three-dimensional, corresponding to a state with four and six elements, respectively.

• Target: the degree of freedom in the targeted orbit and the complexity of the transfer can strongly vary, depending on the number of Keplerian elements to match.

• Dynamics model: the two-body problem is selected, and it can be unperturbed, per- turbed only by the engine thrust or affected also by other perturbation effects.

85 86 A.W ORK BREAKDOWN STRUCTURE

MSc Thesis project

WP1000 WP2000 WP3000 WP4000 Software devel. Sim. & Analysis Results eval. Writing

WP2100 WP2100 WP3100 WP4100 M#1 M#1 M#1 M#1

WP2200 WP2200 WP3200 WP4200 M#2 M#2 M#2 M#2

WP2300 WP2300 WP3300 WP4300 M#3 M#3 M#3 M#3

WP3400 WP4400 Overall Overall

Figure A.1: MSc Thesis Work Breakdown Structure

After defining the main parameters which can be changed in the guidance algorithm, the following models, with an increasing complexity, are implemented and tested:

• M#1: two-dimensional two-body problem perturbed only by engine thrust, where a Lyapunov-based guidance with constant gains is implemented to match a, e and ω.

• M#2: three-dimensional two-body problem perturbed only by engine thrust, where a Lyapunov-based guidance with constant gains is implemented to match a full set of Keplerian elements, excluding the true anomaly, or a subset of them.

• M#3: three-dimensional two-body problem perturbed by engine thrust and main body’s non-sphericity, where a Lyapunov-based guidance with constant gains is im- plemented to match a full set of Keplerian elements, excluding θ, or a subset of them. BIBLIOGRAPHY

Aarseth, S. J. Gravitational N-body simulations: tools and algorithms. Cambridge Univer- sity Press, 2003. doi:10.1017/CBO9780511535246.

Belsley, D. A., Kuh, E., and Welsch, R. E. Regression diagnostics: Identifying influential data and sources of collinearity. John Wiley & Sons, 2005. doi:10.1002/0471725153.

Berry, K., Antreasian, P., Moreau, M. C., May, A., and Sutter, B. “OSIRI-REx Touch And Go (TAG) navigation performance”. 38th annual AAS Guidance and Control confer- ence, Breckenridge, Colorado, USA, February 2015. NASA Technical Reports Server: 20160000219.

Berry, K. et al. “OSIRIS-REx Touch And Go (TAG) mission design and analysis”. 36th annual AAS Guidance and Control conference, Breckenridge, Colorado, USA, February 2013. NASA Technical Reports Server: 20130013409.

Betts, J. T. Practical methods for optimal control and estimation using nonlinear program- ming. SIAM, 2010. doi:10.1137/1.9780898718577.

Betts, J. T. “Optimal low–thrust orbit transfers with eclipsing”. Optimal Control Applications and Methods, vol. 36, no. 2, pp. 218–240, March–April 2015. doi:10.1002/oca.2111.

Butcher, J. C. “On the attainable order of Runge-Kutta methods”. Mathematics of computa- tion, vol. 19, no. 91, pp. 408–417, 1965. doi:10.1090/S0025-5718-1965-0179943-X.

Cellier, F. E. and Kofman, E. Continuous system simulation. Springer Science & Business Media, 2006. doi:10.1007/0-387-30260-3.

Conway, B. A. Spacecraft trajectory optimization. Cambridge University Press, 2010. doi:10.1017/CBO9780511778025.003.

Deprit, A. and Rom, A. “The Main Problem of artificial satellite theory for small and mod- erate eccentricities”. Celestial Mechanics and Dynamical Astronomy, vol. 2, no. 2, pp. 166–206, 1970. doi:10.1007/BF01229494.

Edelbaum, T. N. “Optimum power-limited orbit transfer in strong gravity fields”. AIAA Journal, vol. 3, no. 5, pp. 921–925, May 1965. doi:10.2514/3.3016.

Fesq, L., Aljabri, A., Anderson, C., and Connerton, R. “Spacecraft autonomy in the new millennium”. 19th Advances in the Astronautical Sciences (AAS) Guidance and Control conference, Breckenridge, CO, USA, February 1996. NASA Report: 24171.

Furfaro, R., Gaudet, B., Wibben, D. R., Kidd, J., and Simo, J. “Development of non-linear guidance algorithms for asteroids close-proximity operations”. AIAA Guidance, Naviga- tion, and Control Conference, Boston, MA, USA, August 2013. doi:10.2514/6.2013-4711.

87 88 BIBLIOGRAPHY

Gal-Edd, J. and Cheuvront, A. “The OSIRIS-REx asteroid sample return mission operations design”. IEEE Aerospace Conference, Big Sky, MT, USA, March 2015. doi:10.1109/AERO.2015.7118883.

Gates, M., Stich, S., McDonald, M., Muirhead, B., Mazanek, D., Abell, P.,and Lopez, P. “The Asteroid Redirect Mission and sustainable human exploration”. Acta Astronautica, vol. 111, pp. 29–36, June–July 2015. doi:10.1016/j.actaastro.2015.01.025.

Grotzinger, J. et al. “Mars Science Laboratory Mission and Science Investigation”. Space Science Reviews, vol. 170, no. 1, pp. 5–56, 2012. doi:10.1007/s11214-012-9892-2.

Hatten, N. A. “A critical evaluation of modern low-thrust feedback-driven spacecraft con- trol laws”. Master’s thesis, The University of Texas at Austin, Austin, TX, USA, December 2012. UT Electronic Theses and Dissertations: 2152/19697.

Herman, D. A., Santiago, W., Kamhawi, H., Polk, J. E., Snyder, J. S., Hofer, R. R., and Sekerak, M. J. “The ion propulsion system for the Asteroid Redirect Robotic Mis- sion”. 52nd AIAA/SAE/ASEE Joint Propulsion Conference, Salt Lake City, UT, USA, 2016. doi:10.2514/6.2016-4824.

Hernandez, S. and Akella, M. R. “Lyapunov-based guidance for orbit transfers and ren- dezvous in Levi-Civita coordinates”. Journal of Guidance, Control & Dynamics, vol. 37, no. 4, pp. 1170–1181, July 2014. doi:10.2514/1.62305.

Hernandez, S. and Akella, M. R. “Energy preserving low-thrust guidance for orbit transfers in KS variables”. Celestial Mechanics and Dynamical Astronomy, vol. 125, pp. 107–132, May 2016. doi:10.1007/s10569-016-9677-0.

Hernandez, S. et al. “Low-thrust trajectory design techniques with a focus on maintaining constant energy”. PhD thesis, The University of Texas at Austin, Austin, TX, USA, August 2014. UT Electronic Theses and Dissertations: 2152/25883.

Hull, D. G. Optimal control theory for applications. Springer Science & Business Media, 2013. doi:10.1007/978-1-4757-4180-3.

Kaula, W. M. “Tests and combination of satellite determinations of the gravity field with gravimetry”. Journal of Geophysical Research, vol. 71, no. 22, pp. 5303–5314, 1966. doi:10.1029/JZ071i022p05303.

Kawaguchi, J. “Hayabusa, summary of guidance, navigation and control achievement in its proximity phase”. AIAA/AAS Astrodynamics Specialist Conference and Exhibit, Keystone, CO, USA, August 2006. doi:10.2514/6.2006-6533.

Kechichian, J. A. “Minimum-time constant acceleration orbit transfer with first-order oblateness effect”. Journal of Guidance Control and Dynamics, vol. 23, no. 4, pp. 595– 603, 2000. doi:10.2514/2.4602.

Khalil, H. K. and Grizzle, J. Nonlinear systems. Prentice River, 2013. ISBN: 9781292039213.

Kluever, C. A. “Simple guidance scheme for low-thrust orbit transfers”. Journal of Guidance, Control, and Dynamics, vol. 21, no. 6, pp. 1015–1017, 1998. doi:10.2514/2.4344. BIBLIOGRAPHY 89

Kluever, C. A. and Oleson, S. R. “Direct approach for computing near-optimal low-thrust earth-orbit transfers”. Journal of Spacecraft and Rockets, vol. 35, no. 4, pp. 509–515, 1998. doi:10.2514/2.3360.

Kustaanheimo, P. and Stiefel, E. “Perturbation theory of Kepler motion based on spinor regularization”. Journal für die reine und angewandte Mathematik, vol. 218, pp. 204–219, 1965. doi:10.1515/crll.1965.218.204.

Lee, S. et al. “Design and optimization of low-thrust orbit transfers”. IEEE Aerospace Con- ference, Big Sky, MT, USA, March 2005. doi:10.1109/AERO.2005.1559377.

Lopez, P. et al. “Extensibility of human asteroid mission to Mars and other destinations”. SpaceOps conference, Pasadena, CA, USA, 2014. doi:10.2514/6.2014-1699.

Masashi, U., Shirakawa, K., Hasimoto, T., Kubota, T., and Kawaguchi, J. “Hayabusa touching-down to Itokawa - autonomous guidance and navigation”. The Journal of Space Technology and Science, vol. 22, no. 1, pp. 32–41, 2006. doi:10.11230/jsts.22.1_32.

Merson, R. “The motion of a satellite in an axi-symmetric gravitational field”. Geo- physical Journal International, vol. 4, no. 1, pp. 17–52, 1961. doi:10.1111/j.1365- 246X.1961.tb06802.x.

Miller, J. K., Konopliv, A., Antreasian, P.,Bordi, J., Chesley, S., Helfrich, C., Owen, W., Wang, T., Williams, B., Yeomans, D., et al. “Determination of shape, gravity, and rotational state of asteroid 433 Eros”. Icarus, vol. 155, no. 1, pp. 3–17, 2002. doi:10.1006/icar.2001.6753.

Montenbruck, O. and Gill, E. Satellite orbits. Springer, 2012. doi:10.1007/978-3-642-58351- 3.

Moore, C. “Technology Development for NASA’s Asteroid Redirect Mission”. 65th Inter- national Astronautical Congress, Toronto, Canada, October 2014. IAF paper code: IAC- 14,D2,8-A5.4,1,x22696.

Nise, N. S. Control systems engineering. John Wiley & Sons, 2007. ISBN: 9781118800829.

Oberkampf, W. L., Sindir, M., and Conlisk, A. “Guide for the verification and validation of computational fluid dynamics simulations”. American Institute of Aeronautics and Astronautics, 1998. doi:10.2514/4.472855.001.

Perez, J. M. S. and Varga, G. “Many-revolution lowthrust orbit transfer computation using equinoctial Q-law including J2 and eclipse effects”. AIAA/AAS Astrodynamics Specialist Conference, Vail, CO, USA, 2015.

Petropoulos, A. “Low-thrust orbit transfers using candidate Lyapunov functions with a mechanism for coasting”. AIAA/AAS Astrodynamics Specialist Conference and Exhibit, Providence, RI, USA, August 2004. doi:10.2514/6.2004-5089.

Popovici, K. and Mosterman, P. J. Real-time simulation technologies: principles, method- ologies, and applications. CRC Press, 2012. doi:10.1201/b12667. 90 BIBLIOGRAPHY

Rayman, M. D., Chadbourne, P. A., Culwell, J. S., and Williams, S. N. “Mission design for Deep Space 1: a low-thrust technology validation mission”. Acta astronautica, vol. 45, no. 4, pp. 381–388, 1999. doi:10.1016/S0094-5765(99)00157-5.

Saltelli, A. et al. Global sensitivity analysis: the primer. Wiley, 2008. ISBN: 9780470059975.

Scheeres, D. J. “Orbit mechanics about asteroids and comets”. Journal of Guidance, Control, and Dynamics, vol. 35, no. 5, pp. 987–997, May–June 2012. doi:10.2514/1.57247.

Sovey, J. S., Rawlin, V. K., and Patterson, M. J. “Ion propulsion development projects in US: space electric rocket test I to Deep Space 1”. Journal of Propulsion and Power, vol. 17, no. 3, pp. 517–526, May–June 2001. doi:10.2514/2.5806.

Starek, J. A., Açıkme¸se, B., Nesnas, I. A., and Pavone, M. “Spacecraft Autonomy Challenges for Next-Generation Space Missions”. In: Advances in Control System Technology for Aerospace Applications, pages 1–48. Springer, 2016. doi:10.1007/978-3-662-47694-9_1.

Stiefel, E. and Scheifele, G. Linear and regular celestial mechanics: perturbed two-body mo- tion, numerical methods, canonical theory. Springer-Verlag, 1971. ISBN: 9783642650291.

Sukhanov, A. A. and De A. Prado, A. “Constant tangential low-thrust trajectories near an oblate planet”. Journal of Guidance Control and Dynamics, vol. 24, no. 4, pp. 723–731, 2001. doi:10.2514/2.4772.

Tapley, B. D., Schutz, B. E., and Born, G. H. Statistical Orbit Determination. Academic Press, 2004. doi:10.1016/j.asr.2007.08.036.

Truszkowski, W. et al. “Autonomous and autonomic systems: a paradigm for future space exploration missions”. IEEE Transactions on Systems, Man, and Cybernetics, Part C, vol. 36, no. 3, pp. 279–291, 2006. doi:10.1109/TSMCC.2006.871600.

Vallado, D. A. Fundamentals of astrodynamics and applications. Springer, 2007. ISBN: 9780387718316.

Vepa, R. Dynamics of smart structures. Wiley, 2010. doi:10.1002/9780470710623.

Wakker, K. F. Fundamentals of astrodynamics. TU Delft Library, 2015. ISBN: 9789461864192.

Whiffen, G. J. “Optimal low-thrust orbital transfers around a rotating non-spherical body”. 14th AAS/AIAA Space Flight Mechanics Meeting, Maui, HI, February 2004. doi:10.1.1.552.9807.

Yeomans, D., Antreasianand, P., et al. “Radio science results during the NEAR-Shoemaker spacecraft rendezvous with Eros”. Science, vol. 289, no. 5487, pp. 2085–2088, 2000. doi:10.1126/science.289.5487.2085.

Yoshimitsu, T. et al. “Hayabusa - final autonomous descent and landing based on target marker tracking”. Acta Astronautica, vol. 65, no. 5, pp. 657–665, September-October 2009. doi:10.1016/j.actaastro.2009.01.074.