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-Off-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 flourishing 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 effects 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-Off-The-Shelf
(COTS) components allows space to become affordable
not only to space agencies but also to small compa-
nies and universities. The obstacle of this flourishing
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 effects
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 effects
(Sec.2.3) are described. The EKF is thus implemented
in Sec.3. Apart from a standard filtering 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 five fil-
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 Definition 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 different 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 filtering, 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 figure 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 defined 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 Effects
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 effect and 2) the light-aberration effect
[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 affected
by the celestial aberration and by the light-time effect
when the probe velocity and distance to the observed
object increase, respectively.
2.3.1 Light-time Effect
Due to the finite 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 significant. The light received by the im-
ager at epoch thas been emitted by the observed planet
at a previous epoch τ, thus τ < t. This effect, called
light-time, yields a systematic error when neglected [14].
Let us see Fig.2; the definition of the spacecraft position
Fig. 2: Ligh-time effect.
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 filter 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 effect correction is performed
internally, it is necessary to find 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 differen-
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 effect.
θ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.
Copyright by Ms. Eleonora Andreis. Published by the IAF, with permission and released to the IAF to publish in all forms.
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 filtering 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 field 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 reflection coefficient, 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 ξdefines 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 defined by
the equation hand white noise ν. In particular, the rel-
ative direction of the navigation beacon as seen by the
probe ˆ
ρis defined 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
defined 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 specifically, 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 filter 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.
Copyright by Ms. Eleonora Andreis. Published by the IAF, with permission and released to the IAF to publish in all forms.
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 filter 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 filtering strategy are applied to both the time and
the measurement update steps, which will result in the
implementation of four additional alternative filtering
schemes. Differently 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 filtering 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 first step, a dimensional
analysis of the variables of the estimator is performed.
For this specific 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 filtering proce-
dure. The dimensionless state vector ¯
xis defined 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 filtering 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
filtering 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.
Copyright by Ms. Eleonora Andreis. Published by the IAF, with permission and released to the IAF to publish in all forms.
Tab. 5: Time update algorithms for alternative filtering
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 specifics are given in Table 6.
Tab. 6: Technical specification 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 file by creating a connection between Matlab
and the platform. Then, the coder deploys the algorithm
as an executable file 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 flying window. Starting from t0, the spacecraft
tracks the first 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, finally, 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 flying window. At t0, the probe nominal state is
defined 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.
Copyright by Ms. Eleonora Andreis. Published by the IAF, with permission and released to the IAF to publish in all forms.
greater than 35◦. Figure 6 shows the profile 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: Profile 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 profile 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 definition.
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 filtering 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 five filter-
ing approaches in terms of these two parameters.
Tab. 10: Performances of the alternative filtering 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-off, 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.
Copyright by Ms. Eleonora Andreis. Published by the IAF, with permission and released to the IAF to publish in all forms.
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 profiles and the covariance bounds
are represented with solid and dashed lines, respectively.
At the end of the flying window, the filter estimated the
probe position with a 3σaccuracy of the order of 700
km. Figure 9 shows the velocity error profiles. The
Fig. 8: Position error profiles with covariance bounds.
Twenty samples are shown.
samples error profile is displayed with grey solid lines,
whereas the dashed ones define the 3σfilter covariance
bounds. At the end of the flying 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 profile 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 profiles 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 flying 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 filter 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 profile of the posi-
tion 3σbound, when the optimal selection strategy is
adopted, matches perfectly with the profile 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 first time, the 3σ
covariance bound starts to worsen with respect to the
previous estimation, and this is reflected 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.
Copyright by Ms. Eleonora Andreis. Published by the IAF, with permission and released to the IAF to publish in all forms.
Fig. 11: Testing of the algorithm performances on a
Raspberry-Pi.
The average CPU time required to run the filter 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. Different 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 effects corrections inside the model equa-
tions. In detail, the light-time effect has been corrected
by including the vector τinside the state representation.
Whereas, the correction of the light aberration effect has
been performed at the acquisition of a new observation
and before the estimation measurement-update. Finally,
alternative filtering 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 five 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 filter 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 verified.
IAC-21,C1,1,13,x65893 Page 9 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.
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
profile 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.
Copyright by Ms. Eleonora Andreis. Published by the IAF, with permission and released to the IAF to publish in all forms.
[16] D. Simon. Alternate Kalman filter 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