DEGREE PROJECT IN VEHICLE ENGINEERING, CYCLE, 30 CREDITS STOCKHOLM, SWEDEN 2021

Autonomous control coupled with on-board risk management

CLÉMENT LABBE

KTH ROYAL INSTITUTE OF TECHNOLOGY SCHOOL OF ENGINEERING SCIENCES 2 Abstract

Many have an orbit of reference defined according to their mission. The satellites need therefore to navigate as close as possible to their reference orbit. However, due to external forces, the trajectory of a is disturbed and actions need to be taken. For now, the trajectories of the satellites are monitored by the oper- ations of satellites department which gives appropriate instructions of navigation to the satellites. These steps require a certain amount of time and involvement which could be used for other purposes.

A solution could be to make the satellites autonomous. The satellites would take their own decisions depend- ing on their trajectory. The navigation control would be therefore much more efficient, precise and quicker. Besides, the autonomous orbit control could be coupled with an avoidance collision risk management. The satellites would decide themselves if an avoidance maneuver needs to be considered. The alerts of collisions would be given by the ground segment. In order to advance in this progress, this internship enables to analyse the feasibility of the implementation of the two concepts by testing them on an experiments satellite.

To do so, tests plans were defined, tests procedures were executed and post-treatment tools were developed for analysing the results of the tests. Critical computational cases were considered as well. The tests were executed in real operations conditions.

Keywords Tests, Autonomous Orbit Control, collision risks, station-keeping, control indicators

3 Sammanfattning

Manga˚ satelliter har en referensbana definierad enligt deras uppdrag. Satelliterna behover¨ darf¨ or¨ navigera sa˚ nara¨ deras referensbana som mojligt.¨ Pa˚ grund av externa krafter stors¨ dock satellitbanan och atg˚ arder¨ maste˚ vidtas. For¨ narvarande¨ overvakas¨ satellitbanorna av satellitavdelningar pa˚ marken vilka ger lampliga¨ instruk- tioner for¨ navigering till satelliterna. Dessa steg kraver¨ en tid och engagemang som skulle kunna anvandas¨ for¨ andra andam¨ al.˚

En losning¨ ar¨ att gora¨ satelliterna autonoma. Satelliterna skulle da˚ kunna ta sina egna beslut beroende pa˚ deras bana. Navigeringskontrollen skulle darf¨ or¨ vara mycket mer effektiv, exakt och snabbare. Dessutom kan den autonoma banregleringen kopplas till riskhantering for¨ undvikande av kollision med rymdskrot och andra satelliter. Satelliterna skulle sjalva¨ avgora¨ om en undvikande manover¨ maste˚ overv¨ agas.¨ Varningar om kolli- sioner skulle ges av marksegmentet.

For¨ att ga˚ vidare i denna utveckling analyserar detta arbete genomforbarheten¨ av implementeringen av olika koncept for¨ undanmanovrar¨ genom att testa dem pa˚ en experimentsatellit. For¨ att gora¨ detta definierades test- planer, testprocedurer utfordes¨ och efterbehandlingsverktyg utvecklades for¨ analys av testresultaten. Kritiska berakningsfall¨ togs fram. Testerna utfordes¨ under verkliga driftsforh¨ allanden.˚

Nyckelord Tester, autonom bankontroll, kollisionsrisker, manovrer,¨ kontrollindikatorer

4 Acknowledgements

First, I would like to thank my supervisor, Jer´ omeˆ THOMASSIN, who has accompanied me all along my in- ternship. He guided me and was always available when I had questions even during the COVID situation. We had deep discussions on technical aspects related to the topic of my thesis but also on common life issues. He was very comprehensive to my misfortune of finding an accommodation when I arrived in Toulouse.

Thank you also to Sophie LAURENS who can be considered as my second supervisor. I had the opportu- nity to work closely with Franc¸ois TOUSSAINT as well, and two other interns, Chiara RUSCONI and Anthony SURIVET. We had a lot of meetings all together. Everybody was deeply involved in the project which facili- tated the work progress of each of us.

I thank also all the members of the Flight Dynamics department who took their time to answer me and to give me explanations related to their field of study.

I add thanks to all the other interns, Dexter QUINCY JONES, Yohan BRUNET, Guido MAGNANI, Marcos ROJAS-RAMIREZ, Chiara RUSCONI and Anthony SURIVET with who I spent amazing moments, I enjoyed the lunches and the laughs during the breaks.

I want also to thank my family and my friends who encouraged me all along this internship. They gave me motivations and support especially during the moments of confinement.

I finally thank all the people who contributed to my internship report, as for their advice as for their re-reading.

5 Contents

1 Introduction 10 1.1 OPS-SAT ...... 10 1.2 CNES involvement ...... 11 1.3 Objectives and goals of the thesis ...... 11 1.4 Structure of the report ...... 11

2 Background 12 2.1 Reference frames ...... 12 2.1.1 Geocentric inertial equatorial coordinates system IJK ...... 12 2.1.2 Celestial intermediate reference frame (CIRF) ...... 12 2.1.3 Local orbital frame (TNW) ...... 13 2.1.4 Local orbital frame (QSW) ...... 13 2.2 Set of orbital parameters ...... 13 2.3 Dynamical problem ...... 13

3 Method 20 3.1 ASTERIA ...... 20 3.1.1 Control system ...... 20 3.1.2 Working principle ...... 21 3.1.3 Control strategy ...... 22 3.2 CROCO ...... 26 3.2.1 CDM ...... 26 3.2.2 Collision risks calculation ...... 28 3.3 ASTERIA and CROCO interactions ...... 31

4 Tests preparation 33 4.1 ASTERIA ...... 33 4.1.1 AOC configuration ...... 33 4.1.2 Reference orbit ...... 34 4.1.3 Propulsive system ...... 34 4.1.4 Maneuver slots ...... 34 4.1.5 Solar flux data ...... 36 4.1.6 Change of the ASTERIA code ...... 37 4.1.7 ASTERIA analysis tools ...... 37 4.2 CROCO ...... 40 4.2.1 CROCO configuration ...... 40 4.2.2 Management of the CDMs ...... 41 4.2.3 CROCO analysis ...... 42 4.3 Tests implementation ...... 43 4.3.1 Solutions proposed to overcome the GPS system problem ...... 43 4.3.2 Time consideration ...... 43 4.3.3 First tests seen from the satellite’s point of view ...... 44 4.3.4 Second tests seen from the satellite’s point of view ...... 44 4.3.5 Third tests seen from the satellite’s point of view ...... 45 4.3.6 Fourth tests seen from the satellite’s point of view ...... 45

6 CONTENTS

4.3.7 Fifth tests seen from the satellite’s point of view ...... 46 4.3.8 Sixth tests seen from the satellite’s point of view ...... 46 4.3.9 Seventh tests seen from the satellite’s point of view ...... 46 4.3.10 Preparation of the supply files ...... 47 4.3.11 Data management ...... 48

5 Results analysis 50 5.1 Cross-validation ...... 50 5.2 AOC with risk management analysis ...... 54 5.3 CDM analysis ...... 55 5.3.1 Filtering analysis ...... 55 5.3.2 Propagation analysis ...... 56 5.3.3 Analysis of the impact of the covariance definition of the primary object ...... 58

6 Conclusion 61

7 List of Figures

2.1 Geocentric inertial equatorial coordinates system IJK ...... 12 2.2 Orbital parameters ...... 14 2.3 Change of frames ...... 17

3.1 Control system ...... 21 3.2 Predictability horizon ...... 21 3.3 Control strategy: semimajor axis maneuvers ...... 23 3.4 Eccentricity correction vs semimajor axis correction ...... 24 3.5 Control strategy: inclination maneuvers ...... 25 3.6 Inclination change maneuvers ...... 25 3.7 CDM transmissions from JSpOC to the O/O (Owners/Operators) ...... 27 3.8 Propagation of a covariance and a state from the TCA given by the original CDM to the potential risks found ...... 28 3.9 Interactions between ASTERIA and CROCO ...... 31 3.10 Shift strategy drawback ...... 32

4.1 OPS-SAT frame ...... 35 4.2 The worst case scenario considered for solar glares avoidance maneuvers ...... 35 4.3 VTS visualisation: case of solar glares ...... 36 4.4 Current solar flux evolution (from 01/10/2019 to 10/12/2020) ...... 37 4.5 Past solar flux evolution (from 10/12/1996 to 10/12/1997) ...... 37 4.6 Acquisition of the previous nodes list ...... 39 4.7 Preparation of the slots file ...... 47 4.8 Preparation of the file of secondary objects ...... 48

5.1 Difference of results between the simulator and the code implemented in the MNF ...... 51 5.2 Difference of results between the simulator and the code implemented in the MNF with no maneuvers in the provided GPS data ...... 52 5.3 Difference of coordinates in the local frame (TNW) with no maneuvers in the provided GPS data 52 5.4 Orbital parameters differences according to the time from the beginning of the simulation . . . . 54 5.5 Representation of a collision risk between a primary and a secondary object ...... 55 5.6 COPOC probability of all original CDMs and the filtered CDM ...... 56 5.7 COPOC probabilities computed from the filtered CDM with a poor and rich propagator . . . . . 57 5.8 Miss-distance and the RTN-components for the risk of the filtered CDM for different value of the CRR component ...... 59 5.9 Components of the covariance of the primary object for different value of the CRR component . 59 5.10 Components of the covariance of the secondary object ...... 60 5.11 COPOC probabilities computed from the filtered CDM for different value of the CRR component 60

A.1 Difference of results between the simulator and the code implemented in the MNF from given ...... 63 A.2 Difference of coordinates in the local frame (TNW) from given orbits ...... 63

8 List of Tables

4.1 Characteristics of the chosen propulsive system ...... 34 4.2 Amounts of data for the different series of tests ...... 49

9 Chapter 1

Introduction

The near space has been an important center of interest over the last decades for telecommunication, observations or discovery purposes. It leads to the presence of a huge number of satellites and around the Earth. The space debris correspond to non-operational human objects navigating in orbit around the Earth like inactive satellites or the last pieces of rockets trapped in the gravitational field. They can damage op- erational satellites or even and thus increase their number more and more by chain collisions effect. To overcome this phenomenon, solutions have been suggested. The increase of new space debris is mitigated by considering the end-of-life disposal. Besides, the space could be cleaned from the debris by collecting or removing them. The lack of investments in this kind of projects for now leads to think about another solution: the collision risks avoidance. The constant surveillance of space enables to foresee potential collisions between objects. The collision is estimated by propagating the trajectories of the object of interest and another object. The active object, typically a satellite, is called primary object unlike the other one, a space debris for instance, which is called secondary object. Among the departments of surveillance, there are the Joint Space Opera- tion Center (JSpOC), Airbus Defence and Space (ADS), the CNES (Centre National dEtudes Spatiales) or the European Space Agency (ESA). The alerts of collisions between two objects are sent through a Conjunction Data Message (CDM) gathering the main information of both objects and the risk of collision. The risk of collision was firstly assessed with a geometrical criterion. The mean trajectory of the secondary object should not intersect a zone, typically an ellipsoid or a box, around the primary object. Then, the probabilistic approach appeared. The difficulty to monitor the space increases with the number of satellites and space debris. Making the satellites autonomous would enable them to take a decision more quickly and accurately.

In this purpose, two algorithms have been developed by the CNES agency: ASTERIA and CROCO. They are respectively responsible for the autonomous orbital control and the collision risks assessment. Ultimately, both codes will become one. The aim of this internship is to test these algorithms on OPS-SAT [8], a CubeSat of the European Space Operation Center (ESOC). It can be compared to a space laboratory navigating in orbit whose purpose is to test applications which will be implemented in future satellites.

1.1 OPS-SAT

The Operations Center ESOC of the European Space Agency (ESA) [9] decided to launch into orbit a satellite named OPS-SAT on December 17, 2019. This unique cubesat of 30 cm of height contains a computer ten times more powerful than usual ESA satellites. This allows runnings of complex control systems as a live space laboratory. No space entities had ever dared to send a satellite for testing new devices for fear of failing and leaving an uncontrolled satellite into space. OPS-SAT was designed to be very robust and cheap so that any experimenters can test their own code. OPS-SAT is able to reboot itself in case of failure. The main component of the satellite’s payload resides in the processing platform which enables the reconfiguration of the environment in order to test any experiments in its best conditions. A GPS receiver allows experimenters to have access to the state of OPS-SAT in real time. S-band communication link for TM/TC and high data-rate communications are used between the ground and the satellite especially for uploading software applications on-board and downloading experiment results.

10 CHAPTER 1. INTRODUCTION

1.2 CNES involvement

OPS-SAT is a great opportunity for the CNES agency to fulfil different objectives.

Firstly, the CNES is developing a Nanosat Mission operation Framework (NMF) which is a software for nanosatellites based on CCSDS mission operation services. CCSDS stands for Consultative Committee for Space Data Systems which is responsible for defining a set of standards used for mission operations. The com- plexity of space missions increases while the cost of mission operations tends to go down. In order to do so, it is necessary to implement a common environment to facilitate the reuse of previous mission concepts and in- teractions between the systems of different agencies. The CNES intends to test its new Concepts of Operations (CONOPS) on OPS-SAT to increase its validity. This leads us to the second purpose of using the satellite: to increase the TRL (Technology Readiness Level) of the new CONOPS but also of the new software applications developed for control services. Three software applications are intended to be tested: • ASTERIA: An Autonomous Orbit Control (AOC) which computes maneuvers in order to keep the satel- lite close to its reference orbit. • CROCO: A collision risks software which computes probabilities of collisions between the object of interest and a list of secondary objects. • SESAM: A system anomaly detector which monitors the system environment.

1.3 Objectives and goals of the thesis

The objective of the thesis is to participate in the feasibility studies of the autonomous orbit control concept (ASTERIA) including collision risk management (CROCO). The existing methods were loaded on board the OPS-SAT demonstrator satellite as an application. First, the problems and the existing methods had to be well understood. Then, the definition and the generation of inputs data had to be prepared to run the tests on- board. The objective of the tests is to validate the operational concept through the validation of the task shared between ground and on-board, the dimensioning of the uplink data, the quantification of processing resources and calculation times. The results of the tests will be analysed with post-treatment tools developed during the thesis.

1.4 Structure of the report

The second chapter presents the relevant background information, the different frames used in the algorithms and the dynamical problem. Then, the method chapter enables to introduce and describe the different existing methods of the two applications of interest. The fourth chapter details the preparation of the tests. An analysis of the results is presented in the fifth chapter. Finally, a conclusion of the thesis and future advancements are discussed.

11 Chapter 2

Background

First, in this part the different reference frames used in the codes are presented. Then it is explained the dynam- ical problem using a set of parameters to describe an orbit.

2.1 Reference frames

The algorithms rely on an open-source core spaceflight dynamics Java library from CNES: Patrius. Different frames are defined in the library. The AOC uses essentially the following frames.

2.1.1 Geocentric inertial equatorial coordinates system IJK It is an inertial frame with the origin at the Earth’s center of mass. The I-axis points towards the vernal equinox. The K-axis is orthogonal to the plane defined by the mean at the vernal equinox. The last axis is orthogonal to the other ones so the system is directly (right handed) oriented. Below is a representation of the frame.

Figure 2.1: Geocentric inertial equatorial coordinates system IJK

2.1.2 Celestial intermediate reference frame (CIRF) It is a quasi-inertial reference frame with the origin at the Earth’s center of mass. The celestial intermediate reference frame is defined from the previous frame and considering the and nutation phenomena of

12 CHAPTER 2. BACKGROUND the Earth.

2.1.3 Local orbital frame (TNW) It is a frame centered at the center of mass of the considered satellite. The T -axis is along the of the satellite. The W -axis is along the orbital momentum, perpendicular to the orbital Keplerian plane. The N-axis completes the right-handed trihedra.

2.1.4 Local orbital frame (QSW) It is a frame centered at the center of mass of the considered satellite. The Q-axis is along the radial position of the satellite. The W -axis is along the orbital momentum, perpendicular to the orbital Keplerian plane. The S-axis completes the right-handed trihedra. It can be noticed that the frames (TNW) and (QSW) are identical when the orbit of the considered satellite is circular.

2.2 Set of orbital parameters

The trajectory of a satellite is characterised by its velocity and its position according to a defined reference frame. In a 3D-problem, 6 parameters are necessary to fully describe the state of the satellite. Another way to describe it is with orbital parameters adapted for near commonly used in space mechanics:

 a  ex = e cos(ω)   ey = e sin(ω)   (2.1)  i     Ω  α = ω + ν where

• a is the semimajor axis

• e (ex, ey) is the eccentricity • ω is the

• i is the inclination

• Ω is the RAAN (Right Ascension of the Ascending Node)

• ν is the

• α is the argument of

2.3 Dynamical problem

In this part, the time derivatives of the orbital components in order to predict the orbital behaviour are described. The time scale considered in the computations is the International Atomic Time (TAI) and the time of reference is the Modified Julian date (MJD).

First, is considered here a two-body Keplerian problem where the gravitational force is the only external force. The system of interest is the satellite. The second Newton’s law of motion yields to: µ ~r¨ = − ~r (2.2) r3 where ~r is the distance from the Earth’s center of mass to the satellite’s center of mass and the term of the right part of the equation represents the acceleration due to the gravitational force.

13 CHAPTER 2. BACKGROUND

It is known that the trajectory of the satellite describes an characterized with the set of the orbital param- eters stated in the previous section. The orbital parameters are represented in Figure 2.2.

Figure 2.2: Orbital parameters

The orbital parameters are geometrically defined from this Figure based on the geocentric inertial equatorial frame described in the previous section which is the frame (~eX , ~eY , ~eZ ) and the local orbital frame (QSW).

~ The h is along the axis ~eW . Then, the inclination i is defined as the angle between ~eW and ~eZ : cos(i) = ~eW · ~eZ (2.3) The RAAN (Right Ascension of the Ascending Node) Ω is the angle between the axis orthogonal to the plane, defined by the angular momentum and ~eZ , and the axis ~eX :

cos(Ω) = ~eX · (~eZ × ~eW ) (2.4) The eccentricity ~e is directed from the center of the ellipse to the perigee and defined as:

~h × ~r˙ ~r ~e = − (2.5) µ r The argument of perigee ω is the angle between ~e and the axis orthogonal to the plane defined by the angular momentum and ~eZ : ~e · (~e × ~e ) cos(ω) = Z W (2.6) |~e| Finally, the true angle ν is the angle between ~r and ~e: ~r · ~e cos((ν)) = (2.7) re Besides, the energy equation links the total energy to the semimajor axis a as follows: v2 µ µ E = − = − (2.8) 2 r 2a

14 CHAPTER 2. BACKGROUND

It is considered here the same problem as stated previously but considering the external perturbations as well. The second Newton’s law of motion yields to: µ ~r¨ = − ~r + ~a (2.9) r3 p where ~ap is the acceleration of all the other perturbing forces which can be written in the local orbital frame (QSW) defined previously as:

~ap = apQ~eQ + apS ~eS + apW ~eW

~r is defined in the same frame as ~r = r~eQ. Its first derivative becomes:  dr  ~r˙ =r~e ˙ + rν~e˙ =ν ˙ ~e + r~e (2.10) Q S dν Q S where ν is the true anomaly angle, see Figure 2.2.

From equation (2.8), the time derivative of the semimajor axis can be written as: da µ dE = (2.11) dt 2E2 dt or since perturbations has been taken into account in this problem, the total energy is not constant and is ex- pressed as: dE = ~a · ~v (2.12) dt p With the expression of the velocity ~v = ~r˙ stated previously in equation (2.10), it yields to: dE  dr  =ν ˙ a + ra (2.13) dt dν pQ pS where r can be defined with the : h2 r = (2.14) µ(1 + e cos(ν)) Then, its derivative according to the true anomaly is: dr e sin(ν) = r (2.15) d(ν) 1 + ecos(ν) Besides, the angular momentum is linked to the eccentricity by: p h = µa(1 − e2) (2.16) The angular momentum h can also be defined as: h = |~r × ~v|   dr = ~r × ν˙ ~eQ + r~eS (2.17) d(ν) = r2ν˙ Using the last equations from equation (2.11), the time derivative of the semimajor axis is finally: da µ  e sin(ν)  = ν˙ r a + ra dt 2E2 1 + e cos(ν) pQ pS µ 4a2 pµa(1 − e2)  e sin(ν)  = r a + ra 2 µ2 r2 1 + e cos(ν) pQ pS 2   2a p e sin(ν) apS = µa(1 − e2) a + (2.18) µ r(1 + e cos(ν)) pQ r 2a2  e sin(ν) 1 + e cos(ν)  = pµa(1 − e2) a + a µ a(1 − e2) pQ a(1 − e2) pS 2 2a  = e sin(ν)ap + (1 + e cos(ν))ap pµa(1 − e2) Q S

15 CHAPTER 2. BACKGROUND

The focus is now on the time derivative of the eccentricity. First of all, e can be expressed according to the semimajor axis and the angular momentum from the equation (2.16): s h2 e = 1 − (2.19) µa which yield to the following time derivative:

de 2h dh 1 h2 da 1 = − + (2.20) dt µa dt 2e µa2 dt 2e da dh dt has already been expressed previously. Let’s now find the expression of dt . First, by definition of the angular momentum, we have: d~h ~h = ~r × ~r˙ → = ~r × ~r¨ dt (2.21) = ~r × ~ap

= rapS ~eW − rapW ~eS The time derivative of the angular momentum can also be expressed as:

d~h dh d~e = ~e + h W (2.22) dt dt W dt

d~eW Since dt is orthogonal to ~eW , by identification of the last two equations, it yields to: dh = ra (2.23) dt pS Equation (2.20) can finally be expressed as:

de 2h dh 1 h2 da 1 = − + dt µa dt 2e µa2 dt 2e √ 2 2 1 − e2 r 1 − e 2a  1 = − √ ap + e sin(ν))ap + (1 + e cos(ν))ap µa e S a pµa(1 − e2) Q S 2e √ √ 1 − e2 a(1 − e2) a 1 − e2  1 + e cos(ν)  = − √ a + √ sin(ν)a + a µa e(1 + e cos(ν)) pS µa pQ e pS √ (2.24) a 1 − e2   1 − e2 1 + e cos(ν)  = √ sin(ν)a + − + a µa pQ e(1 + e cos(ν)) e pS √ a 1 − e2  e2 + 2e cos(ν) + e2cos2(ν)  = √ sin(ν)a + a µa pQ e(1 + e cos(ν)) pS √ a 1 − e2   e + cos(ν)   = √ sin(ν)a + cos(ν) + a µa pQ 1 + e cos(ν) pS

From expression (2.3), the inclination can also be defined as:

~h · ~e cos(i) = Z (2.25) h The derivative of equation (2.25) leads to:

d~h di · ~eZ ~h · ~e dh −sin(i) = dt − Z dt h h2 dt ~h · ~e dh h d~eW · ~e ~h · ~e dh = Z + dt Z − Z (2.26) h2 dt h h2 dt −ra ~e · ~e = pW S Z h

16 CHAPTER 2. BACKGROUND

The last equality is deduced from the identification of equations (2.21) and (2.22). From Figure 2.3, ~eS can be expressed in the inertial frame as:

~eS =(−sin(α)cos(Ω) − cos(α)cos(i)sin(Ω))~eX (2.27) + (−sin(α)sin(Ω) + cos(α)cos(i)cos(Ω))~eY + cos(α)sin(i)~eZ

Figure 2.3: Change of frames

The time derivative of the inclination is finally:

di ra cos(α) = pW dt pµa(1 − e2) √ (2.28) a 1 − e2 cos(α) = √ a µa 1 + e cos(ν) pW

From the equation 2.4, the RAAN can also be expressed as:

! ~e × ~h cos(Ω) = ~e · Z (2.29) X ~ |~eZ × h|

The time derivative of this expression leads to:

d~h ! ~ ! ~ dΩ ~eZ × dt ~eZ × h d|~eZ × h| −sin(Ω) = ~eX · − ~eX · (2.30) ~ ~ 2 dt |~eZ × h| |~eZ × h| dt

~ with |~eZ × h| = sin(i)h, so we have:

d|~e × ~h| di dh Z = cos(i)h + sin(i) (2.31) dt dt dt

17 CHAPTER 2. BACKGROUND

It yields:

~ ! ! ~ !   dΩ ~eZ × h dh ~eZ × −rapW ~eS ~eZ × h di dh −sin(Ω) = ~eX · + ~eX · − ~eX · cos(i)h + sin(i) ~ ~ ~ 2 dt h|~eZ × h| dt |~eZ × h| |~eZ × h| dt dt ! ! ! ~e × ~h dh ~e × −ra ~e  ~e × ~h di ~e × ~h dh = ~e · Z + ~e · Z pW S − ~e · Z cos(i)h − ~e · Z X h2sin(i) dt X hsin(i) X h2sin2(i) dt X h2sin(i) dt ra cos(i)h di = − pW ~e · (~e × ~e ) − ~e · (~e × ~h) hsin(i) X Z S h2sin2(i) dt X Z ra  cos(i)cos(α)  = pW −~e · (~e × ~e ) − ~e · (~e × ~h) hsin(i) X Z S hsin(i) X Z (2.32) From equation (2.27), we deduce that

~eX · (~eZ × ~eS) = sin(α)sin(Ω) − cos(α)cos(i)cos(Ω) and ~ ~eX · (~eZ × h) = cos(Ω)sin(i)h

Finally, the time derivative of the RAAN is:

dΩ rsin(α) = a dt hsin(i) pW √ (2.33) a 1 − e2 sin(α) = √ a µa sin(i)(1 + ecos(ν)) pW

By analogy, the time derivative of the argument of latitude is obtained since:

! ~e × ~h cos(α) = ~e · Z (2.34) Q ~ |~eZ × h|

It follows that:

dα ra  cos(i)cos(α)  −sin(α) = pW −~e · (~e × ~e ) − ~e · (~e × ~h) (2.35) dt hsin(i) Q Z S hsin(i) Q Z

~eQ is expressed in the inertial frame using Figure 2.3 as:

~eQ · (~eZ × ~eS) = −cos(i) and also: ~ ~eQ · (~eZ × h) = cos(α)sin(i)h

Thus, it yields to: dα ra cos(i) − cos(i)cos2(α) = − pW dt hsin(i) sin(α) rcos(i)sin(α) = − ap (2.36) hsin(i) W √ a 1 − e2 cot(i)sin(α) = − √ a µa 1 + e cos(ν) pW

18 CHAPTER 2. BACKGROUND

The derivatives of the orbital parameters are finally obtained:

2 da 2a  = e sin(ν)ap + (1 + e cos(ν))ap dt pµa(1 − e2) Q S √ de a 1 − e2   e + cos(ν)   = √ sin(ν)a + cos(ν) + a dt µa pQ 1 + e cos(ν) pS √ di a 1 − e2 cos(α) = √ a (2.37) dt µa 1 + e cos(ν) pW √ dΩ a 1 − e2 sin(α) = √ a dt µa sin(i)(1 + ecos(ν)) pW √ dα a 1 − e2 cot(i)sin(α) = − √ a dt µa 1 + e cos(ν) pW

19 Chapter 3

Method

In this chapter the main concepts behind the Autonomous Orbital Control (AOC) and the collision risk man- agement are presented. Software applications have been developed for both concepts, respectively ASTERIA and CROCO. They were first developed separately in order to avoid conflicts and slowing down the progress of one on the other. The implementation of CROCO inside ASTERIA was then established. First, ASTERIA is presented independently of CROCO. Then, details about CROCO are given. Finally, the gathering of both algorithms is discussed.

3.1 ASTERIA

ASTERIA was developed in JAVAand uses the PATRIUS and SIRIUS libraries. Models of the Earth gravitation, the Earth magnetic field, the solar activity, the atmospheric drag and the third body attraction are provided in the PATRIUS library and enable to define an orbit of reference close to the real orbit of an inert object. However, some phenomena cannot be predicted accurately today, e.g. the solar activity or the atmospheric drag. Today, the ground segment manages the monitoring and the transmission of operations instructions to the satellites. Nevertheless, the human intervention must be reserved to exceptional situations. The aim of the AOC is to keep the satellite close to its orbit of reference, at a given threshold, without any external assistance. ASTERIA is a tool developed by the Space Mechanics subsection of the Flight Dynamics department of the CNES agency. ASTERIA is an AOC whose objective is to be linked to a collision risk prediction software (CROCO). The idea is to fix a manoeuvers plan in a given time horizon in order to compute potential risks of collisions. An of the primary object is obtained from the maneuvers plan. Knowing the ephemeris of a space debris, a collision risk can be computed. If the computed probability of collision is too high, an avoidance maneuver must be carried out. The ground segment needs about half a day to be able to react whereas an AOC with on-board collision risk management would require a few . Indeed, the ground segment is monitoring an increasing number of satellites. Each satellite is characterised by an orbit where specific telecommunication slots are defined for data uplinks and downlinks. Therefore, the ground segment cannot always react immediately. Besides, the data management, the preparations of data uplinks where the different operations are planned and scheduled in an order of priority and the security control of transfer of data increase the time of reaction. All these constraints would vanish with the use of the AOC for station-keeping and avoidance operations. However, a trade-off must be made for the AOC configuration. The longer the fix time horizon is, the more anticipated the collision risks are but the less reactive becomes the AOC and the less precise become the predictions.

3.1.1 Control system The GPS system of OPS-SAT provides the states of the satellite at a specific frequency. Knowing different positions at different times, an orbit can be extrapolated. From this orbit, the passage at the next ascending node can be predicted. The orbit definition is done at a specific time before the passage of the next predicted ascending node. At each passage of the ascending node, the AOC is called. From the orbit definition, the state of the spacecraft (position, velocity, date) is given at the date of the passage. There is no need to call the AOC anywhere else along the orbit since the orbital dynamics does not change a lot during one orbit and it allows the AOC to have a dedicated time to compute. The 1-D problem becomes simpler and sufficiently precise. The

20 CHAPTER 3. METHOD

AOC propagates analytically the state of the satellite and computes station-keeping maneuvers to reduce the differences of the orbital parameters between the real orbit and the reference orbit, i.e. to keep the satellite close to its reference orbit. When the time between the date at the call and the date of the propagated state is more important than the horizon time, the AOC stops computing and returns a maneuvers plan (see Figure 3.1).

Figure 3.1: Control system

3.1.2 Working principle As previously stated, the predictive AOC aims at computing a maneuvers plan so that the other algorithm can predict potential collision risks. Fixing maneuvers would enable to fix the orbit of the satellite and to compare it with the space debris’ trajectories. These maneuvers are fixed in the so called frozen horizon. However, some external forces are hardly predictable and could lead to important maneuvers. In order to take into account these unpredictable external forces, a semi-frozen horizon has been introduced [3]. It is a horizon where the maneuvers are fixed in time but their amplitude velocity increment is adjusted at the passage of every ascending nodes. This allows the definition of a unique trajectory with uncertainties keeping a normal distribution for the collision risk computations. As it can be seen in Figure 3.2, another horizon is also considered: the search time horizon. It is the horizon where the new most needed maneuver is calculated.

Figure 3.2: Predictability horizon

At the current ascending node, the difference between the real orbital state, given by OPS-SAT, and the reference orbital state is computed. Derivatives of the differences of each orbital parameters are computed with linear regressions of the previous states beforehand stored in a list taking into account the executed maneuvers. From the derivatives at the current ascending node, the orbital state can be analytically propagated. First, a prop- agation from the current state to the fist maneuver of the semi-frozen horizon is done considering the impact of the maneuvers of the frozen horizon. The maneuver’s amplitude is updated. Then the propagation continues until the next semi-frozen maneuver. When all the maneuvers of the semi-frozen horizon have been updated, the propagation continues until the threshold of one of the orbital parameter difference is reached. The type of the new maneuver is defined in order to correct the concerned parameter difference. The date when the threshold is reached defines the end of the search time. The date of the new maneuver is searched in the allowed maneuver slots. If the new maneuver is an inclination maneuver, the inclination maneuver slots are browsed from the last slot before the threshold is reached to the first slot after the semi-frozen horizon. When an inclination maneuver is possible, the date is saved. If the new maneuver is a semimajor axis maneuver, the semimajor axis maneuver slots are browsed from the first slot after the semi-frozen horizon to the last slot before the threshold is reached. When a semimajor axis maneuver is possible, the date is saved. if no slots are available, the query continues after the date when the threshold is reached. Having the type of the maneuver, its date and the needed correction, the amplitude velocity of the new maneuver can be computed. It is then adapted to the propulsion system of the

21 CHAPTER 3. METHOD considered satellite.

Both horizons have a defined length in time which is counted in number of passages at the ascending node. At the next passage, the maneuver computed in the search time will be fixed in time in the semi-frozen horizon. The maneuvers are defined as maneuvers and are placed at the thrust center. The execution of the thrust therefore starts before the date of the maneuver. Thus, the maneuvers placed on the two upcoming orbits are no longer modifiable. They will be executed or are already in progress. n the semi-frozen horizon, it is possible to not have any maneuvers for a long time and an important maneuver is suddenly needed due to the unpredictable solar activity. To avoid this situation where the maneuver would be executed very late, an opportunity maneuver could be set with a null velocity amplitude when no maneuvers have been computed during a certain time and then its amplitude could be changed in case of important distur- bances. If no disruptions happen, the maneuver would have no impact on the trajectory since it would have a null amplitude velocity.

A temporal list of the ascending nodes is required as well. It contains all the dates of the ascending nodes from the current one to the one after the semi-frozen horizon. The dates of the maneuvers are compared to this temporal list in order to know if they need to be carried out, frozen, updated or semi-frozen.

By adding a semi-frozen horizon, uncertainties occur on the orbit considered by the collision risk algorithm. Laws have been empirically defined in order to estimate the difference in amplitude of the semi-frozen maneu- vers between two updates. These uncertainties dilute the computed probabilities.

3.1.3 Control strategy The station keeping is done thanks to maneuvers. If a difference of a parameter of an orbital state is too important, an action needs to be taken. Knowing the evolution of the difference of the orbital states would enable a definition of a control strategy to optimize the number of maneuvers and to avoid carrying out important maneuvers while assuring high performances. A control strategy is described here (details are given in [3]).

22 CHAPTER 3. METHOD

Semimajor axis maneuvers

Figure 3.3: Control strategy: semimajor axis maneuvers

A maneuvers plan is built depending on the evolution of the differences between the orbital state of the satellite and its reference orbit. It appears that controlling the semimajor axis difference has a direct impact on the argument of latitude as the Figure 3.3 shows. It can be noticed that the semimajor axis difference will nat- urally decrease linearly while the argument of latitude will describe a quadratic behaviour. Having a threshold for the maximum difference of argument of latitude, maneuvers can be assessed so that the differences remain in a defined box. The semimajor axis maneuvers impose a control of the semimajor axis difference and thus of the argument of latitude difference. The in-track station keeping can thus be controlled.

The difference of the semimajor axis is corrected with a maneuver of a ∆v defined as follows (the orbit can be described as circular considering the eccentricity neglectable):

rµ ∆a v ' ⇒ ∆v = v (3.1) a 2a

∆a is directly linked to the difference of argument of latitude as said before:

˙ ∆a = ∆αcont a/kα a − kα i∆i/kα a (3.2) where kα a and kα i are coefficients from standard Flight Dynamics equations [1], ∆i is the difference of ˙ ˙ ˙ ˙ ¨ inclination and ∆αcont a is equal to the difference ∆αtarget − ∆αmes.(∆αmes, ∆αmes, ∆αmes) is the measured ˙ state of the argument of latitude difference. ∆αtarget can be computed by approximating the curve by a second ¨ ¨ degree function as seen on the Figure 3.3. A constant ∆α = ∆αmes is assumed which is related to the solar flux ˙ and ∆αmes > 0 (variation towards the right direction). The equation of the parabola aiming at −∆αmax as the minimum is defined as: 1 ∆α(t) = ∆¨α(t − t )2 − ∆α (3.3) 2 0 max where t is the time and t0 the time when ∆α reaches its minimum. At the time of the maneuver tman, we have:

r 2 tman − t0 = − (∆αman + ∆αmax) (3.4) ∆¨α

23 CHAPTER 3. METHOD

The sign is negative since it was assumed a variation towards the right direction where the minimum will be ˙ reached later (∆αtarget < 0). Since the latitude of argument difference is continuous, we have ∆αman = ∆αmes. Besides, with a second derivative constant, the differentiation of the equation 3.3 is:

∆˙α = ∆¨α(t − t0) (3.5) ˙ ˙ Since by definition ∆αtarget = ∆α(tman), using the two last equations it yields to: q ˙ ¨ p ∆αtarget = − 2∆αmes ∆αmax + ∆αmes (3.6)

˙ Finally, the control ∆αcont a is defined as: q ˙ ¨ p ˙ ∆αcont a = − 2∆αmes ∆αmax + ∆αmes − ∆αmes (3.7)

Changing the natural evolution of the derivative ∆˙α has a cost in terms of propellant but this control guarantees ˙ high performances and robustness. If the variation is in the left direction ∆αmes < 0, the following control is ˙ set in order to define the minimum of the parabola and get ∆αtarget = 0 at the time of the maneuver.

˙ ˙ ∆αcont a = −∆αmes (3.8)

This maneuver avoids an exit of the box from the low boundary but leads to an overconsumption of propellant.

The eccentricity is impacted by the semimajor axis maneuver and can be controlled as well. For each slot, the state of the satellite, at the middle of it, is obtained by propagation. From this state, the optimal argument of latitude difference is calculated so that the eccentricity difference is minimized. However, the station-keeping maneuvers cannot be executed at any time. The mission and the safety of the satellite (avoidance of sensors glares for instance) are a priority over the station keeping. Maneuver slots are therefore defined. Executing a maneuver at the optimal position is thus not always possible. The difference between the closest position and the optimal position ∆αopt is then kept and a maneuver is computed. The best maneuver will be chosen among the computed maneuvers. The definition of “best” depends on the eccentricity difference. If the eccentricity difference becomes too large, i.e. if ∆e > n∆eman where n is a defined integer, then the eccentricity correction is maximised. Otherwise, it is the ∆v of the maneuver which is maximised. From Figure 3.4 and using the cosine theorem, the eccentricity correction is defined as q 2 2 correcc = ∆e − ∆e + ∆eman − 2∆e∆emancos(∆αopt)

∆a where ∆eman = a

Figure 3.4: Eccentricity correction vs semimajor axis correction

24 CHAPTER 3. METHOD

Inclination maneuvers A similar natural trend is noticed with the inclination difference and the RAAN difference behaviours (see Figure 3.5).

Figure 3.5: Control strategy: inclination maneuvers

The inclination difference is increasing linearly instead of decreasing like the semimajor axis difference and the RAAN difference describes a parabola like the argument of latitude difference. The inclination maneuver is directly linked to the difference of inclination and enables a control of the RAAN difference. Figure 3.6 shows a representation of the maneuver.

Figure 3.6: Inclination change maneuvers

From Figure 3.6 and using the the cosine theorem, we can write q 2 2 ∆v = v1 + v2 − 2v1v2cos(∆i)

For a pure inclination change (v1 = v2), we get ∆i ∆v = 2 v sin( ) 2 which becomes for small difference of inclination ∆i

∆v = v∆i

25 CHAPTER 3. METHOD

From the Flight Dynamics equations [1], ∆i can be linked to the RAAN control ∆Ωcont Inc

∆i = ∆Ωcont Inc/kΩ i (3.9)

where ∆Ωcont Inc is calculated similarly to the argument of latitude difference

q ˙ ¨ p ˙ ∆Ωcont a = − 2∆Ωmes ∆Ωmax + ∆Ωmes − ∆Ωmes (3.10)

˙ ¨ This is for the case where ∆Ωmes > 0 and ∆Ωmes > −∆Ωmax. Again, ∆Ωmes is assumed constant. It is mainly disturbed by the lunar and solar attractions. Indeed, the terrestrial tides effect and the atmospheric drag tend to ˙ compensate each other. Otherwise, if ∆Ωmes < 0 and ∆Ωmes < −∆Ωmax, The RAAN control becomes

˙ ˙ ∆Ωcont a = −∆Ωmes (3.11)

The optimal inclination maneuvers occur at the nodes. If the nodes are not included in the maneuver slots, then the closest allowed date is compared to the optimal date of the maneuver. If the difference in arguments of latitude is acceptable, the maneuver is executed, otherwise not.

3.2 CROCO

CROCO stands for Collision Risk On board COmputation. From the position of the satellite, a timespan and information of the objects around it, the software should be able to find close approaches between the satellite and the other objects, to select the most dangerous approaches and to compute the risk of probability of the associated collisions. Conjunction Data Message (CDM) are alerts sent to the operator when an object gets too close to the operator’s satellite. A first selection of all the received CDMs needs to be done.

3.2.1 CDM

The CDMs are provided by originators like the Joint SpaceOperations Center (JSpOC), a joint component com- mand of the United-States. Standards are described by the CCSDS (Consultive Committee for Space Data Systems) [5]. It is composed of data about the two objects containing mainly their position, their velocity, their covariance and also characteristics about the conjunction such as the Time of Closest Approach (TCA) and the miss-distance. When the ephemeris of the two objects are analysed, a date exists when the two objects will be the closest, this is the TCA. The miss-distance is defined as the distance separating the two objects at the TCA. However, the CDMs provided by JSpOC are informational, they do not give any indication on avoidance in- structions. That is why the owner of the satellite must evaluate the probability of the collision to assess the risk, based on the information of the CDMs and decide the strategy to avoid and to lower the risk taking into account constraints related to the mission and the configuration of their satellite.

Before, the JSpOC was providing the CDMs directly to the operators. Since the last years, a new organisa- tion has been introduced: the Middle Men (MM). They assess High Interest Events (HIE) and take collision avoidance decisions which are transmitted to operators (see Figure 3.7). CAESAR is the french MM, a service of the CNES agency and stands for Conjunction Analysis and Evaluation Service: Alerts and Recommenda- tions. A software, JAC (Java for Assessment of Conjunctions), has been developed at CNES to help operators to be aware of collision risks [7].

26 CHAPTER 3. METHOD

Figure 3.7: CDM transmissions from JSpOC to the O/O (Owners/Operators)

Adaptation of the CDMs The CDMs are gathered in a catalogue and come from different originators, like JSpOC or CAESAR for in- stance. The same risk can be detected by different originators and lead to redundancies. Besides, once a risk is detected between two objects, an alert is sent every day during the last seven days before the date of the risk. Furthermore, if the orbital state is updated, new alerts are sent. Therefore, a huge amount of CDMs is sent corresponding to the same two objects. Two main reasons explain the need to do a selection of the CDMs before computing the risk probabilities:

• The amount of data sent to OPS-SAT must be limited.

• The number of computations of probalilities must be limited as well to reduce the computational times.

Since OPS-SAT is not followed by CAESAR, it was discussed to obtain CDMs either related to the satellite ANGELS because it is a satellite launched with OPS-SAT and separated at the same orbit or from the orbit of reference of the tests. For the experiments, it was decided to give the reference orbit to the COO (Operational Orbitography Center) who was giving back the associated CDMs. The idea is to have one CDM per secondary object and only the high risk conjunctions are considered. First the CDMs are gathered per secondary object. Then the CDMs with the closest TCA or with the most current CDM remain for each secondary object. It allows a reduction of the number of CDMs from hundreds to tens. The number of CDMs for the same secondary object is indeed significant. Finally, the CDMs with a miss-distance sufficiently low, i.e. inside a defined volume, will be kept. This strategy reduces finally the number of CDMs to only five to ten CDMs per day.

Since a lot of data in the original CDMs are useless for the computation on-board, the CDMs are rewritten before being sent. Thus, the amount of data dedicated to the CDMs is lower than the imposed threshold which is 3 MB for OPS-SAT.

Closest approaches determination The CDMs of the secondary objects which will be sent correspond to approaches with the orbit of reference. Therefore, the times of closest approaches do not coincide exactly with the closest approaches with OPS-SAT. For each secondary object, an ephemeris is generated from its state defined in the corresponding CDM. An ephemeris of the primary object, which is OPS-SAT, is also generated from its state given at the ascending node. The minima are then found from the two generated ephemeris. An on-board selection keeps the minima

27 CHAPTER 3. METHOD with a miss-distance defined in a screening volume centered in the primary object. Then, the covariances and the states of both objects are propagated from the date they are defined to the times of the potential risks (see Figure below) and finally the probabilities of collision are computed.

Figure 3.8: Propagation of a covariance and a state from the TCA given by the original CDM to the potential risks found

3.2.2 Collision risks calculation

The risk of collision is assessed thanks to probabilities. If the probability is sufficiently high, an avoidance maneuver needs to be considered to reduce this probability without creating new collision risks. During the calculation of a collision probability, two cases can be considered [2]:

• A short-term encounter between two objects with a high relative speed. The relative motion can be considered linear.

• A long-term encounter between two objects with a low relative speed. The relative motion cannot be considered linear.

In the framework of this study, only the first option will be considered. An approach occurs between a primary object (index p) and a secondary object (index s). The motion of these objects is directed by a dynamical model:  X~ = (~x , ~x )  p s dX~ ~ (3.12) dt = f(X, t)  ~ ~  X(t0) = X0 = (~xp0 , ~xs0 ) where (~xp, ~xs) are the states (position and velocity) of the primary and secondary objects. Due to uncertainties of position a density probability is defined for both objects (ρp(~xp0 , t), ρp(~xp0 , t)). Different hypotheses have been considered in this study.

Hypothesis 1: Spheric objects The object p and s are characterized by their respective radius Rp and Rs. Knowing the geometry of the two objects is necessary to define the field of collision. After defining the timespan T , there is a collision if and only if it exists a date t ∈ T so that:

||~r(t)|| ≤ Rp + Rs (3.13) where ~r is the distance between the centers of gravity of the two objects.

Hypothesis 2: Uniform straight motion As stated before, only the shot-term encounters are considered. The motion is therefore considered uniform and straight. From the origin of an inertial frame R, two distances are defined for both objects as follows for a date t ∈ T : ~r (t) = ~r + t~v p p0 p0 (3.14) ~rs(t) = ~rs0 + t~vs0

28 CHAPTER 3. METHOD

Therefore, ~r becomes for a date t ∈ T :

~r(t) = ~rs(t) − ~rp(t)

= ~rp + t~vp 0 0 (3.15) = ~rs0 − ~rp0 + t(~vs0 − ~vp0 )

= ~r0 + t~v0

where ~r0 = ~rs0 − ~rp0 and the relative velocity ~v0 = ~vs0 − ~vp0 .

Hypothesis 3: No uncertainties on the It is considered that the velocities are well-known.

These two last hypotheses lead us to define an encounter plan. If a collision occurs, both objects will col- lide in the plane perpendicular to the relative velocity. A frame can be defined at the gravity center of the secondary object for example where the z-axis is in the direction of the relative velocity and the two others are defined so that the frame is orthogonal and direct. Let’s define this collision frame Rc at the TCA (Time of Closest Approach) date assumed already known. The TCA is assumed to be the reference date t0 = 0.

Hypothesis 4: Gaussian random variables

Rp0 and Rs0 are the respective random variables of the distances ~rp0 and ~rs0 , expressed in the Rc frame, following a Gaussian distribution:

Rp0 ∼ N (Rp0 , Cp0 ),Rs0 ∼ N (Rs0 , Cs0 ) (3.16)

Hypothesis 5: Non-correlation of the random variables

Rp0 and Rs0 are two random variable non-correlated.

The random variable of the distance ~r is naturally defined as: R0 = Rs0 − Rp0 which follows a Gaussian distribution as: R0 ∼ N (R0, C0) (3.17) Where the mean value is defined as:

R0 = E(Rs0 − Rp0 )

= E(Rs0 ) − E(Rp0 ) (3.18)

= Rs0 − Rp0 And the covariance matrix as:

C0 = Cov(R0,R0)

= Cov(Rs0 − Rp0 ,Rs0 − Rp0 )

= Cov(Rs0 ,Rs0 ) − Cov(Rs0 ,Rp0 ) − Cov(Rp0 ,Rs0 ) + Cov(Rp0 ,Rp0 ) (3.19)

= Cov(Rs0 ,Rs0 ) + Cov(Rp0 ,Rp0 ) since Rs0 and Rp0 are not correlated

= Cs0 + Cp0

Cs0 and Cp0 are the covariance matrices of the secondary and primary objects expressed at the TCA by prop- agation (see below) from their respective CDM’s date. The two covariances are then projected in the plane perpendicular to the relative velocity. The collision probability allows a more simple expression, using a 2D- integral: Z   1 1 T −1 Pc = p exp − (~r − R0) C0 (~r − R0) d~r (3.20) 2π det(C0) D(0,R) 2 where D(0,R) is the disk centered in the origin of the frame Rc, i.e. at the center of gravity of the secondary object, with a radius R = Rp + Rs. This probability is numerically computed using the LAAS method in [2]. This method uses power series. The computational time appeared to be sufficiently low with a satisfactory precision.

29 CHAPTER 3. METHOD

The probability of collision as previously defined has a strong dependence on the covariance matrices. The covariance matrices of both objects can be either estimated too optimistically or too pessimistically. Another probability is introduced. It is called the COPOC probability [7]. Two independent coefficients kp and ks are defined so that the covariance matrix used for the calculation of the probability is:

C0 = kpCp0 + ksCs0 (3.21)

By variations of kp and ks in defined intervals, the two covariances are contracted and dilated so that all risks are taken into consideration. The COPOC probability corresponds to the maximum probability computed by variations of the two coefficients.

Covariance propagation

The state of an object and its covariance are given at a specific date t0: (X~ 0, C0). The object is ruled by the dynamical model previously stated in equation (3.12) since the objects are considered independent. If we want the state of the object at a date t > t0, the numerical computation is proceeded as follows: |t−t0| ∗ it is considered a fix time step δt = N with N ∈ N . At each step k ∈ N, k < N, the next state is computed by using the first Taylor approximation:

dX~ ~ ~ Xk+1 = Xk + δt dt k (3.22) = X~ k + f(X~ k)δt

= fd(X~ k)

Thus, the function just defined fd makes the transition between two consecutive states. As the original dynami- cal model (3.12), fd is non-linear, continuous and derivative. Xk is the random Gaussian variable related to the state X~ k. The random variables are linked like the states just seen: Xk+1 = fd(Xk) (3.23)

By writing Xk the mean value of Xk, it yields:

Xk+1 = fd(Xk) = fd(Xk + Xk − Xk) (3.24) ∂f ' f (X ) + d (X )(X − X ) d k ∂X k k k The first order Taylor approximation is used for the last line. This method is similar to the one used for the Extended Kalman Filter [6]. Eequation (3.24) is the tangent expression of the non-linear function fd expressed ∂fd at the mean value. Let’s write the Jacobian as Fk = ∂X (Xk). It yields:

Xk+1 − Xk+1 = fd(Xk) + Fk(Xk − Xk) − (fd(Xk) + Fk(Xk − Xk)) (3.25) = Fk(Xk − Xk)

The relation of the covariance maxtrix C becomes:

Ck+1 = Cov(Xk+1,Xk+1) T = E((Xk+1 − Xk+1)(Xk+1 − Xk+1) ) T T (3.26) = FkE((Xk − Xk)(Xk − Xk) )Fk T = FkCkFk

A relation for the computation of the propagation of the state and its covariance matrix is finally obtained:  Xk+1 = fd(Xk) T (3.27) Ck+1 = FkCkFk

30 CHAPTER 3. METHOD

3.3 ASTERIA and CROCO interactions

Both codes finally interact as shown in Figure 3.9.

Figure 3.9: Interactions between ASTERIA and CROCO

The integration of CROCO into ASTERIA corresponds to the second version of ASTERIA. After its call, ASTERIA calls CROCO giving a maneuver plan. From this plan, CROCO is able to compute the risks of col lision and send them back to ASTERIA. If a risk is considered too high, ASTERIA will apply a strategy and provide a new maneuvers plan including avoidance maneuvers to CROCO. One orbit is not enough to compute the risk estimation and set up an avoidance strategy. In order to provide the needed computational time of ASTERIA, a number of orbits has been defined. A list of states is now provided when ASTERIA is called and not just one state in case several orbits have passed during the computation of ASTERIA. This means that a communication needed to be implemented between the platforme of OPS-SAT and ASTERIA. ASTERIA stops running when all risks are mitigated (green thick arrow in Figure 3.9).

For now, the avoidance strategy consists in inducing a radial shift on the primary orbit at the TCA in order to reduce the risk under a threshold defined in the configuration. The targeted radial shift is computed by CROCO and lead to the placement of maneuvers by ASTERIA. Another shift is then computed negatively still in the radial direction. The two computed shifts are finally compared and the smallest in absolute value is kept.

With this strategy, it is possible to compute an avoidance maneuver which will decrease the miss-distance. The following Figure shows a case.

31 CHAPTER 3. METHOD

Figure 3.10: Shift strategy drawback

Since the altitude of the primary object is smaller than the altitude of the secondary object, we could expect that an avoidance maneuver could be computed to reduce the altitude of the satellite in case there is a risk of collision. The semi-transparent blue cross would be the state of the primary object after the avoidance maneuver is carried out. It can be clearly seen that the miss-distance represented by the green arrow has reduced. Another avoidance strategy where the probability of collision is decreased and the miss-distance is increased would be more appropriate.

32 Chapter 4

Tests preparation

4.1 ASTERIA

ASTERIA was originally tested thanks to a simulator. The simulator enabled to be close to the reality. Thanks to the PATRIUS library, it was possible to provide an ephemeris taking into account external forces with models of the Earth gravity potential, the terrestrial tides, the lunar and solar attractions, the atmospheric drag and the solar pressure. OPS-SAT is a great opportunity to test the algorithm in real conditions having real data directly from the satellite. It offers the possibility to test the system architecture suited for algorithm executions. The configuration of ASTERIA was first defined and a few modifications of the algorithm were done specific to our experimentations on OPS-SAT.

4.1.1 AOC configuration To run ASTERIA, the following parameters of the AOC need to be specified:

• Number of orbits for the frozen horizon

• Number of orbits for the semi-frozen horizon

• Uncertainties laws of the maneuvers execution

• Station-keeping windows

– Maximum absolute difference along the velocity direction – Maximum absolute difference along the out-of-plane direction

• Margins on the station-keeping windows

– Margin on the maximum difference along the velocity direction – Margin on the minimum difference along the velocity direction – Margin on the maximum difference along the out-of-plane direction

• Margins on the overconsumption avoidance

– Margin on the threshold of semimajor axis maneuvers (decreases) – Margin on the threshold of inclination maneuvers

• Number of previous states considered for the estimation of: ∆Ω˙ ∆˙e ∆˙e di – , x, y, and dt drag (+ terrestrial tides)

• Number of previous states considered for the determination of ∆¨α

– Minimum number of points – Number of passed parabolas to take into account

33 CHAPTER 4. TESTS PREPARATION

– Percentage of the mean duration of a parabola used for the fitting

• Setting parameters for the calculation of the control threshold of the semimajor axis maneuvers

– Minimum threshold for the a+ maneuvers – Minimum threshold for the a− maneuvers

• Number of maneuvers n where the eccentricity correction is considered (if ∆e > n∆eman)

4.1.2 Reference orbit A reference orbit is defined, specific to the OPS-SAT’s trajectory. It is not a simple Keplerian orbit where the 6 orbital parameters are fixed. The earth gravity potential and the terrestrial tides have a large impact on the orbit. It would be a lack of efficiency to consider maneuvers for correcting these external disturbances. Thanks to very precise models, the Earth influence is taken into account in the reference orbit. 6 signals are built from a central polynomial part (function of the time) and harmonics (obtained with a pulsation linked to the longitude of the ascending node, a pulsation linked to the argument of latitude and a phase).

4.1.3 Propulsive system OPS-SAT is a non-maneuverable satellite. The maneuvers will then be considered in the reference orbit. A propulsive system needs to be considered for the execution of the maneuvers. After a discussion with a propul- sive engineer of the Space Mechanics department, it has been decided to take a similar propulsive system as one of the nanosatellites of the KINEIS project. The KINEIS project consists in sending a French constellation of 25 nanosatellites, expected in 2022, to provide services for the Internet of things (IoT). It describes a telecom- munication of devices and systems using the Internet. The nanosatellites will be placed on -synchronous orbits at an altitude of 650 km. The project is based on the Argos system which allows a geolocation of beacons using the Doppler effect with a precision of 150m.

The propulsion system used for the nanosatellites of the KINEIS project are electric in order to facilitate the orbital station-keeping and to control the constellation. The different parameters of the system are gathered in the following table.

∆vmin (m/s) ∆vmax Isp (s) Thrust (N) 0.001 0.025 2100 0.00025

Table 4.1: Characteristics of the chosen propulsive system

Besides, one thruster is considered on OPS-SAT. An attitude’s law needs to be defined for executing both in-track and cross-track maneuvers. The angular velocity for the attitude control is 1 deg/s. Two constraints specific to the satellite have been implemented.

• The thrust arc is at maximum of 80◦ per node.

• A maximum of 2 maneuvers per orbit can be carried out.

4.1.4 Maneuver slots In order to be close to real conditions of operations, a mission has been defined. OPS-SAT passes over and communicates with the ESOC station, in Darmstadt, twice a day. We consider that the mission of the satellite is to analyse the oceans as well. To know the time slots when the satellite flies over the oceans, I needed the orbit of reference, the coordinates which delimit the borders of the oceans, obtained from Google Maps [11], and the dates when the Sun dazzles the attitude sensors for each type of maneuver. From the Patrius library, EarthZoneDetector objects were created to detect the dates when the satellite flies over the continents. A DistanceDetector object was created to detect the dates when the satellite passes over the Darmstadt station. Finally, a new class based on the EclipseDetector was created, called “SunDetector”, to detect the dates when the Sun will be in the sensors cone before performing the maneuvers. The sensors cone is defined by a semi-angle of 30◦ which is the same angle as the one considered for the KINEIS satellites. We consider here three different

34 CHAPTER 4. TESTS PREPARATION maneuvers: a+, a− and in inclination. Since the Sun detection depends on the type of the station-keeping maneuver, different maneuver slots have been obtained. Indeed, the direction of the sensor will be oriented along −~t, for the semimajor axis increase maneuvers, along ~t for the semimajor axis decrease maneuvers and along ±~w for inclination maneuvers.

Figure 4.1: OPS-SAT frame

Then an attitudes law was considered. We assume that the satellite will be fixed in its local frame (TNW) (see section 2.1.3) during the mission. From Figure 4.1, the z-axis will be similar to the t-axis of the frame (TNW), the x-axis will be equal to the n-axis oriented towards the center of the Earth (the instrumentation to analyse the oceans is on that face of the satellite) and the y-axis completes the right-hand rule so in the same orientation or the opposite one of the w-axis depending on the angular momentum orientation. The attitude sensors are considered to be located next to the thruster, oriented in the −z-axis of the satellite. From this configuration, no attitude maneuvers for maneuvers in a+ are needed unless the Sun dazzles the attitude sensors. For maneuvers in a−, a rotation of 180◦ is required before performing the maneuvers. For the inclination maneuvers, a first maximum rotation of 180◦ is required to orientate the sensors in the opposite direction of the sun. A second rotation around the y-axis is done of ±90◦ depending on whether the inclination needs to be decreased or increased.

Figure 4.2: The worst case scenario considered for solar glares avoidance maneuvers

Figure 4.2 shows the worst scenario that I considered for avoiding the solar glares. In the represented con-

35 CHAPTER 4. TESTS PREPARATION

figuration, we consider a semimajor axis increase maneuver. The two positions of the satellite correspond to extreme positions where the considered type of maneuver is not possible. The biggest attitude maneuver that should be considered is when the Sun would cross completely the sensors’ cone if no attitude maneuver is performed. The question here is if we should consider another time in the maneuver slots when this scenario happens. Indeed, in this scenario, the satellite would rotate at maximum of 360◦ −2α where α is the semi-angle of the sensors’ cone. If the time to rotate is longer than the time the Sun prevents the maneuver to be carried out, then the difference should be considered in the maneuvers slots. Wiith the semi-angle and the angular velocity previously defined, the rotation time is 300 s. The preventing time due to the Sun is calculated knowing the angle between the two extreme positions of the satellite and the periode of the orbit. This angle is obtained geometrically from Figure and is 2α (the Sun is assumed to be a point). If we consider an of 90 min, the preventing time is 900s. Since this time is much longer than the rotation time of the attitude maneuver, the satellite can be considered to be directly in position to perform the maneuver after the Sun “has passed”.

Figure 4.3 shows a visualisation of the simulated OPS-SAT orbit with the sensors oriented along −~w. In this case, the sensors are dazzled by the sun. So, inclination decrease maneuvers cannot happen. The represented orbit corresponds to the reference orbit.

Figure 4.3: VTS visualisation: case of solar glares

4.1.5 Solar flux data

One of the main reasons why the station-keeping maneuvers are done is because of the solar flux variations which are unpredictable. The tests are done in real time in order to be in the same conditions as in operations situations. To run a simulation, it is necessary to have solar flux data. But, It was just said that the solar flux data cannot be predicted. One way to overcome the problem is to provide past data. Indeed, the solar activity follows an 11 years cycle. From the data provided by the NOAA’s Space Weather Prediction Center (National Oceanic and Atmospheric Administration) [10], the solar activity two cycles before January 2021 could be plotted, so 22 years ago. The trend of the current solar flux was then compared with the past one. Figures 4.4 and 4.5 show the two obtained curves.

36 CHAPTER 4. TESTS PREPARATION

Figure 4.4: Current solar flux evolution (from 01/10/2019 to 10/12/2020)

Figure 4.5: Past solar flux evolution (from 10/12/1996 to 10/12/1997)

From Figures, it can be deduced the past date when the solar flux follows the same trend as the one of 14/12/2020 represented by the blue line in Figure 4.4. The past day is represented by the same blue line in Figure 4.5 and is the day 19/09/1997, 283 days after 10/12/1996.

4.1.6 Change of the ASTERIA code Due to the propulsive constraints stated previously, some modifications had to be added to the ASTERIA code. The maneuvers slots length should not exceed 80◦ and no more than 2 maneuvers per orbit should be executed.

If the slot length l exceeds 80◦, the quotient q of the Euclidean division of l by 80◦ is first calculated and then the slot is divided by an integer n = q if the rest of the Euclidian division is zero and n = q + 1 otherwise. Thus, n slots of the same length (smaller than 80◦) compose the original slot. With this method, the length of the new slots is maximized.

To avoid the execution of more than 2 maneuvers per orbit, a new maneuver can be added to the horizon ma- T neuvers list only if a duration of at least half the mean period 2 of the orbit separates it from the last maneuver of the horizon maneuvers list.

4.1.7 ASTERIA analysis tools At each passage over the ESOC station, in Darmstadt, a log file containing all the results of the execution of ASTERIA will be transmitted from OPS-SAT to the ground. At each ascending node, ASTERIA is called and executed. The log file contains the following information:

• The initial parameters

37 CHAPTER 4. TESTS PREPARATION

• The activation number of the code

• The state of the satellite at each call of ASTERIA

• The electric distribution of the maneuvers

• The updated maneuvers

• The number of maneuvers to be executed

• the executed maneuvers

• the computational time of the running of ASTERIA at each call

From the list of the states at the ascending nodes and the reference orbit (already known), the difference of each orbital parameters can be computed and the following graphs are obtained:

• The temporal evolution of the difference of each orbital parameters

• ∆a in function of a × ∆α

• ∆i in function of ∆Ω

• The temporal evolution of the maneuvers efficiency (eccentricity and the corrected eccentricity)

• The temporal evolution of the difference (∆T , ∆N, ∆W ) in the frame (TNW)

• The temporal evolution of the executed and optimal maneuvers with the maneuver slots

The computational time of the running of ASTERIA in function of the time is also printed in a graph. If the running time is suddenly disturbed, an emulation at this call would enable to understand the reasons of this potential anomaly.

For the second version of ASTERIA, the computed maneuvers are also printed in the log file. They are com- puted, before each call, in the horizon of prediction and in the search horizon in order to then be able to emulate the calls on ground.

ASTERIA emulators The low data rate transmission and the time the satellite passes over the receiver station impose a limit of the amount of transmitted data. Therefore, all the details of the execution of the code on-board cannot be printed in the log file. A solution is to emulate the code. An emulation is an imitation of the behaviour of a code. To do so, all the input data need to be known. When ASTERIA is called, only the satellite state is set as an input. However, some lists are updated at each call. A dependence between the calls exists. To simulate the call number n, the code was run from scratch with the list of the orbital states at the ascending nodes taken from the log file. Due to errors of executions, data writings and data readings, a tiny error appears in the first computed maneuvers. This error impacts the update of the list of the previous states which will be used for the derivatives computation of the current state needed for the analytical propagation. We understand that the error evolves with the propagation and leads to worsen the results while the running call number is increasing.

What is just described is not exactly an emulation of the AOC since the running at a given call number is not in the same conditions as the running at the same call number realised on OPS-SAT. To do so, at a given call number, the same list of the previous states, the same list of maneuvers in the horizon time (frozen and semi-frozen) and the same temporal list at the ascending nodes need to be provided. This can be done in two different ways:

• Either, all the lists are printed in the log file for each call number.

• Or, the lists are rebuilt on the ground.

38 CHAPTER 4. TESTS PREPARATION

As stated before, the log file is limited in amount of data. So, the first option cannot be considered and the second one is chosen. The list of maneuvers can be rebuilt since all the executed and the updated maneuvers are printed. The temporal list can be rebuilt as well from the date of the current node. The next ascending nodes are added successively with a separation of the mean period of the orbit. The list of the previous states is rebuilt from scratch (from the first call) as can be seen in Figure4.6. At each ascending nodes, the list is updated taking into account the executed maneuvers between the previous ascending node and this node. Indeed, the maneu- vers change the difference of the orbital parameters of all ascending nodes of the list. The executed maneuvers can be found in the log file. By taking the maneuvers into account in this list, a “free” evolution of the previous orbital parameters is described. The derivatives of the current node are then computed from this evolution using linear and quadratic regressions.

The lists depend only on data from the log file, computed on-board. For a given call, no data from com- putations on ground are required. It guarantees a running of the emulation on the ground in the exact same conditions as the running on-board.

Figure 4.6: Acquisition of the previous nodes list

Another emulator was created for the second version. Due to the differences between the two versions of the code, more data needed to be printed in the log file. For this version, the whole maneuvers plan is printed at each call during its simulation as well as the new computed maneuvers, in order to be in the same conditions during the emulation. Indeed, the computation of the collision risks and therefore the next maneuvers plan depend on these maneuvers.

ASTERIA code analysis One of the purposes of the emulator is to trace the code’s running, i.e. all the functions of the code are called. A functions tree of ASTERIA had first to be defined. If an anomaly occurs, the knowledge of the code’s process and the execution times of specific functions would help to understand it. Besides, the emulator is a way to check the results of OPS-SAT.

39 CHAPTER 4. TESTS PREPARATION

4.2 CROCO

CROCO has first been developed in parallel with ASTERIA but with a view to eventually being integrated into it. Its purpose is to compute potential risks of collisions and to propose avoidance strategies to reduce potential high probabilities.

4.2.1 CROCO configuration From the ephemeris of the primary object, the maneuvers plan provided by ASTERIA and the ephemeris of a list of secondary objects, CROCO is able to compute potential risks of collisions and to provide a target for the avoidance strategy. The different parameters for the configuration of CROCO are listed: • Configuration of Patrius • Timespan of the propagation of the ephemeris • Time scale • Uncertainties laws (tangential and out-of-plane) – Coefficients – Orders • Maneuvers plan – Type – Magnitude – Direction – Date – Duration – Isp • Satellite data – Frame – Dry mass – Fuel mass • Screening volume – Frame – Shape – Distances • Numerical propagator parameters – Frame – Integrator parameters ∗ Minimum step ∗ Maximum step ∗ Absolute tolerances ∗ Relative tolerances – Earth gravity potential ∗ Order ∗ Degree – ’s attraction – Sun’s attraction

40 CHAPTER 4. TESTS PREPARATION

CDM taken by CROCO The primary and secondary objects are given as follows: • Header – Creation date of the CDM – Originator – Message identification • Body – Relative meta data ∗ TCA (Time of Closest Approach) ∗ Miss distance ∗ Start screen period ∗ Stop screen period ∗ Screen volume frame ∗ Screen volume shape ∗ Screen volume distances ∗ Screen entry time ∗ Screen exit time – Segment ∗ Meta data · Object (primary or secondary) · Object designator · Catalog’s name · Object’s name · International designator · Object’s type · Ephemeris’ name · Covariance’s method · Maneuverable · Reference frame ∗ Data · Drag area · State vector (position and velocity) · Covariance matrix

4.2.2 Management of the CDMs Eventually, the satellite should be autonomous and be able to navigate into space respecting its mission and constraints while avoiding collisions. The satellite would receive at each passage an update related to the mission, the orbit of reference and a list of CDMs. Indeed, the satellite will not be able to detect the trajectories of the other objects around. The CDMs are provided from the configured reference orbit by the COO. To simulate at best the real conditions of the CDMs transmission, the provided CDMs need to be split into several groups of sendings. To do so, a CDMs simulator has been developed to provide a number of CDMs randomly and a random date for each CDM in order to be close to the reality. The different steps of the simulator are given: • Number of CDMs per day given randomly from normal distribution law (average = 10, standard value = 5) • Dates of obtaining of the CDMs given randomly from three normal distribution laws (average at three different times per day, standard value = 3 h)

41 CHAPTER 4. TESTS PREPARATION

• A date is attributed to each CDM randomly giving a higher probability to the first time • Definition of three packages, one before the first sending of the day, one between the two sendings and the last one after the last sending which will be added to the first package of the next day The list of CDMs provided by the COO is first filtered depending on more precise criteria and lightened since all the information is not necessary for the collision risk computations. Depending on the TCA (Time of Closest Approach) and the random number previously calculated, the CDMs are split into groups.

4.2.3 CROCO analysis The results of CROCO are written in a log file like ASTERIA. What is interesting to analyse here is the values of the computed probabilities and the execution times of the different steps. As conjunctions of several secondary objects are considered, first global graphs are analysed showing global results of all the conjunctions. Are shown the execution times of: • The generations of the primary and secondary ephemeris

• The search of potential risks • The total running time Are shown as well different numbers of: • Risks

• Risks in the screening volume • Probabilities lower/bigger than 1E−10 and 1E−5 Graphs showing intermediate results of each conjunction are also analysed. Are showed the execution times of:

• The propagations of the covariances of the primary and secondary objects • The propagations of the states of the primary and secondary objects • The LAAS probability computation • The COPOC probability computation

Are obviously shown as well probabilities’ value: • LAAS • COPOC

The sources of errors that can explain the differences between results on board and on the ground are stated as follows: • Approximations of propagations on board • Different considered uncertainties and covariances

• Computation problems on board These stated sources of errors could lead to overestimation or underestimation of the collision risks.

42 CHAPTER 4. TESTS PREPARATION

4.3 Tests implementation

Because of the COVID situation, the execution of the tests was delayed. It allowed me to describe the tests plans more in details. I remind you that OPS-SAT is not maneuveuverable. A strategy to consider the station-keeping maneuvers had to be defined. It had first been thought about modifying the reference orbit so that the satellite believes the maneuvers have been executed. However, a problem with the sensors occurred and lead to a GPS system non-functional.

4.3.1 Solutions proposed to overcome the GPS system problem The two algorithms need the state of the satellite at the ascending nodes to run. The information about the state of OPS-SAT is not very accurate. Therefore, it has been decided to take into account the states of the ANGELS satellite which has a similar trajectory. Here are presented the different suggestions that were proposed:

• Putting a simulator on board

• Simulating on ground and sending:

– A list of the states at the ascending nodes – A list of GPS data

The first option was abandoned since it is not representative to real conditions of operations. The computational times would not be relevant since the simulator requires much more computations than in reality due to propa- gation computations. Besides, the satellite architecture would not be completely exploited. Sending a list of data from a simulation on ground was therefore chosen. The question of what data to send remains. As previously stated, only the states at the ascending nodes are required to run the codes. However, by sending a list of GPS data, we would be closer to real conditions with an operational GPS system. The call of GPS data would allow to test more completely the satellites architecture. This last option was hence chosen. The GPS system normally gives the current state of the satellite. So, the GPS data are nothing more than a list of states given at different dates. From these states, an orbit definition is done by extrapolation. From this defined orbit, the state at the ascending node can be obtained and given to the codes for their execution. If only a list of the states was sent at the ascending nodes, the orbit definition process could not have been tested. The GPS data are obtained from the simulation where the states are recorded at a defined frequency close to the one of the GPS system. One advantage of this GPS data list is that the maneuvers are considered which would not have been the case if the GPS system was working.

Different series of tests have been defined. The first ones enable to check the functionality of the process, i.e. if all the different steps are well done. The results of the codes are not firstly analysed. Then, a series of tests allow to analyse the results and the operational stages like supplying the satellite with new data and receiving codes executions.

4.3.2 Time consideration A time step is imposed by the GPS system for the generation of the new states. Since the GPS system is not functional, a list of GPS data will be provided. Thus, no time dependency of the GPS needs to be considered. However, it is necessary to take into account the time for several reasons:

• From an operational point of view, the supply of the new data (list of secondary objects and maneuvers slots) needs to be done at a specific date.

• Problem of representativity: ASTERIA must finish its computations before the new orbit definition. A break time needs therefore to be considered between two orbit definitions.

In order to run the tests in an efficient way without losing time, several strategies are considered depending on the objectives of the tests:

• For the first tests, the codes are executed in real time but during a short time. The maximum computational time is obtained for each code.

43 CHAPTER 4. TESTS PREPARATION

• For the tests with no supply of new data, the codes are executed in an accelerated time taking into account a break between two orbit definitions. This break time is deduced from the maximum computational time obtained from the previous tests and by adding margins. Indeed, ASTERIA is called after an orbit definition. The next orbit definition should not be done before ASTERIA has finished its computations.

• For the last tests, the codes are executed in real time in the same conditions as in reality (with a functional GPS system). The codes are executed on several weeks.

4.3.3 First tests seen from the satellite’s point of view e consider that the codes have already been sent. First, we check that the data are well received, ASTERIA is executed and the computed data are well sent. The tests are done in real time. From this series of tests, we deduce the maximal computational time of ASTERIA. Here the different steps of the test are described:

1. At the first passage over the station in Darmstadt, reception of:

• The list of GPS data • ASTERIA’s inputs: – Reference orbit – Station-keeping maneuvers slots – ASTERIA setting parameters – Initialisation data

2. Orbit definition

3. “At the ascending node”, ASTERIA is called (during 5 orbits)

• limentation of an output file LogASTERIA

4. Sending of the file LogASTERIA at the next passage over the station in Darmstadt

4.3.4 Second tests seen from the satellite’s point of view

We check here that the data are well received, CROCO is executed and the computed data are well sent. CROCO is executed in real time. We save the maximum computional time of the execution of CROCO. It needs to be known as well the time to obtain the list of the secondary objects and its execution by CROCO.

1. At the first passage over the station in Darmstadt, reception of:

• The list of GPS data • CROCO’s inputs: – CROCO’s configuration – List of the secondary objects obtained from conjunctions of the ANGELS satellite

2. Orbit definition

3. “At the ascending node”, CROCO is called (during 5 orbits)

• Supply of an output file LogCROCO

4. Sending of the file LogCROCO at the next passage over the station in Darmstadt

44 CHAPTER 4. TESTS PREPARATION

4.3.5 Third tests seen from the satellite’s point of view ASTERIA and CROCO are tested separately. The codes are executed in an accelerated way taking into account a break time between two orbit definitions. For each code, the break time is obtained from the previous tests. We check that the data are well received and well read, the orbit definitions are well done by checking the states at the ascending nodes for instance and the computed log files are well completed. All the data are sent before the execution of the test and no supply of data is done.

1. At the first passage over the station in Darmstadt, reception of:

• The list of GPS data • ASTERIA’s inputs: – Reference orbit – Station-keeping maneuvers slots – ASTERIA setting parameters – Initialisation data • CROCO’s inputs: – CROCO’s configuration – List of the secondary objects obtained from conjunctions with the reference orbit

2. Orbit definition

3. “At the ascending node”, ASTERIA is called during 1 day (then 15)

• Supply of a file LogASTERIA

4. “At the ascending node”, CROCO is called during 1 day (then 15)

• Supply of a file LogCROCO

5. Sending of the files LogASTERIA and LogCROCO at the next passage over the station in Darmstadt

4.3.6 Fourth tests seen from the satellite’s point of view We consider the same tests here as the third series of tests but CROCO is called directly after the call of ASTERIA. The execution of the codes is accelerated as well. We consider an execution of 15 days in order to analyse the maneuver plans computed by ASTERIA with no dependance with the initialisation data.

1. At the first passage over the station in Darmstadt, reception of:

• The list of GPS data • ASTERIA’s inputs: – Reference orbit – Station-keeping maneuvers slots – ASTERIA setting parameters – Initialisation data • CROCO’s inputs: – CROCO’s configuration – List of the secondary objects obtained from conjunctions with the reference orbit

2. Orbit definition

3. “At the ascending node”, call of ASTERIA and then CROCO during 15 days

• Supply of files LogASTERIA and LogCROCO

4. Sending of the files LogASTERIA and LogCROCO at the next passage over the station in Darmstadt

45 CHAPTER 4. TESTS PREPARATION

4.3.7 Fifth tests seen from the satellite’s point of view As the fourth series of tests, CROCO is called just after ASTERIA at each ascending nodes but the codes are executed in real time.

1. At the first passage over the station in Darmstadt, reception of:

• The list of GPS data → Once at the beginning of the test • ASTERIA’s inputs: – Reference orbit → Once at the beginning of the test – Station-keeping maneuvers slots → Once every day – ASTERIA setting parameters → Once at the beginning of the test – Initialisation data → Once at the beginning of the test • CROCO’s inputs: – CROCO’s configuration → Once at the beginning of the test – List of the secondary objects obtained from conjunctions with the reference orbit → At each passage over the station

2. Orbit definition → At each ascending node

3. “At the ascending node”, call of ASTERIA and then CROCO during 15 days

• Supply of files LogASTERIA and LogCROCO → At each ascending node

4. Sending of the files LogASTERIA and LogCROCO at the next passage over the station in Darmstadt → Once every day

4.3.8 Sixth tests seen from the satellite’s point of view A v1 bis version of ASTERIA where CROCO is semi-integrated is tested in real time.

1. At the first passage over the station in Darmstadt, reception of:

• The list of GPS data → Once at the beginning of the test • ASTERIA’s inputs: – Reference orbit → Once at the beginning of the test – Station-keeping maneuvers slots → Once every day – ASTERIA setting parameters → Once at the beginning of the test – Initialisation data → Once at the beginning of the test

2. Orbit definition → At each ascending node

3. “At the ascending node”, call of ASTERIA during 15 days

• Supply of files LogASTERIA → At each ascending node

4. Sending of the file LogASTERIA at the next passage over the station in Darmstadt → Once every day

4.3.9 Seventh tests seen from the satellite’s point of view Another version of ASTERIA v2 where CROCO is completely integrated is tested in real time.

1. At the first passage over the station in Darmstadt, reception of:

• The list of GPS data → Once at the beginning of the test • ASTERIA’s inputs: – Reference orbit → Once at the beginning of the test – Station-keeping maneuvers slots → Once every day

46 CHAPTER 4. TESTS PREPARATION

– ASTERIA setting parameters → Once at the beginning of the test – Initialisation data → Once at the beginning of the test – CROCO’s configuration → Once at the beginning of the test – List of the secondary objects obtained from conjunctions with the reference orbit → At each passage over the station

2. Orbit definition → At each ascending node

3. “At the ascending node”, call of ASTERIA during 15 days

• Supply of files LogASTERIA → At each ascending node

4. Sending of the file LogASTERIA at the next passage over the station in Darmstadt → Once every day

4.3.10 Preparation of the supply files From the fifth series of tests, some data will be provided during the test. It leads us to think about a strategy to implement the data management process.

Maneuvers slots The maneuver slots will be provided every day. Figure 4.7 shows the process. A certain duration ∆t needs to be considered to unzip the files sent to the satellite. Indeed, the files need to be ready when ASTERIA is called. Another duration occurs between the moment when the files are sent from the ground and the moment the satellite starts to unzip them. We decided to consider a duration ∆tmargeBefore equal to the moment when the files are sent and the moment when ASTERIA is called. The slots provided in this duration should not be useful normally for the computations of ASTERIA. They are considered just as margin. Another margin is considered for the slots after one day of computations. It could be equal to 3 days for instance in case a problem occurs during a transmission of the data at the passage over the station at Darmstadt.

Figure 4.7: Preparation of the slots file

Primary object In this study, the primary object should be OPS-SAT but since the GPS system does not work, it had been decided to consider its reference orbit. Originally, in its first version, CROCO was taking a CDM corresponding to the primary object as an input. Eventually, the primary objects information will be provided by the state at

47 CHAPTER 4. TESTS PREPARATION each ascending node, the same state as ASTERIA deals with. For the firsts tests using the version CROCO v1, different possibilities were taken into consideration:

• Sending a list of CDM for the primary object at each ascending nodes.

• Coding an interface to create a CDM at the passage of each ascending node.

• Changing the way CROCO considers the data of the primary object so that it can read directly the state at the ascending node like the other versions of CROCO.

The first option would increase the amount of sent data considerably. Besides, redundant information would be sent. The second option was an alternative in the case CROCO should not be modified. Since it was allowed to modify the code, the last option was considered. The other versions were partially advanced at that time. It was decided to consider first a CDM for the configuration of the primary object in CROCO and then at each ascending node, CROCO takes into account the given state of the satellite.

List of secondary objects First, a package of CDMs is provided by the COO (Operational Orbitography Center). The acquisition of the CDMs takes a certain time ∆tCDM1. Then, the CDMs are selected so that only one CDM is provided per secondary objects and only the CDMs in a defined geometrical box are kept. Then the data are sent. As for the preparation of the slots, margins are considered so that no risks are avoided.

Figure 4.8: Preparation of the file of secondary objects

The COO provides all the CDMs found in a given duration for the simulation. The CDMs are then distributed in different packages using the CDMs simulator described in paragraph 4.2.2. in case all the CDMs are provided at once.

4.3.11 Data management We consider two passages per day over the station of Darmstadt, one at 6 am and the other at 6 pm. At each passage, six minutes of telecommunication is available. The total amount of date is 1 MB per passage with a maximum of 3 MB. The data rate can be calculated and is equal to 2.8 kB/s (8.3 kB/s maximum). Table 4.2 shows the amount of data (in bytes) that could be sent for the different tests previously detailed except the sev- enth series of tests. Indeed, the computations of the second version of ASTERIA where CROCO is completely integrated could not be predicted. The amount of data for this case depends a lot on the risks with the secondary objects.

48 CHAPTER 4. TESTS PREPARATION

The numbers were obtained based on the amount of data simulated on ground. We can see that the maxi- mum amount of data is never passed. However, the threshold could be reached in case an avoidance strategy needs to be considered for the seventh series of tests.

Tests Number of days Initialisation sending Sending at Receiving at Last receiving each passage each passage First 0.19 361 805 12 945 Second 0.19 81 363 31 638 Third 1 380 102 237 772 Fourth 15 1 324 834 3 395 168 Fifth 15 1 265 945 78 091 118 886 Sixth 15 1 265 945 78 091 118 886

Table 4.2: Amounts of data for the different series of tests

49 Chapter 5

Results analysis

The different results analysed during the internship are presented in this chapter. Results from a simulator are presented about the autonomous orbit control while managing a risk of collision. Regarding the CROCO algorithm itself, I studied the influence of the force models considered in the propagation of the states and the covariances, the impact of the covariance definition of the primary object on the probabilities computed and the CDMs filtering strategies done on ground to reduce the amount of CDMs to send to the satellite.

5.1 Cross-validation

Since the GPS system of OPS-SAT was not functional, GPS data needed to be provided. I provided an ephemeris from the simulator at the same time step as the GPS system. From this GPS data, the code which was about to be sent on the satellite could be run. Another intern, Anthony SURIVET, was dealing with the implementa- tion of the code into the framework developed by the CCSDS MO service. This framework is known as NMF (Nanosatellite Mission operations Framework). We both compared our propagations and had the results ploted in Figure 5.1. Are shown the differences of the orbital parameters between both computations according to the number of the state of the ephemeris which is thus related to the time. The difference of time is equal to zero means that the compared states are expressed at the same date. It can be seen that the orbital parameters oscillates with an amplitude which increases with the time.

The code implemented in the MNF was previously validated by another intern before my internship. It was compared with a simulator, a code developed on ground that I am using. A difference of a few meters was no- ticed on the semimajor axis which is not what we can see in Figure 5.1. The difference of semimajor axis starts here with a value of 330 m in absolute value. These results are not coherent with our expectations. Different causes could explain the errors:

• The GPS data were converted in latitude, longitude, altitude parameters as the GPS data should have been provided normally. A model of the Earth had to be defined to express the positions in these parameters.

• Different dataset files could be considered. Indeed, a filtering of the data to be sent on-board is necessary to reduce at maximum the amount of data.

• Maneuvers are not considered in the orbit definition. From the GPS data, an orbit is defined so that the passage at the ascending node can be assessed and then ASTERIA (and/or CROCO) can be called.

• The difference of the time reference and the referential frame could explain the oscillations.

50 CHAPTER 5. RESULTS ANALYSIS

Figure 5.1: Difference of results between the simulator and the code implemented in the MNF

The first cause was investigated by changing the way the GPS data was read. Some changes were obtained in the behaviour of the difference of orbital parameters with the time but did not explain the huge difference computed at the beginning, 330 m of difference of the semimajor axis was still obtained. This analysis revealed to us that the model of the Earth used in the conversion of the positions parameters was not similar to the one used in the MNF.

A huge amount of time was spent in the control check of the files called in the simulations. The codes were also reviewed and compared. Indeed, some functions were different but appeared to not have any impact on the results. All the files were even imported to replace the folder containing the filtered data. Some issues occurred with the files related to the solar activity. A change of the initial time had to be done in order to be in the same conditions between the ground simulation and the NMF simulation. However, no changes were noticed. Therefore, it seems that the filtering does not delete information needed for the computations in the NMF.

Another cause was raised: the maneuvers consideration. Normally, OPS-SAT is an non-maneuverable satel- lite. From the GPS data, an orbit is extrapolated and then propagated until an ascending node is reached. So no maneuvers need to be considered in the orbit definition. However, the GPS data, provided for the validation of the results, is an ephemeris obtained from the simulation where station-keeping maneuvers occurred. In the orbit definition, the orbit is extrapolated from the GPS data considering a “natural” trend of the evolution of the orbital parameters without considering any maneuvers. GPS data were then provided in a timespan where no maneuvers were computed on the simulation. Figure 5.2 was obtained. The GPS data were here provided in Cartesian parameters unlike previously.

51 CHAPTER 5. RESULTS ANALYSIS

Figure 5.2: Difference of results between the simulator and the code implemented in the MNF with no maneu- vers in the provided GPS data

The difference at the beginning of the semimajor axis decreased until 60 m. It seemed that the maneuvers had indeed an impact on the error due to the orbit definition. However, this difference remains important com- pared to our expectations. This difference could be explained by the difference of reference time. Even though the same time scales were taken into account, time ambiguities remained on the MNF’s side.

We also analysed the difference of coordinates in the local frame (TNW) in Figure 5.3 (referential frame detailed in section 2.1).

Figure 5.3: Difference of coordinates in the local frame (TNW) with no maneuvers in the provided GPS data

52 CHAPTER 5. RESULTS ANALYSIS

The evolution of the difference of the T-component which corresponds to the direction of the velocity of the simulated satellite follows the trend of the evolution of the true anomaly showed in Figure 5.2. It is coherent since the considered orbits are quasi-circular. The other components oscillate with a constant amplitude which could be the consequence of a difference of the reference time or the referential frame.

Due to lack of time and the complexity of the problem, it had been decided that the orbit definition will be forced and not be computed by extrapolation. Orbits were provided from the simulation 15 minutes before each ascending node. These orbits were replacing the orbit definitions. The ascending nodes could then be found in the NMF by propagation. ASTERIA was then called from the propagated states at the ascending nodes. in the two figures in the Appendix, we can see that the difference of the results is close to zero. The discontinuities are explained with the maneuvers which are carried out in the simulation on ground. When the orbit after an executed maneuver is set in the NMF, the difference of the results is again zero. An important difference is still noticed at the beginning of the graphs of the RAAN difference and of the T component and W-component differences. The difference of 0.002◦ for the RAAN explains the difference of 250m of the W-component since the orbit has an inclination close to 90◦. These differences seem to be the consequence of a difference in the ini- tialisation of the two simulations. In the graph showing the evolution of the T-component difference, differences appear at the ascending nodes. This is due to the error of writings of the list of orbits considered by the NMF simulation. Indeed, the time of the states of the orbits is written with a precision in milliseconds and explains the difference in the order of tens of meters in the velocity direction. As expected, the curve follows the same trend as the curve of the argument of latitude difference. After the consideration of the last orbit of the list, the difference increases exponentially. This must be the consequence of differences of the forces considered in the propagators. It seems that different versions of the datasets are considered between the two simulations.

53 CHAPTER 5. RESULTS ANALYSIS

5.2 AOC with risk management analysis

The integration of CROCO into ASTERIA leads to define the configurations of both codes coherently. Indeed, both configurations are still defined separately. For instance, the timespan defined in the CROCOs configura- tion should be coherent with the predictability horizon defined in ASTERIA. Otherwise, if a risk occurs, an avoidance maneuver could be executed and then station-keeping maneuvers carried out before the risk happens. A CDM was created to analyse the behaviour of the simulated satellite. A state of the simulated satellite was taken from a simulation with no risks. This state defined the state of the secondary object of the CDM. By defin- ing the velocity of the secondary object in the opposite direction, it would collide with the simulated satellite if no avoidance maneuver is carried out. The probability threshold was adjusted so that the computed risk is considered important. Figure 5.4 shows the differences of the orbital parameters of the simulated satellite.

Figure 5.4: Orbital parameters differences according to the time from the beginning of the simulation

The maneuvers are represented by the green triangles. The blue spots represent the states of the satellite at the ascending nodes. The red curves are the ephemeris. The first maneuver occurs at about 0.6 days after the beginning of the simulation. It is in fact an avoidance maneuver. It was computed so that it happens half an orbital period before the TCA of the risk of collision. Since the avoidance maneuver is decreasing the semimajor axis, ∆a decreases as we can see in the first graph. The behaviours of the argument of latitude and of the eccentricity are disturbed as well since these parameters are dependent from each other as analysed in the section 3.1.3. The trend of the RAAN and the inclination parameters follow their natural trend. We can deduce that no inclination or mixed maneuvers occur during this simulation. After the risk is passed, the satellite will try to reduce its differences with the reference orbit which increased because of the avoidance maneuver. The second maneuver is naturally an a+ maneuver in order to increase the semimajor axis. Since the minimum threshold of the argument of latitude difference is reached after about 1.8 days after the beginning of the simulation (see the second figure of the left side, delta psoM), an a− maneuver is carried out. The orbital parameters are then under control. Indeed, all the orbital parameters except the RAAN and inclination parameters follow the same behaviour as described theoretically in the section 3.1. Since the RAAN and the inclination parameters evolve slowly in time, they cannot be interpreted here on a simulation of only 5 days. Furthermore, the impact of the several semimajor axis maneuvers on the eccentricity is represented.

54 CHAPTER 5. RESULTS ANALYSIS

5.3 CDM analysis

As stated previously, a filtering of the CDM is required to reduce the amount of data to send to the satellite. Besides, several CDMs could describe a risk between two same objects. Different strategies aim at selecting one CDM per secondary object. We will discuss in this section about two strategies. One will select the earliest TCA (Time of Closest Approach) and another one the most recent creation date of the CDM.

First, let’s have an intuition on how important the probability of collision could be depending on the miss- distance and the covariances of a primary and a secondary object. A simple case of study is represented in Figure 5.5, in 2D for readability purposes.

Figure 5.5: Representation of a collision risk between a primary and a secondary object

The covariances are here represented by to simplify the problem. If the covariance of the primary object is too small to not intersect the covariance of the secondary object, as it is the case in Figure 5.5 in yellow, then the probability will be close to zero. The covariances are in reality defined with Gaussian distributions and are not limited by any borders as it is represented by the ellipses in Figure. That is why, the probability will never be equal to zero but very close to it. If the covariance of the primary object is sufficiently large to intersect the secondary object’s covariance, then the probability will be higher than previously. We could think that if the covariance of the primary object is even bigger to include completely the covariance of the other object, then the probability of collision would be maximal. However, by increasing the size of the covariance, the uncertainties on the position of the considered object increase and the probability of collision could decrease. If the positions of the objects were uniformly and continuously distributed and the two objects independent, the probability of collision would be equal to the multiplication of the cross-section ratio of both ellipses. Where the cross-section ratio of one ellipse is defined as the area intersected with the other ellipse out of its total area. This interpretation will give us some intuition to analyse the following results. However, it is important to know that this analogy is not fully true since the covariances of the CDM are defined with Gaussian distributions.

5.3.1 Filtering analysis The filtering tool is analysed by comparing all the CDMs after and before the filtering. The CDMs analysed in this section are provided by the COO. An ephemeris of the reference orbit of OPS-SAT was originally sent from 18/02/2021 to 18/03/2021. From this ephemeris, the COO was able to detect the other objects entering in a de- fined box around the different positions of the ephemeris. More than 100 CDMs were provided. After filtering, 35 CDMs remained. Each CDM corresponds to one secondary object with the most recent date of creation. The state of the satellite was computed at a given time by simulation. The covariance of the primary object OPS- SAT should be defined depending on the uncertainties of the sensors to know the state of the satellite. For the computations, this covariance was defined so that risks of collisions could be computed. Computations of risks of collisions were first computed with the CDM after filtering. They were then compared with computations of all CDMs before filtering.

55 CHAPTER 5. RESULTS ANALYSIS

Due to the huge amount of CDMs, the intensive computations tool HAL of the CNES agency was used. First, a .jar file needed to be created to execute the code CROCO on the cluster. Maven dependencies had to be taken into account in the .jar file. Then a shell script file was created to run the .jar file. In order to take advantage of the computer cluster, the code was executed in parallel. The CDMs were split into a certain number of groups. This number was the number of computer jobs to be executed, approaching the grid computing process. In order to automate the runnings, a script in Python was coded so that after running this script all the computer jobs were launched.

For each call of CROCO, the minimum distances between the primary and secondary object are first deter- mined. The states and the covariances of the objects are then propagated to each date of the minima. A CDM for each minimum is then created. Before, the CDMs related to the secondary object to the ephemeris of the reference orbit. We will call these CDMs: “original CDMs”. After the computations, CROCO computes new CDMs corresponding to the secondary object and the real state of OPS-SAT. The CDMs after computations will be called: “computed CDMs”. In order to facilitate the display of the results, only the computed CDMs with the highest probability is plotted for each original CDM. The computed CDMs are gathered by secondary objects. Figure 5.6 shows the probability of each original CDM (which is therefore the highest probability of the computed CDM) and the corresponding CDM after filtering is shown in green according to the time between the TCA dates and the earliest TCA (in ).

Figure 5.6: COPOC probability of all original CDMs and the filtered CDM

It appears that the filtered CDM, which is the original CDM with the most recent creation date, has the earliest TCA date. This graph reveals that the filtered CDM does not provide the highest risk of probability. If the probability threshold is set between the probability of the filtered CDM and the highest probability, an avoidance maneuver would not be computed whereas a risk would be present. However, the computed probabilities are quite close with a relative difference of about 2%. Besides the dates of TCA are pretty similar as well since the biggest difference is 0.026 s.

5.3.2 Propagation analysis

Thanks to the Patrius library, the propagator could be defined with models of different forces. The more forces are added to the propagator the more precise the propagation will be but the longer will be the computation time and the more data will needed to be sent on-board. Originally, only the gravity (with the definition of the geoid), the attraction of the Sun and the Moon were taken into account. The propagation was compared to another, called “rich propagator”, one where the Earth tides, the drag and the solar radiation pressure were added. Figure 5.7 shows the computed CDMs obtained by CROCO with the CDM filtered saw previously as the original CDM.

56 CHAPTER 5. RESULTS ANALYSIS

Figure 5.7: COPOC probabilities computed from the filtered CDM with a poor and rich propagator

The bottom plot of Figure 5.7 shows the computed probabilities at each minimum according to the time be- tween the TCA dates and the earliest TCA (in seconds). To interpret the difference of propagation, the time of propagation of the primary and secondary objects need to be known. The state of the primary object is updated and its covariance is supposed to be constant at the passage of each ascending node in the second version of ASTERIA (see the next paragraph). The state and the covariance of the primary object needed to be propagated of 12 h 38 min to compute the highest probability which can be seen in the bottom of Figure 5.7. The state of the secondary object and its covariance are defined at the TCA of the original CDM. For the computation of the highest probability, they were retropropagated of 7 h 53 min. The retropropagation means that the state and the covariance of the secondary object were defined after the risk between this object and the primary object so that the propagation needed to be done going back in time. From Figure at the top, the relative difference for this highest probability is about 2 %. It is hard to interpret the relative difference when it reaches 100 % because the probabilities are very close to zero for those risks.

Typically, when CROCO will be integrated in ASTERIA, the state of OPS-SAT will have to be propagated at maximum during the timespan of the horizon of predictability which is defined in number of orbits equal to the sum of the frozen orbits number and the semi-frozen orbits number. In this study, the number of frozen and semi-frozen orbits are both equal to 6. Since the orbital period of the reference orbit is 1 h 35 min, the horizon of predictability is about 19 h. This case of study showed the most important difference between the analysed propagations. A further analysis with more provided CDMs needs to be done to interpret the impact of the forces in the propagator.

57 CHAPTER 5. RESULTS ANALYSIS

5.3.3 Analysis of the impact of the covariance definition of the primary object The covariance is defined in the local frame of the considered object (RTN) corresponding to the frame (QSW) of section 2.1. The covariance is a symmetric matrix defined with 21 components. Each component is the covariance of two random variables corresponding to a RTN-component of the position or the velocity of the object. To study the components of the covariance matrix, they were modified taking the following relative differences of their original value (−10%, −8%, −6%, −4%, −2%, +0%, +2%, +4%, +6%, +8%, +10%).

There are naturally more uncertainties on the direction of the velocity of the objects. Since the motion of the considered objects around the Earth is quasi-circular, the highest component of the covariance matrix in absolute value is CTT (see Figure 5.9). The same original CDM, as seen previously, is studied in this section to keep a certain consistency between the results. The chosen propagator is the “poor propagator”, i.e. with only the gravitational forces. Figure 5.8 shows the miss-distance and its RTN-components, the covariance’s compo- nents of the primary object, the covariance’s components of the secondary object and the computed probability according to the time between the TCA dates and the earliest TCA (in seconds) for different value of the CRR component.

As expected, the curves overlap for the computation of the miss-distances of the minima since there is no dependence with the covariances. We will first focus on the original CDM where the CRR component has not been modified (the red curve, Figure 5.9). We can see a minimum of the miss-distance between 25 000 and 30 000s after the TCA of the first risk. We could think that the probability will be maximal at this point. However, by considering the covariance states, it is not necessarily the case. Figure 5.11 shows it. The maximum of probability of collision occurs between 10 000 and 15 000 s after the TCA of the first risk. The increase of the CTT component of the primary object’s covariance while the T-component of the position decreases dilutes the probability and explains the decrease of its value even though the miss-distance decreases.

By looking at Figure 5.10, we can notice that all the components of the secondary object’s covariance are quasi-constant except the components related to the T-component of the position. The state at 40 000 s after the TCA of the first risk is the given state of the secondary object for the computation of the CDM by CROCO. It is therefore retropropagated (as explained in the propagation analysis section) for earlier risks and propagated for later risks. It explains why the components CTT , CTN and CNN reach a minimum at this time in Figure 5.9.

We now focus on the impact of changing the CRR component. We can see that by decreasing the value of the CRR component, the probability increases for the most important risk but decreases for the other risks. It confirms the previous interpretation. By decreasing the CRR value, the probability is less diluted and more im- portant. We could wonder why the probability of the risks after 10 000 s from the first TCA date does not follow the same trend. The position of the secondary object is getting closer to the primary one. When they will be the closest from each other, the only direction which differs is the radial direction with a difference of about 600 m (see Figure 5.8). Since the standard deviation of the objects in the R-direction is the square root of the CRR component. At the minimum miss-distance, they are equal to about 130 m, respectively 13 m, for the primary object, respectively for the secondary object. The “cross-volume”, by analogy to the cross-section stated in the simple interpretation at the beginning of this section, is too small. By increasing the CRR component of the primary object’s covariance, this cross-volume increases and the probability as well, as showed in Figure 5.11.

58 CHAPTER 5. RESULTS ANALYSIS

Figure 5.8: Miss-distance and the RTN-components for the risk of the filtered CDM for different value of the CRR component

Figure 5.9: Components of the covariance of the primary object for different value of the CRR component

59 CHAPTER 5. RESULTS ANALYSIS

Figure 5.10: Components of the covariance of the secondary object

Figure 5.11: COPOC probabilities computed from the filtered CDM for different value of the CRR component

60 Chapter 6

Conclusion

The number of space debris has considerably increased over the last decades. They represent a significant threat to the viability of the upcoming space missions. Besides, the number of functional satellites rises as well espe- cially in the LEO region. The need for avoidance strategies is today investigated. For this purpose, the CNES agency is working on an Autonomous Orbital Control (AOC) coupled with on-board risks management. Dur- ing this internship, I implemented operational tests by defining the mission, the maneuver slots, the propulsive system, the CDMs, the configuration files and other needed data to run the algorithms. The telecommunication from the ground segment and the satellite was detailed considering different cases of study. Modifications of the algorithms were provided, specific to the experiments on OPS-SAT. Post-processing tools were developed to analyse the outputs data from the satellite. Emulators of the two versions of the algorithms were developed to further analysed the results of the tests. Furthermore, an analysis of the CDMs was carried out.

The filtering of the CDMs was analysed as well as the impact of the covariance of the primary object and the propagator on the computations. The screening box is chosen to compute the risks depending on a geomet- rical criterion. If the miss-distance between a primary object and a secondary object is not in the screening box, the probability of collision is not computed. So if the box is too small, a risk of collision could still be significant even if the miss-distance is large. For instance, the secondary object could be on the same orbit as the one of the primary object but with a big difference of argument of latitude. However, if the screening box is too large, then too many probabilities would be computed on-board and would reduce the reactivity of the satellite. For now, the size of the screening box is manually fixed. Further analysis could be investigated in order to define a proper screening volume which would be dependent on the covariance of the primary object. Another shape than a box could be analysed as well.

The AOC and the collision risks algorithms were first developed separately and are now gathered. Further work is required to organise coherently the instructions between the two codes and minimize the input data. Some data are indeed defined several times. A rearrangement of the code is needed as well as validation and verification tests. The avoidance strategy was discussed in this report. Strategies of avoidance between func- tional satellites could be also further analysed.

Because of the delays caused by the COVID situation, the tests could not be carried out during this intern- ship. Indeed, the satellite was not ready to receive the algorithms. Besides, technical problems occurred like the problem of the GPS system. Solutions were provided and the tests adapted. I hope I will be able to participate to the future discussions of the results when the satellite will be able to compute the algorithms.

61 Bibliography

[1] CNES, Mecanique´ Spatiale, Tome I, 794–796 (1995).

[2] Romain Serra. A fast and accurate method to compute the probability of collision for short-term space encounters. Technical report, LAAS (2015). [3]J er´ omeˆ Thomassin, Sophie Laurens, Jer´ emie´ Labroquere` and Aurelien´ Cuffolo. Autonomous Orbit Control with on-board collision risk management for Low-Earth Otbit Satellites 70th International Astronautical Congress, 21–25 (2019).

[4]J er´ omeˆ Thomassin, Maxime Ecochard and Guillaume Azema. Predictive Autonomous Orbit Method for Satellites Technical report. [5] CCSDS Secretariat. CCSDS Historical Document. In CCSDS recommanded standard for conjunction data messages, (2013).

[6] Luc Jaulin. KalMOOC. In ISTE editions, chapter 7 (2020). [7] Franc¸ois Laporte. JAC Software, Solving Conjunction Assessment Issues. In Technical report. [8] https://www.esa.int/Enabling_Support/Operations/OPS-SAT Presentation of the satellite OPS-SAT. In ESA’s website.

[9] https://directory.eoportal.org/web/eoportal/satellite-missions/o/ ops-sat Details about the satellite OPS-SAT. In eoPortal Directory’s website. [10] ftp://ftp.swpc.noaa.gov/pub/indices/old_indices/ Space weather measurements. In NOAA’s Space Weather Prediction Center.

[11] https://www.google.fr/maps/ Web mapping service developed by Google. In Google’s website.

62 BIBLIOGRAPHY

Appendix

Figure A.1: Difference of results between the simulator and the code implemented in the MNF from given orbits

Figure A.2: Difference of coordinates in the local frame (TNW) from given orbits

63 www.kth.se