Content uploaded by Eleonora Andreis

Author content

All content in this area was uploaded by Eleonora Andreis on Mar 25, 2022

Content may be subject to copyright.

72nd International Astronautical Congress (IAC), 25-29 October 2021.

Copyright by Ms. Eleonora Andreis. Published by the IAF, with permission and released to the IAF to publish in all forms.

IAC-21,C1,1,13,x65893

An Overview of Autonomous Optical Navigation for Deep-Space CubeSats

Eleonora Andreis1

,Vittorio Franzese2

,Francesco Topputo3

A new era of space exploitation is fast approaching. CubeSats have performed a revolution in the way satellites are

deployed in interplanetary missions. The exploitation of standardized dimensions and Commercial-Oﬀ-The-Shelf

components has boosted their utilization by reducing mission costs and development time. The cutting down

on the space entry-price grants the democratization of interplanetary exploration. Yet, the ﬂourishing growth

of users in space will saturate the ground networks, hindering the traditional navigation through ground-based

radiometric tracking. Miniaturized probes that can operate in complete autonomy from the ground represent the

solution of this issue. From navigation perspective, a celestial triangulation algorithm fed by optical observations

of planets can be exploited to retrieve the probe state. In this work, an autonomous optical navigation algorithm

for interplanetary nano-spacecraft applications is developed. In particular, an Extended Kalman Filter featuring

line-of-sight acquisitions of planets is adopted as state estimator. The solution accuracy is improved by correcting

the planetary light-time and aberration eﬀects and by exploiting the optimal beacons selection strategy. Moreover,

an in-depth analysis concerning the numerical precision of the estimator is carried out. Finally, the navigation

algorithm is tested on a platform comparable to a CubeSat computer to verify its sustainability and performances.

The present work is framed within the EXTREMA project, awarded an ERC Consolidator Grant in 2019.

1 Introduction

CubeSats have triggered a revolution in the way satel-

lites have been launched into space [1]. Two main char-

acteristics have boosted their utilization and have ex-

panded their application area: low costs and reduced de-

velopment time. Although most of nanosatellites have

been thus far launched into Low Earth Orbits (LEO),

several CubeSats applications in deep space are foreseen

[2]. Examples of innovative nanosats deep-space mis-

sion concept proposals are the Lunar Meteoroid Impacts

Observer (LUMIO) [3], the Miniaturised Asteroid Re-

mote Geophysical Observer (M-ARGO) [2][4], Juventas

[5] and Milani [6] as part of Hera mission [7]. The break

with the tradition obtained through the exploitation of

standardized dimensions and Commercial-Oﬀ-The-Shelf

(COTS) components allows space to become aﬀordable

not only to space agencies but also to small compa-

nies and universities. The obstacle of this ﬂourishing

growth resides in the saturation of the ground networks

[8]. As state-of-the-art, ground-based radiometric track-

ing is employed for deep-space navigation; despite the

high reliability, its adoption will become more and more

unsustainable with the massive wave of nanosats to be

1PhD Candidate, Department of Aerospace Science and Tech-

nology, Politecnico di Milano, Via La Masa 34, 20156, Mi-

lano, Italy, eleonora.andreis@polimi.it

2Postodoctoral Research Fellow, Department of Aerospace

Science and Technology, Politecnico di Milano, Via La Masa

34, 20156, Milano, Italy, vittorio.franzese@polimi.it

3Full Professor, Department of Aerospace Science and Tech-

nology, Politecnico di Milano, Via La Masa 34, 20156, Mi-

lano, Italy, francesco.topputo@polimi.it

controlled in space. Miniaturized probes that can per-

form guidance, navigation, and control operations with-

out human instructions are the answer to this problem

[9]. The computation shall switch from ground to on-

board and miniaturized satellites shall be empowered to

become stand-alone. This replacement will also cut the

cost related to human employment that is currently in-

dependent of the dimensions and the mass of the space-

craft. In deep-space, the spacecraft must be aware of the

external environment by determining, without ground

support, its position in the Solar System. This could be

possible by exploiting a celestial triangulation algorithm

fed by planet positions vectors [10]. In this context,

this work, framed within the ERC-funded EXTREMA

(Engineering Extremely Rare Events in Astrodynamics

for Deep-Space Mission in Autonomy) project 1, aims

to develop an autonomous optical navigation approach

suited for deep-space CubeSats. In particular, an Ex-

tended Kalman Filter (EKF) featuring line-of-sight ac-

quisitions of planets is developed to estimate the probe

state onboard, which simulates stand-alone navigation

accomplished by an interplanetary CubeSat. An im-

provement of the solution accuracy is performed by cor-

recting the planetary light-time and aberration eﬀects

and by exploiting the optimal beacons selection strat-

egy to acquire the external observations. Moreover,

the numerical precision of the estimator is improved

through the implementation of factorization techniques

and non-dimensionalization strategies. The navigation

1https://dart.polimi.it/extrema-erc/, Last Visited on

September 2021

IAC-21,C1,1,13,x65893 Page 1 of 11

72nd International Astronautical Congress (IAC), 25-29 October 2021.

Copyright by Ms. Eleonora Andreis. Published by the IAF, with permission and released to the IAF to publish in all forms.

algorithm is then tested on a platform comparable to

a CubeSat onboard computer to verify its sustainabil-

ity and performances. This work presents the results

obtained for a deep-space CubeSat on an Earth-Mars

transfer and discusses possible improvements in view of

a subsequent hardware-in-the-loop simulation. The pa-

per is structured as follows. The navigation problem

is stated in Sec.2, where the celestial triangulation ge-

ometry (Sec.2.1), the optimal beacons selection strategy

(Sec.2.2), and the corrections of the light-time eﬀects

(Sec.2.3) are described. The EKF is thus implemented

in Sec.3. Apart from a standard ﬁltering procedure

(Sec.3.2), four alternative approaches are developed in

Sec.3.3 to solve the numerical issues that can arise after

the onboard deployment of the algorithm. At this point,

the algorithm suitability needs to be tested by perform-

ing a simulation with a miniaturized processor-in-the-

loop (PIL). The methodology followed for the deploy-

ment of the algorithm on a miniaturized processor, in

this case a Raspberry Pi, is illustrated in Sec.3.4. Even-

tually, the results of the implementation are illustrated

in Sec.4. In particular, the performances of the ﬁve ﬁl-

tering approaches are compared in terms of numerical

stability and computational complexity in Sec.4.4. The

validation of the best alternative is eventually performed

on a Raspberry Pi in Sec. 4.6.

2 Statement of the Problem

2.1 Deﬁnition of the Problem Geometry

A CubeSat is assumed to cover an interplanetary trajec-

tory. Its state is unknown. The probe position can be

retrieved by solving the kinematic celestial triangulation

problem [10]. This is possible only when two Line-of-

Sight (LoS) directions associated to diﬀerent planets are

acquired simultaneously. Let the probe position rbe

r=r1−ρ1ˆ

ρ1=r2−ρ2ˆ

ρ2(1)

where ridenotes the position of the i-esimal planet with

respect to the Sun in an inertial frame, ρithe position

magnitude of the i-esimal planet with respect to the ob-

server in an inertial frame and ˆ

ρiits direction. The

planets’ positions with respect to the Sun in the inertial

reference frame are available from their ephemerides, ˆ

ρ1,

ˆ

ρ2can be measured onboard by the probe optical sen-

sor, while the ranges ρ1,ρ2are unknown. The scalar

multiplication of Eq. 1 by ˆ

ρ1and ˆ

ρ2yields to a system

of two equations which can be arranged in matrix form

as

−1ˆ

ρ>

1ˆ

ρ2

−ˆ

ρ>

2ˆ

ρ11

| {z }

A

ρ1

ρ2

|{z}

x

=ˆ

ρ>

1(r2−r1)

ˆ

ρ>

2(r2−r1)

| {z }

b

(2)

described by the linear-algebra problem, Ax =b. The

solution to Eq. 2 is determined as long as ∆(A) =

−1+(ˆ

ρ>

1ˆ

ρ2)( ˆ

ρ>

2ˆ

ρ1)6= 0, where ∆ is the determinant

of A. The expression of ∆(A) can be also written in

function of γ, which describes the angle between the

two beacons as seen by the observer (Fig. 1). Since

cos γ=ˆ

ρ>

1ˆ

ρ2, ∆(A) = −1 + cos2γ. When ∆(A)6= 0,

the problem solution is x=A−1b, which plugged into

Eq. 1 yields the probe inertial position. Whereas, when

cos γ=±1, Ais singular and the solution is undeter-

mined. This occurs when the probe and the planets are

in conjunction or opposition [11]. The method presented

Fig. 1: Celestial triangulation problem.

so far solves for the spacecraft position at the same epoch

of measurements acquisition. Dynamic methods, e.g.,

Kalman ﬁltering, are however more accurate and can

estimate the full state vector, including the spacecraft

velocity. Moreover, it is possible to assume that only

one beacon at a time can be observed by the CubeSat

due to the narrow Field of View (FoV) of the onboard

optical sensor. Thus, the kinematic celestial triangula-

tion becomes not more applicable. For this reason, in

this work, an Extended Kalman Filter (EKF) based on

the celestial triangulation approach will be exploited to

develop the autonomous navigation algorithm.

2.2 Optimal Beacons Selection Strategy

Once the celestial triangulation method is stated, the

couple of planets to be tracked needs to be chosen. It

has been proved that tracking the optimal selection of

beacons yields the highest accuracy in the determination

of the problem solution of Eq. 1 [11, 12]. In this work,

the strategy adopted is the one described in [11], which

is here implemented directly into the dynamic estimator.

First, the planets observability is assessed by evaluating

the associated Solar Aspect Angle (SAA) and apparent

magnitude. Then, the optimal beacon selection strategy

is applied to only the planets whose parameters respect

the threshold values imposed by the optical sensor. The

optimal pair is found by minimizing the ﬁgure of merit

J, which is evaluated for each pair of traceable planets.

IAC-21,C1,1,13,x65893 Page 2 of 11

72nd International Astronautical Congress (IAC), 25-29 October 2021.

Copyright by Ms. Eleonora Andreis. Published by the IAF, with permission and released to the IAF to publish in all forms.

Jis deﬁned as

J=σ2

str

1 + cos γ2

sin γ4d>Li+Ljd(3)

where Li=I3x3−ˆ

ρiˆ

ρ>

iand Lj=I3x3−ˆ

ρjˆ

ρ>

j;ˆ

ρiand ˆ

ρj

are the unitary LoS vectors to the i-th and j-th planet,

respectively. Moreover, σstr is the standard deviation of

the LoS angular error from the star tracker, d=ri−rj

and γ= acos( ˆ

ρiˆ

ρj). The complete derivation can be

found in [11].

2.3 Light Eﬀects

In deep space, the navigation problem becomes more

complex due to the large distance between the observer

and the beacon. In this context, two issues arise, namely

1) the light-time eﬀect and 2) the light-aberration eﬀect

[10]. If corrections are neglected, the planet apparent

position in the star tracker FoV will appear as shifted

to the real one. In particular, this error has a consistent

impact on the estimation of the probe state in deep space

[13]. Indeed, the estimation is more and more aﬀected

by the celestial aberration and by the light-time eﬀect

when the probe velocity and distance to the observed

object increase, respectively.

2.3.1 Light-time Eﬀect

Due to the ﬁnite speed of light and the enormous dis-

tance between the satellite and the beacon, the time dif-

ference between the emission and the reception of the lu-

minous signal is signiﬁcant. The light received by the im-

ager at epoch thas been emitted by the observed planet

at a previous epoch τ, thus τ < t. This eﬀect, called

light-time, yields a systematic error when neglected [14].

Let us see Fig.2; the deﬁnition of the spacecraft position

Fig. 2: Ligh-time eﬀect.

rbecomes

r(t) = ri(τ)−ρ(t, τ ) (4)

To address correctly this problem, the evaluation of

epoch τis fundamental. In this work, τis estimated

directly by the ﬁlter by introducing it as part of the

state vector. Once estimated, τis exploited to retrieve

ri(τ), which represents the ephemerides of the observed

beacon. As the light-time eﬀect correction is performed

internally, it is necessary to ﬁnd an expression for the

time derivative of τ.

Note that ρ=||ri−r||, which is also equal to c(t−τ).

Enforcing this equality yields to the following constraint

functional

L=c(t−τ)− ||ri(τ)−r(t)|| = 0 (5)

By virtue of the implicit function theorem, the diﬀeren-

tiation of Lfor on-board time is

dL

dt=∂L

∂t +∂L

∂τ

dτ

dt= 0 (6)

from which the derivative of τis achieved

dτ

dt=−∂L/∂t

∂L/∂τ =c+ˆ

ρ>v

c+ˆ

ρ>vi

(7)

with vand vibeing the probe and i-th planet velocities,

respectively.

2.3.2 Celestial Aberration

The celestial aberration matters whenever the observer

velocity to the target is not negligible, as in the case of a

probe moving in the Solar System. To account for this,

a correction is performed every time a new observation

is acquired, and before the estimation is measurement-

updated. The procedure followed for the correction is

the one described in [10]. With reference to Fig. 3, let

𝜃𝑜𝑏𝑠

𝜀

ෝ

𝒗

ෝ

𝝆𝑡𝑟𝑢𝑒

ෝ

𝝆𝑜𝑏𝑠

Fig. 3: Light-aberration eﬀect.

θobs be the angle between the observed LoS ˆ

ρobs and the

estimated unitary velocity vector of the probe ˆ

v; i.e.,

tan θobs =|| ˆ

ρobs ˆ

v||

ˆ

ρ>

obs ˆ

v(8)

Then, the aberration angle εis computed as

tan ε=(v/c) sin θobs

1−(v/c) cos θobs

(9)

IAC-21,C1,1,13,x65893 Page 3 of 11

72nd International Astronautical Congress (IAC), 25-29 October 2021.

and the true-corrected LoS ˆ

ρtrue is retrieved such that

ˆ

ρtrue =ˆ

ρobs sin θtrue −ˆ

vsin ε

sin θobs

(10)

with θtrue =θobs +ε.

3 Filtering Approach

In this section dynamic estimators featuring LoS ac-

quisition of planets are developed. First, the system

state space is described. Then, moving from the EKF

standard ﬁltering scheme, alternative estimators are pre-

sented.

3.1 System State Space

Let xbe the process state, thus

x(t) = [r(t),v(t),τ,η(t)]>(11)

where rand vare the inertial probe position and ve-

locity, respectively; τ= [τ1, τ2,...,τ8]>represents the

epoch at which the light departs from each of the eight

planets; η= [ηR,ηSRP]>is a vector of Gauss–Markow

(GM) processes, which accounts for two unmodeled

terms, namely 1) a 3-dimensional residual accelerations

ηRand 2) the stochastic component of the Solar Ra-

diation Pressure (SRP) ηSRP. The system dynamics is

described by the vector ﬁeld f, which embeds the deter-

ministic part, and process white noise w:

f:−

v

−µSun

r

r3+CR

P0R2

0

c

As

ms

r

r3

ψ

−ξηR

−ξηSRP

(12)

with ψ= [ψ1, ψ2, ..., ψ8]>such that

ψi=c+ˆ

ρ>

iv

c+ˆ

ρ>

ivi

i= 1,...,8 (13)

In particular, CRis the reﬂection coeﬃcient, P0the solar

power, R0the Sun radius, Asthe cross section area of

the probe, and msits mass. Since the spacecraft is on

an interplanetary transfer, third-body perturbations are

not taken into account [4]. In the Langevin equations

˙ηR=−ξηR+wR˙ηSRP =−ξηSRP +wSRP (14)

the parameter ξdeﬁnes the reciprocal of the correlation

time, and wRand wSRP the process noises of the GM

parameters with σRand σSRP standard deviations, re-

spectively [15]. The measurement model is deﬁned by

the equation hand white noise ν. In particular, the rel-

ative direction of the navigation beacon as seen by the

probe ˆ

ρis deﬁned by two angles that represent the planet

location in the camera FoV: the Azimuth (Az) and the

Elevation (El). The measurement model equation is so

deﬁned as

h=Az

El ="arctan ˆρy

ˆρx

arcsin(ˆρz)#(15)

where ˆρx, ˆρyand ˆρzare the components of the LoS unit

vector. At a given epoch tk, the observed vector yobs is

a 2-dimensional vector, as only one planet at a time is

tracked. It is modeled starting from has

yobs =¯

yobs +ν=h(xk) + ∆aber

| {z }

¯yobs

+ 3σstrk

|{z}

ν

(16)

where ¯

yobs is the unperturbed observed vector and νthe

measurement white noise. More speciﬁcally, xkis the

probe state at tk,∆aber the vector that introduces the

celestial aberration error , σstr the standard deviation of

the LoS angular error from the star tracker (considered

equal for both the azimuth and the elevation), and k

a white noise vector with values within [−1; 1]. The

measurement noise has zero mean and is uncorrelated to

w. An algorithmic overview of the system state space is

reported in Table 1.

Tab. 1: System State Space of the Extended Kalman

Filter.

System State Space

˙

x=f(x(t), t) + w

yk=h(xk) + νk

3.2 Standard EKF Scheme

In the standard EKF, the batch EKF ﬁlter is exploited

for measurement-update [16], whereas the state error co-

variance matrix Pis employed to determine the state

uncertainty. Tables 2 and 3 summarise the procedure

adopted by the standard EKF scheme. In particular,

Table 2 describes the approach exploited for the propa-

gation steps. At tk,xpkrepresents the predicted state

vector with error covariance matrix Ppk,Φkthe state

transition matrix (STM), Qthe covariance matrix of the

process noise, and Fthe Jacobian matrix of dynamics

f. On the other hand, Table 3 describes the procedure

adopted inside the correction block. At tk,Kkrepre-

sents the Kalman gain, xckthe corrected state vector

IAC-21,C1,1,13,x65893 Page 4 of 11

72nd International Astronautical Congress (IAC), 25-29 October 2021.

Tab. 2: Scheme of the Propagation Block of the Ex-

tended Kalman Filter.

Propagation Block

xpk=xck−1+Rtk

tk−1f(x(t), t)dtxc0=E[x0]

Φk=Φk−1+Rtk

tk−1FΦdtΦ0=I

Sk=Sk−1+Rtk

tk−1

ΦQΦTdtS0=Q

Ppk=ΦkPckΦT

k+SkPc0=E[x0xT

0]

Tab. 3: Scheme of the Correction Block of the Extended

Kalman Filter.

Correction Block

Kk=PpkH>

k(HkPpkH>

k+Rk)−1

xck=xpk+Kk[yk−h(xpk)]

Pck= (I−KkHk)Ppk(I−KkHk)>+KkRkK>

k

with error covariance matrix Pck,Rkthe covariance ma-

trix of the measurement noise, Hkthe Jacobian matrix

of measurement model h, and ykthe observed vector.

3.3 Alternative EKF Schemes

The goal of this work consists of developing an au-

tonomous navigation algorithm which has to be suit-

able to be adopted onboard a CubeSat. To achieve

this, the numerical stability of the ﬁlter needs to be

investigated to avoid the rise of numerical issues af-

ter the upcoming deployment on hardware [15]. To

tackle this problem, alternative formulations of the stan-

dard ﬁltering strategy are applied to both the time and

the measurement update steps, which will result in the

implementation of four additional alternative ﬁltering

schemes. Diﬀerently from the standard scheme, three

of the new approaches exploit the sequential measure-

ment update method. This one carries out the correc-

tion of the estimation without matrix inversion by pro-

cessing the measurements once at a time. This helps

saving computational time and memory, and is a desir-

able formulation for embedded systems with no matrix

libraries [16]. Moreover, factorization methods, a non-

dimensional strategy, or a combination of these two are

exploited for the solution time-update.

3.3.1 Method A

Method A employs Potter’s equation for processing the

measurements, and the Householder algorithm for the

square root matrix time propagation [16]. The core pro-

cedure of Method A consists of the complete replacement

of the matrix Pwith its square-root matrix S, which is

numerically more stable due to the halving of the con-

ditioning number.

3.3.2 Method B

Method B implements the UDU ﬁltering scheme, in

which the upper triangular matrix Uand the diagonal

matrix Dare propagated. The observations are then

processed employing a sequential algorithm [16].

3.3.3 Method C

In Method C, the non-dimensionalization procedure is

applied to the model equations. This is possible by

virtue of the Buckingham theorem, which states that

the validity of the physics laws does not depend on a

particular unit system [17]. As ﬁrst step, a dimensional

analysis of the variables of the estimator is performed.

For this speciﬁc case, the dimensions of the components

of the state vector are described only through two fun-

damental physical quantities: the length and the time.

Thus, only a position ¯rand an epoch ¯

tparameter are

needed to non-dimensionalize the whole ﬁltering proce-

dure. The dimensionless state vector ¯

xis deﬁned as

¯

x=

r/¯r

v/(¯r¯

t−1)

τ/¯

t

ηR/(¯r¯

t−2)

ηSRP/(¯r¯

t−2)

(17)

and the same argument is applied for evaluating the di-

mensionless equation of motion ¯

f, the Jacobian matrices

¯

Fand ¯

H, and the covariance matrices ¯

Q,¯

Rand ¯

P0.

In detail, Method C adopts the standard ﬁltering strat-

egy with dimensionless model equations.

3.3.4 Method D

Method D adopts the non-dimensionalization strategy

as well. In particular, it can be addressed as simply the

non-dimensional version of Method A.

Tables 4 and 5 report the algorithms used for the imple-

mentation of the aforementioned techniques.

Tab. 4: Measurement update algorithms for alternative

ﬁltering techniques.

Method Measurement update algorithm

A Potter’s equation (Sequential)

B Sequential scheme

C Non-dimens. standard (batch) scheme

D Non-dimens. Potter’s equation

IAC-21,C1,1,13,x65893 Page 5 of 11

72nd International Astronautical Congress (IAC), 25-29 October 2021.

Tab. 5: Time update algorithms for alternative ﬁltering

techniques.

Method Time update algorithm

A Householder algorithm (Prop. of S)

B Propagation of Uand D

C Non-dimensional propagation of P

D Non-dimensional Householder algorithm

3.4 Deployment on the Raspberry Pi

At this point, the performance of the estimators needs

to be tested on a platform comparable to a COTS minia-

turized processor in terms of computational power and

size. For this aim, a Raspberry Pi 1is adopted, whose

main speciﬁcs are given in Table 6.

Tab. 6: Technical speciﬁcation of the Raspberry Pi 4

model B

Processor RAM OS

ARM Cortex-A7 2GB Raspbian

The code deployment on the Raspberry Pi is performed

by exploiting the Matlab Support Package for Raspberry

Pi Hardware 2and Matlab Coder 3. Firstly, these apps

generate automatically an equivalent C++ code starting

from a .m ﬁle by creating a connection between Matlab

and the platform. Then, the coder deploys the algorithm

as an executable ﬁle on the Raspberry Pi, on which it is

run as a standalone application.

4 Case Study

In this work, the CubeSat performs an interplanetary

transfer towards Mars. An arbitrary navigation proce-

dure is adopted to recover the probe state by tracking

the external planets.

4.1 Navigation Strategy

Figure 4 shows the navigation cycle adopted over the

probe ﬂying window. Starting from t0, the spacecraft

tracks the ﬁrst planet of the optimal pair for 1 hour with

a measurement frequency of 0.01 Hz. Subsequently, it

performs a slew maneuver of 30 minutes during which

1https://www.raspberrypi.org/products/

raspberry-pi- 4-model- b/specifications/, Last Vis-

ited on Sept. 2021

2https://it.mathworks.com/help/supportpkg/

raspberrypiio/, Last Visited on Sept. 2021

3https://it.mathworks.com/products/matlab-coder.html,

Last Visited on Sept. 2021

no external observations are acquired. Then, the mea-

surements of the second planet are gathered for another

hour, and, ﬁnally, the state is propagated for 5 days.

This procedure is repeated recursively 42 times, where

each navigation leg lasts 5 days 2 hours and 30 minutes.

First Planet Tracking Slew Maneuver

Second Planet Tracking State Propagation

30 min

60 min

60 min

5 days

Fig. 4: Outline of the navigation cycle.

4.2 Settings

Figure 5 represents the probe nominal trajectory over

the ﬂying window. At t0, the probe nominal state is

deﬁned by ˜

r0= [−3.97,148,3.23] ×106km and ˜

v0=

[−32.67,0.87,1.01] km/s described in the J2000 ecliptic

reference frame. Whereas, the initial state uncertainties

are reported in Table 7.

σr[km] σv[km

s]στ[s] σSRP [km

s2]σR[km

s2]

10410−13·10−210−12 10−12

Tab. 7: Accuracy of the state components at t0

Fig. 5: Trajectory of the probe, Mars, and Earth starting

at t0= 10580 [mjd2000].

It is assumed the onboard optical sensor is able to track

planets with relative magnitude lower than 6 and SAA

IAC-21,C1,1,13,x65893 Page 6 of 11

72nd International Astronautical Congress (IAC), 25-29 October 2021.

greater than 35◦. Figure 6 shows the proﬁle of the plan-

ets SAA and apparent magnitude over the probe trajec-

tory. It can be noticed that Mercury, Venus, Uranus, and

Neptune are never available to be tracked. The SAA of

Mercury and Venus is always lower then 35◦due to the

Sun vicinity, whereas Uranus and Neptune are always

too faint to be visible by the probe. The 3σstandard de-

SAA threshold

Magnitude threshold

Fig. 6: Proﬁle of the planets’ SAA and apparent magni-

tude over the probe trajectory.

viation of the instrument measurement error is 15 arcsec.

Table 8 summarises the features of the onboard optical

sensor exploited for this analysis.

mlimit [-] SAAlimit [◦] 3σstr [arcsec]

6 35 15

Tab. 8: Features of the onboard optical sensor

Moreover, the probe parameters needed to model the

SRP acceleration are reported in Table 9.

CR[-] ms[kg] As[m2]

1.3 20 1

Tab. 9: Numerical values of the probe parameters to

model the SRP

4.3 Optimal Beacons Selection

At the beginning of each navigation cycle the optimal

couple of planets is selected. Since the time slot reserved

to observation lasts only about three hours, it is reason-

able to assume that the selected pair of planets preserves

its optimality throughout the navigation cycle. Figure 7

shows the proﬁle of Jand γof all the possible couples

of planets. The black dots represent the optimal combi-

nation for each navigation cycle. It is possible to notice

that the optimal selection is always feature by the lowest

value of J, accordingly to its deﬁnition.

Fig. 7: Jand γtrends over the operational window

for the combinations of available planets. The optimal

selection is represented with black dots.

4.4 Estimator Selection

The standard and alternative ﬁltering schemes are ap-

plied to the test case. To select the approach most suited

to the deployment, two drivers are exploited: 1) the

computational time (CPU) and 2) the maximum con-

ditioning number of the state error covariance matrix

(K). Table 10 shows the performances of the ﬁve ﬁlter-

ing approaches in terms of these two parameters.

Tab. 10: Performances of the alternative ﬁltering proce-

dures

Method CPU time [s] Max K[-]

Standard 77 1033

A 79 1016

B 80 1032

C 64 1025

D 69 1012

To carry out the trade-oﬀ, it is assigned a weight of 0.5 to

both drivers. Moreover, marks from 1 to 5 are employed,

where 1 represents the poorest alternative while 3 the

best one. The criteria matrix is so developed.

Tab. 11: Criteria matrix

Method CPU time [s] Max K[-] Total Score

Standard 3 1 2

A 2 4 3

B 1 2 1.5

C 5 3 4

D 4 5 4.5

As it can be seen, method D has the highest total score,

and it so selected as the best suited method to be de-

ployed on a miniaturized processor.

IAC-21,C1,1,13,x65893 Page 7 of 11

72nd International Astronautical Congress (IAC), 25-29 October 2021.

4.5 Performances

The performances of Method D fed by the optimal bea-

con selection strategy are shown in this section. In Fig.

8 the position error proﬁles and the covariance bounds

are represented with solid and dashed lines, respectively.

At the end of the ﬂying window, the ﬁlter estimated the

probe position with a 3σaccuracy of the order of 700

km. Figure 9 shows the velocity error proﬁles. The

Fig. 8: Position error proﬁles with covariance bounds.

Twenty samples are shown.

samples error proﬁle is displayed with grey solid lines,

whereas the dashed ones deﬁne the 3σﬁlter covariance

bounds. At the end of the ﬂying window, the 3σerror

of the probe velocity is about 0.09 m/s. It can be no-

ticed in Fig. 8 how the position error greatly decreases

at the beginning of the 25th navigation cycle, when the

couple Earth–Mars is tracked. This can be explained

by observing the proﬁle of J, whose value is subjected

to the same rapid degrowth when this couple is selected

as the optimal one. The enhancement of the estima-

Fig. 9: Velocity error proﬁles with covariance bounds.

Twenty samples are shown.

tion accuracy thanks to the exploitation of the optimal

beacons selection is shown in Fig. 10. If the beacons

are not optimally selected for each navigation leg, only

one combination of planets, i.e., Mars–Jupiter, can be

used throughout the navigation. Indeed, this one is the

only available over the entire ﬂying window. Figure 10

compares the estimator performances when the optimal

beacons selection strategy is adopted against the case in

which only the couple Mars–Jupiter is tracked. In gen-

eral, the ﬁlter that uses the optimal selection has always

the lowest 3σcovariance bound values, demonstrating

thus the improvement in the estimation.

Fig. 10: Comparison of the covariance bounds with and

without the exploitation of the optimal beacons selection

strategy.

Moreover, Figure 10 shows how the proﬁle of the posi-

tion 3σbound, when the optimal selection strategy is

adopted, matches perfectly with the proﬁle of the asso-

ciated Jvalues represented by the black dots in Fig. 7.

At the beginning of the 10th navigation cycle, when the

couple Mars–Jupiter is selected for the ﬁrst time, the 3σ

covariance bound starts to worsen with respect to the

previous estimation, and this is reﬂected on the selec-

tion of an optimal couple with greater Jvalue. This

behaviour continues until the couple Earth–Mars is cho-

sen. At this point, the associated Jis characterized by a

value considerably lower, and this brings the estimation

to greatly improve. For what concerns the velocity 3σ

bound, the matching with Jis not guaranteed by the

optimization procedure since Jis derived through the

analysis of the kinematic celestial triangulation. Never-

theless, it is possible to notice that it is still respected,

and also for the velocity the optimal selection allows to

reach the best results in the estimation accuracy.

4.6 Performances with a

Processor-in-the-Loop

Finally, Method D is deployed on a miniaturized proces-

sor to test its suitability to be adopted onboard Cube-

Sats. A Raspberry Pi is chosen, whose computational ca-

pabilities are representative of a CubeSat onboard com-

puter. The procedure exploited for the deployment is

the one described in Sec. 3.4.

IAC-21,C1,1,13,x65893 Page 8 of 11

72nd International Astronautical Congress (IAC), 25-29 October 2021.

Fig. 11: Testing of the algorithm performances on a

Raspberry-Pi.

The average CPU time required to run the ﬁlter over

the operational window for 20 simulations is about 13

s, whereas the estimation accuracy is equal to the one

obtained without a PIL simulation.

5 Conclusion

This work has tackled the autonomous navigation prob-

lem for deep-space CubeSats. Diﬀerent strategies have

been adopted to enhance the solution accuracy and the

estimator numerical stability. In particular, the solution

accuracy has been improved thanks to the exploitation

of the optimal beacons selection method, and by intro-

ducing light eﬀects corrections inside the model equa-

tions. In detail, the light-time eﬀect has been corrected

by including the vector τinside the state representation.

Whereas, the correction of the light aberration eﬀect has

been performed at the acquisition of a new observation

and before the estimation measurement-update. Finally,

alternative ﬁltering approaches have been developed and

their performances analysed to prevent the rise of numer-

ical issues after the code deployment on a real platform.

Among the ﬁve schemes described in this work, Method

D has been chosen as the most appropriate alternative

to be adopted onboard a CubeSat. To study its actual

behaviour and performances with a PIL, Method D has

been deployed on a Raspberry-Pi. The ﬁlter estimates

the probe position and velocity with 3σbounds of the or-

der of 700 km and 0.09 m/s, respectively. The suitability

of Method D for CubeSats applications is so veriﬁed.

IAC-21,C1,1,13,x65893 Page 9 of 11

72nd International Astronautical Congress (IAC), 25-29 October 2021.

Acknowledgments

This research is part of EXTREMA, a project that has

received funding from the European Research Council

(ERC) under the European Union’s Horizon 2020 re-

search and innovation programme (Grant Agreement

No. 864697).

Bibliography

[1] T. Villela, C. Costa, A. Brand˜ao, F. Bueno, and

R. Leonardi. Towards the thousandth cubesat:

A statistical overview. International Journal of

Aerospace Engineering, 2019:1–13, 01 2019. DOI:

10.1155/2019/5063145.

[2] R. Walker, D. Binns, C. Bramanti, M. Casasco,

P. Concari, D. Izzo, D. Feili, P. Fernandez, J. Fer-

nandez, P. Hager, D. Koschny, V. Pesquita, N. Wal-

lace, I. Carnelli, M. Khan, M. Scoubeau, and

D. Taubert. Deep-space cubesats: Thinking inside

the box. Astronomy & Geophysics, 59:5.24–5.30, 10

2018. DOI: 10.1093/astrogeo/aty232.

[3] S. Speretta, F. Topputo, J. Biggs, P. Di Lizia,

M. Massari, K. Mani, D. Dei Tos, S. Ceccherini,

V. Franzese, A. Cervone, P. Sundaramoorthy,

R. Noomen, S. Mestry, A. do Carmo Cipriano,

A. Ivanov, D. Labate, L. Tommasi, A. Jochem-

sen, J Gailis, R. Furfaro, V. Reddy, J. Vennekens,

and R. Walker. Lumio: achieving autonomous op-

erations for lunar exploration with a cubesat. In

2018 SpaceOps Conference, page 11, 2018. DOI:

10.2514/6.2018-2599.

[4] F. Topputo, Y. Wang, C. Giordano, V. Franzese,

H. Goldberg, F. Perez-Lissi, and R. Walker. En-

velop of reachable asteroids by m-argo cubesat. Ad-

vances in Space Research, 67(12):4193–4221, 2021.

DOI: 10.1016/j.asr.2021.02.031.

[5] H. R. Goldberg, O. Karatekin, B. Ritter,

A. Herique, P. Tortora, C. Prioroc, B. G. Gutierrez,

P. Martino, and I. Carnelli. The juventas cubesat in

support of esa’s hera mission to the asteroid didy-

mos. In 33rd Annual AIAA/USU Conference on

Small Satel lites, 8 2019. Logan, Utah, USA.

[6] F. Ferrari, V. Franzese, M. Pugliatti, C. Gior-

dano, and F. Topputo. Preliminary mission

proﬁle of hera’s milani cubesat. Advances in

Space Research, 67(6):2010–2029, 2021. DOI:

10.1016/j.asr.2020.12.034.

[7] I. Carnelli, P. Martino, D. Escorial, A. Rugina,

J. Gil, H. Greus, A. Valverde, A. Zuccaro, B. Bon-

nafous, C. M. Moya, C. Honvault, F. P. Lissi,

G. Tzeremes, M. Khan, M. K¨uppers, M. Tourloukis,

P. Mu˜noz, P. Concari, R. Moissl, and A. Acco-

mazzo. Esa’s hera mission to asteroid dimorphos.

In Europlanet Science Congress 2020, 09 2020. Vir-

tual. DOI: 10.5194/epsc2020-1119.

[8] S. M. Lichten, D. S. Abraham, B. Arroyo, S. W. As-

mar, J. Bell, and C. D. Edwards. Allocation of deep

space network ground system tracking and commu-

nications assets during the 2020-2021 timeframe of

the “mars armada”. In 2018 SpaceOps Conference,

2018. Marseille, France. DOI: 10.2514/6.2018-2502.

[9] M. Quadrelli, Lincoln J. Wood, J. E. Riedel,

M. McHenry, M. Aung, L. Cangahuala, R. Volpe,

P. Beauchamp, and J. A. Cutts. Guidance, naviga-

tion, and control technology assessment for future

planetary science missions. Journal of Guidance

Control and Dynamics, 38:1165–1186, 2015. DOI:

doi.org/10.2514/1.G000525.

[10] R. Karimi and D. Mortari. Interplanetary au-

tonomous navigation using visible planets. Jour-

nal of Guidance, Control, and Dynamics, 38:1–6,

04 2015. DOI: 10.2514/1.G000575.

[11] V. Franzese and F. Topputo. Optimal beacons se-

lection for deep-space optical navigation. The Jour-

nal of the Astronautical Sciences, 67:1775–1792, 11

2020. DOI: 10.1007/s40295-020-00242-z.

[12] S. B. Broschart, N. Bradley, and S. Bhaskaran.

Kinematic approximation of position accuracy

achieved using optical observations of distant aster-

oids. Journal of Spacecraft and Rockets, 56(5):1383–

1392, 2019. DOI: 10.2514/1.A34354.

[13] J. A. Christian. Starnav: Autonomous optical nav-

igation of a spacecraft by the relativistic pertur-

bation of starlight. Sensors, 19(19), 2019. DOI:

10.3390/s19194064.

[14] D. Mortari and D. Conway. Single-point position

estimation in interplanetary trajectories using star

trackers. Celestial Mechanics and Dynamical As-

tronomy, 128, 11 2016. DOI: 10.1007/s10569-016-

9738-4,.

[15] C. N. D’Souza J. R. Carpenter. Navigation Fil-

ter Best Practices. Technical Report 20180003657,

NASA, 04 2018.

IAC-21,C1,1,13,x65893 Page 10 of 11

72nd International Astronautical Congress (IAC), 25-29 October 2021.

[16] D. Simon. Alternate Kalman ﬁlter formulations,

chapter 6, pages 149–181. John Wiley & Sons, Ltd,

2006.

[17] E. Buckingham. On Physically Similar Systems;

Illustrations of the Use of Dimensional Equations.

Physical Review, 4(4):345–376, October 1914.

IAC-21,C1,1,13,x65893 Page 11 of 11